Đồ án MPLS và kỹ thuật lưu lượng

Trang

Mục lục i

Danh mục các ký hiệu, các chữ viết tắt vi

Danh mục bảng biểu x

Danh mục hình vẽ xi

Lời nói đầu 1

CHƯƠNG 1 : CHUYỂN MẠCH NHÃN ĐA GIAO THỨC (MPLS) 3

1.1. Lịch sử phát triển của MPLS 3

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

1.2.1. MPLS là gì? 4

1.2.2. Miền MPLS (MPLS Domain) 5

1.2.3. Lớp chuyển tiếp tương đương (FEC) 6

1.2.4. Nhãn và stack nhãn (Label và Label stack) 6

1.2.5. Hoán đổi nhãn (Label Swapping) 7

1.2.6. Đường chuyển mạch nhãn (LSP) 7

1.2.7. Chuyển gói qua miền MPLS 8

1.3. Thành phần cơ bản của MPLS 9

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

1.4.1. Mã hóa stack nhãn 10

1.4.2. Chế độ khung Frame 11

1.4.3. Chế độ tế bào Cell 12

1.5. Cấu trúc chức năng MPLS 13

1.5.1. Kiến trúc một nút MPLS (LER và LSR) 13

1.5.2. Mặt phẳng chuyển tiếp (mặt phẳng dữ liệu) 14

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

1.5.2.2. Thuật toán chuyển tiếp nhãn 15

1.5.2.3. NHLFE (Next Hop Label Forwarding Entry) 16

1.5.2.4. Mặt phẳng điều khiển 16

1.6. Hoạt động của MPLS 16

1.6.1. Chế độ hoạt động khung MPLS 16

1.6.2. Các hoạt động trong mảng số liệu 18

1.6.3. Chế độ hoạt động tế bào MPLS 20

1.6.4. Hoạt động của MPLS khung trong mạng ATM-PVC 25

1.6.5. Hoạt động của MPLS trong mặt phẳng chuyển tiếp. 26

1.6.6. Gỡ nhãn ở hop áp cuối (PHP) 27

1.6.7. Một ví dụ hoạt động chuyển tiếp gói 27

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

1.7.1. So sánh MPLS và MPOA 28

1.7.2. Tốc độ và độ trễ 29

1.7.3. Chất lượng dịch vụ trong MPLS 29

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

1.7.5. Kỹ thuật lưu lượng 30

1.7.6. Định tuyến QoS từ nguồn 31

1.7.7. Mạng riêng ảo VPN 31

1.7.8. Chuyển tiếp có phân cấp (Hierachical forwarding) 31

1.7.9. Khả năng mở rộng (Scalability) 31

1.7.10. Khả năng ứng dụng MPLS trong mạng thế hệ sau NGN 32

1.7.11. MPLS và kiến trúc Internet 33

1.8. Các nhược điểm của MPLS 34

Tổng kết chương 35

CHƯƠNG 2: ĐỊNH TUYẾN VÀ BÁO HIỆU TRONG MPLS 36

2.1. Định tuyến trong MPLS 36

2.1.1. Định tuyến cưỡng bức (Constrain-based Routing) 36

2.1.2. Định tuyến tường minh (Explicit Routing) 38

2.1.3. Định tuyến dựa trên QoS 38

2.1.3.1. Phân loại các thuật toán QoS 39

2.1.3.2. Thuật toán định tuyến có thể giải được với thời gian đa thức 39

2.1.4. Định tuyến dựa trên lưu lượng 40

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

2.2.1. Chế độ phân phối nhãn 43

2.2.1.1. Phân phối nhãn không cần yêu cầu (Downstream Unsolicited) 44

2.2.1.2. Phân phối nhãn theo yêu cầu (Downstream on Demand) 44

2.2.2. Chế độ duy trì nhãn 44

2.2.2.1. Duy trì nhãn tự do (liberal label retention) 44

2.2.2.2. Duy trì nhãn bảo thủ (conservative label retention) 45

2.2.3. Chế độ điều khiển LSP 45

2.2.3.1. Điều khiển độc lập (independent control) 46

2.2.3.2. Điều khiển tuần tự (ordered control) 46

2.2.4. Các giao thức phân phối nhãn MPLS 46

2.3. Giao thức LDP (Label Distribution Protocol) 47

