Everything. MACIP End-host IP: 10.1.2.3 MAC: 11:11:11:11:11 gateway IP: 10.1.2.1 MAC: 22:22:22:22:22 Google server IP: 201.1.2.3 MACIP MACInterfaceMACInterface.

Slides:



Advertisements
Similar presentations
Everything.
Advertisements

5: DataLink Layer5-1 Chapter 5 Link Layer and LANs A note on the use of these ppt slides: Were making these slides freely available to all (faculty, students,
Chapter 5 Link Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 A note on the use of these.
Cs/ee 143 Communication Networks Chapter 6 Internetworking Text: Walrand & Parekh, 2010 Steven Low CMS, EE, Caltech.
A Complete End-to-End View. Laptop Wifi AP BERKELEY DHCP Server/ Gateway Router DNS Server ( ) AT&T GOOGLE.
IST 201 Chapter 9. TCP/IP Model Application Transport Internet Network Access.
Cisco Networking Academy Program Address Resolution Protocol ARP The Address Resolution Protocol Who are we ARPing for? or Who for ARP thou?
1 Review of Important Networking Concepts Introductory material. This module uses the example from the previous module to review important networking concepts:
Chapter 23: ARP, ICMP, DHCP IS333 Spring 2015.
Understanding Networks Charles Zangla. Network Models Before I can explain how connections are made from across the country, I would like to provide you.
Lecture 8 Modeling & Simulation of Communication Networks.
Chapter 5 Link Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 Link Layer data center.
Support Protocols and Technologies. Topics Filling in the gaps we need to make for IP forwarding work in practice – Getting IP addresses (DHCP) – Mapping.
CN2668 Routers and Switches Kemtis Kunanuraksapong MSIS with Distinction MCTS, MCDST, MCP, A+
Network Redundancy Multiple paths may exist between systems. Redundancy is not a requirement of a packet switching network. Redundancy was part of the.
DHCP: Dynamic Host Configuration Protocol
Chapter 5 Link Layer and LANs
Network Layer – Subnetting and Control Protocols Dr. Sanjay P. Ahuja, Ph.D. Fidelity National Financial Distinguished Professor of CIS School of Computing,
ARP Scenarios CIS 81 and CST 311 Rick Graziani Fall 2005.
DNS (Domain Name System) Protocol On the Internet, the DNS associates various sorts of information with domain names. A domain name is a meaningful and.
INTERNET DATA FLOW Created by David Whitchurch for ISDS 4120 Louisiana State University.
Cisco – Chapter 11 Routers All You Ever Wanted To Know But Were Afraid to Ask.
Operating Systems Lesson 10. Networking Communications protocol is the set of standard rules for ◦ Data representation ◦ Signaling ◦ Authentication ◦
A day in the life: scenario
1 Internet Protocol. 2 Connectionless Network Layers Destination, source, hop count Maybe other stuff –fragmentation –options (e.g., source routing) –error.
The complete picture Linux Network Management. End to End Connection Being able to describe the end to end connection sequence is a useful thing Very.
Link Layer 5-1 Link layer, LAN s: outline 5.1 introduction, services 5.2 error detection, correction 5.3 multiple access protocols 5.4 LANs  addressing,
1 John Magee 11 July 2013 CS 101 Lecture 11: How do you “visit” a web page, revisted Slides adapted from Kurose and Ross, Computer Networking 5/e Source.
CMPT 471 Networking II Address Resolution IPv4 ARP RARP 1© Janice Regan, 2012.
NUS.SOC.CS2105 Ooi Wei Tsang Application Transport Network Link Physical you are here.
Sublayers Under the Network Layer: BOOTP & DHCP
Internet Ethernet Token Ring Video High Speed Router Host A: Client browser: REQUEST:http//mango.ee.nogradesu.edu/c461.
Final Review!. So how’s it all work? I boot my machine I open my browser and type The page loads What all just happened?
Missing pieces + Putting the pieces together CS 168, Fall 2014 Sylvia Ratnasamy Material thanks to Ion Stoica, Scott Shenker, Jennifer Rexford, Nick McKeown,
Information Flow Across the Internet. What is the Internet? A large group of computers that link together to form the Worldwide Area Network (WAN)
5: Link Layer Part Link Layer r 5.1 Introduction and services r 5.2 Error detection and correction r 5.3Multiple access protocols r 5.4 Link-Layer.
1 CS 4396 Computer Networks Lab TCP/IP Networking An Example.
Link Layer5-1 Synthesis: a day in the life of a web request  journey down protocol stack complete!  application, transport, network, link  putting-it-all-together:
CSCI 3335: C OMPUTER N ETWORKS A DAY IN THE LIFE OF A WEB REQUEST Vamsi Paruchuri University of Central Arkansas
Chapter 23: ARP, ICMP, DHCP CS332, IS333 Spring 2014.
ARP The Process and the Protocol. Note to reader The information explained in this section is a simplification and extrapolation of the actual ARP determination.
Presented by Rebecca Meinhold But How Does the Internet Work?
Networks Part 3: Packet Paths + Wireshark NYU-Poly: HSWP Instructor: Mandy Galante.
Link Layer5-1 Synthesis: a “day” in the life of a web request  journey down protocol stack!  application, transport, network, link  putting-it-all-together:
1. Layered Architecture of Communication Networks: TCP/IP Model
Chapter 5 Link Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 A note on the use of these.
ISDS 4120 Project 1 DWAYNE CARRAL JR 3/27/15. There are seven layers which make up the OSI (Open Systems Interconnection Model) which is the model for.
Ethernet switch Hosts Can talk using Ethernet addresses only.
Address Resolution Protocol (ARP). Internet and Data Link Layer Addresses Each host and router on a subnet needs a data link layer address to specify.
5: DataLink Layer5-1 Virtualization of networks Virtualization of resources: powerful abstraction in systems engineering: r computing examples: virtual.
Internet Flow By: Terry Hernandez. Getting from the customers computer onto the internet Internet Browser
1 Introductory material. This module illustrates the interactions of the protocols of the TCP/IP protocol suite with the help of an example. The example.
Chapter 7 Application Layer 1 Some of the slides in this chapter are courtesy of Profs. Kurose/Ross and others.
End-host IP: MAC: 11:11:11:11:11 gateway IP: MAC: 22:22:22:22:22 Google server IP: interne t interface DNS server IP:
Communication Networks NETW 501 Tutorial 2
CSEN 404 Introduction to Networks Amr El Mougy Lamia AlBadrawy.
Web page – Html –base file – Objects (first DNS) First get html file Then browser reads the html and gets the objects.
Introduction to Networks
Virtualization of networks
MAC Address Tables on Connected Switches
A Typical Connection Scenario
CS 280: Summary: A day in the life of a web request
Course Review 2015 Computer networks 赵振刚
TCP/IP Networking An Example
Introduction to Networks
Chapter 6 The Data Link layer
TCP/IP Networking An Example
Chapters 1~5 Overview Computer Networking: A Top Down Approach 6th edition Jim Kurose, Keith Ross Addison-Wesley Prof. Hong Liu for ECE369 Adapted from.
Synthesis A day in the life of a web request
Presentation transcript:

everything

MACIP End-host IP: MAC: 11:11:11:11:11 gateway IP: MAC: 22:22:22:22:22 Google server IP: MACIP MACInterfaceMACInterface MACInterface interne t ARP Table MAC Forwarding Table interface DNS server IP: MAC: 33:33:33:33:33 MACInterface MAC Forwarding Table DHCP server IP: MAC: 44:44:44:44:44 It is 6AM, you get to work (the first one there). You open your laptop, connect to ethernet, open a browser and download Explain which packets were sent and which tables were filled out

Tcp: syn Tcp: syn+ack Tcp: ack Google server laptop Tcp: http: request GET / Tcp: ack Tcp: http: reply Tcp: ack Get html with URLs to 2 jpeg Persistent Non- persistent -Serial -Parallel

Tcp: syn Tcp: syn+ack Tcp: ack Google server laptop Tcp: http: request GET / Tcp: ack Tcp: http: reply Tcp: ack Get html with URLs to 2 jpeg Persistent Non- persistent -Serial -Parallel

Tcp: syn Tcp: syn+ack Tcp: ack Google server laptop Tcp: http: request GET / Tcp: ack Tcp: http: reply Tcp: ack Get html with URLs to 2 jpeg Persistent Non- persistent -Serial -Parallel Tcp: http: request GET URL of JPEG Assume jpeg are on the same server Tcp: ack Tcp: data Cwnd=1*MSS Cwnd=2*MSS Cwnd=4*MSS Slow start Cwnd ++ for each ack

Non-Persistent serial Tcp: syn Tcp: syn+ack Tcp: ack Tcp: http: request GET / Tcp: http: request GET jpeg Tcp: syn Tcp: syn+ack Tcp: ack Tcp: http: request GET jpeg Tcp: syn Tcp: syn+ack Tcp: ack

Non-Persistent parallel Tcp: syn Tcp: syn+ack Tcp: ack Tcp: http: request GET / Tcp: http: request GET jpeg Tcp: syn Tcp: syn+ack Tcp: ack Tcp: http: request GET jpeg Tcp: syn Tcp: syn+ack Tcp: ack url1: pics.google.com/mypic.jpeg url2: pics.facebook.com/mypic.jpeg

Your IP & mask == dest IP & mask Your Dest Mask: dest is not in the same subnet Mask dest is in the same subnet

Use DHCP – Get IP address – Get subnet mask – Get gateway IP address (why not include the MAC address? ) – Get DNS server IP address Get mac address of local dns server – Broadcast ARP request for MAC address of dns server – Get reply from DNS server Get ip address of google – Send a dns query to local dns server asking for ip address of w.ww.google.com – Dns server send query to Get MAC address of the gateway Root server and gets name and ip address of TLD dns server for.com TLD for.com and gets name and ip address of google dns servers Google dns servers and get ip address of Establish a tcp connection with google – Send ARP request to get MAC address of gateway – Send tcp syn to google – Google send a tcp syn+ack – Send tcp ack Send http request to google – Send tcp message with http request – Google send tcp ack Get http reply from google – Google sends tcp with http reply – Send a tcp ack Browser shows the web page

Basic tasks It is 6AM, you get to work (the first one there). You open your laptop, connect to Ethernet, – With DHCP get an IP address Get subnet mask Get gateway ip address Get dns server ip address open a browser and download – Get IP address of DNS Send DNS query to your local DNS server But, before you send a packet to your local DNS server, you need the MAC address of your DNS server – (how do you know the IP address of the DNS server) – ARP to find MAC address of local DNS server » Recall that the link layer switches do not know where the DNS server, and so frames are flooded The local DNS server will need to contact other DNS servers to determine the ip address of – Once the IP address of google is known, the browser opens a connection to google A TCP SYN packet is constructed and passed to the network layer and then to the MAC layer Again, the end host does not know the MAC address of the gateway (which MAC address does it need) Once the correct MAC address is known, the MAC layer send the TCP SYN packet – Maybe the link layer switches need to perform more self-learning The google server replies with a TCP-SYN-ACK Your host replies with TCP-ACK And TCP let’s your browser know that it is connected to google The browser makes a HTTP request for file / and host: The http is given to TCP, which puts it in a TCP packet and send it to google The Google server receives the TCP packet and sends a TCP-ACK back Google server generated a HTTP reply (let’s assume it fits into one packet) and send it back. This reply is given to TCP which sends it to your laptop Your laptop gets the tcp packet and sends an ack and gives the http reply to the browser The browser gets the message and draws the screen and perhaps requests objects listed in the http reply message

Basic tasks It is 6AM, you get to work (the first one there). You open your laptop, connect to ethernet, – With DHCP get an IP address Get subnet mask Get gateway Get dns server open a browser and download – Get IP address of DNS Send DNS query to your local DNS server But, before you send a packet to your local DNS server, you need the MAC address of your DNS server – (how do you know the IP address of the DNS server) – ARP to find MAC address of local DNS server » Recall that the link layer switches do not know where the DNS server, and so frames are flooded The local DNS server will need to contact other DNS servers to determine the ip address of – Once the IP address of google is known, the browser opens a connection to google A TCP SYN packet is constructed and passed to the network layer and then to the MAC layer Again, the end host does not know the MAC address (which MAC address does it need) Once the correct MAC address is known, the MAC layer send the TCP SYN packet – Maybe the link layer switches need to perform more self-learning The google server replies with a TCP-SYN-ACK Your host replies with TCP-ACK And TCP let’s your browser know that it is connected to google The browser makes a HTTP request for file / and host: The http is given to TCP, which puts it in a TCP packet and send it to google The Google server receives the TCP packet and sends a TCP-ACK back Google server generated a HTTP reply (let’s assume it fits into one packet) and send it back. This reply is given to TCP which sends it to your laptop Your laptop gets the tcp packet and sends an ack and gives the http reply to the browser The browser gets the message and draws the screen and perhaps requests objects listed in the http reply message

DHCP Host generates a UDP message with source port=68 and dest port=67, IP dest= (b-cast) and source IP= This packet is given to link layer which generates a frame with dest=ff:ff:ff:ff:ff:ff and source=11:11:11:11:11:11 This message is flooded over all switches – So the switches know a path back to the host – Any host in the LAN can receive this message, including the DHCP server Can a router forward b-cast messages? Discuss? – E.g., explain ARP if routers forward b-cast messages » Well, routers could only forward network layer b-casts – There exists DHCP relays, which allow DHCP messages to be sent between LANs The DHCP server gets the message and generates a DHCP ACK with contains – IP address ( ) – IP of local DNS server ( ) – IP of gateway ( ) – Netmask ( ) – This message is sent via UDP with source IP = Dest ip= Source port=67 Dest port=68 – The link layer make a frame with source MAC=44:44:44:44:44:44 and dest MAC=11:11:11:11:11:11 This is smart, usually the dest MAC depends on the dest IP. But here it is different The link layer switches forward this message directly to the host since the tables know the path to the host Some switches also know the path back to the DHCP server

MACIP End-host IP: MAC: 11:11:11:11:11 gateway IP: MAC: 22:22:22:22:22 Google server IP: MACIP MACInterfaceMACInterface MACInterface interne t ARP Table MAC Forwarding Table interface DNS server IP: MAC: 33:33:33:33:33 MACInterface MAC Forwarding Table DHCP server IP: MAC: 44:44:44:44:44

Basic tasks It is 6AM, you get to work (the first one there). You open your laptop, connect to ethernet, – With DHCP get an IP address, Get subnet mask, Get gateway, Get dns server open a browser and download – Get IP address of DNS Send DNS query to your local DNS server But, before you send a packet to your local DNS server, you need the MAC address of your DNS server – (how do you know the IP address of the DNS server) – ARP to find MAC address of local DNS server » Recall that the link layer switches do not know where the DNS server, and so frames are flooded The local DNS server will need to contact other DNS servers to determine the ip address of – Once the IP address of google is known, the browser opens a connection to google A TCP SYN packet is constructed and passed to the network layer and then to the MAC layer Again, the end host does not know the MAC address (which MAC address does it need) Once the correct MAC address is known, the MAC layer send the TCP SYN packet – Maybe the link layer switches need to perform more self-learning The google server replies with a TCP-SYN-ACK Your host replies with TCP-ACK And TCP let’s your browser know that it is connected to google The browser makes a HTTP request for file / and host: The http is given to TCP, which puts it in a TCP packet and send it to google The Google server receives the TCP packet and sends a TCP-ACK back Google server generated a HTTP reply (let’s assume it fits into one packet) and send it back. This reply is given to TCP which sends it to your laptop Your laptop gets the tcp packet and sends an ack and gives the http reply to the browser The browser gets the message and draws the screen and perhaps requests objects listed in the http reply message

DNS Generate UDP pkt – DNS request for IP address of – Dest IP = How did the host learn this? – Dest port = 53 – Source IP = – Source port = some random value above 1023 and below 2^16 UDP gives packet to network layer which gives it to link layer First, ARP the DNS server – Send ARP message: whos know the MAC address of , tell Source MAC: 11:11:11:11:11:11 Dest MAC: ff:ff:ff:ff:ff:ff Now, who knows the MAC address for ? – Everyone – Send ARP reply The MAC for is 33:33:33:33:33:33 Dest MAC: 11:11:11:11:11:11 Source MAC: 33:33:33:33:33:33 Now who knows the MAC for – Only the host Once the MAC of the DNS server is known, the DNS request is encapsulated in a ethernet frame with – Source MAC=11:11:11:11:11:11 – Dest MAC=33:33:33:33:33:33 Do the link layer switches flood with message to the DNS server? – no, they learned the path to the dns server when the server replied to the ARP The DNS server does not know the IP of In fact, it does not know any address, except the DNS rootwww.google.com – Send DNS query to root For DNS query, UDP pkt with – Dest port 53, source port random, dest ip=IP of a root DNS server (this is manually entered into the dns server) The UDP pkt is given to the network layer – The network layer looks at the dest ip and sees that the dest in not in this LAN. A table look up determines that the next hop is the gateway which has IP – The link layer needs to get the MAC address for » ARP: who has , tell » Source MAC: 33:33:33:33:33:33 » Message is flooded So now all machines know the MAC of and all switches know how to reach 33:33:33:33:33:33 » The gateway responds with its MAC

DNS continue The DNS server does not know the IP of In fact, it does not know any address, except the DNS rootwww.google.com – Send DNS query to root For DNS query, UDP pkt with – Dest port 53, source port random, dest ip=IP of a root DNS server (this is manually entered into the dns server) The UDP pkt is given to the network layer – The network layer looks at the dest ip and sees that the dest in not in this LAN. A table look up determines that the next hop is the gateway which has IP – The link layer needs to get the MAC address for » ARP: who has , tell » Source MAC: 33:33:33:33:33:33 » Message is flooded So now all machines know the MAC of and all switches know how to reach 33:33:33:33:33:33 » The gateway responds with its MAC » The ethernet frame is constructed and sent to the gateway The gateway forward this pkt into the internet and it reaches a dns root server, which replies – It does not know the address of – But it includes the name of two TLD servers for.com as well as there IP addresses This pkt gets to the gateway, which puts the pkt into an ethernet frame with dest 33:33:33:33:33:33 This frame is send directly to the dns server – The dns server then sends a dns query to a TLD server – The TLD server responds with the names of some dns servers of google and the IP addresses of these servers – The dns server sends a dns query to one of google’s dns servers – the server replies with the ip address of – The DNS server sends this message to the host

Basic tasks It is 6AM, you get to work (the first one there). You open your laptop, connect to wifi, – With DHCP get an IP address, Get subnet mask, Get gateway, Get dns server open a browser and download – Get IP address of DNS – Once the IP address of google is known, the browser opens a connection to google A TCP SYN packet is constructed and passed to the network layer and then to the MAC layer Does the host know the MAC address of the gateway? No, the end host does not know the MAC address (which MAC address does it need). So ARP is performed Once the correct MAC address is known, the MAC layer send the TCP SYN packet – Maybe the link layer switches need to perform more self-learning The google server replies with a TCP-SYN-ACK Your host replies with TCP-ACK And TCP let’s your browser know that it is connected to google The browser makes a HTTP request for file / and host: The http is given to TCP, which puts it in a TCP packet and send it to google The Google server receives the TCP packet and sends a TCP-ACK back Google server generated a HTTP reply (let’s assume it fits into one packet) and send it back. This reply is given to TCP which sends it to your laptop Your laptop gets the tcp packet and sends an ack and gives the http reply to the browser The browser gets the message and draws the screen and perhaps requests objects listed in the http reply message