Kỹ thuật lưu lượng trong MPLS và các cơ chế bảo về đường

117
Đồ án tốt nghiệp Đại học Mục Lục MỤC LỤC MỤC LỤC................................................. i DANH MỤC HÌNH......................................... iii THUẬT NGỮ VIẾT TẮT...................................... v MỞ ĐẦU.................................................. 1 CHƯƠNG I: TỔNG QUAN VỀ CHUYỂN MẠCH NHÃN ĐA GIAO THỨC....3 1.1 Giới thiệu........................................3 1.2 Các khái niệm cơ bản trong MPLS...................4 1.2.1 Miền MPLS......................................4 1.2.2 Lớp chuyển tiếp tương đương....................5 1.2.3 Nhãn và ngăn xếp nhãn..........................6 1.2.4 Hoán đổi nhãn..................................7 1.2.5 Đường chuyển mạch nhãn LSP.....................7 1.2.6 Chuyển gói qua miền MPLS.......................8 1.2.7 Mã hóa ngăn xếp nhãn...........................9 1.3 Cấu trúc trường chức năng MPLS...................11 1.3.1 Kiến trúc một nút MPLS........................11 1.3.3 Mặt phẳng điều khiển..........................14 1.4 Hoạt động chuyển tiếp MPLS.......................14 1.4.1 Hoạt động trong mặt phẳng chuyển tiếp.........14 1.4.2 Gỡ nhãn ở chặng áp cuối PHP...................15 1.5 Định tuyến trong MPLS............................15 1.5.1 Định tuyến ràng buộc..........................15 1.5.2 Định tuyến tường minh.........................16 1.6 Các chế độ báo hiệu MPLS.........................17 1.6.1 Chế độ phân phối nhãn.........................17 1.6.2 Chế độ duy trì nhãn...........................18 1.6.3 Chế độ điều khiển LSP.........................19 1.7 Các giao thức hoạt đông..........................20 1.7.1 Giao thức LDP.................................20 1.7.2 Giao thức CR-LDP..............................25 1.7.3 Giao thức RSVP-TE.............................27 1.7.4 Giao thức BGP.................................30 1.8 Ưu điểm và ứng dụng của MPLS.....................32 1.8.1 Đơn giản hóa chức năng chuyển tiếp............32 1.8.2 Kỹ thuật lưu lượng............................33 1.8.3 Định tuyến QoS từ nguồn.......................33 1.8.4 Mạng riêng ảo VPN.............................33 1.8.5 Chuyển tiếp có phân cấp.......................33 1.8.6 Khả năng mở rộng..............................34 Học viện công nghệ bưu chính viễn thông i

Transcript of Kỹ thuật lưu lượng trong MPLS và các cơ chế bảo về đường

Page 1: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Mục Lục

MỤC LỤC

MỤC LỤC.....................................................................................................................iDANH MỤC HÌNH....................................................................................................iiiTHUẬT NGỮ VIẾT TẮT...........................................................................................vMỞ ĐẦU.......................................................................................................................1CHƯƠNG I: TỔNG QUAN VỀ CHUYỂN MẠCH NHÃN ĐA GIAO THỨC.....3

1.1 Giới thiệu.............................................................................................................31.2 Các khái niệm cơ bản trong MPLS..................................................................4

1.2.1 Miền MPLS..................................................................................................41.2.2 Lớp chuyển tiếp tương đương....................................................................51.2.3 Nhãn và ngăn xếp nhãn..............................................................................61.2.4 Hoán đổi nhãn.............................................................................................71.2.5 Đường chuyển mạch nhãn LSP.................................................................71.2.6 Chuyển gói qua miền MPLS......................................................................81.2.7 Mã hóa ngăn xếp nhãn................................................................................9

1.3 Cấu trúc trường chức năng MPLS.................................................................111.3.1 Kiến trúc một nút MPLS..........................................................................111.3.3 Mặt phẳng điều khiển...............................................................................14

1.4 Hoạt động chuyển tiếp MPLS.........................................................................141.4.1 Hoạt động trong mặt phẳng chuyển tiếp.................................................141.4.2 Gỡ nhãn ở chặng áp cuối PHP.................................................................15

1.5 Định tuyến trong MPLS..................................................................................151.5.1 Định tuyến ràng buộc................................................................................151.5.2 Định tuyến tường minh.............................................................................16

1.6 Các chế độ báo hiệu MPLS.............................................................................171.6.1 Chế độ phân phối nhãn.............................................................................171.6.2 Chế độ duy trì nhãn..................................................................................181.6.3 Chế độ điều khiển LSP.............................................................................19

1.7 Các giao thức hoạt đông..................................................................................201.7.1 Giao thức LDP...........................................................................................201.7.2 Giao thức CR-LDP....................................................................................251.7.3 Giao thức RSVP-TE..................................................................................271.7.4 Giao thức BGP...........................................................................................30

1.8 Ưu điểm và ứng dụng của MPLS....................................................................321.8.1 Đơn giản hóa chức năng chuyển tiếp.......................................................321.8.2 Kỹ thuật lưu lượng....................................................................................331.8.3 Định tuyến QoS từ nguồn.........................................................................331.8.4 Mạng riêng ảo VPN...................................................................................331.8.5 Chuyển tiếp có phân cấp...........................................................................331.8.6 Khả năng mở rộng....................................................................................34

1.9 Kết luận chương...............................................................................................34CHƯƠNG II: KĨ THUẬT LƯU LƯỢNG TRONG MPLS VÀ CƠ CHẾ BẢO VỆKHÔI PHỤC ĐƯỜNG..............................................................................................35

2.1 Tổng quan về kỹ thuật lưu lượng...................................................................352.1.1 Các mục tiêu triển khai kỹ thuật lưu lượng............................................352.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..............362.1.3 Hàng đợi lưu lượng...................................................................................362.1.5 Giải pháp mô hình xếp chồng .................................................................40

2.2 MPLS và kỹ thuật lưu lượng...........................................................................40

Học viện công nghệ bưu chính viễn thông i

Page 2: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Mục Lục

2.2.1 Khái niệm trung kế lưu lượng .................................................................412.2.2 Đồ thị nghiệm suy......................................................................................412.2.3 Bài toán cơ bản của kỹ thuật lưu lượng trên MPLS..............................41

2.3 Trung kế lưu lượng và các thuộc tính............................................................422.3.1 Các hoạt động cơ bản trên trung kế lưu lượng......................................422.3.2 Thuộc tính tham số lưu lượng..................................................................432.3.3 Thuộc tính lựa chọn và quản lý đường...................................................432.3.4 Thuộc tính ưu tiên/lấn chiếm...................................................................442.3.5 Thuộc tính đàn hồi....................................................................................442.3.6 Thuộc tính khống chế................................................................................44

2.4 Tính toán đường ràng buộc.............................................................................452.4.1 Quảng bá các thuộc tính của liên kết......................................................452.4.2 Tính toán LSP ràng buộc ........................................................................462.4.3 Giải thuật chọn đường..............................................................................462.4.4 Ví dụ về chọn đường cho trung kế lưu lượng.........................................462.4.5 Tái tối ưu hóa ............................................................................................48

2.5 Bảo vệ và khôi phục đường.............................................................................492.5.1 Phân loại các cơ chế bảo vệ khôi phục...................................................502.5.2 Mô hình Makam........................................................................................512.5.3 Mô hình Haskin.........................................................................................512.5.4 Mô hình Hundessa.....................................................................................522.5.5 Mô hình Shortest-Dynamic......................................................................522.5.6 Mô hình Simple-Dynamic.........................................................................532.5.6 Mô hình Simple-Static..............................................................................53

CHƯƠNG III: XÂY DƯNG CHƯƠNG TRÌNH MÔ PHỎNG CƠ CHẾ BẢO VỆ VÀ KHÔI PHỤC ĐƯỜNG TRONG MPLS SỬ DỤNG NS2..............................55

3.1 Môi trường mô phỏng NS2..............................................................................553.1.1 Kiến trúc NS2............................................................................................553.1.2 C++ và OTcl...............................................................................................57

3.2 Xây dựng chương trình mô phỏng..................................................................593.2.1 Mục tiêu mô phỏng....................................................................................593.2.2 Thực hiện và kết quả.................................................................................60

KẾT LUẬN.................................................................................................................67TÀI LIỆU THAM KHẢO.........................................................................................68PHỤ LỤC....................................................................................................................69

Học viện công nghệ bưu chính viễn thông ii

Page 3: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Danh Mục Hình Vẽ

DANH MỤC HÌNH VẼ

Hình 1.1: MPLS và mô hình tham chiếu OSI............................................................................1Hình 1.2: So sánh giữa chuyển tiếp IP và chuyển tiếp MPLS....................................................2Hình 1.3: Miền MPLS................................................................................................................3Hình 1.4: Đường lên và đường xuống LSR................................................................................3Hình 1.5: Lớp chuyển tiếp tương đương trong MPLS................................................................4Hình 1.6: Ngăn xếp nhãn............................................................................................................4Hình 1.7: Đường chuyển mạch nhãn LSP..................................................................................5Hình 1.8: Phân cấp LSP trong MPLS.........................................................................................6Hình 1.9: Gói IP đi qua mạng MPLS..........................................................................................6Hình 1.10: Định dạng một thực thể trong ngăn xếp nhãn MPLS..............................................7Hình 1.11: Tiêu đề shim được đệm vào giữa tiêu đề lớp 2 và lớp 3.........................................8Hình 1.12: Nhãn trong chế độ ATM...........................................................................................8Hình 1.13: Đóng gói có nhãn trên liên kết ATM........................................................................9Hình 1.14: Cấu trúc của LER và transit-LSR...........................................................................10Hình 1.15: Một NHLFE............................................................................................................11Hình 1.16: Bên trong mặt phẳng chuyển tiếp MPLS................................................................13Hình 1.17: Định tuyến ràng buộc..............................................................................................14Hình 1.18: Phân phối nhãn không cần yêu cầu........................................................................15Hình 1.19: Phân phối nhãn gắn kết Nhãn-FEC........................................................................16Hình 1.20: Duy trì nhãn tự do...................................................................................................16Hình 1.21: Duy trì nhãn bảo thủ...............................................................................................17Hình 1.22: Điều khiển độc lập..................................................................................................17Hình 1.23: Điều khiển tuần tự..................................................................................................18Hình 1.24: Vùng hoạt động của LDP.......................................................................................18Hình 1.25: Trao đổi thông điệp LDP........................................................................................19Hình 1.26: LDP Hearder...........................................................................................................20Hình 1.28: LDP chế độ điều khiển theo yêu cầu......................................................................22Hình 1.29: Thiết lập LSP và CR-LD........................................................................................24Hình 1.30: Thiết lập LSP với RSVP-TE...................................................................................27Hình 1.31: Nội dung bản tin BGP Update................................................................................29Hình 1.32: BGP phân phối nhãn qua nhiều Autonomous System............................................30Hình 2.1: Nhiều luồng cho mỗi lớp lưu lượng..........................................................................35Hình 2.2: Hàng đợi CQ.............................................................................................................35Hình 2.3: Hàng đợi PQ.............................................................................................................36Hình 2.4: Giải thuật thùng dò...................................................................................................36Hình 2.5: Giải thuật thùng token..............................................................................................37Hình 2.6: Mô hình xếp chồng...................................................................................................38Hình 2.7: Băng thông khả dụng ứng với từng mức ưu tiên......................................................43Hình 2.8: Xem xét các ràng buộc khống chế............................................................................45Hình 2.9: Xem xét tài nguyên khả dụng...................................................................................46Hình 2.10: Chọn đường tốt nhất...............................................................................................46Hình 2.11: Mô hình MAKAM..................................................................................................49Hình 2.12: Mô hình Haskin......................................................................................................50Hình 2.13: Mô hình Shortest-Dynamic.....................................................................................51Hình 2.14: Mô hình Simple_Dynamic......................................................................................51Hình 3.1: Tổng quan về NS dưới góc độ người dùng...............................................................54Hình 3.2: Luồng các sự kiện cho file Tcl chạy trong NS.........................................................55Hình 3.3: Kiến trúc của NS-2...................................................................................................56

Học viện công nghệ bưu chính viễn thông i

Page 4: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Danh Mục Hình Vẽ

Hình 3.4: C++ và OTcl: Sự đối ngẫu........................................................................................56Hình 3.5: TclCL hoạt động như liên kết giữa A và B...............................................................57Hình 3.6: Mô hình mạng..........................................................................................................57Hình 3.7: Lịch trình mô phỏng.................................................................................................59Hình 3.8: Đồ thị Xgraph...........................................................................................................59Hình 3.9: Báo hiệu thiết lập đường làm việc và bảo vệ............................................................60Hình 3.10: Sử đường làm việc ER=1_3_5_7_9.......................................................................61Hình 3.11: Phát hiện lỗi............................................................................................................61Hình 3.12: Chuyển sang đường bảo vệ.....................................................................................62Hình 3.13: Lỗi đã được khôi phục............................................................................................62Hình 3.14: Chuyển lưu lượng trở lại đường làm việc...............................................................63Hình 3.15: Kết thúc quá trình truyền gói..................................................................................63

Học viện công nghệ bưu chính viễn thông ii

Page 5: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Thuật Ngữ Viết Tắt

THUẬT NGỮ VIẾT TẮT

ARP Address Resolution Protocol Giao thức phân giải địa chỉ

ATM Asynchronous Transfer Mode Truyền dẫn không đồng bộ

BGP Border Gateway Protocol Giao thức cổng đường biên

CLIP Classical IP IP trên ATM

CR Constrained Routing Định tuyến cưỡng bức

CR-LDP Constrained Routing - LDP Định tuyến cưỡng bức - LDP

CR-LSP Constrained Routing - LSP Định tuyến cưỡng bức - LSP

CSPF Constrained Shortest Path First SPF cưỡng bức

DiffServ Differentiated Service Các dịch vụ được phân biệt

ER Explicit Routing Định tuyến hiện

FEC Fowarding Equivalent Class Lớp chuyển tiếp tương đương

FR Frame Relay Chuyển tiếp khung

GMPLS Generalized Multiprotocol Label Switching

Chuyển mạch nhãn đa giao thức tổng quát.

IETF Internet Engineering Task Force Nhóm tác vụ kỹ thuật Internet

IP Internet Protocol Giao thức Internet

IPOA IP over ATM IP trên ATM

LAN Local Area Network Mạng cục bộ

LANE LAN Emulation Mô phỏng LAN

LDP Label Distribution Protocol Giao thức phân bổ nhãn

LER Label Edge Router Bộ định tuyến biên nhãn

LIB Label Information Base Cơ sở thông tin nhãn

LIS Logical IP Subnet Mạng con IP logic

LSFT Label Switching Forwarding Table Bảng chuyển tiếp nhãn

LSP Label Switched Path Đường dẫn chuyển mạch nhãn

LSR Label Switch Router Bộ định tuyến chuyển mạch nhãn

Học viện công nghệ bưu chính viễn thông i

Page 6: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Thuật Ngữ Viết Tắt

MG Media Gateway Cổng đa phương tiện

MPLS Multiprotocol Label Switching Chuyển mạch nhãn đa giao thức

NHRP Next Hop Resolution Protocol Giao thức phân giải chặng kế tiếp

OSPF Open Shortest Path First Giao thức đường đi ngắn nhất đầu tiên

PPP Point to Point Protocol Giao thức điểm - điểm

PSTN Public Switch Telephone Network Mạng thoại chuyển mạch công cộng

QoS Quality of Service Chất lượng dịch vụ

RESV Resevation Bản tin dành trước

RFC Request For Comment Yêu cầu ý kiến

RSVP Resource Resevation Protocol Giao thức dành trước tài nguyên

SG Signaling Gateway Cổng báo hiệu

SLA Service Level Agreement Thoả thuận mức dịch vụ

SNMP Simple Network Management Protocol

Giao thức quản lý mạng đơn

SONET Synchronous Optical Network Mạng truyền dẫn quang đổng bộ

SPF Shortest Path First Đường đi ngắn nhất đầu tiên

STM Synchronous Transmission Mode Chế độ truyền dẫn đồng bộ

SVC Signaling Virtual Circuit Kênh ảo báo hiệu

TCP Transission Control Protocol Giao thức điều khiển truyền dẫn

TGW Traffic Gateway Cổng lưu lượng

TLV Type-Leng-Value Kiểu-Chiều dài-Giá trị

ToS Type of Service Kiểu dịch vụ

TTL Time To Live Thời gian sống

UDP User Datagram Protocol Giao thức lược đồ dữ liệu

VC Virtual Circuit Kênh ảo

VCI Virtual Circuit Identifier Nhận dạng kênh ảo

VNPT Vietnam Post&Telecommunications Tổng công ty BCVT Việt Nam

Học viện công nghệ bưu chính viễn thông ii

Page 7: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Thuật Ngữ Viết Tắt

VP Virtual Path Đường ảo

VPI Virtual Path Identifier Nhận dạng đường ảo

VPN Virtual Private Network Mạng riêng ảo

WAN Wide Area Network Mạng diện rộng

WFQ Weighted Fair Queuing Hàng đợi công bằng tải trọng

Học viện công nghệ bưu chính viễn thông iii

Page 8: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Mở Đầu

MỞ ĐẦ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ợ

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.

Những 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. Tập đoàn bưu chính viễn thông Việt Nam

đã lựa chọn IP/MPLS làm công nghệ cho lớp truyề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. Đây cũng là đối tượng nghiên cứu chính của đồ án tốt

nghiệp này.

Đề tài được tổ chức thành 3 chương với các nội dung chính như sau:

Chương 1- Tổng quan về chuyển mạch nhãn đa giao thức: 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, các kỹ thuật định tuyến được hỗ trợ bởi MPLS, 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 2- Kỹ thuật lưu lượng trong MPLS và cơ chế bảo vệ khôi phục đường:

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 của MPLS. Nội dung tập trung vào vấn đề ánh xạ lưu

lượng lên topology vật lý, tức là tính toán đường đi tốt nhất qua mạng của lưu lượng

sao cho mạng hoạt động hiệu quả và tin cậy nhất. 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 3- Xây dựng chương trình mô phỏng MPLS-TE: Trình bày kết quả

thực hiện mô phỏng MPLS-TE trên máy tính với phần mềm NS-2 để làm rõ cơ chế

thực hiện kỹ thuật lưu lượng của MPLS. Mô hình bảo vệ khôi phục lưu lượng của

MPLS cũng được mô phỏng trong phần này.

Học viện công nghệ bưu chính viễn thông 1

Page 9: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Mở Đầu

Em rất mong nhận được các ý kiến đóng góp của các thầy cô để hoàn thành

thêm kiến thức trong lĩnh vực này. Qua đây, em xin gửi lời cám ơn đến TS Nguyễn

Tiến Ban, giáo viên hướng dẫn đã giúp đỡ em trong suốt quá trình thực hiện đồ án này.

Hà nội, tháng 11 năm 2008

Sinh viên

Đỗ Tiến Thành

Học viện công nghệ bưu chính viễn thông 2

Page 10: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương I

CHƯƠNG I

TỔNG QUAN VỀ CHUYỂN MẠCH NHÃN ĐA GIAO THỨC

1.1 Giới thiệu

MPLS là viết tắt của “Muti-Protocol Label Switching”. Thuật ngữ Muti-Protocol

để nhấn mạnh rằng công nghệ này áp dụng cho được tất cả các giao thức lớp mạng chứ

không phải chỉ riêng cho IP. MPLS hoạt động tốt trên bất kì các giao thức lớp liên kết

nào. Đây là một công nghệ lai kết hợp những đặc tính tốt nhất của định tuyến lớp 3

(Layer 3 routing) và chuyển mạch lớp 2 (Layer 2 swithching) (hình 1.1).

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 đề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 bên trong mạng biên(egde), ví

dụ như các tổng đài nội hay, truy nhập….

Trong mạng gói IP, tính thông minh càng đưa ra biên thì mạng càng hoạt động

tốt. Tất cả các bộ định tuyến đề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 bộ định tuyến ở biên thực hiện định tuyến và gắn

nhãn (label) cho gói. Còn các bộ định tuyến ở 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.

Hình 1.1: MPLS và mô hình tham chiếu OSI

Học viện công nghệ bưu chính viễn thông 1

Page 11: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương I

MPLS đượ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 là lớp 2,5 (hình 1.2).

Nguyên lý chung của MPLS là tất cả các gọi IP sẽ được gắn nhãn (label) và

chuyển tiếp theo một đường dẫn LSP (Label Switch Path). Các bộ định tuyến 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 tiêu đề IP.

Hình 1.2: So sánh giữa chuyển tiếp IP và chuyển tiếp MPLS

1.2 Các khái niệm cơ bản trong MPLS

1.2.1 Miền MPLS

RFC 3031 mô tả miền MPLS là “một tập các nút trong 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ị.

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

(thường được gọi tắt là LSR). Các nút ở biên được gọi là bộ định tuyến biên nhãn LSR

(Label Edge Router) (hình 1.3).

Học viện công nghệ bưu chính viễn thông 2

Page 12: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương I

Hình 1.3: Miền MPLS

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 (ergress-LER). Lưu ý là các thuật ngữ này chỉ đượ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 tùy theo các luồng lưu lượng đang xét như hình 1.4.

A là đường lên của B B là đường xuống của A C là đường xuống của B

Và là đường lên của C

Chiều luồng gói

Hình 1.4: Đường lên và đường xuống LSR

Thuật ngữ bộ định tuyến đường lên LSR (LSR) và bộ định tuyến đường xuống

LSR (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 được 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.

1.2.2 Lớp chuyển tiếp tương đương

Lớp chuyển tiếp tương đương FEC (Forwarding Equitvalence Class) là một tậ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 tin 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 tiêu đề lớp mạng. Hình 1.5 cho thấy các xử lý này.

Học viện công nghệ bưu chính viễn thông

Label Switching

Router(core LSR)

Label Edge Router (LER)

3

Page 13: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương I

Hình 1.5: Lớp chuyển tiếp tương đương trong MPLS

1.2.3 Nhãn và ngăn xếp 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 theo ý 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à 2^20 (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à ngăn xếp nhãn (label ngăn xếp). Ngăn xếp nhãn là một tập hợp gồm một hoặc

nhiều thực thể nhãn tổ chức theo nguyên tắc LIFO (hình 1.6). Tại mỗi chặng trong mạng

chỉ xử lý nhãn hiện hành trên đỉnh ngăn xếp. Chính nhãn này sẽ được LSR sử dụng để

chuyển tiếp gói.

Thực thể ngăn xếp

Thực thể ngăn xếp

Thực thể ngăn xếp

Thực thể ngăn xếp

Hình 1.6: Ngăn xếp nhãn

Nếu gói tin chưa có nhãn thì ngăn xếp nhãn là rỗng (độ sâu của ngăn xếp nhãn

bằng 0). Nếu ngăn xếp có chiều sâu là d thì mức 1 sẽ là đáy ngăn xếp (bit S trong thực

Học viện công nghệ bưu chính viễn thông

Mức d

Mức d-1

Mức 2

Mức 1

Đỉnh ngăn xếp

Đáy ngăn xếp

4

Page 14: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương I

thể nhãn đặt lên 1) và mức d sẽ là đỉnh của ngăn xếp. Một thực thể nhãn có thể được đặt

thêm vào (push) hoặc lấy ra (pop) khỏi ngăn xếp.

1.2.4 Hoán đổi nhãn

Hoán đổi nhãn (Label Swapping) 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 ra nhãn trên đỉnh ngăn xếp và dùng ánh xạ ILM

(Incoming Label Map) để ánh xạ nhãn tới một thực thể 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 ngăn xếp nhãn. Rồi nó mã hóa ngăn xếp

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 tiêu đề 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

Đường chuyển mạch nhãn LSP (Label Switched Path) là một đường nối giữa bộ

định tuyến lối vào và bộ định tuyến lối 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 dẫn của một LSP qua mạng được định nghĩa bởi sự

chuyển đổi giá trị các nhãn ở các LSR dọc theo LSP bằng cách dùng thủ tục hoán đổi

nhãn (hình 1.7). Khái niệm LSP tương tự như khái niệm mạch ảo (VC) trong ATM.

Hình 1.7: Đường chuyển mạch nhãn LSP

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à các VCI để tạo ra các phân cấp kênh ảo (VC) nằm trong đường ảo (VP). Tuy nhiên

ATM chỉ 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 thực thể nhãn trong ngăn xếp nhãn. Về lý thuyết,

giới hạn số lượng nhãn trong ngăn xếp 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ọc viện công nghệ bưu chính viễn thông 5

Page 15: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương I

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 tin IP đi qua miền

MPLS (hình 1.9). Gói tin IP khi đi từ ngoài mạng vào trong miền MPLS được bộ định

tuyến A đóng vai trò là một ingress-LER sẽ gán nhãn có giá trị là 6 cho gói IP rồi

chuyển tiếp đến bộ định tuyến B. Bộ định tuyến B dựa vào bảng hoán đổi nhãn để kiểm

tra nhãn của gói tin. Gói tin thay đổi giá trị nhãn mới là 3 và chuyển tiếp tới bộ định

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

Hình 1.9: Gói IP đi qua mạng MPLS

Bộ định tuyến D đóng vai trò egress-LSR sẽ kiểm tra trong bảng hoán đổi nhãn

và gỡ bỏ nhã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

Học viện công nghệ bưu chính viễn thông 6

Page 16: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương I

miền MPLS. Với kiểu làm việc này thì các LSR trung gian như bộ định tuyến B và C sẽ

không phải thực hiện kiểm tra toàn bộ tiêu đề IP của gói tin mà nó chỉ việc kiểm tra các

giá trị của nhãn so với định tuyến IP truyền thống. Đường đi từ bộ định tuyến A đến bộ

định tuyến D được gọi là đường chuyển mạch nhãn LSP.

1.2.7 Mã hóa ngăn xếp nhãn

Khi nhãn được gắn lên gói, bản thân giá trị nhãn 20 bít sẽ được mã hóa 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 thực thể nhãn. Hình 1.10 minh họa định dạng thực thể nhãn trong ngăn xếp nhãn.

Hình 1.10: Định dạng một thực thể trong ngăn xếp nhãn MPLS

Nhóm 32 bít ở hình trên là một thực thể trong ngăn xếp 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ả thực thể 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ề thực thể 32 bit trong ngăn xếp 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 bít, 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 tin 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 ngăn xếp nhãn. Khi một nhãn nằm ở đáy ngăn

xếp nhãn thì bít 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 cuả ngăn xếp nhãn nằm ở đâu.

TTL-Gồm 8 bit, thường là copy trực tiếp từ trường TTL của tiêu đề IP, được

giảm đi 1 qua mỗi chặng để chặn lặp định tuyến giống như IP. Tuy nhiên, các

bit TTL cũng có thể được đặt khác 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.

Học viện công nghệ bưu chính viễn thông 7

Page 17: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương I

MPLS có thể hoạt động ở các chế độ: chế độ khung và chế độ tế bào.

1.2.7.1 Chế độ khung

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 tiêu đề của khung có thể mang nhãn. Vì vậy, ngăn xếp nhãn sẽ được chứa

trong tiêu đề đệm (shim header). Tiêu đề shim được đệm vào giữa tiêu đề lớp liên kết và

tiêu đề lớp mạng, như trong hình 1.11. Đỉnh ngăn xếp nằm liền sau tiêu đề lớp 2 và đáy

ngăn xếp nằm liền trước tiêu đề lớp mạng.

Hình 1.11: Tiêu đề shim được đệm vào giữa tiêu đề lớp 2 và lớp 3

Bộ định tuyến gửi khung phải có cách để báo cho bộ định tuyến nhận biết rằng

khung này có chứa tiêu đề shim, 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ị khung đ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 tiêu đề shim bằng giá trị 0x8281 trong trường PPP Protocol.

1.2.7.2 Chế độ tế bào

Hình 1.12: Nhãn trong chế độ ATM

Chế độ tế bào đượ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ã hóa trong trường

gộp VPI/VCI, trong VPI hoặc VCI của tiêu đề tế bào ATM (RFC 3035).

Tế bào ATM gồm 5 byte tiêu đề và 48 byte trọng tải. Để 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

Học viện công nghệ bưu chính viễn thông 8

Page 18: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương I

thành nhiều phần nhỏ hơn, việc này gọi là phân đoạn (frafmentation). 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 tiêu đề 5 byte để tạo ra một

tế bào ATM.

Hình 1.13: Đóng gói có nhãn trên liên kết ATM

Khi đóng gói có nhãn MPLS trên ATM, toàn bộ ngăn xếp nhãn được đặt trong

AAL 5PDU. Giá trị thực sự của nhãn đỉnh được đặt trong trường VPI/VCI, hoặc đặt

trong ngăn xếp nhãn phải chứa giá trị 0 (coi như thực thể “giữ chỗ”) và được bỏ qua khi

nhận. Thực thể đỉnh do các nhãn phải chứa cả ở trong AAL5 PDU và tiêu đề ATM là để

mở rộng độ sâu ngăn xếp nhãn. Khi các tế bào ATM đi đến cuối LSP, nó sẽ được tái

hợp lại. Nếu có nhiều nhãn trong ngăn xếp nhãn, AAL5 PDU sẽ bị 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.

1.3 Cấu trúc trường chức năng MPLS

1.3.1 Kiến trúc một nút MPLS

Hình 1.14 minh họa mặt phẳng điều khiển và chuyển tiếp của LSR và LER. Mặt

phẳng điều khiển có chức năng định tuyến IP dùng để giao tiếp với các LSR, LER khác

hoặc các bộ định tuyến IP thông thường bằng các giao thức định tuyến IP. Kết quả là

một cơ sở thông tin định tuyến RIB (Routing Information Base) được tạo lập gồm các

thông tin miêu tả các tuyến khả thi để tìm đến các tiền tố địa chỉ IP. LER sẽ sử dụng các

thông tin này để xây dựng cơ sở thông tin chuyển tiếp FIB (Forwarding Information

Base) trong mặt phẳng chuyển tiếp

Mặt phẳng điểu khiển còn chức năng báo hiệu MPLS dùng để giao tiếp với các

LSR khác bằng một giao thức phân phối nhãn. Kết quả một cơ sở thông tin nhãn LIB

(Label Informationn Base) gồm các thông tin liên quan đến các gán kết nhãn đã được

Học viện công nghệ bưu chính viễn thông 9

Page 19: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương I

thương lượng với các bộ định tuyến MPLS khác. Thành phần báo hiệu MPLS nhận

thông tin từ chức năng định tuyến IP và LIB để xây dựng cơ sở thông tin chuyển tiếp

LFIB (Label Forwarding Information Base) trong mặt phẳng chuyển tiếp. Một LER có

thể có chuyển tiếp các gói tin IP, gắn nhãn vào gói (label push), hoặc gỡ nhãn ra khỏi

gói (label pop), trong khi đó một transit-LSR chỉ có khả năng chuyển tiếp gói có nhãn

thêm hoặc bỏ bớt nhãn.

Hình 1.14: Cấu trúc của LER và transit-LSR

1.3.2 Mặt phẳng chuyển tiếp

Mặt phẳng chuyển tiếp MPLS chịu trách nhiệm chuyển tiếp dữ liệu của người

dùng. Nó sử dụng LFIB để thực hiện chuyển tiếp các gói có gắn nhãn căn cứ vào giá trị

của nhãn nằm trên đỉnh ngăn xếp nhãn.

1.3.2.1 Cơ sở thông tin chuyển tiếp nhãn LFIB

Trong mạng IP, quyết định chuyển tiếp gói được xác lập bằng cách thực hiện tra

cứu địa chỉ đích trong bảng FIB để xác định chặng kế hoặc giao diện ra. Trong mạng

MPLS, mỗi LSR duy trì một bảng LFIB riêng rẽ và tách biệt với FIB. Bảng LFIB có hai

loại thực thể là ILM (incoming label map) và FTN (FEC-to-NHLFE).

NHLFE (next hop label forwarding entry) là thực thể con chứa các trường như

địa chỉ chặng kế, các tác vụ ngăn xếp nhãn, giao diện ra và thông tin tiêu đề lớp 2. ILM

ánh xạ một nhãn đến một hoặc nhiều NHLFE. Nhãn trong gói đến sẽ dùng để chọn ra

một thực thể ILM cụ thể nhằm xác dịnh NHLFE. Còn FTN ánh xạ mỗi FEC vào môt

hoặc nhiều NHLFE. Nhờ các thực thể FTN, gói chưa có nhãn được chuyển thành gói có

nhãn.

Học viện công nghệ bưu chính viễn thông 10

Page 20: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương I

Như vậy, khi một gói không nhãn thuộc một FEC đi vào miền MPLS, ingress-

LER sẽ sử dụng một thực thể LFIB loại FTN để chuyển gói không nhãn thành gói có

nhãn. Sau đó, tại các transit-LSR sử dụng một thực thể LFIB loại ILM để hoán đổi nhãn

vào nhãn ra. Cuối cùng, tại engress-LER sử dụng một thực thể LFIB loại ILM để gỡ bỏ

nhãn đến và chuyển tiếp gói không nhãn đến bộ định tuyến kế tiếp.

1.3.2.2 Thuật toán chuyển tiếp nhãn

Các nút MPLS sử dụng giá trị nhãn trong các gói đến làm chỉ mục để tra bảng

LFIB. Khi tìm thấy thực thể tương ứng với nhãn đến, nút MPLS thay thế nhãn trong gói

bằng nhãn ra và gửi nó đi qua giao diện ra để đến chặng kế được đặc tả trong thực thể

con NHLFE. Nếu thực thể con có chỉ định hàng đợi ra, nút MPLS sẽ đặt gói trên hàng

đợi đã chỉ định. Trong trường hợp nút MPLS duy trì một LFIB riêng cho mỗi giao diện,

nó sẽ dùng LFIB của giao diện mà gói đến để tra cứu chuyển tiếp gói.

Nút MPLS có thể lấy định vị được các thông tin chuyển tiếp cần thiết trong LFIB

chỉ trong một lần truy xuất bộ nhớ, tốc độ thực thi rất cao nhờ các chip ASIC.

1.3.2.3 NHLFE

NHLFE (Next Hop Label Forwarding Entry) là thực thể con của ILM hoặc FTN,

nó chứa các thông tin sau:

Chặng ở chặng kế tiếp của gói.

Tác vụ sẽ được tiến hành trên ngăn xếp nhãn của gói như sau:

1) Swap: Thay nhãn ở đỉnh ngăn xếp nhãn bằng một nhãn mới được

chỉ định.

2) Pop: Bóc một nhãn ra khỏi ngăn xếp.

