1. Trang chủ
  2. » Luận Văn - Báo Cáo

luận văn tìm hiêu công nghệ ip muliticast

91 579 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Tìm Hiểu Công Nghệ IP Multicast
Tác giả Trương Công Ái
Người hướng dẫn TS. Ngô Khánh Vân, PGS.TS Nguyễn Văn Tam
Trường học Trường Đại Học Công Nghệ, Đại Học Quốc Gia Hà Nội
Chuyên ngành Công nghệ Thông tin
Thể loại Đề tài tốt nghiệp
Năm xuất bản 2009
Thành phố Hà Nội
Định dạng
Số trang 91
Dung lượng 3,5 MB

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

Nội dung

Trong phương pháp multicast có các giao thức cho phép các máy tính có thể gia nhập vào nhóm để nhận dữ liệu hay rời bỏ nhóm một cách dễ dàng, các giao thức định tuyến cũng được xây dựng

Trang 2

Tôi xin chân thành cảm ơn các thầy cô trong trường Đại Học Công Nghệ, Đại Học Quốc Gia Hà Nội đã giảng dạy, truyền đạt và tạo điều kiện học tập tốt nhất cho tôi trong suốt thời gian học tập cũng như trong quá trình thực hiện luận văn

Hà Nội, tháng 08 năm 2009

Trương Công Ái

Trang 3

MỤC LỤC

LỜI CẢM ƠN 

MỤC LỤC 

DANH MỤC CÁC TỪ VIẾT TẮT 

DANH SÁCH HÌNH VẼ 

DANH SÁCH CÁC BẢNG 

MỞ ĐẦU 1 

1 Đặt vấn đề 1 

2 Đối tượng và mục tiêu luận văn 1 

3 Hướng tiếp cận 2 

4 Kết cấu của luận văn 2 

CHƯƠNG 1 3 

CƠ BẢN VỀ IP MULTICAST 3 

1.1 Mở đầu 3 

1.2 Các thành phần tham gia vào truyền thông multicast 5 

1.3 Địa chỉ multicast 7 

1.4 Cây phân phối multicast 9 

1.4.1 Cây nguồn 9 

1.4.2 Cây chia sẻ 10 

1.5 Chuyển tiếp multicast 13 

1.6 Đường trục multicast 15 

1.7 Giao thức quản lý nhóm Internet 17 

1.7.1 Giao thức IGMPv1 17 

1.7.1.1 Thông điệp Host Membership Report 18 

1.7.1.2 Thông điệp Host Membership Query 19 

1.7.2 Giao thức IGMPv2 19 

1.7.2.1 Lựa chọn router truy vấn 20 

1.7.2.2 Thông điệp rời nhóm 21 

1.7.2.3 Truy vấn cho từng nhóm 21 

1.7.3 Giao thức IGMPv3 21 

Trang 4

1.7.3.1 Lọc dữ liệu 21 

1.7.3.2 Thông điệp IGMPv3 Host Membership Query 22 

1.7.3.3 Thông điệp IGMPv3 Host Membership Report 23 

CHƯƠNG 2 25 

ĐỊNH TUYẾN MULTICAST 25 

2.1 Giao thức định tuyến multicast véctơ khoảng cách 25 

2.1.1 Tìm kiếm hàng xóm 25 

2.1.2 Trao đổi thông báo định tuyến 26 

2.1.3 Cắt nhánh 29 

2.1.4 Ghép nhánh 31 

2.2 Giao thức PIM Dense Mode 33 

2.2.1 Tìm kiếm hàng xóm 33 

2.2.1.1 Thông điệp Hello 33 

2.2.1.2 Router được chỉ định 33 

2.2.1.3 Cây phân phối multicast 34 

2.2.2 Cắt nhánh 35 

2.2.3 Cơ chế xác nhận 37 

2.2.4 Ghép nhánh 38 

2.3 PIM Sparse Mode 39 

2.3.1 Mô hình tham gia 39 

2.3.2 Cây chia sẻ 40 

2.3.2.1 Tham gia cây chia sẻ 40 

2.3.2.2 Cắt nhánh trên cây chia sẻ 43 

2.3.3 Cây đường đi ngắn nhất 45 

2.3.3.1 Tham gia cây đường đi ngắn nhất 45 

2.3.3.2 Cắt nhánh trên cây đường đi ngắn nhất 47 

2.3.4 Thông điệp Join/Prune 48 

2.3.5 Đăng ký nguồn dữ liệu 49 

2.3.5.1 Thông điệp PIM Register 49 

2.3.5.2 Thông điệp PIM Register – Stop 50 

2.3.6 Chuyển từ cây chia sẻ sang cây đường đi ngắn nhất 50 

Trang 5

2.4 Giao thức Multicast Open Shortest Path First 54 

2.4.1 Định tuyến multicast trong vùng 54 

2.4.2 Định tuyến multicast trên nhiều vùng 56 

2.4.3 Định tuyến multicast trên các vùng tự trị 59 

CHƯƠNG 3 61 

SỬ DỤNG ACCESS GRID XÂY DỰNG 61 

HỆ THỐNG HỘI NGHỊ TRUYỀN HÌNH DỰA TRÊN IP MULTICAST 61 

3.1 Các khái niệm chung về dịch vụ hội nghị truyền hình 61 

3.1.1 Hệ thống hội nghị truyền hình 62 

3.1.2 Các thành phần cơ bản của hội nghị truyền hình 63 

3.2 Giao thức RTP 64 

3.2.1 Khuôn dạng RTP header 64 

3.2.2 Các ứng dụng sử dụng RTP 65 

3.2.2.1 Thoại hội nghị đơn giản 65 

3.2.2.2 Thoại và truyền hình hội nghị 67 

3.2.2.3 Bộ trộn và bộ biên dịch 67 

3.3 Đồng bộ luồng hình ảnh và âm thanh 68 

3.4 Sử dụng Access Grid xây dựng một hội nghị truyền hình 70 

3.4.1 Các thành phần của Access Grid 70 

3.4.2 Sử dụng Access Grid client để tham gia vào hội nghị truyền hình 73 

KẾT LUẬN 76 

HƯỚNG PHÁT TRIỂN CỦA ĐỀ TÀI 77 

TÀI LIỆU THAM KHẢO 

Trang 6

DANH MỤC CÁC TỪ VIẾT TẮT

Từ viết tắt Viết đầy đủ Nghĩa tiếng Việt

ABR Area Border Router Router biên vùng

AG Access Grid Phần mềm hỗ trợ xây dựng ứng dụng

hội nghị truyền hình

AS Autonomous System Vùng tự trị

ASBR Autonomous System

Border Routers

Router trên biên vùng tự trị

DR Designated Router Router được lựa chọn

DVMRP Distance Vector Multicast

Routing Protocol

Giao thức định tuyến multicast

véc-tơ khoảng cách IGMP Internet Group

Management Protocol

Giao thức quản lý nhóm Internet

LAN Local Area Network Mạng nội bộ

LSA Link-State Advertisement Thông điệp quảng bá trạng thái liên

kết MABR Multicast Area Border

Router

Router biên vùng multicast

MBONE Multicast Backbone Đường trục multicast

MOSPF Multicast Open Shortest

Path First

Giao thức định tuyến multicast dựa trên thuật toán đường đi ngắn nhất MCU Multipoint Control Unit Bộ điều khiển đa điểm

OSPF Open Shortest Path First Giao thức định tuyến unicast dựa

trên thuật toán đường đi ngắn nhất

Trang 7

PIM Protocol Independent

Multicast

Giao thức định tuyến multicast độc lập

PIM-DM Protocol Independent

Multicast Dense Mode

Giao thức định tuyến multicast độc lập theo mô hình tập trung

PIM-SM Protocol Independent

Multicast Sparse Mode

Giao thức định tuyến multicast độc lập theo mô hình phân tán

RAT Robust Audio Tool Công cụ truyền âm thanh trong ứng

dụng hội nghị truyền hình RIP Routing Information

Protocol

Giao thức thông tin định tuyến

RPF Reverse Path Forwarding Kiểm tra đường dẫn ngược

RP Rendezvous Point Điểm hẹn

RTCP Real Time Transport

SPT Shortest Path Tree Cây đường đi ngắn nhất

