Giao thức phân phối nhãn định tuyến dựa trên ràng buộc CR-LDP (Constraint-Based Routing-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 Để hiểu rõ hơn về định tuyến cưỡng bức dựa trên ràng buộc, ta xét việc định tuyến với một mạng IP truyền thống.
Một mạng có thể được xem như là một tập hợp các hệ thống tự trị AS, trong đó việc định tuyến ở mỗi AS tuân theo giao thức định tuyến trong miền. Việc định tuyến giữa các AS lại tuân theo định tuyến liên miền. Các giao thức định tuyến trong miền có thể là RIP, OSPF, IS-IS còn giao thức định tuyến liên miền đang được sử dụng là BGP.
Trong phạm vi một hệ thống tự trị, cơ chế xác định tuyến trong các giao thức định tuyến trong miền thường tuân theo thuật toán tối ưu.
Ví dụ: Trong giao thức định tuyến RIP thì đó là sự tối ưu về số nút mạng trên tuyến đường mà gói tin đi từ nguồn tới đích. Có nhiều tuyến đường để đi từ nguồn đến một đích nhưng mỗi một tuyến đường lại có số nút, băng thông, độ trễ khác nhau. Do vậy với RIP thì thuật toán Bellman-Ford được sử dụng để xác định sao cho đường đi qua ít nút nhất.
Đối với định tuyến cưỡng bức, ta có thể xem một mạng như là một tập hợp các nút mạng và một tập hợp các kết nối gữa các nút mạng đó. Mỗi kênh sẽ có các đặc điểm riêng. Để kết nối giữa hai nút bất kỳ thì cần phải thoả mãn một số yêu cầu (ràng buộc) và coi các ràng buộc này như là các đặc điểm của các kênh. Chỉ có nút đầu tiên trong cặp đóng vai trò khởi tạo đường kết nối mới biết đặc điểm này.
Nhiệm vụ của định tuyến cưỡng bức là tính toán xác định đường kết nối từ nút này đến nút kia sao cho thoả mãn một số điều kiện ràng buộc đã được đặt ra với liên kết đó, các điều kiện ràng buộc có thể là một trong nhiều các tiêu chí.
Ví dụ như: số nút ít nhất, đường đi ngắn nhất, băng thông rộng nhất, dung lượng đường truyền, thời gian thực,… Tuy nhiên việc tối ưu hoá theo các tiêu chí khác nhau không thể được đáp ứng một cách đồng thời. Một thuật toán chỉ tối ưu theo một tiêu chí nào đó chứ không thể đáp ứng một thời điểm nhiều tiêu chí vì hai yêu cầu hai tiêu chí đó có thể xung đột nhau, chẳng hạn: đường đi ngắn nhất số nút ít nhất chưa chắc băng thông rộng nhất.
Do vậy thuật toán định tuyến ràng buộc cũng không thể đáp ứng tối ưu theo tiêu chí. Nó chỉ thực hiện tối ưu theo một tiêu chí nào đó đồng thời thoả mãn một số điều kiện ràng buộc được đặt ra. Khi xác định được một đường kết nối thì định tuyến cưỡng bức sẽ thực hiện thiết lập, duy trì và chuyển trạng thái kết nối dọc theo các kênh phù hợp nhất trên tuyến đường.
Ngoài các điều kiện ràng buộc được đặt ra đối với kênh, còn có các điều kiện được đặt ra đối với việc quản trị. Chẳng hạn nhà quản trị muốn ngăn không cho một lưu lượng nào đó đi qua một số kênh nhất định trong mạng được xác định bởi một số đặc điểm nào đó. Do đó, thuật toán định tuyến mà nhà quản trị phải thực hiện là tìm các kênh xác định mà nó cho qua lưu lượng trên, đồng thời thoả mãn một số điều kiện ràng buộc khác nữa.
Định tuyến cưỡng bức còn có thể là sự kết hợp của cả hai điều kiện ràng buộc là quản lý và đặc điểm kênh một cách đồng thời chứ không phải chỉ từng điều kiện riêng rẽ. Ví dụ, định tuyến cưỡng bức phải tìm ra một đường vừa phải có độ rộng băng tần nhất định, vừa phải loại trừ ra một số kênh có đặc điểm nhất định.
Điểm khác biệt chính giữa định tuyến IP truyền thống với định tuyến cưỡng bức là: thuật toán định tuyến IP truyền thống chỉ tìm ra một đường tối ưu ứng với duy nhất một tiêu chí được đặt ra, trong khi thuật toán định tuyến cưỡng bức vừa tìm ra một tuyến đường tối ưu theo một tiêu chí nào đó đồng thời phải thoả mãn một số điều kiện ràng buộc nhất định.
Chính vì điều này mà thuật toán định tuyến cưỡng bức trong mạng MPLS có thể đáp ứng được yêu cầu trong khi các mạng sử dụng các thuật toán tìm đường khác không thể có được, kể cả giao thức định tuyến IP. Để làm được điều này, có rất nhiều nguyên nhân. Trong đó, nguyên nhân chính là do định tuyến cưỡng bức yêu cầu đường đi phải được tính toán và xác định từ phía nguồn. Các nguồn khác nhau có các ràng buộc khác nhau đối với một tuyến đường trên cùng một đích.
Các điều kiện ràng buộc ứng với bộ định tuyến của một nguồn cụ thể chỉ được biết đến bởi bộ định tuyến đó mà thôi, không một bộ định tuyến nào khác trên mạng được biết về các điều kiện này. Ngược lại trong bộ định tuyến IP thì đường đi được xác định và tính toán bởi tất cả các bộ định tuyến phân tán toàn mạng.
Một nguyên nhân khác là khả năng định tuyến hiện (hoặc nguồn) vì các nguồn khác nhau có thể tính toán xác định các đường khác nhau đến cùng một đích. Vì vậy, chỉ dựa vào thông tin về đích là không đủ để có thể xác định đường truyền các gói tin.
Một nguyên nhân nữa là đối với phương pháp định tuyến cưỡng bức thì việc tính toán xác định đường phải tính đến các thông tin về đặc điểm tương ứng của từng kênh trong mạng. Đối với các phương pháp IP đơn giản không hỗ trợ khả năng này.
Ví dụ giao thức định tuyến truyền thống dựa vào trạng thái kênh ( như OSPF…) chỉ truyền duy nhất các thông tin bận, rỗi của từng kênh và độ dài của từng kênh, các giao thức định tuyến vector khoảnh cách như RIP thì chỉ truyền đo các thông tin địa chỉ nút tiếp theo và khoảng cách.
Lê Sơn Hà – VnPro
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 Để hiểu rõ hơn về định tuyến cưỡng bức dựa trên ràng buộc, ta xét việc định tuyến với một mạng IP truyền thống.
Một mạng có thể được xem như là một tập hợp các hệ thống tự trị AS, trong đó việc định tuyến ở mỗi AS tuân theo giao thức định tuyến trong miền. Việc định tuyến giữa các AS lại tuân theo định tuyến liên miền. Các giao thức định tuyến trong miền có thể là RIP, OSPF, IS-IS còn giao thức định tuyến liên miền đang được sử dụng là BGP.
Trong phạm vi một hệ thống tự trị, cơ chế xác định tuyến trong các giao thức định tuyến trong miền thường tuân theo thuật toán tối ưu.
Ví dụ: Trong giao thức định tuyến RIP thì đó là sự tối ưu về số nút mạng trên tuyến đường mà gói tin đi từ nguồn tới đích. Có nhiều tuyến đường để đi từ nguồn đến một đích nhưng mỗi một tuyến đường lại có số nút, băng thông, độ trễ khác nhau. Do vậy với RIP thì thuật toán Bellman-Ford được sử dụng để xác định sao cho đường đi qua ít nút nhất.
Đối với định tuyến cưỡng bức, ta có thể xem một mạng như là một tập hợp các nút mạng và một tập hợp các kết nối gữa các nút mạng đó. Mỗi kênh sẽ có các đặc điểm riêng. Để kết nối giữa hai nút bất kỳ thì cần phải thoả mãn một số yêu cầu (ràng buộc) và coi các ràng buộc này như là các đặc điểm của các kênh. Chỉ có nút đầu tiên trong cặp đóng vai trò khởi tạo đường kết nối mới biết đặc điểm này.
Nhiệm vụ của định tuyến cưỡng bức là tính toán xác định đường kết nối từ nút này đến nút kia sao cho thoả mãn một số điều kiện ràng buộc đã được đặt ra với liên kết đó, các điều kiện ràng buộc có thể là một trong nhiều các tiêu chí.
Ví dụ như: số nút ít nhất, đường đi ngắn nhất, băng thông rộng nhất, dung lượng đường truyền, thời gian thực,… Tuy nhiên việc tối ưu hoá theo các tiêu chí khác nhau không thể được đáp ứng một cách đồng thời. Một thuật toán chỉ tối ưu theo một tiêu chí nào đó chứ không thể đáp ứng một thời điểm nhiều tiêu chí vì hai yêu cầu hai tiêu chí đó có thể xung đột nhau, chẳng hạn: đường đi ngắn nhất số nút ít nhất chưa chắc băng thông rộng nhất.
Do vậy thuật toán định tuyến ràng buộc cũng không thể đáp ứng tối ưu theo tiêu chí. Nó chỉ thực hiện tối ưu theo một tiêu chí nào đó đồng thời thoả mãn một số điều kiện ràng buộc được đặt ra. Khi xác định được một đường kết nối thì định tuyến cưỡng bức sẽ thực hiện thiết lập, duy trì và chuyển trạng thái kết nối dọc theo các kênh phù hợp nhất trên tuyến đường.
Ngoài các điều kiện ràng buộc được đặt ra đối với kênh, còn có các điều kiện được đặt ra đối với việc quản trị. Chẳng hạn nhà quản trị muốn ngăn không cho một lưu lượng nào đó đi qua một số kênh nhất định trong mạng được xác định bởi một số đặc điểm nào đó. Do đó, thuật toán định tuyến mà nhà quản trị phải thực hiện là tìm các kênh xác định mà nó cho qua lưu lượng trên, đồng thời thoả mãn một số điều kiện ràng buộc khác nữa.
Định tuyến cưỡng bức còn có thể là sự kết hợp của cả hai điều kiện ràng buộc là quản lý và đặc điểm kênh một cách đồng thời chứ không phải chỉ từng điều kiện riêng rẽ. Ví dụ, định tuyến cưỡng bức phải tìm ra một đường vừa phải có độ rộng băng tần nhất định, vừa phải loại trừ ra một số kênh có đặc điểm nhất định.
Điểm khác biệt chính giữa định tuyến IP truyền thống với định tuyến cưỡng bức là: thuật toán định tuyến IP truyền thống chỉ tìm ra một đường tối ưu ứng với duy nhất một tiêu chí được đặt ra, trong khi thuật toán định tuyến cưỡng bức vừa tìm ra một tuyến đường tối ưu theo một tiêu chí nào đó đồng thời phải thoả mãn một số điều kiện ràng buộc nhất định.
Chính vì điều này mà thuật toán định tuyến cưỡng bức trong mạng MPLS có thể đáp ứng được yêu cầu trong khi các mạng sử dụng các thuật toán tìm đường khác không thể có được, kể cả giao thức định tuyến IP. Để làm được điều này, có rất nhiều nguyên nhân. Trong đó, nguyên nhân chính là do định tuyến cưỡng bức yêu cầu đường đi phải được tính toán và xác định từ phía nguồn. Các nguồn khác nhau có các ràng buộc khác nhau đối với một tuyến đường trên cùng một đích.
Các điều kiện ràng buộc ứng với bộ định tuyến của một nguồn cụ thể chỉ được biết đến bởi bộ định tuyến đó mà thôi, không một bộ định tuyến nào khác trên mạng được biết về các điều kiện này. Ngược lại trong bộ định tuyến IP thì đường đi được xác định và tính toán bởi tất cả các bộ định tuyến phân tán toàn mạng.
Một nguyên nhân khác là khả năng định tuyến hiện (hoặc nguồn) vì các nguồn khác nhau có thể tính toán xác định các đường khác nhau đến cùng một đích. Vì vậy, chỉ dựa vào thông tin về đích là không đủ để có thể xác định đường truyền các gói tin.
Một nguyên nhân nữa là đối với phương pháp định tuyến cưỡng bức thì việc tính toán xác định đường phải tính đến các thông tin về đặc điểm tương ứng của từng kênh trong mạng. Đối với các phương pháp IP đơn giản không hỗ trợ khả năng này.
Ví dụ giao thức định tuyến truyền thống dựa vào trạng thái kênh ( như OSPF…) chỉ truyền duy nhất các thông tin bận, rỗi của từng kênh và độ dài của từng kênh, các giao thức định tuyến vector khoảnh cách như RIP thì chỉ truyền đo các thông tin địa chỉ nút tiếp theo và khoảng cách.
Lê Sơn Hà – VnPro