L9: Bridges and LAN Switches. Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806

Similar documents
CISC 7332X T6. C12a: LAN Switching. Hui Chen Department of Computer & Information Science CUNY Brooklyn College. 11/13/2018 CUNY Brooklyn College

L8: Packet Switching. Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806

Switching and Forwarding

C13a: Packet Switching

L10: Simple Internetworking. Hui Chen, Ph.D. Department of Engineering & Computer Science Virginia State University Petersburg, VA 23806

L2: Bandwidth and Latency. Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806

Switching and Forwarding - continued

L1: Introduction. Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806

Switching and Forwarding - continued

Chapter 3 Part 2 Switching and Bridging. Networking CS 3470, Section 1

Internetworking: Global Internet and MPLS. Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806

L3: Building Direct Link Networks I. Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806

L5: Building Direct Link Networks III. Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806

C13b: Routing Problem and Algorithms

C14b: Classless Intradomain Routing

Programming Internet with Socket API. Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806

End-to-End Protocols: UDP and TCP. Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806

CSCI Computer Networks

Lecture 7. Reminder: Homework 2, Programming Project 1 due today. Homework 3, Programming Project 2 out, due Thursday next week. Questions?

Transition to IPv6. Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806

C14a: Internetworks and The Internet

Switching and Forwarding

HWP2 Application level query routing HWP1 Each peer knows about every other beacon B1 B3

Configuring STP. Understanding Spanning-Tree Features CHAPTER

Switching and Forwarding Reading: Chapter 3 1/30/14 1

Chapter 3: VLANs. Routing & Switching

Communication Networks ( ) / Spring 2011 The Blavatnik School of Computer Science, Tel-Aviv University. Allon Wagner

Configuring EtherChannels and Layer 2 Trunk Failover

Configuring EtherChannels and Link-State Tracking

Packet Switching. Hongwei Zhang Nature seems to reach her ends by long circuitous routes.

Computer Networking. December 2004 CEN CN

Configuring VLANs. Understanding VLANs CHAPTER

Research paper Measured Capacity of an Ethernet: Myths and Reality

Configuring VLANs. Understanding VLANs CHAPTER

Configuring Spanning Tree Protocol

Configuring EtherChannels and Layer 2 Trunk Failover

Token Ring VLANs and Related Protocols

Token Ring VLANs and Related Protocols

Medium Access Protocols

Configuring VLANs. Understanding VLANs CHAPTER

Chapter 3 Reading Organizer

Configuring VLANs. Understanding VLANs CHAPTER

Switching and bridging

Configuring Access and Trunk Interfaces

Configuring Spanning Tree Protocol

Maintaining Specific VLAN Identification. Comparing ISL and 802.1Q. VLAN Trunking

CSCI-1680 Link Layer Wrap-Up Rodrigo Fonseca

Outline. Routing. Introduction to Wide Area Routing. Classification of Routing Algorithms. Introduction. Broadcasting and Multicasting

Configuring VLANs. Understanding VLANs CHAPTER

Configuring EtherChannels and Link-State Tracking

CSCI-1680 Link Layer Wrap-Up Rodrigo Fonseca

VLAN Configuration. Understanding VLANs CHAPTER

Configuring VLANs. Understanding VLANs CHAPTER

Configuring VLANs. Understanding VLANs CHAPTER

CompSci 356: Computer Network Architectures. Lecture 7: Switching technologies Chapter 3.1. Xiaowei Yang

Configuring Rapid PVST+

Configuring Rapid PVST+ Using NX-OS

VLANs. Traditional Campus Networks. Performance Issues. Broadcast Issues. Bridges terminate collision domains

Programming Ethernet with Socket API. Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806

CSCI-1680 Link Layer Wrap-Up Rodrigo Fonseca

VLANs. 2003, Cisco Systems, Inc. All rights reserved. 2-1

VLANs. 2003, Cisco Systems, Inc. All rights reserved. 2-1

Configuring VLANs. Understanding VLANs CHAPTER

Configuring Private VLANs

CS 3516: Advanced Computer Networks

Configuring VLANs. Finding Feature Information. Prerequisites for VLANs

Implementing the ERSPAN Analytics Feature on Cisco Nexus 6000 Series and 5600 Platform Switches

CHAPTER 1: VLANS. Routing & Switching

Using Switches with a PS Series Group

