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

Chapter 3 Hubs, Bridges and Switches

Embed Size (px)

DESCRIPTION

Chapter 3 Hubs, Bridges and Switches. 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 - PowerPoint PPT Presentation

Citation preview

Page 1: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #1

Chapter 3Hubs, Bridges and Switches

Page 2: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #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) collision domain: set of stations such that

simultaneous transmission of any two of them will generate a collision

Token Ring: token passing delay per station: 802.5 limits number of stations per LAN:

Page 3: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #3

Hubs Physical Layer devices: essentially multi-leg

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

Page 4: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #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: simple, inexpensive device Multi-tier provides graceful degradation: portions

of the LAN continue to operate if one hub malfunctions

extends maximum distance between node pairs (100m per Hub)

Page 5: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #5

Hub limitations

single collision domain results in no increase in max throughput multi-tier throughput capacity 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) Qn: Why?

Page 6: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #6

Bridges Link Layer devices: forward Ethernet

frames selectively: learn where each station is located examine the header of each frame forward on the proper link (if known)

• if dest. and source on same link, drop frame WHY?

if not known where dest. is, broadcast frame• except on originating link, of course

also called Layer 2 switches

Page 7: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #7

Bridges Bridge isolates collision domains

buffers frame then forwards it, if needed, using CSMA/CD

A broadcast frame is forwarded on all interfaces (except the incoming one) thus broadcast frames propagate across

bridges A set of segments connected by bridges

and hubs is called a broadcast domain

Page 8: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #8

Bridges (more)

Bridge advantages: Isolates collision domains resulting in higher

total throughput capacity, and does not limit the number of nodes nor geographical coverage

Can connect different type Ethernet since it is a store and forward device (e.g. 10 & 100BaseT)

Transparent: no need for any change to hosts LAN adapters (invisible to them)

Page 9: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #9

Backbone Bridge

Page 10: Chapter 3 Hubs, Bridges and Switches

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

Page 11: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #11

Bridges: frame filtering, forwarding

bridges filter packets same-LAN -segment frames not forwarded

onto other LAN segments forwarding:

how to know on which LAN segment to forward frame?

Page 12: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #12

Bridge Filtering

bridges learn which hosts can be reached through which interfaces: maintain filtering tables when frame received, bridge “learns” location

of sender: incoming LAN segment records sender location in filtering table

filtering table entry: (Node MAC Address, Bridge Interface, Time

Stamp) stale entries in Filtering Table dropped (TTL can

be 60 minutes)

Page 13: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #13

Bridge Operation pseudocodeInit: set filtering table to voidCase: frame arrives on port P, src MAC , dest MAC

/* Table Update stage */ if not listed, or mapped to port not equal P

then add mapping P with expiration timeelse update expiration time /* if listing fits */

/* Frame Forwarding stage */ look up in filtering table: listing “ Q” /* if listed */if not listed, forward on all ports except P /* “flood */else,if Q= P , drop the frame /* WHY ? */ otherwise, forward the frame on port Q only

Page 14: Chapter 3 Hubs, Bridges and Switches

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 bridge notes that C is on port 1 frame ignored on upper LAN frame received by D

Page 15: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #15

Bridge Learning: example

D generates reply to C, sends it bridge sees frame from D bridge notes that D is on interface 2 bridge knows C on interface 1, so selectively

forwards frame out via interface 1 only

C 1

Page 16: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #16

What will happen with loops?Incorrect learningFrame sent from A to B

A

B

1 1

22

A , 1 A , 122

Problems: (1) frame loops infinitely(2) unstable filtering tables

Page 17: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #17

Loop-free: tree

A

B

C

A message from Awill mark A’s location

Page 18: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #18

Loop-free: tree

A

B

C

A message from Awill mark A’s location

A:

Page 19: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #19

Loop-free: tree

A

B

CA:

A:

A message from Awill mark A’s location

Page 20: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #20

Loop-free: tree

A

B

CA: A:

A:

A:

A:

A message from Awill mark A’s location

Page 21: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #21

Loop-free: tree

A

B

CA: A:

A:

A:

A:

A message from Awill mark A’s location

Page 22: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #22

Loop-free: tree

A

B

C

A:

A: A:

A:

A:

So a message toA will go by marks…

A message from Awill mark A’s location

Page 23: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #23

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 belonging to the tree

Disabled

Page 24: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #24

Introducing Spanning Tree Objective: Find tree spanning all LAN segments

each bridge transmits on a single port each LAN transmits on a single bridge

Bridges run the Spanning Tree Protocol Use a distributed algorithm Objective: select what ports should actively forward

frames, and which ports should accept frames Bridges communicate using special configuration

messages (BPDUs) to perform this selection• BPDU = Bridge Protocol Data Unit

STP standardized in IEEE 802.1D

Page 25: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #25

Method Each bridge sends periodically a BPDU to all

its neighbors BPDU contains:

ID of bridge the sender views as root (my_root_ID) known distance to that root senders own bridge ID port ID of the port from which BPDU sent

Page 26: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #26

Introductory STPIn order to help understanding STP we first

present it as 3 separate algorithms1. How to agree on a root bridge?2. How to compute a ST for bridges?3. How to compute a ST for LAN

segments?Actual STP does all 3 functions in the same

iterative processNote: we assume throughout that the

network is connected

Page 27: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #27

1. Choosing a root bridge Assume

each bridge has a unique identifier (ID) within a bridge each port has a unique ID

Each bridge remembers smallest bridge ID seen so far (= my_root_ID) 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 for universal agreement?

Page 28: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #28

2. Compute ST given a root

Idea: each bridge finds its shortest path to the root generate shortest paths tree

Output: At each node, parent pointer and distance to root (parent=bridge leading to root along shortest path)

Spanning tree T: A link belongs to T iff it connects some bridge to its parent

Qn: Does this idea fully specify an algorithm producing a spanning tree?

How: Bellman-Ford algorithm

Page 29: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #29

Distributed Bellman-Ford

Assumption: There is a unique root node s 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. dists = 0 always! Another node v: Bridge calls the neighbor with least

distance to root - its “parent” If bridges tie: choose bridge with lowest ID

Page 30: Chapter 3 Hubs, Bridges and Switches

Suppose all nodes start with distance , and suppose that updates are sent every time unit.

11

0

00

0

Lecture 3 #30

Why does this work?

CD

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

1

ID=3

ID=7

Means: link admitted to bridge spanning treeMeans: BPDU

Page 31: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #31

Bellman-Ford: properties

Works for any positive link weights w(u,v):

Works also when the system operates asynchronously.

Works regardless of the initial distances

Page 32: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #32

Actual STPWhat is missing so far?: Can’t discard redundant links, since we need to

connect host, not just bridges Instead can disable redundant bridge ports leading to

them

Graph model too simple, since there can be many bridges on one LAN (see next slide)

We need to look at forwarding paths and not just graph paths

STP protocol does all the “steps” together: Selection of root bridge Evaluation of distance to root and parent bridge Selection of the active ports and blocked ports

Page 33: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #33

Example of a network

A

L1

B

C

E

D

F

L2L5

L3

L4

L6

L7

Note: LAN L2 connects three bridges, 4 ports

Page 34: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #34

STP planObjective: prune given network to render

a forwarding tree, i.e: between any two hosts there is a single

forwarding path through the network, no loops possible

Method: Classify all ports into three types: Root ports: one for each bridge Designated ports: one for each LAN All other ports are blocked

Root and designated ports transfer data frames in both directions.

Blocked ports don’t transfer data

Page 35: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #35

BPDU’s (1) Each bridge sends BPDUs on all its ports. Based on received BPDUs, bridge

determines: determines Root finds own distance/cost to root classifies of own ports: root/designated/blocked

The BPDU contains bridge’s current view of: the root bridge of the network own distance to this root own ID number the sending port’s ID number

Page 36: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #36

BPDUs (2) A BPDU is computed by a bridge for

each of its ports and sent out on that port it will reach all ports attached to port’s LAN

STP prerequisites each bridge is given a bridge ID number The ID number is unique in the network Each port is given a port ID number The port ID is unique within its bridge ID numbers assigned manually or

automatically Each link (LAN) has a positive cost

Page 37: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #37

BPDU Processing in a bridge (1) Determine current view of root: this is

lowest root ID received, including own bridge ID. Only BPDUs reporting this root are

