Presentation is loading. Please wait.

Presentation is loading. Please wait.

Lecture 3#1#1 Chapter 3 Hubs, Bridges and Switches.

Similar presentations

Presentation on theme: "Lecture 3#1#1 Chapter 3 Hubs, Bridges and Switches."— Presentation transcript:

1 Lecture 3#1#1 Chapter 3 Hubs, Bridges and Switches

2 Lecture 3#2#2 Interconnecting LANs Q: Why not just one big LAN?  Limited amount of supportable traffic: on single LAN, all stations must share bandwidth  Ethernet: limited length: 802.3 specifies maximum cable length  Ethernet: large “collision domain” (can collide with many stations)  Token Ring: token passing delay per station: 802.5 limits number of stations per LAN:

3 Lecture 3#3#3 Hubs  Physical Layer devices: essentially repeaters operating at bit levels: repeat bits received on one interface to all other interfaces  Hubs can be arranged in a hierarchy (or multi-tier design), with backbone hub at its top

4 Lecture 3#4#4 Hubs (more)  Each connected LAN referred to as LAN segment  Hubs do not isolate collision domains: node may collide with any node residing at any segment in LAN  Hub Advantages: m simple, inexpensive device m Multi-tier provides graceful degradation: portions of the LAN continue to operate if one hub malfunctions m extends maximum distance between node pairs (100m per Hub)

5 Lecture 3#5#5 Hub limitations  single collision domain results in no increase in max throughput m multi-tier throughput same as single segment throughput  individual LAN restrictions pose limits on number of nodes in same collision domain and on total allowed geographical coverage  cannot connect different Ethernet types (e.g., 10BaseT and 100baseT) Why?

6 Lecture 3#6#6 Bridges  Link Layer devices: forward Ethernet frames selectively: m learn where each station is located m examine the header of each frame m forward on the proper link (if known) if dest. and source on same link, drop frame WHY? m if not known where dest. is, broadcast frame except on originating link, of course

7 Lecture 3#7#7 Bridges  Bridge isolates collision domains m buffers frame m then forwards it, if needed, using CSMA/CD  A broadcast frame is forwarded on all interfaces (except the incoming one) m thus broadcast frames propagate across brodges  A set of segments connected by bridges and hubs is called a broadcast domain

8 Lecture 3#8#8 Bridges (more)  Bridge advantages: m Isolates collision domains resulting in higher total max throughput, and does not limit the number of nodes nor geographical coverage m Can connect different type Ethernet since it is a store and forward device m Transparent: no need for any change to hosts LAN adapters

9 Lecture 3#9#9 Backbone Bridge

10 Lecture 3#10 Interconnection Without Backbone  Not recommended for two reasons: - single point of failure at Computer Science hub - all traffic between EE and SE must path over CS segment

11 Lecture 3#11 Bridges: frame filtering, forwarding  bridges filter packets m same-LAN -segment frames not forwarded onto other LAN segments  forwarding: m how to know on which LAN segment to forward frame?

12 Lecture 3#12 Bridge Filtering  bridges learn which hosts can be reached through which interfaces: maintain filtering tables m when frame received, bridge “learns” location of sender: incoming LAN segment m records sender location in filtering table  filtering table entry: m (Node LAN Address, Bridge Interface, Time Stamp) m stale entries in Filtering Table dropped (TTL can be 60 minutes)

13 Lecture 3#13 Bridge Operation pseudocode Init: set filtering table to void Case: frame arrives on port P, src MAC , dest MAC  /* Table Update stage */ if  not listed, add mapping   P with expiration time else update expiration time /* if listing fits */ /* Frame Forwarding stage */ look up  in filtering table: listing P  Q /* if listed */ if  not listed, forward on all ports except P /* “flood */ if  = P, drop the frame /*frame already there*/ /* WHY ? */ Otherwise, forward the frame on port Q

14 Lecture 3#14 Bridge Learning: example Suppose C sends frame to D and D replies back with frame to C  C sends frame, bridge has no info about D, so floods to both LANs 2 and 3 m bridge notes that C is on port 1 m frame ignored on upper LAN m frame received by D

