Tải bản đầy đủ - 0 (trang)
a. Khuôn dạng bản tin

a. Khuôn dạng bản tin

Tải bản đầy đủ - 0trang

Đồ án tốt nghiệp đại học



Hình 1.4. Khn dạng bản tin IGMPv1

Bản tin IGMPv1 gồm 5 trường chính, đặc điểm và ý nghĩa của các trường giá trị

được mô tả trong bảng 1.1

Tên trường

Version



Bảng 1.1: Giá trị của các trường trong IGMPv1

Độ dài

Mô tả

Chỉ định phiên bản của giao thức và ln có giá trị là 1



4 bit



Xác định 2 kiểu thông điệp được định nghĩa bởi IGMPv1



4 bit



- Type = 0x1 : thông điệp truy vấn thành viên

Membership Query: Thông điệp truy vấn được gởi từ Bộ

định tuyến đến các máy trạm để kiểm tra xem các máy

trạm có muộn nhận multicast traffic không.



Unused



8 bit



- Type = 0x2 : thông điệp báo cáo thành viên

Membership Report Type: Thông điệp đăng ký tham gia

vào nhóm multicast được gửi từ máy trạm đến bộ định

tuyến.

Chứa giá trị 0 khi gửi và bị bỏ qua khi nhận



Checksum



16 bit



Dùng để kiểm tra lỗi trong quá trình truyền dữ liệu



32 bit



Được gán về giá trị 0.0.0.0 khi bộ định tuyến gửi gói tin

Host Membership Query và được gán giá trị địa chỉ nhóm

multicast khi một máy gửi thông điệp Host Membership

Report



Type



Group

Address



Lưu ý rằng khi kết hợp hai trường version và trường type, giá trị dạng thập lục

phân của một gói tin IGMPv1 Host Membership Query sẽ là 0x11 và IGMPv1 Host

Membership report là 0x12. Các giá trị này sẽ được so sánh với các giá trị của IGMPv2



Đậu Văn Thắng – D13VT6



5



Đồ án tốt nghiệp đại học

b. Hoạt động

 Cứ mỗi 60 giây, một bộ định tuyến trên mỗi phân đoạn mạng sẽ gửi truy vấn

đến tất cả các máy trạm để kiểm tra xem các máy trạm này có còn quan tâm

nhận multicast traffic nữa không? Bộ định tuyến này gọi là bộ định tuyến truy

vấn IGMPv1 Querier và chức năng của nó là mời các máy trạm tham gia vào

nhóm.

 Bộ định tuyến truy vấn IGMPv1 Querier: Để tăng tính dự phòng, ta có thể

triển khai nhiều bộ định tuyến multicast trên cùng một mạng. Tuy nhiên

nếu tất cả các bộ định tuyến 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, nên có một bộ định tuyến đượ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 subnet. Nếu một

bộ định tuyến bị down, bộ định tuyến thứ hai có thể đảm nhận trách nhiêm.

IGMPv1 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 bộ định tuyến này.

 Nếu một máy trạm muốn tham gia vào một nhóm, hoặc nó muốn tiếp tục

nhận traffic từ một nhóm mà nó đã tham gia, nó phải trả lời lại bằng thơng

điệp Membership Report. Các máy trạm có thể tham gia vào các nhóm

multicast ở bất kỳ thời điểm nào. Để 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 bộ định

tuyến cục bộ của nó. Thơng điệp này có tên là Membership Report IGMP.

Thông điệp này sẽ thông báo cho bộ định tuyến 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.

 Tuy nhiên IGMPv1 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 đó, bộ định tuyến sẽ kết luận là một cổng giao tiếp của nó

khơng còn thuộc về một nhóm multicast nào nếu bộ định tuyến không nhận

được thông điệp 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 traffic nữa.



Đậu Văn Thắng – D13VT6



6



Đồ án tốt nghiệp đại học

Ngoài ra, bộ định tuyến 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ó.



