欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

估計擁塞的方法

文檔序號:7848296閱讀:275來源:國知局
專利名稱:估計擁塞的方法
技術領域
本發(fā)明涉及估計擁塞的方法、在連接的端點處處理數(shù)據(jù)的方法、適于執(zhí)行這些方法中的ー種或兩種的設備、以及包括程序代碼的計算機程序產(chǎn)品,所述程序代碼適于當在處理器上運行時執(zhí)行這些方法中的ー種或兩種的步驟。在通信系統(tǒng)中,提供了通信網(wǎng)絡,其可以將兩 個端點裝置或設備鏈接在一起,以使得所述端點設備可以在呼叫或其他通信事件中互相發(fā)送信息。所述信息可以包括語音、文本、圖像或視頻,并且所述設備中的一個或兩個可以包括諸如個人計算機或移動電話這樣的用戶終端。通過互聯(lián)網(wǎng)可操作的通信系統(tǒng)包括互聯(lián)網(wǎng)協(xié)議上的話音(“VoIP”)系統(tǒng),其包括通過互聯(lián)網(wǎng)或通過任何其他的基于IP的通信網(wǎng)絡的會話中的話音的路由。這樣的系統(tǒng)對用戶是有益的,因為它們通常具有比傳統(tǒng)的固定線路或移動電信網(wǎng)絡顯著低的成本。對于長距離的通信來說尤其如此。為了使用VoIP系統(tǒng),用戶安裝和執(zhí)行他們的設備(S卩,用戶終端)的客戶機軟件??蛻魴C軟件建立VoIP連接并提供其他的功能,例如注冊和鑒別。除了話音通信外,客戶機還可以建立針對其它通信媒體的連接,諸如視頻呼叫、即時消息(頂)、SMS消息傳送、文件傳送和話音郵件。用于基于分組的通信的一種類型的通信系統(tǒng)使用對等(“P2P”)拓撲。為了使得能訪問對等系統(tǒng),用戶必須在他們的設備上執(zhí)行由P2P軟件提供者提供的P2P客戶機軟件,并且向P2P系統(tǒng)注冊。在用戶向P2P系統(tǒng)注冊吋,客戶機軟件被提供以來自服務器的數(shù)字證書。一旦客戶機軟件已經(jīng)被提供以所述證書,則呼叫或其他的通信連接便可以隨后在P2P系統(tǒng)的用戶間被建立和路由,而無需在建立中進ー步使用服務器。相反,客戶機從分布于P2P系統(tǒng)內(nèi)的終端用戶設備上的P2P客戶機軟件中間的信息查找需要的IP地址。即,地址查找列表被分布在對等體自身中間。一旦被呼叫方的終端的IP地址被這樣地確定,則呼叫方的P2P客戶機軟件就與被呼叫方的P2P客戶機軟件交換證書。用戶間的數(shù)字證書(或“用戶身份證書”,“UIC”)的交換提供了用戶身份的證據(jù),并且它們在P2P系統(tǒng)中被適當?shù)厥跈嗪丸b別。因此,數(shù)字證書的呈現(xiàn)提供了對用戶身份的信任。因此,對等通信的特征在于一旦被注冊,用戶就可以基于分布式地址查找和/或ー個或多個數(shù)字證書的交換,以至少部分分散的方式來通過P2P系統(tǒng)建立他們自己的通信路由,而無需為那些目的使用服務器。示例性的P2P系統(tǒng)的進一步的細節(jié)可以在WO2005/009019中找到。VoIP或其他的基于分組的通信也可以通過使用非P2P系統(tǒng)來實施,這些非P2P系統(tǒng)確實使用例如經(jīng)由服務器或移動電信網(wǎng)絡的集中式呼叫建立和/或鑒別?,F(xiàn)代通信系統(tǒng)是基于在跨越基于分組的通信網(wǎng)絡(諸如互聯(lián)網(wǎng))的端點(諸如用戶終端)之間的數(shù)字信號的傳輸。諸如語音這樣的模擬信息可以被輸入到ー個終端的傳送器處的模擬-數(shù)字轉(zhuǎn)換器,并被轉(zhuǎn)換為數(shù)字信號。數(shù)字信號然后被編碼并被放入數(shù)據(jù)分組中以便經(jīng)由基于分組的網(wǎng)絡在信道上傳輸給另ー個終端的接收器。這樣的基于分組的通信系統(tǒng)受制于可能會對兩個端點間的呼叫或其他通信事件的質(zhì)量產(chǎn)生不利影響的因素。由于互聯(lián)網(wǎng)的發(fā)展增進以及用戶要求新的應用和更好的性能,數(shù)據(jù)量的上升產(chǎn)生了一些問題,諸如分組遞送時的長延遲、丟失和丟棄的分組、震蕩和同步問題。這些麻煩是由擁塞引起的,擁塞在有太多源對于網(wǎng)絡太快發(fā)送太多數(shù)據(jù)以致無法處理時發(fā)生。從發(fā)送端點發(fā)送的數(shù)據(jù)分組在到達接收端點之前典型地經(jīng)過互聯(lián)網(wǎng)中的ー個或多個路由器?;ヂ?lián)網(wǎng)路由器典型地維持ー組隊列,每個接ロ有ー個隊列,其保存被調(diào)度來從該接口上出去的分組。這些隊列通常使用尾部丟棄規(guī)則,其中如果該隊列短于它的最大尺寸,則使分組進入該隊列。當隊列被填充到它的最大容量時,新到達的分組被丟棄,直到該隊列具有足夠的空間來接受進入的通信量為止。尾部丟棄隊列具有懲罰(penalize)突發(fā)流以及引起流間的全局同步的傾向。尾部丟棄隊列以同樣的方式對待每個分組。常常是來自多個連接的分組被丟棄,這導致在連接中所有牽涉到的發(fā)送者進入“緩慢開始”狀態(tài),其中所有的發(fā)送者降低它們的數(shù)據(jù)發(fā)送速率達某個時間段。常常是所有的發(fā)送者在再一次增加它們的發(fā)送速率前使用相同的時間延遲。因此,當這些延遲在相同的時間期滿時,所有的發(fā)送者開始發(fā)送額外的分組,那么路由器隊列再一次溢出,導致更多的分組被丟棄。結(jié)果, 發(fā)送者再一次降低它們的數(shù)據(jù)發(fā)送速率達固定的延遲期。這是帶寬的ー種低效率使用,因為可用的帶寬經(jīng)常沒有被使用,并且由于大量的丟棄的分組,使得可用的帶寬被使用于丟失分組的重傳。如果互聯(lián)網(wǎng)中的路由器運行主動隊列管理(AQM)并使用顯式擁塞通知(ECN)標記將信息反饋給連接的端點,則網(wǎng)絡擁塞控制的性能可以得到改進。AQM是這樣一種技術,其包括在分組綁定的隊列滿之前丟棄該分組或?qū)υ摲纸M進行ECN-標記。典型地,這些路由器通過維持ー個或多個概率,且甚至在隊列短時概率性地丟棄或標記分組來操作。當使用ECN時,路由器能夠在分組的頭標中設置標志而不是丟棄分組,以便用信號告知下游接收器擁塞的程度。所述標志包括在頭標中的兩個比持。接收器將擁塞指示回送給分組的發(fā)送者,發(fā)送者然后就像檢測到分組丟棄一祥做出反應。通過概率性地丟棄分組,AQM規(guī)則典型地避免了懲罰突發(fā)流。而且,通過在隊列滿之前向連接的端點(例如,用戶終端)提供擁塞指示,AQM規(guī)則典型地能夠維持比尾部丟棄規(guī)則更短的隊列長度,這降低了網(wǎng)絡等待時間(“ping(查驗)時間”)。早期檢測并通知即將發(fā)生的擁塞有助于避免全局同歩?;ヂ?lián)網(wǎng)擁塞控制在源(端點)的傳輸層中被實行,并具有兩個部分端到端協(xié)議TCP (傳輸控制協(xié)議)和在路由器中實施的AQM方案。最常見的AQM目標是高效的隊列利用(即,最小化隊列上溢和下溢的發(fā)生,由此減少分組丟失和最大化鏈路利用)、小的排隊延遲(即,最小化數(shù)據(jù)分組由路由隊列進行服務所需要的時間)和魯棒性(即,盡管條件改變?nèi)跃S持閉環(huán)性能)。已經(jīng)提出用于AQM方案的不同的算法,諸如RED(隨機早期檢測)以及它的變體PI、REM、Blue、AVQ等等。RED監(jiān)視路由器處的平均隊列尺寸,并且基于統(tǒng)計概率丟棄(或者當結(jié)合ECN使用時標記)分組。如果隊列是空的或近乎空的,則接受所有進入的分組。隨著隊列長度的增長,標記或丟棄進入的分組的概率也隨之增加。當緩沖器滿時,進入的分組被丟棄。隨著被標記的分組的比例増加,在分組的源(即,經(jīng)過路由器的連接的端點)處的速率控制器反應性地降低分組的發(fā)送速率。Mingyu Chen 等人的在 2009 年 4 月的 IEEE/ACM TRANSACTION ON NETWORKING,Voi 17, No: 2 上發(fā)表的“Normalized Queueing Delay: Congestion Control JointlyUtilizing Delay and Marking (歸ー化的排隊延遲連帶地利用延遲和標記的擁塞控制)”討論了延遲和標記(D+M) TCP,其可以在連接的端點處被利用來控制它的數(shù)據(jù)傳輸速率。AQM在路由器處實施,在那里可以輕易地監(jiān)控實際的隊列。然而,當前只有一小部分路由器實施AQM和支持ECN。相反,大部分的路由器使用尾部丟棄原則。因此,遠遠不能保證在攜帶涉及兩個端點間用戶的呼叫或其他通信事件的信息的分組的傳輸中牽涉到的所有路由器將支持AQM和ECN。就這一點而論,攜帯針對用戶的呼叫或其他通信事件的數(shù)據(jù)的分組很可能被路由器處的尾部丟棄隊列所丟棄,而不是使用ECN標記和使用AQM來向預期的接收器前迸。因此,呼叫或其他通信事件的質(zhì)量很可能被不利地影響。呼叫或其他通信事件的低質(zhì)量對于用戶來說會是令人失望的,并可能使得他或她尋求可替換的通信方法。本發(fā)明的一些實施例的目的是解決這些問題中的ー個或多個。所以,本發(fā)明提供了用于實施來試圖增強網(wǎng)絡擁塞控制的性能的一種或多種系統(tǒng)和方法。
因此,本發(fā)明的第一方面提供了一種控制經(jīng)由路由器通過網(wǎng)絡路徑從傳送器傳送到接收器的通信量的方法,所述通信量包括多個分組,以及所述方法包括在所述傳送器和接收器中的ー個處,基于針對通信量從傳送器行進到接收器的最大的觀察到的延遲來估計在路由器的緩沖器處的最大排隊延遲,且基于針對ー個或多個指定分組從傳送器行進到接收器的觀察到的延遲來估計在該路由器的緩沖器處的當前排隊延遲;以及基于當前排隊延遲和最大排隊延遲的所述估計,控制通過所述網(wǎng)絡路徑的在傳送器和接收器之間的通信量。本發(fā)明的第二方面提供了一種控制經(jīng)由路由器通過網(wǎng)絡路徑在傳送器和接收器之間傳送的通信量的方法,所述通信量包括多個分組,以及所述方法包括在所述傳送器和接收器中的ー個處,基于針對通信量從傳送器行進到接收器的最大的觀察到的延遲來估計在路由器的緩沖器處的最大排隊延遲,且基于針對ー個或多個指定分組從傳送器行進到接收器的觀察到的延遲來估計在該路由器的緩沖器處的當前排隊延遲;以及基于當前排隊延遲和最大排隊延遲的所述估計,將反饋從所述傳送器和接收器中的所述ー個發(fā)送到所述傳送器和接收器中的另ー個,該反饋用于使得所述傳送器和接收器的所述另ー個控制通過網(wǎng)絡路徑的通信量。本發(fā)明的第三個方面提供了一種在經(jīng)由路由器通過網(wǎng)絡路徑從傳送器傳送到接收器的分組中設置指示符的方法,其中所述指示符被設置成提供網(wǎng)絡擁塞的指示以使得多個分組從傳送器到接收器的傳輸速率可以被控制,所述方法包括在所述傳送器和接收器中的ー個處,基于針對通信量從傳送器行進到接收器的最大的觀察到的延遲來估計路由器的緩沖器處的最大排隊延遲,且基于針對ー個或多個指定分組從傳送器行進到接收器的觀察到的延遲來估計在該路由器的緩沖器處的當前排隊延遲;以及在所述傳送器和接收器中的ー個處,基于當前排隊延遲和最大排隊延遲的所述估計來在分組中設置指示符。本發(fā)明的第四方面提供了 ー種包括代碼的計算機程序產(chǎn)品,所述代碼被安排成使得當其在處理器上被執(zhí)行時完成第一到第三方面的任一方面的步驟。本發(fā)明的第五方面提供了一種傳送器,其包括用于基于針對通信量從傳送器行進到接收器的最大的觀察到的延遲來估計在傳送器和接收器之間的網(wǎng)絡路徑上路由器的緩沖器處的最大排隊延遲的裝置;用于基于針對ー個或多個指定分組從傳送器行進到接收器的觀察到的延遲來估計在該路由器的緩沖器處的當前排隊延遲的裝置;以及用于基于當前排隊延遲和最大排隊延遲的所述估計來控制通過所述網(wǎng)絡路徑的在傳送器和接收器之間的通信量的裝置。本發(fā)明的第六方面提供了一種接收器,其包括用于基于針對通信量從傳送器行進到接收器的最大的觀察到的延遲來估計在傳送器和接收器之間的網(wǎng)絡路徑上路由器的緩沖器處的最大排隊延遲的裝置;用于基于針對ー個或多個指定分組從傳送器行進到接收器的觀察到的延遲來估計該路由器的緩沖器處的當前排隊延遲的裝置;以及用于基于當前排隊延遲和最大排隊延遲的所述估計來控制通過所述網(wǎng)絡路徑的在傳送器和接收器之間的通信量的裝置。本發(fā)明的第七方面提供了一種傳送器,其包括用于基于針對通信量從傳送器行進到接收器的最大的觀察到的延遲來估計在傳送器和接收器之間的網(wǎng)絡路徑上路由器的緩沖器處的最大排隊延遲的裝置;用于基于針對ー個或多個指定分組從傳送器行進到接收器的觀察到的延遲來估計該路由器的緩沖器處的當前排隊延遲的裝置;以及用于基于當前排隊延遲和最大排隊延遲的所述估計來向所述接收器發(fā)送反饋的裝置,該反饋用于使得所述接收器控制通過網(wǎng)絡路徑的通信量。本發(fā)明的第八方面提供了一種接收器,其包括用于基于針對通信量從傳送器行進到接收器的最大的觀察到的延遲來估計在傳送器和接收器之間的網(wǎng)絡路徑上路由器的緩沖器處的最大排隊延遲的裝置;用于基于針對ー個或多個指定分組從傳送器行進到接收器的觀察到的延遲來估計該路由器的緩沖器處的當前排隊延遲的裝置;以及用于基于當前排隊延遲和最大排隊延遲的所述估計來向所述傳送器發(fā)送反饋的裝置,該反饋用于使得所述傳送器控制通過網(wǎng)絡路徑的通信量。本發(fā)明的第九方面提供了一種傳送器,其包括用于基于針對通信量從傳送器行進到接收器的最大的觀察到的延遲來估計在傳送器和接收器之間的網(wǎng)絡路徑上路由器的緩沖器處的最大排隊延遲的裝置;用于基于針對ー個或多個指定分組從傳送器行進到接收器的觀察到的延遲來估計該路由器的緩沖器處的當前排隊延遲的裝置;以及用于基于當前排隊延遲和最大排隊延遲的所述估計來在經(jīng)由該路由器通過網(wǎng)絡路徑從傳送器被傳送到接收器的分組中設置指示符的裝置,其中該指示符被設置成提供網(wǎng)絡擁塞的指示,以使得多個分組從傳送器到接收器的傳輸速率可以被控制。本發(fā)明的第十方面提供了一種接收器,其包括用于基于針對通信量從傳送器行 進到接收器的最大的觀察到的延遲來估計在傳送器和接收器之間的網(wǎng)絡路徑上路由器的緩沖器處的最大排隊延遲的裝置;用于基于針對ー個或多個指定分組從傳送器行進到接收器的觀察到的延遲來估計該路由器的緩沖器處的當前排隊延遲的裝置;以及用于基于當前排隊延遲和最大排隊延遲的所述估計來在經(jīng)由該路由器通過網(wǎng)絡路徑從傳送器被傳送到接收器的分組中設置指示符的裝置,其中該指示符被設置成提供網(wǎng)絡擁塞的指示,以使得多個分組從傳送器到接收器的傳輸速率可以被控制。為了更好地理解本發(fā)明以及顯示本發(fā)明可以被如何實現(xiàn),現(xiàn)在將參考附圖來描述本發(fā)明的示例性實施例,其中
圖I顯示了經(jīng)由通信網(wǎng)絡互相連接的連接的兩個端點;
圖2顯示了適合于實施本發(fā)明的實施例的用戶終端的示意性框圖;圖3顯示了適合于實施本發(fā)明的實施例的另ー種用戶終端的示意性框圖;和 圖4顯示了用于圖示按照本發(fā)明的實施例的方法的流程圖。如以上所討論的,當前僅有少數(shù)互聯(lián)網(wǎng)路由器支持AQM和ECN。為了增強網(wǎng)絡擁塞控制的性能,在本發(fā)明的一些實施例中提出在連接的一個或多個端點上運行AQM的虛擬版本。通過實驗已經(jīng) 發(fā)現(xiàn)這種虛擬AQM提供了對在路由器處運行AQM的情形的良好近似。在一些實施例中,在端點上運行的虛擬AQM提供了ー種概率,其被使用以便確定是否對在端點上接收到的分組進行ECN標記和/或是否對要從端點傳送的分組進行ECN標記和/或是否在端點上采取其他步驟來控制分組的傳輸速率。擁塞控制協(xié)議(比如,TCP)將能夠使用由端點提供的標志來增強網(wǎng)絡的總體性能。為了設法控制或減少網(wǎng)絡中的擁塞,本發(fā)明的一些實施例提供了 ー種用于控制在連接上從連接的第一端點朝向連接的第二端點的分組的傳輸速率的方法。除了幫助控制或減少擁塞,本發(fā)明的一些實施例還將擁塞的指示從第二端點提供到第一端點,并試圖減少在連接上被丟棄的分組的數(shù)量。現(xiàn)在將描述用于實施本發(fā)明的實施例的合適的通信系統(tǒng)和終端的例子。首先參照

圖1,圖中顯示了第一終端100,其經(jīng)由通信網(wǎng)絡300被連接到第二終端200。盡管在本實施例中,第一和第二終端形成經(jīng)由網(wǎng)絡300的連接的端點,但在其他的實施例中,所述端點的一個或兩者可以采取另外的形式,例如服務器或其他的節(jié)點。終端100和200中的一個或兩者可以包括例如個人計算機、游戲設備、個人數(shù)字助理(PDA)、適當?shù)厥鼓艿囊苿与娫挕㈦娨暬蚰軌蜻B接到網(wǎng)絡300的另外的設備。終端間連接建立的發(fā)起可以由終端中的任一個執(zhí)行。因為連接的建立可以如本領域中所熟知的,所以為了簡潔起見,這里不再進一歩描述。網(wǎng)絡300包括基于分組的網(wǎng)絡。盡管第一終端100和第二終端200被安排來經(jīng)由網(wǎng)絡300相互交換數(shù)據(jù),但為了下述討論的目的,第一終端100將被稱為傳送終端,而第二終端200將被稱為接收終端。在一些實施例中,分組攜帶在終端100、200間已建立的呼叫或其他通信事件的信息(包括語音、文本、圖像或視頻中的ー項或多項)。在本發(fā)明的一些實施例中,通信網(wǎng)絡300包括由互聯(lián)網(wǎng)提供的VoIP網(wǎng)絡。應當意識到,盡管這里所顯示和詳細描述的示范性實施例使用了 VoIP網(wǎng)絡的術語,但本發(fā)明的實施例可以被使用在便于數(shù)據(jù)傳遞的任何其他合適的通信系統(tǒng)中。在本發(fā)明的優(yōu)選的實施例中,VoIP系統(tǒng)是對等(P2P)通信系統(tǒng),其中多個終端用戶可以經(jīng)由諸如互聯(lián)網(wǎng)的通信結(jié)構被連接用于通信的目的。圖I中圖示的終端100、200可以各自與終端用戶相關聯(lián)。所述通信結(jié)構相對于其中的通信交換實質(zhì)上被分散,以便連接終端用戶。即,終端用戶可以基于用來獲得對該結(jié)構的訪問的授權證書(UIC)的交換而建立他們自己的通過該結(jié)構的通信路由。如以上所提及的,這樣的通信系統(tǒng)在W02005/009019中被描述。在網(wǎng)絡300包括互聯(lián)網(wǎng)時的情形中,那么每個終端具有在互聯(lián)網(wǎng)中可使用來定位所述終端的相關聯(lián)的IP地址。而且,在終端間傳達的數(shù)據(jù)是在互聯(lián)網(wǎng)協(xié)議(IP)分組中輸送的。當然應意識到,互聯(lián)網(wǎng)是由比明確顯示的那些單元多得多的單元組成的。這一點在圖I中由通信云300示意性地表示,云300可以包括許多服務器和網(wǎng)關、以及互聯(lián)網(wǎng)服務提供商(ISP)的路由器和互聯(lián)網(wǎng)主干路由器。此外,當然應意識到,比所示的兩個終端100、200多得多的終端可以被連接到網(wǎng)絡300?,F(xiàn)在將參照圖2,其更詳細地顯示了第一終端100。第一終端100包括接收電路I,用于接收從第二終端200經(jīng)由網(wǎng)絡300傳送的數(shù)據(jù);以及傳送電路2,用于經(jīng)由網(wǎng)絡300向第二終端200傳送數(shù)據(jù)。接收電路I被安排來向諸如揚聲器18和顯示屏20的各種輸出設備輸出數(shù)據(jù),所述數(shù)據(jù)是在分組中被接收的,所述分組被包含在從例如第二終端200經(jīng)由網(wǎng)絡300接收的信號中。接收電路I包括抖動緩沖器10,用于緩沖從網(wǎng)絡300接收的數(shù)據(jù)分組;解碼器12,用于解碼在數(shù)據(jù)分組中接收的數(shù)據(jù);再現(xiàn)器(renderer) 14,用于操控要被輸出到顯示屏20的視頻數(shù)據(jù);以及數(shù)字-模擬轉(zhuǎn)換器16,用于向模擬輸出設備輸出模擬數(shù)據(jù)。終端100的傳送電路2被安排來從諸如話筒24和網(wǎng)絡攝像機26這樣的輸入設備接收數(shù)據(jù),并以信號的形式經(jīng)由網(wǎng)絡300把數(shù)據(jù)傳送到例如第二終端200。傳送電路2包括模擬-數(shù)字轉(zhuǎn)換器28,用于將從模擬輸入設備輸入的模擬數(shù)據(jù)轉(zhuǎn)換為數(shù)字信息;編碼器 30,用于將數(shù)字信息編碼為編碼的數(shù)據(jù)幀;分組化器32,用于將編碼的數(shù)據(jù)幀放入分組中;以及緩沖器34,被安排來在分組被傳送進網(wǎng)絡300前對它們進行排隊。按照本發(fā)明的實施例,用戶終端100的處理器22被安排來控制傳送電路2的組件的操作。例如優(yōu)選地,編碼器30編碼數(shù)據(jù)的比特率由處理器22控制,以便控制數(shù)據(jù)從緩沖器34被傳送到網(wǎng)絡300中的速率。在這個實施例中,處理器22包括中央處理單元(CPU)。應指出,在一些實施例中,在終端100的組件間將提供進ー步的連接,比如在處理器22與輸入和輸出設備的每ー個之間的連接。而且,盡管話筒24、網(wǎng)絡攝像機26、揚聲器18和顯示屏20被顯示為集成到第一終端100,但是在其他的實施例中,這些組件的一個或多個可以采用經(jīng)由有線或無線連接被連接到用戶終端100的外圍設備的形式。此外,在端點100包括用戶終端以外的設備的實施例中,話筒24、網(wǎng)絡攝像機26、揚聲器18和顯示屏20中的一個或多個可以被省去。諸如硬驅(qū)動機或閃存的非易失性存儲器36、以及諸如隨機存取存儲器(RAM)的易失性存儲器38也被耦合到CPU22。非易失性存儲器36存儲軟件,其至少包括操作系統(tǒng)(OS)和以P2P通信客戶機形式的基于分組的通信軟件。一經(jīng)啟動或重置終端100,操作系統(tǒng)便被自動裝載到RAM38,并且通過在CPU22上被執(zhí)行而從該RAM運行。一旦運行,操作系統(tǒng)于是便可以通過將諸如P2P通信客戶機這樣的應用裝載進RAM38并在CPU22上執(zhí)行它們而運行所述應用?,F(xiàn)在參照圖3,其更詳細地顯示了第二終端200。在這個實施例中,第二終端200采用與第一終端相似的格式。因此,類似的組件用相同的參考數(shù)字指示,只是在圖3中把符號“’”后綴添加到參考數(shù)字,以幫助區(qū)分第二終端200的特征的討論與第一終端100的特征的討論。為了簡潔,不提供第二終端200的特征的進ー步的詳細描述。當然,在端點200包括用戶終端以外的設備的實施例中,所圖示的話筒24’、網(wǎng)絡攝像機26’、揚聲器18’和顯示屏20’中的一個或多個可以被省去。如果大量的數(shù)據(jù)在各種終端、路由器和其他節(jié)點之間經(jīng)過網(wǎng)絡300,則引發(fā)網(wǎng)絡擁塞并且終端100、200可能經(jīng)歷分組遞送中的長延遲。分組甚至可能在終端100、200間的連接上丟失或丟棄。例如,如以上所討論的,網(wǎng)絡300內(nèi)的路由器處的尾部丟棄緩沖器可能達到它的最大的被允許尺寸,在這之后路由器處新接收的來自第一終端100的分組被丟棄。這會導致第二終端200接收到不完整的數(shù)據(jù),并且由于要向它們的預期接收者重傳在途中丟失或丟棄的分組,還會隨后導致經(jīng)過網(wǎng)絡300的額外的通信量。為了設法減少網(wǎng)絡300中的擁塞,本發(fā)明的實施例提供了ー種方法,用于控制從傳送終端進入網(wǎng)絡300朝向接收終端的分組的傳輸速率。本發(fā)明的一些實施例從接收終端200向傳送終端100提供擁塞的指示,使得傳送終端可以降低它的分組發(fā)送速率,以試圖降低在終端100、200間的連接上被丟棄的分組的數(shù)量?,F(xiàn)在參照圖4,其圖示了本發(fā)明的方法的例子。該示例性的方法包括在第二終端200的處理器22’上確定指示在端點100、200之間的路徑上觀察到的分組“η”的單向端到
端排隊延遲“ \ ”的值,換句話說,指示在從第一終端100行進到第二終端200時分組“η”
在隊列中所花費的時間的值。該值將被稱作為“ Ι 句”,并且這個步驟是圖4中的步驟SI。為了確定該值,從第一終端100發(fā)送到第二終端200的分組在傳輸時被打上時間戳,比如在分組中提供該分組從第一終端100被傳送時的時間的指示(IK功)。替換地,該指示可以包括在被附帶于分組的輔助信息中。在第二終端200上接收分組的時間(7( )
)被記下。然而,在分組中提供的指示依賴于第一終端100上的第一時鐘的值,而記錄的接收時間則依賴于第二終端200上的第二時鐘的值。由于兩個時鐘之間缺乏同步(“時鐘偏差”),第二終端200沒有按照第二時鐘的、該分組從第一終端被發(fā)送時的時間的指示。這個時鐘偏差可以被估計且隨著時間推移被消除。在US2008/0232521以及共同待決的美國專利申請No. 12/455908中闡述了用于這樣做的合適的方法。與此操作有關的這兩個文檔的內(nèi)容通過引用的方式被合并于此。在這些文檔中闡述的方法還(從算術CCo) - Tx(S)的結(jié)果)篩選出(filter out)分組由于以某ー速度(當采用在光纖上的傳播時為光速)經(jīng)過兩個終端100、200間的物理距離所經(jīng)歷的傳播延遲。在美國專利申請No. 12/455908中描述的方法的概要如下。原始分組延遲是接收者時鐘讀數(shù)和分組時間戳之間的差值,即
D(n) = Tr{r )-Tx(n)
當然,D(η)并不是實際的傳輸延遲的精確測量,因為てレ)和れ(句是相對于不同的、非同步的時鐘而測量的。D(n)可以由下式描述
D《n) = 了 q_ + Tp(n 卜 Te《n)
其中,Tq{&)是分組排隊延遲,Τβ(α)是傳播延遲,以及是由于時鐘未被同步而造成的測量誤差。這里做出假設盡管!:(n)和 ;(句是未知的,但隨著時間的推移它們接近于恒定,且我們將它們的和值稱為T^(M) ^ + Tc^)。最小跟蹤功能觀察單向延遲D(n)以生成對于時鐘和傳播偏差2%(句的估計的補償。在一個實施例中,最小跟蹤功能被實施為卡爾曼(Kalman)濾波器,其將建模為ー階模型以抓住任何的時鐘漂移。最小跟蹤是通過針對更高的D(η)值而在卡爾曼濾波器中利用更高的觀察噪聲來獲得的。從D (η)減去估計的偏差 ^(句以獲得Τ;( 3)的估計。因此,通過使用(Xx(Ji))的指示和記錄的接收時間(XW))以及在共同待決的美國專利申請No. 12/455908或US2008/0232521中闡述的方法,時鐘失配和傳播延遲都可以隨著時間推移被估計和被篩選出,以便獲得單向排隊延遲(句”的估計。在替換的實施例
中,可以使用替換的方法來獲得“?;(句”的估計。在優(yōu)選的實施例中,針對在第二終端200上接收的每個分組(B卩“n”、“n+l”、“n+2”等等)估計單向排隊延遲。在替換的實施例中,可以只針對在第二終端200上接收的每隔ー個或者每隔兩個分組來估計該延遲。所以,該估計可以每隔X-I個接收的分組被實行,其中X是整數(shù)。在替換的實施例中,該估計可以每Y秒被實行一次,例如其中Y=l。優(yōu)選地,終端200的處理器22’計算“7;( ) ”。然而,在替換的實施例中,該計算可以在別處(比如,在終端200的不同的處理器上,或在不同于終端200但連接到終端200的 實體上)執(zhí)行,于是用戶終端200的處理器22’可以接收為“?;(句”計算的值。該方法還包括在終端200的處理器22’上估計指示在端點100、200之間的網(wǎng)絡路徑上的最大端到端排隊延遲”的值,換句換說,指示當分組從第一終端100行進到第
ニ終端200時在隊列中可能花費的最大時間的值(圖4中的步驟S2)。因此,可提供在位于第一終端100和第二終端200之間的網(wǎng)絡路徑上的路由器的緩沖器處的最大可能隊列長度的估計。這個最大的端到端排隊延遲的估計”通過使用指示針對某些分組的單向的端到端排隊延遲“T/’的值而被周期性地更新,正如下面將更詳細地描述的。為了估計“句”(即,在第二終端200上接收到分組“η”后的“ f ”),首先
所確定的“ J; ”被與最大端到端排隊延遲的先前估計”(它是在接收到分組
“n-1”后被估計的)進行比較。(注意,當沒有“先前的”估計時被使用的最大端到端排隊延遲的初始估計優(yōu)選地是缺省值,比如250ms)。如果針對分組“η”指示的端到端排隊延遲“Γ,(υ) ”的值大于或等于指示最大端到端排隊延遲的先前估計い-I) ”的值,則相對小的加權“(% )”(比如O. 9)被應用到代表最大端到端排隊延遲的先前估計”的值。另ー方面,如果指示端到端排隊延遲“ Τ9{η) ”的值小于指示最大端到端排隊延遲的先前估計“I) ”的值,則相對大
的加權“(叫)”(比如O. 99)被應用到代表最大端到端排隊延遲的先前估計“り”的值。一旦加權因子“(〖ち)”在這個比較的基礎上被確定,則第二加權因子“(I- Iち)”被應用到代表端到端排隊延遲“?;(句”的值。可以看出,在這個實施例中,第二加權因子等于加權因子“ σち)”和“ I ”之間的差值。照這樣,觀察到的端到端排隊延遲“ぺ㈤”的大值比觀察到的端到端排隊延遲
“Τ ”的小值被更高地加權。因此,如果針對特定分組的觀察到的端到端排隊延遲大于或
等于最大端到端排隊延遲的先前估計,則針對該分組的觀察到的端到端排隊延遲與針對該分組的觀察到的端到端排隊延遲小于最大端到端排隊延遲的先前估計的情況相比,對最大端到端排隊延遲的修正估計有更大的影響。在接收到分組(η)后,在終端100和終端200之間的最大端到端排隊延遲的修正估計于是可以通過使用以下的篩選獲得
權利要求
1.一種用于控制經(jīng)由路由器通過網(wǎng)絡路徑從傳送器傳送到接收器的通信量的方法,所述通信量包括多個分組,以及所述方法包括 在所述傳送器和接收器中的ー個處,基于針對通信量從傳送器行進到接收器的最大的觀察到的延遲來估計在所述路由器的緩沖器處的最大排隊延遲,且基于針對ー個或多個指定分組從傳送器行進到接收器的觀察到的延遲來估計在所述路由器的緩沖器處的當前排隊延遲;和 基于當前排隊延遲和最大排隊延遲的所述估計,控制通過所述網(wǎng)絡路徑的在傳送器和接收器之間的通信量。
2.權利要求I的方法,包括基于當前排隊延遲的估計和最大排隊延遲的估計來確定擁塞的量度,其中所述控制是基于所述擁塞的量度的。
3.權利要求I或權利要求2的方法,其中所述控制包括控制通過所述網(wǎng)絡路徑的從傳 送器到接收器的通信量的傳輸速率。
4.權利要求2或權利要求3的方法,其中所述擁塞的量度涉及緩沖器接近溢出的程度。
5.權利要求2到4的任ー項的方法,其中所述擁塞的量度包括隊列超出最大排隊延遲的預定比例的概率的量度。
6.任一前述權利要求的方法,其中當前排隊延遲的估計是基于針對分組從傳送器行進到接收器的平均的觀察到的延遲。
7.任一前述權利要求的方法,其中所述最大的觀察到的延遲和所述觀察到的延遲在接收器處被觀察并被反饋給傳送器,當前排隊延遲和最大排隊延遲的所述估計是在傳送器處基于從接收器反饋的延遲而被估計的。
8.權利要求7的方法,包括依賴于擁塞的量度,在從傳送器傳送到接收器的分組中提供擁塞的指示。
9.權利要求I到6的任ー項的方法,其中當前排隊延遲和最大排隊延遲的估計是在接收器處被估計的。
10.權利要求2和9的方法,其中所述擁塞的量度是在接收器處被確定的。
11.權利要求10的方法,其中所述擁塞的量度是在接收器處被確定的,并被反饋給傳送器。
12.權利要求10的方法,包括依賴于擁塞的量度,在從接收器反饋到傳送器的分組中提供抑塞的指不。
13.權利要求10的方法,包括在接收器處,依賴于擁塞的量度,在接收器處接收到的分組中提供擁塞的指示。
14.權利要求8、12或13的方法,其中所述擁塞的指示包括顯式擁塞通知標志。
15.權利要求8、12、13或14的方法,其中所述擁塞的指示是在確定所述路由器不能在通過所述網(wǎng)絡路徑傳送的通信量中提供該網(wǎng)絡路徑上的擁塞指示的基礎上提供的。
16.權利要求13或權利要求14的方法,其中如果確定所述路由器能夠在通過所述網(wǎng)絡路徑傳送的通信量中提供該網(wǎng)絡路徑上的擁塞的指示,并且沒有這樣的擁塞指示被包括到在接收器處接收的分組中,則在所述分組中提供所述擁塞的指示。
17.權利要求13的方法,包括依賴于在接收器處檢測到在接收器處接收的分組中的擁塞指示,將指令從接收器發(fā)送到傳送器,該指令指示在通過網(wǎng)絡路徑向接收器發(fā)送通信量時要由所述傳送器采用的通信量的傳輸速率。
18.權利要求9的方法,包括依賴于當前排隊延遲和最大排隊延遲的估計,將在通過網(wǎng)絡路徑向接收器發(fā)送通信量時要由所述傳送器采用的通信量的傳輸速率的指示從接收器發(fā)送到傳送器。
19.權利要求I到6的任一項的方法,包括依賴于當前排隊延遲和最大排隊延遲的估計,確定在通過網(wǎng)絡路徑向接收器發(fā)送通信量時要由所述傳送器采用的通信量的傳輸速率;其中所述控制是基于所確定的傳輸速率。
20.權利要求19的方法,其中所述傳輸速率是在接收器處確定的,并被反饋給傳送器。
21.權利要求19的方法,其中所述最大的觀察到的延遲和所述觀察到的延遲被接收器處觀察并被反饋給傳送器,當前排隊延遲和最大排隊延遲的所述估計是在傳送器處基于從接收器反饋的所述最大的觀察到的延遲和所述觀察到的延遲來估計的,并且所述傳輸速率·是在傳送器處被確定的。
22.一種用于控制經(jīng)由路由器通過網(wǎng)絡路徑在傳送器和接收器之間傳送的通信量的方法,所述通信量包括多個分組,以及所述方法包括 在所述傳送器和接收器中的一個處,基于針對通信量從傳送器行進到接收器的最大的觀察到的延遲來估計在所述路由器的緩沖器處的最大排隊延遲,且基于針對一個或多個指定分組從傳送器行進到接收器的觀察到的延遲來估計在所述路由器的緩沖器處的當前排隊延遲;和 基于當前排隊延遲和最大排隊延遲的所述估計,將反饋從所述傳送器和接收器中的所述一個發(fā)送到所述傳送器和接收器中的另一個,該反饋用于使得所述傳送器和接收器的所述另一個控制通過所述網(wǎng)絡路徑的通信量。
23.權利要求22的方法,其中當前排隊延遲的估計是基于針對分組從傳送器行進到接收器的平均的觀察到的延遲。
24.權利要求22或權利要求23的方法,包括在所述傳送器和接收器中的所述一個處,在所述傳送器和接收器中的所述一個處接收的分組中提供擁塞指示,其中所述反饋依賴于在所接收的分組中檢測到擁塞指示而被發(fā)送。
25.權利要求22到24的任一項的方法,其中所述反饋包括其中包含顯式擁塞通知標志的分組。
26.權利要求22到24的任一項的方法,其中所述反饋包括在通過網(wǎng)絡路徑發(fā)送通信量時要由所述傳送器和接收器中的另一個采用的通信量的傳輸速率的指示。
27.權利要求22的方法,包括基于當前排隊延遲的估計和最大排隊延遲的估計來確定擁塞的量度。
28.權利要求27的方法,包括依賴于所述擁塞的量度來發(fā)送所述反饋。
29.權利要求27或28的方法,其中所述擁塞的量度涉及緩沖器接近溢出的程度。
30.權利要求27到29的任一項的方法,其中所述擁塞的量度包括隊列超出最大排隊延遲的預定比例的概率的量度。
31.權利要求27到30的任一項的方法,其中所述反饋包括所述擁塞的量度的指示。
32.—種在經(jīng)由路由器通過網(wǎng)絡路徑從傳送器傳送到接收器的分組中設置指示符的方法,其中所述指示符被設置成提供網(wǎng)絡擁塞的指示,以使得多個分組從傳送器到接收器的傳輸速率可以被控制,所述方法包括 在所述傳送器和接收器中的一個處,基于針對通信量從傳送器行進到接收器的最大的觀察到的延遲來估計在所述路由器的緩沖器處的最大排隊延遲,且基于針對一個或多個指定分組從傳送器行進到接收器的觀察到的延遲來估計在所述路由器的緩沖器處的當前排隊延遲;和 在所述傳送器和接收器中的一個處,基于當前排隊延遲和最大排隊延遲的所述估計來在該分組中設置指示符。
33.權利要求24或32的方法,其中所述擁塞的指示包括顯式擁塞通知標志。
34.權利要求24、32或33的方法,其中所述擁塞的指示是在確定所述路由器不能在通過所述網(wǎng)絡路徑傳送的通信量中提供該網(wǎng)絡路徑上的擁塞指示的基礎上提供的。
35.權利要求24、32或33的方法,其中如果確定所述路由器能夠在通過所述網(wǎng)絡路徑傳送的通信量中提供該網(wǎng)絡路徑上的擁塞的指示,并且沒有這樣的擁塞指示被包括到在所述傳送器和接收器中的所述一個處接收的分組中,則在所述分組中提供所述擁塞的指示。
36.任一前述權利要求的方法,其中所述傳送器和接收器中的一個或兩者包括用戶終端。
37.任一前述權利要求的方法,其中所述網(wǎng)絡路徑包括通過互聯(lián)網(wǎng)的路徑,以及 其中所述接收器是包括處理器的設備,所述處理器被配置來執(zhí)行互聯(lián)網(wǎng)協(xié)議上的話音客戶機和互聯(lián)網(wǎng)協(xié)議上的視頻客戶機中的一個或兩者,并且所述設備被配置來參與經(jīng)由所述網(wǎng)絡路徑的與傳送器的呼叫。
38.一種包括代碼的計算機程序產(chǎn)品,所述代碼被安排使得當其在處理器上被執(zhí)行時完成權利要求I到37的任一項的步驟。
39.一種傳送器,包括 用于基于針對通信量從傳送器行進到接收器的最大的觀察到的延遲來估計在傳送器和接收器之間的網(wǎng)絡路徑上路由器的緩沖器處的最大排隊延遲的裝置; 用于基于針對一個或多個指定分組從傳送器行進到接收器的觀察到的延遲來估計在該路由器的緩沖器處的當前排隊延遲的裝置;和 用于基于當前排隊延遲和最大排隊延遲的所述估計來控制通過所述網(wǎng)絡路徑的在傳送器和接收器之間的通信量的裝置。
40.一種接收器,包括 用于基于針對通信量從傳送器行進到接收器的最大的觀察到的延遲來估計在傳送器和接收器之間的網(wǎng)絡路徑上路由器的緩沖器處的最大排隊延遲的裝置; 用于基于針對一個或多個指定分組從傳送器行進到接收器的觀察到的延遲來估計在該路由器的緩沖器處的當前排隊延遲的裝置;和 用于基于當前排隊延遲和最大排隊延遲的所述估計來控制通過所述網(wǎng)絡路徑的在傳送器和接收器之間的通信量的裝置。
41.一種傳送器,包括 用于基于針對通信量從傳送器行進到接收器的最大的觀察到的延遲來估計在傳送器和接收器之間的網(wǎng)絡路徑上路由器的緩沖器處的最大排隊延遲的裝置; 用于基于針對一個或多個指定分組從傳送器行進到接收器的觀察到的延遲來估計在路由器的緩沖器處的當前排隊延遲的裝置;和 用于基于當前排隊延遲和最大排隊延遲的所述估計來向所述接收器發(fā)送反饋的裝置,該反饋用于使得所述接收器控制通過所述網(wǎng)絡路徑的通信量。
42.一種接收器,包括 用于基于針對通信量從傳送器行進到接收器的最大的觀察到的延遲來估計在傳送器和接收器之間的網(wǎng)絡路徑上路由器的緩沖器處的最大排隊延遲的裝置; 用于基于針對ー個或多個指定分組從傳送器行進到接收器的觀察到的延遲來估計在該路由器的緩沖器處的當前排隊延遲的裝置;和 用于基于當前排隊延遲和最大排隊延遲的所述估計來向所述傳送器發(fā)送反饋的裝置,該反饋用于使得所述傳送器控制通過所述網(wǎng)絡路徑的通信量。
43.一種傳送器,包括 用于基于針對通信量從傳送器行進到接收器的最大的觀察到的延遲來估計在傳送器和接收器之間的網(wǎng)絡路徑上路由器的緩沖器處的最大排隊延遲的裝置; 用于基于針對ー個或多個指定分組從傳送器行進到接收器的觀察到的延遲來估計在該路由器的緩沖器處的當前排隊延遲的裝置;和 用于基于當前排隊延遲和最大排隊延遲的所述估計來在經(jīng)由路由器通過網(wǎng)絡路徑從傳送器傳送到接收器的分組中設置指示符的裝置,其中所述指示符被設置成提供網(wǎng)絡擁塞的指示,以使得多個分組從傳送器到接收器的傳輸速率可以被控制。
44.一種接收器,包括 用于基于針對通信量從傳送器行進到接收器的最大的觀察到的延遲來估計在傳送器和接收器之間的網(wǎng)絡路徑上路由器的緩沖器處的最大排隊延遲的裝置; 用于基于針對ー個或多個指定分組從傳送器行進到接收器的觀察到的延遲來估計在該路由器的緩沖器處的當前排隊延遲的裝置;和 用于基于當前排隊延遲和最大排隊延遲的所述估計來在經(jīng)由路由器通過網(wǎng)絡路徑從傳送器傳送到接收器的分組中設置指示符的裝置,其中所述指示符被設置成提供網(wǎng)絡擁塞的指示,以使得多個分組從傳送器到接收器的傳輸速率可以被控制。
全文摘要
提供了一種用于控制經(jīng)由路由器通過網(wǎng)絡路徑從傳送器傳送到接收器的通信量的方法,所述通信量包括多個分組,以及所述方法包括在所述傳送器和接收器中的一個處,基于針對通信量從傳送器行進到接收器的最大的觀察到的延遲來估計在所述路由器的緩沖器處的最大排隊延遲,且基于針對一個或多個指定分組從傳送器行進到接收器的觀察到的延遲來估計在所述路由器的緩沖器處的當前排隊延遲;和基于當前排隊延遲和最大排隊延遲的所述估計,控制通過所述網(wǎng)絡路徑的在傳送器和接收器之間的通信量。
文檔編號H04L12/801GK102859950SQ201180011092
公開日2013年1月2日 申請日期2011年2月25日 優(yōu)先權日2010年2月25日
發(fā)明者M.陳, C.羅布羅, S.V.安德森 申請人:斯凱普公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
陆良县| 尼玛县| 兴义市| 昌江| 曲水县| 如皋市| 泊头市| 土默特左旗| 新干县| 清水河县| 雅安市| 佛坪县| 拜城县| 新宁县| 太康县| 江华| 惠安县| 新竹县| 昌邑市| 六安市| 郴州市| 巴林左旗| 定兴县| 保亭| 仁化县| 定陶县| 福鼎市| 灌云县| 运城市| 马公市| 左贡县| 灵寿县| 宜章县| 乳源| 新竹市| 育儿| 兴文县| 利辛县| 波密县| 鹤峰县| 新乡市|