15 Lecture 3#15 Bridge Learning: example  D generates reply to C, sends it m bridge sees frame from D m bridge notes that D is on interface 2 m bridge knows C on interface 1, so selectively forwards frame out via interface 1 only C 1

16 Lecture 3#16 What will happen with loops? Incorrect learning A B 1 1 2 2 A, 1 2 2

17 Lecture 3#17 What will happen with loops? Frame looping A C 1 1 2 2 C,?? … …

18 Lecture 3#18 Loop-free: tree A B C A message from A will mark A’s location

19 Lecture 3#19 Loop-free: tree A B C A message from A will mark A’s location A: 

20 Lecture 3#20 Loop-free: tree A B C A:  A message from A will mark A’s location

21 Lecture 3#21 Loop-free: tree A B C A:  A:  A:  A:  A message from A will mark A’s location

22 Lecture 3#22 Loop-free: tree A B C A:  A:  A:  A:  A message from A will mark A’s location

23 Lecture 3#23 Loop-free: tree A B C A:  A:  A:  So a message to A will go by marks… A message from A will mark A’s location

24 Lecture 3#24 Bridges-Spanning Tree  for increased reliability, it is desirable to have redundant, alternative paths from source to dest  this causes cycles - bridges may multiply and forward frame forever  solution: organize bridges in a spanning tree and disable all ports not aligned with the tree Disabled

25 Lecture 3#25 Introducing Spanning Tree  Objective: Find tree spanning all LAN segments m each bridge transmits on a single port m each LAN transmits on a single bridge  Bridges run the Spanning Tree Protocol m Use a distributed algorithm m Result: select what ports (and bridges) should actively forward frames, and which should accept frames m bridges communicate using special configuration messages (BPDUs) to perform this selection BPDU = Bridge Protocol Data Unit  STP standardized in IEEE 802.1 D

26 Lecture 3#26 Method  Bridges communicate using special configuration messages (BPDUs)  BPDU = Bridge Protocol Data Unit  Each bridge sends periodically a BPDU to all its neighbors  BPDU contains: m ID of bridge sender views as root (my_root_ID) m known distance to that root  senders own bridge ID

27 Lecture 3#27 Overview of STP We solve in order: 1. How to agree on a root bridge? 2. How to compute a ST of bridges? 3. How to compute a ST LAN segments?

28 Lecture 3#28 1. Choosing a root bridge  Assume m each bridge has a unique identifier (ID) m within a bridge each port has a unique ID  Each bridge remembers smallest bridge ID seen so far (= my_root_ID) m including own ID  Periodically, send my_root_ID to all neighbors (“flooding”) (included in BPDU)  When receiving ID, update if necessary  Qn: Is that enough?!

29 Lecture 3#29 2. Compute ST given a root Idea: each node finds its shortest path to the root  shortest paths tree Output: At each node, parent pointer (and distance) How: Bellman-Ford algorithm

30 Lecture 3#30 Distributed Bellman-Ford Assumption: There is a unique root node s m this was done in Step 1 Idea: Each node, periodically, tells all its neighbors what is its distance from s But how can they tell?  s : easy. dist s = 0 always!  Another node v :  Bridge calls the neighbor with least distance to root - its “parent”

31  Suppose all nodes start with distance , and suppose that updates are sent every time unit. 1 1 0 0 0 0 Lecture 3#31 Why does this work? C D B E F G A 0 1 1 1 1 3 2 2 B sees same distance from A and E; A chosen since has smaller ID  ID=17 ID=21 2 2

32 Lecture 3#32 Bellman-Ford: properties  Works for any non-negative link weights w(u,v) :  Works when the system operates asynchronously.  Works regardless of the initial distances!

33 Lecture 3#33 3. ST of LAN segments Assumption: given a ST of the bridges Idea: Each segment has at least one bridge attached. Only one of them should forward packets! m Choose bridge closest to root. Break ties by bridge ID (and then by port ID on that bridge if needed) Implementation: Bridges listen to all distance announcements on each port. Bridge A marks a port as a “designated port” iff A is the best bridge for that port’s LAN, i.e: m Its distance D to root is the shorter than all distances received on this port m Of all bridges with distance D reported on this port it has lowest ID m of several ports to same LAN on same bridge take low ID