Hình 1.5. Ví dụ minh họa q trình hoạt động của IGMPv1

1.2.2.2. IGMPv2

a. Khuôn dạng bản tin

Với IGMP phiên bản 2, khuôn dạng bản tin được thể hiện như hình 1.6



Hình 1.6. Khuôn dạng bản tin IGMPv2

Bản tin IGMPv1 gồm 4 trường chính, đặc điểm và ý nghĩa của các trường giá trị

được mô tả trong bảng 1.2

Bảng 1.2: Các trường trong thông điệp IGMPv2

Tên trường



Độ dài



Đậu Văn Thắng – D13VT6



Mô tả



7



Đồ án tốt nghiệp đại học

Xác định 4 kiểu thông điệp có giá trị:

- Type = 0x11: Thơng điệp truy cấn thành viên Membership

Query, mang 2 nội dung:

Thứ nhất thông điệp General Query dùng để xác định nhóm nào

trên mạng có thành viên hoạt động.

Thứ hai là thông điệp Group-Specific Query dùng để xác định

một nhóm multicast cụ thể có thành viên hoạt động.

Type



8 bit



- Type = 0x12: Thông điệp báo cáo thành viên Membership

Report Version 1: Dùng để tương thích với phiên bản IGMPv1

- Type = 0x16: Thông điệp báo cáo thành viên Membership

Report Version 2, được gởi bởi thành viên để thơng báo cho bộ

định tuyến là còn ít nhất một thành viên trên mạng.

- Type = 0x17: Thông điệp Leave Group: Đượ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

membership report. Thông điệp này báo cho bộ định tuyến rằng

máy trạm đang rời khỏi nhóm.



Maximum

Response

Time



8 bit



Chỉ ra khoảng thời gian tối đa (tính bằng giây) mà một máy trạm

có thể phản hồi thông tin truy vấn, chỉ sử dụng trong các thông

điệp truy vấn



Checksum



16 bit



Dùng để kiểm tra lỗi trong quá trình truyền dữ liệu



32 bit



Đượ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

Host Membership Report hoặc thơng điệp Leave Group có thể

mang địa chỉ của nhóm trong trường này



Group

Address



b. Hoạt động

 Giao thức IGMP phiên bản 2 là sự mở rộng các chức năng của IGMP phiên

bản 1 bao gồm:

 Một phương thức để xác định bộ định tuyến nào sẽ gửi các thông điệp truy

vấn multicast khi có nhiều bộ định tuyến cùng kết nối vào một mạng con.

 Một thông điệp mới được sử dụng khi một máy trạm muốn rời nhóm.



Đậu Văn Thắng – D13VT6



8



Đồ án tốt nghiệp đại học

 Một thông điệp mới cho phép bộ định tuyến truy vấn cho từng nhóm cụ

thể thay vì tất cả các nhóm.

 Q trình Leave

Nhờ thơng điệp Leave Group, Group-Specific Query và Maximum Response

Time mà IGMPv2 giảm được việc các bộ định tuyến vẫn gửi truy vấn đến các nhánh

mạng dù các máy trạm khơng quan tâm đển gói multicast



Hình 1.7. Ví dụ minh họa q trình rời nhóm của máy trạm IGMPv2

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 membership report. Tuy nhiên phần

lớn trong thực tế IGMPv2 đều cho phép một máy trạm gửi ra thông điệp Leave Group

khi bất kỳ máy trạm nào rời khỏi nhóm.

1. Trạm 1 gửi một thơng điệp rời bỏ nhóm IGMPv2 Leave Group. Địa chỉ đích

của gói tin là 224.0.0.2. Đây là địa chỉ của tất cả các multicast bộ định tuyến. Thông

điệp này muốn báo rằng “Tôi không muốn nhận multicast traffic của 224.1.1.1”.

2. Bộ định tuyến sẽ gửi ra một thông điệp cho riêng nhóm đó. Bởi vì trạm 1 đã

