1 / 37

MPLS Network Simulator

MPLS Network Simulator. (MNS). 報告者 鄭吉泰 (694430028). OUTLINE. 2. Background (MPLS) Introduction (MNS) Architecture (MPLSnode) API (for LDP and CR-LDP) API (for Creating MPLS network). Background. 3. MPLS -- 多重協定標籤交換傳輸 (Multi-Protocol Label Switching ) Why MPLS ? IP network

abdalla
Download Presentation

MPLS Network Simulator

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. MPLS Network Simulator (MNS) 報告者 鄭吉泰(694430028)

  2. OUTLINE 2 • Background (MPLS) • Introduction (MNS) • Architecture (MPLSnode) • API (for LDP and CR-LDP) • API (for Creating MPLS network)

  3. Background 3 • MPLS -- 多重協定標籤交換傳輸 (Multi-Protocol Label Switching) • Why MPLS ? • IP network • 中間節點設備必須重複檢查封包的表頭,並解析下一個路徑 • MPLS network • 提供每個IP 封包一個label,由此決定封包的路徑以及優先順序

  4. Background 4 • 優點 • 僅讀取封包標籤 ,加快網路速度 。 • 對所傳送的封包加以分級,提升網路服務品質。

  5. Background 5 • MPLS network • 由多個具有標籤交換能力的LSR(Label Switch Router)互相連結所組成

  6. Background 6 • LSR(Label Switch Router) • Ingress LSR • 當IP Packet進入MPLS網路,負責為封包貼上標籤 (Push Label ) • Core LSR • 位於MPLS網路的核心,負責做標籤轉換 (Label Swap) • Egress LSR • 當封包要離開MPLS網路,負責去除標籤( Pop Label)

  7. Background 7 • Label Assignment and Distribution(1/5) • LSR Routing Table 利用routing protocol來交換路由資訊 ,並以此建立自己的FIB(Forwarding Information Base)

  8. Background 8 • Label Assignment and Distribution(2/5) • LSR Allocating Label 當LSR啟動MPLS功能後,對於使用相同處理方式、相同path、到達相同目的地的Routing entry做彙整及分類,然後Assign Label

  9. Background 9 • Label Assignment and Distribution(3/5) • 建立自己的LIB及LFIB 將前面步驟Allocating 的local Label資訊儲存於LIB(Label Information Base)和LFIB(Label Forwarding Information Base)中

  10. Background 10 • Label Assignment and Distribution(4/5) • LSR Label Distribution 相鄰的LSR間執行LDP(Label Distribution Protocol) ,將Local assign的Label資訊傳送(Distribution)給相鄰的LSR

  11. Background 11 • Label Assignment and Distribution(5/5) • 彙整 Lable資訊 根據routing table得到的最佳路徑,獲知到某網段的Next-hop LSR 所送來的Label資訊,插入到LFIB的outgoing Label資料結構中。

  12. Background 12 • Packet 傳送過程(1/2) • Ingress LSR 檢查IP Packet中的Destination IP address,並且在FIB中lookup是否有符合的IP network,如果有則進一步查看FIB中相對應的Label欄位值,在此Packet中打上Label=#,再傳送出去 。 • Core LSR Lookup LFIB的資料,檢查是否有Label=#的entry,有則再查看此entry中Outgoing Label的欄位值,快速置換Label(Label=@),傳往下一個節點。

  13. Background 13 • Packet 傳送過程(2/2) • Egress LSR Lookup LFIB的資料,檢查是否有Label=@的entry,如果有則再查看此entry中Outgoing Label的欄位值,若Outgoing Label=Pop,則Packet中的Label被移除,此時已離開MPLS網路再進入到IP的網路中。 • Penultimate Hop Popping 在Egress LSR前一個節點就把Label移除,Egress LSR只要做IP lookup。

  14. Background 14 • LSP (Label Switching Path) • 封包在邊緣端被分類,且加入一適當的標籤 ,接著就會依據此標籤以類似Switching 的方式快速沿一LSP (Label Switching Path) 傳送到目的地。

  15. Background 15 • LDP(Label Distribution Protocol) • LSR 之間交換Label/Stream 映對(mapping)的程序所組成 • CR-LDP 是擴展自LDP ,使其能支援MPLS 的Traffic Engineering。和基本的 LDP 不同的是,CR-LDP 支援明確路由(Explicit Route )的參數,如:“讓路徑得到某個量的頻寬,或是使用到某個最高速率上限”等等。 • ER-LSP • MPLS允許網路的管理員確定一條明確路由的LSP(ER-LSP),規定封包將選擇的路徑。

  16. Background 16 • Label Stack • 因應用的需要來為封包加上數個Label,而且其結構為後進先出。在MPLS 網路之中,傳送封包的依據是由最上層的Label決定。

  17. MNS 17 • module • ns-allinone-2.29/ns-2.29/mpls • example tcl • ns-2.29/tcl/test/test-suite-mpls.tcl • run example(simple) • ns test-suite-mpls.tcl simple • nam • nam simple.nam

  18. MNS 18 experiment environment

  19. MNS 19 • Scheduling • at 0.01 Label Distribution • at 0.20 Label withdrawal for FEC 9 & 10 • at 0.30 Flow Aggregation • at 0.70 CD-LDP Reuqest/Mapping Message for creating an ER-LSP • at 0.90 Packet Switching based on the ER-LSP • at 1.60 Packet Switching based on the LSP Tunnel

  20. MNS 20 • 小考 • ER-LSP : 2 → 5 → 4 → 8 → 6 → 7

  21. MNS 21 • 小考 • 修改 ER-LSP : 2 → 3 → 4 → 5 → 6 → 8 → 7

  22. MNS 22 MPLS Packet Trace <time><node><source><destination><Un/Labeled><incoming-label><label operation><outgoing interface><outgoing label> <shim header’s TTL>< shim header’s size>

  23. MNS 23 • implementation scope(1/2) • Label Switching label swapping/stacking operation,TTL decrement, and penultimate hop popping • LDP Protocol • handling LDP messages(Request,Mapping, Withdraw, Release, and Notification)

  24. MNS 24 • implementation scope(2/2) • CR-LDP Protocol • handling CR-LDP messages • Flow Aggregation • aggregate fine flows into a coarse flow

  25. Architecture 25 • Node in NS • Agent • Classifier • MPLSnode in MNS • Inserte -- MPLS Classifier and LDP agent

  26. Architecture 26

  27. Architecture 27 • MPLSnode operation • MPLS Classifier • determines whether the packet is labeled or unlabeled • labeled – swapping and sends it to the next node • unlabeled • with LSP prepared – as labeled packet • Otherwise – sends it to “Addr Classifier”

  28. Architecture 28 • MPLSnode operation • Addr Classifier • executes L3 forwarding • next hop is itself – sent to“Port Classifier”

  29. Architecture 29 • three tables in MPLSnode • Manage information related to LSP • PFT • Consists of FEC、PHB、LIBptr • LIB • Information for LSP • ERB • Information for ER-LSP

  30. Architecture 30

  31. Architecture 31 • unlabeled packet

  32. Architecture 32 • unlabeled packet

  33. Architecture 33 labeled packet

  34. Architecture 34 labeled packet

  35. API (for LDP and CR-LDP) 35

  36. API (for Creating MPLS network) 36

  37. API (for Creating MPLS network) 37

More Related