1. Trang chủ
  2. » Giáo Dục - Đào Tạo

BÁO CÁO TRAINING FPT TELECOM TUẦN 3+4 TÌM HIỂU CÁC KIẾN THỨC CƠ BẢN VỀ NETWORK

67 4 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 67
Dung lượng 2,58 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

*Chức năng báo cáo quan hệ máy trạm IGMPv1: Các máy trạm dùng thông điệp báo cáo quan hệ máy trạm IGMP phiên bản 1 để trả lời cho các gói tin truy vấn IGMP và thông báo cho router rằng m

Trang 1

BÁO CÁO TRAINING FPT TELECOM TUẦN 3+4 TÌM HIỂU CÁC KIẾN THỨC CƠ BẢN VỀ NETWORK

NVTS: Lê Bảo Ngọc

Trang 2

11 TÌM HIỂU VỀ GIAO THỨC ĐỊNH TUYẾN MULTICAST

11.1 Tổng quan về giao thức multicast

11.1.1 Giới thiệu chung

-Cuối những năm 80, Steve Deering làm việc trên một dự án trong đó có nhu cầu gửi một thông điệp từ một máy tính đến một nhóm các máy tính thông qua các giao thức lớp 3 Sau khi nghiên cứu vài giao thức định tuyến, Deering kết luận rằng chức năng của các giao thức định tuyến có thể mở rộng để hỗ trợ cơ chế Multicast lớp 3 Định nghĩa cơ bản

dùng Broadcast(kể cả đích đó không có nhu cầu tiếp cận thông điẹp đó)

Các ứng dụng chẳng hạn như âm thanh, hình ảnh, các chương trình TV quảng bá…

Multicast đã được nghiên cứu như một thành phần của Internet, được biết đến như dự án Multicast mạng chính, Mbone Tuy nhiên muốn triển khai Multicast trên toàn mạng Internet thì phải chờ các nghiên cứu về BGP đa giao thức và Giao thức Multicast BGP

-Multicast là phương thức truyền làm sao cho server cung cấp dịch vụ cho tới từng client

tối ưu nhất về băng thông truyền trên mạng, lúc đó cần 1 địa chỉ IP đặc biệt đại diện cho

1 nhóm mà khi truyền thông điệp hay bản tin nào đó qua giao thức này thì chỉ những client trong nhóm được định danh bởi IP dặc biệt đó mới nhận được

-Ví dụ trong định tuyến OSPF hay EIGRP, khi gửi bản tin giao thức cập nhật định tuyến, thì chỉ các giao thức nằm trong vùng định tuyến đó mới chạy được Cụ thể trong OSPF,

khi ta gửi bản tin cập nhật định tuyến tới địa chỉ 224.0.0.5 thì tất cả các DR(Designated

Route) sẽ nhận được bản cập nhật định tuyến đó và chỉ những DR trong OSPF mới nhận được vì đó là địa chỉ đặc biệt đại diện cho nhóm DR Hay trong thực tế, mỗi một thuê bao thuộc các nhà mạng viễn thông di động thì sẽ được join vào 1 group multicast để nhận được thông tin từ địa chỉ nguồn

11.1.2 Ba kiểu truyền lưu lượng IP trên router và switch

- Unicast: Các gói tin được gửi từ một địa chỉ nguồn đến một địa chỉ đích Một router

hoặc một thiết bị lớp 3 sẽ chuyển các gói tin bằng cách tìm địa chỉ đích trong bảng định tuyến Nếu một thiết bị là L2, nó chỉ cần dựa vào địa chỉ MAC

Trang 3

Tuy nhiên, Phương thức dùng Unicast không có khả năng mở rộng Nếu chuyển sang dùng Broadcast, ta chỉ cần truyền dữ liệu một lần, tuy nhiên lúc này sẽ gặp vài vấn đề nghiêm trọng

• Đầu tiên, nếu bên máy nhận nằm trong vùng Broadcast khác máy gửi, router cần phải truyền dữ liệu Broadcast Tuy nhiên, truyền gói tin dạng Broadcast có thể là giải pháp kém nhất vì sẽ tốn rất nhiều băng thông và tăng tải trên tất cả các thiết bị mạng nếu chỉ có một nhóm nhỏ các máy trong mạng thực sự cần nhận gói tin.\

Trang 4

• Broadcast: Các gói tin được gừi từ một máy nguồn đến một địa chỉ đích

Broadcast Địa chỉ đích có thể là địa chỉ tất cả các máy trạm (255.255.255.255) hoặc là một phần của địa chỉ mạng con Một router hoặc một switch lớp 3 sẽ không cho phép chuyển các dữ liệu Broadcast này Một thiết bị L2 sẽ cho phép phát tán lưu lượng Broadcast ra tất cả các cổng của nó

• Multicast: Các gói được gửi từ một địa chỉ nguồn đến một nhóm các máy tính Địa chỉ đích tượng trưng cho các máy trạm muốn nhận lưu lượng này Mặc định, một router hoặc một switch lớp 3 sẽ không chuyển các gói tin này trừ khi phải cấu hình định tuyến Multicast Một thiết bị switch lớp 2 không thể nhận biết được vị trí của

Trang 5

địa chỉ Multicast đích Tất cả các gói sẽ được phát tán ra tất cả các cổng ở chế độ mặc định

- Có hai thái cực được mô tả ở đây Cơ chế dùng Unicast thì dữ liệu sẽ đi từ máy trạm đến máy trạm; Broadcast thì lưu lượng sẽ đi đến tất cả các máy trạm trên phân đoạn mạng đó

Cơ chế Multicast sẽ nằm giữa hai thái cực này, trong đó máy nguồn chỉ gửi những gói tin

từ một máy trạm đến các người dùng muốn nhận loại lưu lượng đó đó Nhóm này gọi là nhóm Multicast Các máy nhận lưu lượng Multicast có thể nằm ở bất cứ nơi nào chứ không chỉ trên phân đoạn mạng cục bộ

-Các lưu lượng dạng Multicast thường là một chiều (unidirectional) Do có nhiều máy trạm nhận cùng một dữ liệu, nên thông thường các gói tin không được phép gửi ngược về máy nguồn trên cơ chế Multicast Một máy trạm đích sẽ trả lưu lượng ngược về nguồn theo cơ chế Unicast Cơ chế Multicast cũng sẽ được truyền theo kiểu không kết nối

(connectionless) Multicast dùng UDP chứ không dùng TCP

-Các máy trạm muốn nhận dữ liệu từ một nguồn Multicast có thể tham gia hoặc rời khỏi một nhóm Multicast ở bất kỳ thời điểm nào Hơn nữa, một máy trạm sẽ quyến định có trở thành thành viên của một hay nhiều nhóm Multicast hay không Nguyên tắc cần quan tâm

Trang 6

là sẽ hoạch định làm thế nào để phân phối các lưu lượng Multicast đến các thành viên của nhóm mà không ảnh hưởng đến các thành viên ngoài nhóm

-Có ba yêu cầu cơ bản để có thể triển khai Multicast trên một mạng:

• Phải có một tập hợp các địa chỉ dành cho các nhóm Multicast

• Phải có một cơ chế trong đó các máy trạm có thể tham gia và rời khỏi nhóm

• Phải có một giao thức định tuyến cho phép các router phân phối các lưu lượng Multicast tới các thành viên của nhóm mà không làm quá tải tài nguyên mạng

Máy chủ join vào multicast group

Trang 7

11.1.3 Địa chỉ MAC của multicast

-Khi làm việc với địa chỉ IP lớp 3 thì vẫn phải đóng xuống frame lớp 2, khi đóng xuống