CSE 461: Bridging LANs. Last Topic

Spanning Tree Protocol

Top-Down Network Design

Configuring Spanning Tree

Programming Ethernet with Socket API. Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806

Configuring Private VLANs

Configuring Rapid PVST+

Configuring VLANs. Understanding VLANs CHAPTER

Question No : 1 Which three of these statements regarding 802.1Q trunking are correct? (Choose three.)

Chapter 5. Spanning Tree Protocol (STP) Part I

Configuring SPAN and RSPAN

Understanding Issues Related to Inter VLAN Bridging

Configuring Private VLANs

Table of Contents. (Rapid) Spanning Tree Protocol. A simple bridge loop. An even worse bridge loop. Bridge loops Two bridges Three bridges (R)STP

CS4700/CS5700 Fundamentals of Computer Networks

Upon completion of this chapter, you will be able to perform the following tasks: Identify what a VLAN is and how it operates. Configure a VLAN to

Configuring IEEE 802.1Q Tunneling and Layer 2 Protocol Tunneling

CS3600 SYSTEMS AND NETWORKS

The following steps should be used when configuring a VLAN on the EdgeXOS platform:

Understanding and Configuring STP

ECE 4450:427/527 - Computer Networks Spring 2017

Configuring IEEE 802.3ad LACP EtherChannels on the Cisco MWR 2941

Table of Contents. (Rapid) Spanning Tree Protocol. A simple bridge loop. An even worse bridge loop. Bridge loops Two bridges Three bridges (R)STP

Advanced Computer Networks

Configuring Resilient Ethernet Protocol

ECE 333: Introduction to Communication Networks Fall 2001

Switches running the LAN Base feature set support only static routing on SVIs.

Spanning Tree Protocol(STP)

Internetworking Part 1

UNIVERSITY OF NEBRASKA AT OMAHA Computer Science 3550 Communication Networks

Underlying Technologies -Continued-

Transcription:

L9: Bridges and LAN Switches Hui Chen, Ph.D. Dept. of Engineering & Computer Science Virginia State University Petersburg, VA 23806 1

Acknowledgements Some pictures used in this presentation were obtained from the Internet The instructor used the following references Larry L. Peterson and Bruce S. Davie, Computer Networks: A Systems Approach, 5th Edition, Elsevier, 2011 Andrew S. Tanenbaum, Computer Networks, 5th Edition, Prentice- Hall, 2010 James F. Kurose and Keith W. Ross, Computer Networking: A Top- Down Approach, 5th Ed., Addison Wesley, 2009 Larry L. Peterson s (http://www.cs.princeton.edu/~llp/) Computer Networks class web site 9/26/2016 CSCI 445 Fall 2016 2

Outline Review Discussed packet switching Expand networks Datagram switching Virtual circuit switching Source routing Example of real networks Ethernet How to expand Ethernet? 3

Ethernet LAN: How to Expand? Expand an Ethernet local area network (LAN) Repeaters Bridges Switches 4

Repeaters Devices in physical layer Receive, amplify (regenerate), and retransmit signal in both directions. Example: Ethernet repeaters 5

Bridges Devices in data link layer In promiscuous mode Forward packets/frames to either connected networks Example: Ethernet bridges 6

Ethernet Switches: Learning Bridges Do you actually need to forward every frames when A B? A X? Improvement Do not forward unnecessarily Relying on a forwarding table at each switch 7

Exercise L9-1 Build a complete forwarding table for the Ethernet switch E F G A 1 B 3 Ethernet Switch C 2 D H I 8

Forwarding Algorithm Destination address in frame header indicates which host a frame is addressed to Source address in frame header indicates which host a frame is originated Each bridge maintains a forwarding table Algorithm On receiving a frame (src, dst, receiving port), look up dstin the forwarding table If dstis found If port in forwarding table = receiving port, do not forward; otherwise, forward to the forwarding port Otherwise, forward to all ports 9

Ethernet Switches: Learning Bridges Improvement Forwarding table Do not forward unnecessarily to receiving port. How to maintain the table? Manually? Automatically? Learning bridges automatically maintain the table without human intervention learning from received frames Ethernet switches = Learning bridges How does it learn? 10

Ethernet Switches: Learning from Received Frame From a received frame, an Ethernet switch knows Destination address and source address Receiving port number on the switch 9/26/2016 CSCI 445 Fall 2016 11

Learning Bridges: Learning Algorithm Destination address in frame header indicates which host a frame is addressed to Source address in frame header indicates which host a frame is originated Each bridge maintains a forwarding table, initially empty Algorithm On receiving a frame (src, dst, receiving port), look up srcin the forwarding table If srcis not found Insert (src, receiving port number) to the forwarding table 12

Example Describe the table built by the switch as the following frames arrives Starting with the table as follows Host B 3 Port The following frames (indicated by sending hosts) are received by the bridge as time goes I, H, B, F (reads, first I, then H, then B, and then F) Please draw four tables to show the resulting table after each frame is processed E F G 1 Bridge 2 3 A B C D H I 13

Example: Answer 0. Initial table Host Port B 3 1. Frame sent from Host I arrives Host Port B 3 I 2 2. Frame sent from Host H arrives Host Port B 3 I 2 H 2 3. Frame sent from Host B arrives Host Port B 3 I 2 H 2 4. Frame sent from Host F arrives Host Port B 3 I 2 H 2 F 1 9/26/2016 CSCI 445 Fall 2016 14

Example: Question 1 0. Initial table Host Port B 3 Q: which hosts will see the frame sent from Host I? 9/26/2016 CSCI 445 Fall 2016 15

Example: Question 2 0. Initial table Host Port B 3 1. Frame sent from Host I arrives Host Port B 3 I 2 Q: which hosts will see the frame sent from Host B? 2. Frame sent from Host H arrives Host Port B 3 I 2 H 2 9/26/2016 CSCI 445 Fall 2016 16

Exercise L9-2 Build a forwarding table for the Ethernet shown as the following transmissions happen A sends to C; C sends to A; E sends to I; I sends to E; E sends to B E F G A 1 Bridge 1 3 1 Bridge 2 2 B C 2 D H I 9/26/2016 CSCI 445 Fall 2016 17

Table Maintenance Algorithm for Learning Bridges (1) Table initialized: empty table that can hold up to BridgeEntrynumber of entries created 18

Table Maintenance Algorithm for Learning Bridges (2) Can the source address of the frame be found in the table? Use srcas an index to search the table. If entry not found, return a pointer/reference to a unused entry in variable b No machine has infinite amount of resource. It is always good to check if you can store the entry Insert the new entry into the table If no enough space, give up. If entry found, reset TTL (time-to-live) Q: Is there any issue if the table is empty or incomplete? When an old item is purged? 19

Extended LAN Can Have Loops! 20

Learning Bridges: Why Are There Loops in Extended LANs? Created unintentionally No one knows the entire topology of the network Not everyone has knowledge of what is NOTsupposed to be done Created intentionally To provide redundancy in case of failure 21

Loop in an Extended LAN host C is reachable via port 1 or 2 of bridge 3 What problem do you foresee? A 1 Bridge 1 2 B 1 Bridge 3 2 1 Bridge 2 2 Problem Frames potentially loop through the extended LAN forever Solution: Spanning tree algorithm C 22

Spanning Tree Spanning tree: A spanning tree of an undirected graph of nnodes is a subgraphof a set of n 1edges that connects all nodes. A tree is a simple, undirected, connected, acyclic graph A connected graph with n nodes and n-1 edges is a tree. A graph is connected if there is a path from any point to any other point in the graph. A graph G is a pair (V,E), where V is a set of vertices, and E is a set of edges between the vertices E {{u,v} u, v V}. A Graph A spanning tree of the Graph 23

Exercise L9-3 Question Indicate whether a spanning tree exists for each graph below Depict a spanning tree for each of the following graphs if it exists Graph 1 Graph 2 Graph 3 Graph 4 Graph 5 24

An Extended LAN with Loops 3 bridges: B1, B4, and B6 3 LANs: G, H, and I Q: Can you draw its corresponding graph? (bridges/lans as nodes, links as edges)? B1 G H B6 I B4 Q: How to break up the loops? find spanning tree (pp. 194 -: bridges could be disconnected) Q: What bridges should do then? stop forwarding to corresponding ports 25

Spanning Tree Algorithm Breaking loops in an extended LAN RadiaPerlman. 1985. An algorithm for distributed computation of a spanning tree in an extended LAN. In Proceedings of the ninth symposium on Data communications (SIGCOMM '85). ACM, New York, NY, USA, 44-53. DOI=10.1145/319056.319004 http://doi.acm.org/10.1145/319056.319004 9/26/2016 CSCI 445 Fall 2016 26

Spanning Tree Algorithm: Breaking Loops Spanning tree: A spanning tree of an undirected graph of nnodes is a graph of a set of n 1edges that connects all nodes. Bridges and LANs as nodes, and ports as edges Bridges have no knowledge of network topology Overview Each bridge has unique id (e.g., B1, B2, B3) Select bridge with smallest id as root Select bridge on each LAN closest to root as designated bridge(use id to break ties) Each bridge forwards frames over each LAN for which it is the designated bridge Challenge: Every bridge is equal. No centralized control! No bridge knows the entire topology! Switches need to elect among each other who forward frames and who won t via exchanging messages! 27

Spanning Tree Algorithm: Breaking Loops Initially, each bridge treats itself as the root Bridges broadcast configuration messages A message contains id for bridge sending the message id for what the sending bridge believes to be root bridge distance (hops) from sending bridge to root bridge Each bridge records current best configuration message for each port When a configuration message arrives, the bridge checks if the message is better than current best configuration message A message is considered better, if any of these holds The bridge identifies a root with a smaller ID The bridge identifies a root with an equal ID but with shorter distance (# of hops) to the root The root ID and distance are equal, but the sending bridge has a smaller ID 28

Spanning Tree Algorithm: Breaking Loops When a bridge learns it is not the root It stops generating configuration messages It only forwards configuration messages it receives (after adding 1 to the hop distance to the root) In steady state, only root generates configuration messages When a bridge learns it is not the designated bridge for a LAN It stops forwarding configuration messages to the LAN in steady state, only designated bridges forward configuration messages the corresponding LAN Root continues to periodically send configuration messages Reconstruction in case of failure If any bridge does not receive configuration message after a period of time, it starts generating configuration messages claiming to be the root 29

Example Use the algorithm outlined to find the spanning trees for the following extended LANs 30

Test Run of Distributed Spanning Tree Algorithm (1) An extended LAN with three bridges that connects to three LANs 31

Test Run of Distributed Spanning Tree Algorithm (2) 1. B1, B4, and B6 broadcast configuration messages a) B1: (B1, 0, B1) b) B4: (B4, 0, B4) c) B6: (B6, 0, B6) 2. What happens next? a) B1 receives (B4, 0, B4), since 1 < 4, reject 4 as root b) B1 receives (B6, 0, B6), Since 1 < 6, reject 6 as root c) B4 receives (B1, 0, B1), since 1 < 4, make 1 as root, add 1 to the distance in the received message, and send (B1, 1, B4) to B6 d) B4 receives (B6, 0, B6), since 4 < 6, reject 6 as root, stop forwarding this message e) B6 receives (B4, 0, B4), since 4 < 6, accepts 4 as root, send (B4, 1, B6) to B1 f) B6 receives (B1, 0, B1), since 1 < 4 (current root) < 6, accepts 1 as root, send (B1, 1, B6) to B4 3. B4 and B6 are non-roots, stop generating configuration messages 4. B6 receives (B1, 1, B4) from B4, B6 knows it is of the same distance away from 1 as B4, however, its ID is great than B4 s ID, it stops forwarding on both its interfaces 5. B4 receives (B1, 1, B6) from B6, B4 knows it is of the same distance away from 1 as B6, however, its ID is less than B6 s ID, it keeps forwarding Spanning tree formed 32

