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

Một phần của tài liệu Nghiên cứu công nghệ MPLS và ứng dụng trong mạng IPVPN (Trang 27)

Giới thiệu chung

Giao thức phân phối nhãn được nhóm nghiên cứu MPLS của IETF xây dựng và ban hành dưới tên RFC 3036. Phiên bản mới nhất được công bố năm 2001 đưa ra những định nghĩa và nguyên tắc hoạt động của giao thức LDP.

Giao thức phân phối nhãn được sử dụng trong quá trình gán nhãn cho các gói thông tin. Vị trí của giao thức LDP và các mối liên kết chức năng cơ bản của LDP với các giao thức khác thể hiện trên hình 2.6. Giao thức LDP là giao thức điều khiển tách biệt được các LSR sử dụng để trao đổi và điều phối quá trình gán nhãn/FEC. Giao thức này là một tập hợp các thủ tục trao đổi các bản tin cho phép các LSR sử dụng giá trị nhãn thuộc FEC nhất định để truyền các gói thông tin.

Một kết nối TCP được thiết lập giữa các LSR đồng cấp để đảm bảo các bản tin LDP được truyền một cách trung thực theo đúng thứ tự. Các bản tin LDP có thể xuất phát từ bất cứ một LSR (điều khiển đường chuyển mạch nhãn LSR độc lập) hay từ LSR biên lối ra (điều khiển LSP theo lệnh) và chuyển từ LSR phía trước đến LSR phía sau cận kề. Việc trao đổi các bản tin LDP có thể được khởi phát bởi sự phát hiện của luồng số liệu đặc biệt, bản tin lập dự trữ RSVP hay cập nhập thông tin định tuyến. Khi một cặp LSR đã trao đổi bản tin LDP cho một FEC nhất định thì một đường chuyển mạch LSP từ đầu vào đến đầu ra được thiết lập sau khi mỗi LSR ghép nhãn đầu vào với nhãn đầu ra tương ứng trong LIB của nó. LDP có thể hoạt động giữa các LSR kết nối trực tiếp hay không trực tiếp.

T h µ n h p h Ç n g i a o t h ø c M P L S T h µ n h p h Ç n g i a o t h ø c n o n - M P L S M g r Q u ¶ n l ý L D P D s c y B ¶ n t i n p h ¸ t h i Ö n S e s s B ¶ n t i n q u ¶ n l ý p h i ª n A d v t P h ¸ t h µ n h L D P N o t f B ¶ n t i n x ¸ c n h Ë n

Hình 2.5: Vị trí giao thức LDP trong bộ giao thức MPLS

LDP định nghĩa 4 loại bản tin: Bản tin thăm dò, Bản tin phiên, Bản tin phát hành, Bản tin thông báo. Bốn loại bản tin này cũng nói lên chức năng mà nó thực hiện.

Bản tin thăm dò (Discovery): Dùng để thông báo và duy trì sự có mặt của một LSR trong mạng. Theo định kỳ, LSR gửi bản tin Hello qua cổng UDP với địa chỉ multicast tới tất cả các bộ định tuyến trên mạng con.

Bản tin phiên (Session): Để thiết lập, duy trì và xoá các phiên giữa các LSR. Hoạt động này yêu cầu gửi các bản tin Initialization trên TCP. Sau khi hoạt động này hoàn thành các LSR trở thành các đối tượng ngang cấp LDP.

Bản tin phát hành (Advertisement): Dùng để tạo, thay đổi và xoá các ràng buộc nhãn với các FEC. Những bản tin này cũng được mang trên TCP. Một LSR có thể yêu cầu một liên kết nhãn từ LSR lân cận bất kỳ khi nào nó cần. Nó cũng phát hành các liên kết nhãn bất cứ khi nào nó muốn tới một đối tượng ngang cấp LDP nào đó sử dụng liên kết nhãn.

Bản tin xác nhận (Notification): Dùng để cung cấp các thông báo lỗi, thông tin chẩn đoán, và thông tin trạng thái. Những bản tin này cũng mang trên TCP.

Đa số các bản tin LDP chạy trên giao thức TCP để đảm bảo độ tin cậy của các bản tin (ngoại trừ bản tin thăm dò).

Mỗi một bản tin LDP được gọi là đơn vị dữ liệu giao thức PDU, được bắt đầu bằng tiêu đề bản tin và sau đó là các bản tin LDP như đã được trình bày ở trên Hình 2.7 chỉ ra các trường chức năng của tiêu đề LDP và các trường này thực hiện các chức năng sau:

Phiên bản: Chỉ số phiên bản của giao thức, phiên bản đang sử dụng hiện tại là phiên bản 1.

Độ dài PDU: Tổng độ dài của PDU tính theo byte, ngoại trừ trường phiên bản và trường độ dài.

Nhận dạng LDP: Nhận dạng không gian nhãn của LSR gửi bản tin này. Bốn byte đầu tiên chứa địa chỉ IP được gán cho LSR để nhận dạng bộ định tuyến. Hai byte cuối nhận dạng không gian nhãn bên trong LSR.Với LSR có không gian nhãn lớn, trường chức năng này đặt về giá trị 0.