quyết định rời khỏi nhóm 224.1.1.1, Bộ định tuyến quyết định ngừng đẩy lưu lượng của

nhóm 224.1.1.1 trên cổng nếu trạm 1 là thành viên cuối cùng của 224.1.1.1. Tuy nhiên,

bộ định tuyến 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 224.1.1.1. Vì vậy, bộ định tuyến 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 224.1.1.1. Bộ định tuyến dùng địa chỉ đích

224.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, bộ định tuyến sẽ hỏi



Đậu Văn Thắng – D13VT6



9



Đồ án tốt nghiệp đại học

các máy trạm còn lại trong nhóm là “Có còn ai muốn nhận muticast traffic cho

224.1.1.1?”.

3. Trạm 3 gửi một thông điệp membership report. Trạm 3 vẫn là một thành viên

của nhóm 224.1.1.1. Trạm 3 nghe thơng điệp truy vấn theo nhóm và trả lời bằng một

thơng điệp IGMPv2 report để thông báo cho bộ định tuyến là vẫn còn thành viên của

nhóm 224.1.1.1.

Bộ định tuyến IGMPv2 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ên, bộ định tuyến khơng ngừng việc gửi

traffic.



Hình 1.8. Ví dụ minh họa q trình rời nhóm của máy trạm IGMPv2

Trong hình trên Trạm 3 là máy trạm duy nhất còn lại của nhóm 224.1.1.1. Giả sử

rằng Trạm 3 cũng muốn rời bỏ khỏi nhóm.

Ba bước sau đây sẽ mơ tả q trình khi Trạm 3 rời khỏi nhóm:

1. Trạm 3 gửi ra một thơng điệp rời khỏi nhóm IGMPv2 LeaveGroup. Địa chỉ

đích của gói tin là 224.0.0.2 để thơng báo cho tất cả các bộ định tuyến trên subnet là

“Tơi khơng muốn nhận traffic của nhóm 224.1.1.1”.

2. Bộ định tuyến gửi ra một thông điệp truy vấn cho riêng nhóm đó. Bộ định

tuyến nhận thơng điệp rời khỏi nhóm từ trạm 3. Bộ định tuyến 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 224.1.1.1.

Bộ định tuyến dùng địa chỉ đích là 224.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.



Đậu Văn Thắng – D13VT6



10



Đồ án tốt nghiệp đại học

3. Khơng có thơng điệp report nào là nhận được, vì vậy bộ định tuyến sẽ ngừng

đẩy traffic. Bởi vì khơng còn thành viên nào của nhóm 224.1.1.1. Bộ định tuyến 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 bộ định

tuyến gửi ra. Kết quả là bộ định tuyến sẽ ngừng đẩy multicast traffic của nhóm 224.1.1.1

ra cổng.

Mặc định, bộ định tuyến 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 bộ định tuyến 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, bộ định

tuyến 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. Bộ định tuyến dùng tiến trình sau:

1. Gửi ra một thơng điệp truy vấn cho từng nhóm cụ thể khi bộ định tuyến nhận

được một thơng điệp rời khỏi nhóm.

2. Nếu khơng có thơng điệp report nào nhận được trong khoảng thời gian MRT

(Last member query interval), lặp lại bước 1.

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 bộ định tuyến

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 ba giây để xác định khơng còn thành viên

nào trong nhóm. Trong khi đối với IGMPv1, thời gian này là ba phút.

1.2.2.3. IGMPv3

IGMP phiên bản 3 mở rộng chức năng của IGMPv2 bằng việc hỗ trợ tính năng

multicast cho từng nguồn cho phép các máy trạm lọc dữ liệu đi vào dựa trên địa chỉ IP

nguồn. Với IGMPv3 có thể có nhiều nguồn cho một dòng dữ liệu multicast vì thế các

máy trạm có thể gia nhập nhóm và nhận dữ liệu từ các nguồn gần nhất. IGMPv3 còn cải

tiến thông điệp Host Membership Query và thêm phiên bản mới của Host Membership

