Sự phát triển nhanh chóng các dịch vụ IP và sự bùng nổ Internet đã dẫn đến một loạt thay đổi trong nhận thức kinh doanh của các nhà khai thác.
Trang 1Lời nói đầu
Sự phát triển nhanh chóng các dịch vụ IP và sự bùng nổ Internet đã dẫn đến một loạt thay đổi trong nhận thức kinh doanh của các nhà khai thác Lưu lượng lớn nhất hiện nay trên mạng trục là lưu lượng IP Giao thức IP thống trị toàn bộ các giao thức lớp mạng, hệ quả là tất cả các xu hướng phát triển công nghệ lớp dưới đều hỗ trợ cho IP Nhu cầu thị trường cấp bách cho mạng tốc độ cao với chi phí thấp là cơ sở cho một loạt các công nghệ mới ra đời, trong đó có MPLS
Trong 5 năm gần đây là khoảng thời gian mà công nghệ MPLS đã chứng minh được tính ứng dụng thực tiễn các tính năng vượt trội của nó so với các công nghệ chuyển mạch truyền thống khác như ATM
Công nghệ MPLS là kết quả phát triển của công nghệ chuyển mạch IP sử dụng cơ chế hoán đổi nhãn như của ATM để tăng tốc độ truyền gói tin mà không cần thay đổi các giao thức định tuyến của IP MPLS tách chức năng của IP thành hai phần riêng biệt: chức năng chuyển gói tin và chức năng điều khiển Bên cạnh đó, MPLS cũng hỗ trợ việc quản lý dễ dàng hơn
Do thời gian và trình độ có hạn, nên chắc chắn những vấn đề được đề cập trong
đồ án sẽ không tránh khỏi những thiếu sót Em rất mong nhận được sự lượng thứ và ý kiến đóng góp của các thầy, cô cũng như những ai quan tâm
Trong quá trình học tập tại trường đại học Bách Khoa Hà Nội và thực hiện đồ án tốt nghiệp, em xin chân thành cảm ơn các thầy cô đã trực tiếp và gián tiếp giúp đỡ em hoàn thành tốt chương trình học tập Đặc biệt, em xin chân thành cảm ơn thầy giáo
Thạc sĩ Nguyễn Khắc Kiểm đã trực tiếp hướng dẫn em hoàn thành tốt đồ án tốt
nghiệp này
Hà Nội, ngày tháng năm 2009
Sinh viên Bùi Quang Thái
Trang 2Tóm tắt đồ án
MPLS đã được lựa chọn để đơn giản hoá và tích hợp mạng trong mạng lõi Nó cho phép các nhà khai thác giảm chi phí, đơn giản hoá việc quản lý lưu lượng và hỗ trợ các dịch vụ Internet Quan trọng hơn cả, nó là một bước tiến mới trong việc đạt mục tiêu mạng đa dịch vụ với các giao thức gồm di động, thoại, dữ liệu …
Tập đoàn BCVT Việt Nam đã lựa chọn IP/MPLS làm công nghệ cho lớp chuyển tải mạng NGN đang triển khai trên phạm vi toàn quốc Một trong những ưu điểm lớn nhất của MPLS là ở khả năng thực hiện kỹ thuật lưu lượng
Đề tài tốt nghiệp được chia thành 4 chương với những nội dung chính như sau:
• Chương 1 - Chuyển mạch nhãn đa giao thức MPLS: Giới thiệu tổng quan công nghệ MPLS, các khái niệm cơ bản, kiến trúc chức năng và cơ chế hoạt động của MPLS
• Chương 2 - Định tuyến và báo hiệu MPLS: Trình bày các kỹ thuật định tuyến được hỗ trợ bởi MPLS , các chế độ báo hiệu và một số giao thức báo hiệu phân phối nhãn của MPLS
• Chương 3 – Kỹ thuật lưu lượng trong MPLS: Trình bày các khái niệm và mục tiêu
• của kỹ thuật lưu lượng, khả năng và các cơ chế thực hiện kỹ thuật lưu lượng MPLS Các vấn đề bảo vệ khôi phục đường - một trong những nhiệm vụ của
kỹ thuật lưu lượng cũng được trình bày trong chương này
• Chương 4 – Mô phỏng MPLS – TE và đánh giá
Trang 3With the theme: " Traffic enginneering in MPLS ’’the content of project including 4 chapters will in turn present the basic issues and trffic engineering of MPLS network
• Chapter 1 : The multi protocol label switching MPLS : Overview of MPLS , basic define , fuction and performance of MPLS
• Chapter 2 : Routing and signalling in MPLS :Present routing mechanism used
by MPLS , the signalling modes and somes distribution label protocol
• Chapter 3 : Traffic engineering in MPLS : Present the define , ambition of MPLS techonogy and the mechanism to operate the taffic engineering of MPLS The problem about protection and repair road – most important
mission of trffic engineering is presented in this chapter
• Chapter 4 : Simulation MPLS-TE and summary
Trang 4Mục lục
Lời nói đầu 1
Tóm tắt đồ án 2
Mục lục 4
Các hình vẽ sử dụng trong luận văn 7
DANH MỤC BẢNG BIỂU 8
Các Thuật Ngữ Viết Tắt 9
Chương 1: CHUYỂN MẠCH NHÃN ĐA GIAO THỨC MPLS 11
1.1 Tổng quan 11
1.1.1 Tính thông minh phân tán 12
1.1.2 MPLS và mô hình tham chiếu OSI 13
1.2 Các khái niệm cơ bản trong MPLS 14
1.2.1 Miền MPLS (MPLS domain) 14
1.2.2 Lớp chuyển tiếp tương đương (FEC) 16
1.2.3 Nhãn và Stack nhãn 16
1.2.4 Hoán đổi nhãn (Label Swapping) 17
1.2.5 Đường chuyển mạch nhãn LSP (Label Switched Path) 17
1.2.6 Chuyển gói qua miền MPLS 18
1.3 Mã hóa nhãn và các chế độ đóng gói nhãn MPLS 19
1.3.1 Mã hóa stack nhãn 19
1.3.2 Chế độ Frame 20
1.3.3 Chế độ Cell 21
Chương 2:ĐỊNH TUYẾN VÀ BÁO HIỆU MPLS 22
2.1 Định tuyến trong MPLS 22
2.1.1 Định tuyến ràng buộc (Constrain-based Routing) 23
2.1.2 Định tuyến tường minh (Explicit Routing) 24
2.2 Các chế độ báo hiệu MPLS 24
2.2.1 Chế độ phân phối nhãn 24
2.2.2 Chế độ duy trì nhãn 26
2.2.3 Chế độ điều khiển LSP 27
2.2.4 Các giao thức phân phối nhãn MPLS 28
2.3 Giao thức LDP (Label Distribution Protocol) 29
2.3.1 Hoạt động của LDP 29
2.3.2 Cấu trúc thông điệp LDP 30
Trang 52.3.3 Các bản tin LDP 32
2.3.4 LDP điều khiển độc lập và phân phối theo yêu cầu 34
2.4 Giao thức CR-LDP (Constrain-based routing LDP) 35
2.4.1 Mở rộng cho định tuyến ràng buộc 35
2.4.2 Thiết lập một CR-LSP (Constrain-based routing LSP) 35
2.5 Giao thức RSVP-TE (RSVP Traffic Engineering) 37
2.5.1 Các bản tin thiết lập dự trữ RSVP 37
2.5.2 Các bản Tear Down, Error và Hello của RSVP-TE 38
2.5.3 Thiết lập tuyến tường minh điều khiển tuần tự theo yêu cầu 39
2.5.4 Giảm lượng overhead làm tươi RSVP 40
2.6 Giao thức BGP 41
2.6.1 BGPv4 và mở rộng cho MPLS 41
2.6.2 Kết nối MPLS qua nhiều nhà cung cấp dịch vụ 42
2.7 Tổng kết chương 44
Chương 3:Kỹ thuật lưu lượng trong MPLS 44
3.1 Kỹ thuật lưu lượng (Traffic Engineering) 44
3.1.1 Các mục tiêu triển khai kỹ thuật lưu lượng 44
3.1.2 Các lớp dịch vụ dựa trên nhu cầu QoS và các lớp lưu lượng 45
3.1.3 Hàng đợi lưu lượng 46
3.1.4 Giải thuật thùng rò và thùng token 49
3.1.5 Giải pháp mô hình chồng phủ (Overlay Model) 51
3.2 MPLS và kỹ thuật lưu lượng 52
3.2.1 Khái niệm trung kế lưu lượng (traffic trunk) 52
3.2.2 Đồ hình nghiệm suy (Induced Graph) 53
3.2.3 Bài toán cơ bản của kỹ thuật lưu lượng trên MPLS 53
3.3 Trung kế lưu lượng và các thuộc tính 53
3.3.1 Các hoạt động cơ bản trên trung kế lưu lượng 54
3.3.2 Thuộc tính tham số lưu lượng (Traffic Parameter) 54
3.3.3 Thuộc tính lựa chọn và quản lý đường (chính sách chọn đường) 54
3.3.4 Thuộc tính ưu tiên / lấn chiếm (Priority/Preemption) 56
3.3.5 Thuộc tính đàn hồi (Resilience) 56
3.3.6 Thuộc tính khống chế (Policing) 56
3.4 Các thuộc tính tài nguyên 57
3.4.1 Bộ nhân cấp phát cực đại (maximum allocation multiplier) 57
3.4.2 Lớp tài nguyên (Resource-Class) 57
3.4.3 TE Metric 58
3.5 Tính toán đường ràng buộc 58
Trang 63.5.1 Quảng bá các thuộc tính của link 58
3.5.2 Tính toán LSP ràng buộc (CR-LSP) 59
3.5.3 Giải thuật chọn đường 60
3.5.4 Ví dụ về chọn đường cho trung kế lưu lượng 60
3.5.5 Tái tối ưu hóa (Re-optimization) 63
3.6 Bảo vệ và khôi phục đường 63
3.6.1 Phân loại các cơ chế bảo vệ khôi phục 64
3.6.2 Mô hình Makam 65
3.6.3 Mô hình Haskin (Reverse Backup) 66
3.6.4 Mô hình Hundessa 66
3.6.5 Mô hình Shortest -Dynamic 67
3.6.6 Mô hình Simple -Dynamic 67
3.6.7 Mô hình Simple -Static 68
3.7 Tổng kết chương 68
Chương 4 : Mô phỏng MPLS và đánh giá 69
4.1.Tổng quan về NS2 69
4.1.1 Giới thiệu 69
4.1.2 Download và install NS-2 và NAM 69
4.1.3 Chạy chương trình NS-2 và NAM 75
4.2.Kiến trúc của NS2 76
4.2.1 Giới thiệu 76
4.2.2 C++ và OTcl 78
4.2.3 Các đặc tính của NS-2 81
4.3.Giới thiệu các phần mềm dùng kết hợp với NS2 82
4.3.1 NAM 82
4.3.2 NSCRIPT 86
4.3.3 Topology Generator 89
4.3.4 Trace Data Analyzers 90
4.4.Mô phỏng khôi phục đường theo cơ chế Shortest – Dynamic 96
4.4.1.Mô hình 96
4.4.2.Thực hiện và kết quả 97
4.4.3.Nhận xét 98
Kết luận 99
Tài liệu tham khảo 100
Phụ lục 101
Trang 7Các hình vẽ sử dụng trong luận văn
Hình 1.1: MPLS và mô hình tham chiếu OSI 13
Hình 1.2: So sánh giữa chuyển tiếp IP và chuyển tiếp MPLS 14
Hình 1.3: Miền MPLS 15
Hình 1.4: Upstream và downstream LSR 15
Hình 1.5: Lớp chuyển tiếp tương đương trong MPLS 16
Hình 1.6 : Stack nhãn 17
Hình 1.7:Đường chuyển mạch nhãn MPLS 17
Hình 1.8 : Phân cấp LSP trong MPLS 18
Hình 1.9 : Gói IP đi qua mạng MPLS 18
Hình 1.10: Định dạng một entry trong stack nhãn MPLS 19
Hình 1.11 : Shim header 21
Hình 1.12 : Nhãn trong chế độ cell ATM 21
Hình 1.13 : Encapsulation gói có nhãn trên link ATM 22
Hình 2.1: Một ví dụ định tuyến ràng buộc 23
Hình 2.2: Phân phối nhãn không cần yêu cầu 25
Hình 2.3: Phân phối nhãn theo yêu cầu 25
Hình 2.4: Duy trì nhãn tự do 26
Hình 2.5: Duy trì nhãn bảo thủ 27
Hình 2.6: Điều khiển độc lập 27
Hình 2.7: Điều khiển tuần tự 28
Hình 2.8 : Vùng hoạt động của LDP 29
Hình 2.9: Trao đổi thông điệp LDP 30
Hình 2.10: LDP header 31
Hình 2.11: Format thông điệp LDP 31
Hình 2.12: Ví dụ LDP chế độ điều khiển độc lập theo yêu cầu 34
Hình 2.13: Thiết lập LSP với CR-LDP 36
Hình 2.14: Thiết lập LSP với RSVP-TE 39
Hình 2.15 : Nội dung bản tin BGP Update 42
Hình 2.16 : BGP phân phối nhãn qua nhiều Autonomous System 43
Hình 3.1 : Nhiều luồng cho mỗi lớp lưu lượng 47
Hình 3.2 : Hàng đợi CQ 48
Hình 3.4: Giải thuật thung rò 49
Hình 3.5: Giải thuật thùng token 50
Trang 8Hình 3.6: Mô hình chồng phủ ( Overlay mode ) 51
Hình 3.7 : Các trung kế lưu lượng 53
Hình 3.8: Một ví dụ băng thông dự trữ cho từng mức ưu tiên 57
Hình 3.9: Minh họa cho cách dùng bit Affinity và Resource-Class 58
Hình 3.10: Băng thông khả dụng ứng với từng mức ưu tiên 59
Hình 3.11: Xem xét các rằng buộc khống chế 61
Hình 3.12: Xem xét tài nguyên khả dụng 62
Hình 3.13: Chọn đường tốt nhất 62
Hình 3.14: Mô hình Makam 65
Hình 3.15: Mô hình Haskin 66
Hình 3.16: Mô hình Shortest – Dynamic 67
Hình 3.17: Mô hình Simple – Dynamic 68
Hình 4.1: Kiến trúc thư mục cài đặt của NS-2 và NAM trong môi trường Linux 75
Hình 4.2: Tổng quan về NS dưới góc độ người dùng 76
Hình 4.3: Luồng các sự kiện cho file Tcl chạy trong NS 78
Hình 4.4: TclCL hoạt động như liên kết giữa A và B 79
Hình 4.5: Mô tả các công cụ của NAM 84
Hình 4.6: Bốn thành phần cơ bản của Nscript GUI 88
Hình 4.7: Giao diện đồ họa người dùng của Xgraph 93
Hình 4.8 : Cửa sổ Graphs 95
Hình 4.9 : Cửa sổ Network Imformation 96
Hình 4.10 : Mô hình mạng mô phỏng 96
Hình 4.11 :Đồ thị kết quả mô phỏng 97
Hình 4.12 : Kết quả mô phỏng 98
DANH MỤC BẢNG BIỂU Bảng 2.1 : Các chế độ của các giao thức phân phối nhãn MPLS 28
Bảng 2.2: Các loại bản tin LDP 31
Bảng 3.1 : Các lớp dịch vụ lưu lượng 46
Trang 9Các Thuật Ngữ Viết Tắt
Từ viết tắt Từ đầy đủ Chú giải tiếng Việt
CEM Circuit Emulation Service over
MPLS
Dịch vụ mô phỏng kênh trên MPLS
CEP Circuit Emulation over Packet Mô phỏng kênh trên gói
DLCI Data Link Connection Identifier Nhận dạng kết nối lớp kênh dữ liệuEGP External Gateway Protocol Giao thức định tuyến liên miềnFEC Forwarding Equivalence Class Lớp chuyển tiếp tương đương
GRE Generic RoutingEncapsulation Giao thức đóng gói định tuyến
chungHDLC High-level Data Link Control Điều khiển liên kết dữ liệu mức cao
IGP Interior Gateway Protocol Giao thức định tuyến trong miền
IPLS IP-Only Private LAN Service Dịch vụ LAN thuê riêng trên nền IPIP-Sec Internet Protocol Security Giao thức an ninh Internet
ISP Internet Service Provider Nhà cung cấp dịch vụ Internet
L2TP Layer 2 Tunneling Protocol Giao thức đường hầm lớp 2
LAC L2TP Access Concentrator Bộ tập trung truy cập L2TP
Trang 10LAN Local Area Network Mạng cục bộ
LDP Label Distribution Protocol Giao thức phân bổ nhãn
biên
MPLS MultiProtocol Label Switching Chuyển mạch nhãn đa giao thứcMPLS-TE MPLS-Traffice Engineering Kỹ thuật lưu lượng
MTI Multicast Tunnel Interface Giao diện đường hầm đa điểm
OSPF Open Shortest Path First Giao thức đường đi ngắn nhất đầu
tiênPAC PPTP Access Concentrator Bộ tập trung truy cập PPTP
cấp
PPP Point to Point Tunneling
Protocol
Giao thức đường hầm điểm tới điểm
RSVP Resource Reservation Protocol Giao thức dành trước tài nguyên
SDH Synchronous Digital Hierachy Phân cấp số đồng bộ
Trang 11SDU Service Data Unit Đơn vị dữ liệu dịch vụ
SONET Synchronous Optical Network Mạng quang đồng bộ
TCP Transmission Control Protocol Giao thức điều khiển truyền dẫnTDP Tag Distribution Protocol Giao thức phân phối thẻ
VLLS Virtual Leased Line Service Dịchvụ đường dây thuê riêng ảo
VPDN Virtual Private Dial Network Mạng quay số riêng ảo
VPLS Virtual Private LAN Service Dịch vụ LAN riêng ảo
VPWS Virtual Private Wire Service Dịch vụ đường dây riêng ảo
VRF VPN Routing and Forwarding Bảng định tuyến và chuyển tiếp
Trang 121.1.1 Tính thông minh phân tán
Trong mạng chuyển mạch kênh, tính thông minh chủ yếu tập trung ở mạng lõi (core) Tất cả những thiết bị thông minh nhất đều đặt trong mạng lõi như các tổng đài toll, transit, MSC… Các thiết bị kém thông minh hơn thì đặt ở mạng biên (edge),
ví dụ như các tổng đài nội hạt, truy nhập…
Trong mạng gói IP, tính thông minh gần như chia đều cho các thiết bị trong mạng Tất cả các router đều phải làm hai nhiệm vụ là định tuyến và chuyển mạch Đây là ưu điểm nhưng cũng là nhược điểm của IP
Quan điểm của MPLS là tính thông minh càng đưa ra biên thì mạng càng hoạt động tốt Lý do là những thành phần ở mạng lõi phải chịu tải rất cao Thành phần mạng lõi nên có độ thông minh thấp và năng lực chuyển tải cao MPLS phân tách hai chức năng định tuyến và chuyển mạch: Các router ở biên thực hiện định tuyến và gắn nhãn (label) cho gói Còn các router ở mạng lõi chỉ tập trung làm nhiệm vụ chuyển tiếp gói với tốc độ cao dựa vào nhãn Tính thông minh được đẩy ra ngoài biên là một trong những ưu điểm lớn nhất của MPLS Do MPLS hỗ trợ việc điều khiển lưu lượng và cho phép thiết lập tuyến cố định, việc đảm bảo chất lượng dịch vụ của các tuyến là hoàn toàn khả thi Đây là một điểm vượt trội của MPLS so với các định tuyến cổ điển
Tóm lại, MPLS là một công nghệ chuyển mạch IP có nhiều triển vọng Với tính chất
cơ cấu định tuyến của mình, MPLS có khả năng nâng cao chất lượng dịch vụ của mạng IP truyền thống Bên cạnh đó, thông lượng của mạng sẽ được cải thiện một cách rõ rệt
Trang 131.1.2 MPLS và mô hình tham chiếu OSI
Hình 1.1: MPLS và mô hình tham chiếu OSIMPLS được xem như là một công nghệ lớp đệm (shim layer), nó nằm trên lớp 2 nhưng dưới lớp 3, vì vậy đôi khi người ta còn gọi nó là lớp 2,5
Trang 14Hình 1.2: So sánh giữa chuyển tiếp IP và chuyển tiếp MPLS
Nguyên lý của MPLS là tất cả các gói IP sẽ được gắn nhãn (label) và được chuyển tiếp theo một đường dẫn LSP (Label Switched Path) Các router trên đường dẫn chỉ căn cứ vào nội dung của nhãn để thực hiện quyết định chuyển tiếp gói mà không cần phải kiểm tra header IP
1.2 Các khái niệm cơ bản trong MPLS
1.2.1 Miền MPLS (MPLS domain)
RFC 3031 mô tả miền MPLS 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ị
Trang 15Hình 1.3: Miền MPLSMiền MPLS được chia thành 2 phần: phần mạng lõi (core) và phần mạng biên (edge) Các nút thuộc miền MPLS được gọi là router chuyển mạch nhãn LSR (Label Switch Router) Các nút ở phần mạng lõi được gọi là transit-LSR hay core- SR (thường được gọi tắt là LSR) Các nút ở biên được gọi là router biên nhãn LER (Label Edge Router).
Nếu một LER là nút đầu tiên trên đường đi của một gói xuyên qua miền MPLS thì nó được gọi là LER lối vào (ingress-LER), còn nếu là nút cuối cùng thì nó được gọi là LER lối ra (egress-LER) Lưu ý là các thuật ngữ này được áp dụng tùy theo chiều của luồng lưu lượng trong mạng, do vậy một LER có thể là ingress-LER vừa là egress-LER tuỳ theo các luồng lưu lượng đang xét
Hình 1.4: Upstream và downstream LSRThuật ngữ upstream-LSR và downstream-LSR cũng được dùng, phụ thuộc vào chiều của luồng lưu lượng Các tài liệu MPLS thường dùng ký hiệu Ru để biểu thị cho upstream-LSR và dùng ký hiệu Rd để biểu thị cho downstream-LSR
Trang 161.2.2 Lớp chuyển tiếp tương đương (FEC)
Lớp chuyển tiếp tương đương FEC (Forwarding Equivalence Class) là một tập hợp các gói được đối xử như nhau bởi một LSR Như vậy, FEC là một nhóm các gói IP được chuyển tiếp trên cùng một đường chuyển mạch nhãn LSP, được đối xử theo cùng một cách thức và có thể ánh xạ vào một nhãn bởi một LSR cho dù chúng có thể khác nhau về thông tin header lớp mạng Hình dưới cho thấy cách xử lý này
Hình 1.5: Lớp chuyển tiếp tương đương trong MPLS
1.2.3 Nhãn và Stack nhãn
RFC 3031 định nghĩa nhãn là “một bộ nhận dạng có độ dài ngắn và cố định, mang ý nghĩa cục bộ dùng để nhận biết một FEC” Nhãn được “dán” lên một gói để báo cho LSR biết gói này cần đi đâu Phần nội dung nhãn có độ dài 20 bit không cấu trúc, như vậy số giá trị nhãn có thể có là 220 (hơn một triệu giá trị) Giá trị nhãn định nghĩa chỉ mục (index) để dùng trong bảng chuyển tiếp
Một gói lại có thể được “dán chồng” nhiều nhãn, các nhãn này chứa trong một nơi gọi là stack nhãn (label stack) Stack nhãn là một tập hợp gồm một hoặc nhiều entry nhãn tổ chức theo nguyên tắc FIFO Tại mỗi hop trong mạng chỉ xử lý nhãn hiện hành trên đỉnh stack Chính nhãn này sẽ được LSR sử dụng để chuyển tiếp gói
Trang 17Hình 1.6 : Stack nhãnNếu gói tin chưa có nhãn thì stack nhãn là rỗng (độ sâu của stack nhãn bằng 0) Nếu stack có chiều sâu là d thì mức 1 sẽ ở đáy stack (bit S trong entry nhãn đặt lên 1) và mức d sẽ ở đỉnh của stack Một entry nhãn có thể được đặt thêm vào (push) hoặc lấy
ra (pop) khỏi stack
1.2.4 Hoán đổi nhãn (Label Swapping)
Hoán đổi nhãn là cách dùng các thủ tục để chuyển tiếp gói Để chuyển tiếp gói có nhãn, LSR kiểm tra nhãn trên đỉnh stack và dùng ánh xạ ILM (Incoming Label Map)
để ánh xạ nhãn này tới một entry chuyển tiếp nhãn NHLFE (Next Hop Label Forwarding Entry) Sử dụng thông tin trong NHLFE, LSR xác định ra nơi để chuyển tiếp gói và thực hiện một tác vụ trên stack nhãn Rồi nó mã hóa stack nhãn mới vào gói và chuyển gói đi
Chuyển tiếp gói chưa có nhãn cũng tương tự nhưng xảy ra ở ingress-LER LER phải phân tích header lớp mạng để xác định FEC rồi sử dụng ánh xạ FTN (FEC-to-NHLFE) để ánh xạ FEC vào một NHLFE
1.2.5 Đường chuyển mạch nhãn LSP (Label Switched Path)
Đường chuyển mạch nhãn LSP là một đường nối giữa router ngỏ vào và router ngỏ
ra, được thiết lập bởi các nút MPLS để chuyển các gói đi xuyên qua mạng Đường
Hình 1.7:Đường chuyển mạch nhãn MPLS
Trang 18dẫn của một LSP qua mạng được định nghĩa bởi sự chuyển đổi các giá trị nhãn ở các LSR dọc theo LSP bằng cách dùng thủ tục hoán đổi nhãn Khái niệm LSP tương tự như khái niệm mạch ảo (VC) trong ATM.
Kiến trúc MPLS cho phép phân cấp các LSP, tương tự như ATM sử dụng VPI và VCI để tạo ra phân cấp kênh ảo (VC) nằm trong đường ảo (VP) Tuy nhiên ATM chỉ
có thể hỗ trợ 2 mức phân cấp, trong khi với MPLS thì số mức phân cấp cho phép rất lớn nhờ khả năng chứa được nhiều entry nhãn trong stack nhãn Về lý thuyết, giới hạn số lượng nhãn trong stack phụ thuộc giá trị MTU (Maximum Transfer Unit) của các giao thức lớp liên kết được dùng dọc theo một LSP
Hình 1.8 : Phân cấp LSP trong MPLS
1.2.6 Chuyển gói qua miền MPLS
Sau đây là một ví dụ đơn giản minh họa quá trình truyền gói IP đi qua miền MPLS Gói tin IP khi đi từ ngoài mạng vào trong miền MPLS được router A đóng vai trò là
Hình 1.9 : Gói IP đi qua mạng MPLS
Trang 19một ingress-LER sẽ gán nhãn có giá trị là 6 cho gói IP rồi chuyển tiếp đến router B Router B dựa vào bảng hoán đổi nhãn để kiểm tra nhãn của gói tin Nó thay giá trị nhãn mới là 3 và chuyển tiếp đến router C Tại C, việc kiểm tra cũng tương tự như ở
B và sẽ hoán đổi nhãn, gán cho gói tin một nhãn mới là 9 và tiếp tục được đưa đến router D
Router D đóng vai trò egress-LER sẽ kiểm tra trong bảng hoán đổi nhãn và gỡ bỏ
Hình 1.10: Định dạng một entry trong stack nhãn MPLSnhãn 9 ra khỏi gói tin rồi định tuyến gói IP một cách bình thường đi ra khỏi miền MPLS Với kiểu làm việc này thì các LSR trung gian như router B và C sẽ không phải thực hiện kiểm tra toàn bộ header IP của gói tin mà nó chỉ việc kiểm tra các giá trị của nhãn, so sánh trong bảng và chuyển tiếp Vì vậy tốc độ xử lý trong miền MPLS sẽ nhanh hơn nhiều so với định tuyến IP truyền thống Đường đi từ router A đến router D được gọi là đường chuyển mạch nhãn LSP (Label Switched Path)
1.3 Mã hóa nhãn và các chế độ đóng gói nhãn MPLS
1.3.1 Mã hóa stack nhãn
Khi nhãn được gắn lên gói, bản thân giá trị nhãn 20 bit sẽ được mã hoá cùng với một
số thông tin cộng thêm để phụ trợ trong quá trình chuyển tiếp gói để hình thành một entry nhãn Hình 10 minh họa định dạng một entry nhãn trong stack nhãn
Trang 20Nhóm 32 bit ở hình trên là một entry trong stack nhãn, trong đó phần giá trị nhãn thực sự chỉ có 20 bit Tuy nhiên người ta thường gọi chung cho cả entry 32 bit nói trên là một nhãn Vì vậy khi thảo luận về nhãn cần phân biệt là đang xem xét giá trị nhãn 20 bit hay nói về entry 32 bit trong stack nhãn Phần thông tin 12 bit cộng thêm gồm các trường sau đây:
EXP (một số tài liệu gọi là CoS - Class of Service ) – Gồm 3 bit, có thể là một hàm của trường TOS (Type of Service) hoặc Diffserv trong gói IP Đa số các nhà sản xuất
sử dụng các bit này để mang chỉ thị QoS, thường là copy trực tiếp từ các bit TOS trong gói IP Khi gói MPLS vào hàng đợi, có thể sử dụng các bit EXP theo cách giống như các bit ưu tiên trong IP
S – Gồm 1 bit, chỉ thị đáy của stack nhãn Khi một nhãn nằm ở đáy stack nhãn, thì bit
S đặt lên 1; còn các nhãn khác có bit S đặt về 0 Bit S là phương tiện để xác định đáy của stack nhãn nằm ở đâu
TTL – Gồm 8 bit, thường là copy trực tiếp từ trường TTL của header IP, được giảm
đi 1 qua mỗi hop để chặn loop định tuyến giống như IP Tuy nhiên, các bit TTL cũng
có thể được đặt khác với TTL trong gói IP, thường dùng khi nhà khai thác mạng muốn che giấu topology mạng MPLS
MPLS có thể hoạt động ở các chế độ: chế độ frame và chế độ cell
1.3.2 Chế độ Frame
Các kỹ thuật lớp 2 như Ethernet, Token Ring, FDDI, PPP không có trường nào phù hợp trong header của frame có thể mang nhãn Vì vậy, stack nhãn sẽ được chứa trong header chêm (shim header) Shim header được “chêm” vào giữa header lớp liên kết
và header lớp mạng, như trong hình 11 Đỉnh stack nằm liền sau header lớp 2 và đáy stack nằm liền trước header lớp mạng
Trang 21Hình 1.11 : Shim headerRouter gởi frame phải có cách để báo cho router nhận biết rằng frame này có chứa shim header, cách thức này khác nhau giữa các kỹ thuật lớp 2 Ethernet sử dụng cặp giá trị ethertype 0x8847 và 0x8848 để chỉ thị frame đang mang gói MPLS unicast và multicast tương ứng PPP sử dụng NCP (Network Control Program) sửa đổi gọi là MPLSCP (MPLS Control Protocol) và đánh dấu tất cả các gói có chứa shim header bằng giá trị 0x8281 trong trường PPP Protocol.
1.3.3 Chế độ Cell
Chế độ Cell được dùng khi ta có một mạng gồm các ATM-LSR (là các chuyển mạch ATM có hỗ trợ MPLS), trong đó nó sử dụng các giao thức phân phối nhãn MPLS để trao đổi thông tin VPI/VCI thay cho báo hiệu ATM Nhãn được mã hoá trong trường gộp VPI/VCI, trong VPI hoặc VCI của header cell ATM (RFC 3035)
Hình 1.12 : Nhãn trong chế độ cell ATMCell ATM gồm có 5 byte header và 48 byte payload Để chuyển tải gói tin có kích thước lớn hơn 48 byte từ lớp trên đưa xuống (ví dụ gói IP), ATM phải chia gói tin thành nhiều phần nhỏ hơn, việc này gọi là phân đoạn (fragmentation) Quá trình phân đoạn do lớp AAL (ATM Adaptation Layer) đảm trách Cụ thể, AAL5 PDU sẽ được chia thành nhiều đoạn 48 byte, mỗi đoạn 48 byte này được thêm header
5 byte để tạo ra một cell ATM
Trang 22Khi đóng gói có nhãn MPLS trên ATM, toàn bộ stack nhãn được đặt trong AAL5 PDU Giá trị thực sự của nhãn đỉnh được đặt trong trường VPI/VCI, hoặc đặt trong trường VCI nếu 2 ATM-LSR kết nối nhau qua một đường ảo ATM (VP) Entry đỉnh stack nhãn phải chứa giá trị 0 (coi như entry “giữ chỗ”) và được bỏ qua khi nhận Lý do các nhãn phải chứa ở cả trong AAL5 PDU và header ATM là để mở rộng độ sâu stack nhãn Khi các cell ATM đi đến cuối LSP, nó sẽ được tái hợp
Hình 1.13 : Encapsulation gói có nhãn trên link ATMlại Nếu có nhiều nhãn trong stack nhãn, AAL5 PDU sẽ bị phân đoạn lần nữa và nhãn hiện hành trên đỉnh stack sẽ được đặt vào trường VPI/VCI
Chương 2:ĐỊNH TUYẾN VÀ BÁO HIỆU MPLS
2.1 Định tuyến trong MPLS
MPLS hỗ trợ cả hai kỹ thuật định tuyến: định tuyến từng chặng (hop-by-hop) và định tuyến ràng buộc (constrain-based routing) Định tuyến từng chặng cho phép mỗi nút nhận dạng các FEC và chọn hop kế cho mỗi FEC một cách độc lập, giống như định tuyến trong mạng IP Tuy nhiên, nếu muốn triển khai kỹ thuật lưu lượng với MPLS, bắt buộc phải sử dụng kiểu định tuyến ràng buộc
Trang 232.1.1 Định tuyến ràng buộc (Constrain-based Routing)
Định tuyến ràng buộc là một phương tiện để thực hiện xử lý tự động hóa kỹ thuật lưu lượng, khắc phục được các hạn chế của định tuyến theo đích (destination-based routing) Nó xác định các route không chỉ dựa trên topology mạng (thuật toán chọn đường ngắn nhất SPF) mà còn sử dụng các metric đặc thù khác như băng thông, trễ, cost và biến động trễ Giải thuật chọn đường có khả năng tối ưu hóa theo một hoặc nhiều metric này, thông thường người ta dùng metric dựa trên số lượng hop và băng thông.Để đường được chọn có số lượng hop nhỏ nhất nhưng phải đảm bảo băng thông khả dụng trên tất cả các chặng liên kết, quyết định cơ bản như sau: chọn đường ngắn nhất trong số tất cả các đường có băng thông khả dụng thỏa mãn yêu cầu
Hình 2.1: Một ví dụ định tuyến ràng buộc
Để minh họa hoạt động của định tuyến ràng buộc, xét cấu trúc mạng “con cá” kinh điển như hình trên Giả sử rằng định tuyến ràng buộc sử dụng số hop (hop-count) và băng thông khả dụng làm các metric Lưu lượng 600 Kbps được định tuyến trước tiên, sau đó là lưu lượng 500 Kbps và 200 Kbps
Cả 3 loại lưu lượng này đều hướng đến cùng một egress-router Ta thấy rằng:
Vì lưu lượng 600 Kbps được định tuyến trước nên nó đi theo đường ngắn nhất là R2-R3-R4-R5.Vì băng thông khả dụng là như nhau trên tất cả các chặng kênh (1 Mbps), nên lưu lượng 600 Kbps chiếm 60% băng thông
Trang 24R8-Sau đó, vì băng thông khả dụng của đường ngắn nhất không đủ cho cả 2 lưu lượng 600Kbps và 500 Kbps, nên lưu lượng 500 Kbps được định tuyến đi theo đường mới qua R6 và R7 mặc dù nhiều hơn một hop so với đường cũ.
Với lưu lượng 200 Kbps tiếp theo, vì vẫn còn băng thông khả dụng trên đường ngắn nhất nên đường này được chọn để chuyển lưu lượng 200 Kbps
Định tuyến ràng buộc có 2 kiểu online và offline Kiểu online cho phép các router tính đường cho các LSP bất kỳ lúc nào Trong kiểu offline, một server tính đường cho các LSP theo định kỳ (chu kỳ có thể được chọn bởi nhà quản trị, thường là vài giờ hoặc vài ngày) Các LSP được báo hiệu thiết lập theo các đường đã được chọn
2.1.2 Định tuyến tường minh (Explicit Routing)
Định tuyến tường minh (Explicit Routing) là một tập con của định tuyến ràng buộc, trong đó sự ràng buộc là đối tượng tuyến tường minh ER (explicit route)
Tuyến tường minh ER là một danh sách các “nút trừu tượng” (abstract node) mà một đường chuyển mạch nhãn ràng buộc CR-LSP phải đi qua Nút trừu tượng có thể là một nút (địa chỉ IP) hoặc một nhóm nút (như IP prefix hoặc một AS) Nếu ER chỉ quy định một nhóm trong số các nút mà CR-LSP đi qua thì nó được gọi là tuyến tường minh thả lỏng (loose ER) Ngược lại, nếu ER quy định toàn bộ các nút trên CR-LSP thì được gọi là tuyến tường minh nghiêm ngặt (strict ER)
CR-LSP được mã hóa như là một chuỗi các ER-Hop (chặng tường minh) chứa trong một cấu trúc Type-Length-Value ràng buộc (constraint-based route TLV) Mỗi ER-Hop có thể xác định một nhóm các nút CR-LSP khi đó bao gồm tất cả các nhóm nút đã được xác định theo thứ tự xuất hiện trong cấu trúc TLV
2.2 Các chế độ báo hiệu MPLS
2.2.1 Chế độ phân phối nhãn
MPLS cho phép hai chế độ hoạt động của các LSR để phân phối các ánh xạ nhãn, đó
là phân phối không cần yêu cầu (Downstream Unsolicited) và phân phối theo yêu cầu
Trang 25(Downstream on Demand) Thuật ngữ downstream ở đây ngụ ý rằng phía downstream sẽ thực hiện gán kết nhãn và thông báo gán kết đó cho phía upstream.
2.2.1.a Phân phối nhãn không cần yêu cầu (Downstream Unsolicited)
Downstream-LSR phân phối các gán kết nhãn đến upstream-LSR mà không cần có yêu cầu thực hiện việc kết nhãn Nếu downstream-LSR chính là hop kế đối với định tuyến IP cho một FEC cụ thể thì upstream-LSR có thể sử dụng kiểu kết nhãn này để chuyển tiếp các gói trong FEC đó đến downstream-LSR
Hình 2.2: Phân phối nhãn không cần yêu cầu
2.2.1.b Phân phối nhãn theo yêu cầu (Downstream on Demand)
Upstream-LSR phải yêu cầu rõ ràng một gán kết nhãn cho một FEC cụ thể thì downstream-LSR mới phân phối Trong phương thức này, downstream-router không nhất thiết phải là hop kế đối với định tuyến IP cho FEC đó, điều này rất quan trọng đối với các LSP định tuyến tường minh
Hình 2.3: Phân phối nhãn theo yêu cầu
Trang 262.2.2 Chế độ duy trì nhãn
Một upstream-LSR có thể nhận các gán kết nhãn cho cùng một FEC X từ nhiều downstream-LSR Có hai chế độ duy trì các gán kết nhãn nhận được là duy trì nhãn
tự do (liberal label retention) và duy trì nhãn bảo thủ (conservative label retention)
2.2.2.a Duy trì nhãn tự do (liberal label retention)
Phía upstream (LSR1) lưu giữ tất cả các gán kết nhãn nhận được, bất chấp việc downstream-LSR có phải là hop kế đối với định tuyến IP hay không ưu điểm chính của duy trì nhãn tự do là có thể phản ứng nhanh với sự thay đổi định tuyến vì các gán kết nhãn đã có sẵn Nhược điểm là LSR phải duy trì nhiều gán kết nhãn không dùng
và có thể gây ra loop định tuyến tạm thời khi thay đổi định tuyến
Hình 2.4: Duy trì nhãn tự do
2.2.2.b Duy trì nhãn bảo thủ (conservative label retention)
Upstream-LSR hủy tất cả các gán kết nhãn khác, chỉ giữ lại gán kết nhãn gởi từ downstream-LSR đang là hop kế hiện hành Chế độ này có ưu điểm là LSR chỉ cần duy trì số gán kết FEC-nhãn ít hơn, nhưng đáp ứng chậm khi thay đổi định tuyến vì gán kết nhãn mới phải được yêu cầu và phân phối lại Đây là chế độ thích hợp cho các LSR chỉ hỗ trợ một số lượng nhãn hạn chế (như các chuyển mạch ATM)
Trang 27Hình 2.5: Duy trì nhãn bảo thủ
2.2.3 Chế độ điều khiển LSP
Khi một FEC ứng với một prefix địa chỉ được phân phối bởi định tuyến IP, việc thiết lập mối kết hợp giữa các gán kết nhãn tại một LSR có thể thực hiện theo hai cách sau đây:
2.2.3.a Điều khiển độc lập (independent control)
Khi mỗi LSR nhận dạng ra một FEC thì nó quyết định gán kết ngay một nhãn cho FEC đó và công bố luôn gán kết đó cho các đối tác phân phối nhãn (label distribution peers) Điều này tương tự như định tuyến IP thông thường, ở đó mỗi router ra quyết định độc lập về nơi cần chuyển gói đi Điều khiển độc lập có ưu điểm là thiết lập LSP nhanh vì việc kết nhãn diễn ra song song giữa nhiều cặp LSR và dòng lưu lượng
có thể bắt đầu truyền mà không cần đợi cho tất cả các gán kết nhãn thiết lập xong
Hình 2.6: Điều khiển độc lập
2.2.3.b Điều khiển tuần tự (odered control)
Một downstream-LSR thực hiện kết nhãn cho một FEC và thông báo gán kết đó chỉ nếu nó là LSR lối ra hoặc nếu nó đã nhận được một gán kết nhãn cho FEC đó từ router hướng downstream của nó Việc thiết lập LSP tuần tự bắt đầu ở LSR lối ra và
Trang 28diễn ra nối tiếp theo hướng ngược về LSR lối vào Các LSP định tuyến tường minh bắt buộc phải sử dụng kiểu điều khiển tuần tự và quá trình phân phối nhãn theo chuỗi
có thứ tự sẽ tạo ra thời gian trễ trước khi dòng lưu lượng đi trên LSP có thể bắt đầu Tuy nhiên, điều khiển tuần tự cung cấp phương tiện tránh loop và đạt được mức độ thu gom chắc chắn hơn
Hình 2.7: Điều khiển tuần tự
2.2.4 Các giao thức phân phối nhãn MPLS
Bảng 2.1 : Các chế độ của các giao thức phân phối nhãn MPLS
Giao thức phân phối nhãn là một tập các thủ tục mà nhờ nó một LSR có thể thông báo cho một LSR khác biết về các mối gán kết nhãn-FEC mà nó đã tiến hành Kiến trúc MPLS không chỉ định một giao thức phân phối nhãn duy nhất nào, do đó có thể
Trang 29có nhiều lựa chọn, mỗi giao thức có ưu và nhược điểm riêng Trong các phần tiếp theo giới thiệu một số giao thức phân phối nhãn được dùng phổ biến.
2.3 Giao thức LDP (Label Distribution Protocol)
LDP được chuẩn hóa trong RFC 3036, nó được thiết kế để thiết lập và duy trì các LSP định tuyến không ràng buộc (unconstraint routing) Vùng hoạt động của LDP có thể là giữa các LSR láng giềng (neighbor) trực tiếp hoặc gián tiếp
Hình 2.8 : Vùng hoạt động của LDP
2.3.1 Hoạt động của LDP
LDP có 4 chức năng chính là phát hiện LSR láng giềng (Neighbor discovery), thiết lập và duy trì phiên, quảng bá nhãn (label advertisement) và thông báo (Notification) Tương ứng với các chức năng trên, có 4 lớp thông điệp LDP sau đây:
• Discovery: Để trao đổi định kỳ bản tin Hello nhằm loan báo và kiểm tra một LSR kết nối gián tiếp hoặc trực tiếp
• Session: Để thiết lập, thương lượng các thông số cho việc khởi tạo, duy trì và chấm dứt các phiên ngang hàng LDP Nhóm này bao gồm bản tin
Initialization,KeepAlive
• Advertisement: Để tạo ra, thay đổi hoặc xóa các ánh xạ FEC tới nhãn Nhóm này bao gồm bản tin Label Mapping, Label Withdrawal, Label Release, Label Request, Label Request Abort
• Notification: Để truyền đạt các thông tin trạng thái, lỗi hoặc cảnh báo
Các thông điệp Discovery được trao đổi trên UDP Các kiểu thông điệp còn lại đòi hỏi phân phát tin cậy nên dùng TCP Trường hợp hai LSR có kết nối lớp 2 trực tiếp thì thủ tục phát hiện neighbor trực tiếp như sau:
Một LSR định kỳ gửi đi bản tin Hello tới các cổng UDP 646 địa chỉ multicast (tất cả các router trong subnet)
Trang 30Tất cả các LSR tiếp nhận bản tin Hello này trên cổng UDP Đến một thời điểm nào
đó LSR sẽ biết được tất cả các LSR khác mà nó có kết nối trực tiếp
Khi LSR nhận biết được địa chỉ của LSR khác bằng cơ chế này thì nó sẽ thiết lập kết nối TCP đến LSR đó Khi đó phiên LDP được thiết lập giữa 2 LSR
Phiên LDP là phiên song hướng nên mỗi LSR ở hai đầu kết nối đều có thể yêu cầu và gửi liên kết nhãn
Hình 2.9: Trao đổi thông điệp LDP
Trong trường hợp hai LSR không có kết nối lớp 2 trực tiếp (neighbor gián tiếp) thì LSR định kỳ gửi bản tin Hello đến cổng UDP đã biết tại địa chỉ IP xác định được khai báo khi lập cấu hình Đầu nhận bản tin này có thể trả lời lại bằng bản tin Hello khác và việc thiết lập các phiên LDP được thực hiện như trên
2.3.2 Cấu trúc thông điệp LDP
Trao đổi thông điệp LDP thực hiện bằng cách gởi các LDP-PDU (Protocol Data Unit) thông qua các phiên LDP trên kết nối TCP Mỗi LDP-PDU có thể mang một hoặc nhiều thông điệp, và các thông điệp này không nhất thiết phải có liên quan với nhau
Trang 312.3.2.a LDP PDU
Mỗi PDU của LDP bao gồm một header LDP và theo sau là một hoặc nhiều thông điệp LDP Phần header LDP có dạng như sau:
Hình 2.10: LDP headerPDU Length (2 octet): số nguyên chỉ chiều dài của PDU theo octet, không tính trường Version và PDU Length LDP Identifier (6 octet): xác định không gian nhãn được cấp phát Bốn octet đầu là giá trị duy nhất toàn cục nhận dạng LSR, như địa chỉ IP (router ID) được gán cho LSR Hai octets sau xác định một không gian nhãn bên trong LSR Hai octets này được set về 0 cho không gian nhãn “per-platform”
2.3.2.b Định dạng thông điệp LDP
Tất cả các thông điệp LDP có cùng format như sau:
Hình 2.11: Format thông điệp LDPBit U: Bit “Unknown”, luôn là 0 vì đặc tả LDP không có kiểu bản tin Unknown Bảng sau là các giá trị định nghĩa trường Message Type:
Bảng 2.2: Các loại bản tin LDP
Trang 32Message Length : Chiều dài của các trường sau Message Length tính theo octet (gồm Message ID, các tham số bắt buộc và tùy chọn).
Message ID đôi khi được dùng để liên kết một số bản tin với các bản tin khác, ví dụ một bản tin đáp ứng sẽ có cùng Message ID với bản tin yêu cầu tương ứng Các tham
số bắt buộc và tùy chọn phụ thuộc vào các loại bản tin được gởi, chúng thường dùng kiểu mã hóa TLV (Type-Length-Value) Nói chung, mọi thứ xuất hiện trong một thông điệp LDP có thể được mã hóa kiểu TLV, tuy nhiên đặc tả LDP không phải lúc nào cũng sử dụng lược đồ TLV
2.3.3 Các bản tin LDP
- Hello : Được trao đổi trong suốt quá trình hoạt động LDP như trình bày ở trên
- Initialization : Được gửi khi bắt đầu một phiên LDP giữa 2 LSR để trao đổi các tham số, các tùy chọn cho phiên Các tham số này bao gồm:
Chế độ phân bổ nhãn
Các giá trị bộ định thời
Phạm vi các nhãn sử dụng trong kênh giữa 2 LSR đó
Trang 33Cả 2 LSR đều có thể gửi các bản tin Initialization và LSR nhận sẽ trả lời bằng KeepAlive nếu các tham số được chấp nhận Nếu có một tham số nào đó không được chấp nhận thì LSR trả lời thông báo có lỗi và phiên kết thúc.
- KeepAlive : Được gửi định kỳ khi không còn bản tin nào cần gửi để đảm bảo cho mỗi thành phần LDP biết rằng thành phần LDP khác đang hoạt động tốt Trường hợp không xuất hiện bản tin KeepAlive hay một số bản tin LDP khác trong khoảng thời gian nhất định thì LSR sẽ xác định đối tác LDP hỏng hoặc kết nối có sự cố và phiên LDP chấm dứt
- Label Mapping : Được sử dụng để quảng bá gán kết giữa FEC và nhãn
- Label Withdrawal : Thực hiện quá trình ngược lại với bản tin Label Mapping Nó được sử dụng để xóa bỏ gán kết đã thực hiện trong Label Mapping Bản tin này được
- Label Request : Sử dụng trong chế độ hoạt động gán nhãn theo yêu cầu, LSR sẽ yêu cầu gán nhãn từ LSR kế cận phía downstream bằng bản tin này
- Label Request Abort : Nếu bản tin Label Request cần phải hủy bỏ trước khi được chấp nhận (do nút kế tiếp trong FEC yêu cầu đã thay đổi), thì LSR yêu cầu sẽ loại bỏ yêu cầu trước đó bằng bản tin Label Request Abort
Trang 342.3.4 LDP điều khiển độc lập và phân phối theo yêu cầu
Ví dụ dưới đây minh họa việc sử dụng bản tin Label Request và Label Mapping trong chế độ công bố nhãn theo yêu cầu và điều khiển LSP độc lập Trình tự thời gian trao đổi các bản tin LDP giữa các đối tác (peer) thiết lập một LSP từ router lối vào R1 qua R2 rồi đến router lối ra R3 cho một FEC có prefix “a.b/16” R1 khởi tạo tiến trình bằng cách yêu cầu một nhãn cho FEC “a.b/16” từ hop kế của nó là R2 Vì sử dụng điều khiển độc lập nên R2 trả ngay một ánh xạ nhãn về cho R1 trước khi R2 nhận được ánh xạ nhãn từ phía downstream là R3 Cả R2 và R3 đáp ứng bằng bản tin Label Mapping, kết quả là trong FIB của R1 và LFIB của R2, R3 có các entry gán kết nhãn hình thành nên đường chuyển mạch nhãn LSP
Hình 2.12: Ví dụ LDP chế độ điều khiển độc lập theo yêu cầu
LDP còn hỗ trợ các chế độ phân phối nhãn khác Khi cấu hình ở chế độ công bố không cần yêu cầu (downstream unsolicited), các router sẽ không dùng bản tin Label Request Nếu điều khiển tuần tự (ordered control) được cấu hình trên mỗi giao diện, các yêu cầu nhãn sẽ làm cho các bản tin Label Mapping được trả về theo thứ tự từ R3 đến R2, rồi mới từ R2 về R1 Tổng quát, trong chế độ phân phối theo yêu cầu điều
Trang 35khiển tuần tự, ánh xạ nhãn diễn ra đầu tiên ở router lối ra, rồi sau đó lần lượt ngược
về đến router lối vào
2.4 Giao thức CR-LDP (Constrain-based routing LDP)
CR-LDP là giao thức mở rộng từ LDP (RFC 3212) nhằm hỗ trợ đặc biệt cho định tuyến ràng buộc, kỹ thuật lưu lượng (TE) và các hoạt động dự trữ tài nguyên Các khả năng của CR-LDP tùy chọn bao gồm thương lượng các tham số lưu lượng như cấp phát băng thông, thiết lập và cầm giữ quyền ưu tiên
2.4.1 Mở rộng cho định tuyến ràng buộc
CR-LDP bổ sung thêm các đối tượng Type-Length-Value mới sau đây (RFC 3212):
• Tuyến tường minh ER (Explicit Route)
• Chặng tường minh ER-Hop (Explicit Route Hop)
• Các tham số lưu lượng
• Sự lấn chiếm (Preemptions)
• Nhận diện LSP (LSPID)
• Ghim tuyến (Route Pinning)
• Lớp tài nguyên (Resource Class)
• CR-LSP FEC
Một số thủ tục mới cũng được bổ sung để hỗ trợ các chức năng cần thiết như:
• Báo hiệu đường (Path signalling)
• Định nghĩa các tham số lưu lượng
• Quản lý LSP (quyền ưu tiên, cam kết quản trị, v.v)
CR-LDP sử dụng cơ chế gán nhãn theo yêu cầu và điều khiển tuần tự Một LSP được thiết lập khi một chuỗi các bản tin Label Request lan truyền từ ingress-LSR đến egress-LSR, và nếu đường được yêu cầu thỏa mãn các ràng buộc (ví dụ đủ băng thông khả dụng), thì các nhãn mới được cấp phát và phân phối bởi một chuỗi các bản tin Label Mapping lan truyền ngược về ingress-LSR Việc thiết lập một CR-LSP
có thể thất bại vì nhiều lý do khác nhau và các lỗi sẽ được báo hiệu bằng bản tin Notification
2.4.2 Thiết lập một CR-LSP (Constrain-based routing LSP)
Để thiết lập một LSP theo một con đường định trước, CR-LDP sử dụng đối tượng tuyến tường minh ER (Explicit Route) ER được chứa trong các bản tin LABEL
Trang 36Xét ví dụ trong hình 32 Giả sử LSR A muốn thiết lập một con đường tường minh là B-C-D Để thực hiện việc này, LSR A xây dựng đối tượng ER chứa tuần tự 3 nút
D Việc điều khiển bản tin này tại LSR C cũng tương tự như ở LSR B
Khi bản tin đến LSR D, LSR D nhận thấy rằng nó là nút cuối cùng trong đối tượng
ER Vì vậy, LSR D tạo một bản tin Label Mapping và gởi nó đến LSR C Bản tin này bao gồm đối tượng nhãn Khi nhận bản tin này, LSR C dùng nhãn chứa trong bản tin
để cập nhật LFIB Sau đó, LSR C gởi bản tin Label Mapping đến LSR B Bản tin này cũng chứa nhãn mà LSR C đã quảng bá Việc điều khiển bản tin Label Mapping ở LSR B hoàn toàn tương tự như ở LSR C Cuối cùng, LSR A nhận được bản tin và LSP được thiết lập theo con đường định tuyến tường minh cho trước để mang thông tin về tài nguyên cần phải dự trữ
Trang 372.5 Giao thức RSVP-TE (RSVP Traffic Engineering)
RSVP có một số cơ chế cần thiết để thực hiện báo hiệu phân phối nhãn nhằm ràng buộc định tuyến IETF đã chuẩn hóa phần mở rộng kỹ thuật lưu lượng RSVP-TE, định nghĩa các ứng dụng của RSVP-TE như hỗ trợ phân phối nhãn theo yêu cầu để cấp phát tài nguyên cho các LSP định tuyến tường minh Tổng kết cách dùng RSVP-
TE để hỗ trợ tái định tuyến “make-before-break”, theo dõi đường thực sự được chọn qua chức năng ghi tuyến cũng như hỗ trợ ưu tiên và lấn chiếm
Nguyên lý chức năng của RSVP là thiết lập các dự trữ cho luồng gói đơn hướng Các bản tin RSVP thường đi theo con đường hop-by-hop của định tuyến IP nếu không hiện diện tùy chọn tuyến tường minh (explicit route) Các router hiểu RSVP dọc theo đường có thể chặn và xử lý bất cứ bản tin nào RFC 2205 định nghĩa 3 kiểu bản tin RSVP: thiết lập dự trữ (reservation setup), tear down, và error RSVP-TE cũng định nghĩa thêm bản tin Hello
2.5.1 Các bản tin thiết lập dự trữ RSVP
RSVP sử dụng khái niệm dự trữ ? ñầu nhận Trước tiên đầu gửi phát ra một bản tin PATH nhận diện một luồng và các đặc tính lưu lượng của nó Bản tin PATH chứa một session-ID, sender-template, label-request, sender-Tspec và tùy chọn là đối tượng tuyến tường minh ERO (explicit route object) Session-ID chứa một địa chỉ IP đích đi kèm một nhận dạng hầm 16 bit (tunnel ID) để nhận diện một đường hầm LSP Như đã trình bày ở chương trước, chỉ có ingress-LSP mới cần biết về FEC được gán vào một đường hầm LSP Do đó, không giống như LDP, FEC ánh xạ vào đường hầm LSP không bao gồm trong bất kỳ bản tin RVSP nào Đối tượng label-request hỗ trợ chế độ công bố nhãn theo yêu cầu Sender-template chứa địa chỉ IP của đầu gởi đi kèm với một LSP ID có hỗ trợ phương thức “make-before-break” khi thay đổi đường đi của một đường hầm LSP Đặc tính lưu lượng Tspec sử dụng tốc độ đỉnh (peak rate), thùng token (token bucket) để định nghĩa tốc độ và kích cỡ bùng phát, đơn vị khống chế tối thiểu (minimum policed unit) và kích thước gói tối đa.Khi bản tin PATH đi đến đích, bên nhận đáp ứng bằng một bản tin RESV nếu nó đồng ý khởi tạo việc gán kết nhãn được yêu cầu trong bản tin PATH Bản tin RESV
Trang 38được truyền về theo đường ngược chiều với bản tin PATH bằng cách dùng thông tin hop kề trước trong bản tin PATH RESV cũng chứa cùng session-ID như ở bản tin PATH tương ứng, đối tượng ghi tuyến tùy chọn (route record) và thông tin lệ thuộc kiểu dự trữ (reservation style) Kiểu FF (fixed filter) có một nhãn và Tspec được ấn định cho mỗi cặp sender-receiver Kiểu SE (shared explicit) ấn định một nhãn khác nhau cho mỗi sender, nhưng tất cả chúng phải áp dụng cùng một dự trữ luồng rõ ràng Đối tượng record-route ghi nhận tuyến đường thực tế được chọn bởi LSP bắt đầu từ egress dẫn ngược về ingress Nó có thể được một router dùng
để ghim một tuyến tường minh thả lỏng bằng cách copy tuyến ghi được trong bản tin RESV sang đối tượng tuyến tường minh ERO trong một bản tin PATH được gửi theo chiều ngược lại
2.5.2 Các bản Tear Down, Error và Hello của RSVP-TE
RSVP-TE định nghĩa 2 bản tin dành cho việc giải tỏa LSP là PATH TEAR
và RESV TEAR Hai bản tin này được gửi theo chiều ngược với bản tin PATH và RESV tương ứng Bản tin TEAR xóa bỏ bất kỳ trạng thái đã cài đặt liên quan đến bản tin PATH hay RESV Các bản tin TEAR cũng có thể dùng để xóa các trạng thái đáp ứng cho một lỗi ở bước đầu tiên trong hoạt động tái định tuyến
Có các bản tin thông báo lỗi cho bản tin PATH và RESV cũng như bản tin RESV CONFIRMATION tùy chọn Các bản tin lỗi cho biết có sự vi phạm chính sách, mã hóa bản tin hoặc một số sự cố khác Ví dụ, khi một LSP thấy rằng nó không thể hỗ trợ Tspec đặc tả trong một bản tin RESV, nó sẽ không chuyển tiếp bản tin RESV về cho phía upstream, thay vào đó nó tạo ra một bản tin RESVERR gửi cho phía downstream để xóa bỏ nỗ lực thiết lập LSP Tuyến tường minh và các tùy chọn record-route của RSVP-TE có một số các mã lỗi để phục vụ cho việc debug
RFC 3209 định nghĩa bản tin Hello tùy chọn cho RSVP-TE, nó cho phép một LSR phát hiện một neighbor bị lỗi nhanh hơn khi so với RSVP làm tươi tình trạng hoặc phát hiện lỗi đường truyền bằng một giao thức định tuyến IP Điều này khá hữu ích trong việc tái định tuyến nhanh
Trang 392.5.3 Thiết lập tuyến tường minh điều khiển tuần tự theo yêu cầu
Hình 28 ví dụ việc trao đổi bản tin RSVP-TE sử dụng đối tượng tuyến tường minh ERO (explicit route object) để cài đặt một LSP đi qua một con đường không phải là đường ngắn nhất Router R1 xác định rằng nó sẽ ấn định FEC “a.b/16” cho một đường hầm LSP, và nó tính ra một tuyến tường minh R4-R5-R3 để đi đến hop kế cho FEC đó R1 khởi tạo việc thiết lập LSP này bằng cách phát ra một bản tin PATH đến R4 với một ERO, Tspec, sender template (có chứa địa chỉ của sender) và một đối tượng label request Mỗi bản tin RESV liên quan đến đường hầm LSP này đều mang session-ID và filter-spec nguyên thủy của sender R1 để giữ mối tương quan với nhau.Tiếp theo, R4 tiếp nhận yêu cầu này và gửi bản tin PATH đến router
kế tiếp ghi trong ERO là R5 Đến lượt mình, R5 gửi bản tin này đến egress-router R3
Hình 2.14: Thiết lập LSP với RSVP-TE
Tại đích đến của bản tin PATH, R3 xác định rằng liên kết chặng R3-R5 có thể hỗ trợ cho yêu cầu và đó là hop cuối cùng trên đường dẫn cho FEC “a.b/16” R3 đáp ứng bằng bản tin RESV có chứa ERO, Tspec của dung lượng dự trữ, một filter spec thỏa mãn bên gửi, và gán một nhãn null ngầm (implicit null) cho chặng liên kết này Theo
Trang 40RFC 3031, nhãn null là một quy ước được dùng trong phân phối nhãn cho phép egress- router (ở đây là R3) báo hiệu cho đối tác upstream của nó biết rằng đây là hop
áp cuối (penultimate hop) của LSP, do vậy cần gỡ nhãn đỉnh của stack (xem LFIB của LSR R5) Tiếp theo, R5 thu nạp bản tin RESV yêu cầu cho chặng R5-R4, ấn định nhãn B và gởi bản tin RESV đến router kề trước trong ERO là R4 Cuối cùng, R4 chấp nhận yêu cầu, ấn định nhãn A và gởi bản tin RESV ngược về R1 Đến lúc này, đường LSP được thiết lập xong và các gói có nhãn cho FEC “a.b/16” được chuyển tiếp qua đường hầm
Khác với giao thức LDP, các bản tin RSVP-TE không mang FEC, vì chỉ duy nhất có R1 cần biết về ánh xạ giữa FEC và đường hầm LSP
2.5.4 Giảm lượng overhead làm tươi RSVP
RSVP là giao thức trạng thái mềm (soft-state), tiến trình phát một bản tin PATH vàbản tin RESV hồi đáp tương ứng phải được định kỳ làm tươi, thường khoảng 30s một lần Phương pháp làm tươi này đề phòng các bản tin bị mất và trong trường hợp định tuyến từng chặng sẽ tự động chuyển dự trữ tài nguyên sang đường mới khi có bất kỳ thay đổi định tuyến IP Tất nhiên, việc xử lý dành cho khởi tạo các bản tin PATH và RESV lớn hơn nhiều so với việc làm tươi trạng thái một bản tin đã nhận trước đó, tuy nhiên với một số lượng lớn các LSP thì việc xử lý làm tươi có ảnh hưởng đáng kể đến hiệu năng
Một cách để giải quyết là tăng chu kỳ làm tươi, nhưng cũng sẽ làm tăng độ trễ báohiệu khi mất bản tin RFC 2961 đặc tả một giải pháp cho hạn mức xử lý và vấn đề trễ báo hiệu Cơ chế này bao gồm việc bó gọn bản tin để giảm tải xử lý, cũng như các cách để router dễ dàng nhận dạng một bản tin không thay đổi hơn Việc hồi báo bản tin cũng được bổ sung để chuyển tải tin cậy bản tin RSVP và xử lý trường hợp mất các bản tin PATH TEAR và RESV TEAR vì hai bản tin này không được làm tươi trong hoạt động RSVP Cuối cùng, giải pháp này định nghĩa một bản tin tổng kết (summary) để làm tươi trạng thái mà không yêu cầu truyền toàn bộ bản tin làm tươi Các cải tiến này nhằm giảm lượng overhead làm tươi của RSVP trong mạng MPLS