considered in sequel Compare all reported distances to root.

own distance to root= lowest received distance + + cost of the link to the reporting bridge

Page 38: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #38

Designated Ports all BPDUs received on a port are

compared, including own message sent on it;

the best message has: smallest root ID and smallest distance to that root if tied, choose the one with lowest bridge ID if tied, choose lowest port ID

• Qn: When does the last tie happen? If the message sent by the bridge on that

port is best, label it a designated port there is exactly one designated port on

each LAN

Page 39: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #39

Root Ports now compare the best messages

received on all the ports of the bridge, according to the same criteria as above the port on which best message was

received is labeled root port root bridge has no root port

there is exactly one root port per bridge only root and designated ports receive

and send data. BPDU’s are sent periodically

even after convergence of algorithm indicate bridge is active / discover failures

Page 40: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #40

Summary after convergence:

all bridges agree which bridge is the root each LAN has exactly one designated port

• frames from LAN enter the bridge on that port on the way to root (upstream)

• frames coming from root exit the bridge on that port on the way to remote LANs (downstream)

• all bridges on LAN agree who is the designated port • a LAN may have any ≥ 0 number of root ports on it

each bridge has exactly one root port• the port leads through a LAN to the parent bridge• this is the next bridge on a shortest path to root• a bridge may have any ≥ 0 number of designated

ports• a bridge with no designated ports blocks also the

root port, and so becomes inactive

Page 41: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #41

Notes only bridges make decisions, LANs are

passive More discussion of the validity of STP

will be given in homework and recitation

Page 42: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #42

Example Spanning Tree

B3

B5

B7B2

B1

B6 B4

Protocol operation:1. Pick a root2. Each bridge picks a

root port

B8

Page 43: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #43

Example Spanning Tree

B3

B5

B7B2

B1

B4B6

Root

B4 B5 B6

B8

B1

Spanning Tree:

root port

B3

B7B2

B8root port

LANs not connecting bridgesomitted here

Page 44: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #44

Spanning Tree Protocol: Execution

B3

B5

B7B2

B1

B6 B4

B8

(B1,root=B1, dist=0)(B1,root=B1,dist=0)

(B4, root=B1, dist=1)(B6, Root=B1, dist=1)

WHY?

(B8,root=B8, dist=0)

ignore msg

Page 45: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #45

Bridges vs. Routers both are store-and-forward devices

routers: network layer devices (examine network layer headers)

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

Page 46: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #46

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 (with routers cycles are avoided by the Layer 3 routing algorithm)

- bridges do not offer protection from broadcast storms (endless broadcasting by a faulty host will be forwarded by a bridge)

Page 47: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #47

Routers vs. Bridges

Routers + and -+ arbitrary topologies can be supported, cycling is

limited by TTL counters (and good routing protocols)

+ provide barrier 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

Page 48: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #48

Ethernet Switches = a powerful bridge layer 2 (frame)

forwarding, filtering using LAN addresses

Switching: A-to-B and A’-to-B’ with no collisions

large number of interfaces often: individual hosts,

star-connected into switch Ethernet w. no

collisions! = Switched Ethernet

often: includes L3 function

Page 49: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #49

Ethernet Switches

cut-through switching: frame forwarded from input to output port without awaiting for assembly of entire frameslight reduction in latency

allow combinations of shared/dedicated, 10/100/1000 Mbps interfaces

Page 50: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #50

Ethernet Switches (more)Dedicated

Shared

Page 51: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #51

Data Link: Summary principles behind data link layer services:

error detection, optional: error correction sharing a broadcast channel: multiple access

• link layer addressing, ARP

various link layer technologies Ethernet hubs, bridges, switches (require STP) IEEE 802.11 LANs PPP

Chapter 5 Kurose and Ross

Page 52: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #52

Optional: Wireless LAN and PPP

Page 53: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #53

IEEE 802.11 Wireless LAN wireless LANs: mobile networking IEEE 802.11 standard:

MAC protocol unlicensed frequency spectrum: 900Mhz,

2.4Ghz Basic Service Set (BSS) (a.k.a. “cell”) contains: wireless hosts access point (AP):

base station BSS’s combined to

form distribution system (DS)

