覆蓋網(wǎng)絡發(fā)展現(xiàn)狀分析
時間:2022-03-12 10:27:00
導語:覆蓋網(wǎng)絡發(fā)展現(xiàn)狀分析一文來源于網(wǎng)友上傳,不代表本站觀點,若需要原創(chuàng)文章可咨詢客服老師,歡迎參考。
當?shù)谝粋€分組到達入點后,入點將用其特有的路由選擇方式查找轉(zhuǎn)發(fā)表(稍后將介紹)為其選擇下一跳路由,即下一個RON結(jié)點——如果不需路由則直接交給接收程序,與傳統(tǒng)路由轉(zhuǎn)發(fā)機制相似——下一個結(jié)點繼續(xù)與第一個結(jié)點相同的工作,直到到達出點。在轉(zhuǎn)發(fā)的時候入點為該分組封裝一個RON包頭,其中包含“流標識”字段。入點在轉(zhuǎn)發(fā)了第一個分組之后,后續(xù)到達的屬于同一個客戶的分組將被標上相同的流標識,不再查找轉(zhuǎn)發(fā)表,直接按第一個分組所走的路徑轉(zhuǎn)發(fā),后續(xù)的RON結(jié)點也一樣。除非探測到路徑中某條虛鏈接發(fā)生重大問題,不再適合傳輸該類型的分組,相應的結(jié)點才重新查找轉(zhuǎn)發(fā)表從另一條虛鏈接轉(zhuǎn)發(fā)。因為鏈路狀態(tài)信息的獲取十分及時,所以一旦發(fā)生故障結(jié)點可以迅速改變轉(zhuǎn)發(fā)路徑,這是傳統(tǒng)的BGP協(xié)議無法做到的。
分組轉(zhuǎn)發(fā)的機制是這樣的,圖3為RON的路由表結(jié)構(gòu)。RON結(jié)點分三步完成一個完整的查找過程,第一步查找該分組的路由策略的類型,第二步針對分組的特點選擇不同的路徑因子,第三步才是查找分組的下一跳。可以看出,查找路由表是比較復雜的工作,因此只有在第一個分組到達或鏈路狀態(tài)發(fā)生重大變化時才查找路由表。
3.2內(nèi)容傳送網(wǎng)絡(CDN)
3.2.1介紹
內(nèi)容傳送是當前比較熱門的話題之一,而且占用Internet帶寬的很大一部分。對于因特網(wǎng)內(nèi)容提供者(InternetContentProvider)來說,如果采用傳統(tǒng)的中央網(wǎng)站式的內(nèi)容傳送,會有主干網(wǎng)帶寬浪費及使用者下載內(nèi)容時間過長等問題。CDN是這樣一種覆蓋網(wǎng)絡,它將內(nèi)容和服務動態(tài)地緩存在分布在因特網(wǎng)各處的結(jié)點上,用戶不需集中訪問原始的服務器,而只需訪問物理上或邏輯上“較近”的服務器的鏡像,這樣可以大大縮短延遲,同時減少主干網(wǎng)的帶寬消耗。
3.2.2CDN的構(gòu)架
從技術(shù)角度講,CDN由許多分布在因特網(wǎng)上的緩存服務器組成,這些緩存服務器向用戶提供內(nèi)容和服務,其上緩存ICP的服務和內(nèi)容。最重要的問題是如何在覆蓋網(wǎng)絡中進行用戶請求的重定向以實現(xiàn)負載平衡。當接收到一個用戶請求時,如何為其選擇一個合適的緩存服務器取決于多個因素,主要包括:網(wǎng)絡上的距離(主要是由路由選擇決定)、物理上的距離、響應時間、服務器負載等。
用戶訪問的基本流程如下:
1)用戶在自己的瀏覽器中輸入要訪問的網(wǎng)站的域名;
2)瀏覽器向本地DNS請求對該域名的解析;
3)本地DNS將請求發(fā)到網(wǎng)站的主DNS,主DNS再將域名解析請求轉(zhuǎn)發(fā)到重定向DNS;
4)重定向DNS根據(jù)一系列的策略確定當時最適當?shù)腃DN節(jié)點,并將解析的結(jié)果IP地址發(fā)給用戶;
5)用戶向給定的CDN節(jié)點請求相應網(wǎng)站的內(nèi)容;
6)CDN節(jié)點中的服務器負責響應用戶的請求提供所需的內(nèi)容。
目前較為常見的商業(yè)性CDN網(wǎng)絡有Akamai、DigitalIsland等。最大的商業(yè)CDNAkamai自己宣稱,其占用Web流量的15%。CDN正日益受到內(nèi)容提供者和用戶的青睞,市場前景較為廣闊。
3.3應用層組播
3.3.1組播介紹
Deering很早就提出了IP組播體系結(jié)構(gòu),設想組播功能在網(wǎng)絡層實現(xiàn),但是實際中卻遇到了很多問題。技術(shù)上的原因是IP組播需要每個路由器維護每個組播組的狀態(tài),路由器的路由表也需要為每個組播組維護一個地址項,這在現(xiàn)在的因特網(wǎng)上是很難實現(xiàn)的;而且IP組播中擁塞控制也太復雜。這些因素使IP組播無法得到廣泛應用。而近年對組播的越來越多的需求使人們重新考慮這一問題,新的解決方案也就應運而生了,這就是應用層組播。應用層組播是使用覆蓋網(wǎng)絡進行組播的一種組播形式,下一節(jié)將以Overcast這種較有代表性的體系結(jié)構(gòu)來介紹使用覆蓋網(wǎng)絡的應用層組播。
3.3.2Overcast:使用覆蓋網(wǎng)絡的可靠組播
Overcast被設計用于單源組播,一個Overcast覆蓋網(wǎng)絡由一個源服務器(為了應付可能出現(xiàn)的故障一般會有備份)、任意數(shù)目分布在因特網(wǎng)上的Overcast中間結(jié)點和標準的HTTP客戶端構(gòu)成。Overcast使用一個簡單的建樹協(xié)議(tree-buildingprotocol)將中間結(jié)點組織成一棵轉(zhuǎn)發(fā)樹,使用一種叫做“上/下行協(xié)議”(Up/Downprotocol)的協(xié)議來有效地維護Overcast網(wǎng)絡的全局狀態(tài)。
結(jié)點之間的虛擬鏈接是建立在下層的因特網(wǎng)上的,因此轉(zhuǎn)發(fā)樹的構(gòu)造對于覆蓋網(wǎng)絡的性能有很大的影響。在Overcast中建立轉(zhuǎn)發(fā)樹的原則是盡量增大從根結(jié)點(源服務器)到所有中間結(jié)點的帶寬。當一個新的結(jié)點加入覆蓋網(wǎng)絡時,建樹協(xié)議便開始工作了。新結(jié)點要連接根結(jié)點,根結(jié)點現(xiàn)在就被看作“當前結(jié)點”(currentnode),接著這個新結(jié)點便開始一次次地試探,在不犧牲到根結(jié)點的帶寬的前提下盡量將自己定位到遠離根結(jié)點的結(jié)點上,成為其孩子結(jié)點。每次試探中新結(jié)點都檢測其到“當前結(jié)點”的帶寬和到“當前結(jié)點”的每一個孩子結(jié)點的帶寬,如果到一些孩子結(jié)點的帶寬和到“當前結(jié)點”的帶寬一樣高,則其中距離該新結(jié)點網(wǎng)絡距離最短(跳數(shù)最少)的一個孩子結(jié)點成為“當前結(jié)點”,新的一次試探開始。這就是Overcast建樹協(xié)議的基本思想。
為了讓客戶快速方便地加入,Overcast網(wǎng)絡必須實時掌握Overcast結(jié)點的狀態(tài),這就需要用到“上/下行協(xié)議”。網(wǎng)絡中的每個結(jié)點,包括根結(jié)點,都維護一張信息表,記錄所有在樹的層次結(jié)構(gòu)中低于自己的結(jié)點,并保存網(wǎng)絡變更的日志。協(xié)議的基礎(chǔ)是每一個結(jié)點周期性地向其直接父結(jié)點報告自己的存在,如果一個孩子結(jié)點在一定的時間間隔內(nèi)沒有報告,則父結(jié)點認為該孩子結(jié)點“死了”。有可能是結(jié)點自身的故障、鏈路故障或該孩子改變了父結(jié)點。
當一個客戶想要加入組播組時,它使用一個組的URL來發(fā)送HTTPGET請求,根結(jié)點根據(jù)結(jié)點的位置和組播樹的狀態(tài)來決定該用戶應連接到哪一個結(jié)點上去。組播樹的狀態(tài)信息能夠?qū)崟r傳到根結(jié)點,所以根結(jié)點可以很快做出決定,這就實現(xiàn)了快速加入。
4結(jié)束語
覆蓋網(wǎng)絡是一個由應用推動的研究領(lǐng)域。人們對因特網(wǎng)的諸多新的需求促使很多研究人員開始關(guān)注這一領(lǐng)域,并業(yè)已取得顯著效果,許多覆蓋網(wǎng)絡已由實驗室走向因特網(wǎng),為人們提供了更為方便的服務。本文只介紹了三種最受關(guān)注的覆蓋網(wǎng)絡,實際上還有很多功能各異的覆蓋網(wǎng)絡,限于篇幅,本文沒有再作介紹。
覆蓋網(wǎng)絡是一個新興的研究領(lǐng)域,有著很高的應用價值和商業(yè)價值,發(fā)展前景十分廣闊,值得廣大研究人員繼續(xù)深入研究。
參考文獻
[1]DavidAndersen,HariBalakrishnan,F(xiàn)ransKaashoek,andRobertMorris,MITLaboratoryforComputerScience,ResilientOverlayNetworks
[2]JohnJannotti,DavidK.Gifford,KirkL.Johnson,M.FransKaashoek,JamesW.O''''Toole,Jr.,CiscoSystems,Overcast:ReliableMulticastingwithanOverlayNetwork
[3]FredericThouinandMarkJ.Coates,DepartmentofElectricalandComputerEngineering,McGillUniversity,AReviewOnContentDeliveryNetwork
[4]StefanSaroiu,KrishnaP.Gummadi,RichardJ.Dunn,StevenD.Gribble,andHenryM.Levy,DepartmentofComputerScience&Engineering,UniversityofWashington,AnAnalysisofInternetContentDeliverySystems
[5]徐恪,熊勇強,清華大學計算機科學與技術(shù)系吳建平,微軟亞洲研究院對等網(wǎng)絡研究綜述
[6]FieldSecurityOperationsDefenseInformationSystemsAgency,VoiceOverInternetProtocol(VOIP)SecurityTechnicalImplementationGuide
[7]RobertStone,UUNETTechnologies,Inc.,CenterTrack:AnIPOverlayNetworkforTrackingDoSFloods
[8]ZhenhaiDuan_,Zhi-LiZhang,Dept.ofComputerScience&Engineering,UniversityofMinnesota.YiweiThomasHou,BradleyDept.ofElectrical&ComputerEngineering,VirginiaTech.ServiceOverlayNetworks:SLAs,QoSandBandwidthProvisioning
摘要隨著因特網(wǎng)發(fā)展的日趨完善,出現(xiàn)了很多所謂的“覆蓋網(wǎng)絡”(OverlayNetworks),它們的形式多種多樣,功能也不盡相同。本文綜述了覆蓋網(wǎng)絡的現(xiàn)狀,并對因特網(wǎng)上目前最流行的三種覆蓋網(wǎng)絡分別進行介紹。
關(guān)鍵詞覆蓋網(wǎng)絡;內(nèi)容傳送;彈性
1引言
近年來人們不斷對因特網(wǎng)提出新的需求,例如多播、點對點文件共享以及保護隱私等。這些促使了因特網(wǎng)的進一步發(fā)展,為了更好地滿足這些要求,覆蓋網(wǎng)絡應運而生。本文主要介紹了三種應用較為普遍的覆蓋網(wǎng)絡:路由覆蓋網(wǎng)絡、內(nèi)容傳送網(wǎng)絡和應用層組播。文章安排如下:第2節(jié)介紹覆蓋網(wǎng)絡的定義和覆蓋網(wǎng)絡出現(xiàn)的原因,第3節(jié)簡述三種常見的覆蓋網(wǎng)絡,并舉例說明。
2覆蓋網(wǎng)絡的含義
因特網(wǎng)的體系結(jié)構(gòu)是一種分層的結(jié)構(gòu),其最上一層是應用層,它利用傳輸層提供的服務完成相應的應用功能,如Web瀏覽、電子郵件服務、FTP服務等。但這種傳統(tǒng)的結(jié)構(gòu)已經(jīng)不能很好地滿足越來越復雜的應用需求。例如,多媒體應用的發(fā)展迫切要求網(wǎng)絡能夠支持組播功能,而目前的因特網(wǎng)尚不能完全支持組播。因此,有人提出在應用層實現(xiàn)組播,具體做法是參加組播的計算機自己構(gòu)成一個覆蓋網(wǎng)絡,然后在應用層維護組播樹的結(jié)構(gòu)并由應用結(jié)點參與進行組播轉(zhuǎn)發(fā)。
覆蓋網(wǎng)絡的基本含義就是在現(xiàn)有的因特網(wǎng)上構(gòu)建一個完全位于應用層的網(wǎng)絡系統(tǒng)。覆蓋網(wǎng)絡服務不是由因特網(wǎng)服務提供商(InternetServiceProvider)提供的,而是由一種新型的服務提供商提供。它存在于因特網(wǎng)基礎(chǔ)設施和應用程序之間,利用ISP提供的服務來向其用戶提供更加優(yōu)化的服務??梢哉J為,覆蓋網(wǎng)絡是分布在因特網(wǎng)上的一組提供服務的主機的集合,它們?yōu)橐粋€或多個應用程序提供下層的基礎(chǔ)設施,在某種程度上轉(zhuǎn)發(fā)和處理應用程序的數(shù)據(jù),所采用的方式與目前因特網(wǎng)上的不同;由第三方運營和管理,不是當前因特網(wǎng)體系結(jié)構(gòu)的一部分。
3常見的覆蓋網(wǎng)絡
3.1路由覆蓋網(wǎng)絡
路由覆蓋網(wǎng)絡的作用是為了控制或改善網(wǎng)絡上數(shù)據(jù)傳送的路徑,在一個路由覆蓋網(wǎng)絡中,通信雙方的端結(jié)點并不改變,改變的是其分組可能經(jīng)過的路由。我們知道,因特網(wǎng)由很多個自治系統(tǒng)(AutonomousSystem)組成,每個自治系統(tǒng)由一個ISP維護,分組在一個自治系統(tǒng)內(nèi)部的路徑由管理該自治系統(tǒng)的ISP決定,受多個因素影響,其中包括自治系統(tǒng)的內(nèi)部結(jié)構(gòu)和傳送分組所需的開銷。每個ISP與其相連結(jié)的ISP一般都會有商業(yè)上的協(xié)定,這些協(xié)定決定了分組從哪一條路徑傳送到下一個自治系統(tǒng)的開銷最小。自治系統(tǒng)之間運行邊界網(wǎng)關(guān)協(xié)議(BorderGatewayProtocol),BGP允許每個ISP設定關(guān)于接收、轉(zhuǎn)發(fā)分組的控制策略,然后通過分布式計算來確定一條從源結(jié)點到目的結(jié)點的“最佳”的路徑。
但是由于每一個ISP側(cè)重的目標不一致,比如有的ISP考慮傳送分組的開銷,有的關(guān)注可用帶寬和傳輸延遲,還有的希望盡量合理地使用下層物理鏈路以減小擁塞出現(xiàn)的幾率。因此,這種所謂的“最佳”路徑對于用戶來說很大程度上并不是最佳的。因特網(wǎng)本身的路由機制,完全由ISP決定,端用戶和應用程序無法參與,這種路由機制對于端用戶和應用程序來說是不精確的,它僅反映了ISP對開銷和運行效率的考慮,而不顧用戶和應用程序的真正需求。下一節(jié)我們將要介紹的是針對這種現(xiàn)狀而提出的,旨在改善路由選擇,并與應用程序緊密聯(lián)系的一種覆蓋網(wǎng)絡——彈性覆蓋網(wǎng)絡(RON)。
3.1.1彈性覆蓋網(wǎng)絡介紹
彈性覆蓋網(wǎng)絡是一種分布式覆蓋網(wǎng)絡體系結(jié)構(gòu),分布于因特網(wǎng)上的RON結(jié)點可以僅用數(shù)秒的時間檢測到鏈路的失效和周期性的性能惡化,并快速恢復,而目前的因特網(wǎng)BGP協(xié)議則需數(shù)分鐘。RON結(jié)點自動監(jiān)測連接它們的下層因特網(wǎng)鏈路的質(zhì)量,使用收集到的信息并結(jié)合該應用程序?qū)δ囊宦窂揭蜃樱ㄈ缪舆t、分組丟失率、鏈路吞吐量等)更敏感來決定某一應用程序的分組是直接由因特網(wǎng)鏈路轉(zhuǎn)發(fā)還是經(jīng)由另一RON結(jié)點,這樣可以更加優(yōu)化應用程序的路由選擇。
3.1.2RON的功能實現(xiàn)
首先要明確一個概念,所謂“RON結(jié)點”,并不是特殊的路由器硬件,第2.2節(jié)已經(jīng)闡述覆蓋網(wǎng)絡的特點之一就是不對下層的因特網(wǎng)基礎(chǔ)設施進行改變,RON結(jié)點是分布在因特網(wǎng)上的一些有組織的主機,這些主機上運行專門的RON軟件,實現(xiàn)的功能在某種意義上與路由器相同,但應區(qū)別這兩者。
RON結(jié)點在現(xiàn)有因特網(wǎng)之上構(gòu)建一個虛擬的網(wǎng)絡,這個網(wǎng)絡的任意兩個結(jié)點之間都會維護一條由下層因特網(wǎng)鏈路構(gòu)成的路徑,稱為“虛鏈接”(virtuallink)。它們之間會定期或不定期通過發(fā)送探測包和監(jiān)測來了解當前的網(wǎng)絡狀態(tài)。比如,有一個N個結(jié)點構(gòu)成的RON系統(tǒng),每一個結(jié)點都會及時探測最新的到其余N-1個結(jié)點的虛鏈接的狀態(tài),這個狀態(tài)包括三個方面的內(nèi)容,延遲、分組丟失率和鏈路吞吐量。結(jié)點將得到的最新的虛鏈接的狀態(tài)信息保存在本地的一個性能數(shù)據(jù)庫中,并以此作為路由選擇的重要依據(jù)。
使用RON轉(zhuǎn)發(fā)數(shù)據(jù)的應用程序稱為“RON客戶”(RONClient),RON的主要設計目標就是為客戶程序提供更加可靠的路由機制。RON客戶通過一種叫做“管道”(conduit)的接口與RON結(jié)點進行交互,如圖1所示。通過管道接收分組的第一個結(jié)點被稱為“入點”(entrynode),相應地,分組經(jīng)過的最后一個結(jié)點稱為“出點”(exitnode)。
- 上一篇:淺析網(wǎng)絡交換存儲
- 下一篇:論國內(nèi)外財務報告舞弊典型案例