專利名稱:用于表征基于分組的網(wǎng)絡(luò)的端對端路徑的方法和設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)領(lǐng)域,特別是涉及一種用于評價基于分組網(wǎng)絡(luò)的端對端路徑的方法和設(shè)備。
背景技術(shù):
在基于分組的網(wǎng)絡(luò)中,經(jīng)常需要檢測網(wǎng)絡(luò)上兩個具體節(jié)點之間的通信。該檢測一般可以通過從多個節(jié)點中的第一節(jié)點請求其他節(jié)點環(huán)回(loop-back)該第一節(jié)點發(fā)送的檢測分組來進(jìn)行。所述第一節(jié)點基于收到的回來的檢測分組,從而不僅可以確定與其他節(jié)點通信,而且還可以確定分組的往返行程時間。
網(wǎng)絡(luò)之間的協(xié)議,例如ARPA網(wǎng)際協(xié)議(IP,Internet Protocol),也可提供使用環(huán)回檢測分組確定可達(dá)性和往返行程時間的功能。因此,在IP網(wǎng)絡(luò)中,網(wǎng)間控制報文協(xié)議(ICMP,Internet Control Message Protocol)允許控制消息和信息消息(包括回顯請求(echo request)消息和回顯答復(fù)(echo reply)消息)在IP數(shù)據(jù)報的數(shù)據(jù)部分中在不同主機(jī)的IP軟件和網(wǎng)關(guān)之間傳送。ICMP允許的其他消息包括時間戳請求消息和時間戳答復(fù)消息,這些消息使得可以在通行的兩個方向上進(jìn)行通行時間估算。某些計算機(jī)操作系統(tǒng)允許用戶使用名為“ping”的命令發(fā)送ICMP回顯請求,用戶能夠指定要確定往返行程時間的檢測分組的數(shù)量和大小。
還應(yīng)注意,在ARPA傳輸控制協(xié)議(TCP,Transmission ControlProtocol)中,不斷地進(jìn)行類似的測量作為傳輸控制進(jìn)程的一部分。更具體地說,測量分組傳輸與收到從終點節(jié)點回來的確認(rèn)之間的往返行程時間;該往返行程時間不斷地平均為平滑的往返行程時間估算值,然后使用該估算值來控制回傳超時參數(shù)(RTO,Retransmissions Time-out Parameter)。
美國專利第5,477,531號提供了用來檢測基于分組的網(wǎng)絡(luò)的方法和設(shè)備。這種方法檢測基于分組的網(wǎng)絡(luò)以確定該網(wǎng)絡(luò)上第一節(jié)點和第二節(jié)點之間的分組傳輸?shù)奶匦?,所述方法包括以下步驟在這些節(jié)點之間傳輸分組,在一個節(jié)點接收分組,以及使分組的傳輸和接收相關(guān)聯(lián)以獲得表示傳輸特性的相關(guān)數(shù)據(jù),其特征在于,這些分組作為序列傳輸,其中這些分組利用對于該序列變化的一個參數(shù)而使得相互之間具有預(yù)定關(guān)系。獲得的相關(guān)數(shù)據(jù)對這種預(yù)定關(guān)系是敏感的,使得能夠確定從單個分組的流通中不能觀測到的傳輸特性。
美國專利申請第2002/0080726號提供了用于確定網(wǎng)絡(luò)吞吐率(throughput rate)和數(shù)據(jù)流利用率的系統(tǒng)和方法。通過網(wǎng)絡(luò)選擇性地發(fā)送和接收多個網(wǎng)絡(luò)評估信號(或者說校驗用檢測分組)。響應(yīng)于這些評估信號,選擇性地確定和存儲網(wǎng)絡(luò)評估參數(shù)。響應(yīng)于這些參數(shù),排隊理論分析確定網(wǎng)絡(luò)的響應(yīng)時間和吞吐量特性,包括數(shù)據(jù)流的容量、利用率和性能。具體地說,這種方法使用不同大小的ICMP Echo分組的均勻脈沖串,這些脈沖串被發(fā)送到去往期望終點的網(wǎng)絡(luò)路徑上的各主機(jī)。隨后對ICMPEcho Reply響應(yīng)進(jìn)行分析,該分析對分組如何被操作并且經(jīng)歷網(wǎng)絡(luò)路徑進(jìn)行了一些假設(shè),具體地說,要求分組沒有丟失并且以與傳輸順序相同的順序到達(dá)。
上述美國專利和美國專利申請都傳輸ICMP分組來表征網(wǎng)絡(luò)路徑。處理這種類型的分組可能與其他協(xié)議不同,這是由于,例如ICMP速率限制、協(xié)議專用路由與阻塞、以及反分布式拒絕服務(wù)(DDOS,DistributedDenial of Service)措施。此外,尋址處于源與終點之間的中間主機(jī)的傳輸分組經(jīng)常采用與該終點的路徑相當(dāng)?shù)牧磉x路由,于是導(dǎo)致源-終點路徑的表征錯誤。另外,這些形式的評估技術(shù)對網(wǎng)絡(luò)路徑中的非對稱性敏感。
一種用于表征網(wǎng)絡(luò)的算法是分組對技術(shù),該技術(shù)旨在根據(jù)連續(xù)發(fā)送的兩個大小相同的探測分組之間的離差(dispersion)估算出網(wǎng)絡(luò)路徑的容量。例如,這種技術(shù)旨在估算沿網(wǎng)絡(luò)路徑的帶寬和瓶頸的存在。所述方法估算兩個分組之間的相對間隔并且對收集的這種指標(biāo)進(jìn)行統(tǒng)計分析。這種技術(shù)廣為人知,它源自于Robert Crovella和Mark Crovella所著的“Measuring Bottleneck Link Speed in Packet-Switched Networks”,Performance Evaluation,(“測量分組交換網(wǎng)絡(luò)中的瓶頸鏈接速率”,性能計算),第27-8卷,第297-318頁,1996年10月出版。然而,因為分組對離差技術(shù)的精度低,尤其是存在背景流量(cross traffic)時,因而它們受到了批評。
另一種能夠用于網(wǎng)絡(luò)分析的算法是基于分組列車(packet-train based)的算法。具體地,基于分組列車的工具關(guān)注分組列車內(nèi)的分組離差,具有減少了統(tǒng)計方差的優(yōu)點。此外,它們通過對網(wǎng)絡(luò)進(jìn)行加載并分析對該裝載的阻力確定背景流量?;诜纸M列車的算法測量每個車廂(其是所述列車的子組件,包括多個分組)的到達(dá)時間,而不測量各單個分組的到達(dá)時間(在利用分組對離差的例子中是要計算的)?;诜纸M列車的算法能夠調(diào)整車廂的大小以適應(yīng)與高速網(wǎng)絡(luò)相關(guān)聯(lián)的系統(tǒng)時間分辨率或者定時器分辨率,而基于分組對離差的算法通常依賴于它們能夠以怎樣的精度測量在網(wǎng)絡(luò)上發(fā)送的單個分組的時序。美國專利申請第2002/0080726描述了一種基于分組列車的方法。
第三種截然不同的算法采用一種被稱為隨尾(tailgating)的方法,其中通常在大的分組之后立即發(fā)送小的分組,這兩個分組作為一對發(fā)送。已知由于較大的分組在每一個轉(zhuǎn)發(fā)節(jié)點上需要較長的串行化時間,因而大分組通常限制隨后的較小分組的傳輸。在沿到達(dá)終點的網(wǎng)絡(luò)路徑的一些點上,去除較大分組(通常使用生存時間(TTL,Time To Live)終止的機(jī)制),而較小的分組將單獨完成其旅程。這種方法應(yīng)用在現(xiàn)有技術(shù)中,例如Kevin Lai和Mary Baker在Measuring Link Bandwidths Using ADeterministic Model Of Packet Delay,SIGCOMM(使用確定的分組延遲模型計算鏈路帶寬,美國計算機(jī)協(xié)會數(shù)據(jù)通信專業(yè)組),283-294,2000中研究與公開的,并且用被稱為“網(wǎng)絡(luò)計時器(nettimer)”的原型手段表述。這種技術(shù)的優(yōu)點是通常消耗較小的網(wǎng)絡(luò)帶寬,不依賴于與處理ICMP分組的路由器的行為一致性,并且不依賴于確認(rèn)的及時遞送。然而,據(jù)知這種技術(shù)具有較低的精度。
分組列車與分組對離差衍生出的混合方法在Attila Pasztor和DarrylVeitch所著的Active Probing using Packet Quartets,Proceeding of theInternet Measurement Workshop 2002 (使用四重分組的活動探測,Internet計量工作室學(xué)報2002),ACM SIGCOMM中公開。這種混合方法也提供了一種手段用于IP網(wǎng)絡(luò)的采樣。在該方法中,TTL終止用來終止“四重分組(packet quartet)”序列中的分組,從而提供了一種獲得與中間路徑跳(hop)相關(guān)的統(tǒng)計的方法。這種方法使用了兩對隨尾分組,使得可以從較大分組終止之后剩余的兩個分組之間的分組對離差中獲益。為了產(chǎn)生這些帶寬特性,獲得最大帶寬和延遲變化分析技術(shù)的分析焦點明確地優(yōu)先集中在延遲最小值方案上。因此,為了確定可適用的分析,該技術(shù)分析了特定行為的延遲分布,從而潛在地導(dǎo)致需要多種分析方法。這種估算技術(shù)的缺點是高速測量被認(rèn)為是一個問題。
因此,需要用來表征IP網(wǎng)絡(luò)端對端路徑的新的方法和設(shè)備,并具有克服與現(xiàn)有技術(shù)有關(guān)的問題的能力。
提供上述背景信息的目的是給出申請人認(rèn)為的、可能與本發(fā)明有關(guān)的已知信息。不應(yīng)認(rèn)為,也不應(yīng)解釋為,承認(rèn)前述的任何信息構(gòu)成了相對于本發(fā)明的現(xiàn)有技術(shù)。
發(fā)明內(nèi)容
本發(fā)明的目的是提供用于表征基于分組的網(wǎng)絡(luò)的端對端路徑的方法和設(shè)備。依據(jù)本發(fā)明的一方面,提供了一種用于表征基于分組的網(wǎng)絡(luò)的端對端路徑的方法,所述方法包括如下步驟生成一個或更多個有序分組組,每一個有序分組組包括兩個或更多個標(biāo)記分組和一個或更多個載荷分組,所有所述分組都設(shè)置成沿由源主機(jī)和終點主機(jī)限定的共用端對端路徑傳輸,其中所述一個或更多個載荷分組設(shè)置成經(jīng)過所述端對端路徑到預(yù)定節(jié)點,所述預(yù)定節(jié)點為沿所述端對端路徑的任何節(jié)點;從所述源主機(jī)沿所述共用端對端路徑傳輸所述一個或更多個有序分組組;收集與所述一個或更多個有序分組組的傳輸有關(guān)的數(shù)據(jù);以及分析所述數(shù)據(jù),從而顯現(xiàn)所述端對端路徑的特性。
依據(jù)本發(fā)明的另一方面,提供了一種用于表征基于分組的網(wǎng)絡(luò)的端對端路徑的設(shè)備,所述設(shè)備包括用于生成一個或更多個有序分組組的裝置,每一個有序分組組包括兩個或更多個標(biāo)記分組和一個或更多個載荷分組,所有所述分組都設(shè)置成沿由源主機(jī)和終點主機(jī)限定的共用端對端路徑傳輸,其中所述一個或更多個載荷分組設(shè)置成經(jīng)過所述端對端路徑到預(yù)定節(jié)點,所述預(yù)定節(jié)點為沿所述端對端路徑的任何節(jié)點;用于從所述源主機(jī)沿所述共用端對端路徑傳輸所述一個或更多個有序分組組的裝置;用于收集與所述一個或更多個有序分組組的傳輸有關(guān)的數(shù)據(jù)的裝置;以及用于分析所述數(shù)據(jù)從而顯現(xiàn)所述端對端路徑的特性的裝置。
依據(jù)本發(fā)明的又一方面,提供了一種計算機(jī)程序產(chǎn)品,包括計算機(jī)可讀介質(zhì),一種計算機(jī)程序產(chǎn)品,包括計算機(jī)可讀介質(zhì),所述計算機(jī)可讀介質(zhì)上記錄有計算機(jī)程序,所述計算機(jī)程序是用來執(zhí)行一種用于表征基于分組的網(wǎng)絡(luò)的端對端路徑的方法,所述方法包括如下步驟生成一個或更多個有序分組組,每一個有序分組組包括兩個或更多個標(biāo)記分組和一個或更多個載荷分組,所有所述分組都設(shè)置成沿由源主機(jī)和終點主機(jī)限定的共用端對端路徑傳輸,其中所述一個或更多個載荷分組設(shè)置成經(jīng)過所述端對端路徑到預(yù)定節(jié)點,所述預(yù)定節(jié)點為沿所述端對端路徑的任何節(jié)點;從所述源主機(jī)沿所述共用端對端路徑傳輸所述一個或更多個有序分組組;收集與所述一個或更多個有序分組組的傳輸有關(guān)的數(shù)據(jù);以及分析所述數(shù)據(jù),從而顯現(xiàn)所述端對端路徑的特性。
圖1為起點與終點之間的網(wǎng)絡(luò)路徑的示意圖,起點與終點之間包括許多第3層設(shè)備,例如路由器或者網(wǎng)關(guān)。
圖2為根據(jù)本發(fā)明一個實施例所述的限定組件的網(wǎng)絡(luò)路徑的示意圖。
圖3為根據(jù)本發(fā)明一個實施例所述的有序分組組的示意圖。
圖4為根據(jù)本發(fā)明另一個實施例所述的有序分組組的示意圖。
圖5為根據(jù)本發(fā)明一個實施例所述的有序分組組沿網(wǎng)絡(luò)路徑從源主機(jī)傳輸?shù)浇K點主機(jī)并且信息傳送到接收主機(jī)的示意圖。
圖6為Van Jacobson圖表,表示如何按照分組通過的段的容量變化改變分組的時間分布。
圖7為Van Jacobson圖表,表示標(biāo)記分組的間隔如何反映沿網(wǎng)絡(luò)路徑直至并包括載荷分組終止處的節(jié)點的瓶頸或阻力的影響。
圖8圖示了標(biāo)記分組和載荷分組有序組,表示了根據(jù)本發(fā)明一個實施例所述的每一個分組識別器。
圖9為示意圖,顯示了有序分組組中第四分組的往返行程時間(RTT)與行程總時間(TTT)之間的差。
圖10為示意圖,顯示了計算到跳h的IP網(wǎng)絡(luò)的單向比特率需要的數(shù)據(jù),該數(shù)據(jù)具有相關(guān)載荷和標(biāo)記以及它們的傳輸和接收計時。
圖11為示例柱狀圖,顯示了使用本發(fā)明的采樣步驟確定的往返行程時間(RTT),其中的變化取決于被監(jiān)測的分組所經(jīng)受的背景流量。該示例柱狀圖包括該示例的RTT的最小值、平均值與標(biāo)準(zhǔn)偏差的近似識別。
圖12a為當(dāng)沒有背景流量時在網(wǎng)絡(luò)的特定區(qū)域中的最大可用比特率的示例的示意圖。
圖12b為當(dāng)存在背景流量時在相同網(wǎng)絡(luò)區(qū)域中的可用傳輸比特率的示例的示意圖。
具體實施例方式
定義術(shù)語“源主機(jī)(source host)”用來定義分組傳輸始發(fā)的網(wǎng)絡(luò)位置或節(jié)點,以表征網(wǎng)絡(luò)路徑的起點。
術(shù)語“終點主機(jī)(destination host)”用來定義這樣的網(wǎng)絡(luò)位置或節(jié)點,該網(wǎng)絡(luò)位置或節(jié)點相對于特定的源主機(jī)定義了端對端路徑。
術(shù)語“目標(biāo)主機(jī)(target host)”用來定義將收集與其有關(guān)的特征的網(wǎng)絡(luò)位置或節(jié)點。目標(biāo)主機(jī)可以處于源主機(jī)與終點主機(jī)之間,并且任選地可以是終點主機(jī)。
術(shù)語“接收主機(jī)(sink host)”用來定義在該處收集的有關(guān)于所傳輸?shù)姆纸M的狀態(tài)的信息的網(wǎng)絡(luò)位置或節(jié)點。該接收主機(jī)可以是網(wǎng)絡(luò)中的任何節(jié)點,包括源主機(jī)、終點主機(jī)、目標(biāo)主機(jī)或者不在該將被表征的路徑上的節(jié)點。
術(shù)語“分組(packet)”用來定義在基于分組的網(wǎng)絡(luò)上傳輸?shù)男畔?。取決于許多標(biāo)準(zhǔn)(包括例如網(wǎng)絡(luò)容量和大小實用性),分組的大小可以有很大的變化。分組為在互聯(lián)網(wǎng)或者任何其他分組交換網(wǎng)絡(luò)上起點與終點之間路由的單位數(shù)據(jù)。例如,當(dāng)一個文件或者其他類型的信息在分組交換網(wǎng)絡(luò)上傳輸時,該文件可以被分解成“數(shù)據(jù)塊”或者分組,該“數(shù)據(jù)塊”或者分組的大小對于在網(wǎng)絡(luò)中路由是有效率的。
術(shù)語“載荷分組(load packet)”和“載荷(load)”可互換地用來定義在網(wǎng)絡(luò)上傳輸?shù)姆纸M,所述分組提供了對網(wǎng)絡(luò)加載以便產(chǎn)生某種響應(yīng)的手段。載荷分組可以在沿通向指定終點主機(jī)的路徑的預(yù)定數(shù)目的節(jié)點阻礙(node traverse)或“跳”之后終止。
術(shù)語“標(biāo)記分組(marker packets)”和“標(biāo)記(markers)”可互換地用來定義在網(wǎng)絡(luò)上傳輸?shù)姆纸M,用于標(biāo)志或標(biāo)記與其一起傳輸?shù)妮d荷。標(biāo)記分組用來標(biāo)記網(wǎng)絡(luò)對與其關(guān)聯(lián)的載荷的傳輸?shù)捻憫?yīng)。標(biāo)記分組對預(yù)定的終點主機(jī)進(jìn)行尋址。標(biāo)記分組可以到達(dá)終點主機(jī),或者任選地,如果最初與之關(guān)聯(lián)的載荷分組已經(jīng)在之前終止,那么標(biāo)記分組可在達(dá)到預(yù)定的跳數(shù)之后終止。
術(shù)語“第三層(layer 3)”用來定義提供路由信息、尋址以及使信息能夠在IP網(wǎng)絡(luò)上傳輸?shù)钠渌嚓P(guān)服務(wù)的通信模型的網(wǎng)絡(luò)層。例如,在普遍參考的稱為開放式系統(tǒng)互聯(lián)(OSI,Open Systems Interconnection)的多層通信模型中,第三層是例如與獲知網(wǎng)絡(luò)中的鄰近節(jié)點的地址、選擇路由、服務(wù)質(zhì)量、以及識別輸入消息并將其從本地主機(jī)域轉(zhuǎn)發(fā)到傳輸層(第四層)相關(guān)的,其中傳輸層確保了消息的安全到達(dá)并且提供了可選的錯誤檢查機(jī)制和數(shù)據(jù)流控制。雖然應(yīng)注意第三層可能專用于具體的協(xié)議,但假定還可以用第三層的定義來定義在任何另外的基于分組的通信模型中的可比操作層。
術(shù)語“第三層設(shè)備(layer 3 device)”用來定義在被稱為網(wǎng)絡(luò)層的基于分組的通信模型的第三層上運行的設(shè)備。第三層設(shè)備例如可以包括路由器,或者本領(lǐng)域所屬技術(shù)人員容易理解的其他與網(wǎng)絡(luò)層相適應(yīng)的設(shè)備。
術(shù)語“段(segment)”用來定義在第三層上作出響應(yīng)的鄰近主機(jī)之間的網(wǎng)絡(luò)路徑部分,其中所述主機(jī)可以是源主機(jī)、目標(biāo)主機(jī)、接收主機(jī)或者終點主機(jī)。段進(jìn)一步包括一臺能夠當(dāng)作段的開始或者末尾的主機(jī)。
短語“高速網(wǎng)絡(luò)(high seed network)”用來定義一種能夠以超過10/100Mbps的速率運行的分組交換網(wǎng)絡(luò),或者更一般地說,能夠以超過目前普通局域網(wǎng)絡(luò)(LAN)的速率運行的分組交換網(wǎng)絡(luò)。
除另有定義外,這里使用的所有科技術(shù)語都具有與本發(fā)明所屬的技術(shù)領(lǐng)域的普通技術(shù)人員一般理解相同的含義。
本發(fā)明提供了一種裝置,用于在獨立地操作終端主機(jī)時,實時地、非侵入式地表征分組交換網(wǎng)絡(luò)的端對端路徑以及端與端之間的所有段,并且不需要為操作而遠(yuǎn)距離部署代理。本發(fā)明可以被有效地描述為一種不用滿載網(wǎng)絡(luò)容量或測量返回路徑的單端技術(shù)或有效的單向測量技術(shù)。它可以在一定條件范圍內(nèi)靈活地運行,或者在存在速率限制和反DDOS(分布式拒絕服務(wù))機(jī)制時運行。本發(fā)明還可以表征網(wǎng)絡(luò)路徑在非ICMP(網(wǎng)間控制報文協(xié)議)協(xié)議(比如UDP(用戶數(shù)據(jù)報協(xié)議)和TCP(傳輸控制協(xié)議)),以及協(xié)議/應(yīng)用專用行為識別方面的效果,例如傳輸成形和速率限制。本發(fā)明還是可以升級的,使其能夠表征高速網(wǎng)絡(luò)的傳輸路徑。
本發(fā)明提供了一種用來表征源主機(jī)與終點主機(jī)之間的路徑的方法和設(shè)備,包括表征源主機(jī)與終點主機(jī)之間網(wǎng)絡(luò)路徑的每一個響應(yīng)段。本發(fā)明包括第一階段數(shù)據(jù)采集,其中通過發(fā)送和接收大小、數(shù)量和協(xié)議可能改變的專用有序分組組實現(xiàn)網(wǎng)絡(luò)路徑的采樣,其中所有分組都從源主機(jī)發(fā)出并且都尋址終點主機(jī)。這些有序分組組包括有策略地排列的標(biāo)記分組和載荷分組,其中所述載荷分組通常在源主機(jī)與終點主機(jī)之間的預(yù)定節(jié)點處終止。在特定有序分組組的載荷分組終止之后,與之相關(guān)聯(lián)的標(biāo)記分組提供了捕捉與直到這些載荷分組終止的網(wǎng)絡(luò)特性有關(guān)的信息的手段。與這些有序分組組和網(wǎng)絡(luò)的相互作用有關(guān)的信息在接收主機(jī)處被收集,該接收主機(jī)可以是也可以不是沿源主機(jī)與終點主機(jī)之間的網(wǎng)絡(luò)路徑的節(jié)點。對所收集信息的隨后分析能夠表征沿源主機(jī)與終點主機(jī)之間網(wǎng)絡(luò)路徑的每一段。通過在有序分組組的特征與所收集的信息之間進(jìn)行相關(guān),本發(fā)明可以并入對所收集信息的進(jìn)一步分析,從而使能了這樣的手段,該手段在采樣過程中對所使用的有序分組組的特性進(jìn)行調(diào)節(jié),該調(diào)節(jié)可以使采樣和對網(wǎng)絡(luò)路徑的表征最佳化。本發(fā)明提供了一種利用多種協(xié)議的手段,從而提供了一種手段,用于選擇對特定協(xié)議的網(wǎng)絡(luò)響應(yīng),同時提供了一種用于跟隨有序分組組并評估網(wǎng)絡(luò)對有序分組組的響應(yīng)的手段。
參照圖1,圖1示出了起點10與終點30之間的可能網(wǎng)絡(luò)路徑,其中該路徑可以通過多個第三層設(shè)備(例如路由器20)分成許多段。針對本發(fā)明,圖2示出了源主機(jī)50與終點主機(jī)60之間的路徑,其中在源主機(jī)與終點主機(jī)之間有多個第三層設(shè)備或者目標(biāo)主機(jī)70。本發(fā)明還并入了接收主機(jī)80,其中接收主機(jī)可以是沿網(wǎng)絡(luò)路徑上的任何一臺主機(jī)或者可以是所評價的路徑之外的節(jié)點。根據(jù)本發(fā)明,有序分組組開始于源主機(jī)50并尋址終點主機(jī)60。這些有序分組組的配置和它們與網(wǎng)絡(luò)的相互作用使得能夠沿著從源主機(jī)到終點主機(jī)的網(wǎng)絡(luò)路徑,確定有關(guān)于每一臺目標(biāo)主機(jī)70的特性。與采樣會話期間有序分組組的傳輸有關(guān)的信息在接收主機(jī)80處接收,用于分析。
與網(wǎng)絡(luò)連接的是一個或更多個用來沿路徑發(fā)送有序分組組并在它們已經(jīng)經(jīng)過該路徑后接收該有序分組組或?qū)ζ漤憫?yīng)的裝置。在一個實施例中,有序分組組由分組定序器始發(fā),沿著路徑傳輸?shù)椒瓷潼c,然后再回傳至分組定序器,并且在這個實施例中,分組定序器可以位于源主機(jī)。在另選實施例中,分組定序器位于源主機(jī),用來收集傳輸檢測數(shù)據(jù),而另一個分組定序器可以位于接收主機(jī),用來收集與有序分組組或?qū)ζ漤憫?yīng)的接收有關(guān)的信息。分組定序器能夠記錄有關(guān)于發(fā)送分組的時間的信息和收到返回的分組時間的信息。分組定序器還能夠收集例如有關(guān)于傳輸?shù)姆纸M類型和收到的分組類型的信息。采樣階段所收集的全部信息都看作是檢測數(shù)據(jù)。
另外,與網(wǎng)絡(luò)連接的還有分析系統(tǒng),該分析系統(tǒng)用來接收檢測數(shù)據(jù)并執(zhí)行期望的分析,如果需要,還包括采樣分析的調(diào)整和修改。該分析系統(tǒng)可以包括經(jīng)編程的計算機(jī),也可以以硬件配置,或者是本領(lǐng)域所屬技術(shù)人員容易理解的其他計算系統(tǒng)的形式。分析系統(tǒng)可以與分組定序器寄存于相同的設(shè)備,或者位于相同的位置,或者任選地,在物理上與分組定序器分立。例如,分析系統(tǒng)和分組定序器都可以位于源主機(jī),其中該源主機(jī)還可以起到接收主機(jī)的作用。分組定序器和分析系統(tǒng)的位置由選擇的源主機(jī)和接收主機(jī)決定。
采樣階段采樣技術(shù)結(jié)合了“載荷和標(biāo)記”的使用,其中某些分組起到“加載”網(wǎng)絡(luò)以產(chǎn)生某一響應(yīng)的作用,而其他分組起到“標(biāo)記”該響應(yīng)并返回接收主機(jī)用來分析的作用??赡苡卸喾N載荷和標(biāo)記的圖案(pattern)配置,其中改變配置可以針對特定的特性來對網(wǎng)絡(luò)路徑進(jìn)行采樣。如圖3所示,最普通的配置包括散布有標(biāo)記分組110的載荷分組100的有序組。雖然圖3示出了相鄰標(biāo)記之間載荷的數(shù)量是相等的,但這不應(yīng)當(dāng)認(rèn)為是一種限制,而僅僅是有序分組組的較普通配置的一個實施例。某些特性可以使載荷與標(biāo)記相區(qū)分,比如報頭值、協(xié)議和大小,其中標(biāo)記的數(shù)量和位置取決于具體實現(xiàn)。所述標(biāo)記使得可以跟蹤整個有序分組組的位置和行為,而不會導(dǎo)致需要系統(tǒng)開銷和需要跟蹤每一個所傳輸?shù)姆纸M的缺點。此外,可以注意到,在很多實例中,引起來自網(wǎng)絡(luò)路徑的響應(yīng)和觀測該響應(yīng)都是不能實現(xiàn)的。例如,如果沿網(wǎng)絡(luò)路徑發(fā)送的所有分組都為ICMPEcho配置,那么相對于其他協(xié)議,沿網(wǎng)絡(luò)路徑的速率限制機(jī)制將可能改變該路徑的響應(yīng)。然而,發(fā)送其他協(xié)議,可能難于觀測期望的響應(yīng)。因此,為了產(chǎn)生所需響應(yīng),通過在所需協(xié)議的有序分組組內(nèi)嵌入產(chǎn)生可容易地觀測響應(yīng)的分組,可以在期望條件下觀測網(wǎng)絡(luò)路徑的功能,然后表征其功能性。
參照圖4,在本發(fā)明的一個實施例中,有序分組組的第一種配置包括跟隨著一系列載荷分組110的第一標(biāo)記分組100A和最后的第二標(biāo)記分組100B。在該配置中,在前的標(biāo)記分組和隨后的標(biāo)記分組提供了一種標(biāo)記網(wǎng)絡(luò)路徑對其間的載荷分組的響應(yīng)的手段。
在本發(fā)明的一個實施例中,標(biāo)記分組與載荷分組的大小相同,但是,例如為了確定在期望的采樣會話期間使用的標(biāo)記大小的最佳選擇,可以調(diào)整該配置。標(biāo)記分組通常為ICMP Echo分組,然而,它們同樣可以使用其他協(xié)議(比如UDP或者TCP)來定義,其中可以基于網(wǎng)絡(luò)路徑的實現(xiàn)和期望的特性決定協(xié)議的選擇。標(biāo)記通常尋址終點主機(jī),然而也可以選擇沿網(wǎng)絡(luò)路徑的其他節(jié)點作為標(biāo)記的期望終點。此外,標(biāo)記還可以在終點之前的某一節(jié)點處終止,然而在這種情況下中,載荷分組在前一節(jié)點終止。例如,這種行為可能引起來自標(biāo)記分組終止處的節(jié)點的一些響應(yīng)。另外,為了識別用于接收有關(guān)于該有序分組組的傳輸?shù)男畔?例如ICMPEcho答復(fù)分組)的期望位置,還可以對標(biāo)記進(jìn)行配置。在本發(fā)明中,該期望位置為接收主機(jī),其中接收主機(jī)可以是沿正被表征的網(wǎng)絡(luò)路徑的節(jié)點或者在該網(wǎng)絡(luò)路徑的外部。
在本發(fā)明的一個實施例中,載荷分組的大小相同并且通常被創(chuàng)建為從源主機(jī)到鄰近目標(biāo)主機(jī)的局部路徑或者段所允許的最大大小MTU(最大傳輸單位)??墒褂萌魏螀f(xié)議(例如ICMP,UDP或者TCP)配置該載荷,然而在本發(fā)明的一個實施例中,使用UDP配置載荷。在載荷的配置過程中,它們尋址終點主機(jī),然而在某種條件下,沿路徑的其他節(jié)點也可能選作該參數(shù)。另外,為了使載荷可以在沿正在表征的網(wǎng)絡(luò)路徑的特定第三層節(jié)點或者目標(biāo)主機(jī)處終止,載荷在它們的IP報頭配置有賦予特定數(shù)值的TTL(存活時間)值。例如,配置有TTL=1的載荷將終止在第一跳或者第三層設(shè)備阻礙(device traverse),而配置有TTL=2的載荷分組將終止在第二跳。一旦載荷在預(yù)定跳處終止,有關(guān)該載荷與直至該跳的網(wǎng)絡(luò)路徑的相互作用的信息將隨后傳送到接收主機(jī)。非常重要并需要注意的是,兩個特定標(biāo)記分組之間的一個或更多個載荷分組配置有相同的TTL數(shù)值。
在本發(fā)明的一個實施例中,采樣階段開始于對沿通向所選的終點主機(jī)的網(wǎng)絡(luò)路徑上的各第三層節(jié)點進(jìn)行識別。該識別過程可以使用例如第三層跟蹤路由機(jī)制,以確定所識別的終點的可達(dá)性和其間節(jié)點的數(shù)量。隨后,包含載荷和標(biāo)記的一系列分組發(fā)送到終點主機(jī),載荷上設(shè)置了TTLExpiry(TTL終止),以使它們在不同的目標(biāo)主機(jī)上終止。在一個實施例中,載荷可以包括任何優(yōu)選協(xié)議(例如UDP)的分組,并且標(biāo)記可以包括ICMPEcho分組。終止載荷能夠致使發(fā)生終止處的目標(biāo)主機(jī)生成ICMP TTLExpiry消息,然后將這些消息轉(zhuǎn)發(fā)到預(yù)先指定的接收主機(jī)。例如,如果使用ICMP生成這些標(biāo)記,則這些標(biāo)記將繼續(xù)到達(dá)終點主機(jī),并導(dǎo)致ICMPEcho答復(fù)分組回送到接收主機(jī)。任選地,所述標(biāo)記可能在載荷終止的下一個節(jié)點處終止,然后有關(guān)標(biāo)記的TTL Expiry消息回送到接收主機(jī)。通過對與有序分組組的傳輸開始時間相關(guān)的信息、以及與接收主機(jī)所得消息和答復(fù)的接收時間相關(guān)的信息進(jìn)行收集和分析,可以評估出源主機(jī)與終點主機(jī)之間網(wǎng)絡(luò)路徑的每一段的特性。在一個實施例中,源主機(jī)還可以是接收主機(jī),而在另選實施例中,終點主機(jī)是接收主機(jī)。如果不是這種情況,標(biāo)記和載荷可以被設(shè)定以確定一個用于消息和答復(fù)分組傳輸?shù)牧硗獾慕邮罩鳈C(jī)。在這種情況下,考慮基于該另外的接收主機(jī)位置的消息和答復(fù)分組的傳輸時間的時間增加和減小,還需要例如使用全球定位系統(tǒng)(GPS,Global Positioning System)使傳送和接收定時同步,以獲得等同的精度。
在另一實施例中,為了從終點主機(jī)生成錯誤響應(yīng),通過以其他協(xié)議對標(biāo)記進(jìn)行編排可以實現(xiàn)用于獲得對標(biāo)記分組的響應(yīng)的等同機(jī)制。例如,標(biāo)記可以使用UDP協(xié)議編排并被設(shè)置為使用終點主機(jī)上的非活動端口。該UDP標(biāo)記分組可以生成ICMP Port Unreachable(ICMP端口不可達(dá))響應(yīng)。然而,在任何實施例中,都應(yīng)當(dāng)注意,對載荷分組的協(xié)議的選擇獨立于對標(biāo)記分組的協(xié)議的選擇。
圖5示出了根據(jù)本發(fā)明生成的有序分組組的傳輸?shù)氖纠?。有序分組組150在源主機(jī)50處創(chuàng)建,并且尋址終點主機(jī)60,其中載荷分組設(shè)置為TTL等于2,而標(biāo)記分組位于載荷分組的前后。該有序分組組穿過第一目標(biāo)主機(jī)70A(在該處,分組的TTL減量),然后沿著第二段到達(dá)第二目標(biāo)主機(jī),在這里載荷分組終止,并且有關(guān)它們沿網(wǎng)絡(luò)路徑的傳輸?shù)男畔?70被發(fā)送到用于收集并繼而進(jìn)行分析的預(yù)定接收主機(jī)80。作為示例,該信息可以是來自第二個目標(biāo)主機(jī)70B的ICMP TTL Expiry消息的形式。與初始發(fā)送的有序分組組相關(guān)聯(lián)的標(biāo)記分組繼續(xù)沿網(wǎng)絡(luò)路徑到達(dá)終點主機(jī)60,在這里它們被反射到用于收集并繼而進(jìn)行分析的預(yù)定接收主機(jī)80。作為示例,該信息可以以ICMP Echo答復(fù)分組的形式返回到起點的主機(jī)。在該示例中,這些標(biāo)記分組提供與有序分組組和網(wǎng)絡(luò)之間直至并且包括第二個目標(biāo)主機(jī)70B的相互作用有關(guān)的信息,第三目標(biāo)主機(jī)70C可以不影響返回信息的計時與間隔測量,因為該目標(biāo)主機(jī)不會導(dǎo)致兩個標(biāo)記分組之間間隔的變化。在載荷分組終止之后,如果這些標(biāo)記分組中的一個在網(wǎng)絡(luò)內(nèi)經(jīng)歷了背景流量,而其他標(biāo)記分組保持原樣,那么標(biāo)記分組之間的間隔可能改變。
隨著載荷分組通過網(wǎng)絡(luò)路徑,它們受到所經(jīng)過或者穿過的網(wǎng)絡(luò)設(shè)備以及與網(wǎng)絡(luò)相關(guān)的其他方面的影響。例如,網(wǎng)絡(luò)路徑中的帶寬收縮、反向通信以及各種變化能夠干擾載荷,并因而干擾與之關(guān)聯(lián)的標(biāo)記。例如,針對載荷數(shù)、分組大小、往返行程時間、行程總時間、分組丟失、間隔以及排序,相對于來自源主機(jī)的原始分組,測量TTL Expiry分組和EchoReply分組返回接收主機(jī)的定時分布。該數(shù)據(jù)能夠提供一種評價上述這些方面的效果和其他網(wǎng)絡(luò)特性的手段。
圖6示出了低容量段對之前沿較高容量段傳輸?shù)臉?biāo)記分組與載荷分組的間隔的影響。該影響以Van Jacobson圖的形式表述。分組之間的間隔可以在路徑上出現(xiàn)帶寬收縮之處引入。如圖6所示,有序分組組在到達(dá)低容量段210之前的高容量段200內(nèi)間隔緊密。一旦到達(dá)低容量區(qū)域,分組傳輸速率就會降低,從而致使相鄰分組之間間隔增加。一旦到達(dá)隨后的高容量段220,該分組通常不能減小在穿過低容量段過程中產(chǎn)生的間隔,因此分組之間的間隔表示了網(wǎng)絡(luò)路徑兩個不同段的傳輸速度之間的相互關(guān)系。然而,在沿網(wǎng)絡(luò)經(jīng)歷了背景流量的情況下,分組之間的間隔可能改變,其中,如果這種因素僅影響了有序分組組中的一些分組而不是全部分組,那么該因素可能減小這些分組之間的間隔,其中背景流量可以導(dǎo)致受影響分組的延遲增加??梢詸z測背景流量的存在及其對分組的影響,使得可以將受到背景流量影響的分組與沒有遇到背景流量的分組相區(qū)分。
圖7示出了載荷分組穿過低容量段210之后終止后的標(biāo)記110的可感知間隔,以及與終止有關(guān)的消息170的產(chǎn)生。以這種方式,標(biāo)記110之間的間隔能夠表示例如沿到終點主機(jī)的網(wǎng)絡(luò)路徑直至并包括與有序分組組關(guān)聯(lián)的載荷分組終止處的節(jié)點的瓶頸的影響。
如果載荷分組終止處的目標(biāo)主機(jī)為瓶頸或者在其后,那么從載荷所終止的點開始,標(biāo)記分組可保持其間的間隔,同時繼續(xù)到達(dá)終點主機(jī)。在某種情況下,標(biāo)記分組可以使到達(dá)終點主機(jī)的行程均衡而不受任何其他現(xiàn)象(例如隨后的瓶頸和背景流量)的影響。從終點主機(jī)反射回來的標(biāo)記分組同樣可以使到達(dá)接收主機(jī)的行程不受其他現(xiàn)象的影響。在標(biāo)記沒有遇到其他可感知的影響的情況下,標(biāo)記答復(fù)能夠以代表載荷終止處的節(jié)點的分組間間隔到達(dá)接收主機(jī),從而提供一種表征網(wǎng)絡(luò)路徑段的手段。在標(biāo)記分組的間隔足夠大的情況中,載荷分組終止后穿過的低容量段不能影響標(biāo)記分組的間隔。在這種情況中,第一標(biāo)記分組在低容量段傳輸速度的減小不能導(dǎo)致第二標(biāo)記分組的進(jìn)一步延遲,因而標(biāo)記分組之間的間隔在載荷分組終止之后能夠保持恒定。標(biāo)記分組之間的間隔通常不會減小,然而,如果例如背景流量與其中一個標(biāo)記分組相互作用而不與另一個作用,那么標(biāo)記分組之間的間隔可能發(fā)生減小。
作為示例,在標(biāo)記答復(fù)的分布中,由于在隊列中彼此相遇而進(jìn)行通信競爭并被延遲了的標(biāo)記與標(biāo)記答復(fù),或者已經(jīng)丟棄的標(biāo)記與標(biāo)記答復(fù)可以與那些已返回的、沒有受到網(wǎng)絡(luò)路徑進(jìn)一步影響的標(biāo)記答復(fù)相隔離。在一個實施例中,當(dāng)收到了與終止的載荷有關(guān)的所有答復(fù),并且標(biāo)記處于它們在原始傳輸中的順序時,將基于具有最小行程總時間(TTT)的標(biāo)記,來選擇用于最大比特率分析的來自網(wǎng)絡(luò)的響應(yīng)。其他分析可能具有其他的數(shù)據(jù)選擇要求。為了顯示有關(guān)網(wǎng)絡(luò)路徑的更寬范圍的特性,可以維持并分析針對載荷和標(biāo)記的答復(fù)分組的分布。這些特性可以基于比如分組大小、分組計數(shù)、協(xié)議和TTL等參數(shù),這些參數(shù)在有序分組組初始傳輸時已經(jīng)設(shè)定。通過對有關(guān)初始傳輸?shù)臉?biāo)記答復(fù)的分布、有關(guān)傳輸?shù)男畔⒁约坝嘘P(guān)載荷的終止和終止消息接收的分析,從源主機(jī)到預(yù)定終點主機(jī)之間的端對端網(wǎng)絡(luò)路徑可以逐“跳”或者逐段地表征。該網(wǎng)絡(luò)路徑的特性包括這樣的指標(biāo),該指標(biāo)包括單向最大比特率、單向傳輸延遲、單向延遲變量和單向可用比特率。
根據(jù)以上所述,清楚了基于分組的網(wǎng)絡(luò)的速率容量不會影響本發(fā)明采樣階段收集用于隨后分析的相關(guān)信息的能力,從而使得即使對高速網(wǎng)絡(luò)也能表征整個網(wǎng)絡(luò)路徑。一個典型的限制因素是有序分組組可以安全地放置在網(wǎng)絡(luò)路徑上的精度,其中所述因素取決于源主機(jī)的網(wǎng)絡(luò)接口卡(NIC,Network Interface Card)。為了提供期望的特性水平,必須能夠?qū)IC進(jìn)行充分控制,以便收集的有關(guān)響應(yīng)的傳輸和接收的時間的數(shù)據(jù)具有足夠的精度。
實現(xiàn)表征的分析階段可以根據(jù)預(yù)定的一系列有關(guān)于網(wǎng)絡(luò)路徑能力和以所需方式在網(wǎng)絡(luò)上布置所需分組的能力的假設(shè),來限定實現(xiàn)表征的分析階段。因此對于這種分析,可以假定存在一種用于分組制備和傳輸?shù)臋C(jī)制,能夠降低操作系統(tǒng)和其他限制進(jìn)程對傳輸速率的影響,從而作為鄰近系列的一部分被發(fā)送的分組在時間上分開得最小。因此,來自源主機(jī)的有序分組組的傳輸速率主要由源主機(jī)的NIC的最大傳輸容量限制。該參數(shù)例如由第二層規(guī)格(例如對于高速以太網(wǎng)為100Mbps)以及可能存在于IP網(wǎng)絡(luò)的任何第三層影響來限定。
盡管下面執(zhí)行分析的程序采用了傳送特定的有序分組組,但是本領(lǐng)域所屬技術(shù)人員容易理解如何使用另選設(shè)置的有序分組組擴(kuò)展所提供的步驟順序來確定所需的指標(biāo),因而同樣被認(rèn)為在本發(fā)明的范圍之內(nèi)。
在本發(fā)明的一個實施例中,圖8示出了一個有序分組組,該有序分組組將用來對網(wǎng)絡(luò)進(jìn)行采樣并且提供了對網(wǎng)絡(luò)路徑進(jìn)行期望分析所需的原始數(shù)據(jù),其中識別了有序分組組中的每一個分組的身份。被稱為載荷分組Li的連續(xù)傳輸?shù)姆纸M系列(其中i為此系列中的指數(shù)并且等于1~n之間的整數(shù))被設(shè)置為當(dāng)以源主機(jī)NIC的最大傳輸容量傳輸時,這些分組之間的間隔最小。該有序分組組還包括兩個附加的分組,其中一個在載荷分組之前另一個在載荷分組之后,并且這兩個附加分組被分別稱為標(biāo)記分組M0和M1。相對于載荷,這些標(biāo)記同樣連續(xù)傳輸,其中標(biāo)記分組與鄰近的載荷分組之間的間隔被最小化。
可以經(jīng)由受評估的網(wǎng)絡(luò)發(fā)送各分組,將終點主機(jī)指定為從源主機(jī)可訪問的具體IP地址,將源主機(jī)指定為接收主機(jī)。與兩個標(biāo)記分組關(guān)聯(lián)的TTL參數(shù)可以設(shè)置為最大允許值,例如TTL=255,而與各載荷分組關(guān)聯(lián)的TTL參數(shù)例如設(shè)置為整數(shù)值h(0<h<256)。雖然載荷分組通常在源主機(jī)與終點主機(jī)之間的目標(biāo)主機(jī)終止,但這種結(jié)構(gòu)通常允許標(biāo)記分組到達(dá)終點主機(jī)。在特定的有序分組組中,每一個載荷分組的TTL值都賦予相同的數(shù)值,然而與其他有序分組組中的載荷分組關(guān)聯(lián)的TTL值是經(jīng)變化的,因此應(yīng)當(dāng)把它看作對應(yīng)不同目標(biāo)主機(jī)的變量。當(dāng)h值小于源主機(jī)與終點主機(jī)之間路徑上的第三層跳數(shù)目時,載荷分組Li將會終止,并且由目標(biāo)主機(jī)將“TTL終止”信息發(fā)送到接收主機(jī),從而針對每一個終止的載荷分組發(fā)送一條消息。在本實施例中,源主機(jī)與接收主機(jī)是相同的,然而這可能不是實際情況,因而需要糾正所收集的信息來考慮另選的配置。與特定有序分組組關(guān)聯(lián)的標(biāo)記分組將傳送到終點主機(jī)而不管關(guān)聯(lián)的載荷分組是否終止。一旦到達(dá)了終點主機(jī),該終點主機(jī)將向接收主機(jī)發(fā)送響應(yīng)分組(例如以Echo Reply分組的形式),其中對于每一個標(biāo)記分組都發(fā)送一個Echo Reply。在另選的實施例中,標(biāo)記分組可以向終點主機(jī)請求ICMP端口不可達(dá)分組,或者標(biāo)記分組可以向終點主機(jī)之前的一些節(jié)點請求TTL Expiry分組。
在一個實施例中,使用一種特性化了的針對UDP協(xié)議的協(xié)議限定載荷分組,并且該載荷分組具有相同的大小SL。標(biāo)記分組為ICMP Echo分組,并且都具有相同的大小SM,該大小可能與載荷分組的大小SL不同。從載荷分組終止處的目標(biāo)主機(jī)發(fā)送到接收主機(jī)的ICMP TTL Expiry分組可具有另一大小SE,該大小可能比較小,例如64字節(jié)。從終點主機(jī)發(fā)送到接收主機(jī)的ICMP Echo答復(fù)分組與原始ICMP Echo標(biāo)記分組具有相同的大小SM。
在另選的實施例中,各標(biāo)記分組可能具有不同的大小,致使ICMPEcho答復(fù)標(biāo)記分組從終點主機(jī)發(fā)送到接收主機(jī),并與它們各自的原始ICMP Echo標(biāo)記分組的大小相同。在另外的實施例中,標(biāo)記分組可能為某一其他的協(xié)議(比如UDP),并且不管它們的原始大小都可以生成從終點主機(jī)到接收主機(jī)的ICMP端口不可達(dá)分組,該分組大小比較小,例如64字節(jié)。
在一個實施例中,為了實現(xiàn)端對端采樣和網(wǎng)絡(luò)路徑分析以及為了實現(xiàn)逐段地表征所選的基于分組的網(wǎng)絡(luò)路徑,下面提供了以下的步驟順序。選擇目標(biāo)主機(jī),可選地,可以確定第三層跳的數(shù)目H以及源主機(jī)與終點主機(jī)之間的所有可見第三層跳的相應(yīng)IP地址,從而識別源主機(jī)與終點主機(jī)之間的所有目標(biāo)主機(jī)。隨后,多個序列的相鄰的載荷分組和標(biāo)記分組的有序組被發(fā)送到目標(biāo)主機(jī)的IP地址。與不同的有序分組組的載荷分組關(guān)聯(lián)的終止變量TTL可以設(shè)置為在1~H范圍內(nèi)的某值,從而使得可以收集來自源主機(jī)與終點主機(jī)之間直至并包括終點主機(jī)的所有目標(biāo)主機(jī)的數(shù)據(jù)。所有分組的傳輸時間都針對各探測分組記錄在源主機(jī)上,而每一個收到的終止或答復(fù)分組的返回分組時間都記錄在接收主機(jī)上,其中將有關(guān)發(fā)送分組和從其返回的所得返回信息的各定時聯(lián)系起來以進(jìn)行分析。對于特定TTL值,對分組序列內(nèi)的每一個分組的定時進(jìn)行統(tǒng)計,并且對于每一個TTL值,一旦記錄了足夠的統(tǒng)計,該統(tǒng)計就可以用來獲得與特定TTL值識別的目標(biāo)主機(jī)相關(guān)聯(lián)的指標(biāo)的范圍。該過程可以導(dǎo)致針對每一個單獨跳確定的指標(biāo)。
根據(jù)本發(fā)明的網(wǎng)絡(luò)路徑采樣階段的結(jié)果包括統(tǒng)計值的收集,該統(tǒng)計值歸結(jié)于所采樣的端對端網(wǎng)絡(luò)路徑內(nèi)的每一個所選的目標(biāo)主機(jī)。與采樣階段中所傳輸?shù)妮d荷分組關(guān)聯(lián)的TTL值提供了一種使收集的信息與特定目標(biāo)主機(jī)具有相關(guān)性的手段。因此,各目標(biāo)主機(jī)都能夠與TTT的統(tǒng)計數(shù)值相關(guān)聯(lián),所述TTT可以定義為從源主機(jī)開始傳送序列中的第一個分組直到接收主機(jī)完成對該序列的特定分組的確認(rèn)接收為止的時間。另外,每一個目標(biāo)主機(jī)都能夠與來自TTT分布的結(jié)論相關(guān)聯(lián),比如丟失和重新排序。
單個分組的定時可以基于在傳輸?shù)脑粗鳈C(jī)上當(dāng)分組完全離開網(wǎng)絡(luò)接口時的本地時間與在接收主機(jī)上當(dāng)完全收到確認(rèn)分組時的本地時間之間的差異。在一個實施例中,定時是相對于所發(fā)送和接收的分組的“尾沿”。該測量值可以被稱為RTT(往返行程時間)并且與TTT有關(guān),其中RTT等于TTT減去第一個分組傳輸直到相關(guān)分組所需的時間。圖9在一張標(biāo)準(zhǔn)時間表中示出了序列組中第四個分組的TTT與RTT之間的關(guān)系,其中時間沿圖的縱軸增加。
在采樣階段中,根據(jù)收集的信息確定了表1中每一個標(biāo)識出的符號代表的值。表1介紹了描述應(yīng)用于所采樣的分組統(tǒng)計的分析所需要的術(shù)語。每一個指標(biāo)采取適當(dāng)過濾并應(yīng)用到分組定時的分布上,以便僅挑選出符合條件的樣本。例如,在前標(biāo)記和在后標(biāo)記的TTT最小值可以要求兩個數(shù)值來自相同的有序分組組。表1中定義的數(shù)值能夠評估有關(guān)基于分組的網(wǎng)絡(luò)的段的特性,包括單向最大比特率、單向傳輸延遲、單向延遲變量和單向可用比特率。
下面,考慮以下假設(shè),提供了以下根據(jù)一個實施例獲得這些特性的過程。接收主機(jī)與源主機(jī)是相同的。當(dāng)載荷分組為UDP并且它們的TTL設(shè)置為使限定的目標(biāo)主機(jī)比終點主機(jī)遠(yuǎn)時(例如與載荷分組關(guān)聯(lián)的TTL值大于源主機(jī)與終點主機(jī)之間的跳數(shù)),終點主機(jī)將產(chǎn)生ICMP端口不可達(dá)確認(rèn)分組。返回路徑的等待時間與網(wǎng)絡(luò)路徑的邊界部分相稱,并且為使各目標(biāo)主機(jī)收集的信息具有統(tǒng)計顯著性,已經(jīng)對網(wǎng)絡(luò)進(jìn)行了足夠的采樣。假定一旦載荷分組終止,標(biāo)記分組就相互獨立,因此它們不會在網(wǎng)絡(luò)路徑上的第三層設(shè)備隊列中相遇,或者,即使它們相遇,該情況可以被探測到并且受影響的分組也會被正確地分析。
表1
單向比特率正如本領(lǐng)域所屬技術(shù)人員容易理解的那樣,單向比特率可以認(rèn)為是比特在起點與終點之間單向傳輸?shù)淖畲笏俾?。如圖6所示,當(dāng)有序分組組中的所有分組到達(dá)比特率瓶頸(例如低容量段)時,鄰近分組尾沿之間的時間間隔將會增大。在沒有任何其他影響(例如隨后的網(wǎng)絡(luò)容量減少或者背景流量)的情況下,該特性的間隔將持續(xù)。后面的收縮(例如進(jìn)一步減小網(wǎng)絡(luò)容量)可能帶來分組之間更大的間隔。一旦與特定有序分組組關(guān)聯(lián)的載荷終止,與之關(guān)聯(lián)的兩個標(biāo)記分組尾沿之間的相對間隔就會保持固定并且代表載荷終止時刻存在載荷。因此,例如假定載荷分組終止后標(biāo)記分組之間有充分的間隔并且不存在背景流量對其中一個標(biāo)記分組的影響,則所述標(biāo)記的間隔可以作為網(wǎng)絡(luò)路徑到達(dá)但不超過所關(guān)聯(lián)的載荷的終止點的性質(zhì)的殘余指示(residual indication)。
可以增加或減少標(biāo)記之間的間隔的情況同樣增加了有關(guān)標(biāo)記分組響應(yīng)的傳輸與接收之間的總時間。通過選擇最小時間Λ0和Λ1,端對端傳輸并且沒有遇到任何其他通信的分組最可能用來評估單向比特率。收集充足的統(tǒng)計樣本可以確保這些分組中的至少一對的最小時間代表該特性作為第一序列評估。網(wǎng)絡(luò)對其他參數(shù)(例如分組大小、載荷數(shù)目和協(xié)議)的敏感性可以進(jìn)一步改善網(wǎng)絡(luò)路徑的表征。
例如,參照圖10,圖10示出了計算單向比特率所需數(shù)據(jù)的示意性表述。與該有序分組組的載荷分組有關(guān)的TTL被設(shè)置為h,因此它們在穿過目標(biāo)主機(jī)h后終止,并且TTL Expiry分組105被發(fā)送到指定的接收主機(jī)。直到載荷終止的點的數(shù)據(jù)被傳輸?shù)乃俾?單向比特率Bmax)可以被計算為兩個標(biāo)記(包括標(biāo)記的尾沿之間的所有標(biāo)記的部分)之間的比特總數(shù),并且定義如下 單向傳輸延遲正如本領(lǐng)域所屬技術(shù)人員容易理解的那樣,單向傳輸延遲可以定義為在IP網(wǎng)絡(luò)中假想的零字節(jié)分組從源主機(jī)傳輸?shù)浇K點主機(jī)所用的時間。對于本發(fā)明,TTL Expiry的確認(rèn)從目標(biāo)主機(jī)返回的最小RTT代表了分組完成從源主機(jī)到目標(biāo)主機(jī)并且返回的往返行程的傳輸時間。分組在各中間節(jié)點串行化的時間包括在這些RTT時間中,其中串行化時間是分組大小的函數(shù)。在一些情況下,發(fā)送的分組的大小可能與收到的分組的大小不同。對于一個零字節(jié)的分組,從源主機(jī)到目標(biāo)主機(jī)的傳輸時間可以是該零字節(jié)分組的RTT的一半,這是因為由于該分組大小為零字節(jié)并且假設(shè)返回路徑對稱,沒有考慮有關(guān)串行化的時間。
在一個實施例中,假設(shè)載荷分組按順序到達(dá)目標(biāo)主機(jī),第一載荷分組L1的第一最小時間α1應(yīng)該是最小的。該值包含第一標(biāo)記分組M0和第一載荷分組L1傳輸?shù)侥繕?biāo)主機(jī)的時間,加上與L1終止相關(guān)聯(lián)的TTLExpiry分組返回到接收主機(jī)的時間,其中α1可以如下地確定α1=t1-wayprop+tser(S(M0))+tser(S(Li))+t1-wayprop+tser(S(L1-expiry))---(2)]]>=2×tprop+tser(SL+SM+SE)---(3)]]>其中tprop為單向傳輸時間,tser(Sx)為SX大小的分組的單向串行化時間。
因此,通過改變載荷分組的大小SL,或者標(biāo)記分組大小SM,在采樣階段中可以產(chǎn)生RTT最小值α1的數(shù)值范圍。假設(shè)α1與分組大小SX線性相關(guān),對于零字節(jié)大小的分組SX=0,它的α1的映射數(shù)值可以通過下列公式計算,接下來單向傳輸可以估計為α1(0)/2。
α1(0)=α1(Slarge)-Slarge×[(α1(Slarge)-α1(Ssmall))/(Slarge-Ssmall)(4)其中α1(SX)為值SX=SL+SM+SE的最小TTT,并且SL與SM二者具有不同的大小,因而Slarge>>Ssmall。
單向延遲變量正如本領(lǐng)域所屬技術(shù)人員容易理解的那樣,單向延遲變量可以定義為分組沿特定路徑的傳輸時間范圍,并且可能與系統(tǒng)中出現(xiàn)的“抖動”有關(guān)。該指標(biāo)代表分組延遲的分布。例如,在繁忙的網(wǎng)絡(luò)中,隨著背景流量的水平在網(wǎng)絡(luò)中動態(tài)變化,各分組可能表現(xiàn)出獨特的延遲。在本發(fā)明的情況下中,單向延遲變量定義為分組從源主機(jī)傳輸?shù)侥繕?biāo)主機(jī)的所用時間的變化,因為它可以從一系列的有序分組組中的特定分組隨時間的TTT分布中推斷。
在本發(fā)明采樣階段提取的載荷的TTT值τi可以表示其分布的關(guān)鍵指標(biāo)。圖11示出了在簡化的單個分組的情況下(在這種情況下,RTT等于τ0,僅包含一個分組的有序分組組的TTT值)RTT的典型分布,其中x軸代表RTT,單位毫秒(ms),而y軸代表特定RTT的出現(xiàn)頻率。另外,還示意性地表示了該典型分布的最小時間300、平均時間310和標(biāo)準(zhǔn)偏差320。該RTT分布可以是例如分組大小或者分組類型的函數(shù)。有序分組組的TTT值τi的分布在本質(zhì)上是相似的,并且可以從單獨的RTT分布中導(dǎo)出。
代表單向延遲變量整體分布的近似單值表達(dá)可以等于變量系數(shù)CoV,該變量系數(shù)定義如下 其中所選的標(biāo)準(zhǔn)偏差和平均值通常針對第一個載荷分組或者最后一個載荷分組的TTT而言。
該單向延遲變量還可相對于所發(fā)送載荷分組的大小或者數(shù)量來表示。然而,TTT平均值的使用包括了對有關(guān)返回路徑性質(zhì)的假定,即它與邊境路徑在等待時間上是對稱的,并且限制作用(比如反向通信或者協(xié)議專用速率限制)在返回路徑上可以忽略。
單向可用比特率單向可用比特率可以用來描述應(yīng)用中可用的最大比特率Bmax的百分比。在背景流量和其他隨時間變化的限制作用存在時,可用比特率通常隨時間變化。可用比特率的任何指標(biāo)表示隨時間的粗略打磨(coarse-graining)或者平均。本發(fā)明所考慮的可用比特率的值表示在進(jìn)行統(tǒng)計采樣的整個過程中可用比特率的平均值??捎帽忍芈实钠骄礎(chǔ)i(T)可以定義如下
Ai(T)=BmaxT∫0T(1-λ(t))dt---(6)]]>其中λ(t)為關(guān)于時間的連續(xù)函數(shù),表示背景流量占據(jù)總?cè)萘康姆謹(jǐn)?shù)。
應(yīng)當(dāng)注意,網(wǎng)絡(luò)通信實際上是離散的,因為在給定的任何時刻分組都不能部分地占據(jù)網(wǎng)絡(luò)鏈路。當(dāng)在時刻t路徑無競爭的背景流量時,函數(shù)λ(t)賦值為0,而當(dāng)路徑包含背景流量時,賦值為1。當(dāng)該粗略打磨的周期T遠(yuǎn)大于任何分組沿網(wǎng)絡(luò)路徑傳遞到給定點所需的時間時,可以有效地近似認(rèn)為λ(t)是連續(xù)的。
假定特定的端對端路徑提供了從源主機(jī)到目標(biāo)主機(jī)的單向比特率Bmax(推導(dǎo)的Bmax),則第一個標(biāo)記分組M0的尾沿與最后一個標(biāo)記分組M1的尾沿之間的時間可以涉及該最大比特率。如果假定可用比特率為最大比特率的簡分?jǐn)?shù)x×Bmax,那么分?jǐn)?shù)x將決定從源主機(jī)到目標(biāo)主機(jī)傳遞相同量的數(shù)據(jù)所需總時間的增加,并且定義如下發(fā)送的比特總數(shù)=Bmax×(t1-t0)=Bavail×(t2-t0)Bavail=Bmax×x(7)其中可以用最小TTT(α)和平均TTT(τ)來表達(dá)分?jǐn)?shù)x=(t1-t0)/(t2-t0),因此x=α/τ。
作為示例,圖12示出了可用比特率和最大比特率之間比較的示意圖。具體地,當(dāng)在一部分網(wǎng)絡(luò)中不存在背景流量時,可用比特率將是最大比特率,并且如圖12(a)所示,第一個標(biāo)記分組的尾沿與最后一個標(biāo)記分組的尾沿之間的時間表示為t1-t0。如圖12(b)所示,在存在背景流量時,可用比特率為最大比特率的分?jǐn)?shù),第一個標(biāo)記分組的尾沿與最后一個標(biāo)記分組的尾沿之間的時間表示為t2-t0??梢宰⒁獾?,t2大于t1,因此,在存在背景流量時,相同量信息的傳遞時間將增加。
取決于采取的假設(shè)以及包含的網(wǎng)絡(luò)影響,可用比特率Bavail可以用有序分組組中載荷的第一個分組和最后一個分組來定義,或者用標(biāo)記分組來定義。因為反向通信或者其他限制作用都潛在地對傳輸分組的傳遞敏感,所以載荷的第一個分組可能是最具代表性的。任選地,可以假定載荷的存在可以使反向通信的變化率穩(wěn)定并且最后一個載荷分組的使用是合理的。使用標(biāo)記分組需要一些關(guān)于經(jīng)過目標(biāo)主機(jī)的限制作用的假設(shè),因為標(biāo)記的平均TTT與最小RTT不同,可能包括一些沿網(wǎng)絡(luò)路徑的在載荷終止之后的附加的瞬時延遲。應(yīng)當(dāng)注意,使用平均TTT意味著有關(guān)相對于邊境路徑的返回路徑性質(zhì)的假設(shè)可適用于給定的情況。
自適應(yīng)采樣和測試流程正如本領(lǐng)域所屬技術(shù)人員容易理解的那樣,基于分組的網(wǎng)絡(luò)路徑的性質(zhì)可以是略微變化的。可能針對表征過程所占用的時間優(yōu)化路徑和其元素的表征。根據(jù)本發(fā)明的一個實施例,通過使用自適應(yīng)采樣和相關(guān)分析的應(yīng)用,可以最優(yōu)化采樣過程。這種自適應(yīng)采樣過程從評估預(yù)定的指示器開始,這可以通過使用非最佳采樣技術(shù)產(chǎn)生。隨后,為了改進(jìn)采樣技術(shù),進(jìn)行一個或更多個自適應(yīng)操作。最后,為了確定是否已經(jīng)進(jìn)行了充分的采樣以將被評價的網(wǎng)絡(luò)路徑表征到期望的精度水平,使用了收斂過程。
在一個實施例中,自適應(yīng)過程檢查原始分組定時以及次最佳采樣技術(shù)的圖案的丟失值,其中這些圖案稱為指示器。從采樣的觀點出發(fā),這些指示器使得能夠決定另選的采樣技術(shù)(測試的網(wǎng)絡(luò)路徑將以一種改進(jìn)的方式響應(yīng)該技術(shù))。該自適應(yīng)過程可以反復(fù)地對采樣技術(shù)進(jìn)行更替或者自適應(yīng),直到可以確定對測試的網(wǎng)絡(luò)路徑最有效的采樣技術(shù)。另外,可以針對與測試的網(wǎng)絡(luò)路徑的一個跳,與其他跳隔絕地進(jìn)行自適應(yīng)過程,或者可以任選地基于網(wǎng)絡(luò)路徑跳的整個序列或子序列進(jìn)行自適應(yīng)過程。
在一個實施例中,采樣結(jié)果中存在指示器可以表示已經(jīng)使用了次最佳采樣技術(shù)。可替換地,在采樣結(jié)果中的零指示器可以表示采樣技術(shù)對測試的網(wǎng)絡(luò)路徑的表征是有效的。在特定采樣結(jié)果中還可能有多個指示器,多個指示器可以表示多重次最佳采樣技術(shù)的參數(shù),或者多個指示器可以表示單一的更專用的次最佳采樣技術(shù)的參數(shù)。
在一個實施例中,自適應(yīng)操作限定了對采樣技術(shù)及其參數(shù)的變化,其中每一操作都可以設(shè)計為對特定網(wǎng)絡(luò)環(huán)境組的調(diào)節(jié)和補(bǔ)償。單一操作或者多個操作可以運用于采樣技術(shù)。此外,例如一項操作可以重復(fù)地使用,或者交替地逆向使用,其中此操作的效果被取消以產(chǎn)生相反的作用,從而例如提供了一種從測試的網(wǎng)絡(luò)中展現(xiàn)所需效果的手段。
在一個實施例中,存在于特定采樣技術(shù)的采樣結(jié)果的特定組中的一個或更多個指示器的組可以決定用于產(chǎn)生更加有效的采樣技術(shù)的操作。例如,基于上述指示器,一項操作或者多項操作可以應(yīng)用于當(dāng)前的采樣技術(shù)參數(shù)。例如,自適應(yīng)過程可以繼續(xù)監(jiān)視次最佳采樣技術(shù)指示器的采樣結(jié)果,并隨后對該采樣技術(shù)反復(fù)地進(jìn)行操作,直到發(fā)現(xiàn)最有效的技術(shù)。在一個實施例中,僅當(dāng)充足的證據(jù)表明該自適應(yīng)將產(chǎn)生更精確的結(jié)果時,才對采樣技術(shù)進(jìn)行自適應(yīng)。
在一個實施例中,執(zhí)行了收斂性過程,其中這種過程是一種自適應(yīng)分析,該分析可以檢查為了精確確定網(wǎng)絡(luò)性能特性所需的穩(wěn)定性而收集的樣本。該收斂性過程可以確定已經(jīng)收集的測試樣本的數(shù)量是否足以獲得穩(wěn)定性,并且如果不能獲得,該收斂性過程可以指示大約還需要多少測試樣本以獲得穩(wěn)定性。
在本發(fā)明的一個實施例中,在自適應(yīng)過程中,可以保持過去的自適應(yīng)的歷史記錄,并且在自適應(yīng)過程中,該歷史記錄可以在對采樣技術(shù)參數(shù)作出變化之前查閱。在一些情況中,被設(shè)計用來影響的采樣技術(shù)參數(shù)的自適應(yīng)可能不會對隨后的采樣產(chǎn)生期望的作用。當(dāng)指示器以及隨后的一項或多項自適應(yīng)操作不產(chǎn)生期望的作用時,該自適應(yīng)過程可以限制對其執(zhí)行自適應(yīng)的指示器的重要性。以這種方式,該自適應(yīng)過程降低所選指示器的影響,該指示器在過去對于受評價的特定網(wǎng)絡(luò)路徑已經(jīng)失效。
指示器指示器是采樣結(jié)果中不理想的特性或者圖案,代表了一種或更多種次最佳采樣技術(shù)。采樣結(jié)果中的零指示器可以表示該采樣技術(shù)對測試的網(wǎng)絡(luò)路徑的表征是有效的。然而,采樣結(jié)果中的零指示器僅表示該采樣技術(shù)僅對限定的指示器表示的特征組有效,也就是說沒有不理想的特征。
在一個實施例中,次最佳采樣技術(shù)參數(shù)或者網(wǎng)絡(luò)壓力的幾個指示器可能來自原始分組定時和丟失的值,所述網(wǎng)絡(luò)壓力或者是有意的網(wǎng)絡(luò)安全機(jī)制或者是無意的網(wǎng)絡(luò)缺陷。這些指示器包括,但不是全部包括標(biāo)記重排、標(biāo)記壓縮、載荷重排、標(biāo)記丟失率、載荷丟失率、報告的網(wǎng)絡(luò)錯誤、慢的端主機(jī)以及這些條件的特定組合。
下面提供一種從采樣過程中收集的數(shù)據(jù)確定這些指示器的方法,然而容易理解,可以獲得每一個指示器的替換的定義。
當(dāng)網(wǎng)絡(luò)傳輸過程中隨尾標(biāo)記通過引導(dǎo)標(biāo)記時,標(biāo)記重排發(fā)生。因此,通過比較引導(dǎo)標(biāo)記分組和隨尾標(biāo)記分組的接收時間可以提供標(biāo)記重排指示器,其中較小隨尾標(biāo)記的接收時間表示網(wǎng)絡(luò)傳輸過程中標(biāo)記改變的位置。
標(biāo)記壓縮是標(biāo)記重排的較緩和形式,其中標(biāo)記分組被壓縮,即使得其相互更接近,但是不改變接收次序。將引導(dǎo)標(biāo)記和隨尾標(biāo)記在傳輸時間上的差異與這些相同分組之間在接收時間上的差異進(jìn)行比較,可以提供標(biāo)記壓縮指示器。在預(yù)定的閾值內(nèi)較小接收時間的變化量,可以表示與隨尾標(biāo)記相比,引導(dǎo)標(biāo)記在網(wǎng)絡(luò)傳輸過程中被不相稱地延遲了。
在網(wǎng)絡(luò)傳輸過程中,當(dāng)載荷分組改變次序時,發(fā)生載荷重排。載荷重排指示器可以被認(rèn)為是與標(biāo)記重排指示器同義,只不過是基于載荷分組定時。
標(biāo)記分組丟失指示器可以是一個或更多個標(biāo)記分組中丟失的觀測結(jié)果,而載荷丟失指示器可以是一個或更多個載荷分組中丟失的觀測結(jié)果。
此外,報告的網(wǎng)絡(luò)條件可以是來自網(wǎng)絡(luò)設(shè)備或者第三層設(shè)備的關(guān)于網(wǎng)絡(luò)錯誤或者網(wǎng)絡(luò)壓力的明白指示。這些報告的網(wǎng)絡(luò)條件指示器在基于分組的網(wǎng)絡(luò)中通常但不限于采用ICMP消息的形式。
慢的端主機(jī)指示器可以定義為隨尾標(biāo)記分組與引導(dǎo)標(biāo)記分組TTT之差,與最后載荷分組與最前載荷分組TTT之差的比,其中比值充分大于1時可以表示慢的端主機(jī)。
在一個實施例中,對于基于分組丟失的指示器,當(dāng)從初始發(fā)送分組直到經(jīng)過合理量的時間而沒有收到確認(rèn)答復(fù)分組時,認(rèn)為分組丟失。在將分組分類為丟失之前的合理量時間的界定可以由測試的網(wǎng)絡(luò)路徑?jīng)Q定,并且可以在普通基于分組的網(wǎng)絡(luò)情況中極大地變化。本領(lǐng)域所屬技術(shù)人員容易理解,有一些眾所周知的用于確定所期望分組經(jīng)過時間的機(jī)制,這些機(jī)制可以用來定義合理量的時間。在另選實施例中,否定確認(rèn)可以用來判斷分組的丟失。
自適應(yīng)操作在一個實施例中,利用自適應(yīng)操作來優(yōu)化活動的采樣技術(shù),并且自適應(yīng)操作可以有以下的調(diào)整,該調(diào)整例如包括改變載荷數(shù)、改變載荷大小、改變標(biāo)記大小、逐漸改變標(biāo)記大小、逐漸改變載荷大小、改變載荷分組參數(shù)、改變標(biāo)記分組參數(shù)以及改變迭代數(shù)量。
在本發(fā)明的一個實施例中,自適應(yīng)操作定義為1)通過在一定限度內(nèi)增加或者減少載荷數(shù)目的方式改變載荷數(shù)目,而可以改變對測試的網(wǎng)絡(luò)路徑的需求。增加載荷數(shù)將產(chǎn)生對網(wǎng)絡(luò)和目標(biāo)主機(jī)的更多需求,而減少載荷數(shù)具有相反的效果。2)通過在一定限度內(nèi)增加或者減少載荷大小來改變載荷大小,可以避免一些類型的分組過濾和避免干擾采樣過程的網(wǎng)絡(luò)缺陷狀況。3)通過在一定限度內(nèi)增加或者減少標(biāo)記大小來改變標(biāo)記大小,可以改變對測試的網(wǎng)絡(luò)路徑和終點主機(jī)的需求。例如,增加標(biāo)記大小對端主機(jī)和將端主機(jī)連接到其余網(wǎng)絡(luò)路徑的網(wǎng)絡(luò)產(chǎn)生更多需求。4)逐漸改變標(biāo)記分組大小可以要求獨立地改變引導(dǎo)標(biāo)記和隨尾標(biāo)記的大小,以在引導(dǎo)標(biāo)記小于隨尾標(biāo)記時引起向前的斜率,或者在引導(dǎo)標(biāo)記大于隨尾標(biāo)記時引起向后斜率。以這種方式改變標(biāo)記分組大小可獨立改變各標(biāo)記分組的生存性以及定時特性。5)逐漸改變載荷分組大小可以在載荷組內(nèi)對所有的分組引起向前或向后的斜率。以這種方式改變載荷分組大小可以改變載荷分組作為一個整體的生存性以及定時特性。6)改變載荷分組參數(shù)可以在運用各種探測分組設(shè)置時探究網(wǎng)絡(luò)特性。可以改變的載荷分組參數(shù)包括,例如網(wǎng)絡(luò)協(xié)議和網(wǎng)絡(luò)服務(wù)類型等。具有不同分組參數(shù)的載荷分組可能使用到達(dá)相同主機(jī)的不同網(wǎng)絡(luò)路徑,可能具有不同的響應(yīng)定時和丟失特性,還可能應(yīng)用了不同的網(wǎng)絡(luò)策略。7)改變標(biāo)記分組參數(shù)可以在運用各種探測分組設(shè)置時與端主機(jī)的響應(yīng)配合探究網(wǎng)絡(luò)特性??梢哉{(diào)節(jié)的標(biāo)記參數(shù)包括,例如網(wǎng)絡(luò)協(xié)議、生存時間以及協(xié)議專用參數(shù)(比如端口號)。具有不同分組參數(shù)的標(biāo)記分組可使用到達(dá)目標(biāo)主機(jī)的不同網(wǎng)絡(luò)路徑,可能具有不同的目標(biāo)主機(jī)響應(yīng)定時和丟失特性,還可能應(yīng)用了不同的網(wǎng)絡(luò)策略。8)改變所執(zhí)行的、用以計算高層網(wǎng)絡(luò)指標(biāo)(例如可用帶寬、單向比特率和單向傳輸延遲)的迭代數(shù)量和/或樣本數(shù)量。在對網(wǎng)絡(luò)進(jìn)行采樣時,同樣不需要對網(wǎng)絡(luò)進(jìn)行過度采樣,此時需要該自適應(yīng)操作。例如,過多采樣可能將遠(yuǎn)程影響并入性能測量值以及不必要的檢測時間和網(wǎng)絡(luò)通信。相反的是,過少的樣本數(shù)量不可能獲得網(wǎng)絡(luò)真實的性能,導(dǎo)致網(wǎng)絡(luò)性能評估的精確度低。
下表描述了依據(jù)本發(fā)明實施例的指示器、所需的預(yù)設(shè)條件和自適應(yīng)過程的響應(yīng)。在本發(fā)明的一個實施例中,在沒有滿足所需的預(yù)設(shè)條件時,可以有針對存在于采樣結(jié)果中的特定指示器的已定義的響應(yīng)。在這種情況下,自適應(yīng)過程的歷史記錄可以用來確定最有效的次最佳檢測方法,例如可以用來表征正在評估的網(wǎng)絡(luò)。
表2
收斂在一個實施例中,與自適應(yīng)過程關(guān)聯(lián)的收斂過程提供了一個或更多個有關(guān)于精確網(wǎng)絡(luò)性能表征所需的采樣數(shù)量的評估量,并且還可以確定是否進(jìn)行了足夠的采樣。例如,網(wǎng)絡(luò)采樣過度或網(wǎng)絡(luò)采樣不足都是不期望的。例如,如果進(jìn)行了過多的采樣,采樣處理可能無意中獲得可能影響網(wǎng)絡(luò)性能指標(biāo)的遠(yuǎn)程影響并且不必要地增加了檢測時間和網(wǎng)絡(luò)負(fù)荷。相反的是,如果進(jìn)行了過少的采樣,從這些樣本中獲得的網(wǎng)絡(luò)性能表征將會有較大的置信區(qū)間,降低了計算結(jié)果的有效性,即它的精度。
在一個實施例中,收斂過程可以估算采樣期間與其自身有關(guān)的收斂指示器。在一個實施例中,有三個與網(wǎng)絡(luò)性能表征有關(guān)的收斂指示器,每一個收斂指示器可以捕捉非瞬時特性、瞬時特性或者診斷特性之一的穩(wěn)定性,其中非瞬時特性或者指標(biāo)不隨時間改變,瞬時特性或者指標(biāo)隨時間變化,而診斷特性可以形成有關(guān)網(wǎng)絡(luò)功能異常的推斷基礎(chǔ)。
在本發(fā)明的一個實施例中,在設(shè)定一些合理的漸近值之前,可以監(jiān)視收斂指示器接近它均衡值的速率。為了確定所選收斂指示器相對于采樣速率的變化速率,本發(fā)明在此方面的實現(xiàn)是基于收斂指示器的當(dāng)前統(tǒng)計值與以前值的比較。例如,如果系列中特定分組的最小傳輸時間對于最后的x次采樣沒有變化,那么基于這些最小值的任何測量都將認(rèn)為相對于預(yù)期值是穩(wěn)定的。
在一個實施例中,這三個收斂指示器是單獨基于分組定時和丟失分布的,并且不需要更高層信息或者訪問大量歷史記錄信息。上述瞬時網(wǎng)絡(luò)特性指示器是所選分組(通常為最后的載荷分組或隨尾標(biāo)記分組)的RTT或TTT的平均值。上述非瞬時網(wǎng)絡(luò)特性指示器是一個分組或者混合分組(通常為標(biāo)記分組)的最小分組的TTT變化量。上述診斷網(wǎng)絡(luò)特性指示器是特定樣本中分組系列的各載荷分組和標(biāo)記分組的分組丟失分布。
在一個實施例中,收斂過程包括五個階段,其中對每一個新樣本調(diào)用前三個階段,而剩余的兩個階段周期性的或者根據(jù)要求調(diào)用。以這種方式劃分階段能夠允許具有更高計算要求的函數(shù)被以更低頻率調(diào)度,從而降低對收斂分析的整體計算要求。具體地,針對相對于累積樣本的穩(wěn)定性,收斂過程在整個采樣期間檢查收斂指示器。當(dāng)累積的樣本的分布精確地估算出總體分布時,該樣本分布被認(rèn)為已經(jīng)收斂。因此,當(dāng)樣本分布已經(jīng)收斂時,增加新樣本到該分布將不能明顯改變該分布。
在本發(fā)明的一個實施例中,收斂的五個階段是1)百分比變化函數(shù);2)二進(jìn)制串編碼器;3)熵編碼器;4)熵分析函數(shù);以及5)收斂指示器穩(wěn)定性函數(shù)。
收斂的第一階段是由百分比變化函數(shù)提供的,該百分比變化函數(shù)比較樣本與存在的收集樣本結(jié)合前后的收斂指示器。此外,可以組合一個或更多個百分比變化函數(shù)以形成用于收斂的這一階段的綜合百分比變化函數(shù)。例如,針對非瞬時網(wǎng)絡(luò)特性的樣本百分比變化的實現(xiàn)可以包括計算引導(dǎo)標(biāo)記和隨尾標(biāo)記的最快TTT時間之間的百分比變化,和可以作為整體百分比變化函數(shù)的兩個收斂指示器之間的最大百分比變化。
收斂的第二階段是由二進(jìn)制串函數(shù)(該二進(jìn)制串函數(shù)對0和1的串進(jìn)行編碼)提供的,把單個的數(shù)位添加到用于所收集的各樣本的串中。當(dāng)特定樣本的百分比變化函數(shù)結(jié)果大于預(yù)定的閾值時,該函數(shù)添加1,否則添加0。
收斂的第三階段是由熵編碼器提供的,該熵編碼器從二進(jìn)制串中刪除冗余信息以產(chǎn)生熵串。當(dāng)進(jìn)行采樣時,二進(jìn)制串為使用游程長度編碼方法形式編制的熵。任選地,可以用任何熵編碼器來代替游程長度編碼器。在另一個實施例中,采樣實現(xiàn)熵編碼器不需要逆向轉(zhuǎn)換,于是在執(zhí)行收斂過程中可以改進(jìn)時間和空間要求。
收斂的第四階段是由熵分析函數(shù)提供的,該熵分析函數(shù)比較包含在熵串較早部分中的熵的量,確定包含在熵串較晚部分中的熵的量。通過檢測在熵編碼的串中的這些部分的長度可以估計在串不同部分中的熵的量。相對于輸入的串長度,較長的熵串表示了較多的熵,而較短的串則表示了較少的熵。例如,當(dāng)全部樣本穩(wěn)定時,串的末端包含較少的熵。
收斂的最后階段是通過評估收斂指示器穩(wěn)定性(檢測在二進(jìn)制串末端的相對于串剩余部分的熵)提供的。
在一個實施例中,收斂指示器穩(wěn)定性評估的樣本實現(xiàn)將串分成最小的熵串和剩余串。該最小熵串通過在熵串中搜尋包含最后二進(jìn)制數(shù)位并且包含最少量的熵的子串而發(fā)現(xiàn)。剩余字符串與最小熵串的熵值之比構(gòu)成熵比。熵比可以任選地映射到函數(shù)上,該函數(shù)將熵比轉(zhuǎn)換成適當(dāng)比例百分比收斂值。在該實現(xiàn)中,該比值可以映射到如下形式的二次函數(shù)上 在另選實施例中,收斂指示器穩(wěn)定性的樣本實現(xiàn)計算出游程長度編碼串?dāng)?shù)值的第一統(tǒng)計矩和第二統(tǒng)計矩,也就是游程長度矩(run-lengthmoment)。最后游程長度值與游程長度矩的正3-sigma值之比構(gòu)成了熵比。然后該熵比映射到如下形式的函數(shù)上(9)比值=收斂%測試流程邏輯在本發(fā)明的一個實施例中,測試流程可以修改為自適應(yīng)采樣過程的反饋過程的一部分,其中采樣階段的結(jié)果可能更改隨后選擇的采樣參數(shù)以及以后采樣對象的選擇。
該測試流程邏輯能夠控制對自適應(yīng)操作所述的機(jī)制和收斂。這種邏輯還可以識別并消除測量過程的冗余、條件、選項或其他不適宜實現(xiàn)測試目的的情況。
在一個實施例中,測試流程邏輯需要在完成測試平衡之前估算源主機(jī)與終點主機(jī)之間的連通性。關(guān)于參數(shù)化,因為超過了路徑MTU的分組通常丟失,因而從源主機(jī)到終點主機(jī)的路徑MTU的測量值建立了可以有效地被使用的最大分組大小。例如,在復(fù)雜的實現(xiàn)中,針對分組丟失圖案,可探測并識別網(wǎng)絡(luò)路徑中的速率限制,因而采樣階段自適應(yīng)以避免或者考慮所探測到的速率限制的影響。另外,例如采樣階段中一個或更多個指示器的緩慢收斂或者沒有收斂可能引起選擇最佳采樣模式的自適應(yīng)循環(huán)。
變型例應(yīng)該理解,雖然出于說明的目的在此描述了本發(fā)明具體的實施例,但是在不脫離本發(fā)明的精神和范圍內(nèi)可以進(jìn)行各種變化。具體地說,提供用于根據(jù)本發(fā)明的方法控制計算機(jī)的操作和/或構(gòu)成本發(fā)明系統(tǒng)的組件的計算機(jī)程序產(chǎn)品或程序元件,或存儲機(jī)器可讀的信號的程序存儲器或存儲裝置(比如固體或流體傳送介質(zhì)、磁芯纜或光纜、帶或盤等),都在本發(fā)明的范圍內(nèi)。
此外,該方法的各步驟可以在任何通用計算機(jī)(比如PC機(jī)、服務(wù)器等上)執(zhí)行,并且與由任何編程語言(比如C++、Java、Pl/l等)生成的一個或更多個程序單元、模塊或?qū)ο?或其一部分)相對應(yīng)。另外,每一步,或者完成所述步驟的文件或?qū)ο蟮?,可以由為此目的設(shè)計的專用硬件或者電路模塊執(zhí)行。
如此描述了本發(fā)明的實施例,很明顯這些實施例可以以多種方式變化。這些變型不應(yīng)被認(rèn)為脫離了本發(fā)明的精神和范圍,并且所有對本領(lǐng)域所屬技術(shù)人員來說顯而易見的改變都包括在所附權(quán)利要求的范圍內(nèi)。
權(quán)利要求
1.一種用于表征基于分組的網(wǎng)絡(luò)的端對端路徑的方法,所述端對端路徑包括兩個或更多個節(jié)點,所述方法包括如下步驟a)生成一個或更多個有序分組組,每一個有序分組組包括兩個或更多個標(biāo)記分組和一個或更多個載荷分組,所有所述分組都設(shè)置成沿由源主機(jī)和終點主機(jī)限定的共用端對端路徑傳輸,其中所述一個或更多個載荷分組設(shè)置成經(jīng)過所述端對端路徑到預(yù)定節(jié)點,所述預(yù)定節(jié)點為沿端對端路徑的任何節(jié)點;b)從所述源主機(jī)沿所述共用端對端路徑傳輸所述一個或更多個有序分組組;c)收集與所述一個或更多個有序分組組的傳輸有關(guān)的數(shù)據(jù);以及d)分析所述數(shù)據(jù),從而顯現(xiàn)所述端對端路徑的特性。
2.如權(quán)利要求1所述的方法,其特征在于,所述收集數(shù)據(jù)的步驟在接收主機(jī)進(jìn)行。
3.如權(quán)利要求2所述的方法,其特征在于,所述接收主機(jī)是源主機(jī)。
4.如權(quán)利要求2所述的方法,其特征在于,所述接收主機(jī)是所述端對端路徑外的節(jié)點。
5.如權(quán)利要求1所述的方法,其特征在于,所述生成一個或更多個有序分組組的步驟包括用生存時間值配置所述一個或更多個載荷分組。
6.如權(quán)利要求1所述的方法,其特征在于,所述生成一個或更多個有序分組組的步驟包括配置所述一個或更多個載荷分組,以產(chǎn)生來自所述預(yù)定節(jié)點的端口不可到達(dá)響應(yīng)。
7.如權(quán)利要求5所述的方法,其特征在于,所述端對端路徑包括位于所述源主機(jī)和所述終點主機(jī)之間的一個或更多個目標(biāo)主機(jī),并且設(shè)置所述生存時間值,以使所述一個或更多個載荷在所述一個或更多個目標(biāo)主機(jī)中的一個主機(jī)上終止。
8.如權(quán)利要求1所述的方法,其特征在于,所述生成一個或更多個有序分組組的步驟包括使用選自ICMP、UDP和TCP的協(xié)議配置所述一個或更多個載荷分組和所述兩個或更多個標(biāo)記分組。
9.如權(quán)利要求1所述的方法,其特征在于,所述生成一個或更多個有序分組組的步驟包括用生存時間值配置所述兩個或更多個標(biāo)記分組,以使所述兩個或更多個標(biāo)記分組在到達(dá)所述終點主機(jī)之前終止,其中所述兩個或更多個標(biāo)記分組的終止發(fā)生在所述標(biāo)記分組穿過預(yù)定節(jié)點之后。
10.如權(quán)利要求1所述的方法,其特征在于,所述收集數(shù)據(jù)的步驟包括收集與所述一個或更多個有序分組組從所述源主機(jī)傳輸有關(guān)的時間數(shù)據(jù),以及在接收主機(jī)處與對所述有序分組組的答復(fù)的接收有關(guān)的時間數(shù)據(jù)。
11.如權(quán)利要求10所述的方法,其特征在于,在收集了統(tǒng)計顯著性量的時間數(shù)據(jù)之前一直執(zhí)行收集數(shù)據(jù)的步驟。
12.如權(quán)利要求10所述的方法,其特征在于,所述分析所述數(shù)據(jù)的步驟包括評估所述兩個或更多個標(biāo)記分組和所述一個或更多個載荷分組中的一個或更多個分組的行程總時間、最小行程總時間、最大行程總時間、平均行程總時間、行程總時間的標(biāo)準(zhǔn)偏差以及丟失率中的一個或更多個。
13.如權(quán)利要求1所述的方法,其特征在于,所述一個或更多個有序分組組包括第一個標(biāo)記分組,隨后是一個或更多個載荷分組,再后是第二個標(biāo)記分組。
14.如權(quán)利要求13所述的方法,其特征在于,所述分析所述數(shù)據(jù)的步驟包括確定單向比特率。
15.如權(quán)利要求13所述的方法,其特征在于,所述分析所述數(shù)據(jù)的步驟包括確定單向傳輸延遲。
16.如權(quán)利要求13所述的方法,其特征在于,所述分析所述數(shù)據(jù)的步驟包括確定單向延遲變量。
17.如權(quán)利要求13所述的方法,其特征在于,所述分析所述數(shù)據(jù)的步驟包括確定單向可用比特率。
18.如權(quán)利要求14所述的方法,其特征在于,所述單向比特率Bmax基本上被確定如下Bmax=(n×SL+SM+)/(Λ1-Λ0)其中n是載荷分組的數(shù)目,SL是一個載荷分組的大小,SM是一個標(biāo)記分組的大小,Λ1是所述第二個標(biāo)記分組的最小行程總時間,以及Λ0是所述第一個標(biāo)記分組的最小行程總時間。
19.如權(quán)利要求16所述的方法,其特征在于,所述單向延遲變量基本上通過評估標(biāo)準(zhǔn)偏差的變量系數(shù)和第一個載荷分組或最后一個載荷分組的行程總時間的平均值確定。
20.如權(quán)利要求18所述的方法,其特征在于,所述單向可用比特率Bavail基本上被確定如下Bavail=Bmax×[(t1-t0)/(t2-t0)]其中(t1-t0)為在最大比特率時所述第一個標(biāo)記分組的尾沿與最后一個標(biāo)記分組的尾沿之間的時間,(t2-t0)為在可用比特率時所述第一個標(biāo)記分組的尾沿與最后一個標(biāo)記分組的尾沿之間的時間。
21.如權(quán)利要求1所述的方法,其特征在于,修改步驟包括確定一個或更多個指示器,并且基于所述一個或更多個指示器修改所述一個或更多個有序分組組的一個或更多個參數(shù)。
22.如權(quán)利要求21所述的方法,其特征在于,修改所述參數(shù)的步驟是從包括改變載荷分組數(shù)目、改變載荷分組大小、改變標(biāo)記分組大小、逐漸改變標(biāo)記分組大小、逐漸改變載荷分組大小、改變載荷分組協(xié)議、改變標(biāo)記分組協(xié)議以及改變終點主機(jī)的組中選擇的。
23.如權(quán)利要求21所述的方法,其特征在于,修改所述參數(shù)的步驟以迭代方式執(zhí)行,以獲得最佳的采樣過程。
24.如權(quán)利要求1所述的方法,還包括評估所收集的數(shù)據(jù)的收斂性的步驟。
25.如權(quán)利要求24所述的方法,其特征在于,評估收斂性的步驟包括如下步驟百分比變化函數(shù)評估、二進(jìn)制串函數(shù)評估、熵編碼、熵分析函數(shù)評估以及收斂指示器穩(wěn)定性評估。
26.一種用于表征基于分組的網(wǎng)絡(luò)的端對端路徑的設(shè)備,所述設(shè)備包括a)用于生成一個或更多個有序分組組的裝置,每一個有序分組組包括兩個或更多個標(biāo)記分組和一個或更多個載荷分組,所有所述分組都設(shè)置成沿由源主機(jī)和終點主機(jī)限定的共用端對端路徑傳輸,其中所述一個或更多個載荷分組設(shè)置成經(jīng)過端對端路徑到預(yù)定節(jié)點,所述預(yù)定節(jié)點為沿端對所述端路徑的任何節(jié)點;b)用于從所述源主機(jī)沿所述共用端對端路徑傳輸所述一個或更多個有序分組組的裝置;c)用于收集與所述一個或更多個有序分組組的傳輸有關(guān)的數(shù)據(jù)的裝置;以及d)用于分析所述數(shù)據(jù)從而顯現(xiàn)所述端對端路徑的特性的裝置。
27.如權(quán)利要求26所述的設(shè)備,還包括一種用于基于所收集的數(shù)據(jù)自適應(yīng)修改所述一個或更多個有序分組組的生成的裝置,所述用于自適應(yīng)修改的裝置用來優(yōu)化所述端對端路徑的特性。
28.如權(quán)利要求26所述的設(shè)備,還包括一種用于評估所收集的數(shù)據(jù)的收斂性的裝置。
29.一種計算機(jī)程序產(chǎn)品,包括其上記錄有計算機(jī)程序的計算機(jī)可讀介質(zhì),所述計算機(jī)程序用來執(zhí)行一種用于表征基于分組的網(wǎng)絡(luò)的端對端路徑的方法,所述方法包括如下步驟a)生成一個或更多個有序分組組,每一個有序分組組包括兩個或更多個標(biāo)記分組和一個或更多個載荷分組,所有所述分組都設(shè)置成沿由源主機(jī)和終點主機(jī)限定的共用端對端路徑傳輸,其中所述一個或更多個載荷分組設(shè)置成經(jīng)過所述端對端路徑到預(yù)定節(jié)點,所述預(yù)定節(jié)點為沿端對端路徑的任何節(jié)點;b)從所述源主機(jī)沿所述共用端對端路徑傳輸所述一個或更多個有序分組組;c)收集與所述一個或更多個有序分組組的傳輸有關(guān)的數(shù)據(jù);以及d)分析所述數(shù)據(jù),從而顯現(xiàn)所述端對端路徑的特性。
全文摘要
本發(fā)明提供一種表征源主機(jī)與終點主機(jī)之間每一段網(wǎng)絡(luò)路徑的方法和設(shè)備。本發(fā)明包括通過發(fā)送和接收特定的預(yù)定有序分組組來收集數(shù)據(jù),該有序分組組是可以改變大小、數(shù)量和協(xié)議的,該分組從源主機(jī)發(fā)送并尋址終點節(jié)點。這些分組組包括策略排列的標(biāo)記分組和載荷分組。載荷分組通常在預(yù)定節(jié)點終止,而標(biāo)記分組完成到達(dá)終點的傳輸。在載荷分組終止后,標(biāo)記分組提供了一種捕獲能夠?qū)χ钡竭@些載荷分組終止的各段進(jìn)行表征的信息的手段。此外,分析收集的信息使得能夠調(diào)節(jié)分組組的特性,從而使網(wǎng)絡(luò)路徑的采樣和表征最優(yōu)化。
文檔編號H04L12/28GK1998186SQ200580008107
公開日2007年7月11日 申請日期2005年2月4日 優(yōu)先權(quán)日2004年2月6日
發(fā)明者洛基·喬根森, 克里斯托弗·R·諾里斯 申請人:阿派倫特網(wǎng)絡(luò)股份有限公司