34 Lecture 3#34 Spanning Tree Concepts: Path Cost  A cost is associated with each segment m = “weight” of the segment m = cost associated with transmission on the LAN segment connected to the port m bridge associates the weight with relevant port m default segment weight is 1 m Can be manually or automatically assigned m Can be used to alter the path to the root bridge  Path cost is the sum of the component segment weights

35 Lecture 3#35 Spanning Tree Concepts: Root Port  Each non-root bridge has a Root port: The port on the path towards the root bridge m = parent pointer  The root port is part of the lowest cost path towards the root bridge  If port costs are equal on a bridge, the port with the lowest ID becomes root port

36 Lecture 3#36 Example Spanning Tree B3 B5 B7 B2 B1 B6 B4 Protocol operation: 1.Pick a root 2.Each bridge picks a root port B8

37 Lecture 3#37 Example Spanning Tree B3 B5 B7 B2 B1 B4 B6 Root B4B5B6 B8 B1 Spanning Tree: root port B3 B7 B2 B8

38 Lecture 3#38 ST Concepts: Designated Port  Each LAN has a single designated bridge m all other bridges on LAN know which one it is m all tfc of LAN towards root goes thru that bridge  This is the bridge reporting minimum cost path to the root bridge for the LAN m ties broken by choosing lowest ID  Only designated & root ports remain active in a bridge. Bridge uses: m designated ports to send downstream frames m root ports to send upstream frames (toward root) m Bridge with no designated port becomes inactive

39 Lecture 3#39 Example Spanning Tree B3 B5 B7 B2 B1 B6 B4 Root B8 B2B4B5B7 B8 B1 Forwarding Tree: Designated Bridge root port Note: B3, B6 forward nothing

40 Lecture 3#40 STP Requirements  Each bridge has a unique identifier  A multicast address for bridges on a LAN  A unique port identifier for all ports on all bridges m Bridge id + port number

41 Lecture 3#41 Forwarding/Blocking State 1. Only root and designated ports are active for data forwarding l Other ports are in the blocking state: no forwarding! l If bridge has no designated port, no forwarding at all  block root port too. 2. All ports send BPDU messages l including blocked ones l To adjust to changes

42 Lecture 3#42 Spanning Tree Protocol: Execution B3 B5 B7 B2 B1 B6 B4 B8 (B1,root=B1, dist=0) (B4, root=B1, dist=1) (B6, Root=B1dist=1) WHY?

43 Lecture 3#43 Bridges vs. Routers  both are store-and-forward devices m routers: network layer devices (examine network layer headers) m bridges are link layer devices  routers have routing tables, use routing algorithms, designed for Wide Area addressing  bridges have filtering tables, use filtering, learning & spanning tree algorithms, designed for local area

44 Lecture 3#44 Routers vs. Bridges Bridges + and - + Bridge operation is simpler, requiring less processing - Topologies are restricted with bridges: a spanning tree must be built to avoid cycles - Bridges do not offer protection from broadcast storms (endless broadcasting by a host will be forwarded by a bridge)

45 Lecture 3#45 Routers vs. Bridges Routers + and - + arbitrary topologies can be supported, cycling is limited by TTL counters (and good routing protocols) + provide firewall protection against broadcast storms - require IP address configuration (not plug and play) - require higher processing  bridges do well in small (few hundred hosts) while routers used in large networks (thousands of hosts) and in Internet core

46 Lecture 3#46 Ethernet Switches  layer 2 (frame) forwarding, filtering using LAN addresses  Switching: A-to-B and A’- to-B’ simultaneously, no collisions  large number of interfaces  often: individual hosts, star-connected into switch m Ethernet w. no collisions! m = Switched Ethernet

47 Lecture 3#47 Ethernet Switches  cut-through switching: frame forwarded from input to output port without awaiting for assembly of entire frame m slight reduction in latency  combinations of shared/dedicated, 10/100/1000 Mbps interfaces

48 Lecture 3#48 Ethernet Switches (more) Dedicated Shared

49 Lecture 3#49 Data Link: Summary  principles behind data link layer services: m error detection, optional: error correction m sharing a broadcast channel: multiple access m link layer addressing, ARP  various link layer technologies m Ethernet m hubs, bridges (STP), switches m IEEE 802.11 LANs m PPP  Chapter 5 Kurose and Ross

