Bridge Switch Spanning Tree Protocol Nhm 8 KSTN
Bridge, Switch & Spanning Tree Protocol Nhóm 8 KSTN – ĐTVT K 54: Hoàng Văn Pháp Nguyễn Đình Quý
Bridge
Bridge • Thiết bị lớp liên kết: hoạt động trên các khung Ethernet, kiểm tra tiêu đề khung và chuyển tiếp khung một cách chọn lọc dựa trên điểm đến của nó • Bridge tránh được va chạm domain nhờ có bộ đệm khung • Khi khung được chuyển tiếp vào segment, Bridge sử dụng cơ chế CSMA/CD để truy cập vào segment và truyền tải
Bridge Ưu điểm: • Tránh được va chạm dẫn đến tổng thông lượng tối đa cao hơn, và không hạn chế số lượng các nút cũng như vùng địa lý • Có thể kết nối các Ethernet loại khác nhau vì nó là một thiết bị lưu trữ và chuyển tiếp • Trong suốt: không cần bất kỳ sự thay đổi nào đối với các adapter LAN của các host
Bridges: lọc khung, chuyển tiếp khung • Lọc: Khung truyền trên cùng một LAN-segment không được chuyển tiếp đến LAN-segment khác • Chuyển tiếp: Làm thế nào để biết được chuyển tiếp một khung đến LAN-segment nào?
Lọc khung • Bridge sẽ “học” được máy nào có thể được kết nối tới thông qua giao diện nào -> bảng lọc • Khi nhận được khung, bridge “học” vị trí của người gửi: incoming LAN segment • Bridge ghi vị trí người gửi vào bảng lọc • Các mục trong bảng lọc • Node LAN Address, Bridge Interface, Time Stamp
Hoạt động của Bridge • Bridge procedure (in_MAC, in_port, out_MAC) Set filtering table (in_MAC) to in_port /*learning*/ lookup in filtering table (out_MAC) receive out_port if (out_port not valid) /* no entry found for destination */ then flood; /* forward on all but the interface on which the frame arrived*/ if (in_port = out_port) /*destination is on LAN on which frame was received */ then drop the frame otherwise (out_port is valid) /*entry found for destination */ then forward the frame on interface indicate
Ví dụ về quá trình “học” của Bridge C gửi khung tới D và D trả lời lại bằng khung gửi tới C q C gửi khung, bridge không có thông tin về D, nên đẩy khung ra tất cả các cổng m m m Bridge ghi nhớ rằng C ở port 1 Khung bị bỏ qua ở segment nối với port 3 Khung được D nhận Lecture 3 #8
Ví dụ về quá trình “học” của Bridge q D tạo trả lời cho C, gửi C 1 m Bridge nhận khung gửi từ D m Bridge ghi lại rằng D ở port 2 m Bridge đã biết C ở port 1, nên chỉ đẩy khung ra port 1 Lecture 3 #9
Switch
I. Khái niệm Switch cũng giống như một Bridge nhưng có nhiều cải tiến hơn : • Nhiều cổng hơn (Higher port density), • Khả năng xử lý gói tin nhanh hơn (150 million packets per second) nhờ • • • Sử dụng (ASICs) – Application-specific integrated circuits), CPU nhanh hơn, Cut-through switching so với store-and-forward của Bridge, Fragment-free switching: Có khả năng Qo. S, Hỗ trợ VLAN
Khái niệm (tiếp) • Trong mô hình tham chiều OSI, switch hoạt động ở tầng liên kết dữ liệu, ngoài ra có một số loại switch cao cấp hoạt động ở tầng mạng
II. Nguyên lý hoạt động của LAN Switches có 5 hoạt động : 1. Learning 2. Flooding 3. Forwarding 4. Filtering 5. Aging
1. Learning • Giả sử máy A (node A) từ segment A truyền dữ liệu tới máy B (node B) ở segment C. Switch sẽ lấy gói dữ liệu thứ nhất từ máy A. Nó sẽ đọc địa chỉ MAC và lưu nó trong lookup table cho segment A. Như vậy, switch bây giờ có thể biết tìm Node A ở đâu bất kỳ lúc nào có gói tin muốn truyền tới đó.
2. Flooding • Khi switch không biết Node B ở đâu, nó sẽ gửi gói tin về mọi segments ngoại trừ nơi gửi ( segment A ). Quá trình switch gửi một gói đi tới tất cả các segments để tìm node đặc trưng được gòi là flooding. Node B nhận được gói và gửi gói trở lại Node A với sự thừa nhận.
3. Forwarding • Bây giờ switch cần thêm địa chỉ MAC của Node B vào look up table cho segment C. Khi switch đã biết được địa chỉ của Node A, nó gửi gói trực tiếp tới đó. Bởi vì Node A ở đầu segment khác với Node B, switch phải kết nối 2 segments để gửi gói tin. Gói tin tiếp theo từ Node A tới Node B được chuyển từ switch. Switch bây giờ cũng đã có được địa chỉ Node B, nên nó có thể chuyển tiếp gói tin tới thẳng gói B.
4. Filtering • Node C gửi thông tin tới switch cho Node A. Switch nhìn vào địa chỉ MAC cho Node C và thêm nó vào lookup table cho segment A. Switch đã có được địa chỉ cho node A và xác định cả 2 node ở cùng segment. Do đó, nó không cần kết nối segment A tới một segment khác để dữ liệu có thể truyền từ C tới A
5. Aging • Thông thường, chỉ có một lượng bộ nhớ nhỏ dùng để duy trì lookup table. Để tối ưu hóa việc sử dụng bộ nhớ, switches sử dụng một công nghệ gọi là Aging. Mỗi lần một gói tin được nhận từ một node, nhãn thời gian sẽ được cập nhật. Switch có một thời gian user-configurable để loại bỏ các entry mà không có hoạt động gì từ node đó. Bộ nhớ được giải phóng đó sẽ dùng để phục vụ các entries khác.
So sánh giữa Bridge và Switch
FULLY SWITCHED NETWORKS
Spanning Tree Protocol (STP)
Bridging Loops
Vấn đề nảy sinh với các vòng Học sai B 2 2 A, 1 2 1 1 A
Vấn đề nảy sinh với các vòng Lặp khung C 2 2 C, ? ? 1 1 A
Loop-free: tree C B A Thông điệp gửi từ A sẽ chỉ ra vị trí của A
Loop-free: tree C B A: A Thông điệp gửi từ A sẽ chỉ ra vị trí của A
Loop-free: tree A: C B A: A Thông điệp gửi từ A sẽ chỉ ra vị trí của A
Loop-free: tree A: A: A: B A: A Thông điệp gửi từ A sẽ chỉ ra vị trí của A C
Loop-free: tree A: A: A: B A: A Thông điệp gửi từ A sẽ chỉ ra vị trí của A C
Loop-free: tree A: A: A: B A: Các thông điệp gửi cho A sẽ đi theo các đánh dấu A Thông điệp gửi từ A sẽ chỉ ra vị trí của A C
Bridges Spanning Tree • Để tăng độ tin cậy, phải xây dựng nhiều con đường khác nhau từ nguồn tới đích • Với nhiều đường, có thể tạo ra các vòng, và lặp bridge, gây nên chuyển tiếp khung lặp vô hạn • Giải pháp: Tổ chức các bridge thành một spanning tree, bằng cách tắt đi một số cổng Disabled
Giới thiệu Spanning Tree • Cung cấp một đường dẫn giữa bất kỳ 2 LAN segment nào mà không gây ra vòng lặp • Các Bridge giao tiếp với nhau bằng các thông điệp riêng (BPDU). Chuẩn hóa theo chuẩn IEEE 802. 1 D
Xây dựng một spanning tree • Các Bridge chạy một thuật toán phân phối spanning tree (STA) • Chọn ra cổng nào, bridge nào nên thực hiện chuyển tiếp khung. Cổng nào, bridge nào nên tắt đi
Tổng quan về STP • Xây dựng một Spanning Tree của các Bridge (trên thực tế, cần xây dựng một ST của các LAN segment) • Chúng ta có được một root bridge Giải quyết theo thứ tự: • Làm thế nào để tìm ra một root bridge? • Làm thế nào để tính toán cho ra một ST của các Bridge? • Làm thế nào để tính toán cho ra một ST của các LAN segment?
Các bước thực hiên 1. 2. 3. 4. 5. Chọn ra một root bridge Chọn root port Xây dựng ST của các bridge Chọn designated port Xây dựng ST của các LAN segment
Example Spanning Tree B 8 Spanning Tree: B 3 B 5 root port B 2 B 1 B 7 B 2 B 4 B 5 B 6 B 7 B 1 Root B 6 B 3 B 8 B 4 Lecture 3 #38
Example Spanning Tree B 8 Forwarding Tree: B 3 B 5 B 1 root port B 2 B 7 B 2 B 4 B 5 B 7 B 1 Root B 6 B 8 Designated Bridge B 4 Note: B 3, B 6 forward nothing Lecture 3 #39
Trạng thái của STP Để tham dự vào STP, mỗi port phải trải qua những trạng thái sau: q Disable: port bị shutdown bởi người quản trị. q Blocking: sau khi port khởi tạo, nó sẽ bắt đầu ở trạng thái block và không thể nhận hay truyền dữ liệu hay thêm địa chỉ MAC vào trong table của nó. Nó chỉ có thể nhận được gói BPDU hay nói cách khác port trong chế độ standby để tránh bridge loop. Lecture 3 #40
Trạng thái của STP (tiếp) q Listen: port chuyển từ trạng thái block sang trạng thái listen. Lúc này port vẫn chưa được nhận và chuyển data. Tuy nhiên, nó có nhận và gửi BPDU để tham gia quá trình STP. Nếu port đó trở thành root port hay designed port thì nó có thể gửi BPDU sang những switch khác nhưng nếu nó không thành root port hay designed port thì nó trở về trạng thái block. Lecture 3 #41
Trạng thái của STP (tiếp) q Learning: sau khoảng thời gian Forward Delay trong trạng thái listen, port sẽ chuyển sang trạng thái learning. Port có thể gửi và nhận BPDU và có thể học địa chỉ MAC mới và gi nó vào trong table của mình. q Forwarding: sau khoảng thời gian forward delay ở trạng thái learning, port có thể chuyển sang trạng thái forwarding. Ở trạng thái này, port có thể nhận và gửi data và gói BPDU, thu thập địa chỉ MAC trong bảng table của nó. Đây là trạng thái với chức năng đầy đủ của port trong STP Lecture 3 #42
Bộ đếm thời gian của STP có ba bộ đếm thời gian để đảm bảo rằng network hội tụ trước khi bridge loop hình thành: q Hello time: là khoảng thời gian Configuration BPDU được gửi bởi root bridge. Mặc định là 2 giây. q Forward delay: là khoảng thời gian switch port chuyển từ trạng thái listening sang trạng thái learning. Lecture 3 #43
Bộ đếm thời gian của STP (tiếp) q Max( maximum) Age: là khoảng thời gian switch lưu lại BPDP trước khi loại bỏ nó. Trong khi thực hiện STP, mỗi cổng của switch giữ một bản sao của "tốt nhất" BPDU mà nó đã nghe. Nếu các cổng của switch mất liên lạc với nguồn của BPDU, các switch giả sử rằng một sự thay đổi cấu trúc liên kết đã xảy ra sau khi Max Age thời gian trôi qua và do đó, các BPDU được loại bỏ. Mặc định Max Age là 20 giây. Lecture 3 #44
THE END. Thanks! Lecture 3 #45
- Slides: 45