3) Push: Chồng thêm một nhãn vào trong ngăn xếp nhãn.

Nhãn

vào

Cổng

vào

Đích Hoạt động Nhãn ra LSP ID Cổng ra

ID vào Giá trị

0.54 3 138.43 Thay thế 0.81 1 10 2

Hình 1.15: Một NHLFE

Ngoài ra, NHLFE cũng có thể chứa những thông tin sau:

Đóng gói lớp liên kết dữ liệu để sử dụng khi truyền gói

Học viện công nghệ bưu chính viễn thông 11

Page 21: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương I

Cách thức mã hóa ngăn xếp nhãn khi truyền gói.

Bất kì các thông tin khác cần thiết để xử lí gói một cách chính xác.

1.3.3 Mặt phẳng điều khiển

Nhiệm vụ của các giao thức trong mặt phẳng điều khiển là phân phối các thông

tin cần thiết cho mỗi LER và LSR để cấu hình bảng FIB và LFIB. Trong một giao thức

định tuyến sử dụng báo hiệu, bảng thông tin định tuyến RIB hoạt động kết hợp với một

giao thức báo hiệu MPLS sử dụng bảng thông tin nhãn LIB để phân phối các nhãn. Việc

phân tách mặt phẳng điều khiển và mặt phẳng chuyến tiếp cho phép cài đặt một giao

thức điều khiển MPLS trên một ATM switch.

Tại sao MPLS cần giao thức báo hiệu, trong khi các bộ định tuyến IP cổ điển chỉ

cần định tuyến IP? Một lí do quan trọng phải dùng giao thức báo hiệu MPLS kết hợp

với một giao thức định tuyến xuất phát từ sự cần thiết phải thực hiện định tuyến ràng

buộc của đường chuyển mạch nhãn MPLS.

1.4 Hoạt động chuyển tiếp MPLS

1.4.1 Hoạt động trong mặt phẳng chuyển tiếp

FEC là một tập con các gói căn cứ theo một số thông tin trong tiêu đề IP được

dùng bởi FIB. Một FEC được dùng thường dựa theo luật “longest prefix match” trên địa

chỉ IP đích. Ví dụ: các địa chỉ IP so trùng với 16 bit đầu có dạng “a.b.x.x” (trong đó x

đại diện cho giá trị hợp lệ bất kì) được biểu diễn là “a.b/16” cho thực thể FEC đầu tiên

trong bảng FIB. FEC còn có thể căn cứ bổ sung theo các trường khác trong tiêu đề IP

như ToS hay Diffserv. FIB sử dụng FEC để xác định ra giao tiếp đi đến chặng kế cho

các gói IP, cách thực hiện giống như các bộ định tuyến cổ điển.

Cho các ví dụ từng hoạt động LFIB ở hình 1.16. Phần ILM của LFIB thao tác

trên một gói có nhãn và ánh xạ một nhãn vào (incoming label) tới một tập các thực thể

NHLFE. ILM được thể hiện trong hình bởi các cột IN-IF và IN-LBL, nhưng cũng có thể

là một bảng riêng rẽ cho môt giao tiếp. FTN của FIB ánh xạ một FEC tới một tập hợp

gồm một hoặc nhiều NHLFE. Như ví dụ trong hình, nhãn A được gắn (push) lên các gói

IP thuộc FEC “d.e/16”. Lưu ý là ILM hoặc FTN có thể ánh xạ tới nhiều NHLFE, chẳng

hạn để dùng trong cân bằng tải.

Học viện công nghệ bưu chính viễn thông 12

Page 22: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương I

.

Hình 1.16: Bên trong mặt phẳng chuyển tiếp MPLS

1.4.2 Gỡ nhãn ở chặng áp cuối PHP

Một tối ưu hóa quan trọng mà MPLS hỗ trợ là tránh việc tra cứu nhãn (label

loopkup) phải xử lí ở egress-LER trong trường hợp một gói đi lên trên một LSP mà yêu

cầu tra cứu IP (IP Lookup) tiếp ngay sau đó. Ở trong hình trên 1.16, một gói đến có

nhãn A được gỡ nhãn (pop) và chuyển sang FIB để tra cứu tiếp trên tiêu đề IP.Để tránh

việc xử lý phát sinh thêm này, MPLS định nghĩa một tiến trình gọi là gỡ nhãn trong

chặng áp cuối PHP (penultimate hop pop), trong đó bộ định tuyến áp cuối trên LSP sẽ

gỡ nhãn thay vì egress-LER phải làm việc đó. Nhờ vậy cắt giảm được việc xử lý ở các

bộ định tuyến cuối cùng trên LSP.

1.5 Đị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 FEC và chọn chặng kế tiếp 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.

1.5.1 Định tuyến ràng buộc

Đị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 tuyến không chỉ dựa trên topolgy 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

Học viện công nghệ bưu chính viễn thông 13

Page 23: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương I

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ố chặng và băng thông.

Để đường được chọn có số chặng nhỏ nhất nhưng phải đảm bảo băng thông khả

dụng trên tất 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 1.17: Đị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 1.17. Giả sử rằng định tuyến ràng buộc sử dụng số chặng (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 đều hướng

đến cùng một lối vào bộ định tuyến. 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à R8-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 (1mb), nên lưu lượng 600 kbps chiếm 60% băng thông.

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 600 kbps 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 chặng so với đường cũ.

Vì 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 offline và online. Kiểu online cho phép các bộ

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

Học viện công nghệ bưu chính viễn thông 14

Page 24: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương I

1.5.2 Định tuyến tường minh

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

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 số 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.

1.6 Các chế độ báo hiệu MPLS

1.6.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 và phân phối theo yêu cầu.

1.6.1.1 Phân phối nhãn không cần yêu cầu

Bộ định tuyến đường xuống LSR phân phối các gán kết nhãn đến bộ định tuyến

đường lên LSR mà không cần có yêu cầu thực hiện việc liên kết nhãn. Nếu bộ định

tuyến đường xuống chính là chặng kế đối với định tuyến IP cho một FEC cụ thể thì bộ

định tuyến đường lên 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 bộ định tuyến đường xuống.

Hình 1.18: Phân phối nhãn không cần yêu cầu

1.6.1.2 Phân phối nhãn theo yêu cầu

Bộ định tuyến đường lên 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ì bộ định tuyến đường xuống mới phân phối. Trong phương thức này,

Học viện công nghệ bưu chính viễn thông 15

Page 25: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương I

đường xuống của bộ định tuyến không nhất thiết phải là chặng 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 1.19: Phân phối nhãn gắn kết Nhãn-FEC

1.6.2 Chế độ duy trì nhãn

Một bộ định tuyến đường lên LSR có thể nhận các gán kết cho cùng một FEC X

từ nhiều bộ định tuyến đường xuống. 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ủ (consvervative

label retention).

1.6.2.1 Duy trì nhãn tự do

Phía bộ định tuyến đường lên (LSR1) lưu giữ tất cả các gán kết nhãn nhận được,

bất chấp việc bộ định tuyến đường xuống có phải là chặng kế đối với định tuyến IP hay

không (hình 1.20). Ư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 lặp định tuyến tạm thời khi thay đổi

định tuyến.

Hình 1.20: Duy trì nhãn tự do

Học viện công nghệ bưu chính viễn thông 16

Page 26: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương I

1.6.2.2 Duy trì nhãn bảo thủ

Bộ định tuyến đường lên 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ừ bộ định tuyến đường xuống đang là chặng kế hiện hành (hình 1.21).

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).

Hình 1.21: Duy trì nhãn bảo thủ

1.6.3 Chế độ điều khiển LSP

Khi một FEC ứng với một tiền tố đị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:

1.6.3.1 Điều khiển độc lập

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

peer). Điều này tương tự như định tuyến IP thông thường, ở đó mỗi bộ định tuyến 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

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 1.22: Điều khiển độc lập

Học viện công nghệ bưu chính viễn thông 17

Page 27: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương I

1.6.3.2 Điều khiển tuần tự

Một bộ định tuyến đường xuống 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ừ bộ định tuyến hướng đường xuống của nó (hình 1.23). Việc thiết lập LSP tuần tự

bắt đầu ở LSR lối ra và diễ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ự cũng cấp phương tiện tránh lặp và đạt

được mức độ thu gom chắc chắn hơn.

Hình 1.23: Điều khiển tuần tự

1.7 Các giao thức hoạt đông

1.7.1 Giao thức LDP

LDP (label distribution protocol) đượ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. 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 1.24)

Hình 1.24: Vùng hoạt động của LDP

1.7.1.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 và thông báo. 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.

Học viện công nghệ bưu chính viễn thông 18

Page 28: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương I

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 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ó 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 1.25: 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

Học viện công nghệ bưu chính viễn thông 19

Page 29: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương I

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.

1.7.1.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 điệp 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.

Mỗi PDU của LDP bao gồm một tiêu đề LDP và theo sau là một hoặc nhiều

thông điệp LDP. Phần tiêu đề LDP có dạng như hình 1.26:

Hình 1.26: LDP Hearder

PDU 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

(bộ định tuyến ID) được gán cho LSR. Hai octet sau xác định một không gian nhãn bên

trong LSR. Hai octet này được set về 0 cho không gian nhãn “per-platform”.

Tất cả các thông điệp LDP có cùng format như hình 1.27:

Hình 1.27: Format thông điệp LDP

Bit U: bit unknown, luôn là 0 vì đặc tả LDP không có kiểu bản tin Unknown.

Học viện công nghệ bưu chính viễn thông 20

Page 30: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương I

Message 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).

Messafe 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 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.

1.7.1.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 đó.

Cả 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 nếu phiên kết thúc.

o 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.

o Label Mapping : Được sử dụng để quảng bá gán kết giữa FEC và

nhãn.

o 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 sử dụng trong trường hợp :

Khi có sự thay đổi trong bảng định tuyến (thay đổi tiền tố địa chỉ), lúc

đó LSR không còn nhận ra FEC này nữa.

Học viện công nghệ bưu chính viễn thông 21

Page 31: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương I

Thay đổi trong cấu hình LSR làm tạm dừng việc chuyển nhãn các gói

trong FEC đó.

o Label Release : Được sử dụng bởi LSR khi nhận được chuyển đổi

nhãn mà nó không cần thiết nữa. Điều đó thường xảy ra khi LSR giải phóng

nhận thấy nút tiếp theo cho FEC không phải là LSR quảng bá liên kết

nhãn/FEC đó.

o 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 LSR kế cận phía đường xuống bằng bản tin

này.

o 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.

1.7.1.4 LDP điều khiển độc lập và phân phối theo yêu cầu

Ví dụ dưới đây (hình 1.28) minh họa việc sử dụng bản tin Label Request và

Label Mapping.

Trong các chế độ công bố nhãn theo yêu cầu và điều khiển độ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ừ bộ định

tuyến lối vào R1 qua R2 rồi đến bộ định tuyến lối ra R3 cho một FEC có tiền tố

“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ừ chặng

kế của nó 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 đường xuống 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à LFB của R2, R3 có

các thực thể gắn kết nhãn hình thành nên đường chuyển mạch nhãn LSP.

Học viện công nghệ bưu chính viễn thông 22

Page 32: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương I

Hình 1.28: LDP chế độ điều khiển 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 bộ định tuyến 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

khiển tuần tự, ánh xạ nhãn diễn ra đầu tiên ở bộ định tuyến lối ra, rồi sau đó lần lượt

ngược về đến bộ định tuyến lối vào.

1.7.2 Giao thức CR-LDP

