cs 557 lecture 3 network architecture
play

CS 557 - Lecture 3 Network Architecture End to End Arguments in - PowerPoint PPT Presentation

CS 557 - Lecture 3 Network Architecture End to End Arguments in System Design Saltzer, Reed, Clark, 1984 Design Philosophy of the DARPA Internet Protocols Clark 1988 Spring 2013 Architecture Dictionary definitions A style and method of


  1. CS 557 - Lecture 3 Network Architecture End to End Arguments in System Design Saltzer, Reed, Clark, 1984 Design Philosophy of the DARPA Internet Protocols Clark 1988 Spring 2013

  2. Architecture Dictionary definitions • A style and method of design and construction. • Orderly arrangement of parts. • The manner of construction of something and the disposition of its parts. • Design, the way components fit together.

  3. Architecture Principles • Definitions are vague, so we need guiding principles – but can people agree on what these are? • The debate is raging on! Just browse www.ietf.org sometime • Now: original principles • End of class: look at current debate about Internet architecture

  4. [SRC84] Main Points • Need: – Describe and justify the end to end principle • Approach: – Examine which layer should implement a service – Argue many services should be implemented at the higher layers (eg on the end hosts) • Benefits: – Fits with the model of minimal network (IP) layer – Provides guidance on what (not) to add to data link layers – End to end principle is fundamental to Internet success.

  5. Basic Assumptions • Layered Network Architecture – Divide complex system into logical layers – Service at one layer is based solely on service provided by the lower layer • Layering in the Internet – Application layer, transport layer, network layer, data link layer. – Note a transport layer service such as TCP is based solely on services provided by IP • TCP does not know or care about ethernet (data link) details.

  6. Basic Question • Which Layer Should Implement a Service? – reliable delivery – Encryption – duplicate message suppression – FIFO ordering – Transaction Management • One approach: lower layer should help applications by implementing such services • End2End: these service can only be implemented correctly at the end points. – Implementations at lower layer are questionable

  7. Example of File Transfer • Errors can occur at many levels – Transfer from sender disk to memory – Transfer from sender OS to sender line card – Transfer across network – Transfer from receiver line card to receiver OS – Transfer from receiver memory to disk • What would be the effect of a perfectly reliable network on the above?

  8. Example of File Transfer (2) • Perfectly Reliable Network Not Ideal – Does not recover from other errors – Provides false sense of security • Example: file transfer in paper, BGP routing today – Can harm other applications • Example: hard to send voice over this network • Suggest this a service best implemented at the ends (end to end principle)

  9. Fundamental Trade-Offs • End systems have information on semantics and requirements • Network has information on data transmission parameters (packet size, error rate) – Assuming packets follow the predicted path

  10. Rules of Thumb • Consider Marginal Gain In Lower Layer: – If you can achieve large impact with limited effort, may be worth implementing at the lower layer. • Consider the Impact on Other Services – Implement service at lower layer only if it has minimal impact on applications that don ’ t use the service. • General Result: implement services at the end, not inside the network.

  11. [Cla88] Main Points • Need: – Previously we saw the specification of TCP and IP. – This papers describe the reasoning that led to the design and specification of TCP/IP • Approach: – Clearly state and order the goals • Benefits: – One fundamental goal – Several second level goals – Ordering of the second level goals is essential

  12. Fundamental Goal • Goal: Effective technique for multiplexed utilization of existing interconnected networks. • Some Important Assumptions Include – Connect ARPANET with ARPA packet radio – Networks represent administrative boundaries – Rely on packet switching and store and foward • Net Result of The Goal and Assumptions – Packet switched network consisting of distinct networks with store and forward gateways between them.

  13. Second Level Goals • Function despite loss of networks/gateways • Support multiple types of services • Accommodate a variety of networks • Distributed management of resources • Cost effective • Low level of effort to add a host • Provide accounting of resources used. What else could a network designer ask for??

  14. Fundamental Trade-Offs • Paper recognizes this seems like a list of all important network design goals. – But all of the goals cannot be satisfied equally (at least no one has been able to do this) – Which goals win and which lose in the trade-off? • The order of the goals is essential – Very strong focus on first three • Survive network and gateway failures • Provide different types of services • Accommodate a variety of networks – A different order would produce a different design. • Ex: accounting barely works at all in the Internet.

  15. Survivability • Links and Gateways will fail and stop working – Note design did not anticipate misbehavior • Two entities can continue communication – Despite faults at any intermediate point – Mask any transient failures (eg route changes) – Break only if total network partition • Source has no physical path to destination

  16. Achieving Survivability • Implications for Storing Network State – Any state stored at intermediate nodes must be replicated (since node may fail) – Difficult (at best) to replicate this state. • Clever Solution: State only stored at edges – State-less packet switches (middle of network) – Consider TCP state: seqnum, acknum, window, etc are all stored at the edge. – No TCP information is stored in the intermediate nodes – Fate-Sharing: acceptable to lose the state if the host itself has failed

  17. Types of Services • Virtual circuit service (TCP) – Bi-directional reliable delivery – Differing goals even within this service • High bandwidth, delay not so important • Low latency, bandwidth less important • Other services – Low complexity, no reliability (ex: debugging) – Predictable rate with minimal jitter (ex: voice) • Reliability is counter-productive here • Split TCP (transport) and IP (network) – Datagram is basic building block – No assumption desired service is present in underlying net – Build services such as TCP or UDP at the end hosts

  18. Variety of Networks • Assumptions Regarding Underlying Network – Transport a packet (datagram) – Reasonable packet size (100 bytes) – Reasonable (not perfect) reliability • Reliability proved a problem for sending voice • Assumptions That Were Not Used – Reliable or sequenced delivery – Network broadcast or multicast – Priorities or services – Failures, speeds, or delays • Minimal set of functionalities – Build other services at the host (eg TCP for reliablity)

  19. Other Goals • Distributed Management – Success in allowing multiple domains (two tier routing) – Failure in routing policies • Cost Effective – Longer headers reduce efficiency – Retransmission at the ends reduces efficiency • Adding Hosts – Host software is complex • (compare PC requirements with telephone requirements) – Relies on correct implementations at the host • Misbehavior is a real problem today • Accounting – Challenges of datagram model – May prefer flows for accounting

  20. Implementations • Proven to meet goal of network variety – Some high speed, some not – Some highly redundant, some single point of failure • Note this failure of the implementation, not the design • Leaves Much of the Work for Implementation – What bandwidth? What redundancy? • Performance Goals – Can confirm protocol logical correctness – But not sufficient for implementation goals – Little good guidance – Limited effective simulation • Specifying Performance – Must specify it, or you won ’ t get it – Leave it to network administrators to specify performance goals

  21. Datagrams • Provide Several Key Advantages • No state stored in the network (survivability goal) • Building block for many services (type of service goal) • Minimum network assumption (variety of networks goal)

  22. TCP • Provide Byte Stream Reliablity – Dropped idea of packet reliability – Claims this may have been error • We will see much more on TCP later in the course.

  23. Summary • Identified and Prioritized Goals – Top Three goals very succesful – Bottom goals less successful • Building Block: Datagram – Very effective for top goals – Suggests “ flows ” may be better (for different priorities of goals) – Suggests Period Messages: Soft-State

  24. Some Closing Notes • Completed our look at Internet architecture • Some Implications – Diverse set of link layer protocols – Minimal services at the IP layer – Distributed Management • And hence partial/incremental deployment – Prefer End to End based implementations. • Next consider a new architecture: Named Data Networking

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend