亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

適用于對稱、非對稱路徑的時鐘偏差測量方法與流程

文檔序號:11959676閱讀:752來源:國知局
適用于對稱、非對稱路徑的時鐘偏差測量方法與流程

本發(fā)明涉及網(wǎng)絡(luò)技術(shù)領(lǐng)域,特別涉及一種適用于對稱、非對稱路徑的時鐘偏差測量方法。



背景技術(shù):

時鐘同步是分布式系統(tǒng)的核心技術(shù)之一,在網(wǎng)絡(luò)管理、網(wǎng)絡(luò)安全、網(wǎng)絡(luò)測量等方面均有廣泛應(yīng)用,而測量進而消除時鐘偏差(某一時刻端系統(tǒng)間不同時鐘時間之間的差值)是實現(xiàn)時鐘同步的關(guān)鍵。

目前,測量時鐘偏差的方法有:硬件同步方法、軟件同步方法。

硬件同步方法主要有兩種技術(shù):GPS(Global Positioning System,全球定位系統(tǒng))和IEEE-1588PTP(Precision Time Protocol,精準時間同步協(xié)議)方法。借助GPS等外部時鐘源,雖可準確消除時鐘偏差,但是這種方式所需硬件價格昂貴且與接收環(huán)境有關(guān);PTP借助硬件設(shè)備將網(wǎng)絡(luò)設(shè)備的時鐘與主控機的主時鐘實現(xiàn)同步,同步過程中,主時鐘周期性發(fā)布時間同步協(xié)議及時間信息,系統(tǒng)據(jù)此計算出主從線路時間延遲及主從時間差,并利用該時間差調(diào)整本地時間,使主從設(shè)備時間保持一致。但該方法不支持非對稱路徑下的時鐘同步,且需要相關(guān)硬件支持。

軟件同步方法,主要有NTP(Network Time Protocol,網(wǎng)絡(luò)時間協(xié)議)以及改進后的SNTP(簡單網(wǎng)絡(luò)時間協(xié)議,Simple Network Time Protocol)。其缺點是,同步的準確性依賴于主機間的路徑特性,方法需基于網(wǎng)絡(luò)路徑為對稱路徑(往返路徑延遲相等)的假設(shè)前提,在非對稱路徑情況下,測量誤差非常大。

目前,隨著互聯(lián)網(wǎng)規(guī)模的不斷擴大,網(wǎng)絡(luò)結(jié)構(gòu)的日益復(fù)雜,非對稱路徑(網(wǎng)絡(luò)端系統(tǒng)在傳輸數(shù)據(jù)時,不同方向上的數(shù)據(jù)流所經(jīng)過的路徑不同或上下行鏈路特性不同)已占網(wǎng)絡(luò)路徑的相當部分,且還有繼續(xù)增大的趨勢。而目前的同步方法主要針對對稱路徑。



技術(shù)實現(xiàn)要素:

本發(fā)明的目的是解決現(xiàn)有技術(shù)中的時鐘偏差測量方法需要額外硬件支持或者針對非對稱路徑測量精度差的技術(shù)問題,提供一種無需借助額外硬件且測量精度高的適用于對稱、非對稱路徑的時鐘偏差測量方法。

為解決上述技術(shù)問題,本發(fā)明所采用的技術(shù)方案如下:

一種適用于對稱、非對稱路徑的時鐘偏差測量方法,其包括下列步驟:

A、發(fā)送主機向接收主機發(fā)送服從泊松分布的第一探測包列和第二探測包列,其中,每個探測包列由多個背靠背探測包對組成,所述第一探測包列中各個探測包的長度均為第一長度S1,所述第二個探測包列中各個探測包的長度均為第二長度S2,且所述第一長度S1不等于所述第二長度S2;所述發(fā)送主機向所述接收主機發(fā)送的探測包列中的每個背靠背探測包對都攜帶有發(fā)送時間戳,所述發(fā)送時間戳為:背靠背探測包對中第1探測包的發(fā)送起始時間t1和背靠背探測包對中第2探測包的發(fā)送起始時間t′1;

B、接收主機接收到發(fā)送主機發(fā)送的兩個探測包列中的探測包后,向所述發(fā)送主機返回每個探測包對應(yīng)的應(yīng)答包,其中,每個應(yīng)答包都攜帶有探測包到達接收主機的接收時間戳及接收主機發(fā)送應(yīng)答包的發(fā)送時間戳;所述接收時間戳為:背靠背探測包對中第1探測包到達接收主機的接收時間t2和背靠背探測包對中第2探測包到達接收主機的接收時間t′2;所述應(yīng)答包的發(fā)送時間戳為:接收主機發(fā)送第1個應(yīng)答包的發(fā)送時間t3和接收主機發(fā)送第2個包應(yīng)答的發(fā)送時間t′3;