frame lớp 2 thì ta cần địa chỉ MAC đích của nó(đặt ra câu hỏi địa chỉ nào là địa chỉ MAC đích, nó có dùng địa chỉ ARP ánh xạ sang địa chỉ MAC không và câu trả lời là không dùng ARP vì nó không dùng unicast dùng ARP để xin địa chỉ MAC còn multicast thì không hỏi ARP) Multicast thì có quy định cho địa chỉ MAC như sau:

Máy chủ rời khỏi multicast group

Trang 8

Như chúng ta đã thấy ở trên, địa chỉ IP multicast có 32 bit nhưng 4 bit đầu tiên giống nhau (1110) bởi vì nó nằm trong dải IP từ 224.0.0.0 đến 239.255.255.255

*Toàn bộ không gian địa chỉ Multicast: 224.0.0.0 - 239.255.255.255

• Địa chỉ liên kết cục bộ (link-local): 224.0.0.0 - 224.0.0.255 được dùng bởi các

giao thức định tuyến Router sẽ không chuyển các gói tin có địa chỉ này Các địa chỉ bao gồm địa chỉ tất cả các máy trạm 224.0.0.1, tất cả các router 224.0.0.2, tất

cả các OSPF router 224.0.0.5…224.0.1.1 dùng cho giao thức NTP Đây là địa chỉ các nhóm cố định vì các địa chỉ này được định nghĩa trước

• Địa chỉ 232.0.0.0-232.255.255.255: Địa chỉ GLOP trong tầm

233.0.0.0-233.255.255.255 Địa chỉ toàn cục (224.0.1.0 - 238.255.255.255) được dùng bởi bất cứ đối tượng nào Các địa chỉ này có thể được định tuyến trên Internet, vì vậy địa chỉ này phải duy nhất

• Địa chỉ Multicast cho những nhóm thường trực: IANA dành ra hai dãy địa chỉ

dành riêng cho Multicast Sự khác nhau giữa hai dãy địa chỉ này là dãy thứ nhất được dùng cho những gói tin không nên được truyền bởi router và dãy thứ hai được dùng khi các gói tin phải được truyền bởi router Dãy địa chỉ được dùng cho cục bộ là 224.0.0.0 đến 224.0.0.255 Các địa chỉ này tương tự như các địa chỉ dùng bởi các giao thức định tuyến Ví dụ như 224.0.0.5 và 224.0.0.6 được dùng bởi OSPF Các ví dụ khác bao gồm địa chỉ Multicast 224.0.0.1 chỉ ra tất cả các máy trạm có thể xử lý Multicast và 224.0.0.2 chỉ ra tất cả các router có khả năng xử lý Multicast Dãy các địa chỉ nhóm được dùng khi các gói tin phải được định tuyến là 224.0.1.0 đến 224.0.1.255 Dãy địa chỉ này bao gồm 24.0.1.39 và 224.0.1.40 là hai địa chỉ được dùng bởi Auto-RP

Trang 9

• Địa chỉ Multicast cho các ứng dụng Multicast SSM: IANA đã cấp phát dãy địa

chỉ 232.0.0.0 đến 232.255.255.255 cho các ứng dụng SSM Mục đích của ứng dụng này là cho phép một máy trạm chọn ra một nguồn cho các nhóm Multicast SSM giúp cho việc định tuyến Multicast trở nên hiệu quả hơn, cho phép một máy trạm chọn lựa một nguồn có chất lượng tốt hơn và giúp các nhà quản trị mạng giảm thiểu kiểu tấn công Multicast DoS Chỉ có các máy trạm chạy IGMP phiên bản 3 có khả năng dùng tính năng SSM IGMP phiên bản 3 là một giao thức mới

• Địa chỉ Multicast cho các ứng dụng GLOP: IANA dành ra dãy địa chỉ 233.0.0.0

đến 233.255.255.255.255 gọi là địa chỉ GLOP Địa chỉ này có thể được dùng bởi bất kỳ ai đang có một AS hợp lệ (registered autonomous system number - ASN)

để tạo ra 256 địa chỉ Multicast toàn cục IANA dành riêng các địa chỉ này để đảm bảo tính duy nhất toàn cục của địa chỉ Bằng cách dùng giá trị 233 cho byte đầu tiên và bằng cách dùng ASN cho byte thứ hai và thứ ba, một AS có thể tạo ra một địa chỉ Multicast toàn cục Ví dụ nếu AS dùng số hiệu mạng ASN 5663, giá trị này

có thể chuyển sang dạng nhị phân là 0001011000011111 8 bit đầu tiên,

00010110, bằng với 22 trong dạng thập phân và 8 bit cuối, 00011111, bằng với 31 trong dạng thập phân Ánh xạ 8 bit đầu tiên vào byte thứ hai và 8 bit cuối vào byte thứ ba trong dãy địa chỉ 233, công ty nào có mạng AS là 5663 sẽ được tự động cấp dãy địa chỉ 233.22.31.0 đến 233.22.31.255 GLOP không phải là một từ viết tắt và không tượng trưng cho bất kỳ cái gì

• Địa chỉ Multicast cho những vùng riêng: Dãy địa chỉ dành riêng cuối cùng là

dãy địa chỉ dành cho quản trị IANA gán dãy địa chỉ 239.0.0.0 đến

239.255.255.255 (RFC 2365) để dùng trong những miền Multicast IANA sẽ không gán các tầm địa chỉ này tới bất kỳ một giao thức nào hoặc một ứng dụng nào Các nhà quản trị mạng có thể tự do sử dụng các địa chỉ trong dãy này, tuy nhiên họ phải cấu hình các router Multicast để đảm bảo Multicast lưu lượng trong dãy địa chỉ này không vượt quá ranh giới của miền Multicast

• Địa chỉ Multicast tạm thời cho các nhóm

Trang 10

Điều đó có nghĩa là mỗi địa chỉ IP multicast chỉ có 28 bit là duy nhất với khác nhau để phân biệt so với các địa chỉ còn lại Bây giờ ví dụ khi ta muốn map 28 bit địa chỉ IP multicast tới 23 bit địa chỉ MAC thì ta sẽ đối diện ngay vấn đề là 5 bit của IP multicast sẽ

bị miss:

- Vì vậy, ta phải nắm được nguyên tắc chuyển đổi từ địa chỉ IP sang địa chỉ MAC:

• Với địa chỉ MAC được định danh trên card mạng thông thường, 24 bit đầu được định danh theo nhà sản xuất, 24 bit sau định nghĩa theo card mạng, còn trường hợp

là địa chỉ MAC của multicast, ta có thể định danh luôn, ở đây là 01-00-5e

• Cứ 1 địa chỉ IP của mutlicast thì ta lấy 23 bit từ phải qua để thiết lập địa chỉ MAC

Sẽ có 1 cơ số địa chỉ IP trùng với địa chỉ MAC Đáng lẽ sẽ có 9 bit chênh giữa địa

Trang 11

chỉ IP và MAC(32-23) nhưung do trong trong địa chỉ IP multicast đã có 4 bit có

định nên chỉ có 5 bit là bất định => Có 2^5=32 địa chỉ IP chung địa chỉ MAC với

nhau

Ví dụ ta có địa chỉ IP 226.139.1.2 khi chuyển sang hệ binary:

Sau đó ta lấy 23 bit từ phải qua trái, chuyển đổi theo hệ hexa:

Như vậy, ta sẽ có địa chỉ MAC là 01:00:5e:0b:01:02 tương ứng với địa chỉ IP 226.139.1.2

11.1.4 Cơ chế của multicast hỗ trợ khả năng mở rộng và quản lý

-6 yêu cầu cơ bản để hỗ trợ các ứng dụng Multicast trên một hạ tầng mạng là:

Layer 2 Multicast MAC Address Overlap

Trang 12