TTL Time To Live Thời gian tồn tại gói tin

VIC Video Conference Ứng dụng video trong hội nghị

truyền hình

Trang 8

DANH SÁCH HÌNH VẼ

Hình 1.1: Truyền thông unicast và multicast 3 

Hình 1.2: Các thành phần tham gia vào truyền thông multicast 6 

Hình 1.3: Định dạng của địa chỉ IP lớp D 7 

Hình 1.4: Ánh xạ địa chỉ IP multicast sang địa chỉ MAC 8 

Hình 1.5: Cây đường đi ngắn nhất của host A 9 

Hình 1.6: Cây đường đi ngắn nhất của host B 10 

Hình 1.7: Cây chia sẻ 11 

Hình 1.8: Cây chia sẻ hai chiều 12 

Hình 1.9: Cây chia sẻ một chiều sử dụng cây SPT 12 

Hình 1.10: Cây chia sẻ một chiều sử dụng định tuyến unicast 13 

Hình 1.11: Giới hạn TTL 14 

Hình 1.12: Cơ chế đường hầm liên kết các ốc đảo multicast 15 

Hình 1.13: Đóng gói IP multicast theo cơ chế tunneling 16 

Hình 1.14: Cơ chế đường hầm liên kết các MRouter 16 

Hình 1.15: Thông điệp IGMPv1 18 

Hình 1.16: Thông điệp IGMPv2 19 

Hình 2.1: Tìm hàng xóm trong DVMRP 26 

Hình 2.2: Trao đổi định tuyến DVMRP bước 1 27 

Hình 2.3: Trao đổi định tuyến DVMRP bước 2 28 

Hình 2.4: Trao đổi định tuyến DVMRP bước 3 29 

Hình 2.5: Cắt nhánh trong DVMRP bước 1 30 

Hình 2.6: Cắt nhánh trong DVMRP bước 2 31 

Hình 2.7: Ghép nhánh trong DVMRP bước 1 32 

Hình 2.8: Ghép nhánh trong DVMRP bước 2 32 

Hình 2.9: Cây phân phối PIM-DM 35 

Hình 2.10: Cắt nhánh trong PIM-DM bước 1 36 

Hình 2.11: Cắt nhánh trong PIM-DM bước 2 36 

Hình 2.12: Cắt nhánh trong PIM-DM bước 3 37 

Hình 2.13: Xác nhận trong PIM-DM 38 

Trang 9

Hình 2.14: Ghép nhánh trong PIM-DM 39 

Hình 2.15: Tham gia cây chia sẻ PIM bước 1 40 

Hình 2.16: Tham gia cây chia sẻ PIM bước 2 41 

Hinh 2.17: Tham gia cây chia sẻ PIM bước 3 42 

Hình 2.18: Tham gia cây chia sẻ PIM bước 4 42 

Hình 2.19: Tham gia cây chia sẻ PIM bước 5 43 

Hình 2.20: Tham gia cây chia sẻ PIM bước 6 43 

Hình 2.21: Cắt nhánh trên cây chia sẻ bước 1 44 

Hình 2.22: Cắt nhánh trên cây chia sẻ bước 2 44 

Hình 2.23: Cắt nhánh trên cây chia sẻ bước 3 45 

Hình 2.24: Tham gia cây đường đi ngắn nhất bước 1 46 

Hình 2.25: Tham gia cây đường đi ngắn nhất bước 2 46 

Hình 2.26: Tham gia cây đường đi ngắn nhất bước 3 47 

Hình 2.27: Cắt nhánh trên cây đường đi ngắn nhất bước 1 47 

Hình 2.28: Cắt nhánh trên cây đường đi ngắn nhất bước 2 48 

Hình 2.29: Cắt nhánh trên cây đường đi ngắn nhất bước 3 48 

Hình 2.30: Chuyển sang cây SPT bước 1 51 

Hình 2.31: Chuyển sang cây SPT bước 2 51 

Hình 2.32: Cắt bỏ nguồn khỏi cây chia sẻ bước 3 52 

Hình 2.33: Cắt bỏ nguồn khỏi cây chia sẻ bước 4 53 

Hình 2.34: Cắt bỏ nguồn khỏi cây chia sẻ bước 5 53 

Hình 2.35: Vùng MOSPF chứa nguồn và thành viên nhóm G 55 

Hình 2.36: Cây đường đi ngắn nhất MOSPF SPT cho mạng N3 và N4 56 

Hình 2.37: Thông điệp nhóm tóm tắt trong vùng đường trục 57 

Hình 2.38: Cây đường đi ngắn nhất SPT trong vùng đường trục 58 

Hình 2.39: Nguồn trong vùng không phải đường trục 59 

Hình 2.40: Lưu lượng multicast xuống các miền MOSPF 60 

Hình 3.1: Thành phần của hội nghị truyền hình 63 

Hình 3.2: Khuôn dạng RTP header 64 

Hình 3.3: Các thành phần của Access Grid 70 

Hình 3.4: Desktop node 71 

Trang 10

Hình 3.5: Office node 72 

Hình 3.6: Room node 72 

Hình 3.7: Mối quan hệ giữa multicast và Access Grid 73 

Hình 3.8: Profile Dialog 73 

Hình 3.9: Điền địa chỉ virtual venue để kết nối 73 

Hình 3.10: Venue client 74 

Hình 3.11: Cửa sổ video 74 

Hình 3.12: Cửa sổ audio 75 

Trang 12

DANH SÁCH CÁC BẢNG

Bảng 1.1: Các trường trong thông điệp IGMPv1 18 

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

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

Bảng 1.4: Các trường trong thông điệp IGMPv3 Host Membership Report 24 

Trang 13

MỞ ĐẦU

1 Đặt vấn đề

Ngày nay mạng Internet và các ứng dụng trên mạng ngày càng trở nên thông dụng, vì thế có một lượng rất lớn các thông tin cần phải chuyển tiếp đến nhiều nơi trong cùng một thời gian Phần lớn các ứng dụng trên mạng hiện nay

sử dụng phương pháp truyền dữ liệu unicast, đây là phương pháp truyền dữ liệu

từ điểm tới điểm, tức là dữ được truyền từ một người gửi tới một người nhận Tuy nhiên với một số ứng dụng yêu cầu phải thường xuyên gửi dữ liệu từ một điểm tới nhiều điểm, dữ liệu được gửi từ một người gửi tới nhiều người nhận, phương pháp truyền dữ liệu unicast trở nên không hiệu quả Trong trường hợp này, các ứng dụng sử dụng unicast phải đóng gói cùng một dữ liệu nhiều lần và lần lượt gửi chúng từ điểm tới điểm Một cách khác để thực hiện việc truyền dữ liệu từ điểm đến nhiều điểm là sử dụng broadcast, đây là phương pháp gửi dữ liệu từ một điểm đến tất cả các điểm Dễ thấy rằng cả hai phương pháp trên đều gây nên những sự lãng phí tài nguyên mạng, khi đó multicast là một sự thay thế tốt nhất, phương pháp này giúp ta tiết kiệm được băng thông mạng cũng như cải thiện được tốc độ truyền dữ liệu Multicast là phương pháp truyền dữ liệu từ điểm tới nhiều điểm, trong đó một nguồn gửi sẽ gửi lưu lượng tới một nhóm nguồn nhận thông qua địa chỉ nhóm multicast Trong phương pháp multicast có các giao thức cho phép các máy tính có thể gia nhập vào nhóm để nhận dữ liệu hay rời bỏ nhóm một cách dễ dàng, các giao thức định tuyến cũng được xây dựng cho phép các ứng dụng có thể gửi dữ liệu một cách hiệu quả trên mạng

2 Đối tượng và mục tiêu luận văn

Xuất phát từ vấn đề nêu trên, luận văn xác định IP multicast là đối tượng nghiên cứu với những vấn đề tập trung chủ yếu như sau:

− Tìm hiểu các thành phần cơ bản của quá trình truyền dữ liệu multicast gồm: địa chỉ multicast, cây multicast, chuyển tiếp multicast cũng như quá trình

Trang 14

tham gia nhóm multicast thông qua giao thức Internet Group Management Protocol

