logging in or signing up Computer Science 2 leminhhai Download Post to : URL : Related Presentations : Share Add to Flag Embed Email Send to Blogs and Networks Add to Channel Uploaded from authorPOINT lite Insert YouTube videos in PowerPont slides with aS Desktop Copy embed code: (To copy code, click on the text box) Embed: URL: Thumbnail: WordPress Embed Customize Embed The presentation is successfully added In Your Favorites. Views: 897 Category: Education License: All Rights Reserved Like it (1) Dislike it (0) Added: July 16, 2007 This Presentation is Public Favorites: 0 Presentation Description No description available Comments Posting comment... By: asweram (3 week(s) ago) immediatly i need please send it me throgh my e-mail Saving..... Post Reply Close Saving..... Edit Comment Close Premium member Presentation Transcript Introduction to Internet : Introduction to Internet Computer Networks: Computer Networks A computer network is a system for communication among two or more computers What amounts to “computers”? What kind of communication? – “digital” System: both software & hardware Examples? Our focus is on the InternetHistory of the Internet: History of the Internet 61-72: development of packet switching 72-80: Proprietary networks and internetworking Multiple packet switching networks “Networks of networks”: earlier development of TCP, UDP, IP ALOHA, Ethernet 80-90: proliferation of networks Standardization of networking protocols TCP/IP, DNS etc NSF builds NSFNET as backbone, links 6 Supercomputer centers, 1.5 Mbps, 10,000 computers 90’s: Internet explosion 94: NSF backbone dismantled, multiple private backbones Emergence of World Wide Web (invented by Time Berners-Lee)Internet “Hall of Fame”: Internet “Hall of Fame” Al Gore, former vice president of USA Vinton G. Cerf and Robert E. Kahn 2004 Turing Award winner “For pioneering work on internetworking, including the design and implementation of the Internet's basic communications protocols, TCP/IP, and for inspired leadership in networking” Turing lecture: http://www.acm.org/sigs/sigcomm/sigcomm2005/webcast.html David Clark et al “end2end arguments” Van Jacobson, TCP congestion control Robert Metcalfe, inventor of Ethernet …Growth of the Internet: Growth of the Internet Number of Hosts on the Internet: Aug. 1981 213 Oct. 1984 1,024 Dec. 1987 28,174 Oct. 1990 313,000 Oct. 1993 2,056,000 Apr. 1995 5,706,000 Jan. 1997 16,146,000 Jan. 1999 56,218,000 Jan. 2001 109,374,000 Jan 2003 171,638,297 Data available at: http://www.isc.org/Growth of the Internet: Growth of the Internet Traffic on Internet (in TB/mo) 1990 1.0 1991 2.0 1992 4.4 1993 8.3 1994 16.3 1996 1,500 1997 2,500 - 4,000 1998 5,000 - 8,000 1999 10,000 - 16,000 2000 20,000 - 35,000 2001 40,000 - 70,000 2002 80,000 - 140,000 Andrew Odlyzko, “Internet traffic growth: Sources and implications” Growth of the Internet: Growth of the Internet Internet bandwidth Nielsen’s law: 50% each year ProjectedWhat is Next Big Thing?: What is Next Big Thing? I wish I have the answer Technology Wireless broadband networks Optical switching networks (?) Application VOIP Peer-to-peer applications Online gaming Sony’s EverQuest servers host 600,000 PC gamers A Few Words on Networking Research: A Few Words on Networking Research Wireless System Research Group (WiSeR) http://coco.cs.uh.edu/~rzheng Information Theory Distributed Systems Grid Computing Computer Networking Combinatorics/ Graph theory Probability/ Stochastic techniques Protocol design Performance modeling, analysis System building Data structure, algorithms, complexity theory Application Domains Wireless Management SecurityWhat will be covered?: What will be covered? Network architecture, services, apps TCP/IP Protocol details Algorithms Performance analysis Ethernet, Wireless networks Multimedia networks QoS scheduling Signaling Network security Basic knowledge Attacks and counter-measures Network management What will not be covered?: What will not be covered? Socket programming (chap 2.7-2.9) Physical layer technologies (chap 1.4) Cellular networks Multicast routing (chap 4.7) ATM, frame relay, PPP (chap 5.7-5.8) The emphasis is no only on “how” but also “why” Knowledge base Reasoning behind the designLogistics: Logistics Textbook, reference book Office hour Homework, project policy Grade Prerequisite test: What are the OSI-ISO layers? How is it related to the practice in the Internet? What is protocol? What is the difference between packet switching and circuit switching? Sockets What’s the Internet: “nuts and bolts” view: What’s the Internet: “nuts and bolts” view End systems Host computer Network applications Access networks Local area networks communication links Network core: routers network of networks What’s the Internet: “nuts and bolts” view: What’s the Internet: “nuts and bolts” view Protocols control sending, receiving of msgs e.g., TCP, IP, HTTP, FTP, PPP Internet: “network of networks” loosely hierarchical public Internet versus private intranet Internet standards RFC: Request for comments IETF: Internet Engineering Task Force local ISP company network regional ISP router workstation server mobileNetwork Components (Examples): Network Components (Examples) Fibers Coaxial Cable Links Interfaces Switches/routers Ethernet card Wireless card Large router SwitchJuniper Routers: Juniper RoutersInternet structure: network of networks: Internet structure: network of networks roughly hierarchical at center: “tier-1” ISPs (e.g., MCI, Sprint, AT&T, Cable and Wireless), national/international coverage treat each other as equals Tier 1 ISP Tier 1 ISP Tier 1 ISPTier-1 ISP: e.g., Sprint: Tier-1 ISP: e.g., Sprint Sprint US backbone networkInternet structure: network of networks: Internet structure: network of networks “Tier-2” ISPs: smaller (often regional) ISPs Connect to one or more tier-1 ISPs, possibly other tier-2 ISPs Tier 1 ISP Tier 1 ISP Tier 1 ISP Internet structure: network of networks: Internet structure: network of networks “Tier-3” ISPs and local ISPs last hop (“access”) network (closest to end systems) Tier 1 ISP Tier 1 ISP Tier 1 ISP Internet structure: network of networks: Internet structure: network of networks a packet passes through many networks! Tier 1 ISP Tier 1 ISP Tier 1 ISP Internet Architecture: Internet Architecture http://www.nap.edu/html/coming_of_age/ http://www.ietf.org/rfc/rfc1958.txt Packet switching over circuit switching “Hourglass” design End-to-end architecture Layering of functionality Distributed design, decentralized control Superior organizational processThe Network Core: The Network Core mesh of interconnected routers the fundamental question: how is data transferred through net? circuit switching: dedicated circuit per call: telephone net packet-switching: data sent thru net in discrete “chunks” Network Core: Circuit Switching: Network Core: Circuit Switching Resources reserved for “call” on an end to end basis link bandwidth, switch capacity dedicated resources: no sharing circuit-like (guaranteed) performance call setup required Network Core: Circuit Switching: Network Core: Circuit Switching network resources (e.g., bandwidth) divided into “pieces” pieces allocated to calls resource piece idle if not used by owning call (no sharing) dividing link bandwidth into “pieces” frequency division time divisionNetwork Core: Circuit Switching Example: Network Core: Circuit Switching Example 1890-current: Phone network Fixed bit rate Mostly voice Not fault-tolerant Components extremely reliable Global application-level knowledge throughout networkNetwork Core: Packet Switching: Network Core: Packet Switching each end-end data stream divided into packets user A, B packets share network resources each packet uses full link bandwidth resources used as needed, resource contention: aggregate resource demand can exceed amount available congestion: packets queue, wait for link use store and forward: packets move one hop at a time transmit over link wait turn at next linkNetwork Core: Packet Switching: Network Core: Packet Switching A B C 10 Mbs Ethernet 1.5 Mbs 45 Mbs statistical multiplexing queue of packets waiting for output linkNetwork Core: Packet Switching Example: Network Core: Packet Switching Example 1981-current: Internet network Variable bit rate Mostly data Fault-tolerant Components not extremely reliable (versus phone components) Distributed control and managementPacket switching versus circuit switching: Packet switching versus circuit switching 1 Mbit link each user: 100Kbps when “active” active 10% of time circuit-switching: 10 users packet switching: with 35 users, probability > 10 active less that .004 Packet switching allows more users to use network! N users 1 Mbps linkPacket switching versus circuit switching: Packet switching versus circuit switching Great for bursty data resource sharing no call setup Excessive congestion: packet delay and loss protocols needed for reliable data transfer, congestion control Q: How to provide circuit-like behavior? bandwidth guarantees needed for audio/video apps still an unsolved problem (chapter 6) Is packet switching a “slam dunk winner?”Hourglass design: Hourglass designHourglass design: Hourglass design D. Clark, “The design philosophy of the DARPA internet”, SIGCOMM 1988, August 16 - 18, 1988. http://www.acm.org/pubs/citations/proceedings/comm/52324/p106-clark/Hourglass design: Hourglass design Only one protocol at the Internet level Minimal required elements at the narrowest point IP – Internet Protocol http://www.rfc-editor.org/rfc/rfc791.txt http://www.rfc-editor.org/rfc/rfc1812.txt Unreliable datagram service Addressing and connectionless connectivity Fragmentation and assembly Innovation at the edge Phone network: dumb edge devices, intelligent network Internet: dumb network, intelligent edge devicesHourglass design: Hourglass design Simplicity allowed fast deployment of multi-vendor, multi-provider public network Ease of implementation Limited hardware requirements Eventual economies of scale Designed independently of hardware Hardware addresses decoupled from IP addresses IP header contains no data/physical link specific information Allows IP to run over any fabricHourglass design: Hourglass design Waist expands at transport layer Two dominant services layered above IP TCP – Transmission Control Protocol Connection-oriented service http://www.rfc-editor.org/rfc/rfc793.txt UDP – User Datagram Protocol Connectionless service http://www.rfc-editor.org/rfc/rfc768.txtHourglass design: Hourglass design TCP – Transmission Control Protocol Reliable, in-order byte-stream data transfer Acknowledgements and retransmissions Flow control Sender won’t overwhelm receiver Congestion control Senders won’t overwhelm networkHourglass design: Hourglass design UDP – User Datagram Protocol Unreliable data transfer No flow control No congestion controlHourglass design: Hourglass design Check out /etc/services on *nix or C:\WIN*\system32\services IANA http://www.iana.org/assignments/port-numbers What uses TCP? HTTP, FTP, Telnet, SMTP, NNTP, BGP What uses (mainly) UDP? SNMP, NTP, NFS, RTP (streaming media, IP telephony, teleconferencing), multicast applications Many protocols can use bothHourglass design: Hourglass design Question? Are TCP, UDP, and IP enough? What other functionality would applications need?Hourglass design: Hourglass design Security? Quality-of-service? Reliable, out-of-order delivery service? Handling greedy sources? Accounting and pricing support? IPsec, DiffServ, SCTP, ….End-to-end principle: End-to-end principle J. H. Saltzer, D. P. Reed and D. D. Clark “End-to-end arguments in system design”, Transactions on Computer Systems, Vol. 2, No. 4, 1984 http://www.acm.org/pubs/citations/journals/tocs/1984-2-4/p277-saltzer/End-to-end principle: End-to-end principle Where to put the functionality? In the network? At the edges? End-to-end functions best handled by end-to-end protocols Network provides basic service: data transport Intelligence and applications located in or close to devices at the edge Violate principle as a performance enhancementEnd-to-end principle: End-to-end principle The good Basic network functionality allowed for extremely quick adoption and deployment using simple devices The bad New network features and functionality are impossible to deploy, requiring widespread adoption within the network IP Multicast, QoSLayering: Layering Modular approach to network functionality Example: Link hardware Host-to-host connectivity ApplicationLayering Characteristics: Layering Characteristics Each layer relies on services from layer below and exports services to layer above Interface defines interaction Hides implementation - layers can change without disturbing other layers (black box) Examples Topology and physical configuration Routing Applications require no knowledge of this New applications deployed without coordination with network operators or operating system vendorsProtocols: Protocols Module in layered structure Set of rules governing communication between network elements (applications, hosts, routers) Protocols define: Interface to higher layers (API) Interface to peer Format and order of messages Actions taken on receipt of a messageLayering: Layering Host Host Application Transport Network Link User A User B Layering: technique to simplify complex systemsLayer Encapsulation: Layer Encapsulation Get index.html Connection ID Source/Destination Link Address User A User BE.g.: OSI Model: 7 Protocol Layers: E.g.: OSI Model: 7 Protocol Layers Physical: how to transmit bits Data link: how to transmit frames Network: how to route packets Transport: how to send packets end2end Session: how to tie flows together Presentation: byte ordering, security Application: everything elseOSI Layers and Locations: OSI Layers and Locations Switch Router Host Host Application Transport Network Data Link Presentation Session Physical Example: Transport Layer: Example: Transport Layer First end-to-end layer End-to-end state May provide reliability, flow and congestion controlExample: Network Layer: Example: Network Layer Point-to-point communication Network and host addressing RoutingLayering: Layering Is Layering always good? Sometimes.. Layer N may duplicate lower level functionality (e.g., error recovery) Layers may need same info (timestamp, MTU) Strict adherence to layering may hurt performanceLayering: Layering Need for exposing underlying layers for optimal application performance D. Tennenhouse and D. Clark. Architectural Considerations for a New Generation of Protocols. SIGCOMM 1990. Intel employees: Tennenhouse is a networking “rock star” and your head of research Application Layer Framing (ALF) Enable application to process data as soon as it can Expose application processing unit (ADU) to protocols Integrated Layer Processing (ILP) Layering convenient for architecture but not for implementations Combine data manipulation operations across layersDistributed design and control: Distributed design and control Reliability from intelligent aggregation of unreliable components Alternate paths, adaptivity, lack of centralized control Each network owned and managed separately Exception: IP address allocation (ICANN)Superior organizational process: Superior organizational process IAB/IETF process allowed for quick specification, implementation, and deployment of new standards Free and easy download of standards Rough consensus and running code 2 interoperable implementations Bake-offs http://www.ietf.org/ ISO/OSI Comparison to IETF left as an exercise You do not have the permission to view this presentation. In order to view it, please contact the author of the presentation.
Computer Science 2 leminhhai Download Post to : URL : Related Presentations : Share Add to Flag Embed Email Send to Blogs and Networks Add to Channel Uploaded from authorPOINT lite Insert YouTube videos in PowerPont slides with aS Desktop Copy embed code: (To copy code, click on the text box) Embed: URL: Thumbnail: WordPress Embed Customize Embed The presentation is successfully added In Your Favorites. Views: 897 Category: Education License: All Rights Reserved Like it (1) Dislike it (0) Added: July 16, 2007 This Presentation is Public Favorites: 0 Presentation Description No description available Comments Posting comment... By: asweram (3 week(s) ago) immediatly i need please send it me throgh my e-mail Saving..... Post Reply Close Saving..... Edit Comment Close Premium member Presentation Transcript Introduction to Internet : Introduction to Internet Computer Networks: Computer Networks A computer network is a system for communication among two or more computers What amounts to “computers”? What kind of communication? – “digital” System: both software & hardware Examples? Our focus is on the InternetHistory of the Internet: History of the Internet 61-72: development of packet switching 72-80: Proprietary networks and internetworking Multiple packet switching networks “Networks of networks”: earlier development of TCP, UDP, IP ALOHA, Ethernet 80-90: proliferation of networks Standardization of networking protocols TCP/IP, DNS etc NSF builds NSFNET as backbone, links 6 Supercomputer centers, 1.5 Mbps, 10,000 computers 90’s: Internet explosion 94: NSF backbone dismantled, multiple private backbones Emergence of World Wide Web (invented by Time Berners-Lee)Internet “Hall of Fame”: Internet “Hall of Fame” Al Gore, former vice president of USA Vinton G. Cerf and Robert E. Kahn 2004 Turing Award winner “For pioneering work on internetworking, including the design and implementation of the Internet's basic communications protocols, TCP/IP, and for inspired leadership in networking” Turing lecture: http://www.acm.org/sigs/sigcomm/sigcomm2005/webcast.html David Clark et al “end2end arguments” Van Jacobson, TCP congestion control Robert Metcalfe, inventor of Ethernet …Growth of the Internet: Growth of the Internet Number of Hosts on the Internet: Aug. 1981 213 Oct. 1984 1,024 Dec. 1987 28,174 Oct. 1990 313,000 Oct. 1993 2,056,000 Apr. 1995 5,706,000 Jan. 1997 16,146,000 Jan. 1999 56,218,000 Jan. 2001 109,374,000 Jan 2003 171,638,297 Data available at: http://www.isc.org/Growth of the Internet: Growth of the Internet Traffic on Internet (in TB/mo) 1990 1.0 1991 2.0 1992 4.4 1993 8.3 1994 16.3 1996 1,500 1997 2,500 - 4,000 1998 5,000 - 8,000 1999 10,000 - 16,000 2000 20,000 - 35,000 2001 40,000 - 70,000 2002 80,000 - 140,000 Andrew Odlyzko, “Internet traffic growth: Sources and implications” Growth of the Internet: Growth of the Internet Internet bandwidth Nielsen’s law: 50% each year ProjectedWhat is Next Big Thing?: What is Next Big Thing? I wish I have the answer Technology Wireless broadband networks Optical switching networks (?) Application VOIP Peer-to-peer applications Online gaming Sony’s EverQuest servers host 600,000 PC gamers A Few Words on Networking Research: A Few Words on Networking Research Wireless System Research Group (WiSeR) http://coco.cs.uh.edu/~rzheng Information Theory Distributed Systems Grid Computing Computer Networking Combinatorics/ Graph theory Probability/ Stochastic techniques Protocol design Performance modeling, analysis System building Data structure, algorithms, complexity theory Application Domains Wireless Management SecurityWhat will be covered?: What will be covered? Network architecture, services, apps TCP/IP Protocol details Algorithms Performance analysis Ethernet, Wireless networks Multimedia networks QoS scheduling Signaling Network security Basic knowledge Attacks and counter-measures Network management What will not be covered?: What will not be covered? Socket programming (chap 2.7-2.9) Physical layer technologies (chap 1.4) Cellular networks Multicast routing (chap 4.7) ATM, frame relay, PPP (chap 5.7-5.8) The emphasis is no only on “how” but also “why” Knowledge base Reasoning behind the designLogistics: Logistics Textbook, reference book Office hour Homework, project policy Grade Prerequisite test: What are the OSI-ISO layers? How is it related to the practice in the Internet? What is protocol? What is the difference between packet switching and circuit switching? Sockets What’s the Internet: “nuts and bolts” view: What’s the Internet: “nuts and bolts” view End systems Host computer Network applications Access networks Local area networks communication links Network core: routers network of networks What’s the Internet: “nuts and bolts” view: What’s the Internet: “nuts and bolts” view Protocols control sending, receiving of msgs e.g., TCP, IP, HTTP, FTP, PPP Internet: “network of networks” loosely hierarchical public Internet versus private intranet Internet standards RFC: Request for comments IETF: Internet Engineering Task Force local ISP company network regional ISP router workstation server mobileNetwork Components (Examples): Network Components (Examples) Fibers Coaxial Cable Links Interfaces Switches/routers Ethernet card Wireless card Large router SwitchJuniper Routers: Juniper RoutersInternet structure: network of networks: Internet structure: network of networks roughly hierarchical at center: “tier-1” ISPs (e.g., MCI, Sprint, AT&T, Cable and Wireless), national/international coverage treat each other as equals Tier 1 ISP Tier 1 ISP Tier 1 ISPTier-1 ISP: e.g., Sprint: Tier-1 ISP: e.g., Sprint Sprint US backbone networkInternet structure: network of networks: Internet structure: network of networks “Tier-2” ISPs: smaller (often regional) ISPs Connect to one or more tier-1 ISPs, possibly other tier-2 ISPs Tier 1 ISP Tier 1 ISP Tier 1 ISP Internet structure: network of networks: Internet structure: network of networks “Tier-3” ISPs and local ISPs last hop (“access”) network (closest to end systems) Tier 1 ISP Tier 1 ISP Tier 1 ISP Internet structure: network of networks: Internet structure: network of networks a packet passes through many networks! Tier 1 ISP Tier 1 ISP Tier 1 ISP Internet Architecture: Internet Architecture http://www.nap.edu/html/coming_of_age/ http://www.ietf.org/rfc/rfc1958.txt Packet switching over circuit switching “Hourglass” design End-to-end architecture Layering of functionality Distributed design, decentralized control Superior organizational processThe Network Core: The Network Core mesh of interconnected routers the fundamental question: how is data transferred through net? circuit switching: dedicated circuit per call: telephone net packet-switching: data sent thru net in discrete “chunks” Network Core: Circuit Switching: Network Core: Circuit Switching Resources reserved for “call” on an end to end basis link bandwidth, switch capacity dedicated resources: no sharing circuit-like (guaranteed) performance call setup required Network Core: Circuit Switching: Network Core: Circuit Switching network resources (e.g., bandwidth) divided into “pieces” pieces allocated to calls resource piece idle if not used by owning call (no sharing) dividing link bandwidth into “pieces” frequency division time divisionNetwork Core: Circuit Switching Example: Network Core: Circuit Switching Example 1890-current: Phone network Fixed bit rate Mostly voice Not fault-tolerant Components extremely reliable Global application-level knowledge throughout networkNetwork Core: Packet Switching: Network Core: Packet Switching each end-end data stream divided into packets user A, B packets share network resources each packet uses full link bandwidth resources used as needed, resource contention: aggregate resource demand can exceed amount available congestion: packets queue, wait for link use store and forward: packets move one hop at a time transmit over link wait turn at next linkNetwork Core: Packet Switching: Network Core: Packet Switching A B C 10 Mbs Ethernet 1.5 Mbs 45 Mbs statistical multiplexing queue of packets waiting for output linkNetwork Core: Packet Switching Example: Network Core: Packet Switching Example 1981-current: Internet network Variable bit rate Mostly data Fault-tolerant Components not extremely reliable (versus phone components) Distributed control and managementPacket switching versus circuit switching: Packet switching versus circuit switching 1 Mbit link each user: 100Kbps when “active” active 10% of time circuit-switching: 10 users packet switching: with 35 users, probability > 10 active less that .004 Packet switching allows more users to use network! N users 1 Mbps linkPacket switching versus circuit switching: Packet switching versus circuit switching Great for bursty data resource sharing no call setup Excessive congestion: packet delay and loss protocols needed for reliable data transfer, congestion control Q: How to provide circuit-like behavior? bandwidth guarantees needed for audio/video apps still an unsolved problem (chapter 6) Is packet switching a “slam dunk winner?”Hourglass design: Hourglass designHourglass design: Hourglass design D. Clark, “The design philosophy of the DARPA internet”, SIGCOMM 1988, August 16 - 18, 1988. http://www.acm.org/pubs/citations/proceedings/comm/52324/p106-clark/Hourglass design: Hourglass design Only one protocol at the Internet level Minimal required elements at the narrowest point IP – Internet Protocol http://www.rfc-editor.org/rfc/rfc791.txt http://www.rfc-editor.org/rfc/rfc1812.txt Unreliable datagram service Addressing and connectionless connectivity Fragmentation and assembly Innovation at the edge Phone network: dumb edge devices, intelligent network Internet: dumb network, intelligent edge devicesHourglass design: Hourglass design Simplicity allowed fast deployment of multi-vendor, multi-provider public network Ease of implementation Limited hardware requirements Eventual economies of scale Designed independently of hardware Hardware addresses decoupled from IP addresses IP header contains no data/physical link specific information Allows IP to run over any fabricHourglass design: Hourglass design Waist expands at transport layer Two dominant services layered above IP TCP – Transmission Control Protocol Connection-oriented service http://www.rfc-editor.org/rfc/rfc793.txt UDP – User Datagram Protocol Connectionless service http://www.rfc-editor.org/rfc/rfc768.txtHourglass design: Hourglass design TCP – Transmission Control Protocol Reliable, in-order byte-stream data transfer Acknowledgements and retransmissions Flow control Sender won’t overwhelm receiver Congestion control Senders won’t overwhelm networkHourglass design: Hourglass design UDP – User Datagram Protocol Unreliable data transfer No flow control No congestion controlHourglass design: Hourglass design Check out /etc/services on *nix or C:\WIN*\system32\services IANA http://www.iana.org/assignments/port-numbers What uses TCP? HTTP, FTP, Telnet, SMTP, NNTP, BGP What uses (mainly) UDP? SNMP, NTP, NFS, RTP (streaming media, IP telephony, teleconferencing), multicast applications Many protocols can use bothHourglass design: Hourglass design Question? Are TCP, UDP, and IP enough? What other functionality would applications need?Hourglass design: Hourglass design Security? Quality-of-service? Reliable, out-of-order delivery service? Handling greedy sources? Accounting and pricing support? IPsec, DiffServ, SCTP, ….End-to-end principle: End-to-end principle J. H. Saltzer, D. P. Reed and D. D. Clark “End-to-end arguments in system design”, Transactions on Computer Systems, Vol. 2, No. 4, 1984 http://www.acm.org/pubs/citations/journals/tocs/1984-2-4/p277-saltzer/End-to-end principle: End-to-end principle Where to put the functionality? In the network? At the edges? End-to-end functions best handled by end-to-end protocols Network provides basic service: data transport Intelligence and applications located in or close to devices at the edge Violate principle as a performance enhancementEnd-to-end principle: End-to-end principle The good Basic network functionality allowed for extremely quick adoption and deployment using simple devices The bad New network features and functionality are impossible to deploy, requiring widespread adoption within the network IP Multicast, QoSLayering: Layering Modular approach to network functionality Example: Link hardware Host-to-host connectivity ApplicationLayering Characteristics: Layering Characteristics Each layer relies on services from layer below and exports services to layer above Interface defines interaction Hides implementation - layers can change without disturbing other layers (black box) Examples Topology and physical configuration Routing Applications require no knowledge of this New applications deployed without coordination with network operators or operating system vendorsProtocols: Protocols Module in layered structure Set of rules governing communication between network elements (applications, hosts, routers) Protocols define: Interface to higher layers (API) Interface to peer Format and order of messages Actions taken on receipt of a messageLayering: Layering Host Host Application Transport Network Link User A User B Layering: technique to simplify complex systemsLayer Encapsulation: Layer Encapsulation Get index.html Connection ID Source/Destination Link Address User A User BE.g.: OSI Model: 7 Protocol Layers: E.g.: OSI Model: 7 Protocol Layers Physical: how to transmit bits Data link: how to transmit frames Network: how to route packets Transport: how to send packets end2end Session: how to tie flows together Presentation: byte ordering, security Application: everything elseOSI Layers and Locations: OSI Layers and Locations Switch Router Host Host Application Transport Network Data Link Presentation Session Physical Example: Transport Layer: Example: Transport Layer First end-to-end layer End-to-end state May provide reliability, flow and congestion controlExample: Network Layer: Example: Network Layer Point-to-point communication Network and host addressing RoutingLayering: Layering Is Layering always good? Sometimes.. Layer N may duplicate lower level functionality (e.g., error recovery) Layers may need same info (timestamp, MTU) Strict adherence to layering may hurt performanceLayering: Layering Need for exposing underlying layers for optimal application performance D. Tennenhouse and D. Clark. Architectural Considerations for a New Generation of Protocols. SIGCOMM 1990. Intel employees: Tennenhouse is a networking “rock star” and your head of research Application Layer Framing (ALF) Enable application to process data as soon as it can Expose application processing unit (ADU) to protocols Integrated Layer Processing (ILP) Layering convenient for architecture but not for implementations Combine data manipulation operations across layersDistributed design and control: Distributed design and control Reliability from intelligent aggregation of unreliable components Alternate paths, adaptivity, lack of centralized control Each network owned and managed separately Exception: IP address allocation (ICANN)Superior organizational process: Superior organizational process IAB/IETF process allowed for quick specification, implementation, and deployment of new standards Free and easy download of standards Rough consensus and running code 2 interoperable implementations Bake-offs http://www.ietf.org/ ISO/OSI Comparison to IETF left as an exercise