DOC PREVIEW
CMU CS 15744 - Lecture

This preview shows page 1-2-3-21-22-23-43-44-45 out of 45 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 45 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 45 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 45 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 45 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 45 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 45 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 45 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 45 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 45 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 45 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Slide 1Design ConsiderationsOutlineGoals [Clark88]Connecting NetworksChallenge 1: Address FormatsChallenge 2: Different Packet SizesGateway AlternativesStandardizationIP HourglassIP Layering (Principle 7)SurvivabilityPrinciple 2: Fate SharingPrinciple 3: Soft-statePrinciple 4: End-to-End ArgumentExample: Reliable File TransferE2E Example: File TransferDiscussionExamplesTypes of ServiceTypes of ServicePrinciple 6: DecentralizationPrinciple 6’IP Design WeaknessesChanges Over TimeNew Principles?Summary: Internet ArchitectureSummary: Minimalist ApproachSummaryOutlineFragmentationFragmentation is HarmfulPath MTU DiscoveryIP Address Problem (1991)IP Address Utilization (‘98)IPv4 Routing ProblemsSolution 1 – CIDRClassless Inter-Domain RoutingSolution 2 - NATNAT IllustrationSolution 3 - IPv6IPv6 ChangesIPv6 ChangesSummary: IP DesignNext Lecture: Interdomain Routing15-744: Computer NetworkingL-2 Design Considerations2Design Considerations •How to determine split of functionality•Across protocol layers•Across network nodes•Assigned Reading•[SRC84] End-to-end Arguments in System Design•[Cla88] Design Philosophy of the DARPA Internet Protocols3Outline•Design principles in internetworks •IP design4Goals [Clark88]0Connect existing networksinitially ARPANET and ARPA packet radio network1. Survivabilityensure communication service even in the presence of network and router failures 2. Support multiple types of services3. Must accommodate a variety of networks4. Allow distributed management5. Allow host attachment with a low level of effort6. Be cost effective7. Allow resource accountability5Connecting Networks•How to internetwork various network technologies•ARPANET, X.25 networks, LANs, satellite networks, packet networks, serial links…•Many differences between networks•Address formats•Performance – bandwidth/latency•Packet size•Loss rate/pattern/handling•Routing6Challenge 1: Address Formats•Map one address format to another?•Bad idea  many translations needed•Provide one common format•Map lower level addresses to common format7Challenge 2: Different Packet Sizes•Define a maximum packet size over all networks?•Either inefficient or high threshold to support•Implement fragmentation/re-assembly•Who is doing fragmentation?•Who is doing re-assembly?8Gateway Alternatives•Translation•Difficulty in dealing with different features supported by networks•Scales poorly with number of network types (N^2 conversions)•Standardization•“IP over everything” (Design Principle 1)•Minimal assumptions about network•Hourglass designStandardization•Minimum set of assumptions for underlying net•Minimum packet size•Reasonable delivery odds, but not 100%•Some form of addressing unless point to point•Important non-assumptions:•Perfect reliability•Broadcast, multicast•Priority handling of traffic•Internal knowledge of delays, speeds, failures, etc.•Much engineering then only has to be done onceIP Hourglass•Need to interconnect many existing networks•Hide underlying technology from applications•Decisions:•Network provides minimal functionality•“Narrow waist”Tradeoff: No assumptions, no guarantees.TechnologyApplications email WWW phone...SMTP HTTP RTP...TCP UDP…IP ethernet PPP…CSMA async sonet... copper fiber radio...11IP Layering (Principle 7)•Relatively simple•Sometimes taken too farRouterRouterHostHostApplicationTransportNetworkLinkSurvivability•If network disrupted and reconfigured•Communicating entities should not care!•No higher-level state reconfiguration•How to achieve such reliability?•Where can communication state be stored?12Network HostFailure handing Replication “Fate sharing”Net Engineering Tough SimpleSwitches Maintain state StatelessHost trust Less MorePrinciple 2: Fate Sharing•Lose state information for an entity if and only if the entity itself is lost.•Examples:•OK to lose TCP state if one endpoint crashes•NOT okay to lose if an intermediate router reboots•Is this still true in today’s network?•NATs and firewalls•Survivability compromise: Heterogeneous network  less information available to end hosts and Internet level recovery mechanismsConnection StateStateNo State1314Principle 3: Soft-state•Soft-state•Announce state•Refresh state•Timeout state•Penalty for timeout – poor performance•Robust way to identify communication flows•Possible mechanism to provide non-best effort service•Helps survivability15Principle 4: End-to-End Argument•Deals with where to place functionality•Inside the network (in switching elements)•At the edges•Argument•There are functions that can only be correctly implemented by the endpoints – do not try to completely implement these elsewhere•Guideline not a law16Example: Reliable File Transfer•Solution 1: make each step reliable, and then concatenate them•Solution 2: end-to-end check and retryOSAppl.OSAppl.Host A Host BOKE2E Example: File Transfer•Even if network guaranteed reliable delivery•Need to provide end-to-end checks•E.g., network card may malfunction•The receiver has to do the check anyway!•Full functionality can only be entirely implemented at application layer; no need for reliability from lower layers•Does FTP look like E2E file transfer?•TCP provides reliability between kernels not disks•Is there any need to implement reliability at lower layers?1718Discussion•Yes, but only to improve performance•If network is highly unreliable•Adding some level of reliability helps performance, not correctness•Don’t try to achieve perfect reliability!•Implementing a functionality at a lower level should have minimum performance impact on the applications that do not use the functionality19Examples•What should be done at the end points, and what by the network?•Reliable/sequenced delivery?•Addressing/routing?•Security?•What about Ethernet collision detection?•Multicast?•Real-time guarantees?Types of Service•Principle 5: network layer provides one simple service: best effort datagram (packet) delivery•All packets are treated the same•Relatively simple core network elements•Building block from which other services (such as reliable data stream) can be built•Contributes to scalability of network•No QoS support assumed from below•In fact, some underlying nets only supported reliable delivery•Made Internet datagram service less


