Broadcast Domain và VLAN (p2)

1.2. Broadcast hoạt động như thế nào?

Trong Ethernet, Broadcast được sử dụng khi thiết bị chưa biết chính xác địa chỉ MAC đích hoặc cần gửi thông tin đến tất cả các thiết bị trong cùng mạng.

Đây là cơ chế rất quan trọng giúp nhiều giao thức hoạt động bình thường.

1.2.1. Ví dụ 1. ARP Request

Để hiểu rõ cách Broadcast hoạt động trong mạng Ethernet, chúng ta hãy xem xét một ví dụ rất phổ biến: ARP Request.

Giả sử một máy tính (PC) cần gửi dữ liệu đến Default Gateway để truy cập Internet hoặc liên lạc với một mạng khác.

Máy tính đã biết địa chỉ IP của Gateway là: 192.168.10.1

Tuy nhiên, để đóng gói và truyền một Ethernet Frame trong mạng LAN, PC không chỉ cần biết địa chỉ IP mà còn phải biết địa chỉ MAC của Gateway.

Ở thời điểm này, PC chưa biết địa chỉ MAC tương ứng với IP 192.168.10.1, vì vậy nó chưa thể gửi dữ liệu.

Để giải quyết vấn đề này, PC sử dụng giao thức ARP (Address Resolution Protocol) nhằm tìm địa chỉ MAC tương ứng với địa chỉ IP cần liên lạc.

PC sẽ tạo và gửi một ARP Request với nội dung:

Who has 192.168.10.1? Tell 192.168.10.100

Thông điệp trên có thể được hiểu đơn giản là:

“Thiết bị nào đang sử dụng địa chỉ IP 192.168.10.1? Hãy trả lời cho máy có địa chỉ IP 192.168.10.100.”

Vì PC chưa biết địa chỉ MAC của Gateway nên ARP Request phải được gửi dưới dạng Broadcast.

Do đó, Ethernet Frame sẽ sử dụng địa chỉ MAC đích là: FF:FF:FF:FF:FF:FF

Đây là địa chỉ Broadcast chuẩn của Ethernet, cho phép Frame được gửi đến tất cả các thiết bị trong cùng Broadcast Domain.

Khi Switch nhận được Broadcast Frame này, Switch sẽ thực hiện cơ chế Broadcast Flooding. Cụ thể, Switch sẽ sao chép Frame và chuyển tiếp đến tất cả các cổng thuộc cùng VLAN (ngoại trừ cổng vừa nhận Frame).

Kết quả là:

  • Các máy tính khác sẽ nhận được ARP Request.
  • Máy chủ (Server) cũng nhận được.
  • Máy in (Printer) cũng nhận được.
  • Gateway cũng nhận được.

Mặc dù tất cả các thiết bị đều nhận được Broadcast Frame, chỉ có Gateway sở hữu địa chỉ IP 192.168.10.1 mới có khả năng phản hồi.

Gateway sẽ gửi lại một ARP Reply dưới dạng Unicast với nội dung:

192.168.10.1 is at 00:50:56:AA:BB:CC

Thông điệp này có nghĩa là:

“Địa chỉ IP 192.168.10.1 tương ứng với địa chỉ MAC 00:50:56:AA:BB:CC.”

Sau khi nhận được phản hồi, PC sẽ lưu cặp ánh xạ giữa địa chỉ IP và địa chỉ MAC vào ARP Cache.

Từ thời điểm đó, mỗi khi cần gửi dữ liệu đến Gateway, PC sẽ sử dụng ngay địa chỉ MAC đã lưu trong ARP Cache để đóng gói Ethernet Frame, thay vì phải gửi ARP Request thêm một lần nữa.

Nhờ vậy, quá trình truyền dữ liệu diễn ra nhanh hơn và giảm đáng kể số lượng Broadcast phát sinh trên mạng.

Điểm cần ghi nhớ: ARP Request là một Broadcast Frame, vì tại thời điểm gửi yêu cầu, máy tính chưa biết địa chỉ MAC của thiết bị đích. Do đó, Ethernet Frame sử dụng địa chỉ MAC đích FF:FF:FF:FF:FF:FF để Switch phát tán (Flood) đến tất cả các thiết bị trong cùng Broadcast Domain. Chỉ thiết bị sở hữu địa chỉ IP được yêu cầu mới phản hồi bằng ARP Reply dưới dạng Unicast. Đây là một ví dụ điển hình cho thấy Broadcast là cơ chế cần thiết trong mạng Ethernet, đồng thời cũng lý giải vì sao việc giới hạn phạm vi Broadcast bằng VLAN giúp nâng cao hiệu suất và khả năng mở rộng của hệ thống mạng doanh nghiệp.

