Tải bản đầy đủ (.pdf) (89 trang)

Ip multicast và ứng dụng

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.65 MB, 89 trang )

ĐẠI HỌC QUỐC GIA HÀ NỘI

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

TRƯƠNG CÔNG ÁI

IP MULTICAST VÀ ỨNG DỤNG

LUẬN VĂN THẠC SĨ

Hà Nội – 2009


LỜI CẢM ƠN
Tôi xin chân thành cảm ơn TS. Ngô Khánh Vân, ngƣời đã tận tình hƣớng
dẫn, chỉ bảo tơi trong suốt thời gian dài thực hiện đề tài.
Tôi xin chân thành cảm ơn PGS.TS Nguyễn Văn Tam, công tác tại Viện
công nghệ thông tin, đã chỉ bảo và cho tơi những lời khun q báu để hồn
thiện luận văn.
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


I

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



I
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 ......................................................................................... 30
2.2 Giao thức PIM Dense Mode ...................................................................... 32
2.2.1 Tìm kiếm hàng xóm ............................................................................ 32
2.2.1.1 Thơng điệp Hello.......................................................................... 32
2.2.1.2 Router đƣợc chỉ định .................................................................... 32
2.2.1.3 Cây phân phối multicast ............................................................... 33
2.2.2 Cắt nhánh ............................................................................................ 34
2.2.3 Cơ chế xác nhận .................................................................................. 36
2.2.4 Ghép nhánh ......................................................................................... 37
2.3 PIM Sparse Mode ....................................................................................... 38
2.3.1 Mô hình tham gia ................................................................................ 38
2.3.2 Cây chia sẻ .......................................................................................... 39
2.3.2.1 Tham gia cây chia sẻ .................................................................... 39
2.3.2.2 Cắt nhánh trên cây chia sẻ............................................................ 42
2.3.3 Cây đƣờng đi ngắn nhất ...................................................................... 44
2.3.3.1 Tham gia cây đƣờng đi ngắn nhất ................................................ 44
2.3.3.2 Cắt nhánh trên cây đƣờng đi ngắn nhất ....................................... 46
2.3.4 Thông điệp Join/Prune ........................................................................ 47
2.3.5 Đăng ký nguồn dữ liệu ........................................................................ 48

2.3.5.1 Thông điệp PIM Register ............................................................. 48
2.3.5.2 Thông điệp PIM Register – Stop.................................................. 49
2.3.6 Chuyển từ cây chia sẻ sang cây đƣờng đi ngắn nhất .......................... 49


I
2.4 Giao thức Multicast Open Shortest Path First ........................................... 53
2.4.1 Định tuyến multicast trong vùng ......................................................... 53
2.4.2 Định tuyến multicast trên nhiều vùng ................................................. 55
2.4.3 Định tuyến multicast trên các vùng tự trị ............................................ 58
CHƢƠNG 3 ......................................................................................................... 60
SỬ DỤNG ACCESS GRID XÂY DỰNG .......................................................... 60
HỆ THỐNG HỘI NGHỊ TRUYỀN HÌNH DỰA TRÊN IP MULTICAST ........ 60
3.1 Các khái niệm chung về dịch vụ hội nghị truyền hình............................... 60
3.1.1 Hệ thống hội nghị truyền hình ............................................................ 61
3.1.2 Các thành phần cơ bản của hội nghị truyền hình ................................ 62
3.2 Giao thức RTP ............................................................................................ 63
3.2.1 Khuôn dạng RTP header ..................................................................... 63
3.2.2 Các ứng dụng sử dụng RTP ............................................................... 64
3.2.2.1 Thoại hội nghị đơn giản ............................................................... 64
3.2.2.2 Thoại và truyền hình hội nghị ...................................................... 66
3.2.2.3 Bộ trộn và bộ biên dịch ................................................................ 66
3.3 Đồng bộ luồng hình ảnh và âm thanh ........................................................ 67
3.4 Sử dụng Access Grid xây dựng một hội nghị truyền hình ......................... 69
3.4.1 Các thành phần của Access Grid......................................................... 69
3.4.2 Sử dụng Access Grid client để tham gia vào hội nghị truyền hình..... 72
KẾT LUẬN .......................................................................................................... 75
HƢỚNG PHÁT TRIỂN CỦA ĐỀ TÀI ............................................................... 76
TÀI LIỆU THAM KHẢO