• Một dãy địa chỉ dành riêng cho địa chỉ lớp 3 mà chỉ được dùng bởi các ứng dụng Multicast Người quản trị cần phải cài đặt một ứng dụng Multicast trên một máy chủ Multicast dùng địa chỉ lớp 3

• Một địa chỉ Multicast chỉ được dùng như là địa chỉ đích và không được là địa chỉ nguồn Không giống như gói tin Unicast, một địa chỉ đích IP trong một gói

Multicast không chỉ ra địa chỉ của máy nhận mà chỉ đơn giản có ý nghĩa là gói tin đang mang dữ liệu Multicast

• Các ứng dụng Multicast phải được cài đặt trên tất cả các máy trạm trong mạng cần phải nhận lưu lượng Multicast cho ứng dụng Ứng dụng phải được cài đặt dùng cùng địa chỉ Multicast lớp 3 với địa chỉ của máy chủ

• Tất cả các máy trạm kết nối vào cùng một mạng LAN phải dùng cùng một phương thức chuẩn để tính toán địa chỉ L2 từ địa chỉ Multicast L3 và gán nó vào card mạng Ví dụ, nếu nhiều router cùng kết nối vào một mạng và tất cả đều chạy OSPF, tất cả các cổng Ethernet của tất cả các router sẽ có khả năng lắng nghe đến địa chỉ Multicast ngoài địa chỉ MAC của chính cổng đó

• Phải có một cơ chế trong đó một máy trạm có thể báo cho router kết nối trực tiếp rằng máy trạm muốn nhận lưu lượng cho ứng dụng Multicast Giao thức IGMP cung cấp cơ chế giao tiếp giữa máy trạm và router trong cùng mạng con CGMP hay giám sát IGMP (IGMP snooping) giúp các switch học thông tin máy trạm nào

đã nhận lưu lượng cho các ứng dụng Multicast và các máy trạm này gắn vào cổng nào của switch

• Phải có một giao thức định tuyến Multicast trong đó cho phép các router truyền các dữ liệu Multicast từ máy chủ đến các máy trạm mà không làm tốn tài nguyên mạng Một vài giao thức định tuyến Multicast là DVMRP (Distance Vector

Multicast Routing Protocol), MOSPF (Multicast Open Shortest Path First), và PIM-DM (Protocol Independent Multicast Dense Mode) và PIM-SM (Protocol Independent Multicast Sparse Mode)

Trang 13

-Giả sử rằng một ứng dụng hình ảnh được cài đặt trên một máy chủ dùng địa chỉ

Multicast là 225.5.5.5 Các máy trạm từ 1 đến 49, nằm trên các kết nối WAN thì không quan tâm đến lưu lượng này Các máy trạm từ 50 đến 100 thì quan tâm đến việc nhận lưu lượng cho ứng dụng này và chạy ứng dụng trên PC

▪ Khi các máy trạm chạy ứng dụng Multicast, các máy trạm sẽ tham gia vào nhóm,

có nghĩa là các máy trạm bây giờ muốn nhận các gói Multicast được gửi về địa chỉ 225.5.5 Các máy trạm từ 50 đến 100 tham gia vào nhóm 225.5.5.5 và báo cho R2 thông qua IGMP rằng các máy trạm này muốn nhận lưu lượng Các ứng dụng Multicast tính toán địa chỉ lớp 2 0x0100.5e05.0505 từ địa chỉ lớp 3 225.5.5.5 và các card mạng của các máy từ 50 đến 100 sẽ lắng nghe địa chỉ này bên cạnh các lưu lượng đến địa chỉ MAC BIA

▪ Một giao thức định tuyến Multicast được cấu hình giữa R1 và R2 sao cho các router có thể truyền các lưu lượng Multicast R2 có một kết nối đến mạng Frame Relay và hai cổng Ethernet kết nối đến hai switch, Sw2 và Sw3 R2 biết rằng nó

Trang 14

có các máy trạm trên cả hai kết nối muốn nhận lưu lượng của nhóm 225.5.5.5 Cả hai switch cũng sẽ ghi nhận các cổng của các máy trạm muốn nhận Multicast thông qua hai giao thức CGMP và IGMP snooping Một gói Multicast truyền tín hiệu hình ảnh từ máy chủ trên kết nối Ethernet đến R1 và R1 sẽ truyền một gói tin Multicast trên kết nối WAN đến R2 Khi R2 nhận gói Multicast, R2 sẽ nhân bản gói Multicast và truyền trên từng kết nối Ethernet

▪ Vì đây là gói tin Multicast, R2 sẽ tính địa chỉ lớp 2 0x0100.5e05.0505 và dùng nó như địa chỉ MAC đích, sau đó R2 sẽ truyền khung tin này đến cả hai switch Khi các switch nhận được các khung tin này, switch sẽ truyền khung tin ra các cổng phù hợp Khi các máy trạm nhận được các gói này, card mạng sẽ so sánh địa chỉ MAC đích với địa chỉ Multicast mà máy đang lắng nghe Nếu là đúng, card mạng

sẽ thông báo cho các lớp cao hơn xử lý gói tin

11.1.5 IP Multicast Routing Protocol

-IGMP(Internet Group Management Protocol) được sử dụng giữa các máy chủ trong

mạng LAN và các bộ định tuyến trên mạng LAN đó để theo dõi các multicast group mà

máy chủ là thành viên

-Protocol Independent Multicast (PIM) được sử dụng giữa các bộ định tuyến để chúng có thể theo dõi các gói phát đa hướng nào sẽ chuyển tiếp đến nhau và đến các mạng LAN được kết nối trực tiếp của chúng

11.2 Network Access và multicast lớp 2

-Tính đóng gói(Encapsulation) là một thành phần quan trọng của mô hình OSI để truyền thông dữ liệu và hoàn toàn cần thiết trong mạng IP Đóng gói là phương pháp mà thông tin được thêm vào ở mỗi lớp của mô hình tham chiếu OSI, được sử dụng cho mục đích xử

lý và chuyển tiếp Thông tin này được thêm vào headers và footers Tại mỗi lớp của mô hình tham chiếu OSI, dữ liệu được xử lý, đóng gói và được gửi đến lớp tiếp theo

Trang 15

-Dữ liệu từ các lớp ứng dụng, bản trình bày và phiên (Lớp 1, 2 và 3) được đóng gói ở Lớp

4 với thông tin giao thức truyền tải Thông tin này được đóng gói trong TCP và / hoặc UDP với số cổng cụ thể Ví dụ, cổng TCP 80 thường là lưu lượng truy cập web Điều này cho phép hệ điều hành chuyển tiếp dữ liệu tới một ứng dụng hoặc chương trình con thích hợp Lớp 3 bổ sung các chi tiết chuyển tiếp logic (địa chỉ IP nguồn và đích) để các thiết

bị mạng có thể xác định đường dẫn tốt nhất đến đích Cuối cùng,

-Lớp 2 thêm thông tin chuyển tiếp phần cứng (địa chỉ MAC nguồn và đích) Điều này cho phép dữ liệu được truyền vật lý đến máy thích hợp hoặc bước tiếp theo trong mạng Việc truyền dữ liệu ở Lớp 4 được gọi là một đoạn, một gói ở Lớp 3 và một khung ở Lớp

2

-Để giải thích rõ hơn điều gì xảy ra với một gói tin truyền qua mạng, chúng ta sẽ tập trung vào trình truyền tải Lớp 2 và Lớp 3 Đầu tiên, trước khi bên gửi có khả năng đóng gói bất kỳ dữ liệu nào, trước tiên nó phải biết được đích nằm ở đâu Bên gửi thực hiện một kiểm tra đơn giản để xác minh xem thiết bị nhận có nằm trên cùng một mạng con hay không Điều này được thực hiện bằng cách kiểm tra địa chỉ IP đích so với mạng con cục bộ Trong ví dụ này, bên nhận không giống nhau mạng con Bên gửi phải sử dụng