Page 54: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #54

Ad Hoc Networks Ad hoc network: IEEE 802.11 stations can

dynamically form network without AP Applications:

“laptop” meeting in conference room, car

interconnection of “personal” devicesbattlefield

IETF MANET (Mobile Ad hoc Networks) working group

Page 55: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #55

IEEE 802.11 MAC Protocol: CSMA/CA802.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?

Page 56: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #56

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

Page 57: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #57

Hidden Terminal effect

hidden terminals: A, C cannot hear each other obstacles, signal attenuation collisions at B

goal: avoid collisions at B CSMA/CA: CSMA with Collision Avoidance

Page 58: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #58

Collision Avoidance: RTS-CTS exchange CSMA/CA: explicit

channel reservation sender: send short

RTS: Request To Send receiver: reply with

short CTS: Clear To Send

CTS reserves channel for sender, notifying (possibly hidden) stations

avoid hidden station collisions

Page 59: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #59

Collision Avoidance: RTS-CTS exchange

RTS and CTS short: collisions less likely, of

shorter duration end result similar to

collision detection IEEE 802.11 allows:

CSMA CSMA/CA: reservations polling from AP

Page 60: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #60

Point to Point Data Link Control one sender, one receiver, one link:

easier than broadcast link:no Media Access Controlno need for explicit MAC addressinge.g., dialup link, ISDN line

popular point-to-point DLC protocols:PPP (point-to-point protocol)HDLC: High level data link control

(Data link used to be considered “high layer” in protocol stack!)

Page 61: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #61

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 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

Page 62: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #62

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!!!

Page 63: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #63

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)

Page 64: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #64

PPP Data Frame (2)

info: upper layer data being carried check: cyclic redundancy check (CRC)

for error detection

Page 65: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #65

Byte Stuffing “data transparency” requirement: data field

must be allowed to include flag pattern <01111110> Q: is received <01111110> data or flag?

Byte Stuffing procedure Sender: adds (“stuffs”) extra < 01111101> byte

before each < 01111110> or <01111101> data byte

Receiver: when receive 01111101

• discard the byte, • Next byte is data, regardless of value

Receive 01111110: flag byte

Page 66: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #66

Byte Stuffing

flag bytepatternin datato send

flag byte pattern plusstuffed byte in transmitted data

Page 67: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #67

PPP Data Control ProtocolsBefore exchanging network-

layer data, data link peers must

PPP-LCP: configure PPP link (max. frame length, authentication)

learn/configure network layer information

for IP: carry IP Control Protocol (PPP-IPCP) msgs (protocol field: 8021) to configure/learn IP address

Page 68: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #68

EXTRA SLIDES

Page 69: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #69

Spanning Tree Concepts:Path Cost A cost is associated with each segment

= “weight” of the segment = cost associated with transmission on the LAN

segment connected to the port bridge associates the weight with relevant port default segment weight is 1 Can be manually or automatically assigned Can be used to alter the path to the root bridge

Path cost is the sum of the component segment weights

Page 70: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #70

Spanning Tree Concepts:Root Port Each non-root bridge has a Root port:

The port on the path towards the root bridge = 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 leading to parent port with lowest ID becomes root port

Finally if several ports lead to the same parent port, choose lowest own port ID

Page 71: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #71

ST Concepts: Designated Port Each LAN has a single designated bridge

all other bridges on LAN know which one it is 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 ties broken by choosing lowest ID

Only designated & root ports remain active in a bridge. designated ports connect to downstream bridges/LANs root ports connect to upstream bridges/LANs

(toward the tree root)

Bridge with no designated port becomes inactive network objective: connecting hosts, bridges are a

tool

Page 72: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #72

STP Requirements

Each bridge has a unique identifierA multicast address for bridges on

a LANA unique port identifier for all ports

on all bridgesBridge id + port number

Page 73: Chapter 3 Hubs, Bridges and Switches

Lecture 3 #73

Forwarding/Blocking State

1. Only root and designated ports are active for data forwarding

Other ports are in the blocking state: no forwarding!

If bridge has no designated port, no forwarding at all block root port too.

2. All ports send BPDU messages including blocked ones

some presentations don’t send BPDU on blocked ports

To adjust to changes