C、發(fā)送主機接收到接收主機返回的應(yīng)答包后,記錄每個應(yīng)答包到達發(fā)送主機的時間戳,所述應(yīng)答包到達發(fā)送主機的時間戳為:背靠背探測包對中第1探測包的應(yīng)答包到達發(fā)送主機的接收時間t4和背靠背探測包對中第2探測包的應(yīng)答包到達發(fā)送主機的接收時間t′4;

D、發(fā)送主機統(tǒng)計所述第一個探測包列中各個探測包的時間戳即背靠背探測包對中第1探測包的發(fā)送起始時間t1、背靠背探測包對中第2探測包的發(fā)送起始時間t′1、背靠背探測包對中第1探測包到達接收主機的接收時間t2、背靠背探測包對中第2探測包到達接收主機的接收時間t′2、接收主機發(fā)送第1個應(yīng)答包的發(fā)送時間t3、接收主機發(fā)送第2個包應(yīng)答的發(fā)送時間t′3、背靠背探測包對中第1探測包的應(yīng)答包到達發(fā)送主機的接收時間為t4,背靠背探測包對中第2探測包的應(yīng)答包到達發(fā)送主機的接收時間為t′4,計算所述第一個探測包列中的每個背靠背探測包對從發(fā)送主機到接收主機的第一時延之和:sum((t2-t1)+(t′2-t′1))1;計算所述第一個探測包列中的各個應(yīng)答包對從接收主機到發(fā)送主機的第二時延之和:sum((t4-t3)+(t′4-t′3))1;根據(jù)各個第一時延之和及各個第二時延之和,從中選出最小值并確定所述第一個探測包列中的最小時延和所對應(yīng)的背靠背探測包對、應(yīng)答包對,將該背靠背探測包對和應(yīng)答包對中第1個包的時間戳取出,計算測量所得最小時延值,即得第一個探測包列發(fā)送主機到接收主機的測量最小時延值:min(t2-t1)1和接收主機到發(fā)送主機的測量最小時延值:min(t4-t3)1

E、發(fā)送主機統(tǒng)計所述第二個探測包列中各個探測包的時間戳即背靠背探測包對中第1探測包的發(fā)送起始時間t1、背靠背探測包對中第2探測包的發(fā)送起始時間t′1、背靠背探測包對中第1探測包到達接收主機的接收時間t2、背靠背探測包對中第2探測包到達接收主機的接收時間t′2、接收主機發(fā)送第1個應(yīng)答包的發(fā)送時間t3、接收主機發(fā)送第2個包應(yīng)答的發(fā)送時間t′3、背靠背探測包對中第1探測包的應(yīng)答包到達發(fā)送主機的接收時間為t4,背靠背探測包對中第2探測包的應(yīng)答包到達發(fā)送主機的接收時間為t′4,計算所述第二個探測包列中的每個背靠背探測包對從發(fā)送主機到接收主機的第一時延之和:sum((t2-t1)+(t′2-t′1))2;計算所述第二個探測包列中的各個應(yīng)答包對從接收主機到發(fā)送主機的第二時延之和:sum((t4-t3)+(t′4-t′3))2;根據(jù)各個第一時延之和及各個第二時延之和,從中選出最小值并確定所述第二個探測包列中的最小時延和所對應(yīng)的背靠背探測包對、應(yīng)答包對,將該背靠背探測包對和應(yīng)答包對中第1個包的時間戳取出,計算測量所得最小時延值,即得第二個探測包列發(fā)送主機到接收主機的測量最小時延值:min(t2-t1)2和接收主機到發(fā)送主機的測量最小時延值:min(t4-t3)2

F、發(fā)送主機根據(jù)第一個探測包列發(fā)送主機到接收主機的測量最小時延值:min(t2-t1)1和接收主機到發(fā)送主機的測量最小時延值:min(t4-t3)1、第二個探測包列發(fā)送主機到接收主機的測量最小時延值:min(t2-t1)2和接收主機到發(fā)送主機的測量最小時延值:min(t4-t3)2、第一個探測包列中各個探測包的第一長度S1和第二個探測包列中各個探測包的第二長度S2,通過如下公式確定時鐘偏差:

<mrow> <mi>&Delta;</mi> <mi>C</mi> <mo>=</mo> <mfrac> <mrow> <mo>-</mo> <mi>min</mi> <msub> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mn>2</mn> </msub> <mo>-</mo> <msub> <mi>t</mi> <mn>1</mn> </msub> <mo>)</mo> </mrow> <mn>1</mn> </msub> <mo>&times;</mo> <msub> <mi>S</mi> <mn>2</mn> </msub> <mo>+</mo> <mi>min</mi> <msub> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mn>4</mn> </msub> <mo>-</mo> <msub> <mi>t</mi> <mn>3</mn> </msub> <mo>)</mo> </mrow> <mn>1</mn> </msub> <mo>&times;</mo> <msub> <mi>S</mi> <mn>2</mn> </msub> <mo>+</mo> <mi>m</mi> <mi>i</mi> <mi>n</mi> <msub> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mn>2</mn> </msub> <mo>-</mo> <msub> <mi>t</mi> <mn>1</mn> </msub> <mo>)</mo> </mrow> <mn>2</mn> </msub> <mo>&times;</mo> <msub> <mi>S</mi> <mn>1</mn> </msub> <mo>-</mo> <mi>min</mi> <msub> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mn>4</mn> </msub> <mo>-</mo> <msub> <mi>t</mi> <mn>3</mn> </msub> <mo>)</mo> </mrow> <mn>2</mn> </msub> <mo>&times;</mo> <msub> <mi>S</mi> <mn>1</mn> </msub> </mrow> <mrow> <mn>2</mn> <mrow> <mo>(</mo> <msub> <mi>S</mi> <mn>1</mn> </msub> <mo>-</mo> <msub> <mi>S</mi> <mn>2</mn> </msub> <mo>)</mo> </mrow> </mrow> </mfrac> </mrow>

式中:ΔC表示發(fā)送主機與接收主機之間的時鐘偏差。

本發(fā)明的有益效果是:

通過發(fā)送主機向接收主機發(fā)送兩個由多個背靠背探測包對組成、且包列內(nèi)探測包長度相同、彼此包列間的探測包長度不同的探測包列,并獲取兩個探測包列內(nèi)每個探測包的時間戳信息,以及根據(jù)兩個探測包列內(nèi)每個探測包的時間戳信息確定最小測量時延,進而根據(jù)最小測量時延及兩個探測包列內(nèi)的探測包的長度確定時鐘偏差,從而無需借助額外硬件支持,即可提高測量精度。通過設(shè)置每個探測包列中包括多個背靠背探測包對可以減少排隊時延。通過設(shè)置發(fā)送的兩個探測包列服從泊松分布,不僅使得探測包列中的每個背靠背探測包對可以同等概率被采集,從而可以確保得到準確的測量最小時延,而且測量過程有效地避免與網(wǎng)絡(luò)中存在的周期性事件同步,即避免了總是采樣到網(wǎng)絡(luò)周期性出現(xiàn)的某一狀態(tài)值,從而使得測量結(jié)果更加精準。

附圖說明

圖1是本發(fā)明設(shè)備示意圖;

圖2是本發(fā)明的流程圖;

圖3是本發(fā)明第一探測包列和第二探測包列的構(gòu)成圖;

圖4是本發(fā)明任一探測包對的時間戳示意圖;

圖5是本發(fā)明實施例提供的一種對比實驗拓撲圖;

圖6是本發(fā)明對稱路徑下與NTP方法的實驗比較結(jié)果;圖6中的(a)圖為發(fā)送主機到接收主機時延,圖6中的(b)圖為接收主機到發(fā)送主機時延;

圖7是本發(fā)明非對稱路徑下與NTP方法的實驗比較結(jié)果;圖7中的(a)圖為發(fā)送主機到接收主機時延,圖7中的(b)圖為接收主機到發(fā)送主機時延。

具體實施方式

下面結(jié)合附圖和實施例對本發(fā)明作進一步地詳細描述。

如圖1所示,其示出了本發(fā)明實施例提供的一種適用于對稱、非對稱路徑的時鐘偏差測量方法的設(shè)備示意圖。如圖1所示,該設(shè)備包括發(fā)送主機101和接收主機102。其中,發(fā)送主機101和接收主機102通過網(wǎng)絡(luò)連接。

如圖2所示,本實施例中的一種適用于對稱、非對稱路徑的時鐘偏差測量方法,其包括下列步驟:

A、發(fā)送主機向接收主機發(fā)送服從泊松分布的第一探測包列和第二探測包列,其中,每個探測包列由多個背靠背探測包對組成,所述第一探測包列中各個探測包的長度均為第一長度S1,所述第二個探測包列中各個探測包的長度均為第二長度S2,且所述第一長度S1不等于所述第二長度S2;所述發(fā)送主機向所述接收主機發(fā)送的探測包列中的每個背靠背探測包對都攜帶有發(fā)送時間戳,所述發(fā)送時間戳為:背靠背探測包對中第1探測包的發(fā)送起始時間t1和背靠背探測包對中第2探測包的發(fā)送起始時間t′1

如圖3所示,其示出了一種第一探測包列和第二探測包列的構(gòu)成圖。具體地,發(fā)送主機先向接收主機發(fā)送第一探測包列中的各個背靠背探測包對,直至第一探測包列中的最后一個背靠背探測包對發(fā)送完成后,再向接收主機發(fā)送第二探測包列中的各個背靠背探測包對。在發(fā)送任一探測包列中的任一背靠背探測包對時,先發(fā)送該背靠背探測包對的第1探測包,再發(fā)送該背靠背探測包對的第2探測包。

