Presentation is loading. Please wait.

Presentation is loading. Please wait.

CS 457 – Lecture 3 Link Layer Protocols Fall 2011.

Similar presentations


Presentation on theme: "CS 457 – Lecture 3 Link Layer Protocols Fall 2011."— Presentation transcript:

1 CS 457 – Lecture 3 Link Layer Protocols Fall 2011

2 The Internet Hourglass Design [Deering98] Application Layer Protocol Layer Transport Layer Network Layer Link Layer Data Communication Physical Layer

3 Topics Link-layer services –Encoding, framing, and error detection –Error correction and flow control –Forms necessary background Reliable Transmission –First look at an essential part of networking Ethernet, WiFi, Cellular –How to share a transmission medium –Carrier sense, collision detection, and random access

4 Message, Segment, Packet, & Frame HTTP TCP IP Ethernet interface HTTP TCP IP Ethernet interface IP Ethernet interface Ethernet interface SONET interface SONET interface host router HTTP message TCP segment IP packet Ethernet frame SONET frame WE ARE HERE IN THE LAYERS

5 Adaptors Communicating Link layer implemented in adaptor (network interface card) –Ethernet card, PCMCIA card, 802.11 card Sending side: –Encapsulates datagram in a frame –Adds error checking bits, flow control, etc. Receiving side –Looks for errors, flow control, etc. –Extracts datagram and passes to receiving node sending node frame receiving node datagram frame adapter link layer protocol

6 Point to Point Data Links One sender, One receiver, One link: easier than broadcast link: –no Media Access Control –no need for explicit MAC addressing –e.g., dialup link, ISDN line Popular Point-to-Point DLC protocols: –PPP (point-to-point protocol) –HDLC: High level data link control

7 PPP Design Requirements [RFC 1557] Packet framing: encapsulation of network- layer datagram in data link frame –carry network layer data of any network layer protocol (not just IP) at same time –ability to demultiplex upwards Bit transparency: must carry any bit pattern in the data field Error detection (no correction) Connection liveness: detect, signal link failure to network layer Network layer address negotiation: endpoint can learn/configure each other’s network address

8 PPP non-requirements No error correction/recovery No flow control Out of order delivery OK No need to support multipoint links (e.g., polling) Error recovery, flow control, data re-ordering all relegated to higher layers!

9 PPP Data Frame Flag: delimiter (framing) Address: does nothing (only one option) Control: does nothing; in the future possible multiple control fields Protocol: upper layer protocol to which frame delivered (eg, PPP-LCP, IP, IPCP, etc)

10 PPP Data Frame info: upper layer data being carried check: cyclic redundancy check for error detection

11 Ethernet Frame Structure Sending adapter encapsulates packet in frame Preamble: synchronization –Seven bytes with pattern 10101010, followed by one byte with pattern 10101011 –Used to synchronize receiver, sender clock rates

12 Ethernet Frame Structure (Cont.) Addresses: source and destination MAC addresses –Adaptor passes frame to network-level protocol If destination address matches the adaptor Or the destination address is the broadcast address –Otherwise, adapter discards frame Type: indicates the higher layer protocol –Usually IP –But also Novell IPX, AppleTalk, … CRC: cyclic redundancy check –Checked at receiver –If error is detected, the frame is simply dropped

13 Encoding Bits Simple idea of “high” for 1 and low for 0 –Say 1 usec per bit. Sender sends 4 bits with 4 usec “high” –Receiver sees 4.6 usec of “high”…. Was that 4 or 5 bits? Allows clocks in sending and receiving nodes to synchronize to each other –no need for a centralized, global clock among nodes! Physical-layer stuff for Electrical Engineers!

14 Error Detection EDC= Error Detection and Correction bits (redundancy) D = Data protected by error checking, may include header fields Error detection not 100% reliable! protocol may miss some errors, but rarely larger EDC field yields better detection and correction

15 Parity Checking Single Bit Parity: Detect single bit errors Two Dimensional Bit Parity: Detect and correct single bit errors 0 0

16 Internet Checksum Sender: treat segment contents as sequence of 16-bit integers checksum: addition (1’s complement sum) of segment contents sender puts checksum value into UDP checksum field Receiver: compute checksum of received segment check if computed checksum equals checksum field value: –NO - error detected –YES - no error detected. But maybe errors nonetheless? More later …. Goal: detect “errors” (e.g., flipped bits) in transmitted segment

17 Checksumming: Cyclic Redundancy Check view data bits D as a polynomial choose r+1 polynomial C goal: choose r CRC bits, R, such that – exactly divisible by C (modulo 2) –receiver knows C, divides by C. If non-zero remainder: error detected! –can detect all burst errors less than r+1 bits widely used in practice (ATM, HDCL)

18 Reliable Transfer Fundamental Networking Topic Most important topic thus far in this course Frames may be lost or corrupted –Encoding failures where clocks get out of sync –Error detection reports packet is corrupted –And a vast number of other reasons…. Can we build link so it appears reliable? –Build link so errors never occur?? not feasible –Add error correction to frames? requires lots of additional overhead bytes for each frame doesn’t help if entire frame lost (e.g. clock sync error)

19 Stop and Wait (first attempt… has an error) Sender writes frame onto wire and sets a timeout to wait for an ACK –Sender now “stops” and “waits” for the ACK Upon receiving a packet, receiver sends an ACK Sender Will Either 1) receive an ACK and can send next frame 2) times out and receives the “lost” frame

20 Reasons for Retransmission Packet ACK Timeout Packet ACK Timeout Packet Timeout Packet ACK Timeout Packet ACK Timeout Packet ACK Timeout ACK lost DUPLICATE PACKET Packet lost Early timeout DUPLICATE PACKETS


Download ppt "CS 457 – Lecture 3 Link Layer Protocols Fall 2011."

Similar presentations


Ads by Google