Report.

 Lọc dữ liệu là khả năng cho phép một máy trạm chỉ ra nó sẽ nhận nguồn dữ

liệu multicast từ địa chỉ nguồn xác định. IMGPv3 cho phép một máy trạm chỉ

rõ hai thuộc tính sau đây cho các nhóm multicast cụ thể:

 Danh sách các nguồn mà máy trạm nhận dữ liệu.

 Danh sách các nguồn mà máy trạm không nhận dữ liệu.

 Thông điệp IGMPv3 Host Membership Query có cùng giá trị kiểu và có cùng

định dạng với IGMPv2 Host Membership Query ngoại trừ nó thêm một số



Đậu Văn Thắng – D13VT6



11



Đồ án tốt nghiệp đại học

trường ở sau trường địa chỉ nhóm. Các trường này cung cấp các tham số truy

vấn cho bộ định tuyến và chỉ rõ các nguồn được chấp nhận và khơng được

chấp nhận ứng với mỗi nhóm multicast. Danh sách các nguồn được chấp

nhận và không chấp nhận chỉ được sử dụng cho truy vấn tới một nhóm cụ thể

có sử dụng tính năng lọc dữ liệu.

 Khn dạng bản tin

Với IGMP phiên bản 3, khuôn dạng bản tin được thể hiện như hình 1.9



Hình 1.9. Khn dạng bản tin IGMPv2

Bản tin IGMPv3 gồm 10 trường chính, đặc điểm và ý nghĩa của các trường giá

trị được mô tả trong bảng 1.3



Đậu Văn Thắng – D13VT6



12



Đồ án tốt nghiệp đại học

Bảng 1.3: Các trường trong thông điệp IGMPv3

Tên trường



Độ dài



Mô tả

Xác định 4 kiểu thơng điệp có giá trị:

- Type = 0x11: Thông điệp truy cấn thành viên Membership

Query, mang 2 nội dung:

Thứ nhất thông điệp General Query dùng để xác định nhóm

nào trên mạng có thành viên hoạt động.

Thứ hai là thông điệp Group-Specific Query dùng để xác

định một nhóm multicast cụ thể có thành viên hoạt động.



Type



8 bit



- Type = 0x12: Thông điệp báo cáo thành viên Membership

Report Version 1: Dùng để tương thích với phiên bản

IGMPv1.

- Type = 0x16: Thông điệp báo cáo thành viên Membership

Report Version 2, được gởi bởi thành viên để thông báo cho

bộ định tuyến là còn ít nhất một thành viên trên mạng.

- Type = 0x17: Thông điệp Leave Group: Đượ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 membership report. Thông điệp này báo cho bộ định

tuyến rằng máy trạm đang rời khỏi nhóm.



Maximum

Response

Time



8 bit



Chỉ ra khoảng thời gian tối đa (tính bằng giây) mà một máy

trạm có thể phản hồi thơng tin truy vấn, chỉ sử dụng trong

các thông điệp truy vấn



Checksum



16 bit



Dùng để kiểm tra lỗi trong quá trình truyền dữ liệu



Group

Address



32 bit



Đượ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 Membership Report hoặc thông điệp Leave Group có

thể mang địa chỉ của nhóm trong trường này



Reserved

(Dành riêng)



4 bit



Chứa giá trị 0 khi gửi và bị bỏ qua khi nhận



Suppress



1 bit



Gán giá trị 1 để chi rõ các bộ định tuyến nhận dừng cập

nhật thời gian khi nhận một truy vấn



Đậu Văn Thắng – D13VT6



13



Đồ án tốt nghiệp đại học

Querier’s

Robustness

3 bit

Variable

(QRV)

Querier’s

Query Interval 8 bit

Code(QQIC)

Number of

16 bit

Sources

Source

Addresses



Chỉ ra các gói datagram mong đợi trên mạng. IGMP có thể

lấy lại QRV-1 gói datagram bị mất



