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.
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 • 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.
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: 126.96.36.199 • How does netscape know the address of the DNS server? • Hard-coded at system (network) configuration. E.g. /etc/resolv.conf in Linux systems.
Step 1: Get the IP address from the DNS server. • Call its UDP protocol entity to talk to 188.8.131.52 port 53 • UDP protocol calls IP to send a datagram to 184.108.40.206. • Turns out that 220.127.116.11 and 18.104.22.168 (diablo) are on the same Ethernet domain, can send directly via the Ethernet. • Needs to find out the Ethernet address of 22.214.171.124. • uses ARP protocol, sends an ARP packet over the network What is the address of 126.96.36.199? result: 08:00:20:FC:EF:6D. • IP asks Ethernet to send an Ethernet frame to 08:00:20:FC:EF:6D. • Ethernet on 188.8.131.52 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.
Step 1: How to get the IP address from the DNS server (continue)? • Netscape calls the UDP protocol entity to send a message to 184.108.40.206/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: 220.127.116.11
Step 2: Set up a TCP connection to the remote (18.104.22.168) http daemon. • Calls TCP entity to set up a connection to 22.214.171.124/80 • TCP protocol calls IP to send a datagram to 126.96.36.199 • turns out that 188.8.131.52 (www.cs.fsu.edu) and this machine are directly connected. • Find the Ethernet address of 184.108.40.206 using arp • …... • www.cs.fsu.edu receives a packet.
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.
DNS Netscape (http client) http server • The example was simplified. TCP TCP/UDP UDP IP IP IP Ethernet Ethernet Ethernet
What are the problems we need to solve? • Naming, addressing • fragmentation/reassembly • multiplexing/demultiplexing • routing • resolve contention • Speed mismatch between sender/receiver • error control • …...