B、接收主機接收到發(fā)送主機發(fā)送的兩個探測包列中的探測包后,向所述發(fā)送主機返回每個探測包對應(yīng)的應(yīng)答包,其中,每個應(yīng)答包都攜帶有探測包到達接收主機的接收時間戳及接收主機發(fā)送應(yīng)答包的發(fā)送時間戳;所述接收時間戳為:背靠背探測包對中第1探測包到達接收主機的接收時間t2和背靠背探測包對中第2探測包到達接收主機的接收時間t′2;所述應(yīng)答包的發(fā)送時間戳為:接收主機發(fā)送第1個應(yīng)答包的發(fā)送時間t3和接收主機發(fā)送第2個包應(yīng)答的發(fā)送時間t′3。

其中,接收主機接收任一探測包后,均會生成一個該探測包對應(yīng)的應(yīng)答包。由于每個探測包均對應(yīng)一個應(yīng)答包,因此,每個背靠背探測包對均對應(yīng)一個應(yīng)答包對,每個探測包列也對應(yīng)一個應(yīng)答包列。

C、發(fā)送主機接收到接收主機返回的應(yīng)答包后,記錄每個應(yīng)答包到達發(fā)送主機的時間戳,所述應(yīng)答包到達發(fā)送主機的時間戳為:背靠背探測包對中第1探測包的應(yīng)答包到達發(fā)送主機的接收時間t4和背靠背探測包對中第2探測包的應(yīng)答包到達發(fā)送主機的接收時間為t′4。

如圖4所示,其示出了任一背靠背探測包對的時間戳示意圖。t1、t2、t3和t4分別表示該背靠背探測包對中第1探測包在發(fā)送主機的發(fā)送起始時間、第1探測包到達接收主機的接收時間、接收主機發(fā)送該第1探測包的應(yīng)答包的發(fā)送時間及第1探測包的應(yīng)答包到達發(fā)送主機的接收時間。t′1、t′2、t′3和t′4分別表示該背靠背探測包對中第2探測包在發(fā)送主機的發(fā)送起始時間、第2探測包到達接收主機的接收時間、接收主機發(fā)送該第2探測包的應(yīng)答包的發(fā)送時間及第2探測包的應(yīng)答包達到發(fā)送主機的接收時間。

D、發(fā)送主機統(tǒng)計所述第一個探測包列中各個探測包的時間戳即背靠背探測包對中第1探測包的發(fā)送起始時間t1、背靠背探測包對中第2探測包的發(fā)送起始時間t′1、背靠背探測包對中第1探測包到達接收主機的接收時間t2、背靠背探測包對中第2探測包到達接收主機的接收時間t′2、接收主機發(fā)送第1個應(yīng)答包的發(fā)送時間t3、接收主機發(fā)送第2個包應(yīng)答的發(fā)送時間t′3、背靠背探測包對中第1探測包的應(yīng)答包到達發(fā)送主機的接收時間為t4,背靠背探測包對中第2探測包的應(yīng)答包到達發(fā)送主機的接收時間為t′4,計算所述第一個探測包列中的每個背靠背探測包對從發(fā)送主機到接收主機的第一時延之和:sum((t2-t1)+(t′2-t′1))1;計算所述第一個探測包列中的各個應(yīng)答包對從接收主機到發(fā)送主機的第二時延之和:sum((t4-t3)+(t′4-t′3))1;根據(jù)各個第一時延之和及各個第二時延之和,從中選出最小值并確定所述第一個探測包列中的最小時延和所對應(yīng)的背靠背探測包對、應(yīng)答包對,將該背靠背探測包對和應(yīng)答包對中第1個包的時間戳取出,計算測量所得最小時延值,即得第一個探測包列發(fā)送主機到接收主機的測量最小時延值:min(t2-t1)1和接收主機到發(fā)送主機的測量最小時延值:min(t4-t3)1。

E、發(fā)送主機統(tǒng)計所述第二個探測包列中各個探測包的時間戳即背靠背探測包對中第1探測包的發(fā)送起始時間t1、背靠背探測包對中第2探測包的發(fā)送起始時間t′1、背靠背探測包對中第1探測包到達接收主機的接收時間t2、背靠背探測包對中第2探測包到達接收主機的接收時間t′2、接收主機發(fā)送第1個應(yīng)答包的發(fā)送時間t3、接收主機發(fā)送第2個包應(yīng)答的發(fā)送時間t′3、背靠背探測包對中第1探測包的應(yīng)答包到達發(fā)送主機的接收時間為t4,背靠背探測包對中第2探測包的應(yīng)答包到達發(fā)送主機的接收時間為t′4,計算所述第二個探測包列中的每個背靠背探測包對從發(fā)送主機到接收主機的第一時延之和:sum((t2-t1)+(t′2-t′1))2;計算所述第二個探測包列中的各個應(yīng)答包對從接收主機到發(fā)送主機的第二時延之和:sum((t4-t3)+(t′4-t′3))2;根據(jù)各個第一時延之和及各個第二時延之和,從中選出最小值并確定所述第二個探測包列中的最小時延和所對應(yīng)的背靠背探測包對、應(yīng)答包對,將該背靠背探測包對和應(yīng)答包對中第1個包的時間戳取出,計算測量所得最小時延值,即得第二個探測包列發(fā)送主機到接收主機的測量最小時延值:min(t2-t1)2和接收主機到發(fā)送主機的測量最小時延值:min(t4-t3)2。