Chỉ ra khoảng thời gian tính bằng giây mà bộ định tuyến

đợi giữa hai truy vấn thông thường

Chỉ số lượng địa chỉ nguồn chứa thông điệp tmy vấn



32 bit



Chứa địa chỉ IP của nguồn multicast



PIM (Protocol Independent Multicast)

PIM được sử dụng bởi các bộ định tuyến mà nó chuyển các dữ liệu multicast.

PIM hoạt đơng độc lập với các giao thức định tuyến khác (EIGRP hoặc OSPF) chạy

trong mạng. PIM sử dụng bảng định tuyến bình thường, được thêm vào bới giao thức

định tuyến unicast (EIGRP, OSPF,RIPv2…), trong các giao thức định tuyến multicast

của nó.

 Khơng giống như các giao thức định tuyến khác, khơng có các cập nhật định

tuyến giữa các bộ định tuyến.

 Khi bộ định tuyến chuyển dữ liệu unicast nó sẽ nhìn vào địa chỉ đích trong

bảng định tuyến để chuyển gói tín ra ngồi cổng phù hợp. Tuy nhiên, khi bộ

định tuyến gữi các dữ liệu multicast, bộ định tuyến có lẽ phải chuyển các gói

tin ra nhiều cổng. hướng về tất cả các máy trạm nhận. Các bộ định tuyến cho

phép multicast sử dụng PIM tạo tự động các cây phân bố mà nó điều khiển

đường đi của lưu lượng IP multicast thông qua mạng để cung cấp lưu lượng

truy cập cho tất cả thiết bị nhận.

 Có hai loại cây phân bố:

 Source tree (cây nguồn): một source tree được tạo ra cho mỗi nhóm

multicast, source tree có một gốc tại nơi gữi và các nhánh xuyên qua mạng

đến các thiết bị nhận.

 Shared tree (cây chia sẻ): là một cây duy nhất mà nó được chia sẽ giữa các

source tree. Shared tree có một gốc chung duy nhất được gọi là điểm hẹn

(rendezvous point (RP)).



Đậu Văn Thắng – D13VT6



14



Đồ án tốt nghiệp đại học

 PIM hoạt động một trong hai chế độ sau:

 Dense mode.

 Sparse mode.

1.2.3.1. PIM Dense Mode

Các bộ định tuyến PIM có thể được cấu hình theo kiểu Dense Mode (còn gọi là

PIM-DM) nếu các máy trạm tham gia vào multicast group nằm ở khắp nơi trên tất cả

các subnet. Địa chỉ multicast nguồn trở thành gốc của cây và cây multicast được xây

dựng từ nguốn đến đích. Cơ chế này còn được gọi bằng ký hiệu (S,G) = (Sources, Group)

trong đó đường đi từ nguồn đến các thành viên trong nhóm là duy nhất và được xác

định.



Hình 1.10. Quá trình định tuyến lưu lượng multicast của PIM-DM

Cây multicast được xây dựng bằng cách cho phép phát tán các traffic từ nguồn

đến tất cả các bộ định tuyến trong mạng. Cây sẽ phát triển từ trên xuống dưới. Trong

một thời gian ngắn, các traffic không cần thiết sẽ được lưu chuyển giống như trong

broadcast traffic. Tuy nhiên khi các bộ định tuyến nhận được traffic cho một nhóm, bộ

định tuyến sẽ quyết định nó có các máy nhận muốn nhận dữ liệu hay không?

 Nếu là muốn, bộ định tuyến sẽ duy trì tình trạng im lăng và để dòng traffic

tiếp tục.

 Nếu khơng có máy trạm nào đăng ký cho nhóm multicast đó (thơng qua

IGMP), bộ định tuyến sẽ gửi thông điệp Prune đến các bộ định tuyến láng



Đậu Văn Thắng – D13VT6



15



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

a. Khuôn dạng bản tin

Tải bản đầy đủ ngay(0 tr)

×