Kỹ thuật định tuyến trong MPLS

MỤC LỤC

CHUYỂN MẠCH NHÃN ĐA GIAO THỨC MPLS

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

    Như vậy, FEC là một nhóm các gói IP được chuyển tiếp trên cùng một đường chuyển mạch nhãn LSP, được đối xử theo cùng một cách thức và có thể ánh xạ vào một nhãn bởi một LSR cho dù chúng có thể khác nhau về thông tin header lớp mạng. Với kiểu làm việc này thì các LSR trung gian như router B và C sẽ không phải thực hiện kiểm tra toàn bộ header IP của gói tin mà nó chỉ việc kiểm tra các giá trị của nhãn, so sánh trong bảng và chuyển tiếp.

    Hình 1.3: Miền MPLS
    Hình 1.3: Miền MPLS

    Mã hóa nhãn và các chế độ đóng gói nhãn MPLS

      PPP sử dụng NCP (Network Control Program) sửa đổi gọi là MPLSCP (MPLS Control Protocol) và đánh dấu tất cả các gói có chứa shim header bằng giá trị 0x8281 trong trường PPP Protocol. Chế độ Cell được dùng khi ta có một mạng gồm các ATM-LSR (là các chuyển mạch ATM có hỗ trợ MPLS), trong đó nó sử dụng các giao thức phân phối nhãn MPLS để trao đổi thông tin VPI/VCI thay cho báo hiệu ATM.

      TUYẾN VÀ BÁO HIỆU MPLS

      Định tuyến trong MPLS

        Giải thuật chọn đường có khả năng tối ưu hóa theo một hoặc nhiều metric này, thông thường người ta dùng metric dựa trên số lượng hop và băng thông.Để đường được chọn có số lượng hop nhỏ nhất nhưng phải đảm bảo băng thông khả dụng trên tất cả các chặng liên kết, quyết định cơ bản như sau: chọn đường ngắn nhất trong số tất cả các đường có băng thông khả dụng thỏa mãn yêu cầu. Sau đó, vì băng thông khả dụng của đường ngắn nhất không đủ cho cả 2 lưu lượng 600Kbps và 500 Kbps, nên lưu lượng 500 Kbps được định tuyến đi theo đường mới qua R6 và R7 mặc dù nhiều hơn một hop so với đường cũ.

        Hình 2.1: Một ví dụ định tuyến ràng buộc
        Hình 2.1: Một ví dụ định tuyến ràng buộc

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

          Điều khiển độc lập có ưu điểm là thiết lập LSP nhanh vì việc kết nhãn diễn ra song song giữa nhiều cặp LSR và dòng lưu lượng có thể bắt đầu truyền mà không cần đợi cho tất cả các gán kết nhãn thiết lập xong. 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.

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

          Giao thức LDP (Label Distribution Protocol)

            Trong trường hợp hai LSR không có kết nối lớp 2 trực tiếp (neighbor gián tiếp) thì LSR định kỳ gửi bản tin Hello đến cổng UDP đã biết tại địa chỉ IP xác định được khai báo khi lập cấu hình. - 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.

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

            Giao thức CR-LDP (Constrain-based routing LDP)

              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 đó. 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ình 2.13:  Thiết lập LSP với CR-LDP
              Hình 2.13: Thiết lập LSP với CR-LDP

              Giao thức RSVP-TE (RSVP Traffic Engineering)

                Nó có thể được một router dùng để ghim một tuyến tường minh thả lỏng bằng cách copy tuyến ghi được trong bản tin RESV sang đối tượng tuyến tường minh ERO trong một bản tin PATH được gửi theo chiều ngược lại. Ví dụ, khi một LSP thấy rằng nó không thể hỗ trợ Tspec đặc tả trong một bản tin RESV, nó sẽ không chuyển tiếp bản tin RESV về cho phía upstream, thay vào đó nó tạo ra một bản tin RESVERR gửi cho phía downstream để xóa bỏ nỗ lực thiết lập LSP. RFC 3209 định nghĩa bản tin Hello tùy chọn cho RSVP-TE, nó cho phép một LSR phát hiện một neighbor bị lỗi nhanh hơn khi so với RSVP làm tươi tình trạng hoặc phát hiện lỗi đường truyền bằng một giao thức định tuyến IP.

                Mỗi bản tin RESV liên quan đến đường hầm LSP này đều mang session-ID và filter-spec nguyên thủy của sender R1 để giữ mối tương quan với nhau.Tiếp theo, R4 tiếp nhận yêu cầu này và gửi bản tin PATH đến router kế tiếp ghi trong ERO là R5. RFC 3031, nhãn null là một quy ước được dùng trong phân phối nhãn cho phép egress- router (ở đây là R3) báo hiệu cho đối tác upstream của nó biết rằng đây là hop áp cuối (penultimate hop) của LSP, do vậy cần gỡ nhãn đỉnh của stack (xem LFIB của LSR R5). Tất nhiên, việc xử lý dành cho khởi tạo các bản tin PATH và RESV lớn hơn nhiều so với việc làm tươi trạng thái một bản tin đã nhận trước đó, tuy nhiên với một số lượng lớn các LSP thì việc xử lý làm tươi có ảnh hưởng đáng kể đến hiệu năng.

                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.

                Giao thức BGP

                  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 định tuyến path -vector. Các router sử dụng AS -PATH để tránh loop 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. LOCALPREF cho phép AS đầu gởi chỉ định một sự ưu tiên (preference) định tuyến lưu lượng đi ra trên nhiều liên kết đến AS khác; trong khi MED (multiple exit discriminator) cho phép một AS phía nhận chỉ định một ưu tiên cho lưu lượng đến từ một AS khác.

                  Thủ tục cơ bản là “ký sinh” 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. Router A3 trong AS A thu thập tất cả các thông cáo này vào 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 prefix “a.b/16”, A1 có thể xác định rằng đường AS ngắn nhất là qua hop 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, router 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.

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

                  Mô phỏng MPLS và đánh giá

                  Kiến trúc của NS2

                    Trong hình trên, 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). 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. • 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++).

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

                    Ví dụ như các link là những đối tượng OTcl liên kết các mô đun delay (trì hoãn), queueing (hàng đợi) và possibly loss (khả năng mất mát).

                    Giới thiệu các phần mềm dùng kết hợp với NS2

                    • NSCRIPT
                      • Topology Generator

                        Nếu được check thì một cửa sổ con Annotation (Chú thích) xuất hiện chú thích các sự kiện đang diễn ra theo thứ tự thời gian tăng dần.  >> - Fast Forward trả tới minh họa một khoảng 25*steps giây o Nhãn ‘TIME’ (thời gian) chỉ ra thời gian minh họa hiện tại. Click vào button đó sẽ cho lựa chọn xem biểu đồ bandwidth (băng thông) hay link loss (mất mát gói trên liên kết) của một simplex link trong một duplex link.

                        Click phải trong cửa sổ con Annatation sẽ có menu sổ với ba tuỳ chọn Add (Thêm), Delete (Xóa), Info (Thông tin) để có thể thêm chú thích mới, xóa chú thích đang tồn tại hay chỉnh sửa thông tin cho mục chú thích tại thời điểm minh họa xác định. • Nscript có thể mở rộng được, cho phép tạo ra các thư viện riêng (thư viện các đối tượng) để có thể dùng thêm đối tượng vào môi trường đồ hoạ. Đồng thời có cả button UseDefault để khôi phục giá trị mặc định cho các tham số của bất kỳ đối tượng nào, button Apply để áp giá trị hiện tại cho đối tượng được sửa đổi.

                        • Các đồ thị và các thống kê về Delay (trì hoãn), jitter (độ rung pha), processing times (số lần xử lý), Round Trip Times (số lần khứ hồi), intermediate nodes (số node trung gian) và throughput (thông lượng).

                        Hình 4.5: Mô tả các công cụ của NAM
                        Hình 4.5: Mô tả các công cụ của NAM