Làm thế nào các thiết bị chuyển mạch được quản lý xử lý Broadcast Multicast và Unicast?


8

Trong các kịch bản điển hình, một bộ chuyển đổi mạng cần xử lý các tin nhắn quảng bá, phát đa hướng và không phát cùng lúc.

Tôi muốn hiểu

Trên một công tắc được quản lý thông thường (Ethernet 1Gb / Ethernet 10Gb),

a) các tin nhắn quảng bá / phát đa hướng / unicast được xử lý khác nhau như thế nào?

b) băng thông và độ trễ của việc xử lý các tin nhắn quảng bá / phát đa hướng / unicast là gì?

c) tải của các loại tin nhắn khác nhau ảnh hưởng đến nhau như thế nào?

d) Tại sao việc chuyển đổi từ quảng bá sang phát đa hướng sẽ (hoặc có khả năng, nếu được thực hiện đúng) làm giảm tải trên công tắc?

Câu trả lời:


5

Điều này phụ thuộc nhiều vào kiến ​​trúc của công tắc cụ thể được đề cập. Phạm vi giá rộng cho một "công tắc được quản lý" 48 cổng (ví dụ dưới 300 đô la đến hơn 10.000 đô la) sẽ cho bạn biết có điều gì đó khác biệt về cơ bản đang diễn ra bên trong. Nếu bạn không trả nhiều tiền cho công tắc của mình (và tôi hy vọng bạn đã không làm vậy), rất có thể các tính năng đa hướng (và các tính năng "doanh nghiệp" khác) đã được chuyển sang phần mềm (nếu chúng được hỗ trợ).

Chuyển tiếp unicast cơ bản đã trở nên khá rẻ đối với phần cứng, vì vậy tôi mong muốn bất kỳ bộ chuyển mạch Ethernet hiện đại nào sẽ hoạt động tốt ở chuyển tiếp unicast cơ bản dưới tải nhẹ.

Khi bạn bắt đầu thêm nhiều tính năng cho phần cứng, chi phí sẽ tăng lên đáng kể. Ví dụ, chuyển tiếp các khung unicast rất khác so với thực hiện sao chép gói dựa trên trạng thái phát đa hướng động. Đó là cả hai nhiệm vụ rất chuyên ngành. Nó cần các bit cụ thể của phần cứng để làm tốt một trong hai. Hầu hết người dùng thiết bị chuyển mạch cấp thấp không có nhu cầu phát đa hướng lớn. Trả tiền cho phần cứng dành riêng cho đa hướng là một sự lãng phí cho những người dùng này.

Nhưng hầu hết các mạng sử dụng một chút multicast. Do đó, thông thường các nhà sản xuất triển khai phát đa hướng và các tính năng ít được sử dụng khác trong phần mềm. Ví dụ, phần cứng chuyển tiếp unicast sẽ được yêu cầu chuyển tiếp bất cứ thứ gì có địa chỉ MAC phát đa hướng đến một cổng bên trong nơi chúng được nhận bởi một hệ thống con CPU (hoặc ít nhất là một vi điều khiển thuộc loại nào đó). Sau đó, một quy trình phần mềm có thể nhìn vào khung, tham khảo bảng chuyển tiếp phát đa hướng, sao chép khung và trao lại nhiều bản sao cho phần cứng, mỗi bản sẽ được chuyển tiếp. Rõ ràng rất nhiều tính năng có thể được thêm vào thời điểm này trong phần mềm mà không ảnh hưởng đến chi phí chuyển đổi đáng kể.

Trong một hệ thống như vậy, hiệu suất sẽ không bao giờ ở bất cứ nơi nào gần với những gì nó là unicast. Hiệu năng của CPU rõ ràng sẽ có một số tác động, nhưng nếu bạn đang gửi lưu lượng "ngoại lệ" không thể chuyển tiếp trong phần cứng, thì bạn đã làm sai . Bạn cần mua một công tắc khác.

Trong trường hợp xấu nhất, một công tắc cấp thấp thực sự sẽ không có bất kỳ sự bảo vệ tài nguyên nào, do đó, cùng một CPU bị lưu lượng phát đa hướng sẽ quên rằng nó cũng chịu trách nhiệm chăm sóc và cung cấp mọi thứ khác trong công tắc. Nếu CPU quá bận để sao chép lưu lượng phát đa hướng để giữ cho các bảng unicast được cập nhật trong phần cứng (hoặc bất cứ điều gì khác mà CPU phải làm), bạn sẽ gặp đủ loại vấn đề.


2
  1. Giống như các công tắc không được quản lý; có thể với sự phức tạp thêm của vlan và tương tự.
  2. Đây là cách thực hiện cụ thể, nhưng nhìn chung không có sự khác biệt. Bão gói có thể gây ra độ trễ, nhưng điều đó không liên quan đến loại gói cụ thể.
  3. Giống như # 2: Thực hiện cụ thể và thường không có sự khác biệt.
  4. "Tải" không phải là một thuật ngữ được xác định rõ ràng, tôi nghĩ bạn có nghĩa là sử dụng cổng. Multicast chỉ được chuyển tiếp đến các cổng được đăng ký vào nhóm nơi Broadcast được gửi đến mọi cổng (chủ đề vẫn là các phức tạp được thêm vào như vlan).

Cảm ơn Chris, tôi đang thấy một ứng dụng gây ra cơn bão phát sóng, được tạo ra bởi một lượng lớn tin nhắn quảng bá. Sau một số nghiên cứu, tôi phát hiện ra các tin nhắn quảng bá & phát đa hướng được xử lý theo cấp độ phần mềm thay vì phần cứng, tải CPU cao gây ra tình trạng giảm gói. Đó là lý do tại sao tôi muốn biết cách một công tắc (được quản lý / không được quản lý) xử lý từng loại thông báo.
Anthony S.

Tôi đang đề cập đến tải CPU trên một công tắc.
Anthony S.

Không có CPU trên một công tắc thông thường. Có bộ xử lý chuyển mạch, một số thiết bị chuyển mạch được quản lý có bộ xử lý quản lý chuyên dụng nhưng trên hầu hết nó được tích hợp.
Chris S
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.