2.3.1. Hoạt động của LDP 48

2.3.2. Cấu trúc thông điệp LDP 49

2.3.2.1. LDP PDU 49

2.3.2.2. Định dạng thông điệp LDP 50

2.3.3. Các bản tin LDP 51

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

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

2.4.1 Mở rộng cho định tuyến cưỡng bức 53

2.4.2. Thiết lập một CR-LSP (Constrain-based routing LSP) 54

2.4.3. Tiến trình dự trữ tài nguyên 55

2.5. Giao thức RSVP-TE (RSVP Traffic Engineering) 55

2.5.1. Các bản tin thiết lập dự trữ RSVP 57

2.5.2. Các bản Tear Down, Error và Hello của RSVP-TE 58

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

2.5.4. Giảm lượng overhead làm tươi RSVP 60

2.5.5. RSVP và khả năng mở rộng 61

2.6. Giao thức BGP 61

2.6.1. BGPv4 và mở rộng cho MPLS 61

2.6.2 Kết nối MPLS qua nhiều nhà cung cấp dịch vụ 64

2.7. So sánh CR-LDP và RSVP 64

Tổng kết chương 66

CHƯƠNG 3: KỸ THUẬT LƯU LƯỢNG TRONG MPLS 67

3.1. Kỹ thuật lưu lượng (traffic engineering) 67

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

3.1.1.1. Phân loại 67

3.1.1.2. Bài toán nghẽn 67

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

3.1.3. Hàng đợi lưu lượng 68

3.1.3.1. Hàng đợi FIFO (First-in, First-out) 69

3.1.3.2 Hàng đợi WFQ (Weighted Fair Queuing) 69

3.1.3.3. Hàng đợi CQ (Custom Queuing) 70

3.1.3.4. Hàng đợi PQ (Priority Queuing) 70

3.1.4. Giải thuật thùng rò và thùng token 71

3.1.4.1. Giải thuật thùng rò (Leaky Bucket) 71

3.1.4.2. Giải thuật thùng token (Token Bucket) 71

3.1.5. Giải pháp mô hình chồng phủ (Overlay Model) 72

3.2. MPLS và kỹ thuật lưu lượng 73

3.2.1. Khái niệm trung kế lưu lượng (traffic trunk) 73

3.2.2. Đồ hình nghiệm suy (Induced Graph) 74

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

3.3. Trung kế lưu lượng và các thuộc tính 74

3.3.1 Các hoạt động cơ bản trên trung kế lưu lượng 75

3.3.2. Thuộc tính tham số lưu lượng (Traffic Parameter) 75

3.3.3. Thuộc tính lựa chọn và quản lý đường (chính sách chọn đường) 76

3.3.3.1. Đường tường minh đặc tả quản trị 76

3.3.3.2. Phân cấp các luật ưu tiên cho đa đường 76

3.3.3.3. Thuộc tính Affinity lớp tài nguyên (Resource Class Affinity) 76

3.3.3.4. Thuộc tính thích ứng (Adaptivity) 76

3.3.3.5. Phân phối tải qua nhiều trung kế song song 77

3.3.4. Thuộc tính ưu tiên / lấn chiếm (Priority/Preemption) 77

3.3.5. Thuộc tính đàn hồi (Resilience) 77

3.3.6. Thuộc tính khống chế (Policing) 77

3.4. Các thuộc tính tài nguyên 78

3.4.1. Bộ nhân cấp phát cực đại (maximum allocation multiplier) 78

3.4.2 Lớp tài nguyên (Resource Class) 78

3.4.3. TE Metric 79

3.5. Tính toán đường cưỡng bức 79

3.5.1. Quảng bá các thuộc tính của link 79

3.5.2. Tính toán LSP cưỡng bức (CR-LSP) 80

3.5.3. Giải thuật chọn đường 80

3.5.4. Tái tối ưu hóa (Re-optimization) 83

3.6. Bảo vệ và khôi phục đường 83

3.6.1. Phân loại các cơ chế bảo vệ khôi phục 84

3.6.1.1. Sửa chữa toàn cục và sửa chữa cục bộ 84

3.6.1.2. Tái định tuyến và chuyển mạch bảo vệ 84

3.6.1.3. Ba cách khôi phục bảo vệ tái định tuyến 85

3.6.2. Mô hình Makam 86

