Download presentation
Presentation is loading. Please wait.
Published byDerick Harrington Modified over 9 years ago
1
CSS 432 1 CSS432 Point-to-Point Links Textbook Ch2.1.2 – 2.5 Professor: Munehiro Fukuda
2
CSS 432 2 Basic Knowledge about Links Full-duplex versus Half-duplex Full Half Local cable types Category 5 twisted pair Coax Multimode fiber LED-based, 2km Single-mode fiber laser-diode-based, 40km Carrier-supported cables/fibers DS1 (T1): 1.544Mbps, 24-digital voice circuits of 64 Kbps each DS3 (T3): 44.736Mbps, 28 DS1 links STS-1 (OC-1): Synchronous Transport signal, the base link speed= 51.840Mbps STS-3, 12, 48, 192 (OC-3, OC-12, OC-48, OC-192) at time t at time u
3
CSS 432 3 Basic Knowledge (Cont’d) Last-Mile Links POTS: Plain Old Telephone Service ISDN: Integrated Services Digital Network ADSL: Asynchronous Digital Subscriber Line VDSL: Very high data rate Digital Subscriber Line Wireless Links AMPS, PCS, GSM: Wide-area analog/digital-based mobile phone services IEEE 802.11: wireless LAN with up to 54Mbps transfer rate BlueTooth radio interface: 1Mpbs piconet in 10m CODEC Voice line 28.8~56Kbps Digital line 64-128Kbps 1.554-8.448Mbps 16-640Kbps STS-N 12.96~ 55.2Mbps
4
CSS 432 4 Focusing on ADSL To telephone switch Residence A Residence B 255 frequencies for downstream 31 use for upsreams 2 taken for control Long distance Preparing 286 frequencies and agreeing at the available frequencies between two modems Fitting to most usages where a user tends to retrieve Internet information.
5
CSS 432 5 Encoding Signals propagate over a physical medium modulate electromagnetic waves e.g., vary voltage Encode binary data onto signals e.g., 0 as low signal and 1 as high signal known as Non-Return to zero (NRZ) Consecutive 1s and 0s Baseline wander: if the receiver averages signals to decide a threshold Clock recovery: both sides must be strictly synchronized Bits NRZ 0010111101000010
6
CSS 432 6 Alternative Encodings Non-return to Zero Inverted (NRZI) Encode 1: make a transition from current signal Encode 0: stay at current signal to encode a zero solves the problem of consecutive 1s Signal flips every 1 is encountered. Manchester Transmit XOR of the NRZ encoded data and the clock Only 50% efficient. Used by Ethernet/Token Ring 0 1
7
CSS 432 7 4B/5B Encoding Every 4 bits of data encoded in a 5-bit code 5-bit codes selected to have no more than one leading 0 no more than two trailing 0s See textbook Table 2.4 on page 79 Thus, never get more than three consecutive 0s Resulting 5-bit codes are transmitted using NRZI Achieves 80% efficiency Because 5 th bit is redundant. Used by FDDI 01??? but not 001?? ??100 but not ?1000
8
CSS 432 8 Encoding Example Bits NRZ Clock Manchester NRZI 0010111101000010
9
CSS 432 9 Framing Break sequence of bits into a frame Typically implemented by a network adaptor Frame Bits Adaptor Node BNode A
10
CSS 432 10 Approaches HeaderBody 816 8 CRC Beginning sequence Ending sequence Sentinel-based delineate frame with special pattern: 01111110 e.g., HDLC, SDLC, PPP problem: ending sequence appears in the payload solution: bit stuffing sender: insert 0 after five consecutive 1s receiver: delete 0 that follows five consecutive 1s Counter-based include payload length in header e.g., DDCMP Frame error problem: count field corrupted (frame error) solution: Wait for the next beginning sequence Catch when CRC fails
11
CSS 432 11 Approaches (cont) Clock-based each frame is 125us long e.g., SONET: Synchronous Optical Network STS-n (STS-1 = 51.84 Mbps ) Interleaved every byte: keep 51Mbps for each STS-1
12
CSS 432 12 Error Detections Add k bits of redundant data to an n-bit message want k << n (i.e. k is extremely small as compared to n) e.g., k = 32 and n = 12,000 (1500 bytes) in CRC-32 Parity Bit Internet Checksum Algorithm Cyclic Redundancy Check
13
CSS 432 13 Parity Odd parity Even parity Two-dimensional parity 0101001 1 1101001 0 1011110 1 0001110 1 0110100 1 1011111 0 1111011 0 Parity bits Parity byte Data
14
CSS 432 14 Internet Checksum Algorithm View message as a sequence of 16-bit integers; Convert each 16-bit integer into a ones-complement arithmetic Sum up each integer Increment the result upon a carryout Example: u_short cksum(u_short *buf, int count) { register u_long sum = 0; while (count--) { sum += *buf++; if (sum & 0xFFFF0000) { // carry occurred, so wrap around sum &= 0xFFFF; sum++; } return ~(sum & 0xFFFF); } 5: 0 00000000 00000101 3: 0 00000000 00000011 -5: 0 11111111 11111010 -3: 0 11111111 11111100 -5 + (-3): 1 11111111 11110110 w/ carry: 0 11111111 11110111 This corresponds to -8 Ones-complement message What if 5 and 3 were changed In 6 and 2 ?
15
CSS 432 15 Cyclic Redundancy Check Represent n-bit message as n-1 degree polynomial e.g., MSG=10011010 as M(x) = x 7 + x 4 + x 3 + x 1 Let k be the degree of some divisor polynomial e.g., C(x) = x 3 + x 2 + 1 sender receive r M(x)2 k – M(x) 2 k % C(x) = C(x)-divisible message: P(x) If P(x) % C(x) == 0 P(x) was sent successfully
16
CSS 432 16 CRC (cont) Sender polynomial M(x) M(x) = 10011010, C(x) = 1101, thus k = 3 M(x)2 3 = 10011010000 (<< 3) M(x)2 3 % C(x) = 101 M(x)2 3 – M(x)2 3 % C(x) = 10011010101 = P(x) Noise polynomial E(x) Receiver polynomial P(x) + E(x) E(x) = 0 implies no errors (P(x) + E(x)) % C(x) == 0 if: E(x) was zero (no error), or E(x) is exactly divisible by C(x) To retrieve M(x): P(x) + 101 / 2 3, (truncate the last 3 bits) Just appended The last 3 bits of P(x) 10011010000 eor 1101 1001 eor 1101 1000 eor 1101 1011 eor 1101 1100 eor 1101 1000 eor 1101 101
17
CSS 432 17 CRC Calculation Using Shift Register sender receive r M(x) CRC CRC + M(x) M(x) CRC’ If CRC == CRC’, no errors 000 01011001 x0x0 x1x1 x2x2 x0x0 x1x1 x2x2 0 0 0 000 0101100 1 0 0 000 010110 0 1 0 000 01011 0 0 1 000 0101 0 0 1 000 010 0 0 1 000 01 1 0 1 000 0 0 1 1 Example: M(x) = 10011010 C(x) = 1101 1 0 0 0 1 0 0 0 1 1 0 1 000 00 0 101 will be transferred.
18
CSS 432 18 Acknowledgements & Timeouts Receiver can’t distinguish if the 1 st and 2 nd frames are identical
19
CSS 432 19 Stop-and-Wait Stop a transmission and wait for ack to return or timeout Add 1-bit sequence number to detect a duplication of the same frame Problem: Can’t utilize the link’s capacity Example 1.5Mbps link x 45ms RTT = 67.5Kb (8KB) If the frame size is 1KB and the sender waits for 45ms RTT 1KB for 45ms RTT 1/8th link utilization SenderReceiver Frame 0 Frame 1 Frame 0 Ack 0 Ack 1
20
CSS 432 20 Sliding Window Allow multiple outstanding (un-ACKed) frames Upper bound on un-ACKed frames, called window SenderReceiver T ime … …
21
CSS 432 21 SW: Sender Assign sequence number to each frame ( SeqNum ) Maintain three state variables: Send window size ( SWS ) Last acknowledgment received ( LAR ) Last frame sent ( LFS ) Maintain invariant: LFS - LAR <= SWS Advance LAR when ACK arrives Buffer/Back up to SWS frames for future retransmission SWS LARLFS ……
22
CSS 432 22 SW: Receiver Maintain three state variables Receive window size ( RWS ) Largest frame acceptable ( LFA ) Last frame received ( LFR ) Maintain invariant: LFA - LFR <= RWS Frame SeqNum arrives: if LFR < SeqNum < = LFA accept if SeqNum LFA discarded Send cumulative ACKs RWS LFRLFRLFA …… Send a comulativeAck discard
23
CSS 432 23 Sequence Number Space SeqNum field is finite; sequence numbers wrap around Sequence number space must be larger than # outstanding frames SWS <= MaxSeqNum-1 is not sufficient suppose 3-bit SeqNum field (0..7) SWS=RWS=7 sender transmit frames 0..6 arrive successfully, but ACKs lost sender retransmits 0..6 receiver expecting 7, 0..5, but receives second incarnation of 0..5 SWS < (MaxSeqNum+1)/2 is a correct rule Intuitively, SeqNum “slides” between two halves of sequence number space
24
CSS 432 24 Reviews Encoding (NRZ, NRZI, Manchester, and 4B/5B) Framing (Sentinel and counter-based) Error Detections (Parity, Internet checksum, and CRC) Stop-and-wait Sliding window Exercises in Chapter 2 Ex. 2 and 5 (4B/5B, NRZI, and bit stuffing) Ex. 16 (Internet Checksum) Ex. 18 (CRC) Ex. 24 (Sliding Window: Apply Ex. 25’s cases (a) and (b) to Ex. 24)
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.