− Tìm hiểu các giao thức định tuyến cơ bản được sử dụng trong truyền thông multicast như giao thức định tuyến Distance Vector Multicast Routing Protocol, giao thức định tuyến Protocol Independent Multicast và giao thức định tuyến Multicast Open Shortest Path First

− Tìm hiểu khả năng áp dụng của multicast trong ứng dụng thời gian thực

3 Hướng tiếp cận

Với mục tiêu là tìm hiểu công nghệ IP multicast, luận văn được tiếp cận theo hướng tập trung nghiên cứu các khái niệm, tìm hiểu các giao thức phổ biến của multicast từ đó chỉ ra được các ưu điểm, nhược điểm cũng như khả năng áp dụng của IP multicast vào các ứng dụng

4 Kết cấu của luận văn

− Luận văn gồm phần mở đầu, 03 chương và kết luận

− Chương 1: Trình bày các vấn đề cơ bản của IP multicast như địa chỉ multicast, cây phân phối multicast, chuyển tiếp multicast và quá trình tham gia nhóm multicast

− Chương 2: Trình bày các giao thức định tuyến được sử dụng trong truyền thông multicast gồm giao thức định tuyến Distance Vector Multicast Routing Protocol, giao thức định tuyến Protocol Independent Multicast theo hai mô hình tập trung và phân tán và giao thức định tuyến Multicast Open Shortest Path First

− Chương 3: Tìm hiểu về hội nghị truyền hình, ứng dụng phần mềm Access Grid để xây dựng hệ thống hội nghị truyền hình dựa trên IP multicast

− Cuối cùng là kết luận và hướng nghiên cứu tiếp theo của luận văn

Trang 15

Multicast là thuật ngữ kỹ thuật, có nghĩa một gói tin có thể được gửi đến nhiều nơi trong cùng thời điểm Cách thức thông thường trong việc truyền thông tin trên Internet là sử dụng các giao thức unicast, các giao thức này gửi các gói tin đến mỗi điểm thu tại một thời điểm Trên mạng multicast, một gói tin có thể được gửi từ một máy tính đến một vài máy tính khác, thay vì gửi gói tin đó lần lượt đến từng máy tính Do 5, 10 hay 100 máy có thể nhận được cùng gói tin nên băng thông được tiết kiệm Khi sử dụng multicast để gửi đi gói tin thì không cần thiết phải biết địa chỉ của những người cần nhận luồng tin multicast đó: dữ liệu được quảng bá theo một phương thức mà những người quan tâm đến nó có thể nhận được

Hình 1.1: Truyền thông unicast và multicast Các mạng hỗ trợ multicast cung cấp nhiều dịch vụ và các ứng dụng cho người sử dụng đầu cuối Nhiều ứng dụng hỗ trợ multicast là các ứng dụng đa

Trang 16

phương tiện, tuy nhiên còn có nhiều loại ứng dụng khác nhau sử dụng công nghệ

IP multicast cho các mục đích không phải đa phương tiện Các ứng dụng thời gian thực bao gồm: truyền hình trực tiếp, đài phát thanh, hội nghị truyền hình, các ứng dụng không phải thời gian thực như truyền file, dữ liệu, video theo yêu cầu …

Truyền tải multicast đưa lại nhiều ưu điểm so với unicast truyền thống Băng thông của mạng được tận dụng hiệu quả hơn do nhiều luồng dữ liệu được thay thế bởi một luồng dữ liệu multicast Công nghệ này đem lại chất lượng tối

ưu do cần ít bản sao dữ liệu để chuyển đi và xử lý tại các nút mạng Để có thể có được các ưu điểm của IP multicast, thì khả năng định tuyến multicast phải được

hỗ trợ tại các nút mạng Tùy thuộc vào chính sách sử dụng và nhu cầu của người

sử dụng, thì các vấn đề liền quan đến định tuyến, độ tin cậy, đánh địa chỉ mạng

và các giao thức truyền tải đa phương tiện có tầm quan trọng đối với nhà vận hành mạng

Multicast không chỉ đem lại lợi ích cho người sử dụng đầu cuối Hầu hết các ứng dụng multicast là dựa trên UDP, việc sử dụng giao thức này có thể dẫn đến các ảnh hưởng phụ không mong muốn (các gói tin có thể bị hủy) so với các ứng dụng unicast tương tự dựa trên TCP Tuy nhiên, việc thiếu kiểm soát nghẽn

có thể dẫn đến việc suy giảm chất lượng mạng tổng thể Các gói tin trùng có thể thỉnh thoảng được tạo ra khi các topo mạng multicast thay đổi Trong tương lai việc triển khai IPv6 sẽ đem lại multicast có sẵn cho người sử dụng mạng Phần mềm định tuyến tin cậy hơn với các giao thức mới sẽ tận dụng được hạ tầng mạng Với multicast có sẵn, các vấn đề định tuyến sẽ được giải quyết dễ dàng hơn và băng thông sẽ được tiết kiệm hơn

Multicast là một công nghệ tương đối mới cho phép các khách hàng được hưởng lợi từ các ứng dụng thời gian thực mà đáng ra phải yêu cầu một lượng băng thông cực lớn Công nghệ này cho phép nhiều loại công ty đưa các sản phẩm của họ đến các nhóm người với chi phí thấp so với unicast Multicast giảm lưu lượng mạng và tiết kiệm băng thông cho phép người dùng khai thác khả năng

sử dụng cực đại có thể của Internet Multicast cung cấp cho các người sử dụng liên quan đến Internet (các người sử dụng đầu cuối, nhà vận hành mạng, ISP và

Trang 17

các công ty liên quan khác) giải pháp khả thi kinh tế và kỹ thuật cho vấn đề truyển tải khối lượng thông tin lớn đến các nhóm người dùng được lựa chọn

Để có được multicast trên Internet hay các mạng Intranet, cách đầu tiên là kết nối các ốc đảo mạng hỗ trợ multicast với các đường hầm IP multicast Do các đường hầm này không khả phân cấp và không đưa lại các ưu điểm kế thừa của multicast, bước kế tiếp là thay thế hạ tầng đường hầm với hạ tầng định tuyến multicast thực sự Công nghệ multicast hiện tại đưa ra các thách thức khác nhau cho việc định tuyến và đánh địa chỉ, hiện nay thử thách lớn nhất là để thiết lập hạ tầng toàn cầu có tính tin cậy và có tính khả phân cấp tương tự như hạ tầng mạng Internet unicast ngày nay

Trong khi giao thức mạng IP tự bản thân nó cung cấp các cơ chế kế thừa đối với IP multicast, các giao thức lớp cao hơn không hỗ trợ nó Mặc dù các giao thức không tin cậy như UDP, RTP có thể sử dụng trên nóc của IP multicast, TCP

và các giao thức truyền tải tin cậy hơn trong các môi trường unicast không hộ trợ multicast Do vậy các giao thức truyền tải multicast phải được phát triển và vì thế không có giao thức truyền tải mục đích chung cho mọi trường hợp, tuy nhiên lại xuất hiện các giao thức khả cấu hình cao và các giao thức được chuyên biệt cao cho các mục đích truyền tải tin cậy đặc biệt trong môi trường IP multicast

1.2 Các thành phần tham gia vào truyền thông multicast

Để tham gia vào quá trình trao đổi dữ liệu các máy tính và router cần hỗ trợ giao thức multicast, khi đó các máy có thể gửi hay nhận lưu lượng multicast Máy nguồn gửi dữ liệu multicast tới một địa chỉ nhóm, đây là một địa chỉ lớp D Các máy trạm muốn nhận các gói tin multicast sẽ liên hệ với router cục bộ để đăng ký tham gia nhóm và nhận dữ liệu Các router sẽ sử dụng một giao thức định tuyến multicast để xác định các mạng con có các thành viên của nhóm và chuyển dữ liệu multicast tới các máy nhận Nếu mạng con không có thành viên của nhóm, router sẽ không chuyển dữ liệu tới mạng đó Ta sẽ tìm hiểu các thành thành phần tham gia vào truyền thông multicast và hoạt động của chúng trong mạng qua minh hoạ trên hình 1.2:

Trang 18

Hình 1.2: Các thành phần tham gia vào truyền thông multicast

Trong mô phỏng trên hình 1.2 các hoạt động diễn ra như sau:

− Host A trong Subnet 1 là một nguồn multicast và gửi dữ liệu multicast tới địa chỉ nhóm

− Host B trong Subnet 1 gửi yêu cầu tham gia nhóm tới router cục bộ của nó Bởi vì Host B đã gia nhập vào nhóm nên giao diện mạng của nó sẽ lắng nghe các gói dữ liệu gửi tới địa chỉ nhóm Các máy tính còn lại trong Subnet 1 không tham gia nhóm nên chúng sẽ lọc bỏ các lưu lượng gửi tới địa chỉ nhóm multicast

− Router sẽ chuyển dữ liệu multicast tới tất cả các mạng con có thành viên của nhóm Trong trường hợp này, router sẽ chuyển dữ liệu từ Subnet 1 tới Subnet 3

− Host C trong Subnet 3 đã tham gia vào nhóm do đó nó sẽ nhận dữ liệu multicast

− Host D trong Subnet 3 gửi yêu cầu tới router để tham gia nhóm, sau khi tham gia nhóm giao diện mạng của nó sẽ lắng nghe và nhận các dữ liệu gửi tới địa chỉ nhóm

Các thành phần tham gia vào truyền thông multicast:

Trang 19

− Host (bao gồm nguồn hoặc đích): là các là các máy tính tham gia kết nối vào mạng và hỗ trợ quá trình gửi và nhận dữ liệu multicast

− Router: là các router hỗ trợ giao thức multicast, nó có khả năng xử lý các yêu cầu tham gia hay rời nhóm và có giao thức định tuyến multicast để xác định và chuyển dữ liệu tới các mạng con

− Địa chỉ multicast: là địa chỉ lớp D, nó chính là địa chỉ của nhóm multicast

− Nhóm multicast: là một tập các thiết bị đầu cuối lắng nghe dữ liệu gửi tới một địa chỉ multicast

− MBone: viết tắt của từ Internet multicast backbone là một phần của Internet

hỗ trợ quá trình định tuyến và gửi dữ liệu multicast

1.3 Địa chỉ multicast

Các router phải có phương thức để phân biệt dữ liệu dạng multicast với dạng unicast hay broadcast Điều này thực hiện thông qua việc gán địa chỉ IP, bằng cách dùng địa chỉ lớp D từ 224.0.0.0 đến 239.255.255.255 cho multicast các thiết bị mạng có thể nhanh chóng lọc ra các địa chỉ multicast bằng cách đọc 4 bit bên trái của một địa chỉ Bốn bit này của một địa chỉ multicast luôn luôn bằng

1110, hình 1.3 thể hiện định dạng của một địa chỉ lớp D

Hình 1.3: Định dạng của địa chỉ IP lớp D Làm thế nào để một router kết hợp một địa chỉ multicast của IP với một địa chỉ MAC Do không có cơ chế tương đương với giao thức phân giải địa chỉ như trong truyền thông unicast, một dạng giá trị đặc biệt dành riêng cho địa chỉ MAC của multicast sẽ được dùng Các địa chỉ này bắt đầu bằng 01005E, phần 28 bit sau của địa chỉ IP multicast sẽ được ánh xạ vào 23 bit thấp của địa chỉ MAC bằng một giải thuật đơn giản

28 bits

Trang 20

Hình 1.4: Ánh xạ địa chỉ IP multicast sang địa chỉ MAC

Hình 1.4 cho thấy cơ chế ánh xạ địa chỉ, chỉ có 23 bit cuối của địa chỉ là được chép từ địa chỉ IP sang địa chỉ MAC Tuy nhiên chú ý rằng có 5 bit của địa chỉ IP không được chuyển sang địa chỉ MAC Ánh xạ này làm nảy sinh một vấn

đề là có thể có 32 địa chỉ multicast khác nhau có thể ánh xạ vào cùng một địa chỉ MAC Sự nhập nhằng này dẫn đến một vấn đề nhỏ khi host multicast nhận một Ethernet frame của địa chỉ multicast Một địa chỉ MAC có thể tương ứng với 32 địa chỉ IP multicast khác nhau Vì vậy, khi một host nhận dữ liệu nó kiểm tra tất

cả các frame có MAC mà nó quan tâm Sau đó host này phải kiểm tra phần địa chỉ IP bên trong mỗi frame để nhận ra phần địa chỉ của từng nhóm multicast Sau đây là một số không gian địa chỉ được dành riêng của multicast:

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

− Địa chỉ 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 host 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 … đây là địa chỉ các nhóm cố định vì các địa chỉ này được xác định trước

− Khoảng địa chỉ dành cho quản trị 239.0.0.0 - 239.255.255.255 được dùng trong các miền multicast khác nhau, giống như dãy địa chỉ dành riêng trong RFC1918 Địa chỉ này không được sử dụng giữa các miền multicast nên nó

có thể được dùng lại nhiều lần

28 bit Ánh xạ sang địa chỉ MAC

Multicast

MAC Address 0 0 0 0 0 0 0 1 0 000000 0010 11 1010

1110

5 bit Không sử dụng

IP Multicast

224 - 239

Trang 21

− Đị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 sử dụng trên Internet vì vậy địa chỉ này phải duy nhất

1.4 Cây phân phối multicast

Để phân phối dữ liệu multicast tới tới tất cả các máy nhận, cây phân phối multicast được sử dụng, nó có tác dụng điều khiển đường đi của dữ liệu truyền trên mạng Có hai loại cơ bản của cây phân phối multicast là cây nguồn và cây chia sẻ

1.4.1 Cây nguồn

Dạng đơn giản nhất của cây phân phối là cây nguồn,với gốc của nó chính là nguồn dữ liệu multicast và các nhánh của nó dẫn tới các đầu cuối nhận dữ liệu trên mạng Do loại cây này sử dụng đường đi ngắn nhất nên còn có tên là cây đường đi ngắn nhất (Shortest Path Tree – SPT) Hình 1.5 biểu diễn một ví dụ của cây SPT cho nhóm 224.1.1.1 có gốc tại host A là nguồn dữ liệu và hai máy nhận

là host B và host C

Hình 1.5: Cây đường đi ngắn nhất của host A

Trang 22

Hình 1.6: Cây đường đi ngắn nhất của host B

Ký hiệu đặc biệt (S, G) chỉ ra một cây SPT trong đó S là địa chỉ IP của nguồn dữ liệu và G là địa chỉ của nhóm multicast Áp dụng cho mạng như trên hình 1.5 ký hiệu có thể được viết như sau (192.1.1.1, 224.1.1.1) Mỗi ký hiệu (S, G) ứng với một nguồn gửi dữ liệu vì thế nếu host B cũng gửi dữ liệu tới nhóm 224.1.1.1 và các host A và C là các máy nhận thì ký hiệu (S, G) ứng với nguồn B

sẽ là (192.2.2.2, 224.1.1.1) như trong hình 1.6

1.4.2 Cây chia sẻ

Không có gốc ứng với từng nguồn như cây nguồn, các cây chia sẻ sử dụng một gốc chung duy nhất tại một điểm đã chọn trên mạng Gốc chia sẻ này còn được gọi là điểm hẹn (Rendezvous Point – RP) Hình 1.7 thể hiện một cây chia

sẻ cho nhóm 224.2.2.2 với gốc cây tại router D Khi sử dụng cây chia sẻ, nguồn phải gửi lưu lượng của nó tới gốc và sau đó lưu lượng này được chuyển tiếp theo các nhánh của cây đến các đầu cuối nhận dữ liệu

Trong hình 1.7 dữ liệu multicast từ host A và host D được gửi tới gốc cây là router D và theo nhánh cây đến hai máy nhận là host B và host C Bởi vì tất cả

Trang 23

các nguồn trong nhóm multicast cùng sử dụng chung một cây chia sẻ, một ký hiệu (*, G) được sử dụng để biểu diễn cây Trong đó ký hiệu * có nghĩa là tất cả các nguồn và G biểu diễn địa chỉ nhóm multicast Vì thế cây chia sẻ trong hình 1.7 có thể được viết (*, 224.2.2.2)

