Download presentation
Presentation is loading. Please wait.
Published byHector Morrison Modified over 9 years ago
1
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 1 Review of Networking and Design Concepts (II): Brief Version Two ways of constructing a software design: 1)make it so simple that there are obviously no deficiencies, and 2)make it so complicated that there are no obvious deficiencies --- CAR Hoare Based in part upon slides of Prof. Raj Jain (OSU), J. Kurose (U Mass), I. Stoica, A.Joseph (UCB)
2
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 2 q Protocols, layering, encapsulation q Function-placement: End-to-end principle q Implementation: App-layer framing, ILF q Interface design: functionality, technology, performance q Rules of thumb in system design q Chapter 1,2,11 in Doug Comer book q Reading: Saltzer, Reed, Clark: "End-to-End arguments in System Design""End-to-End arguments in System Design" q Reading: Clark: "The Design Philosophy of the DARPA Internet Protocols":"The Design Philosophy of the DARPA Internet Protocols": q Reading: RFC 2775: Internet Transparency: In HTMLIn HTML Overview
3
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 3 Protocols Human protocol vs Computer network protocol: A series of functions performed at different locations. Hi Got the time? 2:00 TCP connection req. TCP connection reply. Get http://www.rpi.edu/index.htm time
4
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 4 Why Layering? q Without layering, each new application has to be re- implemented for every network technology! Telnet FTPNFS Packet radio Coaxial cable Fiber optic Application Transmission Media HTTP (FTP – File Transfer Protocol, NFS – Network File Transfer, HTTP – World Wide Web protocol)
5
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 5 Why Layering? q Solution: introduce an intermediate layer that provides a unique abstraction for various network technologies Telnet FTPNFS Packet radio Coaxial cable Fiber optic Application Transmission Media HTTP Intermediate layer
6
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 6 Layering q Advantages q Modularity – protocols easier to manage and maintain q Abstract functionality –lower layers can be changed without affecting the upper layers q Reuse – upper layers can reuse the functionality provided by lower layers q Disadvantages q Information hiding – inefficient implementations
7
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 7 Protocols : Contd… q Building blocks of a network architecture q Each protocol object has two different interfaces q service interface: defines operations on this protocol q peer-to-peer interface: defines messages exchanged with peer service interface peer interface L i+1 LiLi LiLi
8
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 8 Interface Design q Driven by three factors: q Functionality: what features the customer wants, and is placed at a level due to e2e principle etc q Technology: what’s possible. Building blocks and techniques q Performance: How fast etc… User, Designer, Operator views of performance.. q Interface design crucial because interface outlives the technology used to implement the interface.
9
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 9 ISO OSI Reference Model q Seven layers q Lower three layers are peer-to-peer q Next four layers are end-to-end Application Presentation Session Transport Network Datalink Physical Application Presentation Session Transport Network Datalink Physical Network Datalink Physical Physical medium
10
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 10 Encapsulation q A layer can use only the service provided by the layer immediate below it q Each layer may change and add a header to data packet data
11
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 11 OSI vs. TCP/IP q OSI: conceptually define services, interfaces, protocols q Internet: provide a successful implementation Application Presentation Session Transport Network Datalink Physical Internet Host-to- network Transport Application IP LAN Packet radio TCPUDP TelnetFTPDNS OSITCP
12
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 12 Logical Communication q Application thinks it is directly talking to a peer application on the other side application transport network link physical application transport network link physical application transport network link physical application transport network link physical network link physical data transport ack (Source: Kurose & Ross)
13
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 13 Physical Communication (Source: Kurose & Ross) application transport network link physical application transport network link physical application transport network link physical application transport network link physical network link physical data
14
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 14 Network Architecture & Design q Key issue: function placement q Sub-questions: q What functions are necessary in this architecture? q Where to place these functions? q In more detail … q How to decompose the complex network system functionality into protocol layers? q What functions to be placed at which levels & locations? q Can a function be placed at multiple levels & locations ?
15
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 15 Common View of the Telco Network Brick
16
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 16 Common View of the IP Network
17
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 17 End-to-End (E2E) Argument: A guiding principle for function placement q “…functions placed at the lower levels … q … may be redundant or of little value … q … when compared to the cost of providing them at the lower level…”
18
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 18 E2E Argument: take-away lesson… q Corollary: q a system (or subsystem level) should only consider offering functions that can be completely and correctly implemented within it. q Alternative interpretation: q Think twice before implementing a functionality that you believe that is useful to an application at a lower protocol layer q If the application can implement a functionality correctly, implement it a lower layer only it provides a significant performance enhancement
19
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 19 End-to-End Argument: Critical Issues q The end-to-end principle emphasizes: q function placement q correctness q completeness and q overall system costs. q It allows a cost-performance tradeoff q If implementation of function in higher levels is not possible due to technological/economic reasons, then it may be placed at lower levels q Eg: telephone network in early 1900s could not provide the complex end-system functions => dumb telephones & intelligent switching architecture
20
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 20 Example: Reliable File Transfer q Solution 1: make each step reliable, and then concatenate them q Solution 2: end-to-end check and retry OS Appl. OS Appl. Host AHost B OK
21
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 21 Internet & End-to-End Argument q At network layer provides one simple service: best effort datagram (packet) delivery q Only one higher level service implemented at transport layer: reliable data delivery (TCP) q performance enhancement; used by a large variety of applications (Telnet, FTP, HTTP) q does not impact other applications (can use UDP) q Everything else implemented at application level
22
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 22 Aside: What is a “level” of a system? q Protocol “layer” = “level” q Within a single layer, q closer to the core => “lower” level q Eg: Edge-boxes of a domain implementing functions like firewalls, address translation, QoS functions are at a “lower” level compared to other boxes in the domain q Core router is “lower” level compared to an “edge router”
23
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 23 Aside: Principle vs Argument vs Dogma! q Note: E2E was first formulated as an “argument” q It then became a de facto guiding principle for a lot of Internet design q Led to “dogmatic” or “religious” philosophic wars between “Bell-heads” and “Net-heads”! q Danger: though the E2E principle is time-tested, it has become a dogma! q it is unclear whether it is uniformly applicable in future network designs (eg: commercial internet, peer-to- peer networks, mobile ad-hoc networks)
24
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 24 Architecture vs Implementation: ALF Principle q Architecture: decomposition into functional modules, semantics of modules and syntax used q Implementation need not directly correspond to the architectural decomposition q Eg: layering may not be most effective modularity for implementation q Summary: q Allow for flexible decomposition q Defer engineering decisions to implementor. q Avoid gratuitous implementation constraints q Maximize engineering options for customization & optimization
25
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 25 Application Layer Framing (ALF) q Several processing bottlenecks may lie at the “presentation” layer which does not really exist in the TCP/IP stack q Principle: the application-layer should have control of the syntax and semantics of the presentation conversions q Transport should provide only common functions q Generalization of ALF: look for elegant ways to allow application participation in lower-level activities q Eg: QoS – carry application intelligence to the point of QoS enforcement
26
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 26 Eg: Real-Time Protocol (RTP) q RTP is the basis of multimedia and VoIP on the Internet q RTP is a protocol framework that is deliberately not complete and can be tailored modifications/additions to the headers. q RTP specifies only common functions for its apps q RTP svcs: payload type identification, sequence numbering, timestamping and delivery monitoring q Avoid taking on additional functions q making the protocol more general or q Adding options requiring expensive parsing
27
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 27 Performance q Performance questions: q Absolute: How fast … Relative: Is A faster than B and how much faster? q Define system as a black box. q Parameters: input; Metrics: output q Parameters: only those the system is sensitive to q Metrics: must reflect the system design tradeoff System Parameters Metrics
28
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 28 Effect on Design: Amdahl’s law q Performance after improvement = Performance affected by improvement / speedup + Unaffected performance q Lesson: Speedup the common case I.e. the parts that matter most !! q Amdahl’s law guides the definition of tradeoffs, parameters, test cases and metrics !
29
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 29 Perspectives on Performance/Design q Network users: services and performance that their applications need, q Network designers: cost-effective design q Network providers: system that is easy to administer and manage q Need to balance these three needs
30
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 30 Summary: System Design Rules of Thumb q Design a system to tradeoff cheaper resources against expensive ones (for a gain) q Corollary: When resources are cheap and abundant, waste them! q Examples: q Multiplexing q Filtering q Apply principles like E2E and ALF to decide on right placement of functions in different system levels q Interfaces outlive technologies in layers.
31
Shivkumar Kalyanaraman Rensselaer Polytechnic Institute 31 q Functionality requirements can be understood by taking different views of the system q Eg: designer, implementor, operator. q Placement of functionality is critical in system design q Performance is either relative or absolute and is usually modeled at the high level as a function from system parameters (input) to system metrics (output). q Metrics must be design to reflect design tradeoffs. q Only sensitive parameters matter. q Optimize the common case (Amdahl’s law) q Solve 90% of the problem that matters, throw away the remaining 10% of the problem requirements!
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.