. 0 1 5 3 1 P h i ª n b ¶ n § é d µ i P D U N h Ë n d ¹ n g L D P N h Ë n d ¹ n g L D P Hình 2.6 : Tiêu đề LDPMã hóa TLV

LDP sử dụng lược đồ mã hoá kiểu-độ dài-giá trị TLV (Type-Length-Value) để mã hoá các thông tin mang trong bản tin LDP. Như chỉ ra trên hình 2.8, TLVđược mã hoá thành một trường 2 byte trong đó sử dụng 14 bít để đặc trưng cho kiểu, và 2 bit (U, F) cho trường hợp LSR không nhận ra được kiểu, 2 byte tiếp theo là trường độ dài và trường giá trị có độ dài thay đổi.

 Bit U (Unknown TLV): TLV không biết;

 Bit F (Forward Unknown TLV): chuyển tiếp TLV không biết;

 Trường kiểu: qui định các trường mà giá trị được dịch;

 Trường độ dài: xác định độ dài của trường giá trị;

0 1 5 3 1

K i Ó u § é d µ i

G i ¸ t r Þ U F

Hình 2.7: Mã hoá TLV

Dựa trên bản tin nhận được, khi bit U có giá trị 0, LSR sẽ gửi thông báo ngược lại tới nơi phát và toàn bộ bản tin sẽ được bỏ qua. Nếu U có giá trị 1 thì mặc dù không nhận ra kiểu, LSR không cần gửi thông báo phản hồi lại phía phát và vẫn xử lý phần còn lại của bản tin như thể là bản tin chưa biết kiểu này không tồn tại.

Bit F chỉ được sử dụng khi bit U = 1 và bản tin LDP chứa bản tin chưa biết kiểu này được truyền đi. Nếu bít F bằng 0 thì bản tin chưa biết kiểu sẽ không chuyển đi cùng bản tin LDP chứa nó và nếu bit F=1 thì bản tin chưa biết kiểu sẽ chuyển đi cùng bản tin LDP chứa nó.

Khuôn dạng chung

Khuôn dạng bản tin LDP

Hình 2.8: Khuôn dạng các bản tin LDP (adsbygoogle = window.adsbygoogle || []).push({});

Bit U: bit bản tin chưa biết, liên quan đến bản tin chưa biết kiểu. Nếu U=0 thì một thông báo sẽ được phản hồi lại cho phía gửi, còn nếu U=1 thì bản tin không thể được thông dịch bởi phía nhận, lúc đó bản tin bị bỏ qua mà không có phản hồi.

Kiểu bản tin: Chỉ ra kiểu bản tin là gì.

Độ dài bản tin: Chỉ ra chiều dài của các phần nhận dạng bản tin, các thông số bắt buộc và các thông số tuỳ chọn.

ID bản tin

Thông số bắt buộc Thông số tuỳ chọn U

Nhận dạng bản tin: là một số nhận dạng duy nhất bản tin. Trường này có thể được sử dụng để kết hợp các bản tin Thông báo với một bản tin khác.

Thông số bắt buộc,và Thông số tuỳ chọn tuỳ thuộc vào từng bản tin LDP.

Về mặt nguyên lý, mọi thứ xuất hiện trong bản tin LDP có thể được mã hoá theo TLV, nhưng các đặc tả LDP không phải luôn luôn sử dụng lược đồ TLV. Nó không được sử dụng khi nó không cần thiết và sự sử dụng nó khi đó sẽ gây lãng phí không gian. Chẳng hạn không cần thiết phải sử dụng khuôn dạng TLV nếu chiều dài của giá trị là cố định hay kiểu của giá trị đã được biết và không phải chỉ định một nhận dạng kiểu.

Một số bản tin LDP

- Bản tin Hello

Bản tin Hello (Chào hỏi) được trao đổi giữa hai LSR ngang cấp trong một phiên phát hiện LDP. Một LSR lưu giữ bản ghi của các bản tin Hello được gửi từ các LSR ngang cấp khác. Các cặp LSR thương lượng thời gian lưu giữ dùng cho bản tin Hello. Mỗi cặp đề nghị một thời gian lưu giữ và thời gian lưu giữ được dùng là sẽ là giá trị nhỏ nhất được đề nghị trong các bản tin.

- Bản tin Initialization (Khởi tạo)

Các bản tin thuộc loại này được gửi khi bắt đầu một phiên LDP giữa hai LSR để trao đổi các tham số, các đại lượng tuỳ chọn cho phiên. Các tham số này bao gồm:

 Chế độ phân bổ nhãn

 Các giá trị định thời

 Phạm vi các nhãn sử dụng trong kênh giữa hai LSR đó. - Bản tin Label Mapping và Label Withdraw

Các bản tin Label Mapping (Liên kết nhãn) được sử dụng để quảng bá liên kết giữa FEC (tiền tố điạ chỉ) và nhãn. Bản tin Label Withdraw (Thu hồi nhãn) thực hiện quá trình ngược lại: nó được sử dụng để xoá bỏ liên kết vừa thực hiện. Bản tin này được sử dụng khi có sự thay đổi trong bảng định tuyến (thay đổi tiền tố địa chỉ) hay 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 đó.