3.6.3. Mô hình Haskin (Reverse Backup) 87

3.6.4. Mô hình Hundessa 88

3.6.5. Mô hình Shortest-Dynamic 88

3.6.6. Mô hình Simple-Dynamic 88

3.7. Vấn đề triển khai MPLS tại Việt Nam 89

3.8. Nhận xét 91

Tổng kết chương 92

CHƯƠNG 4: CHƯƠNG TRÌNH MÔ PHỎNG VỀ KỸ THUẬT LƯU LƯỢNG 93

4.1. Lý thuyết chung 93

4.1.1. Router modes 93

4.1.2. Cách thức cấu hình chính (Entering global configuration mode) 93

4.1.3. Cấu hình cho tên một Router 94

4.1.4. Cấu hình cho các mật khẩu (Configuring Passwords) 94

4.2. Mô phỏng bài Lab về kỹ thuật lưu lượng trong MPLS (MPLS TE) 94

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ĐỀ TÀI 98

TÀI LIỆU THAM KHẢO 100

 

 

doc111 trang | Chia sẻ: lethao | Lượt xem: 3000 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Đồ án MPLS và kỹ thuật lưu lượng, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
rì và chuyển trạng thái kết nối dọc theo các kênh trên đường đó. Định tuyến cưỡng bứ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 đường (route) không chỉ dựa trên topology mạng (thuật toán chọn đường ngắn nhất SPF – Shortest Path First) mà còn sử dụng các metric đặc thù khác như băng thông, trễ, cost 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. Metric thường được dùng 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. Hình 2.1: Một ví dụ định tuyến cưỡng bức Để minh họa hoạt động của định tuyến cưỡng bức, xét cấu trúc mạng “con cá” điển hình như hình 2.1 trên. Giả sử rằng định tuyến cưỡng bức sử dụng số hop (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 này đều hướng đến cùng một egress-router. 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 (1 Mbps), 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 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ũ. Với 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 cưỡng bức có 2 kiểu: định tuyến online và định tuyến offline. Kiểu online cho phép các router 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. 2.1.2. Định tuyến tường minh (Explicit Routing) Định tuyến tường minh (Explicit Routing) là một tập con của định tuyến cưỡng bức, trong đó sự ràng buộc là đối tượng tuyến tường minh ER (explicit route). 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 cưỡng bứ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 (như IP prefix hoặc một AS). 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 (loose ER). 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 (strict ER). 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 cấu trúc Type-Length-Value cưỡng bứ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. 2.1.3. Định tuyến dựa trên QoS Ngày nay, Internet hỗ trợ chỉ dịch vụ "kết quả tốt nhất", nhưng không có cơ chế đảm bảo cho việc mất gói, băng thông, độ trễ, jitter… trong khi các dịch vụ cũ như là FPT, mail… làm việc tốt với nền tảng Internet cũ, thì các dịch vụ hiện tại như là điện thoại Internet, Video trực tuyến… yêu cầu băng thông cao, độ trễ thấp và jitter nhỏ. QoS là một tập các yêu cầu về dịch vụ cho mạng khi truyền tải dữ liệu. Nói cách khác, QoS là mức độ yêu cầu về dịch vụ của người dùng, được đặc trưng bởi tỉ lệ mất gói, băng thông, độ trễ đầu cuối. QoS là thỏa thuận giữa người dùng và nhà cung cấp mạng bởi Thỏa Thuận Về Mức Độ Dịch Vụ SLA (Service Level Agreement). Định tuyến dựa trên QoS: định tuyến sao cho tuyến đường đảm bảo dịch vụ QoS (là thỏa thuận giữa người dùng và nhà cung cấp dịch vụ mạng về băng thông, độ trễ, tỉ lệ mất gói… ). Bên cạnh đó là các ràng buộc, các ràng buộc phải đảm bảo là tối ưu tài nguyên mạng. QoS metric: SLA được thể hiện bởi QoS metric. QoS metric bao gồm băng thông jitter, giá thành, tỉ lệ mất gói. Một tập m(n1,n2) là metric của liên kết (n1,n2). Với bất cứ tuyến đường P (Path) nào, P = (n1,n2,n3,…ni,nj), metric m là: Tính cộng (additive), nếu m(P) = m(n1,n2) + m(n2,n3) + … + m(ni,nj) Tính nhân (multiplicative), nếu m(P) = m(n1,n2) * m(n2,n3) * … * m(ni,nj) Tính lõm (concave), nếu m(P) = min{m(n1,n2), m(n2,n3), … , m(ni,nj)} 2.1.3.1. Phân loại các thuật toán QoS Với một vài metric, metric của tuyến đường bị ảnh hưởng bởi các liên kết với metric tối thiểu (băng thông, không gian bộ đệm). Chúng được gọi là các liên kết nghẽn cổ chai. Chúng ta có thuật toán định tuyến tối ưu liên kết (link optimize) (tìm một tuyến đường tối ưu tại liên kết bị nghẽn cổ chai) và định tuyến ràng buộc liên kết (link constrained) (tìm tuyến đường tốt nhất mà liên kết bị nghẽn cổ chai thỏa mãn một vài ràng buộc metric). Với một vài metric, metric của tuyến đường là sự kết hợp của metric của tất cả liên kết dọc theo tuyến đường đó. Chúng ta có định tuyến tối ưu tuyến đường (path optimize routing) (tìm tuyến đường với metric tuyến đường tối ưu) và định tuyến ràng buộc tuyến đường (path constrained routing) (tìm tuyến đường thỏa mãn một vài ràng buộc metric). 2.1.3.2. Thuật toán định tuyến có thể giải được với thời gian đa thức Định tuyến ràng buộc liên kết, tối ưu tuyến đường (Link-constrained, path-optimization routing). Định tuyến tối ưu liên kết, ràng buộc liên kết (Link-constrained, link-optimization routing). Định tuyến ràng buộc nhiều liên kết (Multi-link-constrained routing). Định tuyến ràng buộc liên kết, ràng buộc tuyến đường (Link-constrained, path-constrained routing). Định tuyến ràng buộc tuyến đường, tối ưu liên kết (Path-constrained, link-optimimization routing). Với các bài toán trên, đầu tiên phải giải bài toán ràng buộc liên kết hoặc tối ưu liên kết, sẽ có một tập giới hạn các kết quả phụ thuộc vào số liên kết, và sau đó giải bài toán ràng buộc tuyến đường hoặc tối ưu tuyến đường. 2.1.4. Định tuyến dựa trên lưu lượng Với thuật toán tìm đường ngắn nhất, nhược điểm của các thuật toán này là khi một cung là tốt với nhiều cặp nguồn – đích, thì các cặp nguồn – đích sẽ chọn cung đó cho tuyến đường của chúng và dẫn đến tắc nghẽn trên cung đó. Thuật toán định tuyến dựa trên lưu lượng không chỉ tối ưu tài nguyên mạng tại thời điểm hiện tại, nhưng cũng cho yêu cầu của tương lai. Thuật toán định tuyến dựa trên lưu lượng sẽ tiên đoán liên kết nào sẽ bị tắc nghẽn khi định tuyến quá nhiều lưu lượng qua chúng và sẽ giảm định tuyến lưu lượng qua các liên kết đó. Phân loại : - Dựa trên thông tin của mạng hiện tại, tính toán và chọn ra những liên kết làm tối thiểu khả năng tắc nghẽn của mạng trong tương lai. - Dựa trên thông tin thống kê bởi server hoặc router sẽ có thông tin gần đúng về yêu cầu trong tương lai. Các thông tin thống kê đó gọi là "thông tin mô tả (profile)". Sau khi có các thông tin mô tả, sẽ sử dụng quy hoạch tuyến tính để tìm ra giải pháp tối ưu trong tương lai. Sau đây là một vài thuật toán định tuyến dựa trên lưu lượng, các thuật toán này gợi ý ra các lý thuyết cơ bản và các ý tưởng tổng quát cho các thuật toán định tuyến dựa trên lưu lượng. *) Thuật toán định tuyến với điểm giao tối thiểu MIRA (Minimum Interference Routing Algorithm) Để đảm bảo yêu cầu cài đặt LSP, giá trị maxflow càng nhỏ sau khi mọi cặp nguồn – đích chọn được tuyến đường thì khả năng của mạng đáp ứng cho yêu cầu của tương lai càng lớn. Vấn đề này có thể được mô tả bởi công thức toán học. Đặt là maxflow của cặp nguồn – đích (s,d) được tính toán sau khi thỏa mãn yêu cầu thiết lập LSP, bài toán đặt ra là cực đại tổng của mọi cặp nguồn – đích. Mục tiêu tối ưu là: Maximize Bên cạnh đó, phải tìm ra lưu lượng của mỗi cặp nguồn – đích, thiết lập tuyến đường với băng thông D và đảm bảo ràng buộc: tổng băng thông của mọi lưu lượng đi qua mỗi liên kết phải nhỏ hơn băng thông dự trữ của liên kết đó, và tổng lưu lượng đi vào bằng tổng lưu lượng đi ra mỗi nút của mạng. Để giải quyết hoàn toàn vấn đề là một bài toán NP khó. Để giải quyết vấn đề trên, mô tả bởi thuật toán MIRA: từ thông tin về dung lượng dự trữ của mọi cung, có thể tính toán ra maxflow của mọi cặp nguồn – đích. Với mỗi cặp nguồn – đích, tìm ra tập mincut, và những liên kết thuộc về các tập đó được gọi là các liên kết tới hạn (critical links). Các liên kết tới hạn này có tính chất là nếu định tuyến lưu lượng của cặp nguồn – đích sẽ bị giảm. Do đó, mục tiêu của thuật toán MIRA là tránh đến tối đa việc đi qua các liên kết tới hạn. Ý tưởng: 11 1 2 4 3 5 6 7 8 10 9 Ý tưởng của thuật toán là các đường đi sẽ không ảnh hưởng quá nhiều để thỏa mãn yêu cầu tương lai. Thuật toán phát triển dựa trên heuristic " critical link ". " critical link " được chỉ định bởi thuật toán, và là các kết nối với các thuộc tính mà một LSP được định tuyến qua các kết nối này giá trị luồng lớn nhất (maxflow) của một hoặc nhiều đôi ngõ vào – ngõ ra (ingress – egress) giảm đi. Nếu " critical link " có tải nặng thì mạng không có khả năng thỏa mãn cho tương lai. Hình 2.2 : Các ý tưởng chính Ví dụ : Nếu thuật toán ít trạm nhất (min – hop) được sử dụng, tuyến từ S3 tới D3 là 1-7-8-5 và nó sẽ khóa các tuyến giữa (S1, D1) và (S2, D2). Trong ví dụ này, sự lựa chọn tốt nhất là 1-2-3-4-5. Thiết lập luồng cực đại (maxflow) giữa một cặp ngõ vào – ngõ ra (S1, D1). Giá trị này là giới hạn trên của tổng băng thông có thể đi từ ngõ vào đến ngõ ra. Giá trị luồng cực đại sẽ giảm D đơn vị khi băng thông yêu cầu của D đơn vị được định tuyến giữa (S1, D1). Chọn đường đi bằng tính toán đường đi ngắn nhất: Sau khi xác định các " critical link " sẽ tránh được định tuyến LSP trên các " critical link ". Sử dụng Dijkstra hay Bellman-Ford để tính đường đi. Thực hiện điều đó bằng cách xây dựng ma trận trọng số (matrix weight) làm tăng chi phí khi các tuyến LSP đi qua " critical link ". Sau đó ta chọn đường đi theo thuật toán đường đi ngắn nhất. MIRA (Minimum Interference Routing Algorithm): Sau đây là kết quả mô hình của MIRA. Với mô hình và băng thông giống như trong tập tin đoạn mã thì lưu lượng từ nguồn 0 sẽ đi thông qua con đường 0-6-7-4 nhưng với MIRA, sau khi tính toán cho các critical link, lưu lượng từ nguồn 0 sẽ đi qua con đường 0-1-2-3-4, vì thế 5, 9 và 8, 10 có nhiều cơ hội để thiết lập một LSP thông qua kết nối 6-7. 0 1 2 4 3 5 6 7 8 10 9 Hình 2.3 : MIRA 1 Với thuật toán MIRA, đường đi từ nút 1 đến 5 là 1-3-5, từ nút 1 đến 4 là 1-2-4 và con đường từ nút 2 đến 3 là 2-4-3. Sau đó ta sử dụng định tuyến tường minh để thiết lập ER-LSP dọc theo các nút này. Với MIRA, mạng có thể tối ưu tài nguyên cho các yêu cầu tương lai. 0 1 2 4 3 5 Hình 2.4 : MIRA 2 *) Thuật toán định tuyến động trực tuyến DORA (Dynamic On Routing Algorithm): Thuật toán DORA cũng dựa trên thông tin hiện tại của mạng để tiên đoán ra các liên kết có khả năng bị tắc nghẽn để tránh đi qua chúng. DORA khác biệt với MIRA ở chỗ MIRA thì dựa trên maxflow, trong khi DORA xem xét về số tuyến đường đi qua một liên kết (xem xét đến mọi cặp nguồn – đích). Đặt n là số tuyến đường (của mọi cặp nguồn – đích) đi qua một liên kết, giá trị của n càng lớn, khả năng tắc nghẽn trên liên kết đó trong tương lai càng lớn, do đó DORA chọn n làm trọng số cho mỗi liên kết và sử dụng thuật toán tìm đường ngắn nhất để tìm ra tuyến đường có trọng số tối thiểu. Ngoài ra, kết hợp n với các điều kiện tối ưu metric khác (ví dụ m), thuật toán DORA xây dựng giá trị trọng số bằng công thức: (2.1) là các giá trị được chuẩn hóa của n, m trong phạm vi [0, 100]. 0 £ a £ 1, chọn giá trị dựa trên thực nghiệm (thông thường ). 2.2. Các chế độ báo hiệu MPLS 2.2.1. Chế độ phân phối nhãn MPLS sử dụng 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 (Downstream Unsolicited) và phân phối theo yêu cầu (Downstream on Demand). Thuật ngữ downstream ở đây ngụ ý rằng phía downstream sẽ thực hiện gán kết nhãn và thông báo gán kết đó cho phía upstream. 2.2.1.1. Phân phối nhãn không cần yêu cầu (Downstream Unsolicited) Downstream-LSR phân phối các gán kết nhãn đến upstream-LSR mà không cần có yêu cầu thực hiện việc kết nhãn. Nếu downstream-LSR chính là hop kế đối với định tuyến IP cho một FEC cụ thể thì upstream-LSR có thể sử dụng kiểu gán kết nhãn này để chuyển tiếp các gói trong FEC đó đến downstream-LSR. Hình 2.5 : Phân phối nhãn không cần yêu cầu 2.2.1.2. Phân phối nhãn theo yêu cầu (Downstream on Demand) Upstream-LSR phải yêu cầu rõ ràng một gán kết nhãn cho một lớp chuyển tiếp tương đương (FEC) cụ thể thì downstream-LSR mới phân phối. Trong phương thức này, downstream-router không nhất thiết phải là hop 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 2.6 : Phân phối nhãn theo yêu cầu 2.2.2. Chế độ duy trì nhãn Một upstream-LSR có thể nhận các gán kết nhãn cho cùng một FEC X từ nhiều downstream-LSR. 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ủ (conservative label retention). 2.2.2.1. Duy trì nhãn tự do (liberal label retention) Phía upstream (LSR1) lưu giữ tất cả các gán kết nhãn nhận được, bất chấp việc downstream-LSR có phải là hop kế đối với định tuyến IP hay không. Hình 2.7 : Duy trì nhãn tự do - Ư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 vòng lặp (loop) định tuyến tạm thời khi thay đổi định tuyến. 2.2.2.2. Duy trì nhãn bảo thủ (conservative label retention) Upstream-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ừ downstream-LSR đang là hop kế hiện hành. - 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ược điểm chính là đá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 2.8 : Duy trì nhãn bảo thủ 2.2.3. Chế độ điều khiển LSP Khi một FEC ứng với một prefix đị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: điều khiển độc lập hoặc điều khiển tuần tự. 2.2.3.1. Điều khiển độc lập (independent control) 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 peers). Điều này tương tự như định tuyến IP thông thường, ở đó mỗi router 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 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. Hình 2.9 : Điều khiển độc lập 2.2.3.2. Điều khiển tuần tự (ordered control) Một downstream-LSR 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ừ router hướng downstream của nó. 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ự cung cấp phương tiện tránh vòng lặp (loop) và đạt được mức độ thu gom chắc chắn hơn. Hình 2.10 : Điều khiển tuần tự 2.2.4. Các giao thức phân phối nhãn MPLS Giao thức phân phối nhãn là một tập các thủ tục mà nhờ nó một LSR có thể thông báo cho một LSR khác biết về các mối gán kết nhãn-FEC mà nó đã tiến hành. Kiến trúc MPLS không chỉ định một giao thức phân phối nhãn duy nhất nào, do đó có thể có nhiều lựa chọn. Mỗi giao thức có ưu và nhược điểm riêng. Trong các phần tiếp theo giới thiệu một số giao thức phân phối nhãn được dùng phổ biến. Bảng 2.1 : Một số giao thức phân phối nhãn MPLS Giao thức Hỗ trợ các chế độ LDP RSVP-TE CR-LDP BGP Định tuyến từng chặng (hop by hop) x x x (*) Định tuyến tường minh x x Phân phối không cần yêu cầu x x Phân phối theo yêu cầu x x x Điều khiển độc lập x x Điều khiển tuần tự x x x Point-to-poing LSP x x x x Multipoint-to-poing LSP x x (*): Mỗi hop là một hệ tự trị (Autonomous System) 2.3. Giao thức LDP (Label Distribution Protocol) LDP đượ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 cưỡng bức (unconstraint routing). 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 2.11 : Vùng hoạt động của LDP 2.3.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 (label advertisement) và thông báo (Notification). 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. - 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. Hình 2.12 : Trao đổi thông điệp LDP 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 router trong subnet). - 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ó 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 2 LSR. 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 đến cổng UDP đã biết tại điạ chỉ IP xác định được 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 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 đuợc thực hiện như trên.” 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. 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. Đầ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. 2.3.2. Cấu trúc thông điệp LDP Trao đổi thông điệp LDP được thực hiện bằng cách gởi các LDP-PDU (Protocol Data Unit) thông 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. 2.3.2.1. LDP PDU Mỗi PDU của LDP bao gồm một header LDP và theo sau là một hoặc nhiều thông điệp LDP. Phần header LDP có dạng như sau: Hình 2.13 : LDP header - 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 (router 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”. 2.3.2.2. Định dạng thông điệp LDP Tất cả các thông điệp LDP có cùng format như sau: - Bit U: Bit “Unknown”, luôn là 0 vì đặc tả LDP không có kiểu bản tin Unknown. - 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à các tham số tùy chọn). Hình 2.14 : Format thông điệp LDP Bảng sau là các giá trị định nghĩa trường Message Type: Bảng 2. 1 : Các loại bản tin LDP Tên bản tin Giá trị Message Type Notification 0x0001 Hello 0x0100 Initialization 0x0200 KeepAlive 0x0201 Address 0x0300 Address Withdraw 0x0301 Label Mapping 0x0400 Label Request 0x0401 Label Withdrawal 0x0402 Label Release 0x0403 Label Request Abort 0x0404 - Message 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 sẽ 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. 2.3.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 và phiên kết thúc. - 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. - Label Mapping : Được sử dụng để quảng bá gán kết giữa FEC và nhãn. - 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 prefix địa chỉ), lúc đó LSR không còn nhận ra FEC này nữa. + 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 đó. - 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 đó. - 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 từ LSR kế cận phía downstream bằng bản tin này. - 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. 2.3.4. LDP điều khiển độc lập và phân phối theo yêu cầu Ví dụ dưới đây minh họa việc sử dụng bản tin Label Request và Label Mapping trong chế độ công bố nhãn theo yêu cầu và điều khiển LSP độ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ừ router lối vào R1 qua R2 rồi đến router lối ra R3 cho một FEC có prefix “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ừ hop kế của nó là 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 downstream 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à LFIB của R2, R3 có các entry gán kết nhãn hình thành nên đường chuyển mạch nhãn LSP. Hình 2.15 : Ví dụ LDP chế độ điều khiển độc lập 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 router 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 ở router lối ra, rồi sau đó lần lượt ngược về đến router lối vào. 2.4. Giao thức CR-LDP (Constrain-based routing LDP) Theo RFC 3212, giao thức CR-LDP là giao thức mở rộng từ LDP nhằm hỗ trợ đặc biệt cho định tuyến cưỡng bức, kỹ thuật lưu lượng (TE) 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. 2.4.1 Mở rộng cho định tuyến cưỡng bức 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

Các file đính kèm theo tài liệu này:

  • docdo an tot nghiep.doc
  • docma code cau hinh router.doc