Mô hình OSI và đóng gói dữ liệu

Trang 16

tuyến đường đã định cấu hình đến đích Trong hầu hết các trường hợp, đây là cổng mặc định

Trước khi người gửi có thể giao tiếp với cổng mặc định, nó phải biết địa chỉ (MAC) của thiết bị đó Vì điểm đến nằm trên một phân đoạn khác, bên gửi sẽ cần phải khám phá địa chỉ MAC của cổng mặc định (địa chỉ IP 10.1.1.1) bằng cách sử dụng ARP Cổng mặc định phản hồi yêu cầu ARP bằng địa chỉ MAC của nó Cuối cùng, bên gửi có đủ thông tin để đóng gói dữ liệu với địa chỉ IP đích của Máy chủ A và địa chỉ MAC của cổng mặc định

-Cổng hoặc bộ định tuyến mặc định có thông tin định tuyến IP Lớp 3 xác định nơi Máy chủ A được kết nối vật lý Thông tin này xác định giao diện gửi đi thích hợp mà tin nhắn

sẽ được gửi đến Bộ định tuyến phải biết địa chỉ MAC của bộ định tuyến hàng xóm nếu

có một giao thức định tuyến được thiết lập liền kề Nếu không, quy trình yêu cầu ARP tương tự được tiến hành Với thông tin này, bộ định tuyến bây giờ có thể chuyển tiếp tin nhắn Hiểu rằng cả hai địa chỉ Lớp 2 (SA và DA) thay đổi ở mỗi bước logic trong mạng, nhưng địa chỉ Lớp 3 không bao giờ thay đổi và được sử dụng để thực hiện tra cứu tuyến đường

Khi gói được chuyển tiếp đến bộ định tuyến cuối cùng, bộ định tuyến đó phải thực hiện tra cứu và xác định địa chỉ MAC của IP đích Vấn đề này tồn tại một phần là do các tác động lịch sử của Ethernet Ethernet là một phương tiện vật lý được gắn vào mạng bus logic Trong mạng bus truyền thống, nhiều thiết bị có thể được kết nối với một dây duy nhất Nếu bộ định tuyến cổng không có mục nhập từ giao tiếp trước đó, nó sẽ gửi ARP yêu cầu và cuối cùng đóng gói với địa chỉ MAC đích của máy chủ

Quá trình truyền tải dữ liệu trên lớp 2 và lớp 3

Trang 17

11.3 Tìm hiểu về IGMP(giao thức quản lý nhóm)

11.3.1 Tổng quan về IGMP

-Để nhận dữ liệu multicast từ 1 nguồn, các máy nhận đầu tiên phải tham gia vào 1 nhóm

1 multicast, được xác định thông qua địa chỉ multicast 1 host có thể tham gia vào nhiều nhóm multicast bằng cách gửi các yêu cầu đến router gần nhất Thao tác này được thực hiện thông qua giao thức IGMP Giao thức IGMP được phát triển từ Host Membership Protocol IGMP phát triển từ IGMPv1(RFC 1112) đến IGMP v2(RFC 2236) và phiên bản cuối cùng IGMPv3(RFC 3376) Các thông điệp IGMP được đóng gói trong IP Datagram với trường protocol number bằng 2, trong đó trường TTL(time-to-live) có giá trị bằng 1 Các gói IGMP chỉ truyền được trong LAN và không tiếp tục truyền được trong LAN khác do giá trị TTL của nó

-2 mục đích quan trọng nhất của IGMP là:

• Thông báo cho router multicast biết rằng có 1 máy muốn nhận dữ liệu từ 1 nhóm multicast

• Thông báo cho router biết có 1 máy muốn rời nhóm multicast

Trang 18

Một thông điệp IGMP phiên bản 1 có 5 trường:

• Phiên bản (Version): trường này có độ dài 4 bit, luôn luôn gán giá trị bằng 1

• Loại (Type): Trường giá trị 4 bit, chỉ ra 2 loại thông điệp được định nghĩa bởi

IGMP phiên bản 1 Loại 1 là kiểu truy vấn quan hệ máy trạm (Host Membership Query), chỉ được dùng bởi router Loại 2 là kiểu báo cáo quan hệ máy trạm (Host Membership Report) được dùng chỉ bởi máy trạm

• Chưa dùng (Unused): trường này có độ dài 8 bit chứa giá trị 0 khi được gửi và bị

bỏ qua khi được nhận

• Kiểm tra lỗi (Checksum): mang giá trị 16 bit kiểm tra lỗi được tính toán bởi

nguồn của thông điệp IGMP Thiết bị nhận thường kiểm tra giá trị kiểm tra lỗi và nếu giá trị này không đúng bằng giá trị đã tính toán, máy nhận sẽ loại bỏ khung tin

• Địa chỉ nhóm (Access Group): Được gán về giá trị 0.0.0.0 khi router gửi ra gói

tin truy vấn quan hệ (Membership Query) Giá trị này được gán giá trị địa chỉ nhóm Multicast khi một máy gửi thông điệp báo cáo quan hệ (Membership

Report)

- Tuy nhiên IGMP phiên bản 1 không có cơ chế để cho phép một máy trạm rời khỏi một nhóm nếu máy trạm đó không còn quan tâm đến nội dung của nhóm Multicast đó Thay vào đó, router sẽ kết luận là một cổng giao tiếp của bó không còn thuộc về một nhóm

Trang 19

Multicast nào nếu router không nhận được thông điệp đáp trả (membership report) trong

ba chu kỳ truy vấn liên tiếp Điều này có nghĩa là, ở chế độ mặc định, các lưu lượng Multicast vẫn gửi vào một phân đoạn mạng trong ba chu kỳ truy vấn liên tiếp sau khi tất

cả các thành viên của nhóm không còn lắng nghe Multicast lưu lượng nữa Ngoài ra, router không có giữ một danh sách đầy đủ các máy thành viên cho từng nhóm Multicast Thay vào đó, nó cần phải lưu những nhóm Multicast nào là đang tồn tại trên những cổng nào của nó

Để tham gia vào một nhóm Multicast, một máy trạm sẽ gửi một thông điệp đăng ký tham gia vào nhóm đến router cục bộ của nó Thông điệp này có tên là báo cáo về tình trạng thành viên của IGMP (Membership Report IGMP) Thông điệp này sẽ thông báo cho router về địa chỉ nhóm Multicast mà máy trạm muốn tham gia vào Địa chỉ Multicast tượng trưng cho tất cả các máy 224.0.0.1 được dùng như địa chỉ đích Trong thông điệp này có chứa địa chỉ nhóm Multicast

Ví dụ dưới đây ta có 1 định tuyến và 2 máy chủ Trên định tuyến này, chúng ta cho phép định tuyến multicast và IGMP trên Gigabit 0/1 interface của nó:

*Chức năng truy vấn quan hệ máy trạm IGMPv1:

Trang 20

Các thông điệp IGMP phiên bản 1 chỉ được gửi bởi router trên các cổng LAN Chi tiết như sau:

