Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

CPSC 463 Networks and Distributed


Published on

  • Be the first to comment

  • Be the first to like this

CPSC 463 Networks and Distributed

  1. 1. CPSC 463 Networks and Distributed Processing <ul><li>Willis F. Marti </li></ul>
  2. 2. Course Overview <ul><li>Syllabus/policy {handout} </li></ul><ul><li>Schedule {handout} </li></ul><ul><li>Comments on Term Project </li></ul><ul><li>Course Objectives </li></ul><ul><li>... </li></ul><ul><li>Opinions and Facts </li></ul>
  3. 3. Class Admin <ul><li>Test taking </li></ul><ul><li>Attendance & Job Searches </li></ul><ul><li>Sympathy </li></ul>
  4. 4. Project Purpose Task Network Design Approach {customer/boss/professor} Teams {preferred size is 4 or 5}
  5. 5. Course Objectives <ul><li>Science </li></ul><ul><li>Engineering </li></ul><ul><li>Attitude </li></ul><ul><li>Understand what a network is, especially in the context of distributed systems </li></ul><ul><li>Learn a good model for investigating networks </li></ul><ul><li>Learn some network programming </li></ul><ul><li>Identify (some) real world components </li></ul><ul><li>How networks are built </li></ul><ul><li>Understand there’s more than one correct solution </li></ul><ul><li>Understand “the map is not the territory”. </li></ul>
  6. 6. Why Study Networks <ul><li>When computers were rare, we studied all the new facets of computers: operating systems, languages, ... As computers became common, we added the fields that have become computer engineering. Now that computers are ubitquitous, we add the study of how best for them to communicate: networking. </li></ul><ul><li>A network is part of a distributed system. Part of computer science (and computer engineering) is learning how to build all the components. </li></ul><ul><li>What is a network? Surprisingly, few people will give you a definition that always fits. </li></ul><ul><li>How will we study networks? There are several methods... </li></ul>
  7. 7. Is this a Distributed System? Computing (CPU) Mass Storage User Interface Just insert a network?
  8. 8. Distributed System (!) <ul><li>This represents our definition of a distributed system, focusing on delivery of services to end users. We will explore this more after we understand more about networks. </li></ul>Network Servers (Storage, Compute) Services User Interfaces Users Users
  9. 9. Network Definition &quot;A network is a collection of media, devices and protocols used to facilitate the exchange of information between computing devices in a manner relatively transparent to the end user.&quot; Contrast: The Telephone Company (TELCO) & networks.: {network as a collection of media without regard to applications}
  10. 10. Still Defining a Network <ul><li>An ordered collection </li></ul><ul><li>of media, devices and protocols </li></ul><ul><li>used to facilitate the exchange of information </li></ul><ul><li>between computing devices </li></ul><ul><li>in a manner relatively transparent </li></ul><ul><li>to the end user.&quot; </li></ul>
  11. 11. Another Definition <ul><li>LAN vs WAN vs MAN vs CAN ... </li></ul>Geography
  12. 12. Another Definition, cont. <ul><li>LAN - Local Area Network </li></ul><ul><li>WAN - Wide Area Network </li></ul><ul><li>MAN - Metropolitan Area Network </li></ul><ul><li>CAN - A metal container </li></ul>
  13. 13. LAN vs MAN vs WAN <ul><li>Historical Def’n {physical proximity} </li></ul><ul><li>Advance of Technology changes definitions </li></ul><ul><li>Modern Definitions </li></ul>Total Travel Time Data Transmission Time Total Travel Time Data Transmission Time <= .01 to .05 LAN:
  14. 14. LAN -- Key Points <ul><li>Historically, LANs meant fast speed. </li></ul><ul><ul><li>Fast speeds meant short(er) distances. </li></ul></ul><ul><ul><li>Therefore LANs became defined by local {short} distances </li></ul></ul><ul><li>the REAL key points </li></ul><ul><ul><li>Travel time about 1 to 5% of total time </li></ul></ul><ul><ul><li>LANs ‘tend’ to use broadcast protocols; WANs ‘tend’ to be point-to-point </li></ul></ul>
  15. 15. Studying Networking <ul><li>by protocols & programs ... </li></ul><ul><li>by technology ... </li></ul><ul><li>by components ... </li></ul><ul><li>Layered Models of a System! </li></ul><ul><li>“ The key to understanding networks is the idea </li></ul><ul><li>of layered architectures.” </li></ul>
  16. 16. Layered Architectures -Principles- <ul><li>Clearly Defined Interfaces </li></ul><ul><li>Separation of Functions </li></ul><ul><li>Peer to Peer Protocols </li></ul><ul><li>Provide Services Up , </li></ul><ul><li>Request Services Down </li></ul>
  17. 17. Layering PHYSICAL LINK NETWORK TRANSPORT 10010111001 {Bits} {Signal} 10010111001 {Bits} Message Pkts Packets Pkts Packets Message
  18. 18. Packet Formats Framing Link Header Data Data Data Data Data Data Data Network Header Transport Header Session Header (?) Presentation “Header” Application “Header” Stream Packets
  19. 19. Protocols and Services This: or this... or this...? <some function>
  20. 20. Protocols and Services -a better model n+1 n-1 n n-1 n n+1
  21. 21. Which Architecture to Study? <ul><li>TCP/IP {Internet suite} </li></ul><ul><li>SNA </li></ul><ul><li>Novell </li></ul><ul><li>IEEE </li></ul><ul><li>OSI Reference Model </li></ul>
  22. 22. Network Models Standards & Committees ANSI IEEE {most important for LANs} EIA ISO {does more than just data standards} ITU-T {international PTT oriented. Formerly CCITT} etc Standards & Users {cost, flexibility} Purpose of the Open Systems Interconnection Model {remember, it's just a model }
  23. 23. Using Models for Understanding <ul><li>Models are created by extracting key features, functions and information from a specific domain of interest so that the model contains essential attributes for understanding. Road maps are models. We extract positions of towns and cities and the roads that connect them. We ignore most terrain or reduce it to color. Road maps are good for planning trips by car but relatively useless for determining where to drill for oil. A key part of building a good model is ensuring that all features of interest are included, but only those. When using a model (network or otherwise), remember the limitation: &quot;The map is not the territory.&quot; </li></ul>
  24. 24. IEEE 802 Protocols <ul><li>.1 - Management </li></ul><ul><ul><li>.1d - Bridge Spanning Tree </li></ul></ul><ul><li>.2 - Link Layer </li></ul><ul><li>.3 - CSMA/CD [Ethernet] </li></ul><ul><li>.4 - Token Bus </li></ul><ul><li>.5 - Token Ring </li></ul><ul><li>.6 - DQDB </li></ul><ul><li>.7 - MAN </li></ul>
  25. 25. (Partial) TCP/IP Stack DIX Ethernet or ... ARP ICMP IP TCP UDP DNS TELNET FTP
  26. 26. Why the OSI Reference Model? <ul><li>OSI RM is not the ISO protocol(s) </li></ul><ul><li>Not tied to any specific protocol suite </li></ul><ul><li>‘Clean’ start </li></ul><ul><li>Completeness </li></ul>
  27. 27. Example: OSI & the Internet NFS XDR RPC UDP IP DIX Ethernet IEEE 802.3 Application Presentation Session Transport Network Data/Link Physical
  28. 28. The OSI Model 1 2 3 4 5 6 7 {remember, enveloping at each layer}
  29. 29. OSI Reference Model {Each layer communicates with its peer by using the services of the layer just below, and provides services to the layer above. Only the physical layer has an actual connection}
  30. 30. OSI Model, cont {there can be multiple, separate entities at each layer} Repeater Bridge Router Gateway
  31. 31. Physical Layer • Converts Bits -> Signals & sends signals across the media • Recovers Bits from incoming Signal Key Aspects of Physical layer specifications: • Signaling Method • Connectors • Media • Voltages/Power Levels Media Considered -- Optical Fiber, Broadband Coax, baseband coax, UTP Media not Considered -- Radio/Microwave/Satellite
  32. 32. Data/Link Layer • Gets bits from A to B along a (logically) single physical link • Provides addressing and error detection. • OSI model talks about error recovery -- not usually implemented in LANs, and only in some point-to-point networks (X.25 best example) • Why no error recovery? In the case of an error in the packet, where did it come from and where was it really addressed to...
  33. 33. Data/Link Layer • Gets bits from A to B along a (logically) single physical link • Provides addressing and error detection. • OSI model talks about error recovery -- not usually implemented in LANs, and only in some point-to-point networks (X.25 best example) • Why no error recovery? In the case of an error in the packet, where did it come from and where was it really addressed to...
  34. 34. Network Layer • End-to-end packets (each system on the network has a network address BUT each packet (is)(may be) treated separately • This layer is supposed to hide all the messiness of differing link and physical layer requirements from the upper layers
  35. 35. Transport Layer • End-to-end messages Usually provides reliable, sequenced byte stream to upper layers. Does error recovery. • There are options for non-guaranteed transport
  36. 36. Session Layer • Control layer • Manages 'sessions'
  37. 37. Presentation Layer • Provides information transform services -> translation ->encryption ->compression
  38. 38. Application Layer TCP/IP ISO email SMTP X.400 file transfer FTP FTAM remote terminal/access TELNET VTS
  39. 39. Basic Network Concepts Circuit switching - {basic TELCO service. Guaranteed response because resources are guaranteed. Inefficient for some applications} Virtual-circuit packet-switching - {divide the info into packets to multiplex} Datagram packet-switching - {like the US Mail....} Connectionless vs Connection-oriented {At the Link layer, do we do acknowledgements? At the network layer,do all the packets have to follow the same route?} Multiplexing - {single media, multiple independent 'circuits'} {putting multiple 'sessions' on a single media}
  40. 40. Terminology <ul><li>SAP -- Service Access Point {see Fig 1-9} </li></ul><ul><li>Connection Oriented </li></ul><ul><li>Connectionless </li></ul><ul><li>Datagram </li></ul><ul><li>Primitives </li></ul>
  41. 41. Modulation ASK - Amplitude Shift Keying {varying signal strength} FSK - Frequency Shift Keying {varying signal frequency} PSK - Phase Shift Keying {don't ask!} {NB the above three methods are usually applied to signal carriers} PCM/PWM - Pulse Code Modulation/ Pulse Width Modulation {good for fiber} Others &quot;Modification of a transmitted signal to encode information (bits)&quot;
  42. 42. Switching <ul><li>Circuit Switching </li></ul><ul><ul><li>Guaranteed resource </li></ul></ul><ul><ul><li>No size limit on information sent </li></ul></ul><ul><li>Packet Switching - Divides the information into packets; restricts sizes; also sharing of resources </li></ul><ul><ul><li>Virtual Circuit // Connect-oriented </li></ul></ul><ul><ul><li>Datagram // Connection-less </li></ul></ul>
  43. 43. Multiplexing TDM - {time division multiplexing} {low overhead, inefficient} FDM - {frequency division multiplexing} STDM - { statistical time division multiplexing} {some overhead, more efficient, may FAIL}
  44. 44. Multiplexing Examples TDM STDM A B C D BADCBADCBADCBAD 2400 2400 2400 2400 9600 4800 A B C D BACACBDCBDBABBD
  45. 45. FDM
  46. 46. Multiplexing w/ Packets Like STDM, except NO &quot;ROUND ROBIN&quot;
  47. 47. Physical Layer Issues <ul><li>Theoretical Underpinning </li></ul><ul><ul><li>or, Bandwidth 101 </li></ul></ul><ul><li>Media Characteristics </li></ul><ul><ul><li>Optical Fiber </li></ul></ul><ul><ul><li>Coax </li></ul></ul><ul><ul><li>Copper Wire (Twisted Pair) </li></ul></ul><ul><ul><li>Wireless </li></ul></ul><ul><li>Other Useful Ideas </li></ul>
  48. 48. Signals <ul><li>Propagation - {how fast does the signal travel in that media, esp. compared to light?} </li></ul><ul><li>Frequency - {number of oscillations per second of the electromagnetic field of the signal} </li></ul><ul><li>Bandwidth - {the width/size, in Hz, of the signal -- usually defined by where most of the energy is} </li></ul><ul><li>Data Rate - {the number of bits per second. Distinct from, but related to, frequency and bandwidth} </li></ul><ul><li>Baud - {Changes per second in the signal. Limited by bandwidth.} </li></ul>
  49. 49. Freq/BW/DR Power Frequency BW FREQ {see Fig 2-1}
  50. 50. Maximum Data Rates <ul><li>Nyquist: </li></ul><ul><ul><li>DataRate <= 2*BandWidth * log 2 V </li></ul></ul><ul><ul><li>where ‘V’ is the number of values which are encoded into </li></ul></ul><ul><ul><li>the signal. In the On/Off, 0/1 world, V = 2. Your highspeed </li></ul></ul><ul><ul><li>modem has V = 16. </li></ul></ul><ul><li>Shannon: </li></ul><ul><ul><li>The real world is noisy, so Nyquist was an optimist. </li></ul></ul><ul><li>Marti: </li></ul><ul><ul><li>Complexity costs money and adds fragility. </li></ul></ul><ul><ul><li>So be choosy. </li></ul></ul>DR ~ 2 * BW {Max by Theory} DR ~ 1/2 * BW {Practical} <- In an On/Off world (V = 2)
  51. 51. Physical Effects Bandwidth Limits - {Signals consist of many (infinite) different sine waves, not all of which can be carried by the media} Dispersion - {Particularly for multimode fiber, different parts of the signal may move at different speeds, thus changing the shape of the signal at the receiver} Jitter - {Imperfect clock synchronization along the transmission path} Noise - {Unwanted, external energy that may corrupt the signal}
  52. 52. Framing & Synchronization Synchronous - Sender and receiver somehow share a common clock. good for longer runs of data; more efficient but requires the clock signal somehow be sent along with the data Asynchronous - Sender and receiver use different clocks so data runs have to be shorter. Doesn't require the extra clock signal Synchronous vs Asynchronous - Framing & clocks Isochronous vs Aperiodic - Characteristics of traffic {beware of confusion as each writer may mix terms} {Here synchronization refers to the sender's and receiver's clocks} {Frames are packets added signal needed to transmit them on Physical Layer}
  53. 53. Specific Framing Bit Stuffing - Used to ensure special framing and/or control characters are not sent in the data. A problem because the 'clock' is usually continuous but data may not be there, so we have to know when the line is idle and when a frame starts { frame delimiter } Manchester Encoding - Example of combining clock with data to form a single signal -- no separate line is required. It does require twice the bandwidth of the original signal
  54. 54. Manchester Encoding Ensures for each bit there is a clock transition. Data values (0 or 1) are encoded by positive or negative clock transitions in the middle of the bit time. Transitions are made at bit edges if needed so that the correct transition can be made in the middle of the bit.
  55. 55. Media • Optical Fiber {pg 87} Multimode Single Mode • Coax {pg 84,85} Broadband Baseband • Twisted Pair {pg 83} Shielded Unshielded
  56. 56. Cost and Performance Media Types: UTP Coax Baseband Broadband Fiber Multimode Single Mode Increasing Bandwidth Increasing Cost But remember, cost includes --material --LABOR --electronics Biggest part of installation cost
  57. 57. Distances Media Types: UTP Coax Baseband Broadband Fiber Multimode Single Mode Typically 100m +/- 200m-500m up to 40km depends on power budget; can be 100s of km* * Most LANs use 2km between devices
  58. 58. Fiber Facts Core Cladding Protective Coating Core Cladding 50 125 Multimode (microns) 62.5 125 &quot; &quot; 8 to 10 n/a Singlemode
  59. 59. Fiber Facts, cont. &quot;photons&quot; Modes == Different paths thru core Since the photons travel at the same speed, but for different distances, the energy is spread out, or dispersed , at the receiver Fiber is specified as XX Mhz-km. So a specification of 800Mhz-km means you could have a bandwidth of 400Mhz over a 2km distance or 1.6Ghz over a 0.5km distance. Dispersion has two components: modal and material
  60. 60. Traditional Baseband Coax Terminator Transceiver Transceiver Cable Host
  61. 61. CATV Systems Headend Amplifier Splitter Network Interface Unit Translator &quot;Forward&quot; Signal &quot;Return&quot; Signal
  62. 62. Twisted Pair <ul><li>Just copper wire where each two wires (“pairs”) have been twisted around each other in the cable. {Phone wire} </li></ul><ul><li>Rejects common mode noise </li></ul><ul><li>Minimizes antenna characteristics </li></ul><ul><li>Shielded or Unshielded refers to a ground sheath around the whole cable. </li></ul><ul><li>Cat 3 vs Cat 4 vs Cat 5 </li></ul>
  63. 63. Physical Design Ideas
  64. 64. Wireless Overview <ul><li>Radio </li></ul><ul><ul><li>Mobile </li></ul></ul><ul><ul><li>Cellular </li></ul></ul><ul><li>Microwave </li></ul><ul><li>Satellite </li></ul><ul><li>Infrared/Laser </li></ul>
  65. 65. TELCO Architecture Users Users Users Users Trunks CO CO CO CO
  66. 66. TELCO Trunking <ul><li>Older, Analog World: Frequency Multiplexing </li></ul>Current World: Digitizing & Time Multiplexing
  67. 67. ISDN Integrated Services Digital Network &quot;Think of defining ISDN by looking at the two pairs of words&quot; BRI • 2B+D Basic Rate Interface B = 64kbps each D = 16kbp for TELCO signaling PRI • 23B+D BISDN: So fast it seems like broadband!
  68. 68. ISDN Nets &quot;User&quot; GTE AT&T Definition points
  69. 69. Data/Link Layer Issues <ul><li>Protocol & Services </li></ul><ul><li>Topology </li></ul><ul><li>Error Detection & Recovery </li></ul>
  70. 70. Topology vs Geography Logical Layout &quot;How devices talk to each other&quot; -or- &quot;How devices hear each other&quot; Physical Layout How the signal actually travels
  71. 71. Topologies
  72. 72. BUS • Every node hears every other node's transmission directly.
  73. 73. Ring • Series of unidirectional point-to-point links without &quot;store & forward&quot;, usually with a bypass ability.
  74. 74. Star • Switching functions all in central node
  75. 75. Mesh • Each node independently routes over (bi-directional) point-to-point links.
  76. 76. IEEE & OSI PHY MAC LLC 2 1 LLC = Logical Link Control MAC = Media Access Control PHY = Physical
  77. 77. Link/Physical Layer Standards <ul><li>Ethernet </li></ul><ul><ul><li>10BASET, Fast Ethernet, Gigabit Ethernet </li></ul></ul><ul><li>Token Ring </li></ul><ul><ul><li>4/16MB </li></ul></ul><ul><li>FDDI </li></ul><ul><li>ATM </li></ul>
  78. 78. Ethernet & IEEE 802.3 What the IEEE standard covers- Physical layer and interface to the link layer. IEEE 802.2 is the Link layer standard. History- D EC/ I ntel/ X erox came up with it, then submitted to IEEE for standardization. Some changes were made so Ethernet is not identical to IEEE 802.3 Differences between Ethernet and 802.3 There are some electrical and connector differences; most equipment uses IEEE 802.3. There is difference in the header. DIX uses TYPE , 802.3 uses LENGTH . SInce the frame is limited in size, the two coexist. Most people use the DIX format.
  79. 79. Ethernet <ul><li>Work started back in 1973 by Bob Metcalfe and David Boggs from Xerox Palo Alto Research Center (PARC). </li></ul><ul><ul><li>He studied the Aloha network and &quot;fixed&quot; the mathematics. </li></ul></ul><ul><li>Experimental Ethernet implemented in 1975. </li></ul><ul><li>Cooperative effort between Digital, Intel, and Xerox produced Ethernet Version 1.0 in 1980. </li></ul><ul><ul><li>This also became known as the Blue Book specification or DIX standard. Ethernet V2.0 adopted in 1982. </li></ul></ul><ul><li>Ethernet was adopted with modifications by the standards committees IEEE 802.3 and ANSI 8802/3. </li></ul><ul><li>Ethernet allows for only connectionless communication. </li></ul>
  80. 80. CSMA/CD &quot;Carrier Sense/Multiple Access with Collision Detection&quot; &quot;Driving in Boston&quot; BUS! &quot;Many stations; Listen before talking; listen while talking; if a collision, backoff and try again&quot; 51.2 microseconds
  81. 81. Normal Ethernet Operation A B D Data C Address mismatch packet discarded Address mismatch packet discarded Address match packet processed Send data to node D Transmitted packet seen by all stations on the LAN (broadcast medium)
  82. 82. Ethernet Collisions A B C D Collision Data transmission for A Data transmission for C
  83. 83. CSMA/CD - A Simple Definition <ul><li>A network station wishing to transmit will first check the cable plant to ensure that no other station is currently transmitting ( CARRIER SENSE ). </li></ul><ul><li>The communications medium is one cable, therefore, it does allow multiple stations access to it with all being able to transmit and receive on the same cable ( MULTIPLE ACCESS ). </li></ul><ul><li>Error detection is implemented throughout the use of a station &quot;listening&quot; while it is transmitting its data. </li></ul><ul><ul><ul><ul><li>Two or more stations transmitting causes a collision ( COLLISION DETECTION ) </li></ul></ul></ul></ul><ul><ul><ul><ul><li>A jam signal is transmitted to network by the transmitting stations that detected the collision, to ensure that all stations know of the collision. All stations will &quot;backoff&quot; for a random time. </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Detection and retransmission is accomplished in microseconds. </li></ul></ul></ul></ul>
  84. 84. Frame/Packet Format Preamble SFD Dst Src Type Data/Pad FCS Size 7 1 6 6 2 46-1500 4 (octets) In IEEE 802.3, the Type field is used as a Length field. Addresses are generally (3) octets vendor code, (3) octets device number.
  85. 85. Ethernet Addressing Each station recognizes three classes of addresses. • Own address • Broadcast address (all 1's) • Optionally, one or more multicast addresses Major reason for broadcast is address discovery. Multicast addresses are used for specialized link layer functions.
  86. 86. Ethernet Cable Names RG-8 RG-58 22 - 26 AWG 62.5/125 micron 10BASE5 10BASE2 10BASET 10BASEF IEEE 802.3 IEEE 802.3a IEEE 802.3i Name Wire Type IEEE Name Standard Number Other names Fiber Unshielded Twisted Pair Thin coaxial Thick coaxial N/A Thick net Thin net UTP
  87. 87. Thick Coax Makeup Center conductor of tin plated solid copper conductor Teflon is used for fire code regulations Jacket of PVC or Teflon Thick braid for EMI Foil Thin braid for EMI Thin foil bonded to insulation
  88. 88. Thick Coaxial Connection Pierce clamp Transceiver Transceiver cable Black marks every 2.5 meters to show transceiver placement 500 meter maximum cable run
  89. 89. Transceivers <ul><li>Transmitter/Receiver: AUI on one side, media on the other </li></ul><ul><li>Used on all Ethernet networks and is the device that allows data to flow between the controller card and the network. </li></ul><ul><li>Detects errors on the bus cable plant and reports them to the station's controller card. </li></ul><ul><li>For thick coaxial cable, the transceiver is external to the controller card and attaches directly to the thick coaxial cable via a special cable known as the transceiver cable. </li></ul><ul><li>External transceivers have a SQE function that enables the controller to determine the status of the transceiver. </li></ul><ul><li>Usually has status indicators (LEDs) physically located on it to indicate the state of the transceiver (transmitting, receiving, collision, and power.) </li></ul>
  90. 90. Thin Coaxial Cable Makeup Jacket made of PVC or Teflon Polyethylene foam Tinned copper wire EMI braided shielding
  91. 91. Thin Coaxial Connection T connector Direct connection to card BNC connector at each cable end Concatenation of network attachments
  92. 92. Thin Coaxial Connection (cont.) Interface to computer bus T connector for connection to cable plant BNC connector AUI connector transceiver logic On-board 02608C ASIC
  93. 93. UTP Makeup <ul><li>UTP was standardized by the IEEE 802.3 committee in October of 1990. </li></ul><ul><li>Standardized by the EIA under TIA 568A. </li></ul><ul><li>UTP for LANs is now classified as: </li></ul><ul><ul><li>Category 3 - used for LANs up to 10 Mbps. </li></ul></ul><ul><ul><li>Category 4 - used for LANs up to 16 Mbps. </li></ul></ul><ul><ul><li>Category 5 - used for LANs up to 100 Mbps. </li></ul></ul><ul><li>Cable is made up of 8 strands of 24 AWG wire. </li></ul><ul><ul><li>Only 2 pair are used for single 10BASET connection. </li></ul></ul>
  94. 94. Unshielded Twisted Pair <ul><li>Unshielded twisted </li></ul><ul><li>pair cable </li></ul>Unshielded twisted pair atleast two (2) twists per foot RJ-45 Connector RJ-45 connector 100m max cable run 8 pin 8 pin Straight through pins 1, 2, 3 and 6 Repeater unit required
  95. 95. Concentrator (Hub) Management <ul><li>With the concentration of the wiring into a common point, network managers can manage the hub with specialized software. </li></ul><ul><li>Network management software resides not only in the concentrator but on an external workstation’s device (a PC, for example). </li></ul><ul><ul><li>The workstation can query the concentrator for information. </li></ul></ul><ul><li>Concentrators also allow the control of individual ports. </li></ul><ul><li>This software allows managers to extract information from each card that is inserted in the repeater. You could query the hub for statistics such as: </li></ul><ul><ul><li>number of packets (bytes), </li></ul></ul><ul><ul><li>number of collisions (single and multiple), </li></ul></ul><ul><ul><li>number of framing errors, </li></ul></ul><ul><ul><li>number of time the particular card de-inserted itself from the network, </li></ul></ul><ul><ul><li>ability to turn on/off any repeater card in the hub, and </li></ul></ul><ul><ul><li>all information is time and date stamped. </li></ul></ul><ul><li>With 10BASET, all information is provided on an individual-connection basis, giving a manager information right from the desktop. </li></ul>
  96. 96. Ethernet Repeaters <ul><li>Extend the network by interconnecting multiple segments </li></ul><ul><ul><li>Extend the physical domain of the network </li></ul></ul><ul><li>Governed by the IEEE 802.3c working group standard. </li></ul><ul><ul><li>This governs the electrical specifications of a repeater. </li></ul></ul><ul><ul><li>The physical configurations of a repeater varied from vendor to vendor. </li></ul></ul><ul><li>Some repeaters contain the intelligence to: </li></ul><ul><ul><li>detect collisions per cable plant (will not repeat collision fragments to other cable plants). </li></ul></ul><ul><ul><li>de-insert themselves from a wiring concentrator (when there are excessive errors on the cable plant). </li></ul></ul><ul><ul><li>submit network management information to a central controller. </li></ul></ul><ul><li>Repeaters have been transformed into wiring concentrators or hubs </li></ul><ul><li>Repeaters can be used to interconnect different wiring types but not different access methods (i.e., not Token Ring to Ethernet). </li></ul>
  97. 97. IEEE802.3 Efficiency &quot;WARNING: Opinion&quot; % Utilization Status 0 - 10 Great! 10 - 40 OK 40 - 60 Performance Problems -- look at it 60+ Time Signal On &quot;Utilization&quot;
  98. 98. Token Ring - IEEE 802.5 What the IEEE standard covers History Differences between 802.5 and 802.3 &quot;Physical layer standard (gives link layer format)&quot; Essentially an IBM standard 'given' to the industry&quot; &quot;Guaranteed response Priorities Controlled delays&quot;
  99. 99. Token Ring History <ul><li>Presented by IBM in 1982 to IEEE 802 committee. </li></ul><ul><li>First prototype developed in 1983 in Geneva, Switzerland. </li></ul><ul><li>Cabling System was announced in 1984. </li></ul><ul><li>Officially announced in 1985. </li></ul><ul><li>Standardized by IEEE in 1985. </li></ul><ul><li>Only one adopted by the IEEE 802.5 committee. </li></ul>
  100. 100. Token Ring Technology Summary <ul><li>Access method by which network attachments gain access to the cable plant by acquiring a special frame called the token. {Token is a special 24-bit pattern that continuously circulates the ring. } </li></ul><ul><li>Token Ring is a broadcast medium. {To receive data, a destination station performs an address match.} </li></ul><ul><li>The destination station merely copies the frame as it repeats it back to the ring. </li></ul><ul><li>When the frame arrives back to the source station, it strips the frame from the ring and then releases the token (4 megabit operation only). </li></ul><ul><ul><ul><li>The token is allowed to be released prior to frame reception on 16-megabit rings. </li></ul></ul></ul><ul><li>Token Ring originally ran at 4 Mbps. Upgraded in 1989 to 16 Mbps </li></ul><ul><li>Maximum frame size for 4 Mbps is 4472. </li></ul><ul><ul><li>This is based only on the fact a station cannot hold the token longer than 10 milliseconds. </li></ul></ul><ul><li>Maximum frame size for 16 Mbps is 17,800. </li></ul>
  101. 101. TRN Features Traffic usually (always in 802.5) unidirectional RAR (802.5) vs RAT (FDDI) for Token Passing Recovery from lost token Priorities Frame Structure &quot;data rate of 4 or 16Mbps&quot; &quot;one frame on the net at a time...&quot;
  102. 102. Controller Attachment to a MAU The IBM 8228 MAU Shielded or UTP cable Lobe cables
  103. 103. Cable Connectors DB-9 connector RJ-11 or RJ-45 connector Hermaphroditic or RJ-45 connectors on MAU Media filter for UTP only MAU Media filter can be on-board Token Ring controller
  104. 104. Multiple MAU Connection Ring in Ring out MAU Ring in Ring out MAU Ring in Ring out MAU Type 6 patch cables
  105. 105. MAU Operation MAU top view Relays Lobe cables All stations are active Ring in Ring out MAU bus Closed Closed Closed
  106. 106. MAU Operation (Inactive Station) MAU top view Relays Lobe cables Ring in Ring out MAU bus Closed Closed Closed Inactive station
  107. 107. Token Ring Cable Types <ul><li>Type 1 </li></ul><ul><ul><li>A shielded data grade cable with two solid wire twisted pairs. </li></ul></ul><ul><ul><li>Available in indoor and outdoor versions. </li></ul></ul><ul><li>Type 2 </li></ul><ul><ul><li>A Type 1 indoor cable with four solid twisted pairs of 24 AWG wire. </li></ul></ul><ul><ul><li>Contains four voice grade wires along with four data grade wires. </li></ul></ul><ul><li>Type 3 </li></ul><ul><ul><li>Unused existing telephone wire or EIA category 3 wire (4 Mbps operation). </li></ul></ul><ul><ul><li>Category 4 is needed for 16 Mbps (speed of the Token Ring) operation. </li></ul></ul><ul><ul><li>Must use a special media filter. </li></ul></ul><ul><li>Type 5 </li></ul><ul><ul><li>100/140 micron fiber cable used for fiber optic repeater links. </li></ul></ul><ul><li>Type 6 </li></ul><ul><ul><li>Often used for patch cables. </li></ul></ul><ul><ul><ul><li>Patch cables can be used for MAU-to-MAU connection or from a wall outlet to a network attachment. </li></ul></ul></ul>
  108. 108. Type 3 Media Filter <ul><li>Type 3 cable requires a device known as a media filter. </li></ul><ul><li>Its purpose is to filter out any unwanted signals. </li></ul><ul><li>It is a small rectangular device that is usually part of the UTP cable itself. </li></ul><ul><li>It can be a separate device that attaches to the UTP cable at the end of the cable that attaches to the controller card. </li></ul><ul><li>It can be used on 16- or 4-mb Token Rings. </li></ul><ul><li>It is only used with Type 3 (UTP) cable. </li></ul>
  109. 109. 802.5 Framing <ul><li>IEEE 802.5 uses special characters, but does not use bit stuffing! </li></ul>“ 1” bit “ 0” bit Manchester Violations!
  110. 110. Token Ring Frames 1 byte 1 byte Physical header Physical trailer MAC or LLC Frame Abort frame SD AC FC DA SA Routing Information Fields Data FCS ED FS IEEE 802.2 no preset size 1 byte 1 byte 1 byte Token frame SD AC ED ED SD
  111. 111. Token Ring Frame Field Definitions <ul><li>SD - Starting Delimiter </li></ul><ul><li>AC - Access Control </li></ul><ul><li>FC - Frame Control </li></ul><ul><li>DA - Destination Address </li></ul><ul><li>SA - Source Address </li></ul><ul><li>FCS - Frame Control Sequence </li></ul><ul><li>ED - Ending Delimiter </li></ul><ul><li>FS - Frame Status </li></ul>SD AC FC DA SA Routing Information Fields Data FCS ED FS Legend IEEE 802.2 no preset size 1 byte 1 byte 1 byte 6 bytes 6 bytes <= 18 bytes 1 byte 1 byte 1 or 2 bytes 4 bytes 1 byte 1 byte DSAP SSAP Control
  112. 112. The SD and the AC Fields P P P T M R R R AC Bit 0 Bit 7 Field SD J K 0 J K 0 0 0 PPP - priority bits T - Token bit M - Monitor bit RRR - Reservation bits
  113. 113. The FC, ED, and FS Fields Bit 0 Bit 7 Field FC FS F F r r Z Z Z Z A C r r A C r r A - Address recognized bits C - Frame copied bits ED J K 1 J K 1 I E I - Intermediate bit E - Error bit FF - indicates a MAC or LLC frame. ZZZZ - indicates the type of MAC frame.
  114. 114. Bit Order Transmission for Token Ring <ul><li>Bit 0 is the first bit transmitted. </li></ul><ul><ul><li>Bit 0 is the left most bit of the byte. </li></ul></ul><ul><ul><ul><li>Unlike Ethernet, the bits in the bytes are not reversed as they are transmitted. </li></ul></ul></ul><ul><li>Example: </li></ul><ul><ul><li>40-00-12 are the first three bytes of a MAC address. </li></ul></ul><ul><ul><ul><li>Translated to binary: </li></ul></ul></ul><ul><ul><ul><ul><li>01000000-00000000-00010010 </li></ul></ul></ul></ul><ul><ul><ul><li>As transmitted on a Token Ring: </li></ul></ul></ul><ul><ul><ul><ul><li>01000000-00000000-00010010 </li></ul></ul></ul></ul><ul><ul><ul><li>Compared to Ethernet transmission: </li></ul></ul></ul><ul><ul><ul><ul><li>00000010-00000000-01001000 </li></ul></ul></ul></ul>
  115. 115. Token Passing Policies (Defn) <ul><li>Multiple Token </li></ul><ul><ul><li>RAT (FDDI): free token is appended to tail of last packet </li></ul></ul><ul><li>Single Token </li></ul><ul><ul><li>?: Token is released upon receipt of leading edge of own packet </li></ul></ul><ul><li>Single Packet </li></ul><ul><ul><li>RAR (802.5):Token is released upon receipt of trailing edge of own packet </li></ul></ul>
  116. 116. Token Passing Policies (Usage) <ul><li>Multiple Token </li></ul><ul><ul><li>Allows multiple packets on the segment at one time. Good when packet length is less than ring latency </li></ul></ul><ul><li>Single Token </li></ul><ul><ul><li>More efficient than RAR; when packet length is about the same as ring latency </li></ul></ul><ul><li>Single Packet </li></ul><ul><ul><li>Least efficient, but allows controlling station knowledge of (un)successful transfer before the token is released (see pg. 224, 1st paragraph) </li></ul></ul>
  117. 117. Token Passing Policies (Perf.) <ul><li>Multiple Token </li></ul><ul><ul><li>Always the best performer, but more complex </li></ul></ul><ul><li>Single Token </li></ul><ul><ul><li>Closer to RAR than RAT </li></ul></ul><ul><li>Single Packet </li></ul><ul><ul><li>‘Worst’ performance </li></ul></ul><ul><li>KEY POINT: Ratio of ring latency to packet length, a , is real determiner of performance. For a << 1, RAR is OK. </li></ul>
  118. 118. Controller Operation - Phases 0 and 1 <ul><li>Five-phase initialization </li></ul><ul><ul><li>Phase 0 - Lobe test </li></ul></ul><ul><ul><ul><li>The controller transmits frames between the controller card and the cable attached between the controller card and the MAU. </li></ul></ul></ul><ul><ul><ul><li>The controller tests to ensure that the lobe cable can successfully transmit and receive frames. </li></ul></ul></ul><ul><ul><li>Phase 1 - Monitor Check </li></ul></ul><ul><ul><ul><li>Station inserts into the ring (flips the relay in the MAU) and looks for special frames that are transmitted by the monitors. </li></ul></ul></ul><ul><ul><ul><li>Sets a timer to wait for these frames. </li></ul></ul></ul><ul><ul><ul><li>If the station does not receive any of the frames, the controller assumes: </li></ul></ul></ul><ul><ul><ul><ul><li>it is the first ring station on the network, </li></ul></ul></ul></ul><ul><ul><ul><ul><li>there is not an Active Monitor present, or </li></ul></ul></ul></ul><ul><ul><ul><ul><li>inserting into the ring disrupted the ring. </li></ul></ul></ul></ul><ul><ul><ul><ul><li>The controller may initiate the token claim process. </li></ul></ul></ul></ul>
  119. 119. Controller Initialization - Phases 2, 3, and 4 <ul><li>Phase 2 - Duplicate address check. </li></ul><ul><ul><li>Checks to ensure that it can successfully transmit and receive a frame and to detect other stations that might have the same MAC address. </li></ul></ul><ul><ul><ul><li>The controller transmits a frame to itself. </li></ul></ul></ul><ul><ul><ul><li>If the frame returns with the address recognized bit set, it notifies one of the monitors and removes itself from the ring. </li></ul></ul></ul><ul><li>Phase 3 - Participation in neighbor notification. </li></ul><ul><ul><li>The station transmits a special frame that will identify itself to its downstream neighbor. </li></ul></ul><ul><ul><li>The station should receive a similar frame for its upstream neighbor. </li></ul></ul><ul><li>Phase 4 - Lan Network Manager Notification </li></ul><ul><ul><li>Notifies LAN Network Manager about its presence on the ring </li></ul></ul>
  120. 120. Claim Token Process <ul><li>A ring cannot operate without a token circulating on the ring. </li></ul><ul><ul><li>There is only one token per ring. </li></ul></ul><ul><li>The token-claiming process allows one station to insert the token onto the ring. </li></ul><ul><ul><li>This station will be elected as the AM. </li></ul></ul><ul><ul><ul><li>It will purge the ring (ability to transmit a frame to itself). </li></ul></ul></ul><ul><ul><ul><li>After purging the ring, it will insert a new token on the ring. </li></ul></ul></ul><ul><li>The Token-Claim process can be started when the AM </li></ul><ul><ul><li>detects a loss of signal, </li></ul></ul><ul><ul><li>a timer expires and it has not yet received its AM frame back, or the AM </li></ul></ul><ul><ul><li>cannot receive enough of its own Purge Ring MAC frames. </li></ul></ul><ul><li>It can be started when the SM </li></ul><ul><ul><li>detects loss of signal or </li></ul></ul><ul><ul><li>detects expiration of its timer for receiving SM frames. </li></ul></ul>
  121. 121. Details of the Claim Token Process <ul><li>If there is no token on the ring, all activity will cease on the ring. </li></ul><ul><ul><li>The Active Monitor should be able to recover by purging the ring and issuing a new Token. </li></ul></ul><ul><ul><li>If the Active Monitor cannot recover, the token-claim process will begin. </li></ul></ul><ul><li>Any station will insert its master clock, a 24-bit delay, and start to transmit Token-Claim frames. </li></ul><ul><ul><li>These frames are received by all stations on the ring. </li></ul></ul><ul><ul><li>The station will follow these frames with idle (clock) signals. </li></ul></ul><ul><ul><li>After transmitting the Token Claim frames, the station starts a timer. </li></ul></ul><ul><ul><ul><li>If it does not receive its frames or someone else’s claim frames, it will beacon the ring. </li></ul></ul></ul><ul><li>Once the process is started other stations may participate. </li></ul><ul><ul><li>Stations bid for the right to become the AM. </li></ul></ul><ul><ul><li>The station with the highest priority (MAC address) wins. </li></ul></ul><ul><ul><li>That station becomes the AM. </li></ul></ul><ul><ul><ul><li>It will purge the ring and insert a new token. </li></ul></ul></ul>
  122. 122. Claim Token Process Example A B C D Detected condition Token Claim frames Not participating Repeat frame Higher priority than C. Does not repeat C’s A transmits its own Token Claim frames B has higher priority than A B transmits its own Token Claim frames 1 2 3 4 A B C D Continues transmitting its own Stops transmitting its own Claim frames and repeats B’s Repeats B's Token Claim frame 5 6 7 Stops transmitting its own and repeats B’s claim frames 8
  123. 123. Token Ring Transmit Mode <ul><li>A station that needs to transmit receives the SD of approaching frame. This station quits transmitting idles (clock signals). </li></ul><ul><li>Checks for priority. </li></ul><ul><ul><li>If the priority in the frame is greater than the station's priority, then </li></ul></ul><ul><ul><ul><li>the station sets reservation bits and awaits new token. </li></ul></ul></ul><ul><li>If the priority in the frame is less than or equal to the station’s priority then </li></ul><ul><ul><li>the station changes the T bit in the AC field from a 0 to a 1, </li></ul></ul><ul><ul><li>appends its information to the rest of the frame and transmits the frame. </li></ul></ul><ul><ul><li>If the end of its transmission is reached and it has not received its current transmission back, the station </li></ul></ul><ul><ul><ul><li>transmits idle characters and awaits current transmission. </li></ul></ul></ul><ul><li>When the station receives its frame back it will strip the frame and release the token. </li></ul><ul><li>The station enters normal repeat mode. </li></ul>
  124. 124. Token Ring Copy Mode <ul><li>The destination Token Ring controller recognizes its address in the destination field of a received frame and copies the frame into its buffer. </li></ul><ul><li>If at any time an error is detected, the copy phase ends and the controller sets the A and E bits and repeats the frame back to the ring. </li></ul><ul><li>If no errors are found, the destination sets the A and C bits and repeats the frame back to the ring. </li></ul><ul><li>The destination station enters Normal Repeat mode. </li></ul><ul><li>The frame travels on the ring until it reaches the originator and that station strips the frame off of the ring and submits the token to the ring. </li></ul>
  125. 125. Normal Repeat Mode <ul><li>A station in normal repeat mode checks current frames and token for signalling errors. </li></ul><ul><ul><li>If any errors are found the station sets the E bit and repeats the frame back to the ring. </li></ul></ul><ul><li>A station in this mode also checks every frame for its address. </li></ul><ul><ul><li>A duplicate address could be found. </li></ul></ul><ul><ul><li>If a duplicate address is found, the station will transmit a soft error MAC frame to one of the monitors. </li></ul></ul>
  126. 126. The Active Monitor (AM) <ul><li>Functional address is C00000000001. </li></ul><ul><li>It must be present in order for the ring to function properly. </li></ul><ul><li>The AM is the kingpin of the ring. </li></ul><ul><li>The AM: </li></ul><ul><ul><li>tracks lost tokens and ensures that only one token exists on a single ring. </li></ul></ul><ul><ul><li>monitors frames and priority tokens that circulate the ring more than once. </li></ul></ul><ul><ul><li>initiates neighbor notification, </li></ul></ul><ul><ul><li>provides a latency buffer to recover the clock signal and so that at least 24 bits (the size of the token) can be transmitted on the ring, and </li></ul></ul><ul><ul><li>supplies the master clocking . </li></ul></ul>
  127. 127. Token Recovery <ul><li>Monitor Station </li></ul><ul><ul><li>1 station becomes responsible for monitoring the token for token loss or token busy </li></ul></ul><ul><li>Time Outs </li></ul><ul><ul><li>Token time out (‘Beaconing’) </li></ul></ul><ul><ul><li>No monitor (Claim frames (highest addr wins) </li></ul></ul>
  128. 128. Options for Token Ring <ul><li>For 16 megabit rings, early token release allows a ring station to release the token before receiving its original frame back. </li></ul><ul><ul><li>It is based on the ring length </li></ul></ul><ul><ul><ul><li>A station will not release the token when it is still transmitting its frame and it has started to receive its frame back. </li></ul></ul></ul><ul><ul><li>Allows greater use of Token Ring bandwidth. </li></ul></ul><ul><li>Token Ring operates at 4 and 16 Mbps. </li></ul><ul><ul><li>4 and 16 Mbps controllers are not allowed on the same ring. </li></ul></ul><ul><ul><ul><li>Ring will beacon when this condition occurs. </li></ul></ul></ul><ul><ul><li>To have 4 and 16 Mbps ring interoperate, you must use a data forwarding device such as a bridge or a router. </li></ul></ul><ul><li>IBM is currently experimental with a new Token Ring controller which allow it to operate between 52 - 100 Mbps. </li></ul>
  129. 129. Data Link Layer Uses 'bit pipe' Physical Layer to send packets Packet Formats - Generic: Framing (Layer 1), Addresses and control information (layer 2), and data (info from layer 3 and up) Point-to-Point vs Broadcast - Key idea is that not all packet formats are alike. One needs to look at particluar technologies to see what is needed.
  130. 130. Data Link Services <ul><li>Unacknowledged Connectionless Service </li></ul><ul><ul><li>Most LANs </li></ul></ul><ul><ul><li>Upper layers handle error recovery </li></ul></ul><ul><li>Acknowledged Connectionless Service </li></ul><ul><ul><li>Odd duck. Example? </li></ul></ul><ul><li>Connection-oriented Service </li></ul><ul><ul><li>Reliable Delivery ... </li></ul></ul>
  131. 131. Link Protocols Used to provide reliability. Basic idea can be used at any layer ABP SRP GoBack N Windowing & Flow Control Don't need to know details at this time, but know general operation and that they provide assured delivery.
  132. 132. Performance <ul><li>Overhead vs Frame Length </li></ul><ul><li>Error rate (bit error vs block error) </li></ul><ul><li>Physical Layer </li></ul><ul><ul><li>distance </li></ul></ul><ul><ul><li>propagation delay </li></ul></ul>
  133. 133. Error Control Error Detection - Methods: Parity, Checksum, CRC -- generically Frame Check Sequences Error Correction - The basic idea is to add redundant information so that the receiver can deocde the message even if some (specified) number of bits are damaged (e.g., Hamming codes) Error Recovery includes error correction but also includes actions taken to get a message retransmitted
  134. 134. Connection Oriented Services <ul><li>Two modes of operation: </li></ul><ul><ul><li>Operational </li></ul></ul><ul><ul><li>Non-operational </li></ul></ul><ul><li>Operational mode incorporates three functions: </li></ul><ul><ul><li>Link establishment. </li></ul></ul><ul><ul><ul><li>A source station sends a frame to a destination station requesting a connection. </li></ul></ul></ul><ul><ul><ul><li>The destination station may accept or reject the connection request. </li></ul></ul></ul><ul><ul><li>Information transfer. </li></ul></ul><ul><ul><ul><li>Allows information to be transferred after a connection is set up and the required handshaking has taken place. </li></ul></ul></ul><ul><ul><ul><li>Reliable information is transferred between the two stations. </li></ul></ul></ul><ul><ul><li>Link termination. </li></ul></ul><ul><ul><ul><li>Either side of the connection may terminate the connection at any time. </li></ul></ul></ul>
  135. 135. IEEE & OSI {again} PHY MAC LLC 2 1 LLC = Logical Link Control MAC = Media Access Control PHY = Physical
  136. 136. IEEE 802.2 Fields Destination address Source address Length field IEEE 802.2 field CRC DSAP address SSAP address Control Information 1 byte 1 byte 1 or 2 bytes Length of the Information field is access method dependent I/G D D D D D D D D C/R S S S S S S S Bit 0
  137. 137. SAP Types <ul><li>E0 - Novell NetWare </li></ul><ul><li>F0 - NetBIOS </li></ul><ul><li>06 - TCP/IP </li></ul><ul><li>42 - Spanning Tree BPDU </li></ul><ul><li>FF - Global SAP </li></ul><ul><li>F4 - IBM Network Management </li></ul><ul><li>7F - ISO 802.2 </li></ul><ul><li>00 - NULL LSAP </li></ul><ul><li>F8, FC - Remote Program Load </li></ul><ul><li>04, 05, 08, 0C - SNA </li></ul><ul><li>AA - SNAP </li></ul><ul><li>80 - XNS </li></ul><ul><li>FE - OSI </li></ul>
  138. 138. SubNetwork Access Protocol (SNAP) <ul><li>Most common implementation of LLC1 is from a subsection of the IEEE 802.2 standard known as SNAP. </li></ul><ul><li>At the time of IEEE 802.2’s introduction, most network protocols were designed to use the Ethernet packet format. </li></ul><ul><li>SNAP allows for the migration of the standard network protocols to the IEEE 802.2 format. </li></ul><ul><li>Supported by TCP/IP, NetWare, OSI, AppleTalk, and many other protocols. </li></ul><ul><li>The second purpose for the SNAP protocol is to allow those protocols that do not support the IEEE 802 standard to be able to traverse IEEE 802 LANs. </li></ul><ul><li>SNAP uses a reserved SAP: AA (for both the DSAP and SSAP). </li></ul><ul><ul><li>It uses the unnumbered frame format: control field equal to 03. </li></ul></ul><ul><ul><li>Actual SNAP header consumes 5 bytes: </li></ul></ul><ul><ul><ul><li>Three bytes for the Organizationally Unique Identifier (OUI) field, and </li></ul></ul></ul><ul><ul><ul><li>Two bytes for an Ethernet Type field. </li></ul></ul></ul>
  139. 139. Protocol Discriminator OUI Type field 3 bytes 2 bytes Length field DSAP SSAP Control SNAP header Data Pad CRC-32 Source address Destination address AA AA 03 Protocol discriminator 00-00-00 08-00
  140. 140. Verification <ul><li>Finite State Machines </li></ul><ul><li>Estelle & Other Languages </li></ul><ul><li>Petri Nets </li></ul><ul><li>Blind Faith (or, code it in C...) </li></ul>
  141. 141. Naming Conventions {and Confusion}
  142. 142. Naming Conventions {cont}
  143. 143. Intro to ATM <ul><li>Asynchronous Transfer Mode </li></ul><ul><li>Text References </li></ul><ul><ul><li>Sect 2.6 </li></ul></ul><ul><ul><li>Sect 3.6.3 </li></ul></ul><ul><ul><li>Sect 5.6 </li></ul></ul><ul><ul><li>Sect 6.5 </li></ul></ul>
  144. 144. ATM Background <ul><li>Outgrowth of TELCO transition to integrated services </li></ul><ul><li>Only “real” >100Mbit standard </li></ul><ul><li>Offers multiservice (voice video data) potential </li></ul><ul><li>Switched architecture familiar to TELCOs, not to high speed data networks </li></ul>
  145. 145. What is ATM? Note: Tanenbaum considers this more a network layer technology.
  146. 146. ATM - A layered standard AAL - ATM Adaptation Layer • Assembles and disassembles broadband servicesinto a stream of cells • Each cell has a header that contains routing information ATM - Asynchronous Transfer Mode • Switches the cells around the network based on the routing information in the header Physical Layer • Provides the physical transportation of cells across the network (Note: CCITT reference model, p. 63)
  147. 147. ATM - A Switched Architecture <ul><li>Cells (small, fixed length packets) are switched in a connection-oriented manner but not using circuits like today’s voice. </li></ul><ul><ul><li>Switch </li></ul></ul><ul><ul><li>Switch </li></ul></ul>Edge Device Edge Device
  148. 148. What is ATM Switching? <ul><li>Why small cells? </li></ul><ul><ul><li>(32+64)/2=48 + 5 header bytes </li></ul></ul><ul><ul><li>Mixed Traffic </li></ul></ul><ul><li>Packet (random)vs Circuit (TDM) Switching </li></ul><ul><li>Q.2931 </li></ul><ul><ul><li>SVC, PVC </li></ul></ul>
  149. 149. Physical Layer Options <ul><li>• SONET (US)/ SDH (Europe) </li></ul><ul><li>• SMDS </li></ul><ul><li>• DQDB </li></ul><ul><li>• Speeds from DS3 on up! (45Mbs to Gbps) </li></ul><ul><li>OC-3c => 155.52Mbps => 149.76Mbps </li></ul><ul><li>^ optical carrier </li></ul><ul><li>^ 3rd level in heirarchy </li></ul><ul><li>^ full duplex (two strands of fiber) </li></ul><ul><li>Also OC-12c (622Mbps), OC-48c (2048Mbps) </li></ul><ul><li>[Look at the interesting way to frame cells] </li></ul>
  150. 150. ATM Adaptation Layer (AAL) • Classes of Service: 1, 2, 3/4, 5 1: circuit emulation 2: variable bit rate service 3/4: connection oriented data service 5: connectionless data service • SAR - Segmentation and Reassembly • Convergence Sublayer the miscellaneous category
  151. 151. ATM Cell • ATM cells are constant size packets of 53 bytes size. -- 48 bytes payload, 5 bytes header/overhead. VPI - Virtual Path ID VCI - Virtual Channel ID Type - Payload type (internal) Res - reserved CLP- Cell loss priority HEC- Header Error Control
  152. 152. VCI/VPI Operation • A Virtual Channel exists between two switching points • A Virtual Path contains 'bundles' of VCs
  153. 153. ATM Switch Architecture <ul><li>Crossbar </li></ul><ul><li>Banyan </li></ul><ul><li>TDM busses </li></ul><ul><li>Buffering </li></ul><ul><ul><li>Input </li></ul></ul><ul><ul><li>Output </li></ul></ul><ul><ul><li>Both? </li></ul></ul>
  154. 154. ATM Protocols <ul><li>UNI, NNI </li></ul><ul><li>Services </li></ul><ul><li>“LAN” Stuff </li></ul>
  155. 155. ATM Services <ul><li>CBR </li></ul><ul><li>VBR (RT, NRT) </li></ul><ul><li>UBR </li></ul><ul><li>ABR </li></ul>
  156. 156. ATM Quality of Service <ul><li>QoS: A contract </li></ul><ul><li>Traffic Descriptors </li></ul><ul><li>Cell Rate Options (pg 462) </li></ul><ul><li>Traffic Shaping </li></ul><ul><li>Traffic Policing </li></ul>
  157. 157. ATM Congestion Control <ul><li>Admission Policy </li></ul><ul><li>Reservation System </li></ul><ul><li>Rate Based Control </li></ul><ul><li>Other </li></ul>
  158. 158. ATM Flow Control • The leaky bucket algorithm • CLP in ATM header • Frame Relay comparisons
  159. 159. Routing <ul><li>IISP (Interim Inter-switch Signaling Protocol) </li></ul><ul><li>PNNI (Private Network-Network Interface) </li></ul><ul><ul><li>Phase 1 </li></ul></ul><ul><ul><li>Phase 2 </li></ul></ul>
  160. 160. IISP <ul><li>Interim </li></ul><ul><ul><li>Allowed multi-vendor interoperability before completion of NNI </li></ul></ul><ul><li>Signaling </li></ul><ul><li>Routing via manually configured NSAP prefixes </li></ul>
  161. 161. PNNI <ul><li>Topology abstraction </li></ul><ul><li>Peer group(group of nodes) </li></ul><ul><ul><li>One switch elected Peer Group Leader </li></ul></ul><ul><ul><li>All nodes in group have identical view of group </li></ul></ul><ul><li>Hierarchy of logical groups </li></ul><ul><ul><li>Up to 105 levels of hierarchy </li></ul></ul>
  162. 162. PNNI Routing NSAP Domain A11 A12 A13 A2 B View from A117 at A11 A117 A13 A12 A11 B25 A1 B A2 B3 B2 B1 A23 A22 A21
  163. 163. Sequence of Events <ul><li>A117 -> B25 </li></ul><ul><li>Forward to switch (A11) </li></ul><ul><ul><li>Switch knows topology of A1 group </li></ul></ul><ul><ul><li>B reachable by A2 - A2 reachable by either A12 or A13 </li></ul></ul><ul><li>DTL (Designated Transit List) </li></ul><ul><ul><li>[A12][A2][B] </li></ul></ul><ul><ul><li>[A22][A23][B] </li></ul></ul><ul><ul><li>[B2] </li></ul></ul>
  164. 164. ATM “LAN” Stuff <ul><li>LAN == Link Layer Domain </li></ul><ul><li>ELANs & VLANs </li></ul><ul><li>LANE & MPOA </li></ul><ul><ul><li>LECS, LES, BUS </li></ul></ul>
  165. 165. LANE v1 <ul><li>LAN Emulation </li></ul><ul><li>No QoS (Quality of Service) Support </li></ul><ul><li>Uses AAL5 signaling </li></ul><ul><ul><li>optimized for data transport </li></ul></ul><ul><ul><li>entire cell payload available for user data </li></ul></ul><ul><li>LEC - LAN Emulation Client </li></ul><ul><li>LAN Emulation Service </li></ul><ul><ul><li>LECS - LAN Emulation Configuration Server </li></ul></ul><ul><ul><li>LES - LAN Emulation Server </li></ul></ul><ul><ul><li>BUS - Broadcast and Unknown Server </li></ul></ul><ul><li>STP (Spanning Tree Protocol) supported </li></ul>
  166. 166. LEC - LAN Emulation Client <ul><li>Software process on any ATM-connected LAN switch, router, PC, or workstation </li></ul><ul><li>Layer 2 process </li></ul><ul><li>Prior knowledge of certain parameters </li></ul><ul><ul><li>LEC’s ATM address </li></ul></ul><ul><ul><li>LAN type to be emulated </li></ul></ul><ul><ul><li>maximum data frame size </li></ul></ul><ul><ul><li>any route descriptors (for SR bridging) </li></ul></ul><ul><ul><li>whether it is willing to proxy (respond to LE-ARP) </li></ul></ul><ul><ul><li>LAN name - SNMPv2 display string </li></ul></ul>
  167. 167. LECS - LAN Emulation Configuration Server <ul><li>One per administrative domain </li></ul><ul><li>Gives identity of ELAN (Emulated LAN) </li></ul><ul><li>Returns ATM address of LES, type of LAN emulated, and maximum PDU size of ELAN </li></ul><ul><li>Controls which physical LANs are combined to form VLANs (Virtual LAN) </li></ul><ul><li>LECS address known via ILMI or its well-known NSAP address </li></ul>
  168. 168. LES- LAN Emulation Server <ul><li>Adds LEC’s to ELAN </li></ul><ul><li>Assigns LECID to joining LEC </li></ul><ul><li>Table of address information of LEC </li></ul><ul><ul><li>MAC address </li></ul></ul><ul><ul><li>proxy for MAC address </li></ul></ul><ul><ul><li>Token Ring route descriptors </li></ul></ul><ul><li>LECs can communicate directly with each other only when they are connected to the same LES </li></ul><ul><li>Multiple LESs on the same physical ATM LAN </li></ul><ul><li>Answers LE-ARP requests from LECs </li></ul>
  169. 169. BUS- Broadcast and Unknown Server <ul><li>During address resolution LEC forwards all frames to the BUS </li></ul><ul><ul><li>floods frames to all LECs </li></ul></ul><ul><ul><li>after address resolved flush protocol used to guarantee order of cells </li></ul></ul><ul><li>All multicast and broadcast traffic sent through BUS </li></ul><ul><li>Traffic limited to 10 frames/second </li></ul><ul><li>Intelligent BUS </li></ul><ul><ul><li>resolve destinations </li></ul></ul><ul><ul><li>CLS- connectionless server </li></ul></ul>
  170. 170. LANE Setup
  171. 171. Connections <ul><li>All SVC (switched virtual circuits) </li></ul><ul><li>SVCs required: </li></ul><ul><ul><li>LECs and LECS </li></ul></ul><ul><ul><li>LES and LECS </li></ul></ul><ul><ul><li>Control Direct - LECs and LES </li></ul></ul><ul><ul><li>pt-mpt Control Distribute - LES to LECs </li></ul></ul><ul><ul><li>Multicast Send - LECs and BUS </li></ul></ul><ul><ul><li>pt-mpt Multicast Forward - BUS to LECs </li></ul></ul><ul><ul><li>Data Direct - LEC and LEC </li></ul></ul><ul><li>PVC (permanent virtual circuit) possible to connect LEC and LECS </li></ul>
  172. 172. Virtual Channel Connections LANE Client (LEC) LANE Client (LEC) LANE Server (LES) LANE Configuration Server (LECS) ATM Host LAN Switch Configuration Direct VCC Configuration Direct VCC Control Direct VCC Control Direct VCC Control Distribute VCC LAN Switch ATM Host LANE Client (LEC) LANE Client (LEC) Multicast Forward VCC Data Direct VCC Multicast Send VCC Multicast Send VCC Broadcast and Unknown Server (BUS)
  173. 173. NHRP <ul><li>Next Hop Resolution Protocol </li></ul><ul><li>Grew out of ATMARP </li></ul><ul><li>Only IP </li></ul><ul><li>Allows shortcut routes (pt-pt) </li></ul><ul><ul><li>direct VCCs across ATM network </li></ul></ul><ul><li>Address resolution across multiple IP networks </li></ul><ul><li>If network unknown, request forwarded to other NHSs (Next-hop Server) </li></ul><ul><ul><li>NHS with knowledge will forward response to source router </li></ul></ul><ul><li>Router must have ability to bypass default route </li></ul>
  174. 174. RSVP <ul><li>Resource Reservation Protocol </li></ul><ul><li>Provides QoS (Quality of Service) guarantees </li></ul><ul><li>Operates in simplex </li></ul><ul><ul><li>each direction has separate reservation </li></ul></ul><ul><ul><li>maps well to ATM (two individual VCCs) </li></ul></ul><ul><li>Built on IP, but no data transport built-in </li></ul><ul><li>Only if resources available and does not conflict with policy </li></ul><ul><li>Flowspec (bandwidth and delay) and filterspec (type of packets) transmitted downstream </li></ul><ul><ul><li>hop by hop </li></ul></ul>
  175. 175. MPOA <ul><li>Multiprotocol over ATM </li></ul><ul><li>EDFG (Edge Device Functional Groups) </li></ul><ul><ul><li>existing LAN segments via LAN switches </li></ul></ul><ul><li>AHFG (ATM-attached Host Functional Groups) </li></ul><ul><ul><li>ATM-connected host </li></ul></ul><ul><li>Layer 3 </li></ul><ul><li>Only supports IP for now </li></ul><ul><li>Uses LANE for Layer 2 forwarding within a single Layer 3 subnet </li></ul><ul><li>Adaptation of NHRP to provide connectivity between hosts in different subnets </li></ul>
  176. 176. MPOA Operation
  177. 177. Competing Technologies <ul><li>“Fast Ethernet” </li></ul><ul><ul><li>100BASE-TX, 100BASE-FX,100BASE-T4, 100BASE-VG </li></ul></ul><ul><li>FDDI, FDDI- II </li></ul><ul><li>HPPI </li></ul><ul><li>Gigabit Ethernet (IEEE 802.3z) </li></ul>
  178. 178. ATM Issues <ul><li>• SONET/SDH duplication of services </li></ul><ul><li>• ATM overhead </li></ul><ul><li>• ATM granularity and bandwidth management </li></ul><ul><li>• ATM & connectionless service </li></ul><ul><li>• End point synchronization </li></ul><ul><li>• Flow Control !!! (bandwidth allocation, correlated traffic) </li></ul><ul><li>ATM Forum </li></ul>
  179. 179. “Internetworking” <ul><li>Bridges </li></ul><ul><ul><li>Transparent bridges </li></ul></ul><ul><ul><li>Source Routing - Transparent Bridges </li></ul></ul><ul><li>Routers (Network Layer) </li></ul><ul><li>Brouters </li></ul>1 1 2 3 2 2 1 1
  180. 180. Why Bridges <ul><li>Isolation of Physical Layer Effects </li></ul><ul><li>Bandwidth Multiplication </li></ul><ul><li>Security or Traffic Isolation </li></ul>
  181. 181. Segmenting Traffic Workstations File server Terminals Terminal server LAN traffic LAN traffic Host Bridge
  182. 182. Transparent Bridges <ul><li>Interconnect multiple cable segments to allow for extension of a network. </li></ul><ul><li>Can be used to interconnect different access methods (Ethernet to Token Ring) and different physical layers. </li></ul><ul><li>Operate at the data link layer. </li></ul><ul><li>They are protocol transparent. </li></ul><ul><ul><li>They are designed to operate regardless of the upper-layer protocol. </li></ul></ul><ul><ul><li>They operate on the source and destination address in the MAC header. </li></ul></ul>
  183. 183. T-L-F Bridges <ul><li>Bridges only forward traffic destined for other cable segments. </li></ul><ul><li>They operate transparently to any stations that are active on the network. </li></ul><ul><li>Packet formats and software drivers on the workstations remain the same. </li></ul><ul><li>Bridges do not have to be programmed with the addresses of all the devices on the network. </li></ul>
  184. 184. Learning, Filtering, and Forwarding Terminals Node A Node B Node C Node D Cable segment 2 Cable segment 1 Node E Forwarding table Node C, D and F are on this cable segment through port 2. Nodes A, B, and E are on this cable segment though port 1. Port 2 Port 1 Node F Bridge
  185. 185. Filtering - An Example A 1 B 1 C 2 D 2 Node A Node B Node C Node D Fowarding Table Filtered Cable segment 1 Cable segment 2 Port ID 1 Port ID 2 Packet transmitted
  186. 186. Forwarding - An Example Node A Node B Node C Node D Forwarded Cable segment 1 Cable segment 2 Forwarding table A 1 B 1 C 2 D 2 Port ID 1 Port ID 2
  187. 187. Forwarding Beyond One Bridge Node A Node D Node B Node C Cable segment Z Cable segment Y Cable segment X Cable segment V A B A B A B C D C D C D Bridge table Bridge 3 Bridge 2 Bridge 1
  188. 188. Loops <ul><li>Complexity of bridging arises when two or more bridges interconnect the same two cable segments. </li></ul><ul><li>This is called providing redundancy or providing a loop. </li></ul><ul><li>There are problems with this type of design including: </li></ul><ul><ul><li>duplicate packets, </li></ul></ul><ul><ul><li>broadcast packets, and </li></ul></ul><ul><ul><li>unknown destination packets. </li></ul></ul>
  189. 189. Duplicate Packets Node A Node B Node C Node D Single packet transmitted Two packets received Cable segment 1 Cable segment 2 Bridge 2 Bridge 1
  190. 190. Broadcasts Node A Node B Node C Node D Broadcast packet transmitted Cable segment 1 Cable segment 2 Packet received and transmitted back by second bridge Loop Bridge 2 Bridge 1
  191. 191. Unknown Destination Address Node A Node B Node C Node D Destination Z packet transmitted Cable segment 1 Cable segment 2 Packet received and transmitted back by second bridge Loop Bridge 2 Bridge 1
  192. 192. Spanning Tree Algorithm <ul><li>Bridged networks must allow for redundancy. Only one path should be enabled to any destination on the network. </li></ul><ul><li>STA is a protocol unto itself . Don’t confuse it with the transparent bridge protocol. IEEE 802.1d </li></ul><ul><li>In an active STA topology certain bridges are allowed to forward packets. </li></ul><ul><ul><li>Other bridges will participate in the STA but do not forward packets. </li></ul></ul><ul><ul><li>These are backup bridges that dynamically become available. </li></ul></ul><ul><li>Bridges that do not forward packets are placed in blocking mode. </li></ul><ul><ul><li>These bridges still participate in the spanning tree protocol. </li></ul></ul>
  193. 193. Source Routing Bridges <ul><li>Developed as a bridge protocol for Token Ring LANs. </li></ul><ul><li>Source routing gained popularity due to IBM’s support of it. </li></ul><ul><ul><li>It is easy to install a source route network. </li></ul></ul><ul><ul><li>It is not easy to grow a source route network into a large network. </li></ul></ul><ul><li>Invented due to technical limitations of the source route chip set.. Early source route chip sets could not be set for promiscuous mode. </li></ul><ul><li>Source routing was also invented to allow two non-routing protocols to be placed on a LAN: NetBIOS and SNA. </li></ul><ul><li>Source Routing does not build forwarding tables based on MAC addresses. </li></ul><ul><li>Most of the intelligence for this algorithm is found in the network stations. </li></ul><ul><li>Each frame carries complete route information with it. </li></ul>
  194. 194. Source Routing Features <ul><li>Source routing requires split intelligence to be carried in the node and the bridge. </li></ul><ul><li>All frames contain routing information, which does produce more overhead. </li></ul><ul><li>Uses STA to configure which bridges will forward single route broadcast frames. </li></ul><ul><li>All paths are active which legally allows loops to be designed. </li></ul><ul><li>Provided a routing solution for those protocols that could not be routed (NetBIOS). </li></ul><ul><li>Easy to follow ring/MAC address for troubleshooting. </li></ul>
  195. 195. Source Routing Features (cont.) <ul><li>Source Routing originated as an alternative to transparent bridging </li></ul><ul><li>Originally, Token Ring could not be placed in promiscuous mode ( requirement for transparent bridging) and therefore an alternative model was created </li></ul><ul><li>Allowed for SNA and NetBIOS traffic an attempt to enjoy the benefits of routing </li></ul><ul><ul><li>As a data link layer implementation. </li></ul></ul>
  196. 196. Source Routing Overview <ul><li>Each separate ring is assigned a unique ring number, assigned on the source route bridge port and not on the ring station. </li></ul><ul><li>Each bridge is assigned a bridge number. There is a single number for the whole bridge, no matter how many ports it has. </li></ul><ul><li>End stations try to find destination ring stations by broadcasting special discovery frames. </li></ul><ul><li>A frame will contain source route information based on one bit in the source address. </li></ul><ul><li>A source route frame may not cross more than seven bridges. </li></ul><ul><ul><li>At the eighth bridge, the frame is discarded. </li></ul></ul>
  197. 197. Source Routing Example Ring 4 Ring 3 Node 1 Node 2 MAU Find a station on the local ring Find a station off ring 1 2 MAU Bridge 5 Bridge 6 Bridge 7
  198. 198. Routing Information Field Starting Delimiter Access Control Frame Control Destination Address Source Address Optional Routing Information Field Destination Service Access Protocol (DSAP) Source Service Access Protocol (SSAP) Rest of Token Ring frame Routing Control Route Designator Route Designator . . . . . . B B B L L L L L D F F F r r r r Ring number Bridge number 12 bits 4 bits 1 - F bridge IDs 2 bytes Up to 8 RD fields Routing Information Indicator (RII) 1 - 4095 rings
  199. 199. The Route Designator Ring B Ring A Routing Control Token Frame Header Token Frame Trailer Routing Information Field Routing Control Token Frame Header Token Frame Trailer Routing Information Field 00B1 00A0 RD1 RD2 RC RC Discovery frame Bridge 1
  200. 200. Source Route Frame Types <ul><li>Four types of Source Route frames: </li></ul><ul><ul><li>Single Route Explorer (SRE) </li></ul></ul><ul><ul><ul><li>Also known as Spanning Tree Explorers (STE) </li></ul></ul></ul><ul><ul><ul><ul><li>So named by the IEEE 802.5 working group </li></ul></ul></ul></ul><ul><ul><li>All Routes Explorer (ARE) </li></ul></ul><ul><ul><li>Specifically Routed Frame (SRF) </li></ul></ul><ul><ul><li>Single Route Explorer with a specific route return. </li></ul></ul>
  201. 201. Token Ring to Ethernet Conversion SD AC FC DA SA RIF DSAP SSAP CTRL OUI Type Info FCS ED FS DA SA Type Info FCS Preamble Copy and bit reverse Copy Discard Token Ring frame Ethernet frame SNAP header
  202. 202. Ethernet to Token Ring Conversion DA SA Type Info FCS Preamble SD AC FC DA SA RIF DSAP SSAP CTRL OUI Type Info FCS ED FS Copy and bit reverse Copy Insert Ethernet frame Token Ring frame SNAP header
  203. 203. Token Ring to IEEE 802.3 Conversion Copy and bit reverse Token Ring frame Cut Insert Copy IEEE 802.3 frame DA SA Info FCS Preamble SFD Length DSAP SSAP CTRL PAD SD AC FC DA SA RIF DSAP SSAP CTRL Info FCS ED FS
  204. 204. IEEE 802.3 to Token Ring Conversion Copy and bit reverse Token Ring frame Cut Insert Copy IEEE 802.3 frame SD AC FC DA SA RIF DSAP SSAP CTRL Info FCS ED FS DA SA Info FCS Preamble SFD Length DSAP SSAP CTRL PAD
  205. 205. Network Layer Functions <ul><li>Key Layer in Internet Architecture </li></ul><ul><li>End-to-end Packets </li></ul><ul><li>Adapt to lower layers </li></ul>1 1 2 2 3
  206. 206. Network Layer <ul><li>Design Goals </li></ul><ul><ul><li>‘Independent’ of layer 1 & 2 implementations </li></ul></ul><ul><ul><li>Hide layer 1 & 2 details from upper layers </li></ul></ul><ul><li>Architecture </li></ul><ul><ul><li>Connection oriented </li></ul></ul><ul><ul><li>Connectionless </li></ul></ul><ul><ul><li>(where should reliability be done?) </li></ul></ul><ul><li>Services </li></ul><ul><ul><li>Routing (Path selection) </li></ul></ul><ul><ul><li>Adaptation to different lower layers </li></ul></ul>
  207. 207. Routing Algorithms <ul><li>Goals </li></ul><ul><ul><li>Optimality </li></ul></ul><ul><ul><li>Fairness </li></ul></ul><ul><ul><li>Stablility </li></ul></ul><ul><ul><li>Robustness </li></ul></ul><ul><ul><li>Correctness </li></ul></ul><ul><ul><li>Simplicity </li></ul></ul><ul><li>Adaptive vs Static </li></ul><ul><li>Congestion Control </li></ul>
  208. 208. Adaptive Routing <ul><li>Centralized </li></ul><ul><li>Isolated </li></ul><ul><li>Distributed </li></ul>
  209. 209. Distributed Routing <ul><li>Metric - Vector Algorithms </li></ul><ul><ul><li>sometimes called shortest path </li></ul></ul><ul><ul><li>Bellman-Ford most famous </li></ul></ul><ul><ul><li>Knowledge of immediate neighbors </li></ul></ul><ul><ul><li>Result is “first step” in path to ultimate destination </li></ul></ul><ul><li>Link State Algorithms </li></ul><ul><ul><li>OSPF {Open Shortest Path First} </li></ul></ul><ul><ul><li>Knowledge of network layer map (connectivity) </li></ul></ul>
  210. 210. Congestion Control <ul><li>RESEARCH ISSUE! </li></ul><ul><li>Resource Reservation </li></ul><ul><li>Packet Discarding </li></ul><ul><li>Flow Control </li></ul>
  211. 211. Routers - Directly Attached Networks Node A Node D Network 1 Network 100 B C Send packet to router Z Packet is given to the router Find network 100 Router forwards packet to network station D Step 1 Step 2 Step 3 Step 4 Router Z
  212. 212. Routers - Non-Directly Attached Networks <ul><li>If the destination network is not directly attached to the router, the router will forward the packet to another router in the forwarding path of the destination network. </li></ul><ul><li>Router-to-router communication is directly MAC addressed. </li></ul><ul><li>Will all routers in the path perform the same decisions as the previous router? </li></ul><ul><li>The last router in the path to the destination will forward the packet directly to the destination. </li></ul><ul><li>Important to note that the data link MAC headers will constantly change while the packet is being forwarded. </li></ul><ul><ul><li>Very little information in the network header will change. </li></ul></ul><ul><ul><ul><li>The network layer header in the packet will contain the originator’s full address and final destination address of the packet. </li></ul></ul></ul><ul><ul><ul><li>The full address of a network station is the combination of the network ID and its MAC address. </li></ul></ul></ul><ul><ul><ul><ul><li>This uniquely identifies any station on the internet. </li></ul></ul></ul></ul>
  213. 213. Multiprotocol Routers <ul><li>LANs currently operate with many different types of protocols. </li></ul><ul><ul><li>Apple Computers can use AppleTalk. </li></ul></ul><ul><ul><li>UNIX workstations use TCP/IP. </li></ul></ul><ul><ul><li>Client/Server applications could use Novell NetWare. </li></ul></ul><ul><li>To require one router for each protocol on the LAN is not efficient. </li></ul><ul><li>Multiprotocol routers were invented to handle this. </li></ul><ul><ul><li>Arrived around 1986. </li></ul></ul><ul><ul><li>Routes not only based on the network IDs but are able to pass the packet to the correct protocol processor by examining the Type of packet. </li></ul></ul>
  214. 214. Multiprotocol Routers - A Block Diagram Bridge Router Route on network IDs Forward on MAC address Incoming packet Bridged or routed packet Combine both into one box Can packet be routed based on protocol type? Bridge packet if not
  215. 215. Routing Diagram Network 1 Network 2 Network 3 Network 4 A B C D E F G H MAC addresses Router Z Router Y Router X
  216. 216. Routing Information Protocol (RIP) <ul><li>Known as a routing table update protocol </li></ul><ul><li>Developed by Xerox and gained widespread acceptance by the proliferation of TCP/IP’s implementation of it in UNIX. </li></ul><ul><li>Other protocols (AppleTalk, NetWare) adopted RIP as their standard routing update protocol. </li></ul><ul><li>Known as a distance vector protocol. </li></ul><ul><ul><li>Vector is an adjacent router and the distance is how far away (hops) the </li></ul></ul><ul><ul><ul><li>network is. </li></ul></ul></ul><ul><ul><li>One hop is considered one router traversed. </li></ul></ul><ul><li>Devised for relatively stable, small-to-medium size networks (less than 16 routers in diameter) . </li></ul>
  217. 217. Calculating the Cost Network 1 Network 2 Network 3 Network 4 Network Hops 2 1 3 1 1 2 Network Hops 1 1 1 2 Network Hops 1 1 2 3 3 4 2 1 3 2 Transmitted routing table Transmitted routing table Internal routing table Router A Router B Router C
  218. 218. IP Routing <ul><li>Making Decisions </li></ul><ul><li>Gathering Information </li></ul><ul><li>ICMP </li></ul>
  219. 219. Routing Table Network Mask Router Hops Age Port ID 3 255 C 1 30 1 4 255 C 1 30 2 2 255 B 2 15 2 1 255 B 3 45 2
  220. 220. Example: TCP/IP <ul><li>Not the only way to do things ... </li></ul><ul><li>But well tested in the field </li></ul><ul><li>Brief History </li></ul><ul><li>TCP/IP vs ISO protocols </li></ul>
  221. 221. References TCP/IP <ul><li>Overall -- Douglas Comer </li></ul><ul><ul><li>Internetworking with TCP/IP, Vol I, 3d ed. </li></ul></ul><ul><ul><li>Internetworking with TCP/IP, Vol II </li></ul></ul><ul><ul><li>Internetworking with TCP/IP, Vol III (Sockets) </li></ul></ul><ul><ul><li>Internetworking with TCP/IP, Vol III (TLI) </li></ul></ul><ul><li>Unix Programming -- W. Richard Stevens </li></ul><ul><ul><li>Unix Network Programming </li></ul></ul><ul><ul><li>Advanced Unix Network Programming </li></ul></ul><ul><li>Stevens & Wright </li></ul><ul><ul><li>TCP/IP Illustrated Vol I </li></ul></ul><ul><ul><li>TCP/IP Illustrated Vol II </li></ul></ul><ul><ul><li>TCP/IP Illustrated Vol III </li></ul></ul>
  222. 222. TCP/IP Stack 1 2 3 4 5 -7 OSI DIX Ethernet or ... ARP ICMP IP TCP UDP DNS TELNET FTP
  223. 223. Notes on TCP/IP Suite <ul><li>TCP/IP preceded the OSI Reference Model </li></ul><ul><li>Layers 1 & 2 are not part of the standard </li></ul><ul><li>Functions above the Transport Layer are consolidated </li></ul>
  224. 224. Brief Definitions <ul><li>ARP -- Address Resolution Protocol </li></ul><ul><li>IP -- Internet Protocol </li></ul><ul><li>ICMP -- Internet Control Message Protocol </li></ul><ul><li>UDP -- User Datagram Protocol </li></ul><ul><li>TCP -- Transmission Control Protocol </li></ul><ul><li>DNS -- Domain Name System </li></ul><ul><li>FTP -- File Transfer Protocol </li></ul><ul><li>TELNET -- remote terminal </li></ul>
  225. 225. Other TCP/IP Protocols <ul><li>Routing Protocols -- RIP, OSPF, EGP, GGP </li></ul><ul><li>BOOTP - Bootstrap Protocol </li></ul><ul><li>RARP - Reverse ARP </li></ul><ul><li>TFTP - Trivial FTP </li></ul><ul><li>HTTP - Hyper Text Transfer Protocol </li></ul><ul><li>SMTP - Simple Mail Transfer Protocol </li></ul><ul><li>SNMP - Simple Network Management Protocol </li></ul>
  226. 226. Layer Protocols DNS Query DNS Reply SYN SYN/ACK ACK Caller Callee {TCP Establishment} ARP Request ARP Reply
  227. 227. IP Functionality <ul><li>Presents single, virtual network to user </li></ul><ul><li>Connectionless Delivery </li></ul><ul><li>Packet Routing </li></ul><ul><li>Interface to Lower Layers </li></ul>
  228. 228. IP Addresses <ul><li>“ Dotted Decimal” </li></ul><ul><ul><li>32 bit (4 byte) address, written by taking each byte as an unsigned number </li></ul></ul><ul><li>Address Classes [first octet] </li></ul><ul><ul><li>A - <net> < > <host> < > 1-126 </li></ul></ul><ul><ul><li>B - <net> < > <host> < > 128-191 </li></ul></ul><ul><ul><li>C -< > <net> < > <host> 192-223 </li></ul></ul><ul><ul><li>D - special subset of C 224-239 multicast </li></ul></ul><ul><ul><li>E - reserved 240-254 </li></ul></ul><ul><li>Netmask </li></ul><ul><ul><li>a 32 bit value which, when ANDed with an address, selects only the network part </li></ul></ul>
  229. 229. Netmask Usage <ul><li>“ Do a bitwise AND then compare for equality of results” </li></ul><ul><li><src addr> & netmask =?= <dst addr> & netmask </li></ul><ul><li>if comparison is equal, then both src & dst are on same (sub)net. </li></ul>Same netmask
  230. 230. Netmask Examples ? S= M= result D= M= result Not Equal S= M= result S= M= result D= M= result D= M= result 67.194. 0.0 ?
  231. 231. Special Address Conventions <ul><li>This host </li></ul><ul><li>Host on this net </li></ul><ul><li>Limited broadcast </li></ul><ul><li>Directed broadcast </li></ul><ul><li>Loopback </li></ul>all 0’s 127 anything (usually 1) net host all 0’s all 1’s all 1’s
  233. 233. IP Packet Handling (rcv) receiving Transport Layer (TCP or UDP) Sockets IP Link {DIX Type or 802.3 DSAP} Other Physical
  234. 234. IP Packet Handling (xmit) sending Local or Non-Local ? ARP Search Routing Table Found! Missing! ICMP Error Send locally...
  235. 235. Bridges or Routers A B C D 1 2 3 4 5 Address & Netmask 1: 2: 3: 4: 5:
  236. 236. ICMP <ul><li>ping </li></ul><ul><ul><li>ECHO Request/Reply </li></ul></ul><ul><li>traceroute </li></ul><ul><li>traceroute to (, </li></ul><ul><li>30 hops max, 40 byte packets </li></ul><ul><li>1 exit_133 ( 2 ms 2 ms 2 ms </li></ul><ul><li>2 exit_128 ( 2 ms 3 ms 2 ms </li></ul><ul><li>3 FDDI-T3.TAMU.EDU ( 3 ms 3 ms 3 ms </li></ul><ul><li>4 FDDI-WAN.TAMU.EDU ( 5 ms 4 ms 6 ms </li></ul><ul><li>5 ( 20 ms 5 ms 5 ms </li></ul><ul><li>6 ( 8 ms 9 ms 21 ms </li></ul><ul><li>7 ( 7 ms 11 ms 7 ms </li></ul><ul><li>8 ( 16 ms 23 ms 21 ms </li></ul><ul><li>9 ( 12 ms 9 ms 9 ms </li></ul><ul><li>10 * * * </li></ul>
  237. 237. Project <ul><li>Purpose </li></ul><ul><li>Options </li></ul><ul><ul><li>Network Design </li></ul></ul><ul><ul><li>Software (?) </li></ul></ul><ul><li>Approach {customer/boss/professor} </li></ul><ul><li>Teams {prefered size is 3} </li></ul>
  238. 238. Project Phases 1. Enthusiasm 2. Disillusionment 3. Panic 4. Search for the Guilty 5. Punishment of the Innocent 6. Praise and Honors for the Non-participants &quot;almost a joke, but too often true!&quot;
  239. 239. Project Schedules End Start * * A miracle occurs &quot;don't let yourself plan like this&quot;
  240. 240. Network Design • An iterative, interactive process &quot;you have to ask questions, & you'll never get it all in one meeting with the customer&quot; • More than just selecting the media &quot;remember you're designing a system -- make sure you look at something for all 7 layers of the OSI model&quot; • More than one right answer &quot;don't be dogmatic. stay open to other soltuions than the one you feel is technically best.&quot;
  241. 241. Network Design,cont • What does the customer want to do? • What does the customer want to use? {tentative design time} • What are the customer's desires (biases)? • Check for completeness... • Check for integration... • Implementation Plan Time &quot;Do them in order . Each step is important&quot;
  242. 242. Functions &quot;the 2 main reasons for a network are connectivity and resource sharing &quot; Electronic Mail File Sharing • Transfer • Virtual disk/files Resource Sharing • Printers/plotters etc • Modems • CPU • Disk Connectivity • Remote login Software Management
  243. 243. Resources &quot;Remember to be precise!&quot; Systems Qty Mfg Version Software Geography Distances Constructions Standards
  244. 244. Tentative Design <ul><li>Meant to bring out Key features ... </li></ul><ul><li>... and Decision points ... </li></ul><ul><li>with the Customer. </li></ul><ul><li>Provide your “best” solution, and be ready with alternatives. </li></ul><ul><ul><li>Features vs “Costs” </li></ul></ul><ul><li>CYA, or “say it with memos” </li></ul>
  245. 245. User Input &quot; listen . understand that you are the expert, responsible for making sure both sides understand each other. But there are many different solutions to any networking problem.&quot;
  246. 246. Completeness Integration &quot;Have you covered all the functions needed?&quot; &quot;Does it all work together?&quot;
  247. 247. Implementation &quot;Make sure it can be built.&quot; Sequence of actions (1) Identify key points in schedule (2) Provide alternative plans for problems • Plan • Build • Test • Turn over
  248. 248. Project “Hints” <ul><li>READ the lecture slides </li></ul><ul><ul><li>Ask the user closed end questions </li></ul></ul><ul><ul><li>Don’t try to ask too much at one session </li></ul></ul><ul><ul><li>No preconceived scenarios </li></ul></ul><ul><li>Remember Inventory (equip., s/w, space) </li></ul><ul><li>Tentative Design </li></ul><ul><ul><li>Informal </li></ul></ul><ul><ul><li>High Level </li></ul></ul><ul><ul><li>Drawings are “Good Things” </li></ul></ul>
  249. 249. More Hints <ul><li>Look in catalogs </li></ul><ul><li>Report Format; </li></ul><ul><ul><li>Problem statement: don;t just repeat what I said </li></ul></ul><ul><ul><li>Solution HIghlights </li></ul></ul><ul><ul><ul><li>Alternatives considered </li></ul></ul></ul><ul><ul><ul><li>Word Description (logical, physical) </li></ul></ul></ul><ul><li>Bill of Materials </li></ul><ul><ul><li>Specific Items (model, brand) </li></ul></ul><ul><ul><li>Costs aren;t very important </li></ul></ul>
  250. 250. Transport Layer <ul><li>Services </li></ul><ul><ul><li>Reliable Delivery </li></ul></ul><ul><ul><li>or Not! </li></ul></ul><ul><li>Protocols </li></ul><ul><ul><li>Internet: TCP, UDP </li></ul></ul><ul><ul><li>ISO: TP0 thru TP4 </li></ul></ul>
  251. 251. Transport Services Framing Link Header Data Data Data Data Data Data Data Network Header Transport Header Session Header (?) Presentation “Header” Application “Header” User Provider {see page 481}
  252. 252. Delivery Services <ul><li>First layer that can really provide reliability </li></ul><ul><li>Reliability means sequencing, error recovery, acknowledgements </li></ul><ul><li>Not every application needs (wants) reliability </li></ul>
  253. 253. Quality of Service <ul><li>New idea from the voice, video folk </li></ul><ul><li>Not (yet) part of Internet protocols </li></ul><ul><ul><li>RSVP in process </li></ul></ul><ul><li>Unclear which layer guarantees QoS </li></ul>
  254. 254. Generic Transport Service Primitives <ul><li>Listen </li></ul><ul><ul><li>notify Transport layer a call is expected </li></ul></ul><ul><li>Connect </li></ul><ul><ul><li>establish Transport layer connection </li></ul></ul><ul><li>Send (or Write) </li></ul><ul><li>Receive (or Read) </li></ul><ul><ul><li>Both could be connectionless </li></ul></ul><ul><li>Disconnect (or Close) </li></ul>
  255. 255. Berkeley Sockets <ul><li>‘ Sockets’ are one of the 2 major Unix network programming application programming interfaces . </li></ul><ul><li>The other is the System V Transport Layer Interface (TLI). </li></ul><ul><li>Sockets are biased towards Unix and C. </li></ul><ul><li>Good references are Doug Comer’s Vol III </li></ul><ul><ul><li>both of them! </li></ul></ul>
  256. 256. Unix File I/O <ul><li>Unix treats a file as a ‘stream of bytes’ </li></ul><ul><li>API calls: open, creat, read, write, lseek, close </li></ul><ul><li>All operate on file descriptors </li></ul><ul><li>File descriptors are int’s, but represent a more complex structure </li></ul>
  257. 257. Socket I/O <ul><li>Transport layer also provides ‘stream of bytes’ type service to the upper layers </li></ul><ul><li>API calls: </li></ul><ul><ul><li>socket: Initialize data structure </li></ul></ul><ul><ul><li>bind: set addresses </li></ul></ul><ul><ul><li>listen: specify a queue </li></ul></ul><ul><ul><li>accept: wait for connection </li></ul></ul><ul><ul><li>connect: initiate a connection </li></ul></ul><ul><ul><li>read, write, recv, send: transfer data </li></ul></ul><ul><ul><li>close, shutdown: terminate connection </li></ul></ul><ul><ul><li>recvfrom, sendto: datagrams </li></ul></ul>
  258. 258. Overview -- connection Server Client server blocks Optional(!!) socket() bind() listen() accept() read() connect() socket() bind() write()
  259. 259. Overview -- connectionless Server Client recvfrom() server blocks socket() bind() sendto() sendto() socket() bind() recvfrom()
  260. 260. Socket Paradigm <ul><li>Setup is ‘client/server’ because someone has to start the conversation </li></ul><ul><li>BUT, communication is bidirectional (either end can read or write) </li></ul><ul><li>Sockets (in Unix) are multiprotocol: </li></ul><ul><ul><li>TCP/IP, UNIX, XNS {address families} </li></ul></ul>
  261. 261. Server Types <ul><li>Iterative </li></ul><ul><ul><li>Receive request, process it, go to next on queue </li></ul></ul><ul><ul><li>Best in connection-less environment </li></ul></ul><ul><li>Concurrent </li></ul><ul><ul><li>Receive request, fork process, reset socket </li></ul></ul><ul><ul><li>Best when extended interaction is needed </li></ul></ul>
  262. 262. Socket ‘Details’ <ul><li>If you don’t want to block on a read, look at the select system call. </li></ul><ul><li>You’ll need the following includes: </li></ul><ul><ul><li>#include <sys/types.h> </li></ul></ul><ul><ul><li>#include <sys/socket.h> </li></ul></ul><ul><li>Program examples are available on net. </li></ul>
  263. 263. Managing Connections <ul><li>Addressing </li></ul><ul><li>Identifying duplicate TPDUs </li></ul><ul><li>Three-way handshakes </li></ul><ul><li>Flow control </li></ul><ul><li>Crash recovery (largely ignored) </li></ul>
  264. 264. TCP <ul><li>Reliable, sequenced stream of bytes </li></ul><ul><li>Virtual circuit </li></ul><ul><li>Buffered transfer </li></ul><ul><li>Unstructured </li></ul><ul><li>Full Duplex </li></ul>
  265. 265. TCP - How it Works <ul><li>Positive Acknowledgements w/ Retransmission </li></ul><ul><li>Sliding Windows </li></ul><ul><li>Pages 531, 532 give the programmer’s state machine info </li></ul>
  266. 266. TCP Features <ul><li>A protocol, not a package </li></ul><ul><li>Ports (Well Known Ports) </li></ul><ul><li>Out of Band, or URGENT , data </li></ul><ul><li>Timeouts </li></ul><ul><ul><li>RTT Estimation (Karn’s Algorithm) (pg 541) </li></ul></ul><ul><li>Congestion </li></ul><ul><ul><li>Slow-Start Methodolgy </li></ul></ul><ul><li>Limitations </li></ul>
  268. 268. TCP Connection Management <ul><li>Three Way Handshake </li></ul><ul><ul><li>SYN, SYN/ACK, ACK </li></ul></ul><ul><li>May be viewed as two Simplex connections </li></ul><ul><li>Window management </li></ul><ul><ul><li>Advertising Zero Window Size </li></ul></ul><ul><ul><li>Nagle’s algorithm </li></ul></ul><ul><ul><li>Silly Window Syndrome </li></ul></ul>
  269. 269. UDP <ul><li>Your basic datagram </li></ul><ul><li>No acknowledgements, no reliability </li></ul><ul><li>Why use it? </li></ul>DATA ... 0 16 31 SOURCE PORT DESTINATION PORT MESSAGE LENGTH CHECKSUM
  270. 270. Transport Layer Performance <ul><li>Timeout Values </li></ul><ul><li>Inadvertent Synchronized Loads </li></ul><ul><li>Latency (Bandwidth-delay product) </li></ul><ul><li>MTU, MSS values </li></ul><ul><li>Router impact </li></ul>
  271. 271. Performance Hints <ul><li>CPU normally is the bottleneck </li></ul><ul><ul><li>most time is spent in protocol stacks, not on the wire </li></ul></ul><ul><li>Per-packet overhead means big packets are much more efficient… </li></ul><ul><li>But delays to create big packets impact interactive applications </li></ul><ul><li>Easy to increase bandwidth, impossible (?) to reduce propagation delay </li></ul>
  272. 272. Performance Challenges <ul><li>Gigabit networks </li></ul><ul><li>Satellites </li></ul>
  273. 273. Packet Tracing -- Putting it all together <ul><li>Packet tracing: the actions of observing packets as they appear on the media and deriving the activities occuring on hosts; or, knowing the top-level commands issued and predicting the packets that will appear on the media. </li></ul>
  274. 274. Motivations for Packet Tracing <ul><li>Understanding network protocols </li></ul><ul><li>Debugging your network </li></ul><ul><li>Debugging applications that work over the network </li></ul>
  275. 275. Layer Protocols DNS Query DNS Reply SYN SYN/ACK ACK Caller Callee {TCP Establishment} ARP Request ARP Reply
  276. 276. Examples - 1 <ul><li>Assumptions: </li></ul><ul><li>Host A , IP Address </li></ul><ul><li>Host B , IP Address </li></ul><ul><li>netmask </li></ul><ul><li>ARP caches and bridge tables are empty </li></ul><ul><li>All hosts know DNS Server is </li></ul><ul><li>Trace command “DNS Query” initiated on Host A </li></ul>A B 1
  277. 277. Answer - 1 <ul><li>Seg DA E SA E “type” SA IP DA IP </li></ul><ul><li>1 FF E A ARP Req 1.2 1.3 </li></ul><ul><li>1 E A E B ARP Reply 1.3 1.2 </li></ul><ul><li>1 E B E A DNS Q 1.2 1.3 </li></ul><ul><li>1 E A E B DNS R 1.3 1.2 </li></ul>
  278. 278. Examples - 2 <ul><li>Assumptions: </li></ul><ul><li>Host A , IP Address </li></ul><ul><li>Host B , IP Address </li></ul><ul><li>Host C , IP Address </li></ul><ul><li>netmask </li></ul><ul><li>ARP caches and bridge tables are empty </li></ul><ul><li>All hosts know DNS Server is </li></ul><ul><li>Trace command “DNS Query” initiated on Host A </li></ul>B C 2 A 1
  279. 279. Answer - 2 <ul><li>Seg DA E SA E “type” SA IP DA IP </li></ul><ul><li>1 FF E A ARP Req 1.2 1.3 </li></ul><ul><li>2 FF E A ARP Req 1.2 1.3 </li></ul><ul><li>1 E A E B ARP Reply 1.3 1.2 </li></ul><ul><li>1 E B E A DNS Q 1.2 1.3 </li></ul><ul><li>1 E A E B DNS R 1.3 1.2 </li></ul>
  280. 280. Examples - 3 <ul><li>Assumptions: </li></ul><ul><li>Host A , IP Address </li></ul><ul><li>Host B , IP Address </li></ul><ul><li>netmask </li></ul><ul><li>ARP caches and bridge tables are empty </li></ul><ul><li>All hosts know DNS Server is </li></ul><ul><li>Trace command “telnet” initiated on Host A </li></ul>A B 1
  281. 281. Answer - 3 <ul><li>Seg DA E SA E “type” SA IP DA IP </li></ul><ul><li>1 FF E A ARP Req 1.2 1.3 </li></ul><ul><li>1 E A E B ARP Reply 1.3 1.2 </li></ul><ul><li>1 E B E A TCP SYN 1.2 1.3 </li></ul><ul><li>1 E A E B SYN/ACK 1.3 1.2 </li></ul><ul><li>1 E B E A TCP ACK 1.2 1.3 </li></ul>
  282. 282. Examples - 4 <ul><li>Assumptions: </li></ul><ul><li>Host A , IP Address </li></ul><ul><li>Host B , IP Address </li></ul><ul><li>netmask </li></ul><ul><li>ARP caches and bridge tables are empty </li></ul><ul><li>All hosts know DNS Server is </li></ul><ul><li>Trace command “telnet B” initiated on Host A </li></ul>A B 1
  283. 283. Answer - 4 <ul><li>Seg DA E SA E “type” SA IP DA IP </li></ul><ul><li>1 FF E A ARP Req 1.2 1.3 </li></ul><ul><li>1 E A E B ARP Reply 1.3 1.2 </li></ul><ul><li>1 E B E A DNS Q 1.2 1.3 </li></ul><ul><li>1 E A E B DNS R 1.3 1.2 </li></ul><ul><li>1 E B E A TCP SYN 1.2 1.3 </li></ul><ul><li>1 E A E B SYN/ACK 1.3 1.2 </li></ul><ul><li>1 E B E A TCP ACK 1.2 1.3 </li></ul>
  284. 284. Examples - 5 <ul><li>Assumptions: </li></ul><ul><li>Host A , IP Address </li></ul><ul><li>Host B , IP Address </li></ul><ul><li>Host X , IP Address on segment 1 </li></ul><ul><li>Host X , IP Address on segment 2 </li></ul><ul><li>netmask </li></ul><ul><li>ARP caches and bridge tables are empty </li></ul><ul><li>All hosts know DNS Server is </li></ul><ul><li>Trace command “telnet” initiated on Host A </li></ul>1 2 B A 3 2 2 1 1 X
  285. 285. Examples - 5 cont. <ul><li>Routing table on A : </li></ul><ul><li>Net Mask Router </li></ul><ul><li> </li></ul><ul><li>Routing table on B : </li></ul><ul><li>Net Mask Router </li></ul><ul><li> </li></ul><ul><li>Routing table on X : </li></ul><ul><li>Net Mask Router </li></ul>
  286. 286. Answer - 5 <ul><li>Seg DA E SA E “type” SA IP DA IP </li></ul><ul><li>1 FF E A ARP Req 1.1 1.254 </li></ul><ul><li>1 E A E X1 ARP Reply 1.254 1.1 </li></ul><ul><li>1 E X1 E A TCP SYN 1.1 2.2 </li></ul><ul><li>2 FF E X2 ARP Req 2.254 2.2 </li></ul><ul><li>2 E X2 E B ARP Reply 2.2 2.254 </li></ul><ul><li>2 E B E X2 TCP SYN 1.1 2.2 </li></ul><ul><li>2 E X2 E B SYN/ACK 2.2 1.1 </li></ul><ul><li>1 E A E X1 SYN/ACK 2.2 1.1 </li></ul><ul><li>1 E X1 E A TCP ACK 1.1 2.2 </li></ul><ul><li>2 E B E X2 TCP ACK 1.1 2.2 </li></ul>
  287. 287. Problem A -1 <ul><li>Use the data and diagram to show the packets resulting from the command &quot; telnet B &quot; being </li></ul><ul><li>executed on host C . Assumptions : The diagram consists of 8 numbered ethernet segments, </li></ul><ul><li>5 bridges (unlabeled rectangles), two routers ( X , Y ) and hosts A , B , C . ARP caches are </li></ul><ul><li>empty. Tables on bridges are empty. Routing entries are as shown below. Host A is the </li></ul><ul><li>DNS nameserver and its IP address is known to all machines. </li></ul><ul><li>Netmask for 128.194 is </li></ul><ul><li>A-, ethernet e1 </li></ul><ul><li>B-, ethernet e2 </li></ul><ul><li>C-, ethernet e3 </li></ul><ul><li>X- seg 7:, ethernet e5 </li></ul><ul><li>seg 3:, ethernet e6 </li></ul><ul><li>Y- seg 8:, ethernet e7 </li></ul><ul><li>seg 4:, ethernet e8 </li></ul>
  288. 288. Problem A - 2
  289. 289. Problem A - 3 <ul><li>Host Network Netmask Router </li></ul><ul><li>A: </li></ul><ul><li>B: </li></ul><ul><li> </li></ul><ul><li>C: </li></ul><ul><li> </li></ul><ul><li>X: </li></ul><ul><li> </li></ul><ul><li>Y: </li></ul><ul><li> </li></ul>
  290. 290. Decode Example - 1 <ul><li>33 cfl02 -> TCP D=80 S=1977 Syn Seq=1011631 Len=0 Win=0 </li></ul><ul><li> 0: 0000 ef03 efb0 00a0 2435 5343 0800 4500 ........$5SC..E. </li></ul><ul><li> 16: 002c 6f03 0000 3c06 f2c2 80c2 8547 cfc8 .,o...<......G.. </li></ul><ul><li> 32: 4734 07b9 0050 000f 6faf 0000 0000 6002 G4...P..o.....`. </li></ul><ul><li> 48: 0000 036d 0000 0204 05a0 0000 ...m........ </li></ul>
  291. 291. Decode Example - 2 <ul><li>36 -> cfl02 TCP D=1977 S=80 Syn Ack=1011632 Seq=1144453529 Len=0 Win=49152 </li></ul><ul><li> 0: 00a0 2435 5343 0000 ef03 efb0 0800 4500 ..$5SC........E. </li></ul><ul><li> 16: 002c 914c 4000 3206 9a79 cfc8 4734 80c2 .,.L@.2..y..G4.. </li></ul><ul><li> 32: 8547 0050 07b9 4436 f999 000f 6fb0 6012 .G.P..D6ù...o.`. </li></ul><ul><li> 48: c000 0577 0000 0204 05b4 15f8 ...w.......ø </li></ul>
  292. 292. Decode Example - 3 <ul><li>37 cfl02 -> TCP D=80 S=1977 Ack=1144453530 Seq=1011632 Len=0 Win=2880 </li></ul><ul><li> 0: 0000 ef03 efb0 00a0 2435 5343 0800 4500 ........$5SC..E. </li></ul><ul><li> 16: 0028 6f04 0000 3c06 f2c5 80c2 8547 cfc8 .(o...<......G.. </li></ul><ul><li> 32: 4734 07b9 0050 000f 6fb0 4436 f99a 5010 G4...P..o.D6ù.P. </li></ul><ul><li> 48: 0b40 d1f4 0000 0204 05a0 0000 [email_address] </li></ul>
  293. 293. Decode Example - 4 <ul><li>56 cfl02 -> TCP D=80 S=1977 Ack=1144453530 Seq=1011632 Len=374 Win=2880 </li></ul><ul><li> 0: 0000 ef03 efb0 00a0 2435 5343 0800 4500 ........$5SC..E. </li></ul><ul><li> 16: 019e 6f08 0000 3c06 f14b 80c2 8547 cfc8 ..o...<..K...G.. </li></ul><ul><li> 32: 4734 07b9 0050 000f 6fb0 4436 f99a 5018 G4...P..o.D6..P. </li></ul><ul><li> 48: 0b40 a905 0000 4745 5420 2f65 7363 6170 .@....GET /escap </li></ul><ul><li> 64: 6573 2f73 6561 7263 682f 696d 6167 6573 es/search/images </li></ul><ul><li> 80: 2f68 6f72 697a 6f6e 7461 6c62 6172 2e67 /horizontalbar.g </li></ul><ul><li> 96: 6966 2048 5454 502f 312e 300d 0a49 662d if HTTP/1.0..If- </li></ul><ul><li> 112: 4d6f 6469 6669 6564 2d53 696e 6365 3a20 Modified-Since: </li></ul><ul><li> 128: 5765 646e 6573 6461 792c 2031 362d 4170 Wednesday, 16-Ap </li></ul><ul><li> 144: 722d 3937 2030 303a 3430 3a31 3620 474d r-97 00:40:16 GM </li></ul><ul><li> 160: 543b 206c 656e 6774 683d 3534 0d0a 5265 T; length=54..Re </li></ul><ul><li> 176: 6665 7265 723a 2068 7474 703a 2f2f 686f ferer: http://ho </li></ul><ul><li> 192: 6d65 2e6e 6574 7363 6170 652e 636f 6d2f </li></ul><ul><li> 208: 6573 6361 7065 732f 7365 6172 6368 2f6e escapes/search/n </li></ul><ul><li> 224: 7473 7263 6872 6e64 2d31 2e68 746d 6c0d tsrchrnd-1.html. </li></ul><ul><li> 240: 0a43 6f6e 6e65 6374 696f 6e3a 204b 6565 .Connection: Kee </li></ul><ul><li> 256: 702d 416c 6976 650d 0a55 7365 722d 4167 p-Alive..User-Ag </li></ul><ul><li> 272: 656e 743a 204d 6f7a 696c 6c61 2f32 2e30 ent: Mozilla/2.0 </li></ul><ul><li> 288: 2028 5769 6e31 363b 2049 290d 0a48 6f73 (Win16; I)..Hos </li></ul><ul><li> 304: 743a 2068 6f6d 652e 6e65 7473 6361 7065 t: home.netscape </li></ul><ul><li> 320: 2e63 6f6d 0d0a 4163 6365 7074 3a20 696d .com..Accept: im </li></ul><ul><li> 336: 6167 652f 6769 662c 2069 6d61 6765 2f78 age/gif, image/x </li></ul><ul><li> 352: 2d78 6269 746d 6170 2c20 696d 6167 652f -xbitmap, image/ </li></ul><ul><li> 368: 6a70 6567 2c20 696d 6167 652f 706a 7065 jpeg, image/pjpe </li></ul><ul><li> 384: 670d 0a43 6f6f 6b69 653a 204e 4554 5343 g..Cookie: NETSC </li></ul><ul><li> 400: 4150 455f 4944 3d31 3030 3065 3031 302c APE_ID=1000e010, </li></ul><ul><li> 416: 3132 3336 3139 6130 0d0a 0d0a 123619a0.... </li></ul>
  294. 294. Decode Example - 5 <ul><li>58 -> cfl02 TCP D=1977 S=80 Ack=1012006 Seq=1144453530 Len=280 Win=49152 </li></ul><ul><li> 0: 00a0 2435 5343 0000 ef03 efb0 0800 4500 ..$5SC........E. </li></ul><ul><li> 16: 0140 92eb 4000 3206 97c6 cfc8 4734 80c2 .@..@.2.....G4.. </li></ul><ul><li> 32: 8547 0050 07b9 4436 f99a 000f 7126 5018 .G.P..D6ù...q&P. </li></ul><ul><li> 48: c000 3e23 0000 4854 5450 2f31 2e31 2032 ..>#..HTTP/1.1 2 </li></ul><ul><li> 64: 3030 204f 4b0d 0a53 6572 7665 723a 204e 00 OK..Server: N </li></ul><ul><li> 80: 6574 7363 6170 652d 456e 7465 7270 7269 etscape-Enterpri </li></ul><ul><li> 96: 7365 2f33 2e30 0d0a 4461 7465 3a20 5375 se/3.0..Date: Su </li></ul><ul><li> 112: 6e2c 2032 3420 4175 6720 3139 3937 2030 n, 24 Aug 1997 0 </li></ul><ul><li> 128: 383a 3135 3a33 3820 474d 540d 0a43 6f6e 8:15:38 GMT..Con </li></ul><ul><li> 144: 7465 6e74 2d74 7970 653a 2069 6d61 6765 tent-type: image </li></ul><ul><li> 160: 2f67 6966 0d0a 4c61 7374 2d6d 6f64 6966 /gif..Last-modi