1 / 24

一個能夠達到最短延遲時間的 anycast 路由協定

一個能夠達到最短延遲時間的 anycast 路由協定. 國立中山大學 黃偉程 資碩一 學生:鍾澤華 96356015 授課老師:郭育政 副教授. Outline. Anycast 介紹 Anycasting 的服務分類 網路層 anycasting 的方法 本文方法 模擬結果 結論. Anycast. Anycasting 的意義: 由 IETF 所提出。 Client 送出含有 anycast 位址的封包時,則網際網路會將該封包送至所有 anycast group member 中的一部

Download Presentation

一個能夠達到最短延遲時間的 anycast 路由協定

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. 一個能夠達到最短延遲時間的anycast 路由協定 國立中山大學 黃偉程 資碩一 學生:鍾澤華 96356015 授課老師:郭育政 副教授 網路路由技術

  2. Outline • Anycast介紹 • Anycasting的服務分類 • 網路層anycasting的方法 • 本文方法 • 模擬結果 • 結論 網路路由技術

  3. Anycast • Anycasting 的意義: • 由IETF所提出。 • Client 送出含有anycast 位址的封包時,則網際網路會將該封包送至所有anycast group member 中的一部 • 動機為:當client 對 server 提出要求,若有多個server 可提供相同的服務給 client,則client可以不需要去在乎是那一部server被使用。 • 可有效地簡化使用者在找尋最適當的server方面的問題,提供使用者更佳的方法性。 • 例如,當多部內容相同的 FTP Server使用相同的anycast位置,則使用者只要連接至該anycast位置,便可以直接連接到和使用者位置最接近的FTP伺服器。 網路路由技術

  4. Anycast 網路路由技術

  5. 網路層上的anycast服務 • 大致可分成兩大方向:應用層和網路層。 • 網路層上的服務是將anycast routing做在網路層上: - Router必須支援anycast位置及anycast protocol - 在既有的IP address上另外分配給anycasting服務. • 網路層anycast相關的方法: - 考慮權重 - Shortest-Shortest Path Method(SSP) - Source-Based Tree Method(SBT) - Core-Based Tree Method(CBT) • 優點: - 方便.對使用者來說不用決定anycast group member的標準. - 減少傳送前等待時間:不用向ANR做查詢動作. • 缺點:相對缺乏彈性. 網路路由技術

  6. 網路層上的anycast服務 • 權重考慮: • 計算 anycast group member 中所有的權重值(weight) 。 • 權重值越大該 member 被選中的機率也越大。 • 得到權重 ( Wi ) 後,再根據過去該 member 之 flow 建立成功或失敗的個數來調整weight 值。 • 當建立 flow 失敗次數增加時,則降低其權重。 • 當建立 flow 成功次數增加時,則增加其權重。 • 將 anycast 封包送至離 router 最接近的 member 機率最大,若最接近的 member 已超過負載,則變成次接近的member 被選到的機率最大。 其中Wi 為member i 的權重值, i D 為router 到member i 的distance,k 為anycast group 網路路由技術

  7. 網路層上的anycast服務 • Shortest-Shortest Path Method(SSP): • 在所有的最短路徑中選出最短的路徑來作為傳送的路徑。指的是,從router 到所有anycast group member 間distance 最小的路徑。 • 當得到自 router 到所有member 間的最短路徑後,選擇其中distance最小的路徑即為要傳送anycast 封包的路徑。 當Client要經過R1,傳送給 GroupA時,R1->R5為最短路徑,且R5->member1為最短路徑,所以當透過R1到GroupA的SSP為{R1-R5->member1} 圖1.SSP示意圖 網路路由技術

  8. 網路層上的anycast服務 • Shortest-Based Tree Method(SBT): • 是一個理論上理想的方法。 • 以source 作為tree的樹根,anycast group 的 member 為樹葉,從樹根到樹葉的路徑為兩者間的shortest path。 • 優點: • 每一路徑皆為最短路徑。 • 理論上,SBT 應該是最佳方法。 • 缺點: • 需要資訊太過龐大。若有N 個sources 及 M 個member 時,則使用SBT 方法的router 之routing table 中需要有 O(NM) 個entry。 網路路由技術

  9. 網路層上的 anycast 服務 • Core-Based Tree Method(CBT): • 為了解決 SSProuting table太過龐大的問題所衍生。 • 作法:在網路上選擇一個 router 作為 core,把 core 當作CBT的樹根,anycast 的 member 為樹葉,樹根到樹葉為最短距離。 • 在 CBT 網路中的router: • 在tree中,稱為 on-CRT router:考慮權重,選出最近的member。 • 在tree外,稱為off-CRT router:使用SSP選徑。 • 優點:只需要建立一棵樹。 網路路由技術

  10. 本文方法 • 網路層的 anycast 服務在選擇 anycastgroup member 時多半以距離為考量。 • 缺失:離client 最近的伺服器,未必是delay time 最小的伺服器。 • 反應時間 = 網路傳輸時間 + member 處理資料時間。 • 提出一個針對以上兩點的方法改善反應時間: • 找出 router 到 member 傳輸的最短路徑:最短延遲時間路徑(minimum delay pathmethod)。 • 找出負擔最輕的member:最小延遲及負載平衡(minimum delay and loadbalancing)。 網路路由技術

  11. 本文方法 • Routing Protocol:定義router 在執行 routing 時的相關操作,設計時要考慮兩個因素: • QoS • Overhead • 此兩因素通常難以兩全,互相衝突,考慮平衡問題。 • Routing protocol分為兩個部分: • Routing Table Establishment protocol:收集交換網路topology 及網路資源的資訊,建立或更新routing table。作為packet forwarding 之用。 • 1. 產生candidate entries。 • 2. 找出合格的entry。 • 3. 根據合格entry建立routing table。 • Packet Forwarding protocol: • 轉傳(forward)封包時使用。 網路路由技術

  12. 本文方法 • Candidate entries建立:採用Minimum delay path method: • 產生從 router 到接收端延遲時間最小的路徑。 • 優點:避免將資料傳送到擁擠的網路中,使網路的負載能夠較為平衡,並改善網路的QoS。 • 作法: • 使用探測訊息,TRACE。將 TRACE 訊息傳送到整個網路中,找尋延遲時間最短的路徑。此訊息包含sequence number及該訊息經過的所有節點。 • 當router D 接收到多個來自 router S的 TRACE 訊息時,則最先接收的TRACE訊息中的路徑即為從router S到router D延遲時間最小的路徑。 • 反向 TRACE 訊息:ACK。包含 TRACE 訊息中所經過的路徑及 TRACE 的延遲時間。而ACK的傳送訊息是沿著反方向的TRACE路徑傳送。 • Router D總共接收到三個來自router S的TRACE訊息,假設TRACE(S,R1, … , RN)是三個TRACE訊息中最先接收到的訊息,則代表從router S到router D的最短延遲時間路徑為D -> R1->…-> RN -> D。 網路路由技術

  13. 本文方法-Trace封包傳送 網路路由技術

  14. Updating Algorithm of TRACE message • Link的延遲時間隨著資料量改變而變動,為了確保最短路徑的準確性。 - 當延遲時間改變,的TRACE訊息,導致overhead。 - 將TRACE訊息傳送間隔加長,會降低最短延遲時間的準確性。 • 當link的延遲時間變動超過threshold時,再送出新的TRACE訊息。以減少控制訊息的overhead(公式2)。及動態的調整threshold(公式3),到當link 的更新頻率高於上限時,我們調高threshold 來降低link 更新頻率;反之,若link 的更新頻率低於下限,則調低threshold 來提高link 更新頻率。 其中Hi為時間在第i個interval 的threshold, a 為介於0至1的值,Ui為時間在第i個interval的link更新頻率, Uu為更新頻率的上限,而Ui則為更新頻率的下限 其中Bij ,Tk, 為在時間TK時從節點i 到節點j 之link 的剩餘頻寬, H 為threshold。 網路路由技術

  15. Updating Algorithm of ACK message • 若router 一接收到TRACE 訊息,就傳回ACK 訊息,將產生可觀的overhead。若TRACE 訊息中的路徑與延遲時間沒有變化的話,則傳回的ACK 訊息會造成額外的overhead。 • 加上一些條件來減少傳回的ACK 訊息: • 若接收端的router自傳送端傳來的新的TRACE訊息中的路徑與上一個TRACE路徑不同,代表最短延遲時間的路徑已經改變,則重傳ACK給傳送端,通知傳送端最短延遲時間路徑改變。 • 若路徑相同,但延遲時間變化超過threshold則也會傳送ACK訊息,通知路徑中router更新其routing table資料。 網路路由技術

  16. TRACE 及ACK 訊息的演算法 網路路由技術

  17. 本文方法 • Eligible Entries 的選擇: • 建立 core-based tree • 在tree中,稱為 on-CRT router:在on-CRT router的eligible entries選擇中,該router的所有son都為eligible entries。考慮權重,選出最近的member。 • 在tree外,稱為off-CRT router:選出延遲時間最短的路徑為eligible entry。 • Core selection algorithm建立CRT。 網路路由技術

  18. 本文方法 • Routing table的建立: • Anycast entry之搜尋: • 1.讀出封包headrer各個欄位。如des, source, flow. • 2.比對封包與routing table之entry。 • Anycast entry之選擇: • 1.找尋到對應的entry。 • 2.比對entry之權重值,選擇W最大作為傳送的目標。 • 傳送。 網路路由技術

  19. 本文方法 • Anycast entry之選擇: • 希望能傳送至負載較輕的member,來達到load balance。 • 利用最短延遲時間來傳送。 • Weight之及算公式如下: • 如何將member的負載資訊傳送至CBT中: • member將帶有負載資訊的封包傳送至core。 • Core轉送給所有的son,直到所有member的father知道為止。 • 為了減少傳送負載所產生的overhead,只有當負載變化超過threshold時,才傳送負載資訊封包至core。 與member S負載相關的參數 router R->member S在Ti時間的權重 (11) (9) 所有member S負載 router R->member S的最短延遲時間 (10) (12) 所有member 的平均負擔 網路路由技術

  20. 本文方法 • 假設Router2到group A的 最短路徑為{ R2,R6,R9, R12,R16} • Member1~4為Group A。 • R1~R18為Router。 • CBT為{ R7, R9 ,R10, R11, R12, R13, R14, R15, R16, R17, R18} Group A 網路路由技術

  21. 結論 • 實驗比較: • 實驗一:所有member處理能力相同,傳送資料前必須先建立connection。隨時間增加flow個數。 • 此法平均延遲時間為0.023秒,比CBT之0.031快上25%。 • 實驗二:所有member處理能力皆不同,傳送資料前必須先建立connection。隨時間增加flow個數。 • 此法平均延遲時間為0.021秒,比CBT之0.03快上30%。 • 實驗三:情況同一,但client位置改變,假設client其中在某一區域。 • 此法平均延遲時間為0.024秒,比CBT之0.04快上35%。 • 實驗四:情況同一,client位置同實驗三。 • 此法平均延遲時間為0.024秒,比CBT之0.039快上38%。 • 在多種情況下,此方法的平均延遲時間比CBT為佳。 網路路由技術

  22. 附錄1 • 大致可分成兩大方向:應用層和網路層。 • 應用層上的anycasting服務的優點: • (1) 有較大的彈性:可依據使用者不同的需求來訂定選擇的規則,例如:選擇距離最近的member 或是反應時間最短的member,再將所選擇的規則放在anycast query 中的 filter specification 中。anycast name resolvers 根據 filter specification 去找出使用者所需要的anycast group member。 • (2) 容易提供anycasting服務:不需要更改到目前的IP位址、routing protocol。router 即使不支援anycast 位址亦能執行anycasting 服務。 • 網路層anyc Anycast name resolvers 主要功能為將ADN 轉換成為IP 位址,需要有: (1) anycast group 所有member 的IP 位址。(2) 所有member 的相關資料,如:distance、反應時間(response time)、負載量等。 網路路由技術

  23. 附錄2 • client 傳送anycast query給anycast name resolvers 包含anycast domain name(ADN)及選擇anycast group member 標準。 • anycast query 送至anycast nameresolvers 時,anycast name resolvers 根據anycast query 中的ADN找出metric database 中所有的anycast group member 的資料。包括:member 的IP 位址、distance、反應時間等。 • 再根據選擇member的標準,由resolver filter 選擇其中最佳的member。將該member 的IP 位址放入anycast response 中,並將anycast response 傳送回client。 • 當client接收到anycast response時,由client filter 讀出anycast response 中的IP 位址。接下來,若client 要送封包至anycast group member 時,以此IP 位址為封包之目的位址,便可直接將封包送至anycast name resolvers 所選擇之最佳anycast group member。 網路路由技術

  24. 附錄3 網路路由技術

More Related