F、發(fā)送主機根據(jù)第一個探測包列發(fā)送主機到接收主機的測量最小時延值:min(t2-t1)1和接收主機到發(fā)送主機的測量最小時延值:min(t4-t3)1、第二個探測包列發(fā)送主機到接收主機的測量最小時延值:min(t2-t1)2和接收主機到發(fā)送主機的測量最小時延值:min(t4-t3)2、第一個探測包列中各個探測包的第一長度S1和第二個探測包列中各個探測包的第二長度S2,通過如下公式確定時鐘偏差:

<mrow> <mi>&Delta;</mi> <mi>C</mi> <mo>=</mo> <mfrac> <mrow> <mo>-</mo> <mi>min</mi> <msub> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mn>2</mn> </msub> <mo>-</mo> <msub> <mi>t</mi> <mn>1</mn> </msub> <mo>)</mo> </mrow> <mn>1</mn> </msub> <mo>&times;</mo> <msub> <mi>S</mi> <mn>2</mn> </msub> <mo>+</mo> <mi>min</mi> <msub> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mn>4</mn> </msub> <mo>-</mo> <msub> <mi>t</mi> <mn>3</mn> </msub> <mo>)</mo> </mrow> <mn>1</mn> </msub> <mo>&times;</mo> <msub> <mi>S</mi> <mn>2</mn> </msub> <mo>+</mo> <mi>m</mi> <mi>i</mi> <mi>n</mi> <msub> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mn>2</mn> </msub> <mo>-</mo> <msub> <mi>t</mi> <mn>1</mn> </msub> <mo>)</mo> </mrow> <mn>2</mn> </msub> <mo>&times;</mo> <msub> <mi>S</mi> <mn>1</mn> </msub> <mo>-</mo> <mi>min</mi> <msub> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mn>4</mn> </msub> <mo>-</mo> <msub> <mi>t</mi> <mn>3</mn> </msub> <mo>)</mo> </mrow> <mn>2</mn> </msub> <mo>&times;</mo> <msub> <mi>S</mi> <mn>1</mn> </msub> </mrow> <mrow> <mn>2</mn> <mrow> <mo>(</mo> <msub> <mi>S</mi> <mn>1</mn> </msub> <mo>-</mo> <msub> <mi>S</mi> <mn>2</mn> </msub> <mo>)</mo> </mrow> </mrow> </mfrac> </mrow>

式中:ΔC表示發(fā)送主機與接收主機之間的時鐘偏差。

下面結(jié)合非對稱路徑和對稱路徑的特征,推導(dǎo)上述實施例提出的方法,從而得出上述方法能夠比較精準地測量對稱路徑和非對稱路徑的時鐘偏差。

情況一:針對非對稱路徑的情況

具體地,非對稱路徑情況下,即DSR≠DRS(當DSR=DRS時,即為對稱路徑情況)時,時鐘偏差的計算過程通??梢员硎緸椋?/p>

t2=t1+DSR+ΔC (1)

t4=t3+DRS-ΔC (2)

式(1)減式(2)可得:

<mrow> <mi>&Delta;</mi> <mi>C</mi> <mo>=</mo> <mfrac> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mn>2</mn> </msub> <mo>-</mo> <msub> <mi>t</mi> <mn>1</mn> </msub> <mo>)</mo> <mo>-</mo> <mo>(</mo> <msub> <mi>t</mi> <mn>4</mn> </msub> <mo>-</mo> <msub> <mi>t</mi> <mn>3</mn> </msub> <mo>)</mo> <mo>+</mo> <mo>(</mo> <msub> <mi>D</mi> <mrow> <mi>R</mi> <mi>S</mi> </mrow> </msub> <mo>-</mo> <msub> <mi>D</mi> <mrow> <mi>S</mi> <mi>R</mi> </mrow> </msub> <mo>)</mo> </mrow> <mn>2</mn> </mfrac> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>3</mn> <mo>)</mo> </mrow> </mrow>

DSR表示從發(fā)送主機SND到接收主機RCV的單向時延;DRS表示從接收主機RCV到發(fā)送主機SND的單向時延;ΔC表示接收主機RCV與發(fā)送主機SND之間的時鐘偏差;CSND表示發(fā)送主機時鐘;CRCV表示接收主機時鐘。

