Multicast được thực hiện ở lớp này bới vì các lí do sau: Quá trình chuyển đổi địa chi tại ISO/OSI Layer 3-to-Layer 2 Một máy tính thuộc một nhóm có thế đăng kí với bộ định tuyến đế c
Trang 1MỤC LỤC
DANH MỤC HÌNH VẼ ii
DANH MỤC BẢNG BIỂU iv
THUẬT NGỮ VIẾT TẮT v
CHƯƠNG 1: CÔNG NGHỆ IP MULTICAST 1
1.1 Tổng quan công nghệ IP multicast 1
Giới thiệu 1
Multicast trên các lớp 1
Địa chỉ multicast 2
1.2 Một số giao thức trong Multicast 4
Multicast và quá trình định tuyến 4
IGMP (Internet Group Management Protocol) 4
PIM (Protocol Independent Multicast) 14
1.3 Kết luận chương 19
CHƯƠNG 2: CÔNG NGHỆ MPLS VPN 21
2.1 Tổng quan công nghệ MPLS 21
Các động lực ra đời của chuyển mạch nhãn đa giao thức MPLS 21
Lịch sử phát triển MPLS 22
Khái niệm MPLS 23
2.2 Các thành phần trong MPLS 25
Các khái niệm cơ bản về MPLS 25
Giao thức phân phối nhãn (LDP) 33
2.3 Ứng dụng công nghệ MPLS VPN 35
Giới thiệu 35
Mô hình MPLS VPN lớp 2 36
Mô hình MPLS VPN lớp 3 43
2.4 Kết luận chương 61
CHƯƠNG 3: ỨNG DỤNG CÔNG NGHỆ IP MULTICAST TRONG MPLS VPN (MPVN) 63
3.1 Giới thiệu 63
3.2 Các thành phần và cách thức hoạt động của MVPN 64
Định tuyến và chuyển tiếp multicast VPN và miền multicast 64
Cây phân phối multicast (Multicast Distribution Trees - MDT) 64
Giao diện đường hầm đa điểm (Multicast Tunnel Interface -MTI) 65
Thông điệp cập nhật MDT cho MP-BGP 65
Trang 2Mô tả hoạt động 66
3.3 Mô phỏng 67
Mục đích mô phỏng 67
Mô hình mô phỏng 68
Phân tích hệ thống 68
Thực hiện mô phỏng 70
Đánh giá kết quả 91
3.4 Kết luận chương 91
KẾT LUẬN 92
TÀI LIỆU THAM KHẢO 93
Trang 3DANH MỤC HÌNH VẼ
Hình 1.1 Biểu diễn địa chỉ multicast 2
Hình 1.2 Cơ chế ánh xạ địa chỉ multicast sang địa chỉ Ethernet MAC 2
Hình 1.3 Ví dụ minh họa cơ chế ánh xạ địa chỉ IP sang địa chỉ MAC 3
Hình 1.4 Khuôn dạng bản tin IGMPv1 5
Hình 1.5 Ví dụ minh họa quá trình hoạt động của IGMPv1 7
Hình 1.6 Khuôn dạng bản tin IGMPv2 7
Hình 1.7 Ví dụ minh họa quá trình rời nhóm của máy trạm IGMPv2 9
Hình 1.8 Ví dụ minh họa quá trình rời nhóm của máy trạm IGMPv2 10
Hình 1.9 Khuôn dạng bản tin IGMPv2 12
Hình 1.10 Quá trình định tuyến lưu lượng multicast của PIM-DM 15
Hình 1.11 Quá trình định tuyến lưu lượng multicast của PIM-DM 16
Hình 1.12 Quá trình định tuyến lưu lượng multicast của PIM-SM 17
Hình 2.1 Cấu trúc hoạt động MPLS 24
Hình 2.2 Nhãn MPLS trong chế độ khung 25
Hình 2.3 Nhãn MPLS trong chế độ tế bào 26
Hình 2.4 Đơn vị dữ liệu giao thức lớp thích ứng ATM Layer 5 27
Hình 2.5 Ngăn xếp nhãn 28
Hình 2.6 Lớp chuyển tiếp tương đương FEC 29
Hình 2.7 LSR trong miền MPLS 30
Hình 2.8: Kiến trúc Edge LSR 31
Hình 2.9: Kiến trúc LSR 31
Hình 2.10: Mô tả các chức năng của LSR 33
Hình 2.11: Các thông tin về LIB, FIB, LFIB 33
Hình 2.12 Thủ tục phát hiện LSR lân cận 35
Hình 2.13 Cấu trúc MPLS VPN L2 37
Hình 2.14 Kiến trúc mạng MPLS VPN L2 38
Hình 2.15 Cấu trúc chung gói tin L2 VPN 40
Hình 2.16 Cấu trúc PDU 41
Hình 2.17 Các thành phần mạng MPLS VPN L3 46
Hình 2.18 Mô hình hoạt động của BGP/MPLS 48
Hình 2.19: Đường chuyển mạch nhãn trong mạng nhà cung cấp 49
Hình 2.20: Luồng dữ liệu trong BGP/MPLS 49
Hình 2.21: VRF tách tuyến khách hàng 51
Hình 2.22 Hình cập nhật MP-BGP 54
Hình 2.23 RD trong MPLS VPN 55
Hình 2.24 Mô hình BGP MPLS VPN 55
Hình 2.25: Sự tương tác trong mặt phẳng điều khiển của MPLS VPN 59
Hình 2.26: Hoạt động của mặt phẳng điều khiển 59
Trang 4Hình 2.27: Hoạt động của mặt phẳng dữ liệu 60
Hình 3.1 Tiến trình định tuyến và chuyển tiếp multicast VPN 64
Hình 3.2 Topology cơ bản minh họa 67
Hình 3.3 Khởi tạo Dữ liệu MDT 67
Hình 3.4 Mô hình mô phỏng 68
Hình 3.5 Ví dụ kiểm tra IP và kích hoạt các giao diện trên PE1 70
Hình 3.6 Ví dụ kiểm tra bảng định tuyến OSPF trên PE1 71
Hình 3.7 Kiểm tra thông tin cấu hình MPLS và bảng chuyển tiếp nhãn PE1 72
Hình 3.8 Ví dụ kiểm tra trạng thái neighbor BGP của PE1 74
Hình 3.9 Ví dụ kiểm tra cấu hình VRF trên PE1 75
Hình 3.10 Ví dụ kiểm tra trạng thái hàng xóm trên PE1 77
Hình 3.11 Ví dụ kiểm tra bảng định tuyến tương ứng VRF A trên PE1 77
Hình 3.12 Ví dụ kiểm tra bảng định tuyến trên CE-A1 và CEB1 78
Hình 3.13 Kiểm tra trạng thái pim trên PE1 79
Hình 3.14 Kiểm tra trạng thái pim neighbor theo VRF trên PE1 81
Hình 3.15 Kiểm tra request kênh từ CE-A2 trên PE2 82
Hình 3.16 Kiểm tra request kênh từ CE-B2 trên PE2 82
Hình 3.17 Thực hiện ping từ CE-A1 83
Hình 3.18 Thực hiện ping từ CE-B1 83
Hình 3.19 Kiểm tra nguồn kênh trả về trên PE2 theo VRF A 83
Hình 3.20 Kiểm tra nguồn kênh trả về trên PE2 theo VRF B 84
Hình 3.21 Lọc gói tin ICMP của CE-A1 với nhóm 239.6.6.6 trong miền MPLS 85
Hình 3.22 Cấu trúc gói tin ICMP được gửi từ CE-A1 đến nhóm 239.6.6.6 trao đổi giữa PE1 và P 85
Hình 3.23 Lọc gói tin ICMP giữa PE2 và CE-A2 86
Hình 3.24 Cấu trúc gói tin ICMP được gửi từ CE-A1 đến nhóm 239.6.6.6 được trao đổi giữa PE2 và CE-A2 86
Hình 3.25 Cấu trúc gói tin ICMP phản hồi từ CE-A2 đến CE-A1 được trao đổi giữa PE2 và P 86
Hình 3.26 Bảng nhãn của bộ định tuyến PE1 87
Hình 3.27 Thông tin về nhãn cho mạng 192.168.15.5 được quảng bá từ PE1 đến PE2 qua giao thức MP-BGP 87
Hình 3.28 Bảng nhãn của bộ định tuyến P 87
Hình 3.29 Cấu trúc gói tin ICMP phản hồi từ CE-A2 đến CE-A1 được trao đổi giữa P và PE1 88
Hình 3.30 Cấu trúc gói tin ICMP phản hồi từ CE-A2 đến CE-A1 được trao đổi giữa PE1 và CE-A1 88
Hình 3.30 Tình huống sử dụng truyền unicast 89
Hình 3.31 Biểu đồ lưu lượng ra/vào trên cổng E0/1 của PE1 89
Hình 3.32 Tình huống sử dụng truyền multicast 90
Hình 3.33 Biểu đồ lưu lượng ra/vào trên cổng E0/1 của PE1 90
Trang 5DANH MỤC BẢNG BIỂU
Bảng 1.1: Giá trị của các trường trong IGMPv1 5
Bảng 1.2: Các trường trong thông điệp IGMPv2 7
Bảng 1.3: Các trường trong thông điệp IGMPv3 13
Bảng 2.1: Các loại LSR và chức năng của chúng 32
Trang 6THUẬT NGỮ VIẾT TẮT
Từ viết tắt Thuật ngữ tiếng Anh Thuật ngữ tiếng Việt
đồng bộ
IGMP Internet Group Management
Protocol
Giao thức Quản lý Nhóm Internet
phạm vi miền
ITU-T International Telecommunications
Union (Telecommunications Standardisation Sector)
Hiệp hội viễn thông quốc tế
Trang 7LSP Label-Switched Path Đường chuyển mạch nhãn
LSR Label-Switched Router Bộ định tuyến chuyển mạch
nhãn
LFIB Label Forwarding Information Base Cơ sở thong tin chuyển tiếp
nhãn
MPLS Multiprotocol Label Switching Chuyển mạch nhãn đa giao
thức
MP-BGP MPLS – Border Gateway Protocol Đa giao thức cổng biên
multicast độc lập
PIM-DM Protocol Independent Multicast
Dense Mode
Giao thức định tuyến multicast độc lập chế độ dày đặc
Trang 8PIM-SM Protocol Independent Multicast
Sparse Mode
Giao thức định tuyến multicast độc lập chế độ thưa thớt
PIM-SSM Protocol Independent Multicast
Source Specific Multicast
Giao thức định tuyến multicast độc lập xác định nguồn
đưa ra
tuyến
RSVP Resource Reservation Protocol Giao thức dành sẵn tài
nguyên
TDM Time division multiplexing Ghép kênh theo thời gian
VCC Virtual Channel Connection Kênh kết nối ảo
VPNL3 Virtual Private Network Layer 3 Mạng riêng ảo lớp 3
Trang 9VRF Virtual Routing Forwarding Bảng định tuyến chuyên
mạch ảo
Trang 10CHƯƠNG 1: CÔNG NGHỆ IP MULTICAST
1.1 Tổng quan công nghệ IP multicast
Giới thiệu
IP Multicast là giao thức dùng để truyền gói tin IP từ một nguồn đến nhiều đích khác nhau trong mạng LAN hay WAN Nhóm những thành viên muốn nhận thông tin này thì phải tham gia vào một nhóm Multicast Với IP Multicast, ứng dụng gửi một bản sao của thông tin đến một nhóm Thông tin này đến tất cả những người nào muốn nhận
nó Kĩ thuật Multicast đánh địa chỉ các gói là địa chỉ nhóm thay vì địa chỉ của từng người nhận Các gói tin này phụ thuộc vào các mạng chuyển tiếp để chuyển đến mạng cần nhận nó Multicast là kĩ thuật đẩy thông tin, trong đó một máy chủ sẽ gửi dữ liệu đến người sử dụng mà không cần người sử dụng phải yêu cầu trước
IP Multicast hỗ trợ hàng ngàn người có thể nhận thông tin đồng thời mà không ảnh hưởng đến băng thông chung Thêm vào đó, giao thức định tuyến IP multicast cung cấp một phương thức truyền hiệu quả cho dữ liệu từ một nguồn đi qua các mạng khác nhau và không đồng nhất như là Internet Nếu các thiết bị mạng hỗ trợ Multicast, chỉ cần gửi một gói tin duy nhất vào mạng cho nhiều người nhận
Multicast trên các lớp
Multicast có thể đuợc sử dụng trên cả hai lớp liên kết dữ liệu và lớp mạng Tại lớp liên kết dữ liệu các giao thức Ethernet, FDDI, và token ring hỗ trợ địa chi Multicast trong các trường mở rộng Multicast tại lớp liên kết dữ liệu chỉ được giới hạn trong các ứng dụng tại một mạng LAN Tuy nhiên, multicast cũng có thể được sử dụng tại lớp mạng nếu các ứng dụng multicast mở rộng ra khỏi mạng LAN hoặc phát triển trên nền Internet bao gồm các môi trường truyền khác nhau và các cấu trúc mạng khác nhau Multicast được thực hiện ở lớp này bới vì các lí do sau:
Quá trình chuyển đổi địa chi tại ISO/OSI Layer 3-to-Layer 2
Một máy tính thuộc một nhóm có thế đăng kí với bộ định tuyến đế chuyến tiếp thông tin nhóm đến nó RFC 1112 định nghĩa Internet Group
Management Protocol (IGMP) IGMP chỉ rõ phương thức mà một nút mạng thông báo cho mạng biết nó là thành viên cùa một nhóm multicast
Multicast còn được hỗ trợ trong quá trình định tuyến thông qua liên lạc giữa các
bộ định tuyến với nhau Có một số chuẩn cho việc truyền multicast như sau:
Trang 11 RFC 1075 định nghĩa Distance Vector Multicast Routing Protocol (DVMRP)
RFC 1584 định nghĩa giao thức Multicast Open Shortest Path First (MOSPF), một sự mở rộng cúa OSPF và hỗ trợ 1P Multicast
RFC 2117 định nghĩa giao thức Protocol Independent Multicast-Sparse Mode (PIM-SM)
Địa chỉ multicast
Một địa chi multicast cho phép truyền các gói tin tới một tập hợp các thành viên của cùng một nhóm Một địa chi multicast định danh một nhóm các máy hoặc giao tiếp mạng đại diện cho một nhóm là một địa chi lớp D
28 bit
Hình 1.1 Biểu diễn địa chỉ multicast
IP multicast sử dụng địa chỉ lớp D từ 224.0.0.0 đến 239.255.255.255 để cho các thiết bị mạng có thể dễ dàng xác định được 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 chi multicast luồn luôn bằng 1110
Do không có cơ chế tương đương với giao thức phân giải địa chỉ (ARP) 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 Hình dưới cho thấy cơ chế ánh xạ địa chỉ
Hình 1.2 Cơ chế ánh xạ địa chỉ multicast sang địa chỉ Ethernet MAC
Chỉ có 23 bit cuối của địa chỉ là được chép từ địa chỉ IP sang địa chỉ MAC, có 5 bit của địa chỉ IP là không được chuyển sang địa chỉ multicast Khả năng này làm cho
Trang 12nảy sinh một vấn đề là có thể có 32 địa chỉ IP khác nhau có thể ánh xạ vào cùng một địa chỉ MAC Do vấn đề này, một host multicast có một vấn đề nhỏ khi nó nhận một Ethernet frame của một địa chỉ multicast Một MAC có thể tương ứng với 32 địa chỉ multicast khác nhau Vì vậy, khi một máy trạm phải nhận và kiểm tra tất cả các frame có MAC
mà nó quan tâm Sau đó máy trạm 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
Hình 1.3 Ví dụ minh họa cơ chế ánh xạ địa chỉ IP sang địa chỉ MAC
Một số loại địa chỉ dành riêng cho 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 Bộ định tuyến sẽ không chuyển các gói tin có địa chỉ này Các địa chỉ bao gồm:
Địa chỉ tất cả các máy trạm: 224.0.0.1
Địa chỉ tất cả các bộ định tuyến: 224.0.0.2
Địa chỉ tất cả các OSPF bộ định tuyến : 224.0.0.5…
Đây là địa chỉ các nhóm cố định vì các địa chỉ này được định nghĩa trước
Địa chỉ dành cho quản trị (239.0.0.0-239.255.255.255) được dùng trong các vùng multicast riêng, giống như dãy địa chỉ dành riêng trong RFC 1918 Địa chỉ này không được route giữa các domain nên nó có thể được dùng lại nhiều lần
Địa chỉ toàn cục (224.0.1.0-238.255.255.255) được dùng bởi bất cứ đối tượng nào Các địa chỉ này có thể được route trên Internet, vì vậy địa chỉ này phải duy nhất
Trang 131.2 Một số giao thức trong Multicast
Multicast và quá trình định tuyến
Gửi thông tin chỉ cần một lần duy nhất tới nhiều người có thể tiết kiệm rất nhiều băng thông Các thông điệp chỉ được nhân bản khi đi qua các bộ định tuyến, và chỉ xảy
ra khi bộ định tuyến đó là bộ định tuyến chuyển tiếp thay bộ định tuyến có chứa nhóm cần gửi Các bộ định tuyến có khả năng multicast chỉ chuyển tiếp các gói tin multicast khi mà có các máy thuộc nhóm multicast nằm trong mạng của nó Các máy sử dụng giao thức IGMP để thông báo cho bộ định tuyến biết các nhóm multicast nào mà nó tham gia Nếu các thành viên của nhóm trong cùng một phân đoạn mạng đều rời khỏi nhóm
đó thì bộ định tuyến sẽ không chuyển tiếp các gói tin đến phân đoạn mạng này nữa
Bộ định tuyến chỉ nhân bản gói tin IP multicast khi có quá trình rẽ nhánh trong đường đi, còn lại các trường hợp khác bộ định tuyến chỉ gửi một gói tin duy nhất cho mỗi mạng Các giao thức định tuyến cho multicast gồm có: PIM, MOSPF, DVMRP, …
IGMP (Internet Group Management Protocol)
Giao thức IGMP phát triển từ giao thức Host Membership Protocol IGMP phát triển từ IGMPvl (RFC 1112) đến IGMPv2 (RFC 2236) và phiên bản cuối cùng IGMPv3 (RFC 3376) Giao thức quản lý nhóm IGMP là cơ chế truyền thông giữa trạm con và bộ định tuyến gắn trực tiếp với mạng đó Các thông điệp IGMP được gửi bên trong gói tin
IP với trường Protocol Number bằng 2, trong đó trường Time To Live (TTL) có giá trị bằng 1 Các gói IGMP chỉ được truyền trong 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 bộ định tuyến multicast rằng có một máy muốn nhận
multicast traffic của một nhóm cụ thể
Thông báo cho bộ định tuyến rằng một có một máy muốn rời một nhóm
multicast (nói cách khác, có một máy không còn quan tâm đến việc nhận multicast traffic nữa) Các bộ định tuyến thường dùng IGMP để duy trì thông tin cho từng cổng của bộ định tuyến là những nhóm multicast nào bộ định tuyến cần phải chuyển và những máy trạm nào muốn nhận
1.2.2.1 IGMPv1
a Khuôn dạng bản tin
Với IGMP phiên bản 1, khuôn dạng bản tin được thể hiện như hình 1.4
Trang 14Hình 1.4 Khuôn 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
Bảng 1.1: Giá trị của các trường trong IGMPv1
Version 4 bit Chỉ định phiên bản của giao thức và luôn có giá trị là 1
Xác định 2 kiểu thông điệp được định nghĩa bởi IGMPv1
- 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
- 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
Checksum 16 bit Dùng để kiểm tra lỗi trong quá trình truyền dữ liệu
Report
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
Trang 15b 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
Trang 16Ngoà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 quá 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
Trang 17Type 8 bit
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 = 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 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
Trang 18 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
Quá 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 quá 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
Trang 19cá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 quá 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ả quá 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
Trang 203 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ố
Trang 21trườ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
Khuôn 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 Khuôn 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
Trang 22Bảng 1.3: Các trường trong thông điệp IGMPv3
Type 8 bit
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 = 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
(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
Trang 23Chỉ 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à bộ định tuyến
đợ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 tmy vấn
Source
Addresses 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 ngoà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))
Trang 24 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
Trang 25giềng của nó (theo hướng về gốc của cây Nhánh của cây sau đó sẽ bị loại bỏ (prune) sao cho các traffic không cần thiết sẽ không được phát tán về hướng
đó
Hình 1.11 Quá trình định tuyến lưu lượng multicast của PIM-DM
PIM-DM sẽ nhận biết các thiết bị láng giềng bằng cách trao đổi các gói hello Thông tin láng giềng này được dùng trước để xây dựng cây đến tất cả các láng giềng Sau đó, các nhánh của cây sẽ lần lượt được loại bỏ Nếu một dòng multicast bắt đầu, cây
sẽ được xây dựng, cây sẽ chỉ tồn tại khi các thành viên tích cực còn tồn tại Nếu một máy trạm mới đăng ký tham gia nhóm, nhánh của phân đoạn mạng đó sẽ được đính thêm vào cây
1.2.3.2 PIM Sparse Mode
PIM Sparse Mode (PIM-SM) dùng một giải pháp khác Cây multicast không mở rộng đến bộ định tuyến cho đến khi nào một máy trạm đã tham gia vào một nhóm Cây multicast được xây dựng bằng các thành viên ở các node lá và mở rộng ngược về root Cây được xây dựng từ dưới lên SM cũng hoạt động dựa trên ý tưởng cấu trúc shared-tree, trong đó gốc của cây không nhất thiết là nguồn của multicast Thay vào đó, root là
bộ định tuyến PIM-SM thường được đặt ở trung tâm của mạng Bộ định tuyến làm gốc này gọi là Rendezvous Point (RP) Cây từ điểm RP đến các thành viên thật ra là một cây con của cây từ nguồn đến các thành viên Nếu một bộ định tuyến ở bất kỳ đâu trong mạng có thể đăng ký với RP, cấu trúc cây này sẽ hoàn tất Không giống như trong chế
độ dense, bộ định tuyến RP không có tự động đẩy tiếp lưu lượng về bất kỳ bộ định tuyến nào Lưu lượng này phải được yêu cầu bởi một bộ định tuyến Chế độ spare-mode còn
Trang 26được gọi là Shared tree Các dòng multicast được mô tả như (*,G) bởi vì cây luôn cho phép bất cứ nguồn nào gửi đến một nhóm
Hình 1.12 Quá trình định tuyến lưu lượng multicast của PIM-SM
PIM-SM hoạt động với một chiến lược khác hẳn với PIM-DM mặc dù cơ chế của giao thức không hoàn toàn đối lập PIM-SM giả sử rằng không có máy nào muốn nhận lưu lượng multicast cho đến khi nào các máy chủ động hỏi Kết quả là, cho đến khi nào trong một subnet có một máy yêu cầu nhận multicast thì multicast mới được phân phối vào subnet đó Với PIM-SM, các bộ định tuyến downstream phải yêu cầu nhận multicast dùng thông điệp PIM Join Khi các bộ định tuyến nhận được các thông điệp này, các bộ định tuyến bên dưới phải định kỳ gửi thông điệp Join lên bộ định tuyến upstream Nếu khác đi, bộ định tuyến upstream sẽ không đưa lưu lượng xuống, đặt kết nối vào trong trạng thái prune Tiến trình này thì ngược lại với tiến trình được dùng trong PIM-DM, trong đó mặc định là phát tán lưu lượng multicast với các bộ định tuyến downstream cần phải liên tục gửi thông điệp Prune hay thông điệp làm mới trạng thái State refresh
để giữ cho một kết nối là trong trạng thái prune PIM-SM phù hợp khi chỉ có những tỉ
lệ nhỏ các phân đoạn mạng nhận lưu lượng multicast Các bộ định tuyến có thể nhận biết được RP bằng 3 cách:
Địa chỉ RP có thể được cấu hình tĩnh trên từng bộ định tuyến: kiểm soát được mạng nhưng chi phí quản trị cao
Bầu chọn RP có thể dùng giao thức bootstrap
Trang 27 Dùng cơ chế Auto-RP của Cisco: phù hợp hệ thống mạng nhỏ
Quá trình này được thực hiện bằng cách chỉ ra một bộ định tuyến nằm ở trung tâm và các bộ định tuyến kết nối vào nó gọi là mapping agent Các mapping agent sẽ học thông tin của tất cả các ứng cử viên cho RP Các bộ định tuyến muốn làm ứng cử viên phảI gửi ra một thông điệp Cisco-RP-Announce về địa chỉ multicast 224.0.1.39
Bộ định tuyến mapping agent sẽ gửi các thông tin ánh xạ từ RP-nhóm đến tất cả các bộ định tuyến PIM khác dùng thông điệp Cisco-RP-Discovery về địa chỉ 224.0.1.40 Giá trị Time-to-live được thiết lập trong những thông điệp này hạn chế tầm vực của thông địêp này Thông số này sẽ chỉ ra là thông tin sẽ còn hợp lệ trong bao nhiêu hop nữa Người quản trị phải định nghĩa tường minh các ứng cử viên cho RP Khi một bộ định tuyến được xem như là RP, nó sẽ bắt đầu gửi các thông điệp đến bộ định tuyến mapping agent
1.2.3.3 PIM Sparse-Dense Mode
Ngoài ra PIM có khả năng hỗ trợ cả hai chế độ Dense và Sparse Mode bởi vì cả hai tồn tại trên những nhóm multicast khác nhau trên một mạng.,cho phép chế độ lai sparse-dense mode cho phép một bộ định tuyến PIM dùng chế độ dense hay chế độ sparse tùy thuộc vào từng nhóm
Nếu một nhóm có RP được định nghĩa, Sparse-mode sẽ được dùng
Nếu không có, dense-mode sẽ được dùng
1.2.3.4 PIM Source Specific Multicast
Trong dịch vụ ISM (Internet Standard Multicast), ứng dụng phải có địa chỉ nhóm multicast IP duy nhất vì phân bố lưu lượng chỉ dựa trên địa chỉ nhóm multicast IP được
sử dụng Nếu hai ứng dụng với các nguồn khác nhau và người nhận sử dụng địa chỉ IP nhóm multicast giống nhau thì người nhận của cả hai ứng dụng sẽ nhận được lưu lượng truy cập từ người gửi của cả hai ứng dụng Mặc dù người nhận, nếu được lập trình thích hợp, có thể lọc ra lưu lượng không mong muốn, tình huống này sẽ gây ra mức độ không mong muốn nói chung không được chấp nhận
Phân bổ địa chỉ nhóm multicast IP duy nhất cho một ứng dụng vẫn là một vấn
đề Hầu hết các ứng dụng thời gian ngắn sử dụng các cơ chế như Giao thức mô tả phiên họp (SDP) và Giao thức thông báo phiên (SAP) để lấy địa chỉ ngẫu nhiên, một giải pháp không làm việc tốt với số lượng ứng dụng đang tăng lên trên Internet Giải pháp tốt nhất cho các ứng dụng lâu dài được mô tả trong RFC 2770, nhưng giải pháp này bị hạn chế bởi mỗi hệ thống tự trị chỉ giới hạn ở 255 địa chỉ IP multicast có thể sử dụng được
Trang 28Trong SSM, lưu lượng truy cập từ mỗi nguồn được chuyển tiếp giữa các thiết bị trong mạng độc lập với lưu lượng truy cập từ các nguồn khác Do đó các nguồn khác nhau có thể sử dụng lại các địa chỉ nhóm multicast trong phạm vi SSM
SSM có thể cùng tồn tại với dịch vụ ISM bằng cách áp dụng mô hình phân phối SSM tới một tập con được định cấu hình của dải địa chỉ nhóm multicast IP IANA đã quy định phạm vi địa chỉ từ 232.0.0.0 đến 232.255.255.255 cho các ứng dụng và giao thức SSM Khi một phạm vi SSM được xác định, ứng dụng nhận multicast IP hiện có
sẽ không nhận được bất kỳ lưu lượng truy cập nào khi cố gắng sử dụng các địa chỉ trong phạm vi SSM trừ khi ứng dụng được sửa đổi để sử dụng đăng ký kênh rõ ràng (S, G) hoặc được kích hoạt SSM thông qua Danh mục URL Rendezvous (URD)
Mạng đã được thiết lập trong đó dịch vụ IP multicast dựa trên PIM-SM có thể hỗ trợ các dịch vụ SSM SSM cũng có thể được triển khai độc lập trong mạng mà không có đầy đủ các giao thức được yêu cầu cho PIM-SM Nghĩa là SSM không yêu cầu phải có
RP, do đó không cần phải có một cơ chế RP như Auto-RP, MSDP, hoặc bootstrap router (BSR)
IP Multicast hỗ trợ hàng ngàn người có thể nhận thông tin đồng thời mà không ảnh hưởng đến băng thông chung Thêm vào đó, giao thức định tuyến IP multicast cung cấp một phương thức truyền hiệu quả cho dữ liệu từ một nguồn đi qua các mạng khác nhau và không đồng nhất như là Internet Nếu các thiết bị mạng hỗ trợ Multicast, chỉ cần gửi một gói tin duy nhất vào mạng cho nhiều người nhận
IP multicast giúp cho mạng tiết kiệm được băng thông IP Multicast là một sự thay thế tốt cho quá trình truyền unicast khi mà các công ty cần chuyển thông tin
Trang 29đến nhiều khách hàng trong cùng một thời điểm Sử dụng IP Multicast có thể giảm tải cho mạng
Phân phối thông tin: IP Multicast làm cho việc phân phối thông tin trong các phòng ban trở nên dễ dàng
Hội thảo truyền hình: Thông thường người ta hay sử dụng các đường ISDN đắt tiền phục vụ cho việc hội thảo truyền hình hoặc sử dụng dịch vụ do các công ty viễn thông cung cấp Hội thảo tương tác qua Internet, Intranet hoặc extranet sử dụng multicast thì có giá trị kinh tế hơn nhiều, và cho phép số người tham gia cùng một lúc không giới hạn
Phát hiện dịch vụ: Các giao thức phát hiện dịch vụ trên mạng sử dụng multicast thay vì broadcast thì có hiệu quả cao hơn, điều đó làm cho dịch vụ không còn bị giới hạn trong phạm vi của một subnet mà có thể mở rộng trên toàn mạng TCP/IP
mà không cần phải cung cấp các thông tin về cấu hình
Trang 30CHƯƠNG 2: CÔNG NGHỆ MPLS VPN
2.1 Tổng quan công nghệ MPLS
Các động lực ra đời của chuyển mạch nhãn đa giao thức MPLS
Trong những năm gần đây, mạng internet đã phát triển rất nhanh và trở nên rất phổ biến Internet đã trở thành một phương tiện thông tin rất hiệu quả và tiện lợi phục
vụ cho giáo dục, thương mại, giải trí, thông tin giũa các cộng đồng, các tổ chức… Hiện nay ngày càng phát triển các ứng dụng mới cả trong thương mại và thị trường người tiêu dùng Các ứng dụng mới này được vận hành đòi hỏi băng thông rộng và các nhu cầu về dải thông được đảm bảo trong mạng đường trục Cùng với các dịch vụ truyền thống được cung cấp qua internet thì các dịch vụ thoại và đa phương tiện đang được sử dụng
và phát triển Và sự lựa chọn cho việc cung cấp là tích hợp các dịch vụ đang được mong đợi Tuy nhiên, tốc độ và giải thông của các nhu cầu về các dịch vụ và ứng dụng này vượt quá hạ tầng internet hiện nay
Với giao thức định tuyến internet TCP/IP có khả năng định tuyến và truyền gói hết sức mềm dẻo linh hoạt và rộng khắp toàn cầu Nhưng IP không đảm bảo chất lượng dịch vụ, tốc độ truyền tin theo yêu cầu, trong khi đó công nghệ ATM có tốc độ truyền tin cao, đảm bảo thời gian thực và chất lượng dịch vụ theo yêu cầu định trước Hơn nữa các dịch vụ thông tin thế hệ sau được chia thành hai xu hướng phát triển đó là: Hoạt động kết nối định hướng và hoạt động không kết nối Hai xu hướng phát triển này dần tiệm cận và hội tụ với nhau tiến tới ra đời công nghệ IP/ATM Sự kết hợp IP với ATM có thể là giả pháp kỳ vọng cho mạng viễn thông trong tương lai
Sự ra đời của chuyển mạch nhãn đa giao thức (MPLS) là tất yếu và là giải pháp đáp ứng được nhu cầu đó, khi nhu cầu và tốc độ phát triển rất nhanh của mạng internet yêu cầu phải có giao thức mới đảm bảo chất lượng dịch vụ theo yêu cầu đồng thời phải đơn giản và tốc độ xử lý phải rất cao
Chuyển mạch nhãn đa giao thức là một giải pháp linh hoạt cho việc giải quyết các vấn đề mà các mạng ngày nay đang phải đối mặt, đó là tốc độ, khả năng mở rộng cấp độ mạng, quản lý chất lượng dịch vụ (QoS) và kỹ thuật lưu lượng MPLS xuất hiện
để đáp ứng các yêu cầu dịch vụ và quản lý băng thông cho giao thức internet thế hệ sau dựa trên mạng đường trục
Tóm lại, chuyển mạch nhãn đa giao thức sẽ đóng vai trò quan trọng trong việc định tuyến (dựa trên các thước đo QoS và chất lượng dịch vụ) chuyển mạch, chuyển tiếp
Trang 31các gói tin qua mạng thế hệ sau cũng như giải quyết các vấn đề liên quan tới khả năng
mở rộng cấp độ và hoạt động với các mạng Frame Relay và chế độ truyền tải không đồng bộ ATM hiện nay để đáp ứng các nhu cầu dịch vụ của người sử dụng mạng
Lịch sử phát triển MPLS
Điểm thành công của Internet ở chỗ các công nghệ của Internet được triển khai
và phát triển theo nhu cầu của thị trường Internet không đưa ra các tiêu chuẩn theo kiểu Recommendation như của ITU-T mà đưa ra các RFC (Request For Comments) với mục đích công bố các giải pháp công nghệ đã đạt được và thu thập những đóng
Khi mạng Internet phát triển và mở rộng, lưu lượng Internet bùng nổ Các ISP xử
lý bằng cách tăng dung lượng các kết nối và nâng cấp bộ định tuyến nhưng vẫn không tránh khỏi nghẽn mạch Lý do là các giao thức định tuyến thường hướng lưu lượng vào cùng một số các kết nối nhất định dẫn đến kết nối này bị quá tải trong khi một số tài nguyên khác không được sử dụng, mặc dù đã xuất hiện các phương pháp để nâng cao tốc độ như sử dụng bảng định tuyến nhanh cho các gói tin quan trọng, tuy nhiên các gói đến bộ định tuyến vẫn lớn hơn so với khả năng xử lý của bộ định tuyến vì vậy dẫn đến tình trạng mất gói, mất kết nối Đây là tình trạng phân bố tải không đồng đều và sử dụng lãng phí tài nguyên mạng Internet Ngoài ra, với mạng Internet hiện nay, số lượng người sử dụng ngày càng tăng, thiết bị thêm vào mạng ngày càng nhiều đồng nghĩa với việc các bộ định tuyến lõi phải hoạt động nhiều hơn và việc mở rộng mạng là khó khăn
Vào thập niên 90, các ISP phát triển mạng của họ theo mô hình chồng lớp (overlay) bằng cách đưa ra giao thức IP over ATM, cụ thể như sau:
ATM là công nghệ connection-oriented, thiết lập các kênh ảo (Virtual
Circuit), tuyến ảo (Virtual Path) tạo thành một mạng logic nằm trên mạng vật
lý giúp định tuyến, phân bố tải đồng đều trên toàn mạng
Tuy nhiên, IP và ATM là hai công nghệ hoàn toàn khác nhau, được thiết kế cho những môi trường mạng khác nhau, khác nhau về giao thức, cách đánh địa chỉ, định tuyến, báo hiệu, phân bố tài nguyên…
Khi các ISP càng mở rộng mạng theo hướng IP over ATM, họ càng nhận rõ nhược điểm của mô hình này, đó là sự phức tạp của mạng lưới do phải duy trì hoạt đông của hai hệ thống thiết bị
Bên cạnh đó, sự bùng nổ của mạng Internet dẫn tới xu hướng hội tụ các mạng viễn thông khác như mạng thoại, truyền hình dựa trên Internet, giao thức IP trở thành
Trang 32Bộ định tuyến chuyên dụng, dung lượng chuyển tải lớn, hỗ trợ các giải pháp tích hợp, chuyển mạch đa lớp cho mạng trục Internet và vì thế, nhu cầu cấp thiết trong bối cảnh này là phải ra đời một công nghệ lai có khả năng kết hợp những đặc điểm tốt của chuyển mạch kênh ATM và chuyển mạch gói IP
Công nghệ MPLS ra đời trong bối cảnh này đáp ứng được nhu cầu của thị trường đúng theo tiêu chí phát triển của Internet đã mang lại những lợi ích thiết thực, đánh dấu một bước phát triển mới của mạng Internet trước xu thế tích hợp công nghệ thông tin và viễn thông (ICT - Information Communication Technology) trong thời kỳ mới
Khái niệm MPLS
MPLS là công nghệ kết hợp những ưu điểm của định tuyến lớp ba trên IP và chuyển mạch lớp hai trên ATM, cho phép truyền tải rất nhanh các gói trong mạng lõi và định tuyến tốt trên mạng biên dựa trên nhãn.MPLS chuyển tiếp các gói trên mạng bằng cách gán nhãn vào mỗi gói IP, tế bào ATM, hoặc frame lớp hai Phương pháp chuyển mạch nhãn giúp các bộ chuyển mạch quyết định chuyển tiếp tốt hơn việc định tuyến phức tạp theo địa chỉ IP đích MPLS cho phép các ISP cung cấp nhiều dịch vụ khác nhau
mà không cần phải bỏ đi cơ sở hạ tầng sẵn có Cấu trúc MPLS có tính mềm dẻo khi cho phép phối hợp với bất kỳ công nghệ lớp hai nào
MPLS có khả năng mở rộng cao, triển khai hiệu quả các dịch vụ IP Bằng việc tích hợp MPLS vào kiến trúc mạng, các ISP có thể giảm chi phí, tăng lợi nhuận và đạt được nhiều hiệu quả sử dụng mạng khác nhau
Ý tưởng khi đưa ra MPLS là: “Định tuyến tại biên, chuyển mạch ở lõi” Trong cấu trúc của MPLS chia thành 2 mặt phẳng riêng biệt:
Mặt phằng điều khiển (control plane): Tại đây các giao thức định tuyến lớp 3 thiết lập các đường đi được sử dụng cho việc chuyển tiếp gói tin Mặt phẳng điều khiển đáp ứng cho việc tạo ra và duy trì thông tin chuyển tiếp nhãn giữa các bộ định tuyến chạy MPLS (còn gọi là binding ) Một số giao thức được sử dụng : OSPF, BGP, LDP, RSVP
Mặt phằng dữ liệu (data plane): Sử dụng cơ sở dữ liệu chuyển tiếp nhãn được duy trì bởi các bộ định tuyến chạy MPLS để thức hiện việc chuyển tiếp các gói tin dựa trên thông tin nhãn
Trang 33Hình 2.1 Cấu trúc hoạt động MPLS
Trong các mạng MPLS, các gói được gán nhãn tại biên của mạng và chúng được định tuyến xuyên qua mạng dựa trên các nhãn đơn giản Phương pháp này cho phép định tuyến rõ ràng và đối xử phân biệt các gói trong khi vẫn giữ được các bộ định tuyến
ở lõi đơn giản
Mặc dù thực tế rằng MPLS ban đầu được phát triển với mục đích để giải quyết việc chuyển tiếp gói tin, nhưng lợi điểm chính của MPLS trong môi trường mạng hiện tại lại từ khả năng điều khiển lưu lượng của nó
Một cách ngắn gọn, MPLS cho phép cung cấp các dịch vụ mềm dẻo, tận dụng mạng tốt hơn, và đơn giản hoá kiến trúc mạng.Thêm vào đó, GMPLS (Generalized MPLS) đang được nghiên cứu và phát triển sẽ cho phép MPLS chạy trực tiếp trên DWDM mà không cần lớp trung gian nào
Lợi ích của MPLS:
Làm việc với hầu hết các công nghệ liên kết dữ liệu
Tương thích với hầu hết các giao thức định tuyến và các công nghệ khác liên quan đến Internet
Hoạt động độc lập với các giao thức định tuyến (routing protocol)
Tìm đường đi linh hoạt dựa vào nhãn(label) cho trước
Hỗ trợ việc cấu hình quản trị và bảo trì hệ thống (OAM)
Có thể hoạt động trong một mạng phân cấp
Có tính tương thích cao
Trang 34 Không có MPLS API, cũng không có thành phần giao thức phía máy trạm
MPLS chỉ nằm trên các bộ định tuyến
MPLS là một giao thức độc lập nên có thể hoạt động với các giao thức mạng khác IP như IPX, ATM, Frame-Relay, PPP hoặc trực tiếp với tầng liên kết dữ liệu
Định tuyến trong MPLS được dùng để tạo các luồng băng thông cố định tương tự như kênh ảo của ATM hay Frame Relay
MPLS đơn giản hoá quá trình định tuyến, đồng thời tăng cường tính linh động với các tầng trung gian
Nhãn là giá trị có chiều dài cố định dùng để nhận diện một FEC nào đó Sự kết hợp giữa FEC và nhãn được gọi là ánh xạ nhãn – FEC Thường thì một gói tin được ấn định một FEC (hoàn toàn hoặc một phần) dựa trên địa chỉ đích lớp mạng của nó Tuy nhiên nhãn không phải là mã hoá của địa chỉ đó
MPLS được thiết kế để sử dụng ở bất kì môi trường và hình thức đóng gói lớp 2 nào Hầu hết các hình thức đóng gói lớp 2 là dựa trên frame, và MPLS chỉ đơn giản thêm vào nhãn 32 bit giữa mào đầu lớp 2 và lớp 3, gọi là shim header Phương thức đóng gói này gọi là Frame-mode MPLS
Chế độ khung (frame mode):
Hình 2.2 Nhãn MPLS trong chế độ khung
Trong phần mào đầu MPLS 32 bits bao gồm các trường mang thông tin:
Trang 35 Label: là nhãn thực sự, có chiều dài là 20 bit Do đó ta có thể tạo ra được
220–1 hay 1.048.575 giá trị nhãn khác nhau
Các loại nhãn đặc biệt:
Untagged: Gói MPLS đến được chuyển thành một gói IP và chuyển tiếp
đến đích Nó được dùng trong thực thi MPLS VPN
Implicit-NullhayPOP: Nhãn này được gán khi nhãn trên cùng (Top label)
của gói MPLS đến bị bóc ra và gói MPLS hay IP được chuyển tiếp tới trạm
kế xuôi dòng Giá trị của nhãn này là 3 (Trường nhãn 20 bit) Nhãn này dùng trong MPLS cho những mạng kế cuối
Explicit-Null: Được gán để giữ giá trị Exp cho nhãn trên cùng (Top
label) của gói đến Nhãn trên được hoán đổi với giá trị 0 và chuyển tiếp như một gói MPLS tới trạm kế xuôi dòng Nhãn này sử dụng khi thực hiện QoS trong MPLS
Agggregate:Với nhãn này, gói MPLS đến bị bóc tất cả nhãn trong chồng
nhãn đểtrởthành gói IP và thực hiện tra cứu FIB để xác định giao tiếp ngõ
ra cho nó
Exp: trường Experimental có 3 bit, được dùng để định nghĩa lớp dịch vụ
S: bit S là bit bottom-of-stack (dưới cùng của chồng nhãn) Một gói tin có thể
có nhiều nhãn, nếu nhãn thêm vào chồng nhãn là cuối cùng thì bit này được thiết lập lên 1
TTL: trường Time to live có 8 bit, trường này mang ý nghĩa giống như bên
IP Tức là nó sẽ giảm đi 1 khi qua mỗi hop để ngăn chặn routing loop
Chế độ tế bào (cell mode):
Hình 2.3 Nhãn MPLS trong chế độ tế bào
ATM là một trường hợp đặc biệt sử dụng cell có chiều dài cố định Do đó nhãn không thể được thêm vào trong mỗi cell MPLS sử dụng các giá trị
Trang 36VPI/VCI trong mào đầu ATM để làm nhãn Phương thức đóng gói này được gọi là Cell-mode MPLS Trong khi đó FrameRelay sử dụng DLCI làm nhãn
Trong chế độ tế bào, nhãn được mã hóa vào các trường VPI/VCI của tế bào Sau khi việc trao đổi nhãn được thực hiện ở mặt phẳng điểu khiển, ở mặt phẳng chuyển tiếp, bộ định tuyến ngõ vào chia nhỏ gói tin thành các tế bào ATM, áp giá trị VPI/VCI thích hợp vào, rồi truyền các tế bào đi Các ATM – LSR trung gian vẫn chuyển tiếp các tế bào dựa trên giá trị VPI/VCI đến và thông tin cổng đến như ATM switch thông thường Cuối cùng, bộ định tuyến ngõ ra gắn các tế bào lại thành một gói tin
Tế bào ATM gồm 5 bytes header và 48 bytes payload Để chuyển tải gói tin có kích thước lớn hơn 48 bytes từ lớp trên đưa xuống (ví dụ gói tin IP), ATM phải chia gói tin thành nhiều phần nhỏ hơn, quá trình này gọi là phân đoạn Quá trình phân đoạn do lớp AAL (ATM Adaption Layer) đảm nhiệm Cụ thể, AAL5 PDU (ATM Adaptation Layer Type 5 Protocol Data Unit) sẽ được chia thành nhiều đoạn 48 bytes, mỗi đoạn sẽ được thêm vào
5 bytes header để tạo thành một tế bào ATM
Hình 2.4 Đơn vị dữ liệu giao thức lớp thích ứng ATM Layer 5
Khi đóng gói gói tin có nhãn MPLS trên ATM switch, toàn bộ ngăn xếp nhãn được đặt trong AAL5 PDU Giá trị thực sự của nhãn trên đỉnh ngăn xếp nhãn được đặt trong trường VPI/VCI Khi các tế bào ATM đi đến cuối LSP, nó sẽ được kết hợp lại thành gói tin IP bình thường Nếu có nhiều nhãn trong ngăn xếp nhãn, AAL5 PDU sẽ được phân đoạn lần nữa và nhãn hiện hành trên đỉnh ngăn xếp sẽ được đặt vào trường VPI/VCI
Trang 372.2.1.2 Ngăn xếp nhãn (Label Stack)
Nhãn của gói tin đi ra gói là nhãn ngõ ra, tương tự cho nhãn của gói tin đi vào gói là nhãn ngõ vào Một gói tin có thể có cả nhãn ngõ ra và ngõ vào, có thể có nhãn ngõ vào mà không có nhãn ngõ ra hoặc là ngược lại Thường thường, một gói tin có thể
có nhiều nhãn được gọi là chồng nhãn (lable stack) Các nhãn trong chồng nhãn được tổ chức theo kiểu chồng nhãn LIFO (last-in, first-out) Một gói tin không có gắn nhãn được
xem là có chiều sâu chồng nhãn bằng 0 Chiều sâu d của chồng nhãn tương ứng với trình tự của nhãn trong chồng nhãn <1,2,3….,d-1,d> với nhãn 1 ở đáy chồng nhãn và
ở đỉnh ngăn xếp (ứng với S=1)
Label Stack được sử dụng cho một số ứng dụng của MPLS
MPLS VPNs (2 nhãn – nhãn ở đỉnh ngăn xếp được dùng để chuyển tiếp gói tin trong core, nhãn thứ 2 để phân biệt các VPN)
MPLS TE (2 nhãn)
MPLS VPNs comined with MPLS TE (3 nhãn hoặc nhiều hơn)
2.2.1.3 Lớp chuyển tiếp tương đương FEC (Forwarding Equivalence Class)
FEC mô tả sư kết hợp các gói tin có cùng địa chỉ đích của người nhận cuối thành các lớp để có những chính sách xử lý tương ứng Giá trị FEC trong gói tin có thể thiết lập mức độ ưu tiên cho việc điều khiển gói nhằm hỗ trợ hiệu quả hoạt động của QoS (Quality of Service) Đối với các dịch vụ khác nhau thì các FEC khác nhau với các thông
số ánh xạ khác nhau Việc ánh xạ một gói vào một FEC có thể đạt được nhờ vào một số
Trang 38Hình 2.6 Lớp chuyển tiếp tương đương FEC
2.2.1.4 Miền MPLS (MPLS Domain)
Miền MPLS (MPLS Domain) là một tập hợp các nút mạng thực hiện hoạt động định tuyến và chuyển tiếp MPLS Một miền MPLS thường được quản lý và điều khiển bởi một nhà quản trị
2.2.1.5 Cơ sở thông tin nhãn (Label Information Base – LIB )
Là bảng kết nối trong LSR có chứa các giá trị nhãn/FEC được gán vào cổng ra cũng như thông tin về đóng gói phương tiện truyền, gỗm tất cả các binding láng giềng gửi tới thông qua giao thức LDP
2.2.1.6 Cơ sở thông tin chuyển tiếp, cơ sở thông tin chuyển tiếp nhãn
FIB (Forwarding Information Based) : Cơ sở thông tin chuyển tiếp
Sẽ ánh xạ một gói tin IP không nhãn thành gói tin MPLS có nhãn ở bộ định tuyến biên và ngược lại
Bảng này được hình thành từ bảng routing và các giao thức phân phối nhãn LDP và bảng LFIB
LFIB (Label Forwarding Information Based): Cơ sở thông tin chuyển tiếp nhãn:
Trang 39 Bảng chứa đựng thông tin các nhãn đến các mạng đích, một gói tin có nhãn khi đi vào một bộ định tuyến nó sẽ sử dụng bảng tra LFIB để tìm ra hop kế tiếp, ngõ ra của gói tin này có thể là gói tin có nhãn cũng có thể là gói tin không nhãn
Hai bảng tra FIB và LFIB có giá trị như bảng routing table trong mạng IP, nhưng trong mạng IP thì bảng routing table có số entry rất lớn khoảng vài ngàn, còn với FIB và LFIB số nhãn mà nó nắm giữa rất ít khoảng vài chục
là tối đa
2.2.1.7 Bộ định tuyến chuyển mạch nhãn (Label Switching Router)
Bộ định tuyến chuyển mạch nhãn LSR là thiết bị chuyển mạch hay thiết bị định tuyến sử dụng trong mạng MPLS để chuyển các gói tin bằng thủ tục phân phối nhãn Có một số loại LSR như LSR, LSR-ATM…
Hình 2.7 LSR trong miền MPLS
Đường chuyển mạch nhãn – LSP (Label Switching Path) :
Là tuyến tạo ra từ đầu vào đến đầu ra của mạng MPLS dùng để chuyển tiếp gói của một FEC nào đó sử dụng cơ chế hoán đổi nhãn Các tuyến chuyển mạch nhãn chứa một chuỗi các nhãn tại tất cả các nút dọc theo tuyến từ nguồn tới đích LSP được thiết lập trước khi truyền dữ liệu hoặc trong khi xác định luồng dữ liệu nào đó Các nhãn được phân phối bằng các giao thức như LDP, RSVP Mỗi gói dữ liệu được đóng gói lại
và mang các nhãn trong suốt thời gian di chuyển từ nguồn tới đích Chuyển mạch dữ liệu tốc độ cao hoàn toàn có thể thực hiện dựa theo phương pháp này, vì các nhãn có độ dài cố định được chèn vào phần đầu của gói tin hoặc tế bào và có thể được sử dụng bởi
Trang 40Căn cứ vào vị trí và chức năng của LSR có thể phân thành các loại chính sau đây:
LSR biên (Edge LSR): Nằm ở biên của mạng MPLS, LSR này tiếp nhận hay gửi
đi các gói thông tin từ hay đến mạng khác (IP, Frame Relay, ) LSR biên gán hay loại bỏ nhãn cho các gói thông tin đến hoặc đi khỏi mạng MPLS Các LSR này có thể là Ingress Router (bộ định tuyến lối vào) hay Egress Router (bộ định tuyến lối ra)
Hình 2.8: Kiến trúc Edge LSR
ATM-LSR: Chạy giao thức MPLS trong mặt phẳng điều khiển để thiết lập các kênh ảo ATM, thực hiện chuyển tiếp các gói tin có gắn nhãn như là các tế bào ATM
LSR: Chuyển tiếp gói tin có nhãn
Hình 2.9: Kiến trúc LSR
Bảng 2.1 sau đây mô tả các loại LSR và chức năng của chúng: