1 / 9

Computer Communication: An example

Computer Communication: An example. What happens when I click on http://www.cs.fsu.edu/~xyuan/cen5515?. Step 1: Netscape figures out what to do with the URL “http://www.cs.fsu.edu/~xyuan/cen5515” Three components in the URL: Where? www.cs.fsu.edu What? /~xyuan/cen5515

ima-hurst
Télécharger la présentation

Computer Communication: An example

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Computer Communication: An example • What happens when I click on http://www.cs.fsu.edu/~xyuan/cen5515?

  2. Step 1: Netscape figures out what to do with the URL “http://www.cs.fsu.edu/~xyuan/cen5515” • Three components in the URL: • Where? www.cs.fsu.edu • What? /~xyuan/cen5515 • How? Through the HTTP protocol. • Talk to the http daemon using the HTTP protocol on www.cs.fsu.edu to get file /~xyuan/cen5515. • Netscape finds out what is the network address of www.cs.fsu.edu.

  3. finding out the network address of “www.cs.fsu.edu” • netscape goes to a domain name server (DNS) to find out the IP address of “www.cs.fsu.edu” host = gethostbyname(“www.cs.fsu.edu”); • DNS server in our department: 128.186.121.178 • How does netscape know the address of the DNS server? • Hard-coded at system (network) configuration. E.g. /etc/resolv.conf in Linux systems.

  4. Step 1: Get the IP address from the DNS server. • Call its UDP protocol entity to talk to 128.186.120.178 port 53 • UDP protocol calls IP to send a datagram to 128.186.120.178. • Turns out that 128.186.120.178 and 128.186.120.2 (diablo) are on the same Ethernet domain, can send directly via the Ethernet. • Needs to find out the Ethernet address of 128.186.120.178. • uses ARP protocol, sends an ARP packet over the network What is the address of 128.186.121.10? result: 08:00:20:FC:EF:6D. • IP asks Ethernet to send an Ethernet frame to 08:00:20:FC:EF:6D. • Ethernet on 128.186.120.178 receives an Ethernet frame, turns out to be an IP packet, pass it to the IP module. • IP module finds out that it is a UDP packet and passes it to the UDP module. • UDP realizes that a process is listening to port 53, notifies the process.

  5. Step 1: How to get the IP address from the DNS server (continue)? • Netscape calls the UDP protocol entity to send a message to 128.186.121.10/53 • The UDP message to the DNS server is “What is the IP address of www.cs.fsu.edu?” • The DNS server sends a message back: 128.186.120.244

  6. Step 2: Set up a TCP connection to the remote (128.186.120.244) http daemon. • Calls TCP entity to set up a connection to 128.186.120.244/80 • TCP protocol calls IP to send a datagram to 128.186.120.244 • turns out that 128.186.120.244 (www.cs.fsu.edu) and this machine are directly connected. • Find the Ethernet address of 128.186.120.244 using arp • …... • www.cs.fsu.edu receives a packet.

  7. Step 3: Talk to the http daemon on www.cs.fsu.edu using the http protocol. • Use TCP to send strings (following the HTTP protocol): “get /~xyuan/cen5515 HTTP/1.1\nHost: diablo.cs.fsu.edu\n\n” • TCP entity calls IP to send a datagram • ….. • www.cs.fsu.edu responses with the content of /~xyuan/cen5515 • Step 4: Netscape displays the file in the window.

  8. DNS Netscape (http client) http server • The example was simplified. TCP TCP/UDP UDP IP IP IP Ethernet Ethernet Ethernet

  9. What are the problems we need to solve? • Naming, addressing • fragmentation/reassembly • multiplexing/demultiplexing • routing • resolve contention • Speed mismatch between sender/receiver • error control • …...

More Related