CR-LDP (constrain-based routing 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 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.

1.7.2.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 :

Tuyến tường minh ER

Chặng tường minh ER-Hop

Các tham số lưu lượng

Sự lấn chiếm (Preemptions)

Nhận diện LSP (LSPID)

Gim 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ư:

o Báo hiệu đường (Path Signalling)

o Định nghĩa các tham số lưu lượng

o Quản lý LSP ( quyền ưu tiên, cam kết quản trị….)

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, nếu đường được yêu cầu thỏa mãn các ràng buộc (ví dụ như đủ băng thông

Học viện công nghệ bưu chính viễn thông 23

Page 33: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương I

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.

1.7.2.2 Thiết lập một CR-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. ER được chứa trong các bản tin Label.

Xét ví dụ trong hình 1.29. 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 trừu tượng là LSR B, LSR C, LSR D. Mỗi nút được đại diện bằng một địa chỉ IP

tiền tố. LSR A sau đó được xây dựng một bản tin Label Request có chứa đối tượng ER

mới đã tạo. Khi bản tin được tạo xong, LSR A sẽ xem xét nút trừu tượng đầu tiên trong

đối tượng ER là LSR B, tìm kết nối đến LSR B và gửi bản tin Label Request trên kết

nối. Khu LSR B nhận bản tin Label Request, LSR B nhận thấy nó là nút trừu tượng đầu

tiên trong đối tượng ER. LSR B sau đó tìm kiếm nút trừu tượng kế tiếp là LSR C và tìm

kết nối đến LSR C. Sau đó LSR B thay đổi đối tượng ER và gửi bản tin Label Request

đến LSR C, lúc này đối tượng ER chỉ gồm LSR C và LSR D. Việc điều khiển bản tin

này tại LSR cũng tương tự như ở LSR B.

Hình 1.29: Thiết lập LSP và CR-LD

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 nên một bản tin Label Mapping và gửi nó đến LSR C.

Bản tin này để 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ữ.

Học viện công nghệ bưu chính viễn thông 24

Page 34: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương I

1.7.2.3 Tiến trình dự trữ tài nguyên

. Khi một nút CD-LDP nhận được một bản tin Label Request, nó gọi Admission

Control để kiểm tra xem nút này có các tài nguyên được yêu cầu không. Nếu có đủ tài

nguyên khả dụng, Admission Control dự trữ nó bằng cách cập nhật bảng Resource. Sau

đó bản tin Label Request được chuyển tiếp đến nút MPLS kề sau.

Khi nút CR-LDP nhận bản tin Label Mapping, nó lưu thông tin nhãn và giao diện

vào bảng LIB, lưu thông tin CR-LDP được yêu cầu vào bảng cơ sở thông tin tuyến

tường minh ERB (Explicit Route information Base). Rồi nó gọi Resource Manager để

taọ một bảng hàng đợi phục vụ cho CR-LSP được yêu cầu, và lưu Service ID của nó

vào bảng ERB. Cuối cùng nó chuyển tiếp bản tin LSP Mapping tới nút MPLS kề trước.

1.7.3 Giao thức RSVP-TE

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 đã chuyên hóa 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ợc 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.

1.7.3.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 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-breal” khi thay đổi đường đi của một đường

hầm LSP. Đặc tính lưu lượng của Tspec sử dụng tốc độ đỉnh (peak rate), thùng token

(token bucket) để định nghĩa tốc độ và kích thước bùng phát, đơn vị khống chế tối thiểu

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 tao việc gán kết nhãn được yêu cầu trong bản tin PATH. Bản tin RESV

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

chặng kề trước trong bản tin PATH. RESV cũng chứa cùng sesion-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

Học viện công nghệ bưu chính viễn thông 25

Page 35: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương I

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 (share explicit) ấn định một nhãn khác nhau

cho mỗi sender, nhưng tất cả chúng ta 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ừ lối ra

dẫn ngược về lối vào. Nó có thể được một bộ định tuyến dùng để ghim một tuyến

tường minh thả lỏng bằng cách copy tuyến ghi được trong một 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.

1.7.3.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 lạ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ỗi lỗi ở bước đầu tiên trong hoạt động đị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 đường lên, thay vào đó nó tạo ra một bản tin RESVERR gửi cho phía đường

xuống để xóa bỏ nỗ lực thiết lập LSP. Tuyến tường minh và các tùy chọn tuyến ghi 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 mớ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.

1.7.3.3 Thiết lập tuyến tường minh điều khiển tuần tự theo yêu cầu

Hình 1.30 ví dụ việc trao đổi bản tin RSVP-TE sử dụng đối tượng tuyến tường

minh ERO (expplicit route object) để cài đặt một LSP đi qua một con đường không

phải là đường ngắn nhất. Bộ định tuyến 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

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

Học viện công nghệ bưu chính viễn thông 26

Page 36: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương I

tiếp ghi trong ERO là R5. Đến lượt mình, R5 gửi bản tin này đến lối ra của bộ định

tuyến R3.

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à chặng cuối cùng trên đường dẫn 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

thời RFC 3031, nhãn null là một quy ước được dùng trong phân phối nhãn cho phép lối

ra của bộ định tuyến (ở đây là R3) báo hiệu cho đối tác đường lên của nó biết rằng đây

là chặng áp cuối (penulitmate hop) của LSP, do vậy cần gỡ nhãn đỉnh của ngăn xếp.

Tiếp theo, R5 thu nạp 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.

Hình 1.30: Thiết lập LSP với RSVP-TE

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.

1.7.3.4 Giảm lượng overhead làm tươi RSVP

RSVP là giao thức trạng thái mềm (soft-staste), 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

Học viện công nghệ bưu chính viễn thông 27

Page 37: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương I

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ý và 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ễ tế

báo hiệ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 để bộ định tuyến dễ dàng nhận dạng một bản tin không thay đổi lớ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 để 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 làm

giảm lượng overhead làm tươi của RSVP trong mạng MPLS.

1.7.4 Giao thức BGP

1.7.4.1 BGPv4 và mở rộng cho MPLS

BGPv4 (boder gateway protocol) là một giao thức định tuyến để gán kết tập hợp

các mạng cung cấp dịch vụ trên internet. Vì nó chỉ là giao thức sử dụng giữa các nhà

cung cấp, RFC2017 đã mở rộng BGP hỗ trợ phân phối nhãn MPLS để có thể thiết lập

các LSP liên mạng.

BGP có một tập thuật ngữ riêng. Một khái niệm quan trọng là số AS

(Autonomous System) duy nhất, được định nghĩa là một tập hợp bộ định tuyến thực

hiện một chính sách định tuyến ngoại thống nhất có thể nhận thấy đối với bộ định tuyến

của AS khác. BGP không truyền các thông tin topology nội giữa các AS, nó chỉ cung

cấp các thông tin về các tiền tố địa chỉ mà có thể tìm đến hoặc đi quá giang qua đó. Sử

dụng BGP giữa các bộ định tuyến biên (border) nội trong một AS được gọi là BGP nội

(iBGP), còn sử dụng BGP giữa các bộ định tuyến trong các AS khác nhau được goi là

BGP ngoại (eBGP).

BGP chạy trên một phiên TCP vì nó cần độ tin cậy, phân phát đúng thứ tự. Nó có

3 phiên hoạt động: thiết lập phiên, trao đổi bản tin cập nhật, và chấm dứt phiên. Trong

thiết lập phiên, các đối tác BGP (BGP peer) trong các AS lân cận trao đổi các bản tin

OPEN có chứa AS number, một giá trị keep-alive timeout, và các tham số tùy chọn như

Học viện công nghệ bưu chính viễn thông 28

Page 38: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương I

nhận thực. Các BGP peer định kỳ trao đổi bản tin keep-alive, nếu phát hiện hết thời

gian hiệu lực sẽ chấm dứt phiên. Sau khi thiết lập phiên, các BGP peer trao đổi các bản

tin UPDATE có chứa các tiền tố địa chỉ có thể đến được hiện hành (reachability), được

gọi là NLRI (Network Layer Reachability Information). Sau khi trao đổi đồng bộ khởi

tạo, các thay đổi định tuyến gia tăng được liên lạc bằng bản tin UPDATE.

Nội dung bản tin BGP UPDATE gồm 3 phần (hình 1.31): các tuyến thu hồi

(withdrawn route), một danh sách các tiền tố địa chỉ NRLI, và một danh sách tùy chọn

các thuộc tính liên quan. Các BGP peer tạo quyết định chính sách cục bộ khi xem xét

công bố một NLRI với các thuộc tính đường được tùy chọn hay thu hồi thông cáo trước

đó. Chính sách thường dùng là chọn NLRI có tiền tố địa chỉ đặc tả so trùng nhất, chọn

một đường có số chặng AS ít nhất.

Hình 1.31: Nội dung bản tin BGP Update

Khi bản tin UPDATE chứa thông tin NLRI, một số thuộc tính đường là bắt buộc

trong khi một số khác là tùy chọn. Các thuộc tính đường bắt buộc là ORIGIN, AS-

PATH, và NEXT HOP. ORIGIN nhận diện nguồn gốc của NLRI, thí dụ nó được học

qua giao thức định tuyến nội hay ngoại. AS-PATH liệt kê một path-vector gồm một tập

AS đã đi qua đến thời điểm hiện tại (một chuỗi thứ tự các AS). Vì chiều dài của AS-

PATH thường là yếu tố quyết định chọn một tuyến, nên BGP được gọi là giao thức

path-vector. Các bộ định tuyến sử dụng AS-PATH để tránh lặp bằng cách không

chuyển tiếp các thông cáo tuyến có chứa số AS của chúng. NEXT-HOP nhận diện địa

chỉ IP của bộ định tuyến biên cần dùng để tìm đến NLRI. BGP có một tham số tùy chọn

có thể thực hiện một dạng cân băngg tải: LOCALPREF và MED. LOCALPREF cho

phép AS đầu gửi chỉ định một sự ưu tiên cho lưu lượng đến từ một AS khác.

RFC 2283 định nghĩa các mở rộng đa giao thức cho BGP để phân phối nhãn

MPLS nằm trong một phần của NLRI. Các BGP peer thương lượng hỗ trợ cho khả

Học viện công nghệ bưu chính viễn thông 29

Page 39: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương I

năng tùy chọn này vào lúc thiết lập phiên. Thủ tục cơ bản là gửi việc phân phối nhãn

theo kiểu không cần yêu cầu song song khi thực hiện phân phối tuyến BGP.

1.7.4.2 Kết nối MPLS qua nhiều nhà cũng cấp dịch vụ

BGP có thể dùng để thiết lập phân phối nhãn cho các LSP đi xuyên qua các mạng

của nhiều nhà cung cấp khác nhau. Hình 1.32 gồm 3 hệ tự trị là A,B và C. AS A cấp

phát cho khách hàng tiền tố địa chỉ (FEC) “a.b/16”. Bộ định tuyến C3 quảng bá nhó

như một NLRI cho AS-A và AS-B bằng bản tin BGP UPDATE có chứa next-hop và

ASPATH. Bản tin UPDATE được gửi bởi C3 đến A3 còn mạng một ánh xạ từ FEC

“a.b/16” sang nhãn L. Bộ định tuyến A3 trong AS A thu thập tất cả các thông cáo này

trong bảng RIB của nó, thí dụ thông qua một lưới các phiên iBGP hoặc một “route

reflector”. Nhằm tìm cách tốt nhất để chuyển tiếp các gói đến tiền tố “a.b/16”, A1 có

thể xác định rằng đường AS ngắn nhất là qua chặng kế A3 sử dụng nhãn L. Nhờ định

tuyến nội và giao thức phân phối nhãn của mình, bộ định tuyến A1 cũng biết rằng tuyến

tốt nhất để đến A3 là đi qua A2 sử dụng nhãn M. Kết quả là khi chuyển gói đến tiền tố

“a.b/16”, bộ định tuyến A1 push nhãn L lên gói rồi push tiếp nhãn M trên đỉnh ngăn

xếp. Như vậy, một LSP được chui bên trong một đường hầm LSP khác. LSP1 bên

ngoài kéo dài từ A1 đến A3. Trong khi đó, LSP2 kéo dài từ AS A đến AS C và có một

đoạn chui bên trong LSP1

Học viện công nghệ bưu chính viễn thông 30

Page 40: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương I

Hình 1.32: BGP phân phối nhãn qua nhiều Autonomous System

1.8 Ưu điểm và ứng dụng của MPLS

1.8.1 Đơn giản hóa chức năng chuyển tiếp

MPLS sử dụng cơ chế chuyển tiếp căn cứ vào nhãn có độ dài cố định nên quyết

định chuyển tiếp có thể xác định ngay chỉ với một lần tra cứu chỉ mục trong LFIB. Cơ

chế này đơn giản và nhanh hơn nhiều so với giải thuật “longest prefix match” dùng

trong chuyển tiếp gói datagram thông thường.

1.8.2 Kỹ thuật lưu lượ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 (TE:

traffic engineering), nó đảm bảo lưu lượng được định tuyến đi qua một mạng theo một

cách thức tin cậy và hiệu quả nhất. Kỹ thuật lưu lượng cho phép các ISP định tuyến lưu

lượng theo cách họ có thể cũng cấp dịch vụ tốt nhất cho khách hàng ở khía cạnh thông

lượng và độ trễ. MPLS-TE cho phép lưu lượng được phân bố hợp lý quá toàn bộ hạ tầng

mạng, tối ưu hóa hiệu suất sử dụng mạng. Đây cũng là đối tượng nghiên cứu chính của

đề tài này và sẽ được trình bày kỹ ở các chương tiếp theo.

1.8.3 Định tuyến QoS từ nguồn

Định tuyến QoS từ nguồn là một cơ chế trong đó các LSR được xác định trước ở

nút nguồn (LSR lối vào) dựa vào một số thông tin về độ khả dụng tài nguyên trong

mạng cũng như yêu cầu QoS của luồng lưu lượng. Nói cách khác, nó là một giao thức

định tuyến có mở rộng chỉ tiêu chọn đường để bao gồm các tham số như băng thông khả

dụng, việc sử dụng liên kết và đường dẫn end-to-end, độ chiếm dụng tài nguyên của nút,

độ trễ và biến động trễ.

1.8.4 Mạng riêng ảo VPN

VPN là cho phép khách hàng thiết lập mạng riêng giống như thuê kênh riêng

nhưng với chi phí thấp hơn bằng cách sử dụng hạ tầng mạng công cộng dùng chung.

Kiến trúc MPLS đáp ứng tất cả các yêu cầu cần thiết để hỗ trợ VPN bằng cách thiết lập

các đường hầm LSP sử dụng định tuyến tường minh. Do đó, MPLS sử dụng các đường

hầm LSP cho phép nhà khai thác cung cấp dịch vụ VPN theo cách tích hợp trên cùng hạ

tầng mà họ cũng cấp dịch vụ Internet. Hơn nữa, cơ chế xếp chồng nhãn cho phép cấu

hình nhiều VPN lồng nhau trên hạ tầng mạng.

1.8.5 Chuyển tiếp có phân cấp

Học viện công nghệ bưu chính viễn thông 31

Page 41: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương I

Thay đổi đáng kể nhất được MPLS đưa ra không phải ở kiến trúc định tuyến mà

là kiến trúc chuyển tiếp. Sự cải tiến trong kiến trúc chuyển tiếp có tác động đáng kể đến

khả năng cung cấp chuyển tiếp phân cấp. Chuyển tiếp phân cấp cho phép lồng một LSP

vào trong một LSP khác (xếp chồng nhãn hay còn gọi là điều khiển gói đa cấp). Thực ra

chuyển tiếp phân cấp không phải là kỹ thuật mới, ATM đã cung cấp cơ chế chuyển tiếp

2 mức với khái niệm đường ảo (VP) và kênh ảo (VC). Tuy nhiên MPLS cho phép các

LSP được lồng vào nhau một cách tùy ý, cung cấp điều khiển gói đa cấp cho việc

chuyển tiếp.

1.8.6 Khả năng mở rộng

Chuyển mạch nhãn cung cấp một sự tách biệt toàn diện hơn giữa định tuyến liên

miền (inter-domain) và định tuyến nội miền (intra-domain), điều này cải thiện đáng kể

khả năng mở rộng của các tiền trình định tuyến. Hơn nữa, khả năng mở rộng của MPLS

còn nhờ vào FEC (thu gom luồng), và xếp chồng nhãn để hợp nhất (merging) hoặc lồng

nhau (nesting) các LSP. Ngoài ra, nhiều LSP liên kết với các FEC khác nhau có thể

được trộn vào cùng một LSP. Sử dụng các LSP lồng nhau cũng cải thiện khả năng mở

rộng của MPLS.

1.9 Kết luận chương

Chương I giới thiệu các vấn đề cơ bản của công nghệ chuyển mạch nhãn đa giao

thức:

Các thuật ngữ cơ bản trong MPLS: Miền MPLS , lớp chuyển tương đương

FEC, đường chuyển mạch nhãn LSP, mã hóa ngăn xếp nhãn…..

Hoạt động chuyển tiếp và định tuyến trong MPLS: Hoạt động trong mặt

phẳng chuyển tiếp ,định tuyến ràng buộc, định tuyến tường minh

Các giao thức hoạt động chuyển tiếp (LDP, CR-LDP, BGP…)

Ưu nhược điểm và ứng dụng của MPLS

Các vấn đã nêu ra cho ta cái nhìn tổng quan về công nghệ MPLS đang được

triển khai nhanh chóng trong mạng NGN của Việt Nam.

Học viện công nghệ bưu chính viễn thông 32

Page 42: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương II

CHƯƠNG II

KĨ THUẬT LƯU LƯỢNG TRONG MPLS VÀ CƠ CHẾ BẢO VỆ

KHÔI PHỤC ĐƯỜNG

2.1 Tổng quan về kỹ thuật lưu lượng

Kỹ thuật lưu lượng (Traffic Engineering) là quá trình điều khiển cách thức các

luồng lưu lượng đi qua mạng sao cho tối ưu hóa việc sử dụng tài nguyên và hiệu năng

của mạng. Nó ứng dụng các nguyên lý khoa học công nghệ để đo lường, mô hình hóa,

đặc trưng hóa và điều khiển lưu lượng nhằm đạt được các mục tiêu khác nhau. Khái

niệm TE phân biệt với khái niệm kỹ thuật mạng (Network Engineering). Kỹ thuật mạng

liên quan đến việc thiết kế xây dựng topology của mạng sao cho phù hợp với lưu lượng.

2.1.1 Các mục tiêu triển khai kỹ thuật lưu lượng

2.1.1.1 Phân loại

Các mục tiêu triển khai kỹ thuật lưu lượng có thể phân theo hai hướng sau:

Hướng lưu lượng (traffic oriented)

Hướng tài nguyên (resource oriented)

Các mục tiêu hướng dẫn lưu lượng liên quan đến việc tăng cường QoS cho các

luồn lưu lượng. Trong mô hình đơn lớp (dịch vụ best-effort), các mục tiêu này gồm:

giảm thiểu mất gói và trễ, tăng tối đa thông lượng và tuân thủ các hợp đồng mức dịch vụ

(SLA)… Các mục tiêu hướng lưu lượng bị chặn thống kê (như thay đổi độ trễ gói đỉnh-

đỉnh, tỷ lệ mất gói, trễ truyền tối đa) cũng rất hữu ích trong mô hình dịch vụ phân biệt

(Diffserv).

Các mục tiêu hướng tài nguyên liên quan đến việc tối ưu hóa sử dụng tài nguyên.

Băng thông là một tài nguyên cốt yếu của mạng, do đó chức năng trọng tâm của kỹ

thuật lưu lượng là quản lý hiệu quả tài nguyên băng thông.

2.1.1.2 Bài toán nghẽn

Nghẽn thường xảy ra theo hai cách như sau:

Khi bản thân các tài nguyên mạng không đủ để cấp cho tải yêu cầu.

Khi các dòng lưu lượng được ánh xạ không hiệu quả lên các tài nguyên,

làm cho một số tập con tài nguyên trở nên quá tải trong khi số khác nhàn rỗi.

Có thể giải quyết tắc nghẽn bằng cách:

Học viện công nghệ bưu chính viễn thông 33

Page 43: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương II

o Tăng dung lượng hoặc ứng dụng các kỹ thuật điều khiển tắc nghẽn cổ

điển (giới hạn tốc độ, điều khiển luồng, quản trị hàng đợi, điều khiển

lịch trình…)

o Dùng kỹ thuật lưu lượng nếu nghẽn là do cấp phát tài nguyên chưa hiệu

quả.

Đối tượng giải quyết của kỹ thuật lưu lượng là nghẽn kéo dài chứ không phải

nghẽn nhất thời do bùng phát lưu lượng.

2.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

Lưu lượng có thể được tổ chức xoay quanh một khái niệm goi là các lớp dịch vụ

(service classes). Các lớp lưu lượng này được định nghĩa theo những hoạt động sau:

Quan hệ đồng bộ giữa đầu phát và đầu thu: chỉ biến động trễ có thể chấp

nhận được một kết nối.

Tốc độ bit: cố định hay biến đổi

Loại dịch vụ: hướng kết nối hay không kết nối

Các hoạt động điều khiển luồng.

Số thứ tự cho thông tin người sử dụng

Phân đoạn và tái hợp các PDU (Protocol Data Unit)

2.1.3 Hàng đợi lưu lượng

Nhiều hệ thống (đặc biệt là bộ định tuyến) hỗ trợ một số dạng hàng đợi thông

dụng sau:

2.1.3.1 Hàng đợi FIFO

Hàng đợi FIFO (First in, First out) gói theo thứ tự, gói đến trước sẽ được truyền

trước.

2.1.3.2 Hàng đợi WFQ

Băng thông rỗi được chia cho các hàng đợi tùy thuộc vào trọng số (weight) của

chúng. Xét ví dụ sau có hai luồng lưu lượng A,B,..N và trọng số của chúng được đánh

số như hình 2.1 trong đó: có bốn luồng (D,E,F,G) có trọng số 5, có hai luồng có trọng số

4, còn ở các trọng số khác chỉ có một luồng .

Học viện công nghệ bưu chính viễn thông 34

Page 44: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương II

Hình 2.1: Nhiều luồng cho mỗi lớp lưu lượng.

2.1.3.3 Hàng đợi CQ

CQ (Custom Queuing) cho phép người dùng chỉ ra phần trăm băng thông khả

dụng cho một giao thức đặc biệt nào đó. Ta có thể định nghĩa tối đa đến 16 hàng đợi.

Mỗi hàng đợi được phục vụ một cách tuần tự theo phương thức truyền phần trăm lưu

lượng trên mỗi hàng đợi trước khi chuyển đến hàng đợi kế (hình 2.2).

Hình 2.2: Hàng đợi CQ

2.1.3.4 Hàng đợi PQ (Priority Queuing)

Tất cả các gói thuộc lớp có mức ưu tiên cao hơn sẽ được truyền trước bất kỳ gói

nào thuộc lớp có mức ưu tiên thấp hơn. PQ cho phép người quản lý mạng cấu hình bốn

Học viện công nghệ bưu chính viễn thông 35

Page 45: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương II

thuộc tính lưu lượng là cao (high), thông thường (normal), trung bình (medium) và thấp

(low). Lưu lượng đến được gán vào một trong 4 hàng đợi (hình 2.3).

Hình 2.3: Hàng đợi PQ

2.1.4 Giải thuật thùng rò và thùng token

2.1.4.1 Giải thuật thùng rò (Leaky Bucket)

Mô hình thùng rò (hình 2.4) có thể được diễn tả như sau: bất chấp tốc độ

nước được đổ vào thùng là bao nhiêu, tốc độ dòng nước chảy ra là không đổi miễn là

trong thùng còn nước. Một khi thùng đầy, lượng nước được đổ thêm vào sẽ bị tràn và

mất. Các thông số cần chú ý trong mô hình thùng rò là kích thước của thùng và tốc độ

dòng chảy ra.

Hình 2.4: Giải thuật thùng dò

Học viện công nghệ bưu chính viễn thông 36

Page 46: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương II

Mô hình trên có thể áp dụng cho gói. Bất kể lưu lượng tới có tốc độ biến động

như thế nào, lưu lượng ra đều có tốc độ không đổi.

2.1.4.2 Giải thuật thùng token

Thùng token (Token Bucket) có kích thước là B, tốc độ token “chảy” vào thùng

không đổi là p, nghĩa là trong một giây sẽ có thêm p token mới chảy vào thùng. Số

lượng token trong thùng không vượt quá B hay nói cách khác, B là số lượng token tối đa

trong thùng.

Khi có gói đến, G là kích thước của gói, gói được xem là “phù hợp” khi lượng

token trong thùng lớn hơn hay bằng G, đồng thời lượng token trong thùng được giảm đi

G. Ngược lại, khi token trong thùng nhỏ hơn kích thước gói, gói được xem là vượt mức

hay không hợp lệ. Tùy thuộc vào các chính sách khác nhau mà gói vượt mức (hay

không hợp lệ) được xử lý khác nhau.

Giải thuật thùng token có thể được dùng trong việc sửa dạng lưu lượng (shaping)

hay được ứng dụng trong việc thực thi khống chế (policing).

Hình 2.5: Giải thuật thùng token

Trong sửa dạng lưu lượng thuật toán token cho phép một ít bùng phát ở ngõ ra,

điều này không có ở thuật toán thùng rò khi mà tốc độ ra là không đổi. Như vậy, thùng

token cho đáp ứng ra tốt hơn so với thùng rò trong việc thực thi khống chế (policing).

Học viện công nghệ bưu chính viễn thông 37

Page 47: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương II

Trong sửa dạng lưu lượng, thuật toán thùng token có thể được dùng độc lập hay được

dùng phối hợp.

2.1.5 Giải pháp mô hình xếp chồng

Hình 2.6: Mô hình xếp chồng

Một cách tiếp cận phổ biến để bù đắp các thiếu sót của các giao thức IGP

(interior gateway protocols ) là sử dụng môt hình xếp chồng (như IP over ATM hoặc IP

over FR). Tất cả các bộ định tuyến là lớp 3 được kết nối trực tiếp với nhau bằng một

lưới full-mesh các mạch ảo VC. Kỹ thuật lưu lượng được thực hiện ở lớp 2 (ATM hoặc

FR).

Tuy nhiên, mô hình này có nhiều nhược điểm sau đây:

Tốn kém thêm nhiều thiết bị (các chuyển mạch ATM hoặc FR).

Quản lý mạng phức tạp hơn: Mạng lớp 2 có các công cụ quản lý riêng với

nhiều tác vụ hỗ trợ kỹ thuật lưu lượng. Đồng thời mạng các bộ định tuyến

lớp 3với giao thức IGP cũng phải được quản lý. Việc quản lý 2 lớp mạng

này không tích hợp được.

Phát sinh nhiều vấn đề mở rộng đối với IGP do số lượng quá lớn các

neighbor khi kết nối full-mesh để tận dụng các tiện ích cung cấp bởi lớp 2.

Tốn thêm băng thông cho lượng overhead của ATM hoặc FR (cell tax).

Không hỗ trợ dịch vụ phân biệt (Diffserv). Mọi dịch vụ phân biệt của IP

đưa xuống (qua AAL5 của ATM) đều trở thành “best-effort”

2.2 MPLS và kỹ thuật lưu lượng

MPLS có ý nghĩa chiến lược đối với kỹ thuật lưu lượng vì nó có thể cung cấp

hầu hết các chức năng hiện có ở mô hình xếp chồng nhưng theo cách tích hợp với chi

Học viện công nghệ bưu chính viễn thông 38

Page 48: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương II

phí thấp. Điều quan trọng là MPLS còn đề xuất khả năng tự động hóa các chức năng kỹ

thuật lưu lượng.

2.2.1 Khái niệm trung kế lưu lượng

MPLS giới thiệu khái niệm trung kế lưu lượng để thực hiện các mục tiêu TE.

Trung kế lưu lượng là một khối thu gom (aggregate) các luồng lưu lượng thuộc

cùng lớp, được đặt bên trong một LSP. Trong một số hoàn cảnh có thể nới lỏng định

nghĩa này để cho phép trung kế lưu lượng thu gom lưu lượng đa lớp.

Trong mô hình dịch vụ đơn lớp, một trung kết lưu lượng có thể đóng gói toàn bộ

lưu lượng giữa một bộ định tuyến lối vào và một bộ định tuyến lối ra. Trong

trường hợp phức tạp hơn, lưu lượng của các lớp dịch vụ phân biệt được ấn định

vào các trung kế lưu lượng riêng biệt với các đặc tính khác nhau.

Trung kế lưu lượng là đối tượng có thể định tuyến (tương tự như ATM VC).

Trung kế lưu lượng phân biệt với LSP là đường cho trung kế đi xuyên qua.

Trong bối cảnh hoạt động, một trung kế lưu lượng có thể chuyển từ LSP này

sang một LSP mới hoặc nhiều trung kế lưu lượng cùng di chung trên một LSP.

Trung kế lưu lượng là đơn hướng.

2.2.2 Đồ thị nghiệm suy

Đồ thị nghiệm suy (incluced graph) gần giống như topology ảo trong mô hình

xếp chồng. Nó được ánh xạ trên mạng vật lý thông qua việc lựa chọn các LSP cho các

mạng trung kế lưu lượng.

Một đồ thị nghiệm suy gồm một nhóm các nút LSR được kết nối với nhau bằng

LSP. Khái niệm này rất quan trọng vì bài toán quản lý băng thông cơ bản trong một

miền MPLS đặt ra chính là làm thế nào để ánh xạ hiệu quả đồ thị nghiệm suy trên

topology mạng vật lý. Đồ thị nghiệm suy được công thức hóa như sau:

Đặt G = (V, E, C) là đồ thị mô tả topology vật lý của mạng. Trong đó V là tập

hợp các nút mạng, E là tập hợp các đường liên kết, C là tập hợp các khả năng và ràng

buộc cho E và V. Ta coi G là topology cơ sở.

Đặt H = (U, F, D) là đồ thị MPLS nghiệm suy, trong đó U là tập con thuộc V

gồm một nhóm LSR tại các đầu của LSP. F là tập hợp các yêu cầu và chế tài cho F. Như

vậy, H là một đồ thị trực tiếp phụ thuộc vào các đặc tính chuyển tải của G.

2.2.3 Bài toán cơ bản của kỹ thuật lưu lượng trên MPLS

Học viện công nghệ bưu chính viễn thông 39

Page 49: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương II

Có ba vấn đề cơ bản liên quan đến kỹ thuật lưu lượng trên MPLS là:

Ánh xạ các gói lên các lớp chuyển tiếp tương đương (FEC).

Ánh xạ các FEC lên các lớp trung kế lưu lượng (traffic trunk).

Ánh xạ các trung kế lưu lượng lên topology mạng vật lý thông qua các

LSP.

Các phần sau của chương sẽ tập trung vào vấn đề thứ ba, tức là tính toán đường

đi tốt nhất qua mạng cho các trung kế lưu lượng sao cho mạng hoạt động hiệu quả và tin

cậy. Đây chính là bài toán ánh xạ đồ thị nghiệm suy H lên topology mạng cơ sở G.

2.3 Trung kế lưu lượng và các thuộc tính

Để xây dựng và duy trì trung kế lưu lượng, người ta tìm cách mô hình hóa nó

bằng các tham số. Một thuộc tính là một tham số được gán và có ảnh hưởng đến các đặc

trưng hành vi của trung kế lưu lượng. Các thuộc tính có thể được gán cụ thể thông qua

hành động quản trị hoặc được gán ngầm bởi các giao thức bên dưới khi các gói được

phân loại và ánh xạ vào FEC tại lối vào miền MPLS. Thực tế, một trung kế lưu lượng có

thể đặc trưng hóa bởi:

Ingress-LSR và egress-LSR của trung kế lưu lượng

Tập các FEC được ánh xạ vào trung kế lưu lượng

Một tập các thuộc tính nhằm xác định các đặc trưng hành vi của trung kế.

Hai vấn đề cơ bản có ý nghĩa đặc biệt là: (1) Tham số hóa các trung kế lưu lượng và (2)

những quy luật sắp đặt và duy trì đường dẫn cho các trung kế lưu lượng.

2.3.1 Các hoạt động cơ bản trên trung kế lưu lượng

Là các tiến trình khác nhau xảy ra trong thời gian sống của một trung kế lưu lượng:

Establish: Tạo ra một trung kế lưu lượng bằng cách quyết định một LSP, gán

các nhãn MPLS và quan trọng nhất là gán tài nguyên trung kế đó.

Activate: Làm cho trung kế lưu lượng bắt đầu chuyển dữ liệu bằng cách dùng

một số chức năng định tuyến để lưu lượng vào trung kế.

Deactivate: Làm cho trung kế lưu lượng ngưng chuyển dữ liệu cũng bằng cách

dùng một chức năng định tuyến để dừng việc đưa lưu lượng vào trung kế.

Modify Attributes: Thay đổi các đặc trưng của trung kế lưu lượng, chẳng hạn

như băng thông khả dụng.

Học viện công nghệ bưu chính viễn thông 40

Page 50: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương II

Reroute: chọn một đường mới cho trung kế lưu lượng (thường là do một số sự

cố trong mạng hoặc đôi khi khôi phục xong sự cố).

Destroy: Loại bỏ hoàn toàn một trung kế lưu lượng khỏi mạng và thu hồi tất cả

các tài nguyên đã cấp phát cho nó.

2.3.2 Thuộc tính tham số lưu lượng

Thuộc tính tham số lưu lượng (traffic parameter) đặc tả băng thông đòi hỏi bởi

trung kế lưu lượng cùng với các đặc trưng lưu lượng khác như tốc độ đỉnh, tốc độ trung

bình, kích thước bùng phát cho phép… Dưới góc độ kỹ thuật lưu lượng, các tham số lưu

lượng rất quan trọng vì chúng chỉ yêu cầu về tài nguyên của trung kế lưu lượng.

2.3.3 Thuộc tính lựa chọn và quản lý đường

Là các tiêu chuẩn lựa chọn và duy trì đường dẫn cho trung kế lưu lượng. Con

đường thực sự được lựa chọn xuyên qua mạng có thể được cấu hình bởi nhà điều hành

hoặc được gán động do mạng dựa vào các thông tin từ IGP (như IS-IS hoặc OSPF). Các

thuộc tính cơ bản và các đặc trưng hành vi liên quan đến chọn đường và quản lý đường

cho trung kế lưu lượng được mô tả sau đây :

2.3.3.1 Đường tường minh đặc tả quản trị

Đường tường minh đặc tả quản trị cho một trung kế lưu lượng được cấu hình bởi

nhà điều hành. Một đường gọi là đặc tả toàn bộ nếu chỉ ra các chặng yêu cầu giữa hai

điểm đầu cuối. Đặc tả một phần nếu chỉ có một tập con các chặng trung gian được chỉ

thị. Thuộc tính “path preference rule” là một biến nhị phân chỉ thị đường tường minh

được cấu hình là bắt buộc hay không bắt buộc.

2.3.3.2 Đường phân cấp các luật ưu tiên cho đa đường

Trong một số hoàn cảnh thực tế, khả năng chỉ định cho một tập hợp các đường

tường minh đề cử cho một trung kế lưu lượng và định nghĩa phân cấp các quan hệ ưu

tiên giữa các đường. Khi thiết lập đường, các luật ưu tiên được áp dụng để chọn ra

đường thích hợp từ danh sách đề cử. Trong các tình huống sự cố thì các luật ưu tiên này

cũng được dùng để chọn một đường thay thế từ danh sách đề cử.

2.3.3.3 Thuộc tính Affinity lớp tài nguyên

Thuộc tính này cho phép operator áp đặt các chính sách chọn đường bằng việc

bao gồm hay loại trừ một số liên kết nào đó. Mỗi liên kết được tán một thuộc tính lớp tài

nguyên (Resource-Class). Thuộc tính Affinity lớp tài nguyên có dạng chuỗi như bit sau:

Affinity( 32-bit), Mask(32-bit)

Học viện công nghệ bưu chính viễn thông 41

Page 51: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương II

Mặt nạ lớp tài nguyên chỉ thị các bit nào trong lớp tài nguyên cần được kiểm tra.

Liên kết được bao hàm khi chọn đường nếu mỗi Affinity trùng với Resource-Class sau

khi cùng thực hiện phép AND với mặt nạ. Giá trị default của mặt nạ là 0x0000FFFF.

2.3.3.4 Thuộc tính thích ứng

Trong nhiều tình huống cần thiết phải thay đổi động các đường dẫn trung kế lưu

lượng để đáp ứng với việc thay đổi trạng thái mạng (chủ yếu thay đổi tài nguyên khả

dụng). Quá trình này được gọi là tái tối ưu hóa (re-optimization). Thuộc tính thích ứng

(Adaptivity) cho biết một trung kế lưu lượng được ghép tái tối ưu hóa hay không. Nếu

tái tối ưu hóa bị cấm thì trung kế lưu lượng coi như được gim vào đường đã thiết lập của

nó và không thể tái định tuyến (re-route) khi có sự thay đổi trạng thái mạng.

2.3.4 Thuộc tính ưu tiên/lấn chiếm

Thuộc tính ưu tiên (Prioity/Preemption) có 8 mức (giảm dần từ 0 đến 7) xác định

thứ tự thực hiện chọn đường cho các trung kế lưu lượng. Độ ưu tiên cũng rất quan trọng

khi triển khai cơ chế lấn chiếm (preemption) vì nó có ảnh hưởng đến thứ tự tự thiên vị.

Mỗi trung kế lưu lượng được gán một giá trị ưu tiên thiết lập (setup priority) và

một giá trị ưu tiên cầm giữ (holding priority). Khi thiết lập trung kế mới hoặc tái định

tuyến, một trung kế có độ ưu tiên thiết lập cao sẽ chèn lấn một trung tuyến khác có độ

ưu tiên cầm giữ thấp hơn “bật” ra khỏi đường nếu chúng cạnh tranh tài nguyên. Ngược

lại, việc thiết lập một trung kế mới có thể thất bại nếu băng thông mà nó yêu cầu đang bị

chiếm bởi các trung kế khác có độ ưu tiên cầm giữ cao hơn.

2.3.5 Thuộc tính đàn hồi

Thuộc tính đàn hồi (Resilience) xác định hành vi của trung kế lưu lượng trong

tình huống xảy ra sự cố theo cơ chế sau:

Không tái định tuyến trung kế lưu lượng.

Tái định tuyến qua một đường khả thi có đủ tài nguyên.

Tái định tuyến qua đường khả dụng bất kỳ chấp nhận các ràng buộc tài nguyên.

Tổ hợp của các cơ chế nói trên.

2.3.6 Thuộc tính khống chế

Thuộc tính khống chế (Policing) xác định những hoạt động được thực hiện khi

một trung kế lưu lượng không tuân thủ mức dịch vụ đã đặc tả ở các tham số lưu lượng.

Nó cho biết cách xử lý đối với lượng traffic vượt mức dịch vụ (ví dụ hủy gói hay truyền

theo kiểu best-effort). Nói chung nên luôn luôn khống chế ở lối vào của mạng để cưỡng

Học viện công nghệ bưu chính viễn thông 42

Page 52: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương II

bức tuân thủ các hợp đồng mức dịch vụ và giảm thiểu việc khống chế bên trong lõi

mạng..

2.4 Tính toán đường ràng buộc

2.4.1 Quảng bá các thuộc tính của liên kết

Bộ định tuyến tại đầu nguồn (head-end) của một trung kế phải nắm được thông

tin thuộc tài nguyên của tất cả các liên kết trong mạng để tính toán đường LSP. Điều

này chỉ có thể đạt được bằng cách sử dụng các giao thức định tuyến Link-State (như IS-

IS hay OSPE) vì chỉ có kiểu giao thức này mới quảng bá thông tin về tất cả các liên kết

đến tất cả các bộ định tuyến. Vì vậy, OSPF và IS-IS được mở rộng để hỗ trợ MPLS-TE:

o IS-IS có các trường Type-Length-Value mới (kiểu 22 TLV) để đính kèm

các thông tin này trong các thông cáo PDU Link-State của nó.

o OSPF có các định nghĩa thông cáo Link-State mới (kiểu 10 LSA).

Một khi bộ định tuyến đầu nguồn nhận được các thông cáo này thì nó không chỉ

biết được topology mạng mà còn biết được các thông tin tài nguyên khả dụng của từng

liên kết. Điều này rất cần thiết để tính toán các đường thỏa mãn các đòi hỏi của trung kế

lưu lượng.

Hình 2.7: Băng thông khả dụng ứng với từng mức ưu tiên

Các giao thức IGP sẽ quảng bá các thuộc tính tài nguyên khi dưới các điều kiện

hoặc sự kiện nào đó như:

Khi liên kết thay đổi trạng thái (ví dụ up,down…)

Khi lớp tài nguyên của liên kết thay đổi do tái cấu hình nhân công hoặc trong

trường hợp băng thông khả dụng biến động qua các mức ngưỡng đặt trước.

Theo định kỳ (dựa vào một timer), bộ định tuyến sẽ kiểm tra các thuộc tính

tài nguyên và quảng bá cập nhật thông tin.

Học viện công nghệ bưu chính viễn thông 43

Page 53: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương II

Khi tham gia thiết lập một đường LSP nhưng thất bại.

2.4.2 Tính toán LSP ràng buộc

LSP cho một trung kế lưu lượng có thể khai báo tĩnh hoặc tính toán động. Việc

tính toán sẽ xem xet các tài nguyên khả dụng, các thuộc tính liên kết và cả các trung kế

khác (vì vậy được gọi là tính toán đường ràng buộc). Kết quả của việc tính toán này là

tìm ra một chuỗi các địa chỉ IP đại diện cho các chặng trên đường LSP giữa đầu nguồn

và đầu đích của trung kế lưu lượng. Sau đó, thực hiện báo hiệu LSP và hoàn thành việc

thiết lập đường bằng giao thức báo hiệu cho MPLS như RSVP-TE.

Tiến trình tính toán đường đầu nguồn luôn được thực hiện tại đầu nguồn trung kế

lưu lượng và được kích hoạt do:

Một trung kế mới xuất hiện.

Một trung kế đang tồn tại nhưng thiết lập LSP thất bại.

Tái tối ưu hóa một trung kế đang tồn tại.

2.4.3 Giải thuật chọn đường

Việc chọn đường cho một trung kế lưu lượng sử dụng trọng số quản trị (TE cost)

của mỗi liên kết riêng biệt. Trọng số quản trị này mặc nhiên là metric IGP của liên kết.

Giải thuật chọn đường theo các bước sau:

Cắt bỏ các liên kết có resuorce-class bị loại do phép tính Affinity ra khỏi

topology.

Cắt bỏ các liên kết không có đủ băng thông dự trữ theo yêu cầu của trung kế.

Chạy giải thuật Dijktra để tìm ra đường có tổng TE-cost nhỏ nhất trên phần

topoloy còn lại.

Sau khi thực hiện các bước trên mà vẫn còn nhiều đường ứng cử cho LSP

(nhiều đường có cùng tổng TE metric) thì tiêu chuẩn thứ tự chọn lựa như sau:

Đường có băng thông tối thiểu cao nhất

Đường có hop nhỏ nhất

Chọn lựa ngẫu nhiên

Khi LSP được tính xong, RSVP được dùng để dành trước băng thông thực sự, để

phối các nhãn cho đường và hoàn thành việc thiết lập đường LSP

Học viện công nghệ bưu chính viễn thông 44

Page 54: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương II

2.4.4 Ví dụ về chọn đường cho trung kế lưu lượng

Xét ví dụ chọn đường LSP cho một trung kế lưu lượng (tunnel) thiết lập giữa R1

(đầu nguồn) và R6 (đầu đích) như hình 2.8. Yêu cầu của trung kế lưu lượng như sau:

Băng thông đòi hỏi ở mức ưu tiên 3 là 30 Mbps

Các bit Affinity lớp tài nguyên là 0010 với mặt nạ là 0011, tức là chỉ thực

hiện kiểm tra trên hai bit thấp.

Liên kết R4-R3 cần được loại trừ khỏi đường LSP, do vậy chuỗi bit resource-

class của được đặt là 0011. Khi các bit Affinity lớp tài nguyên của trung kế lưu lượng

được so sánh với các bit resource-class là không trùng nên liên kết R3-R4 bị loại (hình

2.8).

Hình 2.8: Xem xét các ràng buộc khống chế

Tham số tiếp theo được kiểm tra trong quá trình tính toán đường ràng buộc là TE

cost (trọng số quản trị) của mỗi liên kết mà đường hầm khả năng đi qua. Nếu không xét

tài nguyên thì đường R1-R4-R6 có tổng cost thấp nhất là 30. Tất cả các đường khả thi

khác đều có tổng cost cao hơn.

Khi tài nguyên được đưa vào tính toán, thấy rằng trên đường ngắn nhất không có

đủ băng thông thỏa mãn các đòi hỏi của trung kế lưu lượng (đòi hỏi 30 Mbps trong khi

chỉ có 20 Mbps khả dụng). Kết quả là R4-R6 cũng bị loại khỏi phép tính đường LSP.

Học viện công nghệ bưu chính viễn thông 45

Page 55: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương II

Hình 2.9: Xem xét tài nguyên khả dụng

Sau khi loại bỏ các liên kết không thỏa mãn các đòi hỏi của trung kế lưu lượng,

kết quả có hai đường LSP là : R1-R2-R3-R6 và R1-R5-R6. Cả hai đường đều không có

tổng cost là 40, để chọn đường phải giải quyết bằng luật “tie-break” (hình 2.10).

Hình 2.10: Chọn đường tốt nhất.

Trước tiên băng thông tối thiểu trên đường được so sánh. Sau khi so sánh, vẫn

còn cả hai đường vì chúng đều cung cấp ít nhất 50 Mbps băng thông. Tiếp theo, luật số

hop nhỏ nhất trên đường LSP được áp dụng. Vì đường R1-R5-R6 có hop-count nhỏ hơn

nên cuối cùng nó được chọn và quá trình tính toán ràng buộc kết thúc.

2.4.5 Tái tối ưu hóa

Các đặc trưng và trạng thái mạng biến động theo thời gian. Ví dụ các tài nguyên

mới trở nên khả dụng, các tài nguyên bị lỗi được kính hoạt, các tài nguyên đã cấp phát

được thu hồi lại. Do vậy, các đường của trung kế lưu lượng đã được thiết lập tối ưu

Học viện công nghệ bưu chính viễn thông 46

Page 56: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương II

trước có thể không còn tối ưu nữa. Để duy trì mạng luôn luôn ở trạng thái tối ưu nhất,

các trung kế lưu lượng phải được tái tối ưu hóa (re-optimization).

Tái tối ưu hóa được thực hiện theo chu kỳ. Sau những khoảng thời gian nhất

định, MPLS-TE thực hiện kiểm tra đường tối ưu nhất cho các đường hầm LSP. Nếu

xuất hiện đường cho LSP tốt hơn đường hiện dùng thì:

Bộ định tuyến đầu nguồn cố gắng báo hiệu thiếp lập LSP mới tốt hơn.

Nếu thành công, thay đường LSP cũ bằng đường LSP mới tốt hơn.

Tái tối ưu hóa phải không gây ra sai hỏng dịch vụ. Để thực hiện điều này, đường

LSP hiện có phải được duy trì cho đến khi LSP mới được thiết lập xong và chuyển trung

kế lưu lượng từ đường cũ sang đường mới. Sau đó, đường LSP cũ mới được giải tỏa.

Khái niệm này gọi là “make before break”.

2.5 Bảo vệ và khôi phục đường

Các cơ chế bảo vệ và khôi phục đường trong MPLS cung cấp một dịch vụ tin cậy

cho việc chuyển tải lưu lượng trong mạng MPLS và tái định tuyến lưu lượng qua một

đường chuyển mạch nhãn LSP. Trong phần này, ta có một khái niệm sau:

Đường làm việc: Là đường chuyển tải trung kế lưu lượng trước khi xảy ra lỗi.

Đây là đường được bảo vệ bởi cơ chế khôi phục.

Đường khôi phục: Là đường mà trung kế lưu lượng sẽ được tái định tuyến sau

khi xảy ra lỗi, được thiết lập để bảo vệ cho đường làm việc.

PSL (Path Switch LSR): Là LSR đứng trước vị trí lỗi trên đường làm việc chịu

trách nhiệm chuyển mạch hoặc tái tạo lưu lượng sang đường khôi phục.

PML (Path merge LSR): Là LSR chịu trách nhiệm nhận lưu lượng trên đường

khôi phục và sẽ: tái hợp nhất lưu lượng trở về đường làm việc, hoặc chuyển lưu

lượng ra khỏi miền MPLS nếu bản thân nó là đích.

POR (Point of Repair): POR là một LSR chịu trách nhiệm sửa chữa một LSR, nó

có thể là một PSL hoặc PML tùy ý theo cơ chế khôi phục nào được dùng.

FIS (Fault Indication Signal): Là bản tin chỉ thị có một lỗi xảy ra trên đường làm

việc đã sửa chữa xong. FRS được chuyển tiếp cho tới khi nó đến được một LSR

đảm nhận việc trả lại đường nguyên thủy.

Học viện công nghệ bưu chính viễn thông 47

Page 57: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương II

2.5.1 Phân loại các cơ chế bảo vệ khôi phục

2.5.1.1 Sửa chữa toàn cục và sửa chữa cục bộ

Sửa chữa toàn cục là bảo vệ khi có bất kì sự cố ở vị trí nào trên đường làm việc.

Điểm sửa chữa POR (ở đây chính là ingress-LSR) thường cách xa vị trí lỗi và thường

được thông báo bằng tín hiệu FIS. Việc khôi phục đường là end-to-end, trong đó đường

làm việc và đường bảo vệ tách rời nhau (disjoint) hoàn toàn.

Sửa chữa cục bộ nhằm bảo vệ khi sự cố liên kết hoặc nút nhưng khôi phục nhanh

hơn do việc sửa chữa được thực hiện cục bộ tại thiết bị phát hiện sự cố. Nút nằm kề trực

tiếp trước vị trí lỗi sẽ đóng vai trò PSL khởi tạo công tác khôi phục. Sửa chữa cục bộ có

thể được thiết lập theo hai trường hợp:

Khôi lục liên kết: Để bảo vệ khôi phục liên kết trên đường làm việc. Nếu

một lỗi xảy ra trên liên kết này được khôi phục sẽ nối liền PSL và PML ở

hai đầu liên kết lỗi. Đường khôi phục và đường làm việc tách rời nhau đối

với liên kết được bảo vệ.

Khôi phục nút: Để bảo vệ nút trên đường làm việc. Đường khôi phục và

đường làm việc phải tách rời nhau đối với nút được bảo vệ, hoặc PLM là

egress-LSP.

2.5.1.2 Tái định tuyến và chuyển mạch bảo vệ

Đối với khôi phục bằng tái định tuyến (re-router), đường khôi phục được thiết lập

theo yêu cầu sau khi đã xảy ra sự cố. Khi phát hiện sự cố trên đường làm việc, một LSR

đứng trước vị trí lỗi có vai trò là POR mới bắt đầu báo hiệu một đường khôi phục đi

vòng qua điểm lỗi và mối (merge) vào một nút nào đó nằm sau điểm lỗi trên đường làm

việc. Đường khôi phục này có thể được tính toán sẵn trước hoặc tính toán sau khi phát

hiện sự cố. Khi đường khôi phục được thiết lập xong, PSL bắt đầu chuyển lưu lượng

trên đường này.

Trong chuyển mạch bảo vệ thì đường khôi phục được tính toán và thiết lập trước

khi xảy ra sự cố trên đường làm việc. PLS được cấu hình để chuyển mạch lưu lượng

sang đường khôi phục ngay khi nó biết có lỗi trên đường làm việc (trực tiếp phát hiện

lỗi hoặc nhờ nhận được FIS). Vì đường khôi phục đã thiết lập trước nên chuyển mạch

bảo vệ nhanh hơn so với khôi phục bằng tái định tuyến.

Học viện công nghệ bưu chính viễn thông 48

Page 58: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương II

2.5.2 Mô hình Makam

Đây là mô hình khôi phục MPLS đầu tiên được đề xuất (hình 2.11). Nó cung cấp

bảo vệ toàn cục cho một đường LSP bằng cách thiết lập đường khôi phục giữa ingress-

LSR và egress-LSR. Đường làm việc và khôi phục tách rời nhau (disjoint) cả về liên kết

và nút. Khi phát hiện lỗi ở bất kì vị trí nào trên đường làm việc, tín hiệu FIS được dùng

để chuyển thông báo lỗi về ingress-LSR (PSL). Ingress-LSR sẽ thực hiện chuyển mạch

lưu lượng sang đường khôi phục. Mô hình này hỗ trợ cả các đường khôi phục thiết lập

sẵn (chuyển mạch bảo vệ ) và đường khôi phục thiết lập động (tái định tuyến).

Hình 2.11: Mô hình MAKAM

Ưu điểm: Chỉ cần một đường dự phòng cho mọi sự cố trên đường làm việc và chỉ

cần một LSR có chức năng làm PSL.

Nhược điểm: Mô hình này có một khoảng thời gian trễ để tín hiệu FIS truyền

ngược về tới PSL. Trong thời gian này, lưu lượng trên đường làm việc bị mất.

2.5.3 Mô hình Haskin

Mô hình Haskin (Reverse Backup) khắc phục được nhược điểm mất gói ở mô

hình Makam (hình 2.12). Ngay khi một LSR phát hiện sự cố trên đường làm việc, nó

chuyển hướng lưu lượng đến trên đường làm việc sang một đường dự phòng đảo đi

ngược về PSL. Khi quay trở về đến PSL, lưu lượng được chuyển sang đường khôi phục

toàn cục. Đường dự phòng đảo và đường khôi phục phải thiết lập sẵn nên cách này tốn

kém tài nguyên.

Học viện công nghệ bưu chính viễn thông 49

Page 59: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương II

Hình 2.12: Mô hình Haskin

Một cải tiến khác cho phép PSL chuyển trực tiếp lưu lượng sang đường khôi

phục toàn cục ngay khi nó thấy đường dự phòng đảo được dùng. Các gói đầu tiên trong

phần lưu lượng được đảo chiều có tác dụng như tín hiệu FIS. Cách này tối ưu hơn vì

đường đi của lưu lượng được bảo vệ ngắn hơn. Tuy nhiên trong thời gian đầu, lưu lượng

mới chuyển đi trên đường khôi phục sẽ trộn lẫn với phần lưu lượng được đảo chiều làm

thay đổi thứ tự gói ban đầu.

2.5.4 Mô hình Hundessa

Mô hình Hundessa giống như mô hình Haskin cải tiến nhưng khắc phục được

vấn đê xáo trộn thứ tự gói. Khi gói đầu tiên quay trở về PSL trên đường dự phòng đảo

có tác dụng như tín hiệu FIS báo cho PSL biết đã có lỗi. PSL đánh dấu gói cuối cùng

truyền ra đường làm việc (đang có lỗi) bằng cách đặt một bit trong trường EXP nhãn,

sau đó ngưng đẩy gói ra đường lỗi. Khi gói được đánh dấu quay trở về PSL trên đường

đảo, PSL mới tiếp tục chuyển các gói mới trực tiếp ra đường khôi phục.

2.5.5 Mô hình Shortest-Dynamic

Trong mô hình này chỉ có đường làm việc được thiết lập. Khi một nút phát hiện

sự cố liên kết thì nó phải tính toán rồi báo hiệu thiết lập một đường hầm (hình 2.13).

LSP ngắn nhất đi từ nó đến nút ở phía bên kia liên kết sự cố và sau đó chuyển

mạch lưu lượng (bằng cách xếp chồng nhãn để “luồn” đường làm việc chui qua đường

hầm tránh lỗi này) .

Học viện công nghệ bưu chính viễn thông 50

Page 60: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương II

Hình 2.13: Mô hình Shortest-Dynamic

2.5.6 Mô hình Simple-Dynamic

Giống như Shortest-Dynamic, cơ chế này cũng là một cơ chế cục bộ. Nút phát

hiện sự cố liên kết sẽ chuyển mạch lưu lượng. Sự khác nhau giữa hai cơ chế này là nút

cuối cùng của đường làm việc phải là PML. Sau đó, đường khôi phục sẽ là từ nút phát

hiện sự cố đến nút PML. Trong trường hợp này không tính toán trước đường LSP khôi

phục (hình 2.14).

Hình 2.14: Mô hình Simple_Dynamic

2.5.6 Mô hình Simple-Static

Ý tưởng này là giống cơ chế simple-dynamic, nhưng với đường khôi phục đã

được tính toán trước khi xảy ra lỗi.

Học viện công nghệ bưu chính viễn thông 51

Page 61: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương II

2.6. Kết luận

Chương này đã trình bày các yêu cầu cho kỹ thuật lưu lượng qua MPLS. Bài toán

cơ bản của kỹ thuật lưu lượng MPLS là làm sao cho ánh xạ đồ thị nghiệm suy (induced

graph) lên trên topology vật lý của mạng một cách hiệu quả nhất.

MPLS cũng cung cấp các cơ chế bảo vệ và khôi phục lưu lượng ở lớp MPLS một

cách tin cậy .

Học viện công nghệ bưu chính viễn thông 52

Page 62: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương III

CHƯƠNG III

XÂY DƯNG CHƯƠNG TRÌNH MÔ PHỎNG CƠ CHẾ BẢO VỆ

VÀ KHÔI PHỤC ĐƯỜNG TRONG MPLS SỬ DỤNG NS2

3.1 Môi trường mô phỏng NS2

NS-2 là chương trình mô phỏng mạng theo phương pháp mô phỏng các sự kiện

rời rạc. NS-2 hỗ trợ mô phỏng mạng có dây và không dây, TCP, UDP, các giao thức

truyền thông điểm - đa điểm, các phương pháp định tuyến, ...vv. NS-2 viết bằng C++ và

ngôn ngữ hướng đối tượng Tcl (Otcl: Object – Oriented Toll Command Language).

So với các phần mềm mô phỏng mạng khác. NS-2 có những ưu thế sau:

NS-2 có mã nguồn mở miễn phí.

NS-2 có kiến trúc mở, tạo điều kiện cho việc mở rộng.

NS-2 được phát triển từ các phần mềm nổi tiếng trên thế giới như

REAL. NEST nên có những điểm mạnh và đã khắc phục được những yếu

điểm của các phần mềm này.

NS-2 hỗ trợ các tính năng cơ bản của mạng IP, từ đó có thể phát

triển thêm các phần tử mạng.

NS-2 có cấu trúc modul, rất thuận tiện cho việc nghiên cứu tìm

hiểu và phát triển.

Nhìn từ phía người sử dụng, NS-2 là chương trình biên dịch mã Otcl được liên

kết tới thư viện C++. Các đối tượng cơ sở như TCP, CBR, … được xây dựng trong C+

+. Đầu vào NS-2 là tập mã lệnh Otcl, đầu ra là tập tin mô phỏng tiến trình theo yêu cầu

được thể hiện trong tập lệnh Otcl.

Kết quả mô phỏng có thể quan sát bằng hình ảnh mô tả trực quan với ứng dụng

Nam (the Network Animator), bằng đồ thị (Xgraph, Trace graph) hoặc có thể được xử

lý bằng các tệp lệnh tuỳ chọn. Với cấu trúc này, việc sử dụng NS-2 trở nên đơn giản hơn

nhiều so với sử dụng trực tiếp C++ nhưng vẫn có những tính năng của C++.

Với những đặc điểm trên, NS-2 thực sự là một công cụ phần mềm hữu ích cho

việc học tập, nghiên cứu mạng thông tin, giúp cho việc thực hành mạng trở nên hiệu quả

hơn.

Học viện công nghệ bưu chính viễn thông 53

Page 63: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương III

3.1.1 Kiến trúc NS2

NS thực thi các giao thức mạng như Giao thức điều khiển truyền tải (TCP) và

Giao thức gói người dùng (UDP); các dịch vụ nguồn lưu lượng như Giao thức truyền

tập tin (FTP), Telnet, Web, Tốc độ bit cố định (CBR) và Tốc độ bit thay đổi (VBR) ;

các kỹ thuật quản lý hàng đợi như Vào trước Ra trước (Drop Tail), Dò sớm ngẫu nhiễn

(RED) và CBQ; các thuật toán định tuyến như Dijkstra… NS cũng thực thi multicasting

và vài giao thức lớp Điều khiển truy cập đường truyền (MAC) đối với mô phỏng LAN.

Hình 3.1: Tổng quan về NS dưới góc độ người dùng

Trong hình 3.1, NS là Bộ biên dịch Tcl mở rộng hướng đối tượng; bao gồm các

đối tượng Bộ lập lịch Sự kiện, các đối tượng Thành phần Mạng và các mô đun Trợ giúp

Thiết lập Mạng (hay các mô đun Plumbing).

Để sử dụng NS-2, người sử dụng lập trình bằng ngôn ngữ kịch bản OTcl. Người

dùng có thể thêm các mã nguồn Otcl vào NS-2 bằng cách viết các lớp đối tượng mới

trong OTcl. Những lớp này khi đó sẽ được biên dịch cùng với mã nguồn gốc. Kịch bản

OTcl có thể thực hiện những việc sau:

Khởi tạo Bộ lập lịch Sự kiện

Thiết lập Mô hình mạng dùng các đối tượng Thành phần Mạng

Báo cho nguồn traffic khi nào bắt đầu truyền và ngưng truyền packet

trong Bộ lập lịch Sự kiện

Thuật ngữ plumbing được dùng để chỉ việc thiết lập mạng, vì thiết lập một mạng

nghĩa là xây dựng các đường dữ liệu giữa các đối tượng mạng bằng cách thiết lập con

trỏ “neighbour” cho một đối tượng để chỉ đến địa chỉ của đối tượng tương ứng. Mô đun

plumbing OTcl trong thực tế thực hiện việc trên rất đơn giản. Plumbing làm nên sức

mạnh của NS.

Học viện công nghệ bưu chính viễn thông 54

Page 64: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương III

Thành phần lớn khác của NS bên cạnh các đối tượng Thành phần Mạng là Bộ lập

lịch Sự kiện. Bộ lập lịch Sự kiện trong NS-2 thực hiện những việc sau:

Tổ chức Bộ định thời Mô phỏng

Huỷ các sự kiện trong hàng đợi sự kiện

Triệu gọi các Thành phần Mạng trong mô phỏng

Phụ thuộc vào mục đích của người dùng đối với kịch bản mô phỏng OTcl mà kết

quả mô phỏng có thể được lưu trữ như file trace. Định dạng file trace sẽ được tải vào

trong các ứng dụng khác để thực hiện phân tích:

File nam trace (file.nam) được dùng cho công cụ Minh họa mạng

NAM

File Trace (file.tr) được dùng cho công cụ Lần vết và Giám sát Mô

phỏng XGRAPH hay TRACEGRAPH

Hình 3.2: Luồng các sự kiện cho file Tcl chạy trong NS

NAM Visual Simulation Mô phỏng ảo NAM

Tracing and Monitoring Simulation Mô phỏng Lần vết và Giám sát

3.1.2 C++ và OTcl

Hình 3.3 biểu diễn kiến trúc chung của NS. Người dùng có thể tưởng tượng mình

đang đứng ở góc trái dưới, thiết kế và chạy các mô phỏng trong Tcl. Tcl dùng các đối

tượng mô phỏng trong OTcl. Các đối tượng Bộ lập lịch Sự kiện và hầu hết các đối

tượng Thành phần Mạng thực thi bằng C++ và sẵn có cho OTcl qua một liên kết OTcl.

Học viện công nghệ bưu chính viễn thông 55

Page 65: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương III

Liên kết OTcl này được thực thi dùng TclCL. Tất cả đã làm nên NS, bộ biên dịch Tcl

mở rộng hướng đối tượng và các thư viện mô phỏng mạng.

Tcl

OTclOTcl

TclCLTclCL

ns-2

Event Scheduler

Network Components

Event Scheduler

Network Components

C/C++

Hình 3.3: Kiến trúc của NS-2

NS sử dụng hai ngôn ngữ lập trình: Ngôn ngữ kịch bản (Tcl – Tool

Command Language, đọc là tickle) và Ngôn ngữ lập trình hệ thống (C/C++)

NS là tầng biên dịch Tcl để chạy các kịch bản Tcl

Bằng cách sử dụng C++/OTcl, bộ mô phỏng mạng phải hoàn toàn là

hướng đối tượng

Hình 3.4 chỉ ra các đối tượng C++ có liên kết OTcl. Khi đó, nếu chúng tạo nên

một phân cấp thì các đối tượng OTcl cũng có một phân cấp tương ứng như vậy

Hình 3.4: C++ và OTcl: Sự đối ngẫu

TclCL là ngôn ngữ được sử dụng để cung cấp liên kết giữa C++ và OTcl. Các

kịch bản Tcl/OTcl được viết để thiết lập và cấu hình topology của mạng. TclCL cung

cấp liên kết giữa phân cấp lớp, khởi tạo đối tượng, kết nối biến và gửi lệnh.

Học viện công nghệ bưu chính viễn thông 56

Page 66: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương III

Hình 3.5: TclCL hoạt động như liên kết giữa A và B

Vậy, tại sao NS lại cần sử dụng đến hai ngôn ngữ? Lý do là vì Bộ mô phỏng cần

thực hiện hai việc khác nhau.

Một mặt là vì các mô phỏng cho các giao thức yêu cầu một ngôn ngữ lập trình hệ

thống có thể tính toán một cách hiệu quả các byte, các tiêu đề packet và các thuật toán

thực thi đang chạy trên một tập dữ liệu lớn. Với tác vụ này, run-time speed (tốc độ thời

gian chạy thực) là quan trọng trong khi turn-around time (thời gian thay đổi) thì ít quan

trọng hơn. Turn-around time bao gồm thời gian chạy mô phỏng, thời gian tìm lỗi, thời

gian sửa lỗi, thời gian biên dịch lại và thời gian chạy lại.

Mặt khác, khi nghiên cứu mạng thì rất cần quan tâm đến các tham số và các cấu

hình có thay đổi nhưng không đáng kể, hay quan tâm đến các scenario (tình huống) cần

khám phá thật nhanh chóng. Trong tác vụ này thì iteration time (thời gian lặp lại, tức là

thời gian hay đổi mô hình và chạy lại) là quan trọng hơn. Vì cấu hình chỉ chạy một lần

lúc bắt đầu mô phỏng nên run-time trong tác vụ này rõ ràng kém quan trọng hơn.

3.2 Xây dựng chương trình mô phỏng

3.2.1 Mục tiêu mô phỏng

Cho trước một topology mạng gồm 10 nút bộ định tuyến như trong hình dưới

đây:

Hình 3.6: Mô hình mạng

Học viện công nghệ bưu chính viễn thông 57

Page 67: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương III

Các nguồn phát lưu lượng (src) đều đặt tại nút 0 và các đích nhận lưu lượng

(sink) đều đặt tại nút 0. Các liên kết giữa các nút đều là full-duplex với thời gian trễ là

30 ms và có băng thông như sau :

Nút 0 – Nút 1: 3M ; Nút 9 – Nút 10: 3M

Nút 1 – Nút 2: 1M ; Nút 2 – Nút 4:1M ; Nút 3 – Nút 4: 1 M ; Nút 3 – Nút 5: 1

M ; Nút 5 – Nút 7: 1M ; Nút 7 – Nút 8: 1 M ; Nút 7 – Nút 9: 1 M ;

Nút 1 – Nút 3: 2 M ; Nút 4 – Nút 7: 2 M ; Nút 4 – Nút 7: 2 M ; Nút 5 – Nút 7: 2

M

Nút 0 và Nút 10 là bộ định tuyến IP thông thường (R0 và R10). Các nút từ 1 đến

9 là các bộ định tuyến có hỗ trợ MPLS (LSR1 đến LSR9) tạo thành một miền MPLS.

Có một nguồn lưu lượng (scr1) được tạo thành và gắn vào nút R0. Tương ứng có 1 đích

lưu lượng (sink1) gắn vào nút R10. Nguồn phát luồng lưu lượng với tốc độ 0,8 Mbps,

kích thước gói 600B.

Mục tiêu chương trình mô phỏng hướng tới :

1. Thông tin mô phỏng chung của toàn mạng : bao nhiêu gói được tạo ra ,

bao nhiêu gói được chuyển tiếp , bao nhiêu gói bị mất mát.

2. Theo dõi quá trình thiết lập đường làm việc, đường bảo vệ và tái thiết lập

chúng ra sao.

3. Biểu diễn quá trình mô phỏng bằng các phần mềm ứng dụng NS2 như

Nam, XGRAPH

3.2.2 Thực hiện và kết quả

3.2.2.1 Mô phỏng với lịch trình qui định trong script mô phỏng

1. Thiết lập đường làm việc: LSP_1100 (ER=1_3_5_7_9)

2. Thiết lập đường bảo vệ toàn cục: LSP_1200 (ER=1_2_4_6_8_9)

3. Thời điểm 0,5s: Luồng 1 (src1_sink1) bắt đầu truyền đến LSP_1100

4. Thời điểm 2,0s: Liên kết giữa LSR5_LSR7 bị đứt, đến 3,5s thì khôi phục.

5. Thời điểm 5,0s: Luồng 1 ngưng truyền.

Học viện công nghệ bưu chính viễn thông 58

Page 68: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương III

Hình 3.7: Lịch trình mô phỏng

3.2.2.2 Biểu diễn trên đồ thị XGRAPH

Từ Xgraph (hình 3.8) ta thấy tại thời điểm LSR5-LSR7 bị đứt (2,06s), LSR5 phát

một bản tin FIS về LSR1. Sau khi LSR1 nhận được thông điệp này, nó sẽ chuyển luồng

lưu lượng từ đường làm việc sang đường bảo vệ toàn cục đã thiết lập. Do thông điệp

thông báo phải mất một khoảng thời gian mới đến được LSR1 nên trong thời gian này,

các gói vẫn còn được truyền trên đường dẫn có liên kết bị hỏng và bị mất gói đồng thời

phải mất 1 thời gian trễ nhất định các gói tin đầu tiên trên đường thiết lập bảo vệ toàn

cục mới chuyển tới LSR10. Nên ta thấy tại thời điểm 2s đến 2.4s, lượng băng thông

giảm đột ngột rồi tăng lại ổn định như cũ sau 1 khoảng thời gian

Hình 3.8: Đồ thị Xgraph

.

Học viện công nghệ bưu chính viễn thông 59

Page 69: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương III

Tại thời điểm 3.5s khôi phục đường truyển lượng băng thông tăng đột biến rồi

giảm về ổn định 0,8 Mb/s do trễ gói tin trên đường thiết lập bảo vệ toàn cục.

Rõ ràng việc tỉ lệ mất gói tin khá lớn do một số lượng gói tin nhất định bị mất

mát trên đường liên kết hỏng do trễ gói tin là nhược điểm cơ chế Makam. Nhược điểm

này được khắc phục ở cơ chế Resever Backup.

3.2.2.3 Biểu diễn NAM

Báo hiệu thiết lập đường làm việc và đường bảo vệ

Đường thiết lập LSP ER=1_3_5_7_9

Đường bảo vệ LSP ER =1_2_4_6_8_9.

Hình 3.9: Báo hiệu thiết lập đường làm việc và bảo vệ

o Luồng 1: BW=0.8M chạy

o start = 0.5

o stop = 5.0

o sử dụng ER =1_3_5_7_9

Học viện công nghệ bưu chính viễn thông 60

Page 70: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương III

Hình 3.10: Sử đường làm việc ER=1_3_5_7_9

Thời điểm 2,06s phát hiện lỗi trên đường làm việc LSP_1100.

Chuyển sang đường bảo vệ LSP_1200

Hình 3.11: Phát hiện lỗi

Học viện công nghệ bưu chính viễn thông 61

Page 71: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương III

Hình 3.12: Chuyển sang đường bảo vệ

Tại 3,5s lỗi đã được khôi phục

Chuyển lưu lượng trở lại đường làm việc LSP_1100

Hình 3.13: Lỗi đã được khôi phục

Học viện công nghệ bưu chính viễn thông 62

Page 72: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương III

Hình 3.14: Chuyển lưu lượng trở lại đường làm việc

Tại 5,0 s kết thúc quá trình truyền gói

750 gói được truyền, mất 57 gói

Hình 3.15: Kết thúc quá trình truyền gói

Học viện công nghệ bưu chính viễn thông 63

Page 73: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Chương III

3.3 Tổng kết

Trong chương này chúng ta giới thiệu về phần mềm mô phỏng NS2 và ứng dụng

nó vào kỹ thuật lưu lượng giao thức MPLS, cụ thể là ta đã mô phỏng thành công cơ

chế bảo vệ và thiết lập đường. Nó giúp ta hiểu kĩ về quá trình thiết lập đường truyền

và thiết lập bảo vệ ra sao đồng thời giúp ta theo dõi được quá trình truyền gói tin, mất

mát gói và độ trễ.

Các file Otcl Scripts thực hiện bài toán mô phỏng trình bày trong phụ lục của đồ

án này.

Học viện công nghệ bưu chính viễn thông 64

Page 74: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Kết Luận

KẾT LUẬN

Với những ưu điểm vượt trội, MPLS được xem là công nghệ đầy hứa hẹn trong

tương lai nhằm đáp ứng nhu cầu đa dịch vụ, đa phương tiện của khách hàng.

Sau một thời gian nghiên cứu, đồ án đã giải quyết được một số vấn đề sau:

Tìm hiểu tổng quan về công nghệ MPLS.

Nghiên cứu vấn đề điều khiển lưu lượng và bài toán điều khiển lưu

lượng trong MPLS.

Xây dựng chương trình mô phỏng cơ chế bảo vệ và khôi phục

đường trong kỹ thuật lưu lượng MPLS

Các vấn đề được nêu ra trong đồ án cho ta một cái nhìn tổng quan hơn về công

nghệ MPLS. Kĩ thuật điều khiển lưu lượng sử dụng trong công nghệ MPLS đã giúp

giải quyết vấn đề tắc nghẽn mạng nhờ đó nâng cao hiệu năng mạng. Nghiên cứu điều

khiển lưu lượng trong MPLS là vấn đề rất quan trọng nhằm mở ra các kĩ thuật mạng

để nâng cao hiệu quả sử dụng mạng trong tương lai.

Công việc nghiên cứu về công nghệ MPLS vẫn đang được các tổ chức tiếp tục

nghiên cứu, phát triển và hoàn thiện tiêu chuẩn. Việc hoàn thiện các tiêu chuẩn có vai

trò quan trọng đối với các nhà sản xuất thiết bị, cũng như các nhà cung cấp mạng

nhằm đạt được một mạng tối ưu nhất.

Đối với cơ sở hạ tầng thông tin quốc gia, việc triển khai công nghệ MPLS cần

được nghiên cứu sâu hơn để phát huy những ưu điểm của MPLS đồng thời phù hợp

với nhu cầu thị trường của Việt Nam.

Một lần nữa xin gửi lời cảm ơn chân thành tới các thầy cô giáo đã giúp đỡ em

trong những năm tháng học tập tại trường.

Hà nội, tháng 11 năm 2008

Đỗ Tiến Thành

Học viện công nghệ bưu chính viễn thông 65

Page 75: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại Tài Liệu Tham Khảo

TÀI LIỆU THAM KHẢO

[1] Công nghệ MPLS –TS Nguyễn Tiến Ban 2008

[2] Rosen, E., Viswanathan, A. and R. Callon, “Multiprotocol Label Switching Architecture”, RFC 3031.

[3] L. Andersson, P. Doolan, N. Feldman, A. Fredette, B. Thomas, “LDP Specification”, RFC 3036.

[4] MPLS Fundamentary ( Luc De Ghein- CisscoPress 2006)

[5] ATM & MPLS: Theory and Application ( Eric Osborne, Ajay Simha-Ciscopress 2002)

[6] D. Awduche, J. Malcolm, J. Agogbua, M. O’Dell, J. McManus “Traffic Engineering in MPLS”, RFC 2702.

[7] Keping Long, Zhongshan Zhang, Shiduan Cheng, “Load balancing algorithms in MPLS traffic engineering”, High Performance Switching and Routing, 2001 IEEE Workshop on, 2001.

[8] TS. Phùng Văn Vận, KS. Đỗ Mạnh Quyết, “Công nghệ chuyển mạch nhãn đa giao thức MPLS”, Nhà xuất bản Bưu Điện, 2003.

[9] Eric Osborne, Ajay Simha, “Traffic Engineering with MPLS”, Cissco Press, 2003.

[10] Hoàng Trọng Minh, Bài giảng ”Công nghệ chuyển mạch nhãn đa giao thức MPLS”, Học viện công nghệ bưu chính viễn thông.

[11] Ns-manual http://www.isi.edu/nsna m /ns/ns-doc u m entation.ht m l

[12] MNS-Manual - http://flow e r.ce.cnu.ac.kr/~fog1/mns/ .

Học viện công nghệ bưu chính viễn thông 66

Page 76: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Phụ Lục

PHỤ LỤC

Mã nguồn chương trình mô phỏng# Tao ra mot doi tuong mo phong

set ns [new Simulator]

$ns rtproto LS

# Tao file de xuat ket qua cho NAM

set nf [open bai4.nam w]

$ns namtrace-all $nf

# Tao cac file de luu du lieu cho xgraph

set f1 [open luong_1.tr w]

set f2 [open luong_seq.tr w]

# So do ket noi mang

1M 2M 1M

# LSR2---------------LSR4------------------LSR6-------------------LSR8

# / / / / \

# / / / / \

# 1M / 1M / 1M / 1 M / \ 2M

# / / / / \

# / / / / \

# R0-----------LSR1----------------LSR3------------------LSR5----------------LSR 7----------LSR9---------R10

# 2M 1M 2M 1M

# Khai bao 2 nut IP (R0,R10) va 9 nut MPLS (LSR1 --> LSR9)

set R0 [$ns node]

foreach i "1 2 3 4 5 6 7 8 9" {

set LSR$i [$ns mpls-node]

set m LSR$i

eval $$m color blue

}

set R10 [$ns node]

Học viện công nghệ bưu chính viễn thông 67

Page 77: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Phụ Lục

# Khai bao liên kết: odes bw delay queue

$ns duplex-link $R0 $LSR1 3Mb 10ms DropTail

$ns duplex-link $LSR1 $LSR3 2Mb 30ms DropTail

$ns duplex-link $LSR3 $LSR5 1Mb 30ms DropTail

$ns duplex-link $LSR5 $LSR7 2Mb 30ms DropTail

$ns duplex-link $LSR7 $LSR9 1Mb 30ms DropTail

$ns duplex-link $LSR9 $R10 3Mb 10ms DropTail

$ns duplex-link $LSR1 $LSR2 1Mb 30ms DropTail

$ns duplex-link $LSR2 $LSR4 1Mb 30ms DropTail

$ns duplex-link $LSR4 $LSR6 2Mb 30ms DropTail

$ns duplex-link $LSR6 $LSR8 1Mb 30ms DropTail

$ns duplex-link $LSR8 $LSR9 2Mb 30ms DropTail

$ns duplex-link $LSR3 $LSR4 1Mb 30ms DropTail

$ns duplex-link $LSR5 $LSR6 1Mb 30ms DropTail

$ns duplex-link $LSR7 $LSR8 1Mb 30ms DropTail

# Ve dang so do mang

$ns duplex-link-op $R0 $LSR1 orient right

$ns duplex-link-op $LSR1 $LSR3 orient right

$ns duplex-link-op $LSR3 $LSR5 orient right

$ns duplex-link-op $LSR5 $LSR7 orient right

$ns duplex-link-op $LSR7 $LSR9 orient right

$ns duplex-link-op $LSR9 $R10 orient right

$ns duplex-link-op $LSR1 $LSR2 orient 0.333

$ns duplex-link-op $LSR2 $LSR4 orient right

$ns duplex-link-op $LSR4 $LSR6 orient right

$ns duplex-link-op $LSR6 $LSR8 orient right

$ns duplex-link-op $LSR8 $LSR9 orient 1.667

$ns duplex-link-op $LSR3 $LSR4 orient 0.333

$ns duplex-link-op $LSR5 $LSR6 orient 0.333

$ns duplex-link-op $LSR7 $LSR8 orient 0.333

# Ghi chu

$ns duplex-link-op $LSR1 $LSR3 label " 2M "

$ns duplex-link-op $LSR3 $LSR5 label " 1M "

Học viện công nghệ bưu chính viễn thông 68

Page 78: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Phụ Lục

$ns duplex-link-op $LSR5 $LSR7 label " 2M "

$ns duplex-link-op $LSR7 $LSR9 label " 1M "

$ns duplex-link-op $LSR1 $LSR2 label " 1M "

$ns duplex-link-op $LSR2 $LSR4 label " 1M "

$ns duplex-link-op $LSR4 $LSR6 label " 2M "

$ns duplex-link-op $LSR6 $LSR8 label " 1M "

$ns duplex-link-op $LSR8 $LSR9 label " 2M"

$ns duplex-link-op $LSR3 $LSR4 label " 1M "

$ns duplex-link-op $LSR5 $LSR6 label " 1M "

$ns duplex-link-op $LSR7 $LSR8 label " 1M "

$R0 label "Nguon"

$R10 label "Dich"

$LSR1 label "Ingress "

$LSR9 label " Egress"

# Cau hinh LDP agent tren tat ca cac nut MPLS

$ns configure-ldp-on-all-mpls-nodes

# Dat color cho cac ban tin LDP

$ns ldp-request-color blue

$ns ldp-mapping-color red

$ns ldp-withdraw-color magenta

$ns ldp-release-color orange

$ns ldp-notification-color green

#----------------------------------------------------------------------

# Dinh nghia cac ham su dung trong chuong trinh chinh

#----------------------------------------------------------------------

# Tao mot procedure ghi nhan bang thong theo mot chu ki $time

proc record {} {

global sink1 f1

set ns [Simulator instance]

# Dinh chu ki ghi nhan bang thong

set time 0.1

# Lay so luong packet nhan duoc trong chu ky o moi sink

Học viện công nghệ bưu chính viễn thông 69

Page 79: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Phụ Lục

set bw1 [$sink1 set bytes_]

set now [$ns now]

puts $f1 "$now [expr $bw1/$time*8/1000000]"

# Reset gia tri bytes_ cua sink

$sink1 set bytes_ 0

#Dinh thoi goi lai ham record sau chu ky $time

$ns at [expr $now+$time] "record"

}

#----------------------------------------------------

set prvseqnb -1

set seqerrnb 0

# Thu tuc ghi lai so packet nhan duoc dung thu tu

proc seq-record {size rate ftime} {

global prvseqnb seqerrnb sink1 f2

set ns [Simulator instance]

# Dat chu ky thoi gian chay lai thu tuc nay

set tsize [parse-bw $size]

set trate [parse-bw $rate]

set time [expr double($tsize)/double($trate)/8.0]

set now [$ns now]

# Tim so thu tu cua packet

set revseqnb [$sink1 set expected_]

if {$prvseqnb > $revseqnb} {

incr seqerrnb 1

}

# Ghi so thu tu cua packet vao file

Học viện công nghệ bưu chính viễn thông 70

Page 80: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Phụ Lục

if {$prvseqnb != $revseqnb} {

puts $f2 "$now [$sink1 set expected_]"

set prvseqnb $revseqnb

}

# Dinh thoi goi lai ham seq-record

if { [expr $now+$time] < $ftime } {

$ns at [expr $now+$time] "seq-record $size $rate $ftime"

}

}

#----------------------------------------------------

# Ham tao mot nguon luu luong gan vao node voi sink, size goi,

# burst, idle time, rate va colour cua luu luong

proc attach-expoo-traffic { node sink size burst idle rate } {

set ns [Simulator instance]

set source [new Agent/CBR/UDP]

$ns attach-agent $node $source

set traffic [new Traffic/Expoo]

$traffic set packet-size $size

$traffic set burst-time $burst

$traffic set idle-time $idle

$traffic set rate $rate

$source attach-traffic $traffic

$ns connect $source $sink

return $source

}

#----------------------------------------------------

# Thu tuc sau thong bao ER/CR-LSP da thiet lap de thuc hien tac vu khac

proc notify-erlsp-setup {node lspid} {

global src1 src2

set ns [Simulator instance]

set msg " [string range [$ns now] 0 3]s: Tunnel LSP_$lspid (Ingress=LSR[$node

id]) da duoc thiet lap xong !"

puts $msg

Học viện công nghệ bưu chính viễn thông 71

Page 81: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Phụ Lục

$ns trace-annotate $msg

set module [$node get-module "MPLS"]

switch $lspid {

1100 {

$module bind-flow-erlsp 10 100 $lspid

}

1200 {

$module reroute-lsp-binding 1100 $lspid

}

default {

puts " Error!"

exit 1

}

}

}

