CORNELL CS 5190 - Lecture 2 IP (Internet Protocol)

Unformatted text preview:

CS519: Computer NetworksLecture 2: Feb 2, 2004IP (Internet Protocol)CS519A hypothetical service| You want a mail delivery service| You have two choices:z Acme Guaranteed Mail Delivery Service• “We never fail”z Rocko’s Mail Delivery and Hubcap• “We’ll get it there if we feel like it”| Which do you choose???CS519Some selection criteria???CS519Some selection criteria| What is the price?z Rocko: $1, Acme: $2| How often do they fail?z Rocko: 5%, Acme: Never| How important is the mail?z Important: Worth $100,000!!!| Which do you choose???CS519A selection analysis| Rocko’s service costs $5001/mail on averagez Because 1/20 mails are lost at a cost of $100000!!!| Acme’s service costs $2/mail | Acme appears to be the best choice…CS519But….more selection criteria| What is being delivered (copy or original)?z Copy| How long does it take?z Acme and Rocko, both one day max| How soon do we need delivery?z Within a week| Now which do we choose???CS519More selection analysis| Assume that the recipient calls to report delivery. If no call, make another copy and send mail againz Rocko gets 7 tries at .05 failure per try means .057= .00000000078 failure prob| Now Rocko costs ~$1/mail, Acme costs $2/mail???z Ah, but assume phone call costs $2| Rocko costs ~$3/mail, Acme costs $2/mail| Still appears that Acme is the best choice…CS519A couple of network layer service models| Datagram (IP)z “Best Effort” (packets may not arrive, they may be out of order, they may be duplicated)z Send packet anytime| Virtual Circuit (X.25)z Guaranteed (no loss, in order, no duplicate)z Send packet only if VC established• Can try to establish a VC anytime z Send packet only if network is ready to receiveCS519This was the choice about 20 years ago| Many people did an analysis and concluded that virtual circuit (VC) services made more sensez In fact, the whole idea of an unreliable network service seemed absurd!| In part: VC services implied simple end devices, complex switchesz But far more end devices than switches, and switches easier to access (for management and repair)CS519This was the choice about 20 years ago| But datagram service won in the marketplace| Why????CS519One reason (of many): The end-to-end argument| This may be the single most important concept in network design….CS519Mail selection criteria again:Something fishy???| What is the price?z Rocko: $1, Acme: $2| How often do they fail?z Rocko: 1%, Acme: Never| How important is the mail?z Important: Worth $100,000!!!| Which do you choose???CS519Mail selection criteria again:Something fishy???| You would definitely make a $2 phone call to make sure a $100,000 document was received!!!z End-to-end verification| Turns out that a “reliable” network fails enough that you want end-to-end verificationz End systems no simpler after allCS519End-to-end argument| Ultimately the end system must be responsible for insuring reliabilityz The network can’t fully be trusted| If the end system has to insure reliability, no reason to do it in the middle!| Keep the middle simple!| This is the design principle behind IPCS519IP Problem Statement| Design a network protocol that can operate over and bridge multiple different kinds of packet networks| Why this problem statement?z Because at the time, DARPA had multiple networks and wanted to make them interworkCS519IP Problem StatementCS519IP Problem StatementCS519Two basic approaches were considered| Build a translation gateway for every pair of network protocolsz N2types of gatewaysz Every host has an address on every networkz Gateways know how to map from an address in one network address space to an address in another network space| Create a new protocol layer that runs above the existing network protocolsz This of course is IPCS519Translation versus new layerCS519Contrast with previous protocol stack pictureCS519This is a more accurate stack pictureCS519Advantage of translation gateway approach| No changes to existing hosts requiredz Each host thinks the remote host is on the same network| This was a nice advantage (and is an approach often used today), but . . .CS519Main problems with translation gateway approach| Service mismatchz Networks may offer different services• Reliability or not, resource reservation or not, congestion control or notz A host on one network “thinks” the remote host is on the same network, and so has the same services| Lack of address spacez Most networks built with only enough address space for themselvesz Can’t accommodate hosts on other networksCS519New Protocol Layer| Can make the address space as big as neededz This solves the “lack of address space” problem| But what service should the new protocol layer provide?CS519New Protocol Layer Services| Reliability (sequencing):z This can be provided by the end hostsz Don’t need it from the networks| Resource reservation:z This is hard to provide unless every network in the middle participatesz Can’t get it from the networks| Congestion control:z This is useful even if not all networks provide itz Provide this service (even though different networks may signal this differently and require different responses)!CS519New functions required by the new protocol layer| Address resolutionz How to determine the subnet address of the next hop (router or host)z A hard problem in the general case| Fragmentation and reassemblyz How to accommodate different MTUs (Maximum Transmission Unit) in different subnetsCS519Maximum Transmission Unit (MTU)| Every subnet/link has a maximum packet size it can handlez This fixes design of incoming buffers, etc., in hardware| This is called the MTU| With multiple subnets, an IP packet may be larger than some MTUs in the path| The smallest MTU in the path is known as the Minimum MTUCS519Minimum MTU ExampleCS519Three basic approaches1. Use a routing protocol that conveys Minimum MTU of the pathz Host picks the right MTU size from the start2. Router drops packet and sends an error message to the Host3. Router fragments packet into smaller packets| IP uses a combination of 2 and 3CS519Fragmentation and reassemblyCS519Why doesn’t Rb reassemble the packet?CS519IP Header (RFC 791)0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+|Version| IHL |Type of Service| Total Length


View Full Document

CORNELL CS 5190 - Lecture 2 IP (Internet Protocol)

Download Lecture 2 IP (Internet Protocol)
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Lecture 2 IP (Internet Protocol) and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Lecture 2 IP (Internet Protocol) 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?