1.2.2. Ví dụ 2. DHCP Discover

Một ví dụ điển hình khác về việc sử dụng Broadcast trong mạng Ethernet là quá trình DHCP Discover.

Khi một máy tính vừa khởi động và được cấu hình nhận địa chỉ IP tự động (DHCP Client), thiết bị vẫn chưa có bất kỳ thông tin cấu hình mạng nào. Cụ thể, máy tính chưa biết:

  • Địa chỉ IP (IP Address)
  • Default Gateway
  • DNS Server

Do chưa được cấp phát địa chỉ IP, máy tính cũng không biết DHCP Server đang ở đâu trong mạng.

Để tìm DHCP Server, máy tính sẽ gửi một thông điệp DHCP Discover dưới dạng Broadcast, với mục đích thông báo:

“Tôi là một thiết bị mới kết nối vào mạng và đang cần được cấp phát địa chỉ IP. Có DHCP Server nào trong mạng có thể hỗ trợ tôi không?”

Vì chưa biết địa chỉ IP của DHCP Server nên DHCP Discover phải được gửi đến địa chỉ Broadcast: 255.255.255.255

Đồng thời, Ethernet Frame sẽ sử dụng địa chỉ MAC đích: FF:FF:FF:FF:FF:FF

Đây là địa chỉ Broadcast chuẩn của Ethernet, cho phép gói tin được chuyển đến tất cả các thiết bị trong cùng Broadcast Domain.

Khi Switch nhận được DHCP Discover, Switch sẽ thực hiện cơ chế Broadcast Flooding, tức là sao chép và chuyển tiếp gói tin đến tất cả các cổng thuộc cùng VLAN (ngoại trừ cổng nhận).

Kết quả là mọi thiết bị trong Broadcast Domain đều nhận được DHCP Discover. Tuy nhiên, chỉ thiết bị đang chạy dịch vụ DHCP Server mới có khả năng xử lý và phản hồi.

DHCP Server sau khi nhận được yêu cầu sẽ kiểm tra phạm vi cấp phát địa chỉ (DHCP Scope hoặc Address Pool), lựa chọn một địa chỉ IP còn trống và gửi lại thông điệp DHCP Offer, đề nghị cấp phát địa chỉ IP cho máy tính.

Sau đó, quá trình cấp phát địa chỉ IP sẽ tiếp tục với các thông điệp DHCP RequestDHCP ACK, giúp máy tính hoàn tất việc nhận:

  • Địa chỉ IP
  • Subnet Mask
  • Default Gateway
  • DNS Server
  • Thời gian thuê địa chỉ IP (Lease Time)

Kể từ thời điểm này, máy tính đã có đầy đủ thông tin cấu hình mạng và có thể bắt đầu giao tiếp với các thiết bị khác cũng như truy cập Internet.

Điểm cần ghi nhớ: DHCP Discover là một Broadcast Message vì tại thời điểm khởi động, máy tính chưa có địa chỉ IP và cũng không biết DHCP Server nằm ở đâu. Do đó, gói tin được gửi đến địa chỉ IP 255.255.255.255 và sử dụng địa chỉ MAC đích FF:FF:FF:FF:FF:FF để Switch phát tán trong toàn bộ Broadcast Domain. Chính vì DHCP hoạt động dựa trên Broadcast nên việc chia nhỏ Broadcast Domain bằng VLAN không chỉ giúp giảm lưu lượng quảng bá mà còn kiểm soát tốt hơn quá trình cấp phát địa chỉ IP thông qua DHCP Server hoặc DHCP Relay trong các hệ thống mạng doanh nghiệp hiện đại.

1.2.3. Broadcast được Switch xử lý như thế nào?

Khi một Switch Layer 2 nhận được một Broadcast Frame, thiết bị sẽ thực hiện một cơ chế chuyển tiếp đặc biệt gọi là Broadcast Flooding.

Đầu tiên, Switch sẽ kiểm tra trường Destination MAC Address của Ethernet Frame. Nếu địa chỉ MAC đích có giá trị: F:FF:FF:FF:FF:FF

Switch sẽ xác định đây là một Broadcast Frame và cần được chuyển đến tất cả các thiết bị trong cùng Broadcast Domain.

Khác với Unicast, nơi Switch chỉ chuyển Frame đến một cổng duy nhất dựa trên bảng MAC Address Table, Broadcast không có một thiết bị đích cụ thể. Vì vậy, Switch sẽ sao chép (Replicate) Broadcast Frame thành nhiều bản và chuyển tiếp đến tất cả các Access Port thuộc cùng VLAN, ngoại trừ chính cổng mà Frame vừa được nhận.

Ví dụ, giả sử PC1 gửi một Broadcast Frame vào Switch.

Sau khi nhận được Frame, Switch sẽ lần lượt chuyển tiếp Broadcast đến:

  • PC2
  • PC3
  • PC4
  • Printer
  • Server

Nhờ vậy, tất cả các thiết bị trong cùng Broadcast Domain đều nhận được Broadcast Frame.

Điều cần lưu ý là Switch không bao giờ gửi Broadcast ngược trở lại cổng nhận. Điều này giúp tránh việc thiết bị gửi nhận lại chính Broadcast do mình tạo ra, đồng thời hạn chế các lưu lượng dư thừa trong mạng.

Toàn bộ quá trình sao chép và phát tán Broadcast Frame đến tất cả các cổng trong cùng VLAN được gọi là Broadcast Flooding.

1.2.4. Broadcast Flooding hoạt động trong phạm vi nào?

Một điểm rất quan trọng là Broadcast Flooding chỉ diễn ra trong cùng Broadcast Domain, hay nói chính xác hơn trong môi trường sử dụng VLAN thì chỉ diễn ra trong cùng VLAN.

Ví dụ:

  • Nếu PC1 thuộc VLAN 10, Broadcast chỉ được phát đến các thiết bị thuộc VLAN 10.
  • Các thiết bị thuộc VLAN 20 hoặc VLAN 30 sẽ không nhận được Broadcast này.

Đây chính là cơ chế giúp VLAN giới hạn phạm vi lan truyền của Broadcast và giảm đáng kể lưu lượng quảng bá trong hệ thống mạng doanh nghiệp.

1.2.5. Broadcast Flooding có phải là điều xấu?

Không hẳn.

Broadcast Flooding là cơ chế bắt buộc để nhiều giao thức mạng có thể hoạt động chính xác, chẳng hạn như:

  • ARP (Address Resolution Protocol)
  • DHCP Discover
  • VRRP
  • HSRP
  • Một số giao thức khám phá thiết bị và dịch vụ trong mạng

Tuy nhiên, nếu Broadcast Domain quá lớn với hàng trăm hoặc hàng nghìn thiết bị, mỗi Broadcast Frame sẽ phải được sao chép và gửi đến tất cả các thiết bị trong miền mạng. Điều này làm gia tăng lưu lượng Broadcast, tiêu tốn băng thông và tài nguyên xử lý của Switch cũng như các thiết bị đầu cuối.

Chính vì vậy, trong các hệ thống mạng doanh nghiệp hiện đại, người ta sử dụng VLAN để chia nhỏ Broadcast Domain, giúp giới hạn phạm vi Broadcast Flooding, nâng cao hiệu suất và cải thiện khả năng mở rộng của toàn bộ hệ thống.

Điểm cần ghi nhớ: Khi Switch nhận một Ethernet Frame có địa chỉ MAC đích FF:FF:FF:FF:FF:FF, Switch sẽ thực hiện Broadcast Flooding bằng cách sao chép và chuyển tiếp Frame đến tất cả các Access Port trong cùng VLAN, ngoại trừ cổng nhận. Cơ chế này bảo đảm mọi thiết bị trong cùng Broadcast Domain đều nhận được thông tin cần thiết, đồng thời cũng là nguyên nhân khiến lưu lượng Broadcast tăng nhanh khi quy mô mạng mở rộng. Đây chính là lý do VLAN được triển khai để chia nhỏ Broadcast Domain và kiểm soát Broadcast hiệu quả hơn.

1.2.6. Broadcast không phải lúc nào cũng xấu

Broadcast là cơ chế cần thiết cho nhiều giao thức:

  • ARP
  • DHCP
  • VRRP
  • HSRP
  • Một số giao thức Discovery

Nếu không có Broadcast:

Nhiều dịch vụ trong mạng sẽ không thể hoạt động.

Vấn đề không nằm ở Broadcast.

Vấn đề nằm ở: Broadcast quá nhiều.

Leave a Reply

Your email address will not be published. Required fields are marked *