proc notify-erlsp-fail {node status lspid tr} {

set ns [Simulator instance]

set module [$node get-module "MPLS"]

if { [$node id] == 1 && $status=="BSNodeError" } {

$module set-lib-error-for-lspid $lspid 1

set msg " [string range [$ns now] 0 3]s: Phat hien loi tren duong lam viec

LSP_$lspid. Chuyen sang duong bao ve LSP_1200 !"

}

if { [$node id] == 1 && $status=="NodeRepair" } {

$module set-lib-error-for-lspid $lspid -1

set msg " [string range [$ns now] 0 3]s: Loi da duoc khoi phuc. Chuyen

luu luong tro lai duong lam viec LSP_$lspid !"

}

puts $msg

$ns trace-annotate $msg

}

Học viện công nghệ bưu chính viễn thông 72

Page 82: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Phụ Lục

#----------------------------------------------------

# Thu tuc xuat tong so packet nhan duoc o cac sink

proc recv-pkts {} {

global sink1 seqerrnb

set ns [Simulator instance]

set msg " Luong 1 da truyen [$sink1 set expected_] goi, mat [$sink1 set nlost_]

goi, ti le mat goi la [string range [expr [$sink1 set nlost_]*100.0/[$sink1 set

expected_]] 0 3] */*"

puts $msg

$ns trace-annotate $msg

set msg " Tong so packet bi sai thu tu : $seqerrnb goi"

puts $msg

$ns trace-annotate $msg

}

#----------------------------------------------------

# Thu tuc dong file va the hien ket qua khi ket thuc mo phong

proc finish {} {

global ns nf f1 f2

$ns flush-trace

close $nf

close $f1

close $f2

exec xgraph luong_1.tr -M -nb -bg white -fg black -zg black \

-geometry 500x250 -y "BW (Mbps)" -x "Time (sec)" \

-t "Bai 4: Khoi phuc duong theo co che Makam" -tf "helvetica-12" &

exec xgraph luong_seq.tr -p -nl -nb -bg white -fg black -zg black \

-geometry 500x250 -y "Packet No." -x "Time (sec)" \

-t "Bai 4: Bieu do so thu tu packet theo thoi gian" -tf "helvetica-12" &

exec nam -r 2ms bai4.nam &

exit 0

}

#----------------------------------------------------

Học viện công nghệ bưu chính viễn thông 73

Page 83: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Phụ Lục

# Tao ra sink1 gan voi nut R10 (day la noi thu nhan traffic)

set sink1 [new Agent/LossMonitor]

$ns attach-agent $R10 $sink1

# Tao ra nguon luu luong src1 gan voi nut R0 bang cach

# goi ham attach-expoo-traffic. Luong co packet_size=600, rate=0.8Mbps

set src1 [attach-expoo-traffic $R0 $sink1 600B 0 0 0.8M ]

$src1 set fid_ 100

$ns color 100 red

# Cai dat co che khoi phuc: MAKAM

$ns enable-reroute notify-prenegotiated

[$LSR3 get-module "MPLS"] set-protection-lsp 0.7 0.01 1100

[$LSR5 get-module "MPLS"] set-protection-lsp 0.7 0.01 1100

[$LSR7 get-module "MPLS"] set-protection-lsp 0.7 0.01 1100

# Bat dau mo phong

puts "\n BAI 4: KHOI PHUC DUONG BANG TAI DINH TUYEN TOAN CUC

(MAKAM)\n"

$ns at 0.00 "record"

$ns at 0.00 "seq-record 600 800k 5.5"

# Thiet lap LSP lam viec

$ns at 0.15 "$ns trace-annotate {Bao hieu thiet lap duong lam viec: LSP_1100,

ER=1_3_5_7_9 }"

$ns at 0.15 "[$LSR1 get-module "MPLS"] setup-erlsp 9 1_3_5_7_9 1100"

# Thiet lap LSP bao ve

$ns at 0.15 "$ns trace-annotate {Bao hieu thiet lap duong bao ve: LSP_1200,

ER=1_2_4_6_8_9 }"

$ns at 0.15 "[$LSR1 get-module "MPLS"] setup-erlsp 9 1_2_4_6_8_9 1200"

$ns at 0.50 "$ns trace-annotate {Luong 1: BW=0.8M (start=0.5 stop=5.0) su dung

LSP_1100, ER=1_3_5_7_9 }"

Học viện công nghệ bưu chính viễn thông 74

Page 84: Kỹ thuật lưu lượng trong MPLS và các cơ chế  bảo về đường

Đồ án tốt nghiệp Đại học Phụ Lục

$ns at 0.50 "$src1 start"

# Link giua LSR5 va LSR7 bi dut tu 2.0s, den 3.5s thi khoi phuc lai

$ns rtmodel-at 2.0 down $LSR5 $LSR7

$ns rtmodel-at 3.5 up $LSR5 $LSR7

$ns at 5.0 "$src1 stop"

$ns at 5.5 "recv-pkts"

$ns at 5.5 "finish"

$ns run

Học viện công nghệ bưu chính viễn thông 75