Hình 1.7: Cây chia sẻ Cây chia sẻ được chia làm hai loại: cây một chiều và cây hai chiều Trong cây hai chiều dữ liệu có thể truyền lên và xuống để tới tất cả các máy nhận Hình 1.8 thể hiện một ví dụ của cây chia sẻ hai chiều, trong đó dữ liệu từ host B được gửi ngược lên gốc cây và từ gốc cây được gửi xuống router B đến router A và đến máy nhận

Cây chia sẻ một chiều chỉ cho dữ liệu multicast đi xuống theo chiều từ gốc cây đến các máy nhận Vì thế nguồn dữ liệu cần sử dụng một cách khác để gửi

dữ liệu tới gốc cây và từ đó chuyển tới các máy nhận Một phương pháp được sử dụng đó là cho gốc của cây chia sẻ tham gia vào một cây SPT có gốc là nguồn dữ liệu Hình 1.9 minh họa một cây chia sẻ một chiều trong đó gốc của cây tham gia vào cây SPT có gốc là host B và dữ liệu được gửi từ B tới gốc Khi gốc cây nhận

Trang 24

dữ liệu nó sẽ gửi dữ liệu xuống các nhánh để tới các máy nhận Giao thức định tuyến PIM sử dụng phương pháp này để lấy dữ liệu từ nguồn tới router RP

Hình 1.8: Cây chia sẻ hai chiều

Hình 1.9: Cây chia sẻ một chiều sử dụng cây SPT

Trang 25

Hình 1.10: Cây chia sẻ một chiều sử dụng định tuyến unicast

Một cách khác để gửi dữ liệu multicast tới gốc cây là cho gốc cây kết nối trực tiếp với nguồn và dữ liệu được gửi tới gốc thông qua phương thức unicast Giao thức định tuyến CBT sử dụng phương pháp này khi một máy nguồn chỉ gửi

dữ liệu tới nhóm (máy nguồn chỉ gửi dữ liệu và không nhận dữ liệu từ nhóm) Trong hình 1.10 host A là nguồn chỉ gửi dữ liệu nó không tham gia vào nhóm multicast vì thế nó không thuộc một nhánh trên cây chia sẻ

Trong ví dụ trên router A đóng gói dữ liệu multicast từ host A và sử dụng định tuyến unicast để gửi gói tin trực tiếp đến gốc cây Tại gốc cây dữ liệu được

mở gói và gửi xuống các nhánh cây để tới máy nhận

1.5 Chuyển tiếp multicast

Trong cơ chế định tuyến unicast, lưu lượng được chuyển tiếp qua mạng theo một đường duy nhất từ nguồn tới đích Router unicast không thực sự quan tâm đến địa chỉ nguồn, nó chỉ quan tâm đến địa chỉ đích và cách để chuyển tiếp lưu lượng tới đích Router quét bảng định tuyến của nó và chuyển tiếp một bản sao duy nhất qua giao diện hướng đến đích Trong cơ chế multicast nguồn gửi dữ

Trang 26

liệu tới một nhóm các máy thông qua địa chỉ nhóm được lưu trong trường địa chỉ đích của một gói tin IP Vì thế các gói tin multicast không thể chỉ đơn giản xác định đường đi tiếp theo cho gói tin dựa vào địa chỉ đích như trong giao thức định tuyến unicast Các router thường phải gửi dữ liệu lên nhiều giao diện của nó để đến được tất cả các máy nhận Chính vì thế giao thức định tuyến multicast phức tạp hơn so với định tuyến unicast

Hầu hết các phương pháp định tuyến multicast sử dụng chuyển tiếp theo đường dẫn ngược (Reverse Path Forwarding – RPF) như là một cơ chế kiểm tra chính để quyết định chuyển tiếp hay loại bỏ một gói tin Khi một gói tin multicast đến router, router sẽ thực hiện kiểm tra RPF đối với gói tin Địa chỉ nguồn của gói tin sẽ được kiểm tra để biết rằng gói tin đó có được nhận từ giao diện có đường đi ngắn nhất trở lại nguồn (giao diện RPF) hay không Nếu kiểm tra RPF thành công gói tin được chuyển tiếp, nếu kiểm tra thất bại router sẽ loại bỏ gói tin

đó Cách thức để router xác định giao diện là RPF đối với một gói tin phụ thuộc vào giao thức định tuyến được sử dụng Một số giao thức multicast duy trì một bảng định tuyến multicast riêng của nó để sử dụng vào kiểm tra RPF như giao thức DVMRP Có những giao thức khác sử dụng bảng định tuyến unicast ở trên router để xác định giao diện RPF như giao thức PIM hay CBT

Mỗi lần một gói tin multicast được chuyển tiếp bởi router giá trị trường TTL (Time To Live) trong IP header sẽ giảm đi một Nếu giá trị TTL của gói tin giảm về không, router sẽ loại gói tin Giới hạn TTL có thể được áp dụng cho một giao diện cụ thể của một router multicast để ngăn chặn các gói tin multicast có giá trị TTL nhỏ hơn ngưỡng được chuyển qua giao diện Trong hình 1.11 minh họa một router áp dụng giới hạn TTL cho các giao diện của nó

Hình 1.11: Giới hạn TTL

Trang 27

Trong hình 1.11, gói tin multicast đến router từ cổng Serial0, giả sử rằng kiểm tra RPF thành công và các cổng còn lại của router đều có trong danh sách cổng ra cho nhóm multicast, vì thế dữ liệu sẽ được chuyển tiếp đến các cổng Tuy nhiên do router áp dụng giới hạn ngưỡng TTL tại các giao diện vì thế gói tin chỉ được chuyển tiếp ra các cổng Serial1 và Ethernet0, còn ở cổng Serial2 ngưỡng TTL là 64 lớn hơn giá trị TTL của gói tin là 23 vì thế gói tin không được chuyển tiếp

1.6 Đường trục multicast

Mạng đường trục multicast – MBone được xây dựng nhằm đánh giá các ứng dụng cũng như các giao thức được xây dựng phục vụ truyền thông multicast

dữ liệu, audio và video MBone được thiết kế hoạt động ở lớp trên của Internet

và được cấu thành bởi mạng lưới các ốc đảo multicast Các ốc đảo giao tiếp với mạng bên ngoài thông qua một bộ định tuyến có khả năng xử lý các gói IP multicast thông qua hỗ trợ giao thức quản lý nhóm Internet IGMP và các giao thức định tuyến khác được xác định là một MRouter hay IP multicast router Tiếp giáp với các ốc đảo là các bộ định tuyến IP truyền thống chỉ hỗ trợ xử lý các gói

IP unicast được xác định là các URouter (IP unicast router) Các MRouter của các mạng khác nhau kết nối thông qua các liên kết ảo từ điểm tới điểm thông qua

cơ chế đường hầm – tunneling Kết quả là MBone được hình thành nhờ tập hợp các MRouter được nối với nhau bởi các đường hầm bao phủ toàn mạng

Hình 1.12: Cơ chế đường hầm liên kết các ốc đảo multicast

Trang 28

Đường hầm là cơ chế cho phép chuyển gói dữ liệu multicast từ MRouter nguồn đến MRouter đích thông qua các bộ định tuyến MRouter nguồn thực hiện đóng gói và chuyển tiếp dữ liệu Việc đóng gói theo cơ chế đường hầm thực hiện

bổ sung thêm phần tiêu đề IP mới với địa chỉ đích là địa chỉ IP unicast của MRouter ở đầu bên kia của đường hầm và địa chỉ nguồn là địa chỉ IP unicast của MRouter đang gửi gói tin đó

Hình 1.13: Đóng gói IP multicast theo cơ chế tunneling

Các bộ định tuyến trung gian nằm trên tuyến liên kết từ MRouter nguồn đến MRouter đích sẽ xem gói này như gói dữ liệu unicast bình thường và truyền đi theo thông tin trong bảng định tuyến unicast Ốc đảo multicast đích ở phía bên kia của đường hầm sẽ nhận gói unicast này và tách phần header đã được thêm vào rồi sau đó gửi gói dữ liệu đó đi một cách thích hợp Với bộ định tuyến các gói dữ liệu được xem như đến từ MRouter lân cận và trong suốt đối với các bộ định tuyến trung gian Đường đi trung gian đã bị ẩn đi đối với bộ định tuyến này Khi đó các MRouter xử lý các gói IP multicast tương tự như các bộ định tuyến

