cs 557 lecture 2 emergence of packet switching
play

CS 557 - Lecture 2 Emergence of Packet Switching On Distributed - PowerPoint PPT Presentation

CS 557 - Lecture 2 Emergence of Packet Switching On Distributed Communications Neworks Paul Baran, 1964 A Protocol for Packet Network Intercommunication Cerf and Kahn, 1974 Spring 2013 Suggestions on Reading Papers Two Pass Approach to


  1. CS 557 - Lecture 2 Emergence of Packet Switching On Distributed Communications Neworks Paul Baran, 1964 A Protocol for Packet Network Intercommunication Cerf and Kahn, 1974 Spring 2013

  2. Suggestions on Reading Papers • Two Pass Approach to Reading the Paper • First Pass Objectives: – Need: what problem is the paper trying to solve? – Approach: how are they addressing the problem? – Benefit: why is this a good solutioin? – Challenges/Competition: related work and limitations • Carefully read abstract, intro, main design, and conclusions • Skim analysis section • Second Pass Objectives – Start with an assumption the main point is wrong • (even if you agree with it :) – Focus on results/analysis sections. • How do the results prove otherwise? – Review the Benefits and Challenges?

  3. [Bar64] Main Points • Need: A network that survives a massive attack. • Approach: – Propose a distributed network of unreliable components – Send data as packets with dynamic routing. • Benefits: – Evidence supporting distributed networks – Packets and packet headers – Evidence to support dynamic routing – Hot Potato routing • Competition: • Claim centralized system with reliable hardware won ’ t survive

  4. Types of Networks Common Telco Designs Proposed Mesh

  5. How To Characterize Distributed Networks • Define redundancy level = links/nodes • Centralized Star topology has level of 1. – Star has n nodes and n-1 edges. • Best case is a full mesh (clique) – Every node connects to every other – But clique is expensive in number of links – Does not scale well

  6. Side Topic: Scale • Scale is a fundamental challenge of protocol design. • How do you build a system that can grow to an arbitrary large size? • Why does scale matter? – Baran talks about high speeds of 1.5 million bits/ sec, what is the rate today? Tomorrow? – ARPANet (yet to be invented) with few dozen nodes will grow to Internet. • Consider how design in each paper will scale.

  7. Survivability and Redundancy • Do we need a full mesh? – If yes, solution seems less realistic. – Result is redundancy of 3 may suffice Engineering Trade-Offs: “ perfect ” solution not feasible … justify why you make a decision

  8. How To Select Routes • Pre-select a single path (clearly bad) • Pre-select several paths • Dynamic routing What is the Intuition behind This?

  9. Packets • Proposes to use a standard common header: • Why a standard header? • Does this look familiar today?

  10. Dynamic Routing • Interesting concept, but how can this work? – Built a rich distributed network – Built packet with source and destination – Claim we need dynamic routes • To get around failed links • But how would you compute routes? – What about storage, buffering, etc?

  11. Hot Potato Routing • Two equal objectives: – Send along shortest working path to dest. – Forward packet as soon as you get it • Conflict: many packets want to go out the same interface for shortest path. • Trade-off: send along the shortest available path

  12. Side Topic: Trade-offs • The reason this course and this field exists. • We can ’ t satisfy all constraint or goals. • Result is varying trade-offs and analysis to support these decisions. • Look for the important trade-offs in each paper.

  13. Hot Potato Routing (2) • Send along the shortest available path – How do you compute the distance? • Later we add routing algorithms (RIP, OSPF, BGP, etc) • Solution here: – listen for incoming traffic, – use hop count to estimate distance back to the source • Is this idea in use today?

  14. [Bar64] Summary • Paper to provide some context and history for network systems. – Suggests a move to dynamic packet switching networks rather than centralized circuits. • Introduces some basic building block for Internet design – Distributed networks – Packet headers – A dynamic routing algorithm • Now continue on with evolution of packet switching...

  15. The Story So Far … . • Identified a need for a distributed packet network. – Multiple paths between any pairs – Dynamic routing to discover path after faults – Common header to cross multiple types of networks. • Today we provide some details on – Contents of the common header – How to link diverse networks into one Internet – How to control transmissions between processes

  16. [CK74] Main Points • Need: A network and protocols that enable process to communicate, even when they are on different physical networks. • Approach: – Define some basic network layer features including gateways, addressing, and fragmentation. – Define a Transport Control Protocol (TCP) for processes • Benefits: – Gateways concept – IP Fragmentation – TCP Version 0: acks, sliding window, retransmit rules, etc. • Competition: – Very different from circuit switched networks – Builds on Baran, adding essential details

  17. Differences In Packet Networks • Different Addressing Formats – Must all agree or must define some higher level address • Different Maximum Packet Sizes – Must all agree, or must send only smallest packet, or must provide fragmentation • Different Services – Primarily reliability – What should the network provide? • Different Ways to Express Errors – Important for handling retransmissions

  18. Gateway • Device (router) that sits on boundary between two distinct networks • Transforms data crossing between networks – Implemented as “ Two Halves ” • Must solve the problems of: – Addressing – Different Packet Sizes

  19. Addressing • Networks will keep their own local formats – Global agreement unrealistic – All packets start with a local header • Ethernet, WiFi, ATM, SONET, FDDI, etc. • Add an InterNetwork Header – Source and Destination Address – Allows for Fragmentation • Reassembly at the end hosts • More later today … . • Review IP Fragmentation from Undergrad • This is IPv4 fragmentation in slightly less detail.

  20. Process Level Communication • Choice One: Hosts or Process – Choose to assign all TCP state to a process • Introduces the Concept of Ports – Associate a port number with a process – Allow OS to figure out the mapping

  21. Process Level Communication • Choice One: Hosts or Process – Choose to assign all TCP state to a process • Introduces the Concept of Ports – Associate a port number with a process – Allow OS to figure out the mapping • Treat connection as a continuous byte stream – Packet identifies starting point in stream – Each packet carries header – Include flags to mark end of segment and end of message • Did this survive to today?

  22. Fragmentation

  23. Retransmission (1/2) • Sliding Window Protocol – Sender sends up to “ w ” packets where “ w ” = window size – Receiver acks leftmost packet received • Example: window size of 4 – Sender sends packet 1,2,3,4 – Receiver gets 1 and sends ack1, gets 2 and sends ack2, three is lost so no ack, 4 is out of order so no ack. – Acks for 1 and 2 allow sender to move window forward and send 5,6. Timeout causes retransmit of 3,4,5,6. – What does receiver do with the out of order packet 4?

  24. Retransmission (2/2) • How Big Can Window Be? – Answer: must ensure retransmission not mistaken for new packet. • How Does Receiver Signal His State? – Flow Control – Receiver announces suggested window size.

  25. Summary • Paper provides IP and TCP (version 0). – Splits TCP and IP – Defines fundamental ideas of processes, gateways, fragments, and sliding windows. • This should all look very familiar … . – IP protocol across networks that could be wireless, ethernet, fiber optic, etc. – Deering ’ s Hour Glass with a thin IP layer at the middle – Sliding window and base TCP concepts

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