CNT5505 DATA/COMUTER COMMUNICATIONS Spring 2010 - PowerPoint PPT Presentation

Slide1 l.jpg
1 / 22

CNT5505 DATA/COMUTER COMMUNICATIONS Spring 2010. About myself. Zhenghao Zhang Office: Love 164; Phone: 644-1685 Email: URL: Research area: Wireless networks Network security Peer to peer networks Optical networks. Office Hours.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

Download Presentation


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript

Slide1 l.jpg



Spring 2010

Computer Science, FSU

About myself l.jpg

About myself

  • Zhenghao Zhang

  • Office: Love 164; Phone: 644-1685

  • Email:

  • URL:

  • Research area:

    • Wireless networks

    • Network security

    • Peer to peer networks

    • Optical networks

Computer Science, FSU

Office hours l.jpg

Office Hours

  • Love 164

  • 3:00pM – 5:00PM, Tuesday, or by appointments through email

Computer Science, FSU

What is cnt5505 about l.jpg

What is CNT5505 about?

  • General purpose computer networks

    • Not specialized networks (e.g., telephone or cable)

  • Fundamental principles

    • Not survey of existing protocol standards

  • Focus on network software architecture

    • Only discuss some relevant network hardware

  • Designing and building network systems

Computer Science, FSU

Course prerequisites l.jpg

Course Prerequisites

  • A rudimentary understanding of computer architecture, and operating systems would be helpful

  • Basic probability theory may be needed to understand some performance analysis

  • Basic understanding of algorithm analysis

  • C/C++ or Java programming is required

    • Socket programming

    • Unix programming

      • Event multiplexing, timer

  • Provided executable code and template of project in C/C++

    • You can develop the project in Java

Computer Science, FSU

Course materials l.jpg

Course Materials

  • Required textbook

    • “Computer Networks,'' by Andrew S. Tanenbaum, Prentice Hall, 4th edition, 2003

  • Class notes, other assigned readings

  • Materials on the Internet

Computer Science, FSU

Class information l.jpg

Class Information

  • Class website


    • Go to my website and click teaching

  • Check the Announcements and your email account regularly

Computer Science, FSU

Course requirements l.jpg

Course Requirements

  • Do assigned readings

    • Be prepared; read textbook/lectures before class

  • Attend and participate in class activities

    • Please ask and answer questions in (and out of) class

    • Attendance will be considered in the final letter grade

  • Workload

    • Homework assignments.

    • Projects.

    • One midterm

    • One final

Computer Science, FSU

Policies and guidelines l.jpg

Policies and Guidelines

  • Homework and Assignments usually have two due times.

    • Please work early and make the first due time.

    • 10% penalty for submission by the second due time.

    • Zero if later than the second due time.

  • No make-up exam, no incomplete

    • unless proof of emergency

  • Scholastic behaviors

    • Follow the Academic Honor Code.

    • Acknowledge reference/credits if receive help.

    • You may end up “F” for dishonesty. It is not worth it.

Computer Science, FSU

Important dates l.jpg

Important dates

  • Check the course website

  • For homework assignments

    • Hand in hard-copy in class on due dates

    • Preferably typed instead of handwritten

  • For course project

    • Submit by email

    • Midnight on the due dates

    • Demo time will be announced later

Computer Science, FSU

Course project l.jpg

Course Project

  • There will be several projects.

  • Not coding intensive

Computer Science, FSU

Slide12 l.jpg

Questions and Concerns?

Computer Science, FSU

Computer communication a motivation example l.jpg

Computer Communication: A motivation example

  • What happens behind the scene when I click on (on machine diablo)

Computer Science, FSU

Step 1 on local host l.jpg

Step 1: on local host

  • Browser figures out what to do with the URL:

    • Three components in URL

      • Where:

      • What: (retrieving file index.html)

      • How: through HTTP protocol

    • Talk to http daemon on to get file index.html through HTTP protocol

Computer Science, FSU

Step 2 translating domain name to ip address l.jpg

Step 2: translating domain name to IP address

  • Each machine on the Internet identified by one or more IP address

  • Browser translating domain name ( to corresponding IP address using domain name server (DNS)

    • DNS in CS department:

  • How does browser know IP address of DNS server?

    • Hard-coded (/etc/resolv.conf)

Computer Science, FSU

Step 2 getting ip address con t l.jpg

Step 2: Getting IP address (Con’t)

  • Call its UDP protocol entity to talk to port 53

  • UDP protocol calls IP to send a datagram to

  • Turns out that and (diablo) are on the same Ethernet domain, can send directly via the Ethernet.

  • Needs to find out the Ethernet address of

  • uses ARP protocol, sends an ARP packet over the network

    What is the address of

    result: 00:30:48:2A:29:FD

  • IP asks Ethernet to send an Ethernet frame to 00:30:48:2A:29:FD.

  • Ethernet on receives an Ethernet frame, turns out to be an IP packet, pass it to the IP module.

  • IP module finds out it is a UDP packet and passes it to UDP module.

  • UDP realizes that a process is listening to port 53, notifies the process.

Computer Science, FSU

Step 2 getting ip address cont d l.jpg

Step 2: Getting IP address (Cont’d)

  • Browser calls UDP protocol entity to send a message to

  • The UDP message to the DNS server is “What is the IP address of”

  • The DNS server sends a message back:

    • Actually situation is complicated than this

    • is associated with multiple IP addresses

Computer Science, FSU

Step 3 establishing http connection l.jpg

Step 3: establishing HTTP connection

  • Calls TCP entity to set up a connection to /80

  • TCP protocol calls IP to send a datagram to

    • turns out that and diablo are not directly connected.

    • need to forward to the first-hop router (

    • find the Ethernet address of first-hop router using arp

    • forward packet to first-hop router

    • (second router, third router) …...

    • receives a packet.

Computer Science, FSU

Step 4 web page request and retrieval l.jpg

Step 4: Web page request and retrieval

  • Use TCP to send strings (following the HTTP protocol): “get / HTTP/1.1\nHost:\n\n”

    • TCP entity calls IP to send a datagram

    • …..

    • responses with the content of index.html

Computer Science, FSU

Step 5 web page rendering l.jpg

Step 5: web page rendering

  • Browser displays the content of the web page

  • This example was greatly simplified

    • We did not discuss routing in detail

    • We did not discuss rate-control

    • We did not discuss error-control

Computer Science, FSU

The above example greatly simplified l.jpg

The above example greatly simplified



(http client)

http server










Computer Science, FSU

What problems we need to resolve l.jpg

What problems we need to resolve?

  • Naming, addressing

  • fragmentation/reassembly

  • multiplexing/demultiplexing

  • routing

  • resolve contention

  • Speed mismatch between sender/receiver

  • error control

  • …...

Computer Science, FSU

  • Login