通常,端到端的時延由排隊時延、傳輸時延、傳播時延、處理時延組成。目前路由器的處理時延可達納秒級,網(wǎng)絡(luò)中設(shè)備處理時延通常可以忽略不計。由于網(wǎng)絡(luò)不可能總是處于擁塞狀態(tài),所以通過多次測量也可剔除排隊時延,因此,通過設(shè)置每個探測包列中包括多個背靠背探測包對可以進一步減少排隊時延。網(wǎng)絡(luò)測量領(lǐng)域已有研究成果從理論和實驗的角度均證明,通過發(fā)送多個探測包能以極大概率獲得最小時延(僅包括傳輸時延和傳播時延,本發(fā)明將其稱為理論最小時延),取包對時延和最小的方式又可進一步剔出排隊時延和網(wǎng)絡(luò)噪聲對最小測量時延的影響。為避免背靠背探測包對在傳輸過程中,背靠背探測包對中頭包對尾隨包時延的影響,本發(fā)明在計算最小測量時延時主要以頭包的時間戳為依據(jù)。

綜上,端對端之間的最小時延minDelcy由傳播時延Tg和傳輸時延Tt組成,即:

minDelay≈Tg+Tt (4)

由于傳輸時延與探測包長度成正比,則傳輸時延Tt與探測包長度關(guān)系如下:

Tt=k×S (5)

其中,k為常數(shù),取值主要與鏈路固有帶寬相關(guān),單位為1/Mbps,S為探測包長度,單位為比特;在單跳路徑中k的取值為鏈路帶寬的倒數(shù),在H跳網(wǎng)絡(luò)中k的取值為b為各鏈路帶寬。顯然,在單跳或多跳網(wǎng)絡(luò)中式(5)均成立。

綜上,式(4)可寫為:

minDelay=Tg+k×S (6)

由于非對稱路徑往返路徑傳輸時延不相等,則有

minDSR=Tg+k1×S (7)

minDRS=T′g+k2×S (8)

由于網(wǎng)絡(luò)中往返路徑長度基本相同,而包的傳播時延主要由電磁波在信道上傳播速率決定,

因此,Tg和T′g可認為近似相等。

則式(1)和式(2)又可寫為

min(t2-t1)=(Tg+k1×S)+ΔC (9)

min(t4-t3)=(Tg+k2×S)-ΔC (10)

<mrow> <mi>&Delta;</mi> <mi>C</mi> <mo>=</mo> <mfrac> <mrow> <mi>min</mi> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mn>2</mn> </msub> <mo>-</mo> <msub> <mi>t</mi> <mn>1</mn> </msub> <mo>)</mo> </mrow> <mo>-</mo> <mi>min</mi> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mn>4</mn> </msub> <mo>-</mo> <msub> <mi>t</mi> <mn>3</mn> </msub> <mo>)</mo> </mrow> <mo>-</mo> <mrow> <mo>(</mo> <msub> <mi>k</mi> <mn>1</mn> </msub> <mo>-</mo> <msub> <mi>k</mi> <mn>2</mn> </msub> <mo>)</mo> </mrow> <mo>&times;</mo> <mi>S</mi> </mrow> <mn>2</mn> </mfrac> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>11</mn> <mo>)</mo> </mrow> </mrow>

在本發(fā)明中,將min(t2-t1)、min(t4-t3)定義為測量最小時延,min(t2-t1)表示探測包在接收主機的接收時間t2與探測包在發(fā)送主機的起始發(fā)送時間t1之差中的最小值,該值由理論最小值時延值(minDSR)與端系統(tǒng)間的時鐘偏差(ΔC)組成。min(t4-t3)表示應(yīng)答包從接收主機返回發(fā)送主機的時間t4與應(yīng)答包到達接收主機的時間t3之差中的最小值。

因在測量過程中尚還無法得到k的具體數(shù)值,且為了能夠進行方程變量約減,本發(fā)明中采用發(fā)送兩個不同探測包列,且這兩個探測包列中的探測包長度不同,過程如下:

發(fā)送第1個探測包列,

min(t2-t1)1=Tg+k1×S1+ΔC (12)

min(t4-t3)1=Tg+k2×S1-ΔC (13)

式中,min(t2-t1)1表示第1個探測包列獲得的從發(fā)送主機到接收主機的測量最小時延;min(t4-t3)1表示第1個探測包列獲得的從接收主機到發(fā)送主機的測量最小時延;S1表示第1個探測包列中每個探測包的長度,即第一長度。

接下來,求k1-k2可得:

min(t2-t1)1-min(t4-t3)1=(k1-k2)×S1+2ΔC (14)

發(fā)送第2個探測包列,

min(t2-t1)2=Tg+k1×S2+ΔC (15)

min(t4-t3)2=Tg+k2×S2-ΔC (16)

式中,min(t2-t1)2表示第2個探測包列獲得的從發(fā)送主機到接收主機的測量最小時延;min(t4-t3)2表示第2個探測包列獲得的從接收主機到發(fā)送主機的測量最小時延;S2表示第2個探測包列中的包長度。