Exercise L9-4 Running/tracing distributed spanning tree algorithm 4 bridges 4 LANs Construct the spanning tree 33

Extended LANs: Broadcasting and Multicasting Current practice Forward all broadcast/multicast frames Potential improvement Learn when no group members downstream Accomplished by having each member of group G send a frame to bridge multicast address with G in source field 34

Limitations of Bridges Potential scalability problem spanning tree algorithm scales only linearly does not scale up well no one needs receive messages from every one broadcast does not scale Switches/bridges run on data link layer rely on frames header supports only the same types of networks do not accommodate heterogeneity Advantage Runs on data link layer multiple LANs connected transparently end hosts do not need run additional protocols Caution: beware of transparency 35

VLAN Virtual LANs (VLANs) Extended LAN grows, depth of spanning tree increases, lower performance (longer latency and more frame forwarding) VLAN Partition a single extended LAN into several seemingly/logically separated segments Advantage Each VLAN is a smaller LAN (depth of spanning tree?) Logical seperation 9/26/2016 CSCI 445 Fall 2016 36

Logical Separation Accounting Customer Service Human Resource 9/26/2016 CSCI 445 Fall 2016 37

Logical Separation Customer Service Accounting Human Resource Change logical topology without moving any wires or change addresses 9/26/2016 CSCI 445 Fall 2016 38