50 Lecture 3#50 EXTRA SLIDES

51 Lecture 3#51 Optional: Wireless LAN and PPP

52 Lecture 3#52 IEEE 802.11 Wireless LAN  wireless LANs: mobile networking  IEEE 802.11 standard: m MAC protocol m unlicensed frequency spectrum: 900Mhz, 2.4Ghz  Basic Service Set (BSS) (a.k.a. “cell”) contains: m wireless hosts m access point (AP): base station  BSS’s combined to form distribution system (DS)

53 Lecture 3#53 Ad Hoc Networks  Ad hoc network: IEEE 802.11 stations can dynamically form network without AP  Applications: m “laptop” meeting in conference room, car m interconnection of “personal” devices m battlefield  IETF MANET (Mobile Ad hoc Networks) working group

54 Lecture 3#54 IEEE 802.11 MAC Protocol: CSMA/CA 802.11 CSMA: sender - if sense channel idle for DIFS sec. then transmit entire frame (no collision detection) -if sense channel busy then binary backoff 802.11 CSMA receiver: if received OK return ACK after SIFS Why Needed?

55 Lecture 3#55 IEEE 802.11 MAC Protocol 802.11 CSMA Protocol: others  NAV: Network Allocation Vector  802.11 frame has transmission time field  others (hearing data) defer access for NAV time units

56 Lecture 3#56 Hidden Terminal effect  hidden terminals: A, C cannot hear each other m obstacles, signal attenuation m collisions at B  goal: avoid collisions at B  CSMA/CA: CSMA with Collision Avoidance

57 Lecture 3#57 Collision Avoidance: RTS-CTS exchange  CSMA/CA: explicit channel reservation m sender: send short RTS: Request To Send m receiver: reply with short CTS: Clear To Send  CTS reserves channel for sender, notifying (possibly hidden) stations  avoid hidden station collisions

58 Lecture 3#58 Collision Avoidance: RTS-CTS exchange  RTS and CTS short: m collisions less likely, of shorter duration m end result similar to collision detection  IEEE 802.11 allows: m CSMA m CSMA/CA: reservations m polling from AP

59 Lecture 3#59 Point to Point Data Link Control  one sender, one receiver, one link: easier than broadcast link: m no Media Access Control m no need for explicit MAC addressing m e.g., dialup link, ISDN line  popular point-to-point DLC protocols: m PPP (point-to-point protocol) m HDLC: High level data link control (Data link used to be considered “high layer” in protocol stack!)

60 Lecture 3#60 PPP Design Requirements [RFC 1557]  packet framing: encapsulation of network-layer datagram in data link frame m carry network layer data of any network layer protocol (not just IP) at same time m ability to demultiplex upwards  bit transparency: must be able to carry any bit pattern in the data field  error detection (no correction)  connection livenes: detect, signal link failure to network layer  network layer address negotiation: endpoint can learn/configure each other’s network address

61 Lecture 3#61 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 Transport layer!!!

62 Lecture 3#62 PPP Data Frame (1)  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, PPP-NCP, IP, IPCP, etc)

63 Lecture 3#63 PPP Data Frame (2)  info: upper layer data being carried  check: cyclic redundancy check (CRC) for error detection

64 Lecture 3#64 Byte Stuffing  “data transparency” requirement: data field must be allowed to include flag pattern m Q: is received data or flag? Byte Stuffing procedure  Sender: adds (“stuffs”) extra byte before each or data byte  Receiver: m when receive 01111101 discard the byte, Next byte is data, regardless of value m Receive 01111110: flag byte

65 Lecture 3#65 Byte Stuffing flag byte pattern in data to send flag byte pattern plus stuffed byte in transmitted data

66 Lecture 3#66 PPP Data Control Protocols Before exchanging network- layer data, data link peers must  PPP-LCP: configure PPP link (max. frame length, authentication)  learn/configure network layer information m for IP: carry IP Control Protocol (PPP-IPCP) msgs (protocol field: 8021) to configure/learn IP address

Download ppt "Lecture 3#1#1 Chapter 3 Hubs, Bridges and Switches."

Similar presentations

Ads by Google