xử lý các gói IP unicast như thể hiện trên hình 1.13

Hình 1.14: Cơ chế đường hầm liên kết các MRouter

Trang 29

Như thể hiện trên hình 1.14, MRouter R2 muốn gửi một gói tin IP đa hướng tới MRouter R5 Trước hết, R2 sẽ đóng vỏ gói tin (chuyển từ gói IP đa hướng thành gói IP đơn hướng) rồi chuyển tiếp tới URouter R3 Gói đa hướng này sẽ đi theo tuyến R3-R7-R8-R5 Như vậy, theo cơ chế đường hầm, với MRouter R5 thì gói tin này được xử lý với địa chỉ nguồn đến từ R2

1.7 Giao thức quản lý nhóm Internet

Để nhận dữ liệu multicast từ một nguồn, các máy nhận đầu tiên phải tham gia vào một nhóm multicast, nhóm này được xác định thông qua địa chỉ multicast Một host có thể tham gia vào một nhóm multicast bằng cách gửi các yêu cầu đến router gần nhất Tác vụ này được thực hiện thông qua giao thức quản

lý nhóm Internet - IGMP (Internet Group Management Protocol) Giao thức IGMP phát triển từ giao thức Host Membership Protocol, được mô tả trong tài liệu của Deering IGMP phát triển từ IGMPv1 (RFC 1112) đến IGMPv2 (RFC 2236) và phiên bản mới nhất 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 có giá trị bằng 1 Các gói IGMP chỉ được truyền trong mạng LAN và không được tiếp tục chuyển sang LAN khác do giá trị TTL của nó Hai mục đích quan trọng nhất của IGMP là:

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

− Thông báo cho router biết có một máy muốn rời nhóm multicast (nói cách khác, máy đó không còn quan tâm đến việc nhận dữ liệu multicast nữa) Các router thường dùng IGMP để duy trì thông tin cho từng giao diện để biết những nhóm multicast nào router cần phải truyền dữ liệu và những host nào muốn nhận

1.7.1 Giao thức IGMPv1

Giao thức IGMP phiên bản 1 bao gồm 2 loại thông điệp là Host Membership Report và Host Membership Query Định dạng của thông điệp IGMPv1 được thể hiện như trong hình 1.15:

Trang 30

Hình 1.15: Thông điệp IGMPv1 Giá trị của các trường trong IGMPv1 được mô tả trong bảng 1.1:

Bảng 1.1: Các trường trong thông điệp IGMPv1 Tên trường Độ dài Mô tả

Version 4 bit Chỉ định phiên bản của giao thức và luôn có

giá trị là 1 Type 4 bit Xác định 2 kiểu thông điệp có giá trị:

0x1 cho Host Membership Query 0x2 cho Host Membership Report Unused 8 bit 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 Group Address 32 bit Được gán về giá trị 0.0.0.0 khi router 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

1.7.1.1 Thông điệp Host Membership Report

Để tham gia vào một nhóm, host sẽ gửi một thông điệp Host Membership Report tới router cục bộ, nó không cần quan tâm có các host khác trên mạng con

đã là thành viên của nhóm hay chưa Thông điệp này sử dụng địa chỉ 224.0.0.1 (địa chỉ all-hosts) như địa chỉ đích và chứa địa chỉ nhóm mà host muốn tham gia

0 3 4 7 8 15 16 31

UnusedType

Group Address

Trang 31

1.7.1.2 Thông điệp Host Membership Query

Một router IGMPv1 sẽ gửi một cách định kỳ (mỗi 60 giây) thông điệp Host Membership Query đến tất cả các host để kiểm tra xem các host này có còn quan tâm nhận dữ liệu multicast nữa không Các host có thể tham gia vào các nhóm multicast ở bất kỳ thời điểm nào IGMPv1 không có cơ chế để cho phép một host rời khỏi một nhóm nếu host đó không còn muốn nhận dữ liệu từ nhóm multicast Thay vào đó, router sẽ kết luận là một cổng của nó không còn thuộc về một nhóm multicast nào nếu cổng đó không nhận được thông điệp Host Membership Report trong ba chu kỳ truy vấn liên tiếp Điều này có nghĩa là, dữ liệu 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 dữ liệu multicast nữa

− Một thông điệp mới được sử dụng khi một 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ư trong hình 1.16:

Hình 1.16: Thông điệp IGMPv2

0 7 8 15 16 31

Max RTime

Group Address

Trang 32

Giá trị của các trường trong IGMPv1 đượ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 Mô tả

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

0x11 cho Host Membership Query 0x12 cho IGMPv1 Host Membership Report 0x16 cho IGMPv2 Host Membership Report 0x17 cho Leave Group Message

Maximum

Response Time

8 bit Chỉ ra khoảng thời gian tối đa (tính bằng giây)

mà một host 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 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

1.7.2.1 Lựa chọn router truy vấn

Khác với IGMPv1, trong đó giao thức định tuyến multicast sẽ lựa chọn router truy vấn, IGMPv2 sử dụng một phương thức lựa chọn đơn giản để chọn một router trên mỗi mạng con để gửi định kỳ các thông điệp Host Membership Query Router được chọn là router có địa chỉ IP nhỏ nhất 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

Trang 33

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

1.7.2.2 Thông điệp rời nhóm

Khi một host muốn rời nhóm, nó sẽ gửi một thông điệp tới địa chỉ 224.0.0.2 (địa chỉ all-routers) Khi nhận được thông điệp rời nhóm, router sẽ gửi truy vấn cho từng nhóm cụ thể tới mạng con chứa host Nếu router không nhận được được trả lời của truy vấn nó sẽ quyết định rằng trên mạng con đó không còn thành viên nào của nhóm và không đẩy dữ liệu multicast tới đó nữa Nếu router nhận được phản hồi, nghĩa là trên mạng con đó vẫn còn host là thành viên của nhóm và nó

sẽ tiếp tục chuyển dữ liệu tới Sử dụng thông điệp rời nhóm làm giảm đi các dữ liệu thừa mà router chuyển đến các mạng con khi không còn thành viên nào của nhóm

1.7.2.3 Truy vấn cho từng nhóm

Một thông điệp Host Membership Query được gửi tới địa chỉ 224.0.0.1 để tìm ra các nhóm multicast có thành viên trên mạng con Trong IGMPv2 các router còn có thể gửi thông điệp cho từng nhóm cụ thể tới một địa chỉ nhóm để xác định nhóm đó có thành viên trên một mạng con hay không

1.7.3 Giao thức 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 host 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 host 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

1.7.3.1 Lọc dữ liệu

Đây là khả năng cho phép một host chỉ ra nó sẽ nhận nguồn dữ liệu multicast từ địa chỉ nguồn xác định Với IGMPv1 và IGMPv2 một host thông báo nhóm thành viên mà không quan tâm nguồn của dữ liệu gửi tới nhóm Nếu

dữ liệu multicast gửi tới nhóm từ nhiều nguồn, một mạng con có thể nhận dữ liệu

Trang 34

multicast từ mỗi nguồn IMGPv3 cho phép một host 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à host nhận dữ liệu

− Danh sách các nguồn mà host không nhận dữ liệu

Các multicast router và các giao thức định tuyến multicast sử dụng thông tin cho từng nguồn cụ thể trong IGMPv3 Host Membership Report để ngăn việc chuyển các thông điệp multicast từ một nguồn tới một mạng con không có thành viên của nhóm

1.7.3.2 Thông điệp IGMPv3 Host Membership Query

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ố 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 router 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 Bảng 1.3 mô tả các trường trong thông điệp IGMPv3 Host Membership Query:

Bảng 1.3: Các trường trong thông điệp IGMPv3 Host Membership Query Tên trường Độ dài Mô tả

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

0x11 cho Host Membership Query 0x12 cho IGMPv1 Host Membership Report 0x16 cho IGMPv2 Host Membership Report 0x17 cho Leave Group Message

Maximum

Response Time

8 bit Chỉ ra khoảng thời gian tối đa (tính bằng giây)

mà một host 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

Trang 35

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 router nhận dừng

cập nhật thời gian khi nhận một truy vấn Querier’s

Robustness