II

DANH MỤC CÁC TỪ VIẾT TẮT
Viết đầy đủ

Từ viết tắt

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

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

Border Routers
DR

Designated Router

Router đƣợc lựa chọn

DVMRP

Distance Vector Multicast

Giao thức định tuyến multicast véc-

Routing Protocol

tơ khoảng cách

Internet Group

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

IGMP

Management Protocol
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 biên vùng multicast

Router
MBONE

Multicast Backbone

Đƣờng trục multicast

MOSPF

Multicast Open Shortest

Giao thức định tuyến multicast dựa


Path First

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


II
PIM

PIM-DM

PIM-SM

RAT

Protocol Independent


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

Multicast

lập

Protocol Independent

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

Multicast Dense Mode

lập theo mơ hình tập trung

Protocol Independent

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

Multicast Sparse Mode

lập theo mô hình phân tán

Robust Audio Tool

Cơng cụ truyền âm thanh trong ứng
dụng hội nghị truyền hình

RIP

Routing Information


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

Protocol
RPF

Reverse Path Forwarding

Kiểm tra đƣờng dẫn ngƣợc

RP

Rendezvous Point

Điểm hẹn

RTCP

Real Time Transport

Giao thức điều khiển truyền thông

Control Protocol

thời gian thực

Realtime Transport

Giao thức truyền thông thời gian


Protocol

thực

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ị

RTP

truyền hình


III

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................................................... 27
Hình 2.4: Trao đổi định tuyến DVMRP bƣớc 3................................................... 28
Hình 2.5: Cắt nhánh trong DVMRP bƣớc 1 ........................................................ 29
Hình 2.6: Cắt nhánh trong DVMRP bƣớc 2 ........................................................ 30
Hình 2.7: Ghép nhánh trong DVMRP bƣớc 1 ..................................................... 31
Hình 2.8: Ghép nhánh trong DVMRP bƣớc 2 ..................................................... 31
Hình 2.9: Cây phân phối PIM-DM ...................................................................... 34
Hình 2.10: Cắt nhánh trong PIM-DM bƣớc 1 ...................................................... 35
Hình 2.11: Cắt nhánh trong PIM-DM bƣớc 2 ...................................................... 35
Hình 2.12: Cắt nhánh trong PIM-DM bƣớc 3 ...................................................... 36
Hình 2.13: Xác nhận trong PIM-DM ................................................................... 37



III
Hình 2.14: Ghép nhánh trong PIM-DM ............................................................... 38
Hình 2.15: Tham gia cây chia sẻ PIM bƣớc 1 ...................................................... 39
Hình 2.16: Tham gia cây chia sẻ PIM bƣớc 2 ...................................................... 40
Hinh 2.17: Tham gia cây chia sẻ PIM bƣớc 3 ...................................................... 41
Hình 2.18: Tham gia cây chia sẻ PIM bƣớc 4 ...................................................... 41
Hình 2.19: Tham gia cây chia sẻ PIM bƣớc 5 ...................................................... 42
Hình 2.20: Tham gia cây chia sẻ PIM bƣớc 6 ...................................................... 42
Hình 2.21: Cắt nhánh trên cây chia sẻ bƣớc 1 ..................................................... 43
Hình 2.22: Cắt nhánh trên cây chia sẻ bƣớc 2 ..................................................... 43
Hình 2.23: Cắt nhánh trên cây chia sẻ bƣớc 3 ..................................................... 44
Hình 2.24: Tham gia cây đƣờng đi ngắn nhất bƣớc 1.......................................... 45
Hình 2.25: Tham gia cây đƣờng đi ngắn nhất bƣớc 2.......................................... 45
Hình 2.26: Tham gia cây đƣờng đi ngắn nhất bƣớc 3.......................................... 46
Hình 2.27: Cắt nhánh trên cây đƣờng đi ngắn nhất bƣớc 1 ................................. 46
Hình 2.28: Cắt nhánh trên cây đƣờng đi ngắn nhất bƣớc 2 ................................. 47
Hình 2.29: Cắt nhánh trên cây đƣờng đi ngắn nhất bƣớc 3 ................................. 47
Hình 2.30: Chuyển sang cây SPT bƣớc 1 ............................................................ 50
Hình 2.31: Chuyển sang cây SPT bƣớc 2 ............................................................ 50
Hình 2.32: Cắt bỏ nguồn khỏi cây chia sẻ bƣớc 3 ............................................... 51
Hình 2.33: Cắt bỏ nguồn khỏi cây chia sẻ bƣớc 4 ............................................... 52
Hình 2.34: Cắt bỏ nguồn khỏi cây chia sẻ bƣớc 5 ............................................... 52
Hình 2.35: Vùng MOSPF chứa nguồn và thành viên nhóm G ............................ 54
Hình 2.36: Cây đƣờng đi ngắn nhất MOSPF SPT cho mạng N3 và N4 .............. 55
Hình 2.37: Thơng điệp nhóm tóm tắt trong vùng đƣờng trục .............................. 56
Hình 2.38: Cây đƣờng đi ngắn nhất SPT trong vùng đƣờng trục ........................ 57
Hình 2.39: Nguồn trong vùng khơng phải đƣờng trục ......................................... 58
Hình 2.40: Lƣu lƣợng multicast xuống các miền MOSPF .................................. 59
Hình 3.1: Thành phần của hội nghị truyền hình .................................................. 62

Hình 3.2: Khn dạng RTP header ...................................................................... 63
Hình 3.3: Các thành phần của Access Grid ......................................................... 69
Hình 3.4: Desktop node........................................................................................ 70


III
Hình 3.5: Office node ........................................................................................... 71
Hình 3.6: Room node ........................................................................................... 71
Hình 3.7: Mối quan hệ giữa multicast và Access Grid ........................................ 72
Hình 3.8: Profile Dialog ....................................................................................... 72
Hình 3.9: Điền địa chỉ virtual venue để kết nối ................................................... 72
Hình 3.10: Venue client ....................................................................................... 73
Hình 3.11: Cửa sổ video....................................................................................... 73
Hình 3.12: Cửa sổ audio....................................................................................... 74


IV

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


1

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 ngun 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ƣ q trình
tham gia nhóm multicast thơng qua giao thức Internet Group Management
Protocol.


2

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à q 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.


3

CHƢƠNG 1

CƠ BẢN VỀ IP MULTICAST
1.1 Mở đầu
IP multicast là một nhóm các cơng nghệ và tiêu chuẩn cho phép việc truyền
tải đa điểm – đa điểm nhƣ hội nghị, hay truyền tài điểm – đa điểm nhƣ việc
quảng bá âm thanh, video trên Internet. Việc ứng dụng công nghệ này ngày càng
phát triển do nhu cầu ngày càng cao đối với các ứng dụng đa phƣơng tiện và sự
cải tiến công nghệ IP multicast.
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
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ệ


4
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 số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à


5
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 tồ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:



6

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:


7
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 ln ln bằng
1110, hình 1.3 thể hiện định dạng của một địa chỉ lớp D.
28 bits
Class D

1

1

1

0

Multicast Group ID

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.


8
224 - 239
IP Multicast

MAC Address

Y

Z

1110

Address

Multicast

X

5 bit

28 bit

Không sử dụng

Ánh xạ sang địa chỉ MAC

000 000 0100 0000 00010 111 010


01

00

5E

X

Y

Z

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:
Tồ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.


9
Đị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


10


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ả


11
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


12
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


13

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ữ


14
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


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

Tải bản đầy đủ ngay
×