Download presentation

Presentation is loading. Please wait.

Published byKelvin Hankerson Modified over 4 years ago

1
COS 461 Fall 1997 Data Link Layer u Today: LANs other than Ethernet –token rings –switched networks –cellular technology u remaining issues –error detection –reliable transmission

2
COS 461 Fall 1997 Token Rings u example: FDDI u nodes arranged in ring u all frames travel around the ring in the same direction u ring acts like broadcast medium –all nodes see all frames –need algorithm to decide when to transmit

3
COS 461 Fall 1997 The Token u special token frame circulates on ring u must grab the token before sending u to send a frame –remove token from circulation –send data frame –(some token rings: wait for acknowledgement to come back) –re-inject token

4
COS 461 Fall 1997 Token Ring Evaluation u unlike Ethernet, can operate at full capacity u but: –more expensive –have to wait for token before sending, even if network is idle –adding a host hurts performance, even if that host is silent –trickery required to recover from corrupted token

5
COS 461 Fall 1997 Switched LANs u example: Myrinet u point-to-point links connected with switching hardware u advantages –total bandwidth scales as hosts are added –cookie-cutter approach

6
COS 461 Fall 1997 Switched LANs

7
COS 461 Fall 1997 Myrinet Details u arbitrary topology u hosts map the network initially –remap periodically (soft state) u source routing: sender determines path through network –path encoded in header u built from 8-way or 16-way switches

8
COS 461 Fall 1997 Myrinet vs. Alternatives u performs well –same as 1 Gb/sec Ethernet, which is newer u tolerant of configuration changes –like 10BaseT –unlike others u moderate cost –more than Ethernet u great for researchers –programmable adaptor

9
COS 461 Fall 1997 Error Detection u Internet checksum –weak, but simple to code u CRC –based on nontrivial math –strong –easy to build in hardware

10
COS 461 Fall 1997 Internet Checksum u complement of the ones-complement sum u Misses some common errors –rearranged words –complementary errors in consecutive words short checksum(short buf[]){ int sum = 0; for(int i=0; i<buf.length; ++i){ sum += buf[i]; if(sum & 0xffff0000){ sum &= 0xffff; ++sum; } return ~(sum & 0xffff); }

11
COS 461 Fall 1997 CRC (Cyclic Redundancy Code) u based on polynomial math, modulo 2 –addition = exclusive-or (modulo 2) u think of a bit-string as representing a polynomial –ith bit is on ==> x i term in polynomial u pick a magic polynomial C(x) u transmit a bit-string (polynomial) that is divisible by C(x)

12
COS 461 Fall 1997 CRC u to make a polynomial divisible by C(x) –let k = degree of C(x) –multiply message by x k to get Q(x) –compute the remainder Q(x) % C(x) –P(x) = Q(x) - (Q(x) % C(x)) message remainder

13
COS 461 Fall 1997 CRC u sender transmits P(x) u receiver verifies result is divisible by C(x) –if not, message was corrupted u strength depends on properties of C(x) –popular values of C(x) »CRC-8: x 8 +x 2 +x+1 »CRC-16: x 16 +x 15 +x 2 +1 »CRC-32: x 32 +x 26 +x 23 +x 16 +x 12 +x 11 +x 10 +x 8 +x 7 +x 5 +x 4 +x 2 +x+1

14
COS 461 Fall 1997 Computing CRC in Hardware u compute remainder incrementally –start with zero –grow message one bit at a time –to shift in a bit: »multiply polynomial by x (left shift) »add one if shifted-in bit is one (bit flip) »take remainder mod C(x) u after tricks, boils down to one AND and one XOR per bit

15
COS 461 Fall 1997 Reliable Transmission u build reliable communication on top of unreliable u acknowledgement, timeout, retransmission u known as ARQ (Automatic Repeat reQuest) –lousy acronym, and a misnomer u will discuss three variants of ARQ

16
COS 461 Fall 1997 Stop-and-Wait u dont send a packet to a host until it has acknowledged the previous packet –covered in first lecture –recall: use one-bit sequence number on packets –implemented in Assignment 1 u advantage: simple u disadvantage: poor use of bandwidth –especially if hosts are far apart

17
COS 461 Fall 1997 Efficiency of Stop-and-Wait u assume –packet size = S (bytes) –network bandwidth = B (bytes/second) –delay between hosts = D (seconds) u time per packet is T = 2D + S/B effective bandwidth = S T = 1 + 2BD S B

18
COS 461 Fall 1997 Bandwidth-Delay Product u says how much data could be in transit at any moment u for maximum efficiency, want to have this much data in transit u keep the pipe full u better ARQ variants fill the pipe u in practice, often hard to figure out the bandwidth-delay product –adaptive algorithms

19
COS 461 Fall 1997 Improving Stop-and-Wait u run several stop-and-wait protocols at once between a pair of hosts –logical channels u use them in round-robin fashion u packet (or ack) header says which channel the packet belongs to u number of logical channels chosen big enough to fill the pipe

20
COS 461 Fall 1997 u with C logical channels, effective bandwidth is u by making C big enough, can use available bandwidth fully Performance 1 + 2BD CS B

21
COS 461 Fall 1997 Sliding Window u extend stop-and-wait to allow multiple unacknowledged packets to be outstanding –limited number: window size W u give each packet a sequence number –ack carries sequence number u sender must have space to buffer W packets u equivalent to logical channels –harder to understand, but more often discussed

22
COS 461 Fall 1997 Sliding-Window Details u sequence numbers must be large enough to represent 2W distinct values –note: logical channel used lg(W) bits to identify channel, plus 1-bit sequence number u different ways to deal with reordering, dropping –receiver can ignore (simple) –receiver can remember (efficient)

Similar presentations

OK

CMPE 150- Introduction to Computer Networks 1 CMPE 150 Fall 2005 Lecture 13 Introduction to Computer Networks.

CMPE 150- Introduction to Computer Networks 1 CMPE 150 Fall 2005 Lecture 13 Introduction to Computer Networks.

© 2018 SlidePlayer.com Inc.

All rights reserved.

To make this website work, we log user data and share it with processors. To use this website, you must agree to our Privacy Policy, including cookie policy.

Ads by Google