Variable (QRV)

3 bit 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

Querier’s Query

Interval

Code(QQIC)

8 bit Chỉ ra khoảng thời gian tính bằng giây mà

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

Number of

Sources

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

truy vấn Source Addresses 32 bit Chứa địa chỉ IP của nguồn multicast

1.7.3.3 Thông điệp IGMPv3 Host Membership Report

Host sử dụng thông điệp IGMPv3 Host Membership Report để chỉ rõ các nhóm multicast mà nó muốn gia nhập, với mỗi địa chỉ nhóm kèm theo danh sách những địa chỉ nguồn mà host muốn nhận dữ liệu multicast và nguồn nào host không muốn nhận Thông điệp IGMPv3 Host Membership Report chứa một dãy các bản ghi nhóm Mỗi nhóm chứa địa chỉ nhóm multicast và một danh sách liên kết các nguồn Thông điệp IGMPv3 Host Membership Report được gửi tới địa chỉ 224.0.0.22, đây là địa chỉ dành riêng cho router multicast hỗ trợ IGMPv3

Trang 36

Bảng 1.4: Các trường trong thông điệp IGMPv3 Host Membership Report Tên trường Độ dài Mô tả

Type 8 bit Xác định 3 kiểu thông điệp có giá trị:

0x12 cho IGMPv1 Host Membership Report 0x16 cho IGMPv2 Host Membership Report 0x22 cho IGMPv3 Host Membership Report Reserved 8 bit 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 Reserved 16 bit Chứa giá trị 0 khi gửi và bị bỏ qua khi nhận Number of

Records

16 bit Chứa số lượng của nhóm bản ghi trong thông

điệp Group Records Variable Mỗi bản ghi chỉ ra địa chỉ IP cho nhóm

multicast tham gia hay rời và danh sách các nguồn nhận dữ liệu và không nhận dữ liệu

Trang 37

CHƯƠNG 2 ĐỊNH TUYẾN MULTICAST

Các giao thức định tuyến multicast được chia làm ba loại chính gồm: giao thức hoạt động theo mô hình tập trung (dense mode) như DVMRP và PIM-DM, các giao thức hoạt động theo mô hình phân tán (sparse mode) như PIM-SM và giao thức hoạt động theo mô hình trạng thái liên kết (link-state) như MOSPF Các giao thức dense mode hoạt động theo cơ chế quảng bá và loại bỏ trong đó các router cho rằng trên các mạng con tồn tại ít nhất một máy nhận dữ liệu multicast, vì thế chúng gửi dữ liệu xuống tất cả các mạng cho đến khi nhận được thông báo dừng gửi dữ liệu Với cơ chế này các giao thức dense mode phù hợp với các mạng máy tính nhỏ, trong đó lưu lượng multicast được truyền tới hầu hết các máy trên mạng Các giao thức sparse mode hoạt động theo cách ngược lại, các router sẽ không gửi dữ liệu lên mạng trừ khi nó nhận được yêu cầu gửi dữ liệu từ các máy nhận Điều này làm giảm dữ liệu dư thừa truyền trên mạng, giúp cho các giao thức sparse mode phù hợp với các mạng lớn, với số lượng các máy tham gia nhận dữ liệu nhiều nhưng nằm rải rác trên các mạng con

2.1 Giao thức định tuyến multicast véctơ khoảng cách

Giao thức định tuyến multicast véctơ khoảng cách (Distance Vector Multicast Routing Protocol – DVMRP) là giao thức định tuyến multicast đầu tiên được sử dụng phổ biến DVMRP được phát triển dựa trên giao thức định tuyến unicast Routing Information Protocol (RIP) với một số thay đổi đề phù hợp với

cơ chế multicast

2.1.1 Tìm kiếm hàng xóm

Tìm kiếm router hàng xóm là một quá trình quan trọng bởi vì các router sử dụng giao thức DVMRP cần phải duy trì một danh sách các router hàng xóm để thực hiện chuyển tiếp multicast Điều này đặc biệt đúng khi DVMRP hoạt động trên mạng đa truy cập như mạng Ethernet, bởi vì trên mạng có thể có nhiều router

Trang 38

DVMRP cùng tham gia Để thực hiện điều đó, các thông điệp thăm dò DVMRP Probe được các router gửi một cách định kỳ tới địa chỉ all-DVMRP-router (224.0.0.4) Trên hình 2.1 thể hiện cơ chế tìm kiếm hàng xóm thông qua hoạt động của 2 router

Hình 2.1: Tìm hàng xóm trong DVMRP Các bước hoạt động của cơ chế tìm kiếm được minh họa trên hình 2.1 gồm:

− Đầu tiên router 1 gửi một gói tin thăm dò, lúc này router 1 chưa phát hiện được các hàng xóm vì thế danh sách hàng xóm trong gói tin là rỗng

− Router 2 nhận được thông điệp thăm dò từ router 1, nó thêm địa chỉ IP của router 1 vào danh sách các router hàng xóm của giao diện đã nhận gói tin

− Router 2 gửi thông điệp thăm dò lên mạng, trong đó có chứa địa chỉ IP của router 1 trong danh sách hàng xóm

− Router 1 nhận được thông điệp từ router 2 thêm địa chỉ IP của router 2 vào danh sách hàng xóm Và ở chu kỳ gửi gói tin tiếp theo tiếp theo, router 1 gửi thông điệp lên mạng với địa chỉ IP của router 2 trong danh sách hàng xóm

Khi một router nhận được thông điệp thăm dò trong đó địa chỉ IP của nó có trong danh sách hàng xóm, router biết rằng đã có một kết nối hai chiều được thiết lập thành công giữa nó và hàng xóm, khi đó hai router có thể trao đổi dữ liệu với nhau

2.1.2 Trao đổi thông báo định tuyến

Trang 39

Các thông báo định tuyến của DVMRP được gửi một cách định kỳ theo cách giống với giao thức định tuyến unicast RIP Một điểm khác biệt quan trọng

là DVMRP quảng bá các đường đi cùng với subnet mask cho phép DVMRP hoạt động được trên giao thức classless Trên hình 2.2 thể hiện một mạng multicast bao gồm 2 router sử dụng DVMRP kết nối với nhau

Hình 2.2: Trao đổi định tuyến DVMRP bước 1 Trong bảng định tuyến của 2 router có chứa một số đường đi mà các router

đã học được thông qua giao diện S0 Giả sử router 2 gửi thông điệp thông báo trước như trên hình 2.3

Trang 40

Hình 2.3: Trao đổi định tuyến DVMRP bước 2 Thông báo định tuyến từ router 2 chứa hai đường đi và được gửi tới router

1 Router 1 thêm một thực thể cho mạng 204.1.16.0/24 vào bảng định tuyến của

nó, ngoài ra vì router 2 có giá trị metric tới mạng 151.10.0.0 nhỏ hơn nên router 1 cập nhật thực thể đã có trong bảng định tuyến với giá trị metric mới là 4 và giao diện ra là E0 Sau đó router 1 phản hồi bằng cách gửi thông điệp thăm dò của nó lên mạng để tới router 2

Trong gói tin gửi tới router 2, router 1 đã sử dung kỹ thuật Poison Reverse với hai đường đi mà nó đã nhận trên cổng E0 bằng cách thêm giá trị ngưỡng (32) vào giá trị metric hiện tại Kỹ thuật Poison Reverse trong DVMRP được sử dụng

để thông báo tới một router là có một router khác phụ thuộc vào nó trong việc nhận dữ liệu từ một nhóm multicast Vì thế router 2 biết rằng router 1 ở phía dưới trong cây multicast của nguồn dữ liệu và mong muốn nhận dữ liệu multicast từ hai mạng này thông qua router 2 Router 2 nhận thông báo và thêm vào bảng định tuyến của nó một thực thể mới cho mạng 198.14.32.0/24 như trong hình 2.4

