TWI498018B - 減少網路流量中的抵達延遲 - Google Patents

減少網路流量中的抵達延遲 Download PDF

Info

Publication number
TWI498018B
TWI498018B TW102104398A TW102104398A TWI498018B TW I498018 B TWI498018 B TW I498018B TW 102104398 A TW102104398 A TW 102104398A TW 102104398 A TW102104398 A TW 102104398A TW I498018 B TWI498018 B TW I498018B
Authority
TW
Taiwan
Prior art keywords
network link
program
receiving window
arrival delay
transmitting end
Prior art date
Application number
TW102104398A
Other languages
English (en)
Other versions
TW201342949A (zh
Inventor
Padmavathy Bhooma
Original Assignee
Apple Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Apple Inc filed Critical Apple Inc
Publication of TW201342949A publication Critical patent/TW201342949A/zh
Application granted granted Critical
Publication of TWI498018B publication Critical patent/TWI498018B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0205Traffic management, e.g. flow control or congestion control at the air interface
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0231Traffic management, e.g. flow control or congestion control based on communication conditions
    • H04W28/0236Traffic management, e.g. flow control or congestion control based on communication conditions radio quality, e.g. interference, losses or delay
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5019Ensuring fulfilment of SLA
    • H04L41/5022Ensuring fulfilment of SLA by giving priorities, e.g. assigning classes of service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • H04L43/087Jitter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/11Identifying congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/27Evaluation or update of window size, e.g. using information derived from acknowledged [ACK] packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/28Flow control; Congestion control in relation to timing considerations
    • H04L47/283Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/163In-band adaptation of TCP data exchange; In-band control procedures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/10Flow control between communication endpoints
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/02Processing of mobility data, e.g. registration information at HLR [Home Location Register] or VLR [Visitor Location Register]; Transfer of mobility data, e.g. between HLR, VLR or external networks
    • H04W8/04Registration at HLR or HSS [Home Subscriber Server]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Computer Security & Cryptography (AREA)
  • Databases & Information Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

減少網路流量中的抵達延遲
所揭露之實施例關於管理網路流量之技術。更具體地,所揭露之實施例關於藉由根據抵達延遲調整與網路流量相關之發送端接收視窗而減少網路流量中抵達延遲之技術。
諸如無線存取點、信號塔、及/或路由器之網路鏈路可藉由若干啟用網路之電子裝置共用,諸如個人電腦、膝上型電腦、行動電話、可攜式媒體播放器、印表機、及/或視訊遊戲控制台。為管理至電子裝置之網路流量,網路鏈路可減少至電子裝置之封包流量,重新排序封包及/或丟棄封包。封包之發送端亦可根據封包錯誤、遺漏、及/或延遲而調整後續封包之傳輸速率,因而消散網路鏈路擁塞及促進藉由電子裝置共用網路帶寬。
另一方面,電子裝置可能缺乏能力影響來自發送端之封包傳輸。相反地,電子裝置可能僅以藉由發送端及/或網路鏈路傳輸封包之速率來接收封包。再者,每 一電子裝置可包括與透過相同網路鏈路發送及接收資料之不同優先性相關之若干程序。因為發送端及網路鏈路缺乏程序之優先性資訊,電子裝置上較高優先性(例如前景)程序可能比較低優先性(例如背景)程序以網路鏈路較小共用帶寬結束,此不利地影響使用者使用電子裝置。
揭露之實施例提供一種系統,其促進網路鏈路之使用。作業期間,系統持續監視透過該網路鏈路從發送端接收之封包的抵達延遲。其次,系統根據該抵達延遲調整該發送端之接收視窗,以促進透過該網路鏈路收到來自該發送端及其他發送端之後續封包。
在若干實施例中,系統亦根據與該封包相關之程序優先性而進一步調整該接收視窗。例如,系統可根據該程序之該優先性縮放調整該接收視窗。諸如前景程序之較高優先性程序因而比諸如背景程序之較低優先性程序與針對接收視窗之較小調整相關。
在若干實施例中,根據該抵達延遲調整該發送端之該接收視窗包含:若該抵達延遲超過第一預先指定的邊限之閾值,則減少該接收視窗;以及若該抵達延遲降至第二預先指定的邊限之該閾值以下,則增加該接收視窗。
在若干實施例中,調整該發送端之該接收視窗包含:傳輸包含該接收視窗之新尺寸的確認封包(例如 傳輸控制協定(TCP)確認)至該發送端。
在若干實施例中,該網路鏈路為WiFi網路鏈路或行動電話網路鏈路之一者。例如,網路鏈路可藉由WiFi網路及/或行動電話網路之信號塔的無線存取點提供。
在若干實施例中,該接收視窗未減少至低於與該網路鏈路取樣相關之最小接收視窗。
102‧‧‧伺服器
104‧‧‧網路
106-108、204‧‧‧網路鏈路
110-112、202、800‧‧‧電腦系統
206‧‧‧監視設備
208‧‧‧管理設備
210-212、402‧‧‧抵達延遲
214-216‧‧‧優先性
218-220、502‧‧‧接收視窗
222-224‧‧‧發送端
226-228‧‧‧封包
302、304‧‧‧程序
306、404、504、604‧‧‧時間
506‧‧‧最小接收視窗
602‧‧‧封包抵達
702、704、706、708、710、712、714、716‧‧‧作業
802‧‧‧處理器
804‧‧‧記憶體
806‧‧‧儲存器
808‧‧‧鍵盤
810‧‧‧滑鼠
812‧‧‧顯示器
圖1顯示依據揭露之實施例之系統的示意。
圖2顯示依據揭露之實施例之用於促進網路鏈路使用的系統。
圖3顯示依據揭露之實施例之藉由二程序隨時間之網路鏈路的示範使用。
圖4顯示依據揭露之實施例的示範圖。
圖5顯示依據揭露之實施例的示範圖。
圖6顯示依據揭露之實施例的示範圖。
圖7顯示依據揭露之實施例之流程圖,描繪促進網路鏈路使用的程序。
圖8顯示依據揭露之實施例的電腦系統。
在圖式中,類似代號係指相同圖式元件。
呈現下列說明以使熟悉本技藝之任何人可利 用及使用實施例,並於特定應用及其需求之上下文中提供。針對揭露之實施例的各式修改對於熟悉本技藝之人士將是顯而易見,且文中所定義之一般原理可應用至其他實施例及應用而未偏離本揭露之精神及範圍。因而,本發明不侷限於所示實施例,而是與文中所揭露之原理及特徵相符之最廣泛範圍一致。
在此詳細說明中所說明之資料結構及碼典型地儲存於電腦可讀取儲存媒體上,其可為可儲存供電腦系統使用之碼及/或資料的任何裝置或媒體。電腦可讀取儲存媒體包括但不侷限於揮發性記憶體、非揮發性記憶體、磁性及光學儲存裝置諸如碟片驅動裝置、磁帶、光碟(CD)、數位影音光碟(DVD)、或可儲存碼及/或資料之其他媒體。請注意,所說明之實施例希望包括非暫態性電腦可讀取儲存媒體,諸如暫態性信號。
詳細說明部分中所說明之方法及程序可體現為碼及/或資料,如以上所說明其可儲存於電腦可讀取儲存媒體中。當電腦系統讀取及執行儲存於電腦可讀取儲存媒體上之碼及/或資料時,電腦系統實施體現為資料結構及碼並儲存於電腦可讀取儲存媒體內之方法及程序。
此外,文中所說明之方法及程序可包括於硬體模組或設備中。該些模組或設備可包括但不侷限於專用積體電路(ASIC)晶片、場可程控閘陣列(FPGA)、於特定時間執行特定軟體模組或一段碼之專用或共用處理器、及/或其他可程控邏輯裝置。當啟動硬體模組或設備 時,便實施其內所包括之方法及程序。
揭露之實施例提供用於管理網路流量之方法及系統。如圖1中所示,若干電腦系統110-112經由諸如無線存取點、信號塔、及/或路由器之裝置提供的網路鏈路106-108而連接至網路104。電腦系統110-112可對應於個人電腦、膝上型電腦、平板電腦、行動電話/智慧手機、可攜式媒體播放器、及/或其他啟用網路之電子裝置。網路104可包括局域網路(LAN)、廣域網路(WAN)、個人區域網路(PAN)、虛擬專用網路、網際網路、行動電話網路(例如蜂巢式網路)、WiFi網路、藍牙網路、通用序列匯流排(USB)網路、乙太網路、形成於二或更多裝置間之專門網路、及/或促進連接至網路104之電腦系統(例如電腦系統110-112)間之通訊的其他類型網路。
尤其,藉由透過網路104發送及接收資料,諸如檔案、音頻、視訊、及/或網頁內容,電腦系統110-112可相互及/或與網路104上之伺服器102互動。例如,藉由組建與電腦系統112及/或伺服器102之傳輸控制協定(TCP)連接,電腦系統110可要求來自電腦系統112及/或伺服器102之資料。藉由透過網路104傳輸包含資料之一連串封包至電腦系統110,電腦系統112及伺服器102接著可提供要求之資料。同時,藉由透過網路104傳輸及接收封包,電腦系統110-112及/或其他電腦系統(未顯示)可相互、與伺服器102及/或網路104上 其他伺服器或裝置(未顯示)通訊。為避免及/或減輕網路擁塞,網路鏈路106-108及/或網路104上其他網路鏈路(未顯示)可實施網路流量控制技術,其針對電腦系統110-112及/或其他電腦系統佇列、重新排序、延遲、及/或丟棄封包。電腦系統110-112、伺服器102、及/或其他伺服器或裝置亦可根據封包錯誤、遺漏、及/或延遲而調整後續封包之傳輸速率,因而促進電腦系統共用可用帶寬及/或網路104之有效使用。
然而,習知電腦系統(例如智慧手機、桌上型電腦、平板電腦等)可能缺乏控制相互及/或從伺服器收到封包之能力。此外,每一電腦系統可包括與透過網路104發送及接收資料之不同優先性相關之若干程序。結果,可能爭奪電腦系統(例如電腦系統110-112)連接之網路鏈路(例如,網路鏈路106-108),且電腦系統上較高優先性程序可比較低優先性程序接收來自網路鏈路之較少帶寬。沿相同線路,預定用於電腦系統之封包可能在網路鏈路遭遇瓶頸,且電腦系統上所有程序可歷經增加的網路恢復時間。
在所說明之實施例中,為促進網路鏈路106-108之使用(及避免以上所說明之於習知電腦系統中遭遇的問題),電腦系統110-112包括用於根據程序歷經之網路恢復時間調整相互、從伺服器102及/或其他電腦系統或裝置之封包傳輸至電腦系統110-112上個別程序之功能性。
如圖2中所示,電腦系統202可透過網路鏈路204接收來自多發送端222-224(例如伺服器或其他裝置)之封包226-228。封包226-228可與在電腦系統202上執行之不同程序(例如應用)相關。例如,可藉由電腦系統202上一程序接收來自發送端222之封包226,及藉由電腦系統202上另一程序接收來自發送端224之封包228。
當封包226-228從發送端222-224傳輸至電腦系統202時,電腦系統202中監視設備206可持續監視封包226-228之一組抵達延遲210-212。尤其,監視設備206可計算每一抵達延遲210-212為一對連續封包從發送端至電腦系統202上對應程序之「相對傳輸時間」中之差異。例如,若二封包相隔20毫秒發送,但相隔30毫秒接收,則二封包之抵達延遲可為10毫秒。
計算之抵達延遲210-212可提供電腦系統202網路鏈路204上程序之間的競爭指示,諸如WiFi網路上無線存取點及/或行動電話網路上信號塔。為進一步促進從發送端222-224之網路流量的改變檢測,監視設備206亦可計算統計值,諸如抵達延遲210-212之標準偏差及/或變化(例如間隔抖動)。
其次,電腦系統202中管理設備208可根據抵達延遲210-212而調整發送端222-224之一組接收視窗218-220,以促進收到透過網路鏈路204來自發送端222-224之後續封包。每一接收視窗218-220可代表電腦系統 202希望從對應發送端接受之資料量,並未確認(例如傳輸確認封包至)發送端。寬接收視窗可提升從發送端傳輸封包之速率,同時窄接收視窗可降低從發送端傳輸封包之速率。
若來自發送端之封包的抵達延遲超過藉由第一預先指定的邊限閾值,便可能爭奪網路鏈路204,且管理設備208可減少對應接收視窗以減少來自發送端及/或其他發送端(例如發送端222-224)之後續封包的抵達延遲。另一方面,若抵達延遲落在藉由第二預先指定的邊限閾值以下,該邊限可與第一預先指定的邊限相同或不同,網路鏈路204可能未充分利用,且管理設備208可增加接收視窗以增加網路鏈路之利用。為落實發送端之接收視窗改變,管理設備208可傳輸封包或資料框至接收端以指出接收視窗之新尺寸。例如,在若干實施例中,管理設備傳輸包含接收視窗新尺寸之確認封包(例如TCP確認)至發送端,且發送端可因此調整傳輸封包至電腦系統202之速率。
管理設備208可根據封包預定程序之一組優先性214-216(例如藉由電腦系統202之作業系統指定之特定程序的優先性)進一步調整接收視窗218-220。若程序與不同優先性214-216相關,管理設備208可根據優先性214-216縮放調整接收視窗218-220。管理設備208可因而確保較高優先性程序與較寬接收視窗相關,反過來,網路鏈路204上比較低優先性程序更多帶寬。
例如,電腦系統202上背景(例如低優先性)程序可為透過網路鏈路204之網路流量的唯一接收端。結果,透過網路鏈路204傳輸至電腦系統202之所有封包可藉由背景程序接收,且背景程序可歷經最小抵達延遲及/或封包對之間抵達延遲的變化。然而,一旦電腦系統202上前景(例如高優先性)程序開始透過網路鏈路204接收封包,背景程序可歷經抵達延遲及抵達延遲變化二者增加。抵達延遲最終可能超過預先指定的閾值,指出藉由競爭前景程序之網路鏈路204的使用。
為優先化藉由前景程序之網路鏈路204的使用,管理設備208可縮小背景程序之接收視窗,因而節流至背景程序網路流量。若抵達延遲保持超過閾值,管理設備208可持續縮小背景程序之接收視窗直至抵達延遲下降及/或接收視窗達到最小接收視窗(例如四封包之接收視窗)。在若干實施例中,最小接收視窗可為用於取樣網路鏈路204之最小接收視窗。
在前景程序結束使用網路鏈路204之後,背景程序可歷經抵達延遲減少,其最終可導致抵達延遲落在閾值以下。管理設備208接著可增大背景程序之接收視窗以增加網路鏈路204之利用,直至抵達延遲回至可接受值。以下參照圖3-6進一步詳細討論針對抵達延遲、接收視窗、及/或封包抵達時間之改變。
藉由根據抵達延遲210-212及/或優先性214-216而調整接收視窗218-220,監視設備206及管理 設備208可致能電腦系統202上程序間網路帶寬的共用及/或優先化,不需改變用以透過網路鏈路204從發送端222-224傳輸封包226-228至電腦系統202之協定(例如TCP)。此外,於電腦系統202上網路鏈路204無競爭時致能程序全存取網路鏈路204,監視設備206及管理設備208可藉由電腦系統202上程序而最大化網路鏈路204之利用。
熟悉本技藝之人士將理解圖2之系統可以各種方式實施。首先,監視設備206及管理設備208可追蹤抵達延遲210-212,並以個別或群組為基調整接收視窗218-220。例如,電腦系統202中每一程序可與監視設備206及管理設備208之分離情況相關,或可單一、集中化監視設備206及/或管理設備208監視及管理電腦系統202中所有程序之網路流量(例如在電腦系統202之作業系統中)。類似地,藉由相同軟體及/或硬體組件可提供監視設備206及管理設備208,或監視設備206及管理設備208可相互獨立地執行。例如,可藉由電腦系統202上一或多個專用處理器及/或通用處理器(例如中央處理單元(CPU))實施監視設備206及管理設備208。
其次,管理設備208可以若干方式管理程序之網路流量。例如,管理設備208可實施黑及白優先化技術,其中根據低優先性程序之抵達延遲僅調整低優先性(例如背景)程序之接收視窗,且寬接收視窗維持用於高優先性(例如前景)程序,如以上範例中所說明,無論高 優先性程序之抵達延遲。另一方面,管理設備208可根據程序之優先性而縮放調整接收視窗,且調整較低優先性程序之接收視窗比調整較高優先性程序之接收視窗接收更大負荷。藉由使用不同系統代表程序之優先性,包括數字規模(例如1至5、1至10等)、字母符號(例如A、B、C等)、及/或優先性級別(例如閒置、正常、高、即時),管理設備208可進一步影響調整。最後,管理設備208可使用不同閾值及/或邊限觸發接收視窗218-220改變以增加或減少電腦系統202對於抵達延遲210-212改變之敏感性及/或響應。
圖3顯示依據揭露之實施例之藉由二程序302、304隨時間306之網路鏈路的示範使用。程序302可為較低優先性(例如背景)程序,及程序304可為較高優先性(例如前景)程序。在時間t1 ,程序302可開始透過網路鏈路傳輸及接收封包。其次,在時間t2 ,程序304可開始使用網路鏈路,因而與程序302共用網路鏈路。在時間t3 ,程序304可使用網路鏈路,及在時間t4 ,程序302可停止使用網路鏈路。
圖4-6顯示依據揭露之實施例之示範圖。更具體地,圖4顯示來自圖3之程序302的抵達延遲402圖,作為時間404之函數,圖5顯示作為時間504之函數之程序302的接收視窗502圖,及圖6顯示作為時間604之函數之程序302的封包抵達602圖。
在時間t1 及t2 之間,程序302為網路鏈路的 唯一使用者,且抵達延遲402保持相對恆定及低。類似地,程序302之接收視窗502設定為預設值,且封包抵達602指出封包係以穩定高速率藉由程序302透過網路鏈路接收。
一旦程序304於時間t2 開始使用網路鏈路,程序302之抵達延遲402增加。為補償抵達延遲402之增加,程序302之接收視窗502可穩定地減少,直至達到最小接收視窗506。例如,接收視窗502可於單一步驟(例如直接至最小接收視窗506)或於一連串步驟(例如遞增直至達到最小接收視窗506)為程序302減少。程序302之接收視窗502接著可維持最小接收視窗506,以致能來自網路鏈路之封包的持續取樣,及使用封包之抵達延遲402的計算。例如,接收視窗502可具有四封包之下限(例如最小接收視窗506)以促進後續根據來自透過網路鏈路接收之每一組四封包的程序302之抵達延遲402之計算而調整程序302之接收視窗502。當程序302之接收視窗502設定為最小接收視窗506時,程序302之抵達延遲402可穩定化,且程序302之封包抵達602可以極慢速率增加,因為接收視窗502已節流程序302之網路流量。
在時間t3 及t4 之間,程序302之抵達延遲402可減少,因為網路鏈路不再藉由程序302、304共用。在與網路鏈路之唯一使用相關之最初低值(例如在時間t1 及t2 之間),程序302之抵達延遲402亦可拉平。同時,程序302之接收視窗502可增加以回應於抵達延遲 402減少直至達到接收視窗502之最初值。正如程序302之接收視窗502先前減少至最小接收視窗506,接收視窗502可遞增及/或以單一步驟增加至最初值。類似地,程序302之封包抵達602可繼續直至以與t1 至t2 之封包抵達速率相同高速率接收封包。換言之,與程序302相關之封包最初可完全利用網路鏈路,在與程序302共用網路鏈路期間變慢,一旦程序304已結束使用網路鏈路,便恢復完全利用網路鏈路。
圖7顯示流程圖,描繪依據揭露之實施例之促進網路鏈路使用之程序。在一或多個實施例中,可省略、重複、及/或以不同順序實施一或多個步驟。因此,圖7中所示之特定配置不應解譯為侷限本技術之範圍。
最初,監視透過網路鏈路從發送端接收之封包的抵達延遲(作業702)。網路鏈路可與WiFi網路及/或行動電話網路相關。例如,網路鏈路可對應於WiFi網路之無線存取點及/或行動電話網路之信號塔。可計算從網路鏈路接收之二或更多連續封包的抵達延遲,作為封包之「相對傳輸時間」中之差異。
其次,可根據藉由抵達延遲之超過及/或落於閾值以下而調整發送端之接收視窗(作業704-706),以促進收到透過網路鏈路來自發送端及/或其他發送端之後續封包。接收視窗可對應於資料量,發送端可傳輸而未接收來自資料之接收端的確認(例如TCP確認)。
若抵達延遲為超過或落於閾值以下(例如藉 由多於預先指定的邊限),可持續監視抵達延遲(作業702)以致能超過及/或落於閾值以下之抵達延遲之值的檢測。若抵達延遲超過閾值,便縮小接收視窗以減少後續封包之抵達延遲(作業708)。例如,可縮小接收視窗以減少可用於接收來自發送端之封包的網路帶寬,接著為網路鏈路上之競爭量。若抵達延遲落於閾值以下,則增大接收視窗以增加網路鏈路利用(作業710)。例如,接收視窗可增大以於網路鏈路之競爭終止後致能網路鏈路的完全利用。請注意,儘管說明單一閾值及/或單一預先指定的邊限,可於所說明之實施例中使用二(或更多)不同閾值及/或預先指定的邊限。例如,在若干實施例中,使用單一閾值,但第一預先指定的邊限用於超過閾值,及第二預先指定的邊限用於落於閾值以下。
藉由與(例如接收)封包相關之程序的優先性亦可影響接收視窗之調整(作業712)。例如具較低優先性之程序(例如背景程序)可較具較高優先性之程序(例如前景程序)實施接收視窗之更大調整。若調整未受優先性影響,調整則應用至接收視窗而無進一步修改。若調整受程序之優先性影響,便根據優先性縮放調整(作業714)。在已實施接收視窗的所有調整之後,可藉由傳輸包含接收視窗之新尺寸的確認封包至發送端而落實調整。
在收到透過網路鏈路來自發送端之封包期間,可持續調整接收視窗(作業716)。若持續調整接收視窗,則持續監視封包之抵達延遲(作業702),並根據 封包之抵達延遲及/或與封包相關之程序的優先性調整發送端之接收視窗(作業704-714)。可持續調整接收視窗及/或透過網路鏈路之網路流量,直至網路鏈路不再用以接收來自發送端之封包。請注意,「持續」監視可表示定期監視或依據預定安排監視(例如依據網路流量程度等)。
圖8顯示依據實施例之電腦系統800。電腦系統800可對應於包括處理802、記憶體804、儲存器806、及/或電子運算裝置中所發現之其他組件的設備。處理器802可支援與電腦系統800中其他處理器之並列處理及/或多線程作業。電腦系統800亦可包括輸入/輸出(I/O)裝置,諸如鍵盤808、滑鼠810、及顯示器812。
電腦系統800可包括執行所呈現實施例之各式組件的功能性。尤其,電腦系統800可包括作業系統(未顯示),其協調使用電腦系統800上硬體及軟體資源,以及實施使用者特定作業之一或多個應用。為實施使用者之作業,應用可從作業系統獲得電腦系統800上硬體資源之使用,以及經由藉由作業系統提供之硬體及/或軟體框架而與使用者互動。
在一或多個實施例中,電腦系統800提供用於促進網路鏈路使用之系統。系統可包括監視設備,持續監視透過網路鏈路從發送端接收之封包的抵達延遲。系統亦可包括管理設備,其根據抵達延遲調整發送端之接收視窗,以促進收到透過網路鏈路來自發送端及其他發送端之 後續封包。管理設備亦可根據與封包相關之程序的優先性而調整接收視窗。
此外,電腦系統800之一或多個組件可遠端配置並透過網路連接至其他組件。所呈現實施例之部分(例如監視設備、管理設備等)亦可配置於實施實施例之分佈系統的不同節點。例如,可使用遠端網路流量控制系統實施所呈現實施例,其監視一組遠端電腦系統中程序之抵達延遲,並根據抵達延遲及/或程序之優先性調整程序之接收視窗。
上述各式實施例之說明已僅為描繪及說明目的予以呈現。不希望排他或侷限本發明於所揭露之形式。因此,對於熟悉本技藝之從業者而言,需多修改及變化將是顯而易見。此外,以上揭露不希望侷限本發明。

Claims (18)

  1. 一種電腦實施之方法,用於促進網路鏈路之使用,該方法包含:在一接收端處監視透過該網路鏈路從發送端接收之封包的抵達延遲;以及根據該抵達延遲調整用於該發送端之接收視窗,以促進透過該網路鏈路收到來自該發送端及其他發送端之後續封包;其中根據執行於該接收端之一電腦系統上之一程序之優先性而縮放對該接收視窗之調整,其中該程序與該等封包相關。
  2. 如申請專利範圍第2項之電腦實施之方法,其中,該程序為前景程序或背景程序。
  3. 如申請專利範圍第1項之電腦實施之方法,其中,根據該抵達延遲調整該發送端之該接收視窗包含:若該抵達延遲超過第一預先指定的邊限之閾值,則減少該接收視窗;以及若該抵達延遲降至第二預先指定的邊限之該閾值以下,則增加該接收視窗。
  4. 如申請專利範圍第1項之電腦實施之方法,其中,調整該發送端之該接收視窗包含:傳輸包含該接收視窗之新尺寸的確認封包至該發送端。
  5. 如申請專利範圍第1項之電腦實施之方法,其中,該網路鏈路為WiFi網路鏈路或行動電話網路鏈路之一者。
  6. 如申請專利範圍第1項之電腦實施之方法,其中,該接收視窗未減少至低於與該網路鏈路取樣相關之最小接收視窗。
  7. 一種系統,用於促進網路鏈路之使用,該系統包含: 監視設備,經組配以在一接收端處監視透過該網路鏈路從發送端接收之封包的抵達延遲;以及管理設備,經組配以根據該抵達延遲調整用於該發送端之接收視窗,以促進透過該網路鏈路收到來自該發送端及其他發送端之後續封包;其中根據執行於該接收端之一電腦系統上之一程序之優先性而縮放對該接收視窗之調整,其中該程序與該等封包相關。
  8. 如申請專利範圍第7項之系統,其中,該程序為前景程序或背景程序。
  9. 如申請專利範圍第7項之系統,其中,根據該抵達延遲調整該發送端之該接收視窗包含:若該抵達延遲超過第一預先指定的邊限之閾值,則減少該接收視窗;以及若該抵達延遲降至第二預先指定的邊限之該閾值以下,則增加該接收視窗。
  10. 如申請專利範圍第7項之系統,其中,調整該發送端之該接收視窗包含:傳輸包含該接收視窗之新尺寸的確認封包至該發送端。
  11. 如申請專利範圍第7項之系統,其中,該網路鏈路為WiFi網路鏈路或行動電話網路鏈路之一者。
  12. 如申請專利範圍第7項之系統,其中,該接收視窗未減少至低於與該網路鏈路取樣相關之最小接收視窗。
  13. 一種非暫時性之電腦可讀取儲存媒體,其儲存指令當藉由電腦執行時致使該電腦實施一種方法,用於促進網路鏈路之使用,該方法包含:在一接收端處監視透過該網路鏈路從發送端接收之封包的抵 達延遲;以及根據該抵達延遲調整用於該發送端之接收視窗,以促進透過該網路鏈路收到來自該發送端及其他發送端之後續封包;其中根據執行於該接收端之一電腦系統上之一程序之優先性而縮放對該接收視窗之調整,其中該程序與該等封包相關。
  14. 如申請專利範圍第13項之非暫時性之電腦可讀取儲存媒體,其中,該程序為前景程序或背景程序。
  15. 如申請專利範圍第13項之非暫時性之電腦可讀取儲存媒體,其中根據該抵達延遲調整用於該發送端之該第一視窗包含:若該抵達延遲超過第一預先指定的邊限之閾值,則減少該接收視窗;以及若該抵達延遲降至第二預先指定的邊限之該閾值以下,則增加該接收視窗。
  16. 如申請專利範圍第13項之非暫時性之電腦可讀取儲存媒體,其中調整用於該發送端之該第一視窗包含:傳輸包含該接收視窗之新尺寸的確認封包至該發送端。
  17. 如申請專利範圍第13項之非暫時性之電腦可讀取儲存媒體,其中,該網路鏈路為WiFi網路鏈路或行動電話網路鏈路之一者。
  18. 如申請專利範圍第13項之非暫時性之電腦可讀取儲存媒體,其中,該接收視窗未減少至低於與該網路鏈路取樣相關之最小接收視窗。
TW102104398A 2012-02-17 2013-02-05 減少網路流量中的抵達延遲 TWI498018B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US13/399,860 US8699339B2 (en) 2012-02-17 2012-02-17 Reducing interarrival delays in network traffic

Publications (2)

Publication Number Publication Date
TW201342949A TW201342949A (zh) 2013-10-16
TWI498018B true TWI498018B (zh) 2015-08-21

Family

ID=47843393

Family Applications (1)

Application Number Title Priority Date Filing Date
TW102104398A TWI498018B (zh) 2012-02-17 2013-02-05 減少網路流量中的抵達延遲

Country Status (7)

Country Link
US (2) US8699339B2 (zh)
EP (1) EP2792190B1 (zh)
JP (1) JP6029074B2 (zh)
KR (1) KR101608612B1 (zh)
CN (1) CN104145459B (zh)
TW (1) TWI498018B (zh)
WO (1) WO2013123261A2 (zh)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8699339B2 (en) * 2012-02-17 2014-04-15 Apple Inc. Reducing interarrival delays in network traffic
KR101491639B1 (ko) * 2012-11-15 2015-02-09 (주)씨디네트웍스 통신망의 종류를 구분하는 방법 및 이를 이용한 콘텐츠 제공 방법
EP3148150B1 (en) 2014-06-25 2018-03-21 Huawei Technologies Co., Ltd. Method and device for determining transmission buffer size
US9804951B2 (en) 2014-10-08 2017-10-31 Signalfx, Inc. Quantization of data streams of instrumented software
US9846574B2 (en) 2014-12-19 2017-12-19 Signalfx, Inc. Representing result data streams based on execution of data stream language programs
US10122640B2 (en) * 2015-01-26 2018-11-06 LiveQoS Inc. Minimal buffer network arbiter
US10394692B2 (en) * 2015-01-29 2019-08-27 Signalfx, Inc. Real-time processing of data streams received from instrumented software
EP3266171A4 (en) * 2015-03-06 2018-03-14 Telefonaktiebolaget LM Ericsson (publ) Multi-user packet transmission, clustering and/or scheduling in a wireless local area network
CN106470448B (zh) * 2015-08-14 2020-10-30 中兴通讯股份有限公司 一种基站的信令接收方法和装置
US9668209B1 (en) * 2016-06-29 2017-05-30 Silicon Laboratories Finland Oy Listening window adjustments for power savings in bluetooth low energy (BLE) communications
JP6691298B2 (ja) * 2016-08-15 2020-04-28 富士通株式会社 パケット解析プログラム、パケット解析方法およびパケット解析装置
CN107302533A (zh) * 2017-06-19 2017-10-27 网宿科技股份有限公司 流媒体直播方法、系统及装置
US10524159B2 (en) * 2017-09-07 2019-12-31 Iridium Satellite Llc Managing congestion in a satellite communications network
CN107708199B (zh) * 2017-09-26 2021-01-26 南京哈卢信息科技有限公司 一种提高低功耗无线蜂窝网下行可靠性的方法
WO2019231453A1 (en) * 2018-05-31 2019-12-05 Hewlett-Packard Development Company, L.P. Packets transmissions based on priority levels
US11226663B2 (en) * 2018-06-29 2022-01-18 Intel Corporation Methods, systems, articles of manufacture and apparatus to reduce temperature of a networked device
EP3854130A1 (en) * 2018-09-20 2021-07-28 Telefonaktiebolaget LM Ericsson (publ) Technique for performing analysis of an rtp flow
KR102624295B1 (ko) * 2021-08-03 2024-01-11 중앙대학교 산학협력단 시민감 네트워크 환경에서의 시제어 스케줄링 방법 및 시스템

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070280111A1 (en) * 2006-05-30 2007-12-06 Martin Lund Method and system for adaptive queue and buffer control based on monitoring and active congestion avoidance in a packet network switch
CN101142789A (zh) * 2005-03-14 2008-03-12 皇家飞利浦电子股份有限公司 区分服务的无线网络中的QoS测量和监视

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63232550A (ja) * 1987-03-19 1988-09-28 Fujitsu Ltd ホスト・通信制御処理装置間のウインドウサイズ制御方式
JP3231941B2 (ja) * 1994-05-06 2001-11-26 日本電信電話株式会社 輻輳防止方法およびパケット通信システム
US6052726A (en) * 1997-06-30 2000-04-18 Mci Communications Corp. Delay calculation for a frame relay network
US6272110B1 (en) * 1997-10-10 2001-08-07 Nortel Networks Limited Method and apparatus for managing at least part of a communications network
US6026442A (en) * 1997-11-24 2000-02-15 Cabletron Systems, Inc. Method and apparatus for surveillance in communications networks
US6012096A (en) * 1998-04-23 2000-01-04 Microsoft Corporation Method and system for peer-to-peer network latency measurement
US6594238B1 (en) * 1998-06-19 2003-07-15 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for dynamically adapting a connection state in a mobile communications system
BR9912121A (pt) * 1998-07-16 2001-04-10 Siemens Ag Processo e disposição de circuito para produção de ligações de sinal de dados
US6516348B1 (en) * 1999-05-21 2003-02-04 Macfarlane Druce Ian Craig Rattray Collecting and predicting capacity information for composite network resource formed by combining ports of an access server and/or links of wide arear network
US6556659B1 (en) * 1999-06-02 2003-04-29 Accenture Llp Service level management in a hybrid network architecture
US7020697B1 (en) * 1999-10-01 2006-03-28 Accenture Llp Architectures for netcentric computing systems
AU1321801A (en) * 1999-10-29 2001-05-08 Forskarpatent I Vastsverige Ab Method and arrangements for congestion control in packet networks using thresholds and demoting of packet flows
US6606744B1 (en) * 1999-11-22 2003-08-12 Accenture, Llp Providing collaborative installation management in a network-based supply chain environment
US7142508B2 (en) * 2000-12-22 2006-11-28 Radiance Technologies, Inc. System and method for controlling data transfer rates on a network
AU2003228411A1 (en) * 2002-03-29 2003-10-13 Network Genomics, Inc. Forward looking infrastructure re-provisioning
US7516238B2 (en) * 2003-09-30 2009-04-07 Microsoft Corporation Background transport service
US20070223529A1 (en) * 2005-11-23 2007-09-27 Ist International, Inc. Methods and apparatus for estimating bandwidth of a data network
TW200816719A (en) * 2006-08-23 2008-04-01 Matsushita Electric Ind Co Ltd Communication equipment
JP4627290B2 (ja) * 2006-09-29 2011-02-09 Kddi株式会社 Tcpを用いたレート制御方法、サーバ及びプログラム
WO2011074116A1 (ja) * 2009-12-18 2011-06-23 三菱電機株式会社 優先制御装置、車載装置および優先制御方法
JP5550438B2 (ja) * 2010-04-30 2014-07-16 株式会社Kddi研究所 ウィンドウ制御装置、ウィンドウ制御方法およびウィンドウ制御プログラム
US8699339B2 (en) * 2012-02-17 2014-04-15 Apple Inc. Reducing interarrival delays in network traffic

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101142789A (zh) * 2005-03-14 2008-03-12 皇家飞利浦电子股份有限公司 区分服务的无线网络中的QoS测量和监视
US20070280111A1 (en) * 2006-05-30 2007-12-06 Martin Lund Method and system for adaptive queue and buffer control based on monitoring and active congestion avoidance in a packet network switch

Also Published As

Publication number Publication date
WO2013123261A2 (en) 2013-08-22
JP2015510740A (ja) 2015-04-09
WO2013123261A3 (en) 2014-02-20
EP2792190A2 (en) 2014-10-22
CN104145459A (zh) 2014-11-12
US9247449B2 (en) 2016-01-26
US20140192649A1 (en) 2014-07-10
CN104145459B (zh) 2017-10-31
TW201342949A (zh) 2013-10-16
KR20140134678A (ko) 2014-11-24
US8699339B2 (en) 2014-04-15
KR101608612B1 (ko) 2016-04-01
US20130215746A1 (en) 2013-08-22
JP6029074B2 (ja) 2016-11-24
EP2792190B1 (en) 2018-03-28

Similar Documents

Publication Publication Date Title
TWI498018B (zh) 減少網路流量中的抵達延遲
US11196653B2 (en) Systems and methods for dynamic bandwidth allocation and optimization
US11405491B2 (en) System and method for data transfer, including protocols for use in reducing network latency
US9455922B2 (en) Technologies for moderating packet ingress interrupt generation
KR101670642B1 (ko) 클라이언트 디바이스 상에서의 패킷 송신을 스케줄링하기 위한 시스템 및 방법
JP4791322B2 (ja) 帯域幅保証を伴う適応性帯域幅制御のための方法及び装置
US9237107B2 (en) Fair quantized congestion notification (FQCN) to mitigate transport control protocol (TCP) throughput collapse in data center networks
EP3442180B1 (en) Congestion processing method, host, and system
WO2020042624A1 (zh) 传输速率控制方法、装置、发送设备和接收设备
US20140369191A1 (en) Method and apparatus for controlling source transmission rate for video streaming based on queuing delay
Lu et al. Dynamic ECN marking threshold algorithm for TCP congestion control in data center networks
US20080291833A1 (en) Method for buffer control for network device
US9705733B2 (en) Systems and methods for throttling polling
US9413672B2 (en) Flow control for network packets from applications in electronic devices
CN116868553A (zh) 用于管理端点资源和拥塞缓解的数据中心网络上的动态网络接收器驱动的数据调度
Lu et al. FAMD: A Flow-Aware Marking and Delay-based TCP algorithm for datacenter networks
Zhang et al. An evaluation of bottleneck bandwidth and round trip time and its variants
WO2023119511A1 (ja) 通信装置、通信システム、及び通信方法
Wu et al. Stabilizing transport dynamics of control channels over wide-area networks
CN118138530A (zh) 网络主动拥塞控制方法、装置、电子设备及存储介质