An overview of networks Malathi Veeraraghavan Univ. of Virginia Updated: Aug. 29, 2013 • Outline • Contemporary networks • Networks: • single-link network to an internetwork • For each type of network: tasks & layers • Mechanisms for each task • Protocols and Protocol reference models • Standards 1 Networks at the edges Contemporary networks 1. 2. 3. 4. Ethernet switched networks Wireless LANs: IEEE 802.11 Cellular networks: 3G and 4G (WiMAX and LTE) Residential access networks, such as Passive Optical Networks (PONs) and cable (DOCSIS) 5. Data center networks, such as InfiniBand and FibreChannel 6. Wireless sensor networks: Zigbee, IEEE 802.15.4 7. Vehicular networks: IEEE 1609.3 over 802.11p 8. Satellite networks and disruption tolerant networks 9. Supervisory Control and Data Acquisition (SCADA) networks for electric grid, water/sewage, etc. 10. Backbone circuit-switched networks (SONET, WDM) 11. Dynamic circuit networks 12. Public-Switched Telephone Network (PSTN) 2 Where/what is the Internet? • In this listing of contemporary networks – No mention of the Internet • Internet is “THE” global internetwork – Connects enterprise, home, provider networks • How? Using gateways called IP routers – IP routers are gateways that interconnect networks that are owned and operated by different enterprises, homes, and providers 3 Increasingly complex networks • • • • Unshared single-link network Shared single-link network Multiple-link network (with switches) Internetwork (with gateways) 4 Simplest type of network: Unshared single-link network Host Host Single-link network with one sender and one receiver e.g., private road Hosts are data sources and sinks 5 Shared single-link network Host Symbol for wireless link Host Host Single-link network with multiple senders and multiple receivers e.g., shared road http://en.wikipedia.org/wiki/File:Wireless-icon.png 6 Analogy of a shared single link: a shared road with multiple sources of traffic (cars) - multiple driveways connected to single shared road Courtesy: http://mars.gmu.edu/dspace/bitstream/1920/2497/1/pca_608_23_16n.jpg 7 Multiple-link network One network – same type of switches Switch Host Host Switch Host Switch Host e.g., roadways network (an intersection is comparable to a switch) 8 Analogous to a switch on roadways network Courtesy: http://en.wikipedia.org/wiki/Image:Cloverleaf.jpg Road intersection with traffic lights 9 Train station analogous to a switch Courtesy: Washington DC Metro web site 10 Internetwork: Multiple networks An internetwork Network 3 Host Host Switch Switch Switch Host Switch Host Gateway Network 1 Network 2 e.g. airlines network e.g. roadways network e.g. airport 11 Tasks • What tasks are required for successful communication in each of these types of networks? – where should the hardware or software carrying out these tasks be implemented? • in hosts? • in switches? • in gateways? 12 Tasks in an unshared single-link network • What tasks are required for successful communication across one link, with one sender and one receiver? • Where are these tasks executed? – Only possibility: Hosts 13 Tasks in an unshared single-link network • Three sets of tasks: – Tasks specific to the application programs generating data and receiving data • Example? – Transmit and receive data bits across a link – Error control and flow control • Error control: Detect and recover from errors – bit errors caused by interference and electrical noise • Flow control: Handle mismatches in speed – between receiving application program and sending application program 14 Outline • Outline • Contemporary networks • Networks • For unshared single-link network • Tasks Layers • Mechanisms for each task • Protocols and Protocol reference models • Standards 15 Layer • What is a layer? – A grouping of a set of tasks – Hardware/software that implements this grouping of tasks 16 Layers in an unshared single-link network Tasks Layer Application-specific tasks, Application layer e.g. email, web Error control and flow control Send/receive data bits Data-link layer (DLL) Physical layer (PHY) 17 Why the name "layers?" Application layer Application layer 1 5 Data link layer Data link layer 2 4 Physical layer Host 3 Physical layer Draw in response arrows 6 through 10 Host • Because each layer uses the services of the layer below it 18 Increasingly complex networks • Unshared single-link network Shared single-link network What additional tasks are required? How are these grouped into additional layers? • Multiple-link network (with switches) • Internetwork (with gateways) 19 Sharing analogy • How are roads shared? – multiple lanes • frequency-based sharing - radio AM/FM stations – back-to-back cars on a single lane • time-based sharing 20 Shared single-link network Wireless link: what is sent by one can be heard by all Let’s call this Scenario 1 for creating a shared single link Host Host Host Single-link network with multiple senders and multiple receivers 21 Other scenarios for shared single-link networks Host 2 Host 1 Scenario 2 App. 1 App. 2 App. 1 App. 2 Multiple applications Shared single wired link Multiple links, correct? So, why is it labeled "single" link? Because only one host can send at a time Hub Multipoint repeater Host Host Host Scenario 3 22 What is a hub? • Multipoint repeater or hub – Simple physical-layer device that forwards all packets received on one link to all other links – So how does a host receiving a packet know whether the packet is meant for it? 23 “Sharing” Need for addresses • On a Shared single-link network – A sending host needs to indicate destination for its packet – How is this done? • By adding an address to the packet header. – What is a packet? A set of data bits – What is a header? A few bits tagged on at the front of the packet • Example: Ethernet (MAC) address – 6 bytes 24 Hub: multipoint repeating send to all links except input link packet Hub or multipoint repeater step 1 Host A step 2 step 2 step 2 Host B Host C Host D Step 3: All three hosts compare their address to that in the arriving packet header; only B finds a match and delivers data to higher layer; Rest drop the packet • Packet carries destination address “B” in its header; example packet is carrying the data bits 1000001 (which is ASCII for ‘A’) 25 Cost of no buffers packet Host A Hub or multipoint repeater Host B Host C Host D • If hosts A and D simultaneously send packets, they will collide, even if they are headed to different destinations because all packets are sent on all other links • Bits cannot be deciphered: both packets are “lost” • No buffers in the hub to hold one while processing the other 26 Differences between hub and switch Buffers to hold packets Forwards packets to Hub No all links except input link Switch Yes specific link based on forwarding table 27 What a switch does instead (recall the term "switch" was used in multiple-link networks) packet I SWITCH II III step 1 Host A Forwarding table Destination Output port IV B step 3 Host B Host C Host D II Step 2: Switch looks up forwarding table Step 3: Switch sends the packet on only port II unlike the hub which transmits it on all ports • Packet carries destination address “B” in its header; example packet is carrying the data bits 1000001 (which is ASCII for ‘A’) 28 Single link vs. multiple links • Hub: – Single-link network because at a time only one sender can send data • Switch: – Multiple-link network because multiple senders can simultaneously send data • even if two packets are destined to the same host, the switch can buffer one packet (hold in memory) while sending the first 29 Coming back to our tasks/layers thread • Recap: Having understood the three scenarios for shared single-link networks: – Wireless link – Two applications between hosts – Single wired link with a hub • What are the additional tasks and layers needed in these shared single-link networks? 30 What additional tasks are needed in a shared single-link network? • Tasks related to sharing, e.g., decide which sender gets to send next – a.k.a (also known as) • multiplexing schemes • Medium Access Control (MAC) schemes 31 What additional layers are needed in shared single-link networks? • MAC tasks are implemented in a – sub-layer within the data-link layer • In other words, data-link layer in a shared single-link network consists of – error control – flow control – multiplexing/MAC 32 Layers in an shared single-link network Tasks Layer Application-specific tasks, e.g. email, web Application layer Error control, flow control, Data-link layer and multiplexing/MAC (with MAC sublayer) Send/receive data bits Physical layer (PHY) Compare this slide with slide 15 33 Where are these layers implemented? • All three layers at the hosts – For all three scenarios • In scenario 3: – Hubs implement only the physical layer • which consists of the tasks of ........ 34 Increasing complexity of networks • Unshared single-link network • Shared single-link network Multiple-link network (with switches) • Additional tasks? • Additional layers? • Internetwork (with gateways) 35 Multiple-link network One network – same type of switches Host Host Switch Host Switch Host e.g., roadways network (with road intersection comparable to a switch) 36 What additional tasks are needed in multiple-link networks? • Switching: forward data units (groups of bits) from one link to another • End-to-end error control and flow control – Why? • Switches can drop data due to buffer overflows 37 Additional layers in an multiple-link network Tasks Layer Switching Network layer End-to-end error control and flow control Transport layer 38 Where are these layers implemented? Application layer Application layer Transport layer Transport layer Network layer Network layer Network layer Network layer Data link layer Data link layer Data link layer Data link layer Data link layer Data link layer Physical layer Physical layer Physical layer Physical layer Physical layer Physical layer Host Host Switch Host Switch Host 39 Why is "network layer" shown at the end hosts? • Answer: – Network-layer (NL) implementation at a host supports the network-layer switching task implemented at the switch – at the sending host: NL adds destination address to packet headers • this allows the switch to forward packets to different output ports (links) based on destination addresses • analogy: who writes the address on an envelope sent through USPS? – at the receiving host: NL checks if destination address in packet header corresponds to host's address • receive the packet it there is a match • otherwise, drop the packet 40 Interesting to note • That the network-layer tasks implemented at the switch are different from the network-layer tasks implemented at end hosts 41 Layers in a multiple-link network Tasks Layer Application-specific tasks, e.g. email, web Application layer End-to-end error control and flow control Transport layer Switching Network layer Error control, flow control, multiplexing/MAC Data-link layer (with MAC sublayer) Send/receive data bits Physical layer 42 Increasing complexity of networks • Unshared single-link network • Shared single-link network • Multiple-link network (with switches) Internetwork (with gateways) 43 Internetwork: Multiple networks An internetwork Host Host Switch Switch Switch Host Switch Host Gateway Network 1 e.g. roadways network Network 2 e.g. airlines network e.g. airport Gateways are the "switches" of the internetwork forwarding data units between networks 44 Layers in an internetwork • Complex in a general context • Example: the Internet – TCP/IP model – Gateway: IP router • Another example: VoIP – Public Switched Telephone Network (PSTN) connected to the Internet – Media Gateway (with controller) 45 Putting together the four “types” of networks introduced in lesson • Four types of (increasingly complex) networks described in this lesson was just for purposes of understanding all the various tasks involved in communications • In reality, most hosts are connected to the Internet (which is an internetwork) • These "four types" are just types of communication instances rather than networks 46 Communication instances Comm. instance 3: multiple-link An internetwork Host Host Switch Host Host Switch Host Gateway Hub Network 1 Switch Switch Network 2 Host Comm. instance 2: shared single-link Comm. instance 4: inter-network Comm. instance 1: unshared single-link left out of the figure because it is usually only in labs that two hosts are directly connected to each other by an unshared link 47 Network management tasks • FCAPS: – – – – – Fault management Configuration management Accounting Performance monitoring Security 48 Outline • Outline • Contemporary networks • Networks: • from a simple single-link network to an internetwork • Tasks Layers Two ends of a layer • Mechanisms for each task • Protocols and Protocol reference models • Standards 49 Are the implementations of a layer at the two communicating ends the same? • Sometimes yes. • Sometimes no. • Physical layer example • Application layer example • Network layer example: already shown to be different at hosts and switches 50 Physical layer example • Bidirectional links (half-duplex or duplex) – both ends have transmit and receive capabilities – Same layer-1 implementation at both ends • Unidirectional link (simplex link) – one end has transmit capability – other end has receive capability 51 Half duplex Transmitter (Tx) Transmitter (Tx) Receiver (Rx) Receiver (Rx) One way at a time Transmitter (Tx) Transmitter (Tx) Receiver (Rx) Receiver (Rx) 52 Full duplex Transmitter (Tx) Receiver (Rx) Simultaneous Transmitter (Tx) Receiver (Rx) Example optical fiber Recall the two connectors (blue and red) at each end 53 Application layer • Example in which the required tasks differ at the two ends: – Web browsing • The web server program waits for clients to connect to it and responds to requests by serving out files • The web client program receives inputs from human users and sends corresponding requests to the web server 54 At the application layer • Two modes of interaction: – Client-server • the application-layer subroutine at the server is different from that at the client – Peer-to-peer • the application-layer subroutines are the same at both end hosts 55 Client-server mode • The server only serves out files while the client only requests files; example: web server access 56 Courtesy: A. Tanenbaum & Prentice Hall Peer-to-peer mode • Both ends have the same implementation; example: telephony Courtesy: A. Tanenbaum & Prentice Hall 57 Outline • Outline • Contemporary networks • Networks: • from a simple single-link network to an internetwork • Tasks and Layers Mechanisms for each task • Protocols and Protocol reference models • Standards 58 Application layer: Source coding • Block-oriented – – • Text: ASCII (7bits for each character) and EBCDIC; extended ASCII uses 8 bits per character • Compression techniques: "the" "e" occur a lot • Fax of an 8" by 10" page with 400 by 400 pixels per sq. inch results in 38400000bytes if three bytes are used per pixel, one each to represent R, G, and B. Images: • • – Using 1MB = 220 bytes, this is equal to 36.62MB GIF: lossless compression JPEG: lossy compression Stream-oriented – Voice: PCM (Pulse Code Modulation); 8000 samples/sec; with 8 bits/sample, it results in 64kbps signal • – – Compression techniques: – – ADPCM Adaptive Differential Pulse Code Modulation - 32 kbps Residual excited linear predictive coding - 8-16 kbps Audio (music): needs 32-384kbps Video: • • • H.261 coding: 176 by 144 or 352 by 258 frames at 10-30 frame/sec Full motion MPEG-2 HDTV - 1920 by 1080 frames at 30 frames/sec (aspect ratio is important 16:9 vs. 4:3) 59 Metric Units 60 Memory vs. transmission rate Memory Expressed in Megabytes, Gigabytes, Terabytes Transmission rate kilobits/sec, Megabits/sec, Gigabits/sec With main memory or RAM capacity, gigabyte means 1073741824 bytes; To avoid confusion, let’s call this GibiBytes (see next slide) capitals for above 1 and small for below m: milli but M for Mega; kbps: small k is an exception 61 Multiples of bytes SI decimal prefixes Name Value (Symbol) 3 kilobyte (kB) 10 IEC binary prefixes Name Value (Symbol) 10 kibibyte (KiB) 2 megabyte (MB) 10 6 mebibyte (MiB) 2 20 gigabyte (GB) 10 9 gibibyte (GiB) 2 30 terabyte (TB) 10 12 tebibyte (TiB) 2 40 petabyte (PB) 10 15 pebibyte (PiB) 2 50 Exabyte (EB) 10 18 exbibyte (EiB) 2 60 SI: International System of units IEC: International Electrotechnical Commission source: http://en.wikipedia.org/wiki/Gibibyte 1-62 Physical layer • Properties of communication channels – Bandwidth – Amplitude response function – Phase shift function – Attenuation – Speed of light in the medium Shannon's channel capacity 63 Shannon’s channel capacity • Shannon's channel capacity, C: The maximum rate of a noisy channel whose bandwidth is H Hz is given by – C=H log2(1+S/N) bits/sec • S/N is the signal to noise fraction at the receiver – log2x = (log10x)/log102 • If 2y = x, take log10 of both sides – then y log102 = log10x. Units: The term log2(1+S/N) has a unit of bits, which can be seen in a derivation (not included in this course) of Shannon's equation. Therefore the unit of C is bits/sec, since the unit of H is Hz or /sec 64 Physical layer • Group of functions needed to move bits across a link: “communications” Data bits 1011000... Data bits 1011000... Channel (line) coding Channel (line) coding Modulator Channel Demodulator Channel (line) coding: is a method for converting a binary information sequence (1s and 0s) into a digital signal in a digital communications systems Modulation: is a method for carrying an information signal on a carrier signal 65 What are the components of physicallayer delay on a single link? • Physical-layer delay incurred in moving a data unit (file or packet) of size S bits across an error-free communication link – Propagation delay – Emission (transmission) delay DELAY = TIME Usage of the word: "I was delayed getting to the airport" implies that there was an expectation of the time needed to drive there and the speaker somehow got "delayed," perhaps due to heavy traffic. In networking, we use the term "delay" to represent the time taken to move the file. There is a component called "queuing delay" to represent additional delay incurred by having to wait. 66 Propagation delay • Propagation delay = L/v, where L is the length of the link and v is the speed of light in the physical medium (v) of the link hence the dependence on length of the link bit travels at the speed of light in the medium 1 bit propagation delay 67 Emission (transmission) delay • Emission (transmission) delay = S/r, where S is the size of the data unit being transmitted in bits, and r is the transmission rate in bits/sec 1 data unit of S bits: a file or packet Let’s say the link transmitter can emit out 10 million bits/sec; this is r, the transmission rate of the link. Hence the size of the data unit, S, and the transmitter rate, r, determine the emission delay emission (transmission) delay: time to emit (transmit) the data unit on to the link 68 Physical-layer delay to move a data unit of size S bits • Physical-layer delay = emission delay + propagation delay • Why do we not need to multiply propagation delay by the number of bits? 69 Packetization (AL) delay (only for streamed data) • Packetization delay is the time taken to create data for the payload of a packet – – – – Packetization delay = S/rcodec rcodec: codec rate; S = packet payload size Packet consists of Header and Payload Payload is the user-generated data • Example: ADPCM voice codec fills packets with a 32-byte payload size – what is the packetization delay to fill one packet payload? codec: coder/decoder 70 Examples of physical media • Types of media: – – – – Twisted pair Coaxial cable Optical fiber Wireless • Radio frequencies (RF) • Infra-red (IR) 71 Electromagnetic spectrum http://www.lbl.gov/MicroWorlds/ALSTool/EMSpec/EMSpec2.html 72 Layers in an unshared single-link network Tasks Layer Application-specific tasks, Application layer e.g. email, web Error control and flow control Send/receive data bits Data-link layer (DLL) Physical layer (PHY) 73 Data link layer: Error control • Error detection – Parity check – Cyclic Redundancy Code (CRC) or polynomial codes • Error correction – Automatic Repeat reQuest (ARQ) – Forward Error Correction (FEC) 74 Error correction: Different ARQ schemes • Stop-and-Wait • Sliding window – Go-Back N – Selective repeat 75 ARQ error/loss detection and recovery • • • • Send a frame Hold frame in a retransmission buffer at the sender so that if there is a loss/error, the frame can be resent Wait for Acknowledgment (ACK) from receiver If a received frame had errors, the receiver detects the presence of errors using CRC, and then sends a notification – sender resends errored frame • • But what happens if the frame itself was lost or the receiver's notification of an error is lost? Solution: – Start a timer at the sender upon sending a frame – If timer times out before ACK arrives, retransmit frame 76 Flow control problem Host Rsnd Switch or host Data units Data-link layer (DLL) T Receive buffer Rrcv Data-link layer (DLL) H T Physical layer • • H T transmission rate: r Physical layer Rates of the transmitter and receiver at the physical layer are matched. The flow control problem arises because the layer above the DLL at the receiver does not deplete the buffer at the same rate at which data is being passed to the DLL at the sender (Rsnd Rrcv) H 77 Different rates • Rsnd: Rate at which the higher layer passes data to the DLL at the sender • Rrcv: Rate at which the higher layer removes data from the DLL buffer at the receiver • r: physical-layer transmission rate 78 Techniques for flow control • Flow control mechanisms prevent buffer overflow by regulating the rate at which source is allowed to send information – – – – Stop-and-wait flow control ON-OFF flow control Sliding window flow control Rate based flow control (skip for this class) 79 Layers in an shared single-link network Tasks Layer Application-specific tasks, e.g. email, web Application layer Error control, flow control, Data-link layer and multiplexing/MAC (with MAC sublayer) Send/receive data bits Physical layer (PHY) 80 MAC • MAC: Medium Access Control or Media Access Control – Set of functions to support the sharing of a single link by multiple endpoints • MAC vs. Multiplexing – The term "MAC" is used to describe sharing techniques on multi-access links – The term "multiplexing" is used to describe sharing techniques on point-to-point links 81 Types of links • Multi-access links – Typically used to connect multiple hosts to a switch – Cheaper than point-to-point links Host Host – Mostly used in wireless networks – Sometimes in wired networks through hub • Point-to-point links Host Switch ...... Host Host Switch – Typically used between switches – Increasing typical between hosts and switches in wired networks Host 82 Classification of Multiplexing/MAC techniques Multiplexing/MAC techniques Circuit-based multiplexing Position based: • space (reuse: cellular) • time • frequency Each multiplexed data stream occupies a different position Packet-based multiplexing Packet header based: • header carries destination address Each multiplexed data stream consists of packets with headers carrying corresponding destination addresses 83 Packet-based multiplexing • For point-to-point links – Scheduling techniques • For multi-access links – Random access schemes 84 Examples Multiplexing/MAC schemes Types of links Multi-access wireless link Circuit-based multiplexing Cellular (FDMA/TDMA) Multi-access wired link Packet-based multiplexing IEEE 802.11 (WiFi) Ethernet hub Point-to-point switch-toswitch link PDH, SONET, WDM Ethernet switch Point-to-point endpoint-toswitch link Plain Old Telephone Service (POTS) (space division multiplexing) Ethernet link Phone links from residences carry only one phone call and hence it is space-division multiplexing; DSL: new technology for multiplexing data with voice 85 Layers in a multiple-link network Tasks Layer Application-specific tasks, e.g. email, web Application layer End-to-end error control and flow control Transport layer Switching Network layer Error control, flow control, multiplexing/MAC Data-link layer (with MAC sublayer) Send/receive data bits Physical layer 86 Generic switch architecture (circuit or packet) • Controller Line cards – – P Line card Line card 2 Line card 3 Line card Line card Input ports Line card • Space switch – • … 1 … … 3 Line card Space switch 2 Line card … 1 P Packet switch: header based mux/demux Circuit switch: position based mux/demux Crossbar, Clos Controller – Processor: routing protocols and signaling protocols Data path Control path Output ports 87 Types of switches Line card Circuit-switch (CS) (multiplexing) (position-based) Packet-switch (PS) (header-based) Controller (admission control or not) Connectionless (CL) (no admission control) Connection-oriented (CO) (admission control) e.g., datagram: IP routers; Ethernet switches e.g., telephone network circuit switches, SONET switches Virtual-circuit switches: MPLS • Routing: Required in controller for all three types of switches • Signaling: Admission control – hence required only for connectionoriented switches (not included in this course) 88 A network of connectionless packet switches • Control path – Switch controllers exchange routing information and create forwarding tables • Data path – Packets carrying user data and destination addresses in headers are switched from input link to appropriate output link based on forwarding table entry for destination address 89 Layers in a multiple-link network Tasks Layer Application-specific tasks, e.g. email, web Application layer End-to-end error control and flow control Transport layer Switching Network layer Error control, flow control, multiplexing/MAC Data-link layer (with MAC sublayer) Send/receive data bits Physical layer Mechanisms considered under DLL 90 Other functions of transport protocols • Transport protocols include functions that augment the services offered by underlying network layers – port-multiplexing to carry data from many processes at the end hosts – if network layer is connectionless packet switched • transport layer may include congestion control to handle losses in switch buffers 91 Status check • Outline • Contemporary networks • Networks: • from a simple single-link network to an internetwork • Tasks and Layers • Mechanisms for each task Protocols and Protocol reference models • Standards 92 What’s a protocol? human protocols: “what’s the time?” “I have a question” introductions … specific msgs sent … specific actions taken when msgs received, or other events network protocols: machines rather than humans all communication activity in Internet governed by protocols protocols define format, order of msgs sent and received among network entities, and actions taken on msg transmission, receipt Kurose and Ross 93 What’s a protocol? a human protocol a computer network protocol Hi TCP connection request Hi TCP connection response Got the time? Get http://www.awl.com/kurose-ross 2:00 <file> time Kurose and Ross 94 Example of a protocol Host Switch or host Packet (110010100...) Packet (110010100...) Data-link layer (layer 2) Adds parity Packet (110010100...) Physical layer (layer 1) • • Parity Checks parity Data-link layer (layer 2) Packet (110010100...) Parity Physical layer (layer 1) Parity bit added in data-link layer trailer for error detection Protocol: (1) parity bit is added (2) sent at end (3) even or odd? – – Agreement on these aspects is required at the data-link layer implementations at the two ends: sending and receiving these rules constitute the data-link layer protocol 95 Layers, protocols, and interfaces Application layer Transport layer Network layer Data-link layer Physical layer 96 Courtesy: A. Tanenbaum & Prentice Hall source message segment M Ht M datagram Hn Ht M frame Hl Hn Ht M application transport network link physical Encapsulation link physical switch destination M Ht M Hn Ht Hl Hn Ht M M application transport network link physical Hn Ht Hl Hn Ht M M network link physical Hn Ht M router Kurose and Ross 97 Service: interface between layers 98 Courtesy: A. Tanenbaum & Prentice Hall What is a protocol reference model? • A grouping of layers • Recall that we defined a layer as a grouping of tasks. 99 Two protocol reference models • OSI (Open Systems Interconnection) reference model – has two more layers, presentation and session • The TCP/IP reference model – Used in the Internet 100 OSI protocol reference model (lists tasks for layers) • Application layer: • Presentation layer: • Session layer: • Transport layer: • Network layer: • Data link layer: • Physical layer: – Implements some application involving communications – – Allow applications to interpret meaning of data Examples: e.g., encryption, compression, machine-specific conventions (Endian) – – – Dialog control (track whose turn it is to send) Token management (avoid same critical operation at the same time) Synchronization (checkpoint long transmissions and continue after a crash) – End-to-end error control, flow control – Switching – – Error control, flow control Additionally for shared links: multiplexing/MAC – Transmitting and receiving data bits over a communication link 101 TCP/IP Protocol Stack (Protocols in each layer) • Application layer protocols: • Transport layer protocols: • IP (Internet Protocol): • Link-layer/Physical-layer protocols: – web: Mozilla client; Apache server; http (hypertext transfer protocol) – email: Outlook client; mail server; smtp (simple mail transfer protocol) – file transfers: SecureFX client; SFTP server; ftp (file transfer protocol) – remote login: telnet, SecureCRT – TCP (Transmission Control Protocol) – UDP (User Datagram Protocol) – RTP (Real-time Transfer Protocol) – IP (Internet Protocol) – Provides packet forwarding between networks – all the protocol layers necessary for communication across a specific network 102 Layers in the TCP/IP model Application Layer TCP (Layer 4) IP (Layer 3) Layer 2 + Layer 1 (industry) This usage of the term “Layer 2” for anything below IP layer has led to industry usage of the term “Layer 2 switch” to describe a switch within a subnetwork, e.g., Ethernet switch 103 Status check • Outline • Contemporary networks • Networks: • from a simple single-link network to an internetwork • Tasks and Layers • Mechanisms for each task • Protocols and Protocol reference models Standards 104 Standards • IETF: Internet Engineering Task Force http://www.ietf.org • ITU-T: International Telecommunications Union – Telecommunications (part of the United Nations) • ANSI: American National Standards Institute • IEEE: Institute of Electrical and Electronics Engineers 105 Role of standards bodies • To define protocol specifications, which includes – message formats – parameter formats • Goal: allow protocol implementations from two different vendors to communicate – analogy: two people speaking the same language have to obey the rules of the language • To allow for product differentiation – implementation details are not standardized 106 IEEE 802 Standards The 802 working groups. The important ones are marked with *. The ones marked with are hibernating. The one marked with † was given up. 107 Courtesy: A. Tanenbaum & Prentice Hall Summary • Key points of this lesson: – List the various tasks required for different communication instances (across a unshared single link, shared single link, across a multiple-link path via a switch) – How are these tasks grouped into layers? – List two modes used in application-layer implementations – List mechanisms for each task type – What is the purpose of protocols? Why is a protocol needed for each layer? – What are the two main protocol reference models? – Name the main standards bodies. Why are standards bodies important in this field? 108