求k1-k2,可得:

min(t2-t1)2-min(t4-t3)2=(k1-k2)×S2+2ΔC (17)

由式(14)和式(17)可得:

<mrow> <msub> <mi>k</mi> <mn>1</mn> </msub> <mo>-</mo> <msub> <mi>k</mi> <mn>2</mn> </msub> <mo>=</mo> <mfrac> <mrow> <mi>min</mi> <msub> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mn>2</mn> </msub> <mo>-</mo> <msub> <mi>t</mi> <mn>1</mn> </msub> <mo>)</mo> </mrow> <mn>1</mn> </msub> <mo>-</mo> <mi>m</mi> <mi>i</mi> <mi>n</mi> <msub> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mn>4</mn> </msub> <mo>-</mo> <msub> <mi>t</mi> <mn>3</mn> </msub> <mo>)</mo> </mrow> <mn>1</mn> </msub> <mo>-</mo> <mi>min</mi> <msub> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mn>2</mn> </msub> <mo>-</mo> <msub> <mi>t</mi> <mn>1</mn> </msub> <mo>)</mo> </mrow> <mn>2</mn> </msub> <mo>+</mo> <mi>min</mi> <msub> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mn>4</mn> </msub> <mo>-</mo> <msub> <mi>t</mi> <mn>3</mn> </msub> <mo>)</mo> </mrow> <mn>2</mn> </msub> </mrow> <mrow> <msub> <mi>S</mi> <mn>1</mn> </msub> <mo>-</mo> <msub> <mi>S</mi> <mn>2</mn> </msub> </mrow> </mfrac> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>18</mn> <mo>)</mo> </mrow> </mrow>

由式(14)和式(18)可得:

<mrow> <mi>&Delta;</mi> <mi>C</mi> <mo>=</mo> <mfrac> <mrow> <mo>-</mo> <mi>min</mi> <msub> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mn>2</mn> </msub> <mo>-</mo> <msub> <mi>t</mi> <mn>1</mn> </msub> <mo>)</mo> </mrow> <mn>1</mn> </msub> <mo>&times;</mo> <msub> <mi>S</mi> <mn>2</mn> </msub> <mo>+</mo> <mi>min</mi> <msub> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mn>4</mn> </msub> <mo>-</mo> <msub> <mi>t</mi> <mn>3</mn> </msub> <mo>)</mo> </mrow> <mn>1</mn> </msub> <mo>&times;</mo> <msub> <mi>S</mi> <mn>2</mn> </msub> <mo>+</mo> <mi>m</mi> <mi>i</mi> <mi>n</mi> <msub> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mn>2</mn> </msub> <mo>-</mo> <msub> <mi>t</mi> <mn>1</mn> </msub> <mo>)</mo> </mrow> <mn>2</mn> </msub> <mo>&times;</mo> <msub> <mi>S</mi> <mn>1</mn> </msub> <mo>-</mo> <mi>min</mi> <msub> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mn>4</mn> </msub> <mo>-</mo> <msub> <mi>t</mi> <mn>3</mn> </msub> <mo>)</mo> </mrow> <mn>2</mn> </msub> <mo>&times;</mo> <msub> <mi>S</mi> <mn>1</mn> </msub> </mrow> <mrow> <mn>2</mn> <mrow> <mo>(</mo> <msub> <mi>S</mi> <mn>1</mn> </msub> <mo>-</mo> <msub> <mi>S</mi> <mn>2</mn> </msub> <mo>)</mo> </mrow> </mrow> </mfrac> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>19</mn> <mo>)</mo> </mrow> </mrow>

依式(19)則可得到非對稱路徑下發(fā)送主機與接收主機之間的時鐘偏差。

由上述過程可知,本發(fā)明提出的方法能夠適用于非對稱路徑,且上述實施例中提供的方法在測量非對稱路徑的時鐘偏差時,結(jié)合了非對稱路徑的具體情況實現(xiàn),因此,使用上述方法測量非對稱路徑的時鐘偏差時,測量結(jié)果比較準確。

情況二:針對對稱路徑的情況

在對稱路徑情況下,即DSR=DRS,亦即k1≈k2。由式(11)可知,時鐘偏差計算公式簡化如下。

<mrow> <mi>&Delta;</mi> <mi>C</mi> <mo>=</mo> <mfrac> <mrow> <mi>min</mi> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mn>2</mn> </msub> <mo>-</mo> <msub> <mi>t</mi> <mn>1</mn> </msub> <mo>)</mo> </mrow> <mo>-</mo> <mi>min</mi> <mrow> <mo>(</mo> <msub> <mi>t</mi> <mn>4</mn> </msub> <mo>-</mo> <msub> <mi>t</mi> <mn>3</mn> </msub> <mo>)</mo> </mrow> </mrow> <mn>2</mn> </mfrac> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>20</mn> <mo>)</mo> </mrow> </mrow>