Trong chế độ hoạt động gán nhãn theo yêu cầu, LSR đường lên sẽ yêu cầu LSR đường xuống gán và quảng bá nhãn bằng cách sử dụng bản tin Label Request.

- Bản tin Label Request Abord

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ẽ hủy bỏ yêu cầu với bản tin Label Request Abord (Hủy bỏ yêu cầu nhãn).

- Bản tin Label Release:

Bản tin này được LSR sử dụng khi nó nhận được liên kết nhãn không còn cần thiết nữa. Điều này thường xảy ra khi LSR 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 tương ứng.

Thủ tục thăm dò LSR lân cận

Thủ tục phát hiện LSR lân cận của LDP chạy trên UDP thực hiện như sau (hình 2.10):

 Một LSR định kỳ gửi bản tin Hello tới các cổng UDP đã biết trong tất cả các bộ định tuyến trong mạng con của nhóm multicast.

 Tất cả các LSR tiếp nhận bản tin Hello này trên cổng UDP. Như vậy, tại một thời điểm nào đó LSR sẽ biết được tất cả các LSR khác mà nó có kết nối trực tiếp.

 Khi LSR nhận biết được địa chỉ của LSR khác bằng cơ chế này thì nó sẽ thiết lập kết nối TCP đến LSR đó.

 Khi đó phiên LDP được thiết lập giữa hai LSR. Phiên LDP là phiên hai chiều có nghĩa là mỗi LSR ở hai đầu kết nối đều có thể yêu cầu và gửi ràng buộc nhãn.

Trong trường hợp các LSR không kết nối trực tiếp trong một mạng con, người ta sử dụng một cơ chế bổ sung như sau:

LSR định kỳ gửi bản tin Hello trên UDP đến địa chỉ IP đã được khai báo khi lập cấu hình. Phía nhận bản tin này có thể trả lời lại bằng bản tin HELLO khác truyền một chiều ngược lại đến LSR gửi và việc thiết lập các phiên LDP được thực hiện như trên. (adsbygoogle = window.adsbygoogle || []).push({});

Thông thường trường hợp này hay được áp dụng khi giữa hai LSR có một đường LSP cho điều khiển lưu lượng và nó yêu cầu phải gửi các gói có nhãn qua đường LSP đó.

Hình 2.9: Thủ tục phát hiện LSR lân cận

2.5.2 Giao thức CR-LDP

Giao thức CR-LDP được sử dụng để điều khiển cưỡng bức LDP. Giao thức này là phần mở rộng của LDP cho quá trình định tuyến cưỡng bức của LSP. Cũng giống như LDP, nó sử dụng các phiên TCP giữa các LSR đồng cấp để gửi các bản tin phân phối nhãn.

Một hệ thống hỗ trợ định tuyến cưỡng bức cần đảm bảo các yêu cầu sau: thứ nhất, nút nguồn cần biết cấu hình mạng. Thứ hai, nguồn cần biết các thuộc tính của liên kết trong mạng. Thứ ba, hệ thống có hỗ trợ định tuyến hiện. Thứ tư, giống như tuyến được thiết lập giữa nút nguồn và nút đích, sự dành riêng tài nguyên có thể xảy ra và trạng thái thuộc tính của đường liên kết phải được cập nhật liên tục. Như vậy, để hỗ trợ định tuyến cưỡng bức ngoài một số điều kiện khống chế về băng thông, khoảng cách quản lý còn cần có khả năng định tuyến hiện (hoặc định tuyến nguồn).

Để xác nhận thông tin tài nguyên dành riêng theo LSR, CR-LDP tạo thêm đối tượng mới “tham số điều khiển lưu lượng” gồm 6 tham số: Tốc độ số liệu đỉnh, kích thước số liệu bùng phát, tốc độ số liệu ngẫu nhiên, kích thước lớn quá hạn, tần số và trọng số. Hai tham số đầu định nghĩa về số lượng lớn nhất của lưu lượng trong LSP. Hai tham số sau định nghĩa về số lượng lưu lượng. Tần số chỉ ra khoảng thời gian LSP đạt được cung cấp độ rộng băng của LSR và trọng số được dùng để xác định độ rộng băng trên CDR, phân chia theo LSP.

Có hai lý do để sử dụng MPLS. Trước hết MPLS cho phép tách các thông tin sử dụng để chuyển tiếp (nhãn) từ các thông tin có trong mào đầu của gói IP. Thứ hai là việc chuyển đổi giữa FEC và LSP chỉ được giới hạn trong LSR tại một đầu của LSP. Nói một cách khác, việc quyết định gói IP nào sẽ được định tuyến hiện ra sao hoàn toàn do LSR tính toán xác định tuyến. Và như đã trình bày ở trên, đây chính là chức năng cần thiết để hỗ trợ định tuyến cưỡng bức.

Một phần của tài liệu Nghiên cứu công nghệ MPLS và ứng dụng trong mạng IPVPN (Trang 27)