Logical Separation A frame can travel only within a segment (VLAN) Finance VLAN W X B1 1 2 3 1 B2 2 3 Y Human Resources VLAN Z 10/23/2013 9/26/2016 CSCI 445 Fall 2016 39

Without VLAN A frame can travel anywhere within the extended LAN W X B1 1 2 3 1 B2 2 3 Y Z 10/23/2013 9/26/2016 CSCI 445 Fall 2016 40

Logical Separation with VLAN A frame can travel only within a segment (VLAN) Finance VLAN W X B1 1 2 3 1 B2 2 3 Y Human Resources VLAN Z 10/23/2013 9/26/2016 CSCI 445 Fall 2016 41

Virtual LAN Each VLAN is assigned an ID (or color) A frame can travel only within a segment (VLAN) with the same identifier controlled by forwarding algorithms in switches Configure switches B1 and B2 Assign B1.1, B1.3, B2.1, B2.1 to VLAN 100 Assign B1.2, B1.3, B2.1, B2.3 to VLAN 200 CSCI 445 Fall 2016 9/26/2016 42

Virtual LAN: Configuration Example 1. Cisco Switch 2. Computer 3. RJ-45-to-DB-9 adapter cable 9/26/2016 CSCI 445 Fall 2016 43

Virtual LAN: Configuration Example Use a terminal emulator, e.g., PuTTY 9/26/2016 CSCI 445 Fall 2016 44

Virtual LAN: Configuration Example Use PuTTY Choose Serial Connection 9/26/2016 CSCI 445 Fall 2016 45

Virtual LAN: Configuration Example Use PuTTY Choose Serial Connection Switch# configure terminal Enter configuration commands, one per line. End with CNTL/Z. Switch(config)# interface gigabitethernet0/1 Switch(config-if)# switchport mode access Switch(config-if)# switchport access vlan 2 Switch(config-if)# end 9/26/2016 CSCI 445 Fall 2016 46

Virtual LAN Each VLAN is assigned an ID (or color) A frame can travel only within a segment (VLAN) with the same identifier controlled by forwarding algorithms in switches IEEE 802.1Q: VLAN Tag (4 bytes = 32 bits): 0x8100 + (4bits) + VLAN ID (12 bits) Ethernet Header Data VLAN 100 VLAN 200 Y W B1 1 2 Ethernet Header 3 Data Ethernet Header VLAN Tag Data 1 X B2 2 3 VLAN 100 Z Forwarding rule: Frame may not be sent out an interface that is not part of VLAN indicated by the VLAN ID VLAN 200 CSCI 445 Fall 2016 9/26/2016 47

VLAN Management In Practice Configuring VLAN and VLAN Trunk on Cisco Catalyst Switches Cisco s proprietary VLAN Trunk Protocol For propagating VLAN information among multiple VLANs with a VTP domain Creating VLAN and VLAN trunks Define VTP domains Create VLANs Add and remove ports to a VLAN Troubleshooting 9/26/2016 CSCI 445 Fall 2016 48

Managing Spanning Tree Protocol in Practice Configure Spanning Tree Protocol (STP) on Cisco Catalyst Switches Show current STP configuration Change STP configuration Disable and enable STP for a VLAN 9/26/2016 CSCI 445 Fall 2016 49

Summary Switches scalable networks Packet switching Datagram switching Virtual circuit switching Source routing Datagram switching in practice Ethernet Bridges as LAN Switches How to apply datagram switching to extended LANs? Learning bridges: forward or not to forward? Spanning Tree Algorithm: break loops Virtual Local Area Networks (VLANs) We will address it in late classes Q: Different networks are built, extended LANs do not scale well, how to expand networks? Inter-networking 50