• Các máy H1 và H3 tham gia vào nhóm Multicast 226.1.1.1 Tác vụ tham gia làm cho các máy này sẵn sàng nhận các thông điệp được gửi đến cả hai địa chỉ 226.1.1.1 và địa chỉ 224.0.0.1 (là địa chỉ mà các gói tin truy vấn IGMP phiên bản 1 sẽ được gửi Các máy Multicast sẽ phải lắng nghe địa chỉ 224.0.0.1 để tham gia vào IGMP và để có thể nhận được các gói tin truy vấn gửi ra từ router Hai địa chỉ MAC tương ứng là 01-00-5e-01-01-01 (của địa chỉ

226.1.1.1) và 01-00-5e-00-00-01 (tương ứng của 224.0.0.1)

• R1 gửi một thông điệp truy vấn IGMP phiên bản 1 ra từng cổng LAN, tìm kiếm bất kỳ máy trạm nào quan tâm đến việc nhận lưu lượng Multicast R1 định kỳ mỗi 60 giây gửi thông điệp truy vấn IGMP phiên bản 1 Khoảng thời

gian này được gọi là khoảng thời gian truy vấn

• Sau khi gửi ra thông điệp truy vấn, R1 mong đợi rằng bất kỳ máy nào tham gia vào nhóm 226.1.1.1 hoặc bất kỳ nhóm nào khác sẽ trả lời lại bằng thông điệp báo cáo IGMP phiên bản 1 Gói tin truy vấn IGMP phiên bản 1 có TTL là 1, điều này làm cho gói tin sẽ không bị định tuyến qua mạng khác Trong trường địa chỉ nhóm của gói truy vấn IGMP phiên bản 1, giá trị của trường này luôn luôn là 0.0.0.0 Bằng cách gửi thông điệp truy vấn IGMP phiên bản 1 đến địa

Trang 21

chỉ nhóm 0.0.0.0 router sẽ hỏi các máy trạm khác trong LAN là “Có còn ai

muốn nhận Multicast lưu lượng cho bất kỳ nhóm nào không?”

• Ở thời điểm này, router R1 vẫn không biết có máy trạm nào cần nhận lưu lượng Multicast nào hay không Phần kế tiếp sẽ khảo sát các máy trạm trả lời

bằng thông điệp báo cáo IGMP như thế nào

*Chức năng báo cáo quan hệ máy trạm IGMPv1:

Các máy trạm dùng thông điệp báo cáo quan hệ máy trạm IGMP phiên bản 1 để trả lời cho các gói tin truy vấn IGMP và thông báo cho router rằng máy muốn nhận Multicast Các máy trạm Multicast dùng thông điệp báo cáo IGMP phiên bản 1 để giao tiếp với các router, nêu rõ địa chỉ nhóm Multicast mà máy muốn nhận Trong IGMP phiên bản 1, một máy trạm gửi thông điệp báo cáo quan hệ máy trạm IGMP phiên bản 1 trong 2 tình huống sau:

• Khi một máy trạm nhận được một gói tin truy vấn IGMP phiên bản 1 từ router, máy trạm sẽ giả sử gửi báo cáo quan hệ máy trạm cho tất cả các nhóm Multicast

mà nó muốn nhận lưu lượng Thông điệp này được gọi là thông điệp báo cáo yêu cầu quan hệ máy trạm IGMP phiên bản 1

• Khi một máy trạm tham gia vào một nhóm mới, máy trạm muốn ngay lập tức gửi

ra báo cáo quan hệ máy trạm IGMP phiên bản 1 để thông báo cho router rằng nó muốn nhận lưu lượng cho nhóm đó mà không cần chờ gói tin truy vấn IGMP phiên bản 1 Thông điệp này được gọi là báo cáo không yêu cầu quan hệ máy trạm IGMP phiên bản 1

Trang 22

• Hình trên mô tả hoạt động của báo cáo yêu cầu quan hệ máy trạm IGMP phiên bản

1 và cơ chế để giảm thông điệp báo cáo Hình 19.10 mô tả các bước tiếp theo khi R1 đã gửi ra gói tin truy vấn IGMP phiên bản 1 Thời gian đáp ứng tối đa

(Maximum Responese Time – MRT), thời gian tính bằng giây, được máy trạm chọn lựa ngẫu nhiên Nếu nhiều máy trạm đã chạy ứng dụng Multicast và nếu tất

cả các máy trạm này trả lời thông điệp truy vấn IGMP phiên bản 1 bằng thông điệp báo cáo quan hệ máy trạm, sẽ có quá nhiều thông điệp báo cáo được gửi dư

về router Điều này làm lãng phí băng thông và tăng tải một cách không cần thiết trên router Một router chỉ cần nhận một thông điệp báo cáo cho mỗi ứng dụng trên mỗi cổng LAN của nó Một router sẽ chuyển Multicast lưu lượng vào cổng LAN cho dù chỉ có một người dùng hay 200 người dùng trên phân đoạn mạng đó muốn nhận Multicast lưu lượng

• Cơ chế giảm thông điệp báo cáo giúp giải quyết vấn đề này Cơ chế này dùng bộ định thời MRT của IGMP phiên bản 1 để giảm bớt những thông điệp báo cáo của IGMP phiên bản 1 Bộ định thời này được gọi là khoảng thời gian trả lời truy vấn (Query Response Interval) Khoảng thời gian này được cấu hình cố định là 10 giây

và không thể thay đổi sang giá trị khác trong IGMP phiên bản 1 Nói cách khác, trong IGMP phiên bản 1, khi có bất kỳ máy trạm nào nhận một thông điệp truy vấn IGMP phiên bản 1, nó sẽ có một khoảng thời gian tối đa là 10 giây để gửi thông điệp báo cáo IGMP phiên bản 1 nếu nó muốn tiếp tục nhận lưu lượng

Multicast

• Mỗi máy trạm muốn gửi báo cáo yêu cầu quan hệ máy trạm IGMP phiên bản 1 sẽ chọn một khoảng thời gian ngẫu nhiên giữa 0 và 10 và bắt đầu một bộ định thời Khi khoảng thời gian ngẫu nhiên này hết, máy trạm sẽ giả sử là gửi một thông điệp báo cáo Tuy nhiên, nếu một máy trạm nhận được một thông điệp báo cáo được gửi bởi một máy trạm khác cho cùng nhóm Multicast mà nó cũng muốn nhận lưu lượng , máy trạm này sẽ không gửi ra thông điệp báo cáo Cơ chế này được gọi là

cơ chế giảm thông điệp báo cáo

• Đơn vị đo lường cho khoảng thời gian MRT là 1/10 giây Ví dụ, một khoảng thời gian 3 giây sẽ được mô tả bằng giá trị MRT là 30

Trang 23

Với cơ chế giảm thông điệp báo cáo của IGMPv1:

• Các máy H1 và H3 sẽ muốn gửi thông điệp báo cáo yêu cầu quan hệ máy trạm IGMP phiên bản 1 Giả sử rằng H1 và H3 đã nhận được một gói tin truy vấn IGMP phiên bản 1 Bởi vì cả H1 và H3 đều đã tham gia vào nhóm 226.1.1.1, cả hai máy trạm cần phải gửi một thông điệp báo cáo yêu cầu quan hệ IGMP phiên bản 1 Ngoài ra giả sử thêm rằng cả H1 và H3 đã chọn ngẫu nhiên một khoảng thời gian MRT là 3 giây và 1 giây

• Bộ định thời của H3 sẽ bị hết hạn trong 1 giây, H3 chuẩn bị gửi ra thông điệp báo cáo yêu cầu quan hệ máy trạm IGMP phiên bản 1 với giá trị TTL là 1 H3 dùng địa chỉ IP đích là IGMP phiên bản 1 là 226.1.1.1 và địa chỉ nguồn là 10.1.1.3 Địa chỉ đích MAC là 01-00-5e-01-01-01 được tính toán từ địa chỉ 226.1.1.1 và địa chỉ MAC của H3 là địa chỉ nguồn của khung tin

• Các máy H1, H2 và R1 nhận thông điệp báo cáo yêu cầu quan hệ máy trạm IGMP phiên bản 1 nhưng chỉ có H1 và R1 là xử lý gói báo cáo Card mạng của H2 sẽ bỏ khung tin được gửi bởi H3 bởi vì nó không lắng nghe địa chỉ 01-00-5e-01-01-01 H1 nhận ra rằng H3 đã có gửi một yêu cầu đến router Vì vậy H1 sẽ không gửi ra

Trang 24

thông điệp báo cáo của nó Bằng cách dùng địa chỉ nhóm là 226.1.1.1, H3 đang báo cho router là “Tôi muốn nhận lưu lượng Multicast cho nhóm 226.1.1.1”

• R1 nhận được thông điệp báo cáo yêu cầu quan hệ máy trạm IGMP phiên bản 1 trên cổng F0/0 của nó nhưng R1 chưa nhận được thông điệp báo cáo quan hệ máy trạm trên cổng F0/1 R1 sẽ bắt đầu đẩy lưu lượng của nhóm 226.1.1.1 ra cổng F0/0

Ở hình trên, một người dùng đã chạy một ứng dụng dùng địa chỉ 226.1.1.1 trên H4 H4 sẽ gửi một thông điệp báo cáo không yêu cầu quan hệ máy trạm IGMP phiên bản 1 Thông điệp này sẽ được nhận bởi R1 trên cổng F0/1 của nó và sau đó R1 sẽ bắt đầu đẩy lưu lượng của nhóm 226.1.1.1 ra cổng F0/1

*Cơ chế rời khỏi nhóm của IGMPv1:

IGMP không có một cơ chế để cho phép các máy trạm có thể rời khỏi một nhóm Giả sử

có một người dùng ngồi ở H4 quyết định rời khỏi nhóm H4 sẽ lặng lẽ rời khỏi nhóm và R1 không biết về việc này R1 sẽ tiếp tục đẩy lưu lượng của 226.1.1.1 trên cổng F0/1 trong vòng 3 phút, ngay cả khi không có máy trạm nào muốn nhận nó Sau khi R1 gửi thông điệp truy vấn ba lần, mỗi lần cách nhau 60 giây và không có máy trạm nào trả lời

Trang 25

bằng thông điệp báo cáo IGMP phiên bản 1, R1 sẽ kết luận không còn máy trạm nào muốn nhận lưu lượng cho 226.1.1.1 trên cổng F0/1 Khoảng thời gian 3 phút này được gọi là khoảng thời gian xác nhận thành viên nhóm (Group membership Interval)

*Router truy vấn IGMPv1:

Để tăng tính dự phòng, ta có thể triển khai nhiều router Multicast trên cùng một mạng Tuy nhiên nếu tất cả các router gửi gói tin truy vấn mỗi 60 giây thì sẽ rất lãng phí băng thông Như vậy, một hệ thống mạng nên có một router được gán vai trò gửi gói tin truy vấn và truyền lưu lượng Multicast vào hoặc ra mạng con Nếu một router bị sự cố, router thứ hai có thể đảm nhận trách nhiệm này IGMP phiên bản 1 thường dựa vào các thông tin định tuyến của Multicast để giải quyết vấn đề bầu chọn router này

11.3.3 Giao thức IGMPv2

-Giao thức IGMPv2 là sự mở rộng các chức năng IGMPv1 bao gồm:

• Một phương thức để xác định router nào sẽ gửi các thông điệp truy vấn multicast khi có nhiều router cùng kết nối vào mạng con

• Một thông điệp mới được sử dụng khi 1 host muốn rời nhóm

• Một thông điệp mới cho phép router truy vấn cho từng nhóm cụ thể thay vì tất cả các nhóm

• Phiên bản mới của thông điệp Host Membership Report

- Định dạng của thông điệp IGMPv2 được thể hiện như sau:

Trang 26

IGMP phiên bản 2 có bốn trường, được định nghĩa như sau:

• Loại (Type): trường này có chiều dài 8 bit, chỉ ra một trong bốn loại thông điệp

được định nghĩa bởi IGMP phiên bản 2 Các giá trị có thể có là:

o Truy vấn quan hệ (Membership query) có giá trị là 0x11: được dùng bởi router để tìm ra sự hiện diện của các máy trạm trên một mạng con Thông điệp loại này gán giá trị địa chỉ nhóm về 0.0.0.0 giống như trong IGMP phiên bản 1 Một thông điệp truy vấn cho một nhóm cụ thể sẽ gán địa chỉ nhóm vào trường này Thông điệp loại này thường được gửi khi router nhận được một thông điệp rời khỏi nhóm IGMP phiên bản 2 từ một máy trạm Thông điệp loại này được dùng để xác định xem có còn thành viên nào của một nhóm cụ thể không

o Báo cáo quan hệ phiên bản 1 có giá trị 0x12: được dùng bởi IGMP phiên bản 2 để tương thích với IGMP phiên bản 1

o Báo cáo quan hệ phiên bản 2 có giá trị 0x16: được gởi bởi thành viên để thông báo cho router là còn ít nhất một thành viên trên mạng

o Thông điệp rời khỏi nhóm (Leave group) có giá trị là 0x17: được gửi bởi thành viên nhóm nếu nó là thành viên cuối cùng gửi thông điệp báo cáo quan hệ Thông điệp này báo cho router rằng máy trạm đang rời khỏi nhóm

• Thời gian đáp ứng tối đa (Maximum Response Time): Trường có độ dài 8 bit

chỉ có trong các thông điệp truy vấn Giá trị mặc định cho trường này là 100

(tương đương 10 giây) Giá trị sẽ thay đổi từ 1 đến 255 (nghĩa là từ 0.1 giây đến 25.5giây)

• Kiểm tra lỗi (Checksum): Chứa giá trị 16 bit được tính toán bởi máy nguồn

Kiểm tra lỗi IGMP tính toán trên toàn bộ phần tải của IP chứ không phải chỉ 8 byte đầu tiên mặc dù IGMP phiên bản 2 có độ dài 8byte

• Địa chỉ nhóm (Group Address): Được gán giá trị 0.0.0.0 trong gói tin truy vấn

và gán địa chỉ nhóm nếu thông điệp là cho từng nhóm cụ thể Các thông điệp báo cáo quan hệ (membership report) hoặc thông điệp rời khỏi nhóm (leave group) có thể mang địa chỉ của nhóm trong trường này

- Nếu có nhiều router trên cùng một kết nối, router có địa chỉ IP nhỏ nhất sẽ gửi ra gói tin truy vấn Vì vậy, khi một router nhận được một gói tin truy vấn từ một router nào đó, nó

sẽ kiểm tra địa chỉ nguồn của gói tin đó Nếu địa chỉ nguồn của router cục bộ nhỏ hơn địa chỉ nguồn trong gói tin vừa đến, router sẽ vẫn tiếp tục gửi gói tin query vì nó biết rằng nó

sẽ giữ vai trò truy vấn Còn nếu địa chỉ nguồn của gói tin truy vấn là nhỏ hơn, router sẽ từ

bỏ vai trò truy vấn

-IGMP v2 hỗ trợ tính tương thích ngược với IGMPv1 Mã số cho kiểu thông điệp truy vấn và báo cáo của IGMPv2 và IGMPv1 đều cùng là 0x11 và 0x12 Điều này cho phép các máy trạm chạy IGMPv2 và các router nhận ra IGMPv1 khi có các máy trạm chạy

Trang 27

IGMPv1 trên mạng IGMPv2 giúp giảm số lượng các thông điệp báo cáo được gửi bởi các máy trạm bằng cách cho phép người quản trị thay đổi khoảng thời gian truy vấn -IGMPv1 không có thông số MRT, vì vậy các máy trạm chỉ đơn giản dùng khoảng thời gian mặc định là 10 giây Tuy nhiên thông điệp IGMPv2 có bao gồm trường MRT, chỉ ra khoảng thời gian MRT được dùng bởi tất cả các máy trạm IGMPv2 trên LAN Các tiến trình mà các máy trạm gửi các thông điệp báo cáo của IGMPv2 cũng giống trong IGMP v1 Có một sự khác nhau nhỏ là các router gửi gói tin truy vấn IGMPv2 mỗi 125 giây thay vì mỗi 60 giây

-IGMPv2 cải tiến quá trình Truy vấn/Báo cáo bằng cách dùng cơ chế truy vấn cho từng nhóm cụ thể Trong IGMPv2, khi một máy trạm rời một nhóm, nó gửi ra một thông điệp rời nhóm IGMPv2 Khi một router nhận được thông điệp rời khỏi nhóm IGMP phiên bản

2, thay vì chờ một khoảng thời gian truy vấn là 125 giây, router sẽ gửi ngay một thông điệp truy vấn cho nhóm đó Thông điệp này chỉ để hỏi là còn có máy trạm nào muốn lưu lượng cho nhóm Multicast đó không Kết quả là, router sẽ nhanh chóng biết được có còn máy trạm nào quan tâm đến lưu lượng của nhóm đó

-Thuận lợi chính của IGMPv2 so với IGMPv1 là thời gian rời khỏi nhóm của IGMPv2 ngắn hơn IGMPv2 chỉ mất có ba giây để kết luận rằng không còn máy trạm nào trên mạng con đó quan tâm đến Multicast

• Các thông điệp rời bỏ nhóm (IGMPv2 Leave Group) và các thông điệp truy vấn cho từng nhóm cụ thể (Group-Specific Query Messages)

- IGMP phiên bản 2 RFC 2236 khuyến cáo rằng một máy trạm gửi ra một thông điệp rời khỏi nhóm chỉ nếu nó là máy trạm cuối cùng gửi thông điệp báo cáo quan hệ Tuy nhiên phần lớn các hiện thực IGMP phiên bản 2 đều cho phép một máy trạm gửi ra thông điệp rời khỏi nhóm khi bất kỳ máy trạm nào rời khỏi nhóm

Trang 28

• Bước 1: H1 gửi một thông điệp rời bỏ nhóm IGMP phiên bản 2 Địa chỉ đích của

gói tin là 224.0.0.2 Đây là địa chỉ của tất cả các router đang chạy Multicast Thông điệp này muốn báo rằng “Tôi không muốn nhận Multicast lưu lượng của 226.1.1.1”

• Bước 2: R1 sẽ gửi ra một thông điệp cho riêng nhóm đó Bởi vì H1 đã quyết định

rời khỏi nhóm 226.1.1.1, R1 quyết định ngừng đẩy lưu lượng của nhóm 226.1.1.1 trên cổng Fa0/0 nếu H1 là thành viên cuối cùng của 226.1.1.1 Tuy nhiên, R1 cần phải đảm bảo rằng không còn máy trạm nào trên cổng này vẫn cần nhận lưu lượng của nhóm 226.1.1.1 Vì vậy, R1 gửi ra một thông điệp để xác định có còn thành viên nào của nhóm 226.1.1.1 R1 dùng địa chỉ đích 226.1.1.1 như là địa chỉ đích trên gói tin sao cho chỉ có các máy trạm là thành viên của nhóm này là nhận thông điệp và trả lời Thông qua thông điệp này, R1 sẽ hỏi các máy trạm còn lại trong nhóm là “Có còn ai muốn nhận lưu lượng Multicast cho 226.1.1.1 không?”

• Bước 3: H3 gửi một thông điệp báo cáo quan hệ H3 vẫn là một thành viên của

nhóm 226.1.1.1 Máy H3 nghe thông điệp truy vấn theo nhóm và trả lời bằng một thông điệp báo cáo IGMP phiên bản 2 để thông báo cho router là vẫn còn thành viên của nhóm 226.1.1.1

Trang 29

Router IGMP phiên bản 2 lặp lại tiến trình ở bước 2 mỗi lần nó nhận được thông điệp rời

bỏ nhóm trong bước 1 Trong ví dụ trước, R1 không ngừng việc gửi lưu lượng Trong hình dưới, H3 là máy trạm duy nhất còn lại của nhóm 226.1.1.1 Giả sử rằng H3 cũng muốn rời bỏ khỏi nhóm

-Ba bước sau đây sẽ mô tả quá trình khi H3 rời khỏi nhóm:

Bước 1: H3 gửi ra một thông điệp rời khỏi nhóm IGMP phiên bản 2 Địa chỉ đích của gói

tin là 224.0.0.2 để thông báo cho tất cả các router trên mạng con là “Tôi không muốn nhận lưu lượng của nhóm 226.1.1.1”

Bước 2: R1 gửi ra một thông điệp truy vấn cho riêng nhóm đó R1 nhận thông điệp rời

khỏi nhóm từ H3 R1 sẽ gửi các thông điệp truy vấn cho từng nhóm để xác định có còn máy nào vẫn là thành viên của nhóm 226.1.1.1 R1 dùng địa chỉ đích là 226.1.1.1 sao cho chỉ có những máy là thành viên của nhóm này nhận được thông điệp và trả lời

Trang 30

Bước 3: Không có thông điệp báo cáo nào là nhận được, vì vậy R1 sẽ ngừng đẩy lưu

lượng Bởi vì không còn thành viên nào của nhóm 226.1.1.1, R1 sẽ không nhận được thông điệp trả lời nào cho thông điệp truy vấn trước đây do R1 gửi ra Kết quả là R1 sẽ ngừng đẩy lưu lượng Multicast của nhóm 226.1.1.1 ra cổng fa0/0

-Mặc định, router sẽ dùng một giá trị MRT bằng 10 (1 giây) cho các thông điệp truy vấn cho nhóm Bởi vì một router phải nhận một thông điệp trả lời cho thông điệp truy vấn theo nhóm trước đây trong khoảng thời gian MRT này, router sẽ dùng giá trị MRT như là khoảng thời gian để xác định thành viên cuối cùng rời khỏi nhóm Router dùng tiến trình sau:

Bước 1: Gửi ra một thông điệp truy vấn cho từng nhóm cụ thể khi router nhận được một

thông điệp rời khỏi nhóm

Bước 2: Nếu không có thông điệp báo cáo nào nhận được trong khoảng thời gian MRT,

lặp lại bước 1

Bước 3: Lặp lại bước 1 một số lần được chỉ ra trong thông số last member query count

Chỉ số này là số lần các thông điệp truy vấn theo nhóm được gửi trước khi router kết luận

là không còn thành viên nào tích cực trong nhóm Giá trị mặc định của thông số này bằng

2 Vì vậy thường chỉ mất dưới 3 giây để xác định không còn thành viên nào trong nhóm Trong khi đối với IGMP phiên bản 1, thời gian này là ba phút

*Router truy vấn IGMPv2:

IGMP v2 định nghĩa một tiến trình bầu chọn router truy vấn Tiến trình này được dùng khi có nhiều router kết nối vào cùng một mạng Khi router IGMPv2 khởi động, các router này gửi ra các thông điệp truy vấn đến địa chỉ 224.0.0.1 dùng các địa chỉ cổng trong phần địa chỉ nguồn của gói tin Khi một router IGMP phiên bản 2 nhận được một thông điệp truy vấn từ các các router kia, nó sẽ so sánh địa chỉ nguồn IP của thông điệp với địa chỉ cổng của chính nó Router có địa chỉ IP nhỏ nhất sẽ được bầu như router truy vấn Các router không trở thành router truy vấn sẽ không gửi gói tin truy vấn nhưng vẫn giám sát tần suất của các gói tin truy vấn được gửi

Khi router truy vấn ngừng gửi một thông điệp truy vấn trong hai chu kỳ rưỡi, router truy vấn sẽ bị xem như đã chết và cần có một router truy vấn khác RFC2236 qui định khoảng thời gian này là khoảng thời gian giới thiệu router truy vấn khác (Other querier present Interval) Giá trị mặc định cho khoảng thời gian này là 255 giây bởi vì khoảng thời gian mặc định của gói tin truy vấn của IGMP phiên bản 2 là 125 giây và giá trị mặc định của thời gian trả lời truy vấn là 10 giây

So sánh IGMPv1 và IGMPv2:

Trang 31

IGMPv1 không có thông điệp rời bỏ nhóm Điều này có nghĩa là sẽ tốn một khoảng thời gian dài hơn để máy trạm cuối cùng rời khỏi nhóm và router ngừng việc truy vấn IGMP v1 không có thông điệp cho riêng từng nhóm Điều này là kết quả của đặc điểm 1 Các máy trạm có khoảng thời gian MRT này mặc định là 10 giây IGMPv1 không có tiến trình bầu chọn router truy vấn Thay vào đó, nó dựa trên cơ chế định tuyến của Multicast

để để bầu ra router truy vấn Do có thể có nhiều giao thức định tuyến khác nhau cho các nhóm Multicast khác nhau, sẽ có một khả năng là sẽ có nhiều router truy vấn trong IGMP v1

Sự tương thích của IGMPv1 và IGMPv2:

IGMP v2 được thiết kế để tương thích ngược với IGMPv1 Có 1 vài trường hợp tương thích:

o Máy trạm dùng IGMPv2 và router chạy IGMPv1

o Máy trạm dùng IGMPv1 và router dùng IGMPv2

o Router chạy IGMPv1 và một số router khác chạy IGMPv2

o Máy trạm chạy IGMPv1 và router chạy IGMPv2

Khi một máy trạm gửi ra một thông điệp báo cáo IGMP với kiểu thông điệp

là 0x16 (kiểu này không được định nghĩa trong IGMPv1, router đang chạy IGMPv1 sẽ xem kiểu thông điệp này là không hợp lệ và bỏ qua nó Vì vậy, một máy chạy IGMPv2 phải gửi thông điệp báo cáo IGMPv1 khi router IGMPv1 đang tồn tại

Máy trạm chạy IGMPv2 sẽ xác định router truy vấn đang dùng IGMP phiên bản 1 hay IGMPv2 dựa trên giá trị của trường MRT của các thông điệp truy vấn định kỳ Trong IGMPv1, trường này bằng 0, trong IGMPv2, trường này là khác 0 Khi một máy trạm chạy IGMPv2 nhận được một truy vấn từ router IGMPv1, máy trạm biết rằng có một router IGMPv1 đang tồn tại trên mạng con và đánh dấu cổng này như là IGMPv1 Máy trạm chạy IGMPv2 sau đó sẽ không gửi thông điệp IGMPv2

Bất cứ khi nào một máy trạm IGMPv2 nhận một thông điệp truy vấn

IGMPv1, nó sẽ khởi tạo một bộ định thời phiên bản 1 (version 1 router Present timeout) có thời lượng 400 giây Bộ định thời này sẽ được khởi tạo lại bất cứ khi nào máy trạm nhận được một thông điệp truy vấn IGMPv1 Nếu bộ định thời này hết, có nghĩa là không có router IGMPv1 nào tồn tại trên mạng, máy trạm sẽ bắt đầu gửi thông điệp IGMPv2

o Máy trạm chạy IGMPv1 và 1 số router khác chạy IGMPv2

Các router chạy IGMPv2 có thể dễ dàng xác định sự tồn tại của các máy trạm chạy IGMPv1 dựa vào việc máy trạm có gửi IGMPv1 (0x12) hay IGMPv2 (0x16) Giống như router chạy IGMPv1, các router IGMPv2 sẽ

Trang 32

định kỳ gửi các gói tin truy vấn Một máy trạm chạy IGMPv1 trả lời bình thường bởi vì thông điệp truy vấn IGMPv2 thì tương tự với định dạng của IGMPv1, ngoại trừ byte thứ hai Các máy trạm IGMPv1 sẽ bỏ qua giá trị chứa trong byte này Vì vậy, một router IGMPv2 sẽ kiểm tra tất cả các thông điệp báo cáo để tìm ra bất kỳ máy trạm nào chạy IGMPv1 tồn tại trên LAN

Nếu một máy trạm IGMPv2 cũng tồn tại trên cùng một mạng con, nó sẽ gửi các thông điệp báo cáo IGMPv2 Tuy nhiên, các máy trạm IGMPv1 sẽ không hiểu các thông điệp báo cáo IGMPv2 và bỏ qua các thông điệp này Các thông điệp IGMPv2 này không kích hoạt các cơ chế giảm thông điệp báo cáo trong các máy trạm chạy IGMPv1 Vì vậy, thỉnh thoảng một router IGMPv2 sẽ nhận cả thông điệp báo cáo từ phiên bản 1 và phiên bản 2

Khi một router chạy IGMPv2 biết rằng có một máy trạm IGMPv1 tồn tại trên LAN, router sẽ bỏ qua thông điệp rời bỏ nhóm và cũng không gửi ra các thông điệp truy vấn cho từng nhóm Điều này là cần thiết vì nếu một router IGMPv2 trả lời lại thông điệp rời bỏ nhóm bằng thông điệp truy vấn cho từng nhóm, các máy trạm chay IGMP phiên bản 1 sẽ không hiểu loại thông điệp này và sẽ bỏ qua

Khi một router IGMP phiên bản 2 không nhận được một trả lời cho thông điệp truy vấn theo nhóm, nó có thể kết luận sai rằng không còn ai muốn nhận lưu lượng và sẽ ngừng chuyển lưu lượng vào LAN đó Vì vậy nếu một hoặc nhiều máy trạm IGMP phiên bản 1 đang lắng nghe đến một nhóm nào đó, router cần phải bỏ quá trình tối ưu giúp giảm thiểu độ trễ khi các máy trạm rời khỏi nhóm Router IGMP phiên bản 2 tiếp tục bỏ qua thông điệp rời bỏ nhóm cho đến khi nào khoảng thời gian định thời IGMP phiên bản 1 là hết

Khi router IGMP phiên bản 2 nhận được một thông điệp báo cáo IGMP phiên bản 1, router sẽ thiết lập một bộ định thời IGMP phiên bản 1 Khoảng thời gian này phải bằng với khoảng thời gian xác định thành viên nhóm (Group membership Interval), mặc định là 180 giây trong IGMP phiên bản

1 và 260 giây trong IGMP phiên bản 2 Đây là khoảng thời gian mà trong

đó một router không nhận được một thông điệp báo cáo IGMP, router sẽ kết luận là không còn thành viên nào trên mạng

o Các router chạy IGMPv1 và IGMPv2:

cho IGMPv1

Giá trị mặc định cho IGMPv2

Trang 33

Thời gian truy vấn Khoảng thời giữa các

lần gửi gói tin truy vấn bởi router

Cố định là 60 giây

trong đó nếu một router IGMP phiên bản 2 không phải là router truy vấn không nhận được thông điệp truy vấn, router sẽ kết luận là router truy vấn là chết

Thời gian hết hạn của

router đang chạy phiên

bản 1

Là khoảng thời gian trong đó nếu một máy trạm chạy IGMP phiên bản 2 không nhận được gói tin truy vấn IGMP phiên bản 1 query, máy trạm sẽ kết luận rằng không có router chạy IGMP phiên bản 1 và máy trạm bắt đầu gửi thông điệp IGMP phiên bản 2

Ngày đăng: 07/11/2022, 10:25

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w