View Full Document

CMU CS 15744 - Lecture

Documents in this Course
Lecture

Lecture

25 pages

Lecture

Lecture

10 pages

Lecture

Lecture

10 pages

Lecture

Lecture

48 pages

Lecture

Lecture

19 pages

Lecture

Lecture

97 pages

Lecture

Lecture

39 pages

Lecture

Lecture

49 pages

Lecture

Lecture

33 pages

Lecture

Lecture

21 pages

Lecture

Lecture

52 pages

Problem

Problem

9 pages

Lecture

Lecture

6 pages

03-BGP

03-BGP

13 pages

Lecture

Lecture

42 pages

lecture

lecture

54 pages

lecture

lecture

21 pages

Lecture

Lecture

18 pages

Lecture

Lecture

18 pages

Lecture

Lecture

58 pages

lecture

lecture

17 pages

lecture

lecture

46 pages

Lecture

Lecture

72 pages

Lecture

Lecture

44 pages

Lecture

Lecture

13 pages

Lecture

Lecture

22 pages

Lecture

Lecture

48 pages

lecture

lecture

73 pages

17-DNS

17-DNS

52 pages

Lecture

Lecture

10 pages

lecture

lecture

53 pages

lecture

lecture

51 pages

Wireless

Wireless

27 pages

lecture

lecture

14 pages

lecture

lecture

18 pages

Lecture

Lecture

16 pages

Lecture

Lecture

14 pages

lecture

lecture

16 pages

Lecture

Lecture

16 pages

Lecture

Lecture

37 pages

Lecture

Lecture

44 pages

Lecture

Lecture

11 pages

Lecture

Lecture

61 pages

Multicast

Multicast

61 pages

Lecture

Lecture

19 pages

Lecture

Lecture

8 pages

Lecture

Lecture

81 pages

Lecture

Lecture

9 pages

Lecture

Lecture

6 pages

Lecture

Lecture

63 pages

Lecture

Lecture

13 pages

Lecture

Lecture

63 pages

Lecture

Lecture

50 pages

lecture

lecture

35 pages

Lecture

Lecture

47 pages

Lecture

Lecture

29 pages

Lecture

Lecture

92 pages

Load more
Download Lecture
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 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 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?