3.5.1 Quảng bá các thuộc tính của link
Router tại đầu nguồn (head-end) của một trung kế phải nắm được thông tin thuộc tính tài nguyên của tất cả các link trong mạng để tính toán đường LSP. Điều này 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 OSPF) vì chỉ có kiểu giao thức này mới quảng bá thông tin về tất cả các link đến tất cả các router. Vì vậy, OSPF và IS -IS được mở rộng để hỗ trợ MPLS -TE: § 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ó.
§ OSPF có các định nghĩa thông cáo Link -State mới (kiểu 10 LSA).
Một khi router đầ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 link. Đ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 3.10: 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 link thay đổi trạng thái (ví dụ up, down…)
§ Khi lớp tài nguyên của link 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), router 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.
§ Khi tham gia thiết lập một đường LSP nhưng thất bại.
3.5.2 Tính toán LSP ràng buộc (CR-LSP)
LSP cho một trung kế lưu lượng có thể được khai báo tĩnh hoặc tính toán động.
Việc tính toán sẽ xem xét các tài nguyên khả dụng, các thuộc tính link 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 hop 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 các giao thức báo hiệu cho MPLS như RSVP -TE.
Tiến trình tính toán đường ràng buộc luô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.
3.5.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 link riêng biệt. Trọng số quản trị này mặc nhiên là bằng metric IGP của link. Giải thuật chọn đường ràng buộc theo các bước sau:
§ Cắt bỏ các link có resource -class bị loại do phép tính Affinity ra khỏi topology. § Cắt bỏ các link 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 topology 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 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ó số hop nhỏ nhất § Chọn lựa ngẫu nhiên
Khi đường LSP được tính xong, RSVP được dùng để dành trước băng thông thực sự, để phân phối các nhãn cho đường và hoàn thành việc thiết lập đường LSP.
3.5.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). 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.
Link 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 link R4 -R3 bị loại .
Hình 3.11: 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 link 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à link R4 -R6 cũng bị loại khỏi phép tính đường LSP.
Hình 3.12: Xem xét tài nguyên khả dụng
Sau khi loại bỏ các link 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 có tổng cost là 40, để chọn một đường phải giải quyết bằng luật “tie -break”.
Hình 3.13: 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.
3.5.5 Tái tối ưu hóa (Re-optimization)
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 tái kích 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 đã thiết lập tối ưu 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ì:
§ Trước tiên, router đầu nguồn cố gắng báo hiệu thiết lập LSP mới tốt hơn, § Nếu thành công, thay thế đường LSP cũ bằng đường LSP mới tốt hơn.
Tái tối ưu hóa phải không được 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”
3.6 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 vài 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ẽ: hoặc 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 LSP, 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ó lỗi xảy ra trên đường, được chuyển tiếp bởi các LSR trung gian cho tới khi nó đến được POR. FIS được phát đi theo chu kỳ bởi các nút cận kề vị trí lỗi.
§ FRS (Fault Recovery Signal): Là bản tin chỉ thị một lỗi 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 chuyển trả lại đường nguyên thủy.
3.6.1 Phân loại các cơ chế bảo vệ khôi phục
3.6.1.a 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ó sự cố ở bất kỳ 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à cần đượ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ộ cũng nhằm bảo vệ khi có sự cố link 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ò là 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 phục link: để bảo vệ một link trên đường làm việc. Nếu một lỗi xảy ra trên link này thì đường khôi phục sẽ nối liền giữa PSL và PML ở hai đầu link lỗi. Đường khôi phục và đường làm việc tách rời nhau đối với link được bảo vệ. § Khôi phục nút: để bảo vệ một 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ệ và các link có nối vào nút này. PML có thể là nút trên đường làm việc nằm kề sau nút được bảo vệ, hoặc PLM là egress -LSR.
3.6.1.b 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-route), đườ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à nố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. PSL đượ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.
3.6.2 Mô hình Makam
Đây là mô hình khôi phục MPLS đầu tiên được đề xuất. Nó cung cấp bảo vệ toàn cục cho một 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ề link 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ề cho ingress -LSR (là 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ả đườ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 3.14: 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.
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.
3.6.3 Mô hình Haskin (Reverse Backup)
Mô hình này khắc phục nhược điểm mất gói ở mô hình Makam. 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ình 3.15: 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.
3.6.4 Mô hình Hundessa
đề 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 của 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.
3.6.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ố link thì nó phải tính toán rồi báo hiệu thiết lập một đường hầm LSP ngắn nhất đi từ nó đến nút ở phía bên kia link bị 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ình 3.16: Mô hình Shortest – Dynamic
3.6.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ố link 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 3.17: Mô hình Simple – Dynamic
3.6.7 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.
3.7 Tổng kết chương
Chương này này trình bày tập hợp các yêu cầu cho kỹ thuật lưu lượng qua MPLS. Nhiều khả năng đã được mô tả tập trung vào việc tăng cường tính ứng dụng của MPLS đối với kỹ thuật lưu lượng.
Bài toán cơ bản của MPLS -TE là làm sao ánh xạ đồ hình 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.
Chương 4 : Mô phỏng MPLS và đánh giá 4.1.Tổng quan về NS2
4.1.1 Giới thiệu
NS (phiên bản) là phần mềm mô phỏng mạng điều khiển sự kiện riêng rẽ hướng đối tượng, được phát triển tại UC Berkely, viết bằng ngôn ngữ C++ và OTcl. NS rất hữu ích cho việc mô phỏng mạng diện rộng (WAN) và mạng local (LAN). Bốn lợi ích lớn nhất của NS-2 phải kể đến đầu tiên là:
• Khả năng kiểm tra tính ổn định của các giao thức mạng đang tồn tại • Khả năng đánh giá các giao thức mạng mới trước khi đưa vào sử dụng
• Khả năng thực thi những mô hình mạng lớn mà gần như ta không thể thực thi được trong thực tế
• Khả năng mô phỏng nhiều loại mạng khác nhau
Mặc dù NS-2 là phần mềm mã nguồn mở có sẵn cho cả nền Windows 32 và Linux, nhưng giáo trình này chỉ đề cập đến việc cài đặt cũng như thực thi NS-2 trong môi trường Linux.
4.1.2 Download và install NS-2 và NAM
NS-2 và NAM có thể được cài đặt bằng duy nhất một gói phần mềm (cách 1) hay bằng cách cài từng gói phần mềm riêng lẻ (cách 2). Cách 1 dành cho những người