依式(20)則可得到對稱路徑下發(fā)送主機與接收主機之間的時鐘偏差。而min(t2-t1)和min(t4-t3)既可以根據(jù)第一探測包列確定,也可以根據(jù)第二探測包列確定,還可以取第一探測包列和第二探測包列測量得到的平均值等。

進一步地,為了驗證上述實施例所述的方法測量時鐘偏差的準確性,本發(fā)明還對上述測量時鐘偏差的方法進行了實驗驗證。

實施例1:對稱路徑情況下實驗驗證。

本實施例基于NIST Net仿真平臺進行對稱路徑條件下時鐘偏差測量對比實驗。

使用GPS或原子鐘等外部時鐘源,雖可準確檢驗測量所得的時鐘偏差是否正確,但是這種方式所需硬件價格昂貴,實施復(fù)雜??紤]到單向時延測量需在時鐘偏差測量的基礎(chǔ)之上,因此,我們通過對單向時延測量值的分析來檢驗時鐘偏差的測量精度。實驗中先測量得到時鐘偏差,然后以此時鐘偏差值修改接收主機時鐘,進行系統(tǒng)間時鐘同步,最后測量得到單向時延值。

采用網(wǎng)絡(luò)模擬軟件NIST Net模擬網(wǎng)絡(luò)路徑情況,如圖5所示,設(shè)置往返路徑帶寬分別為0.1Mpbs和0.1Mpbs。僅考慮探測包的傳播和傳輸時延,忽略網(wǎng)絡(luò)轉(zhuǎn)發(fā)數(shù)據(jù)包時間及程序的處理等時間的情況下,仿真平臺的單向時延理論值易于求得。數(shù)據(jù)包數(shù)據(jù)域長度(1000B)加上頭部長度,探測包的總長度1042字節(jié),在不同帶寬環(huán)境下傳輸時延值分別為:(1042*8)/100000=83.36ms;在實驗室環(huán)境下,因傳輸距離較短,傳播時延可忽略??蓪?3.36ms當作發(fā)送主機到接收主機,接收主機到發(fā)送主機時延的理論參考值(理想值)。在不引入外部時鐘源的情況下。用NTP方法得出時鐘偏差,而后測得單向時延測量結(jié)果進行對比。按本發(fā)明提出的方法計算時鐘偏差后,而后測量得到不同方向單向時延的平均值為:84.026ms、84.052ms;NTP方法計算時鐘偏差后,而后測量得到的單向時延值分別為:84.036ms、84.047ms。由此可得,針對對稱路徑的情況,本實施例與NTB方法所測量的時鐘偏差的精度基本相當。如圖6所示,其示出了對稱路徑下本發(fā)明與NTP方法的實驗比較結(jié)果圖。圖6中的(a)圖為發(fā)送主機到接收主機時延,圖6中的(b)圖為接收主機到發(fā)送主機時延。

實施例2:非對稱路徑情況下實驗驗證

本實施例基于NIST仿真平臺進行了非對稱路徑下時鐘偏差測量對比實驗。

采用網(wǎng)絡(luò)模擬軟件NIST Net模擬網(wǎng)絡(luò)路徑情況,設(shè)置往返路徑帶寬分別為0.1Mpbs和1Mpbs。僅考慮探測包的傳播和傳輸時延,忽略網(wǎng)絡(luò)轉(zhuǎn)發(fā)數(shù)據(jù)包時間及程序的處理等時間的情況下,仿真平臺的單向時延值易于求得。數(shù)據(jù)包數(shù)據(jù)域長度(1000B)加上頭部長度,探測包的總長度1042字節(jié),在不同帶寬環(huán)境下傳輸時延值分別為:(1042*8)/100000=83.36ms;(1042*8)/1000000=8.336ms。在實驗室環(huán)境下,因傳輸距離較短,傳播時延可忽略??蓪?3.36ms和8.336ms當作不同方向單向時延的理論參考值(理想值)。在不引入外部時鐘源的情況下,用NTP方法得出時鐘偏差,而后測得單向時延測量結(jié)果進行對比。按本發(fā)明提出的方法計算時鐘偏差后,而后測量得到不同方向單向時延的平均值為:84.043ms、9.251ms;NTP方法計算時鐘偏差后,而后測量得到的單向時延值分別為:46.770ms、46.636ms。實驗結(jié)果表明,在非對稱路徑下,本發(fā)明的測量結(jié)果與理論值非常接近,明顯優(yōu)于NTP方法。如圖7所示,其示出了一種非對稱路徑下本發(fā)明與NTP方法的實驗比較結(jié)果;圖7中的(a)圖為發(fā)送主機到接收主機時延,圖7中的(b)圖為接收主機到發(fā)送主機時延。

上述實驗證明了本發(fā)明提出的方法在對稱、非對稱路徑下測量時鐘偏差的可行性和準確性。

當前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1