Ngày đăng: 13/03/2014, 18:44

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
1. Adams A, Nicholas J. and Siadak W. (2002), Protocol Independent Multicast – Dense Mode (PIM – DM): Protocol Specification (Revised), in Internet draft Sách, tạp chí
Tiêu đề: Protocol Independent Multicast – Dense Mode (PIM – DM): Protocol Specification (Revised)
Tác giả: Adams A, Nicholas J, Siadak W
Nhà XB: Internet draft
Năm: 2002
2. Adams B. et al (2002), Interdomain Multicast Solutions Guide, Cisco Press Sách, tạp chí
Tiêu đề: Interdomain Multicast Solutions Guide
Tác giả: Adams B. et al
Năm: 2002
3. Brown I. et al (2002), Internet Multicast Tomorrow, The Internet Protocol Journal, Volume 5, Issue 4 Sách, tạp chí
Tiêu đề: Internet Multicast Tomorrow
Tác giả: Brown I. et al
Năm: 2002
4. Behrouz A Forouzan and Sophia Fegan (2000), TCP/IP Protocol Suite, GrawHill Sách, tạp chí
Tiêu đề: TCP/IP Protocol Suite
Tác giả: Behrouz A Forouzan and Sophia Fegan
Năm: 2000
5. Deering S., Host Extensions for IP Multicasting, RFC 1112 in Internet draft Sách, tạp chí
Tiêu đề: Host Extensions for IP Multicasting
Tác giả: Deering S
6. Edwards B.M et al (2002), Interdomain Multicast Routing, Addison – Wesley Sách, tạp chí
Tiêu đề: Interdomain Multicast Routing
Tác giả: Edwards B.M et al
Năm: 2002
7. Estrin D. (1997), Protocol Independent Multicast – Sparse Mode (PIM – SM): Protocol Specification, in Internet draft Sách, tạp chí
Tiêu đề: Protocol Independent Multicast – Sparse Mode (PIM – SM): "Protocol Specification
Tác giả: Estrin D
Năm: 1997
8. Eriksson H. (1994), MBONE: The Multicast Backbone, Communications of the ACM, volume 37 Sách, tạp chí
Tiêu đề: MBONE: The Multicast Backbone
Tác giả: Eriksson H
Năm: 1994
9. Kevin C. Almeroth, The Evolution of Multicast: From the MBone to Inter- DomainMulticast to Internet2 Deployment, http://www.stardust.com Sách, tạp chí
Tiêu đề: The Evolution of Multicast: From the MBone to Inter-Domain Multicast to Internet2 Deployment
Tác giả: Kevin C. Almeroth
10. Hardman V. (1995), Reliable audio for use over the Internet, presented at International Network Conference (INET) Sách, tạp chí
Tiêu đề: Reliable audio for use over the Internet
Tác giả: Hardman V
Năm: 1995
11. Hardman V. (1996), Robust audio over Internet: Analysis and implementation, Dept. of Computer Science, University College London, Research Note RN/96/8 Sách, tạp chí
Tiêu đề: Robust audio over Internet: Analysis and implementation
Tác giả: Hardman V
Năm: 1996
12. Minoli D. (2008), IP multicast with applications to IPTV and mobile DVB-H, John Wiley & Sons, Canada Sách, tạp chí
Tiêu đề: IP multicast with applications to IPTV and mobile DVB-H
Tác giả: Minoli D
Năm: 2008
13. McCanne S. and Jacobson V. (1995), vic: A flexible framework for packet video, presented at ACM Multimedia Sách, tạp chí
Tiêu đề: vic: A flexible framework for packet video
Tác giả: McCanne S., Jacobson V
Nhà XB: ACM Multimedia
Năm: 1995
14. Macedonia, M. R. and Brutzman, D. P., MBone Provides Audio and Video Across the Internet, IEEE Computer Sách, tạp chí
Tiêu đề: MBone Provides Audio and Video Across the Internet
15. Moy J. (1998), Multicast Extension OSPF, in Internet draft Sách, tạp chí
Tiêu đề: Multicast Extension OSPF
Tác giả: Moy J
Năm: 1998
16. Project P911-PF, IP Multicast, State-of-the-Art Technologies, Products and Services, EURESCOM Sách, tạp chí
Tiêu đề: IP Multicast, State-of-the-Art Technologies, Products and Services
Tác giả: Project P911-PF
Nhà XB: EURESCOM
17. Pusateri T. (2000), Distance Vector Multicast Routing Protocol (DVMRP), in Internet draft Sách, tạp chí
Tiêu đề: Distance Vector Multicast Routing Protocol (DVMRP)
Tác giả: Pusateri T
Năm: 2000
18. Schulzrinne H. et al (1996), RTP: A Transport Protocol for Real-Time Applications, RFC 1889, IETF Sách, tạp chí
Tiêu đề: RTP: A Transport Protocol for Real-Time Applications
Tác giả: Schulzrinne H. et al
Năm: 1996
19. Williamson B. et al (2000), Developing IP Multicast Network, Volume 1, Cisco Press Sách, tạp chí
Tiêu đề: Developing IP Multicast Network, Volume 1
Tác giả: Williamson B. et al
Năm: 2000
20. Richchard Stevent and Gary R.Wright , TCP/IP Illustrated, volume 1,2,3 Sách, tạp chí
Tiêu đề: TCP/IP Illustrated

HÌNH ẢNH LIÊN QUAN

Hình 1.2: Các thành phần tham gia vào truyền thông multicast - luận văn tìm hiêu công nghệ ip muliticast
Hình 1.2 Các thành phần tham gia vào truyền thông multicast (Trang 18)
Hình 1.6: Cây đường đi ngắn nhất của host B - luận văn tìm hiêu công nghệ ip muliticast
Hình 1.6 Cây đường đi ngắn nhất của host B (Trang 22)
Hình 1.8: Cây chia sẻ hai chiều - luận văn tìm hiêu công nghệ ip muliticast
Hình 1.8 Cây chia sẻ hai chiều (Trang 24)
Hình 1.10: Cây chia sẻ một chiều sử dụng định tuyến unicast - luận văn tìm hiêu công nghệ ip muliticast
Hình 1.10 Cây chia sẻ một chiều sử dụng định tuyến unicast (Trang 25)
Hình 1.14: Cơ chế đường hầm liên kết các MRouter - luận văn tìm hiêu công nghệ ip muliticast
Hình 1.14 Cơ chế đường hầm liên kết các MRouter (Trang 28)
Hình 2.6: Cắt nhánh trong DVMRP bước 2 - luận văn tìm hiêu công nghệ ip muliticast
Hình 2.6 Cắt nhánh trong DVMRP bước 2 (Trang 43)
Hình 2.9: Cây phân phối PIM-DM - luận văn tìm hiêu công nghệ ip muliticast
Hình 2.9 Cây phân phối PIM-DM (Trang 47)
Hình 2.12: Cắt nhánh trong PIM-DM bước 3 - luận văn tìm hiêu công nghệ ip muliticast
Hình 2.12 Cắt nhánh trong PIM-DM bước 3 (Trang 49)
Hình 2.23: Cắt nhánh trên cây chia sẻ bước 3 - luận văn tìm hiêu công nghệ ip muliticast
Hình 2.23 Cắt nhánh trên cây chia sẻ bước 3 (Trang 57)
Hình 2.36: Cây đường đi ngắn nhất MOSPF SPT cho mạng N3 và N4 - luận văn tìm hiêu công nghệ ip muliticast
Hình 2.36 Cây đường đi ngắn nhất MOSPF SPT cho mạng N3 và N4 (Trang 68)
Hình 2.40: Lưu lượng multicast xuống các miền MOSPF - luận văn tìm hiêu công nghệ ip muliticast
Hình 2.40 Lưu lượng multicast xuống các miền MOSPF (Trang 72)
Hình 3.3: Các thành phần của Access Grid - luận văn tìm hiêu công nghệ ip muliticast
Hình 3.3 Các thành phần của Access Grid (Trang 82)
Hình 3.7: Mối quan hệ giữa multicast và Access Grid - luận văn tìm hiêu công nghệ ip muliticast
Hình 3.7 Mối quan hệ giữa multicast và Access Grid (Trang 85)
Hình 3.11: Cửa sổ video - luận văn tìm hiêu công nghệ ip muliticast
Hình 3.11 Cửa sổ video (Trang 86)
Hình 3.12: Cửa sổ audio - luận văn tìm hiêu công nghệ ip muliticast
Hình 3.12 Cửa sổ audio (Trang 87)

TỪ KHÓA LIÊN QUAN

w