專利名稱:用于在網絡中進行通信的系統和方法
技術領域:
概括地說,本申請涉及通信技術,具體地說,本申請涉及為用于網絡中的通信設備的傳輸控制協議(TCP)流排列優先順序。
背景技術:
通信系統被廣泛地部署以提供通信設備(例如,移動手持設備、PDA (個人數字助理)、個人計算機、智能電話、服務器或能夠經由網絡進行通信的任何其它電子設備)之間的各種類型的通信(例如,語音、數據、多媒體服務等)。這些設備可以經由互連設備的網絡在相互之間發送/接收數據。所述數據可以作為不同的數據集合(其稱為流)被發送。例如,一個設備與另一個設備之間的第一視頻流的傳輸可以稱為第一流,并且一個設備與另一個設備之間的用于網頁的數據分組的傳輸可以稱為第二流。這些數據流可以各自與在通信設備上運行的特定應用相關聯。另外,這些設備通過有線連接或無線連接互連。這些設備可以經由一個或多個網絡接口接入這些連接中的一個或多個連接。這些連接和/或網絡接口可以具有它們所能夠處理的有限量的帶寬。因此,可能存在有限量的可用帶寬供設備用來進行通信。相應地,當多個流請求使用可用帶寬時,可以在 流之間分配帶寬。網絡中的數據流的傳輸和對這些流的帶寬分配部分地由傳輸控制協議(TCP )來處理。一般情況下,TCP在流之間均勻地分配可用帶寬。然而,不同的流可能具有不同的最小吞吐量要求和不同的最大期望吞吐量,以便使應用良好地工作。例如,視頻流可能會要求最小帶寬,以便使該視頻在應用中流暢且準確地回放。僅僅在流之間均勻分配可用帶寬無法確保為該視頻流分配所要求的最小帶寬。即使當不同的流的最小吞吐量要求和最大吞吐量要求是相等的或未知的時,用戶也可能會對一個流具有特別的興趣。例如,當一個流在前臺時,用戶可能會注意相應的應用,因此可能期望優先考慮該流。更普遍的情況是,不同的流可能具有不同的要求,例如,基于每個流的屬性的固有要求,或者與使用設備的場景有關的固有要求。因此,需要用于流之間的帶寬的增強的系統和方法。
發明內容
本發明的系統、方法和設備各自具有若干方面,這些方面中沒有哪個單一方面單獨地負責其期望的屬性。現在在不限制如所附權利要求書所表達的本發明的保護范圍的情況下,對某些特征進行簡要地論述。在考慮該論述之后,特別是在閱讀標題為“具體實施方式
”的部分之后,人們將理解本發明的特征是如何提供包括為用于網絡中的通信設備的傳輸控制協議(TCP)流排列優先順序的優勢的。本申請公開內容的一個實施例提供了一種在通信網絡中操作的設備。該設備包括處理器。該處理器被配置為基于共享的業務流約束來從多個流中識別流集合。所述流集合包括第一流和第二流。所述處理器還被配置為基于所述業務流約束和與所述業務流約束相關聯的可用帶寬來為所述流集合中的每個流分配帶寬。本申請公開內容的另一個實施例提供了一種在通信網絡中操作的設備中操作的方法。該方法包括:基于共享的業務流約束來從多個流中識別流集合。所述流集合包括第一流和第二流。該方法還包括:基于所述業務流約束和與所述業務流約束相關聯的可用帶寬來為所述流集合中的每個流分配帶寬。本申請公開內容的另一個實施例提供了一種在通信網絡中操作的設備。該設備包括用于基于共享的業務流約束來從多個流中識別流集合的單元。所述流集合包括第一流和第二流。所述設備還包括:用于基于所述業務流約束和與所述業務流約束相關聯的可用帶寬來為所述流集合中的每個流分配帶寬的單元。本申請公開內容的另一個實施例提供了一種包括非臨時計算機可讀介質的計算機程序產品。該計算機可讀介質包括:用于使計算機基于共享的業務流約束來從多個流中識別流集合的代碼。所述流集合包括第一流和第二流。所述計算機可讀介質還包括:用于使計算機基于所述業務流約束和與所述業務流約束相關聯的可用帶寬來為所述流集合中的每個流分配帶寬的代碼。
圖1示出了示例性通信網絡。圖2是示出了用于在發射機側為流排列優先順序的示例性過程的流程圖。圖3是示出了用于在接收機側為流排列優先順序的示例性過程的流程圖。圖4是可以用在圖1的通信網絡中的第一示例性設備和第二示例性設備的功能框圖。圖5是可以用在圖1的通信網絡中的另一個示例性無線設備的功能框圖。
具體實施例方式在本申請中,“示例性”一詞用來表示“用作例子、例證或說明”。本申請中被描述為“示例性”的任何實施例不一定被解釋為比其它實施例更優選或更具優勢。為了使本領域任何技術人員能夠實現和使用本發明,給出了以下描述。在以下描述中,為了解釋的目的而列出了細節。應當明白的是,本領域普通技術人員可以認識到,在不使用這些特定細節的情況下也可以實現本發明。在其它實例中,不會對公知的結構和過程進行詳細闡述,以避免不必要的細節使本發明的描述變得晦澀。因此,本發明并非旨在限于所示的實施例,而是與符合本申請所公開的原理和特征的最廣范圍相一致。本申請描述的技術可以用于各種通信網絡,例如碼分多址(CDMA)網絡、時分多址(TDMA)網絡、頻分多址(FDMA)網絡、正交FDMA (OFDMA)網絡、單載波FDMA (SD-FDMA)網絡、局域網(LAN)、個域網(PAN)、廣域網(WAN)、有線網絡等等。術語“網絡”和“系統”經常可互換地使用。CDMA網絡可以實現諸如通用陸地無線接入(UTRA)、cdma2000等等之類的無線技術。UTRA 包括寬帶 CDMA (W-CDMA)和低碼片速率(LCR)。cdma2000 涵蓋 IS-2000、IS-95 和IS-856標準。TDMA網絡可以實現諸如全球移動通信系統(GSM)之類的無線技術。OFDMA網絡可以實現諸如演進型 UTRA (E-UTRA)、ΙΕΕΕ802.9、ΙΕΕΕ802.16、ΙΕΕΕ802.20、Flash_0FDM”等等之類的無線技術。UTRA、E-UTRA和GSM是通用移動通信系統(UMTS)的一部分。長期演進(LTE)是使用E-UTRA的UMTS的即將發行版。在來自名為“第三代合作伙伴計劃”(3GPP)的組織的文檔中描述了 UTRA、E-UTRA, GSM、UMTS和LTE。在來自名為“第三代合作伙伴計劃2”(3GPP2)的組織的文檔中描述了 cdma2000。這些各種無線技術和標準都為本領域所公知。單載波頻分多址(SC-FDMA)使用單載波調制和頻域均衡。SC-FDMA與OFDMA系統具有相似的性能和基本相似的整體復雜度。SC-FDMA信號由于其固有的單載波結構而具有較低的峰均功率比(PAPR)。SC-FDMA尤其在上行鏈路通信中已引起強烈的關注,其中在上行鏈路通信中,較低的PAPR使移動終端在發射功率效率方面極大地受益。SC-FDMA是當前針對3GPP長期演進(LTE)或演進型UTRA (E-UTRA)中的上行鏈路多址方案的工作設想。本申請描述了允許為用于網絡中的設備的流排列優先順序的系統和方法。本申請所描述的系統和方法涉及為輸出流(經由網絡從該設備向另一個設備發送的業務的流)排列優選順序,并且還涉及為輸入流(由該設備經由網絡從另一個設備接收的業務的流)排列優先順序。相應地,可以對不同的流進行節流,或者可以響應于分組丟失,為不同的流提供更積極的足以允許該設備上的依賴數據流的應用適當工作的帶寬參數。流是指由在設備上運行的應用發送或接收的數據集合或分組集合。盡管可以在本申請中參照TCP連接對流進行描述,但是流并非限于此。在各個實施例中,流可以包括任何傳輸協議或套接字類型,例如,TCP、SCTP, UDP、原始IP等等。此外,流可以與應用相關聯。例如,流可以指通過在運行于設備102上的發送應用與接收應用之間形成的TCP連接所發送的數據。到達的TCP數據分組通過該TCP數據分組的套接字(即,源主機地址、源端口、目的地主機地址和目的地端口的組合)被識別為屬于特定TCP連接。每個設備可以向發送/接收數據流所通過的TCP連接指派TCP端口。相應地,可以通過調整與流中的每個流的TCP連接相關聯的參數來為這些流分配不同的帶寬。一個設備上的一個或多個應用可以各自與一個或多個其它設備上的一個或多個另外的應用中的每一個應用形成一個或多個TCP連接。相應地,應用可以具有一個或多個輸出流和一個或多個輸入流,這些流中的每一個流指代不同的數據集合并且與不同的TCP連接相關聯。例如,由第一設備向第二設備進行的第一視頻流的發送可以稱為第一設備的第一輸出流。另外,由第二設備從第一設備進行的第一視頻流的接收可以稱為第二設備的第一輸入流。另外,從第一設備向第二設備進行的用于網頁的數據分組的發送可以稱為第一設備的第二輸出流。由第二設備從第一設備進行的用于網頁的數據分組的接收可以稱為第二設備的第二輸入流。本申請所描述的系統和方法涉及:基于設備可用的帶寬來計算針對與該設備相關聯的不同流的目標速率。本申請所描述的系統和方法還涉及:識別共享資源的流,以確定一個流對帶寬的使用是否影響了針對另一個流的可用帶寬。本申請所描述的系統和方法還涉及:基于調整TCP參數來實施(enforce)對流的帶寬分配的優先級。應當注意到,盡管本申請中的某些示例僅論述了兩個流,但是本領域技術人員將認識到,針對兩個流所描述的原理同樣適用于具有多個流(N個)的實施例,其中N是任意正整數。圖1示出了示例性通信網絡100。該通信網絡100 (例如,互聯網、LAN、PAN、WAN等)被配置為支持多個通信設備102a-102g (例如,移動手持設備、PDA (個人數字助理)、個人計算機、智能電話、服務器或能夠經由網絡進行通信的任何其它電子設備)之間的通信。通信設備102a-102g可以通過一個或多個有線或無線通信鏈路104a-104h互連。通信鏈路104a-104h可以包括下列類型的通信鏈路中的一種或多種:GSM (全球移動通信系統)、UMTS(通用移動通信系統)、UMTS-TDD (UMTS時分雙工)、CDMA (碼分多址)、CDMA2000、WCDMA (寬帶CDMA)、TDMA (時分多址)、FDMA (頻分多址)、IxEV-DO (演進數據優化)^^^-1& 、藍牙、或者IEEE802.11、電話(例如,POTS)、線纜、以太網、PLC (電力線通信)、或者光纖鏈路、或者允許設備之間連接的任何其它鏈路。應當注意到,網絡100可以包括更多或更少的通信設備102,并且這些通信設備102之間可以具有不同的鏈路104布置。通信設備102a_102g中的每個通信設備可以經由鏈路104a_104h中的一個或多個鏈路與其它設備通信。例如,通信設備102a可以經由鏈路104a和/或經由通信鏈路104b與104c的組合與通信設備102d通信。例如,設備102a可以運行向設備102d發送數據(例如,用于web瀏覽會話的數據分組、用于基于IP的語音(VoIP)呼叫的數據分組、用于視頻流的數據分組或者其它數據或媒體內容)并且/或者從設備102d接收數據的應用(例如,web瀏覽器、視頻播放器、電子郵件客戶端或者另一個其它應用)。設備102a還可以運行另外的應用,并向設備102d和/或其它設備102發送數據,并且/或者從設備102d和/或其它設備102接收數據。每個設備102a_102g可能在其可以在一個或多個鏈路上發送和/或接收的數據的量方面受到約束。該約束可能是由設備的物理約束(例如,設備的網絡接口的約束)和/或鏈路的物理約束或者某些其它約束造成的。相應地,針對每個設備102a-102g,存在有限量的帶寬可用來發送和/或接收數據。在某些實施例中,用于發送數據的可用帶寬與用于接收數據的可用帶寬相關。在其它實施例中,用于發送數據的可用帶寬與用于接收數據的可用帶寬無關。相應地, 當設備發送/接收多個流時,需要在這多個流之間分配可用帶寬。不同的流基于與該流相關聯的應用,可以具有不同的最小吞吐量要求和不同的最大期望吞吐量。例如,視頻流可能要求最小帶寬以便使該視頻在應用中流暢且正確地回放,因為數據需要順序地且在某個時間段內被接收以便實況回放。另一方面,包含用于網頁的數據分組的流可能不要求最小帶寬,因為只要所有的分組都被接收時就可以交付網頁。相應地,應當基于每個設備102a-102g的流的要求為該流分配帶寬。另外,不同的流可以具有不同的優先級。例如,一個流可以與重要應用相關聯,應當在為另一個流分配帶寬任何帶寬之前為該流分配最小要求帶寬,或者一個流可以與位于圖形用戶界面中的前臺中的應用相關聯,因此該流很可能被用戶視為高優先級。可以通過很多不同的方法為流排列優先順序。優先級水平可以是絕對優先級水平,其中每個流被給予特定優先級值(例如,1,2,3等)。或者,優先級水平可以是相對的,其中一個流的優先級水平是相對于另一個流來進行定義的(例如,流I的優先級高于流2的優先級并且/或者低于流3的優先級)。另外,可以通過很多不同的方法來為流指派優先級水平。例如,使用流的應用可以例如通過使用應用編程接口(API),來從設備的控制流的操作系統或管理器應用請求針對該流的特定優先級水平。或者,可以由設備基于諸如應用類型之類的某個參數來為該流自動指派特定流(例如,為web瀏覽器指派比視頻播放器低的優先級)。在另一個實施例中,設備的用戶可以為流設置優先級水平。在一個實施例中,設備102a_102g中的每個設備可以使用TCP來執行擁塞控制,并且因此為不同的流間接指派資源。在發送方設備側,TCP利用窗口縮放來控制為用于發送/接收數據的流分配的帶寬。針對給定流,通過設置擁塞窗口尺寸(該窗口尺寸是在發射機沒有從接收機接收到確認的情況下,可以從該發射機向該接收機發送的分組的數量)來使窗口縮放工作。從發射機向接收機發送數據分組和由發射機從接收機接收確認所花費的時間稱為往返時間(RTT)。增加針對流的擁塞窗口尺寸通過允許在每個RTT發送更多的數據而增加了該流可用的帶寬。在一個實施例中,TCP為流設置達到特定帶寬的初始擁塞窗口尺寸。隨后,TCP按照如下方式基于數據分組的丟失來縮放擁塞窗口尺寸。如果流的數據分組由發射機成功發送到接收機,并且發射機接收到確認,則將擁塞窗口尺寸增加量α (增加參數),該量α被加到當前擁塞窗口尺寸上。如果流的一個或多個數據分組未被發射機成功發送到接收機,并且發射機接收到請求相同的未被成功發送的數據分組的多個確認(即,重復確認),則通過因子β (減小參數)減小擁塞窗口尺寸,其中β是O與I之間的值,并且β與當前擁塞窗口尺寸相乘。如下面所論述的,發射機使用值α和β來調整擁塞窗口尺寸。在一個實施例中,TCP通過針對設備102中的每個流將擁塞窗口尺寸設置為相等的默認值,來為每個流初始地分配相等量的帶寬。然而,為了將一個流的優選順序排列到另一個流之前,并為給定流分配較大的帶寬,可以針對不同的流不同地調整用于控制擁塞窗口尺寸改變的參數α和β。相應地,針對不同的流的擁塞窗口尺寸將以不同的比率改變,從而導致針對不同流的不同擁塞窗口尺寸。如本申請所述,帶寬分配可以包括直接帶寬分配(例如通過QoS機制進行的帶寬分配)和間接帶寬分配。作為間接帶寬分配的一個示例,UDP流和TCP流可以使網絡連接飽和。通過對TCP流進行節流,可以間接為UDP流分配較多的帶寬。通過為TCP流提供積極的帶寬參數(如以下更詳細地描述的),可以間接為UDP流分配較少的帶寬。因此,分配帶寬可以包括:調整網絡參數(例如,本申請所描述的TCP參數),使得一個或多個流被節流,被給予積極參數,被排列優先順序并且/或者被重新排列優選順序,從而向一個或多個其它流提供不同量的帶寬。例如,一種為高優先級流分配較多帶寬的方法包括:增加針對高優先級流的參數α并且/或者減小針對低優先級流的參數a。正常情況下,α等于I。增加參數α (例如,增加到大于I的值)導致針對高優先級流的擁塞窗口尺寸比具有較小的參數α的流增加得更快。另外,減小參數α (例如,減小到小于I的值)導致針對低優先級流的擁塞窗口尺寸比具有較高的參數α的流增加得更慢。針對高優先級流和低優先級流兩者的擁塞窗口尺寸將增加到分組開始丟失為止。然而,由于α的值不同,高優先級流的擁塞窗口尺寸將比低優先級流的擁塞窗口尺寸增加得更快,因此隨著擁塞窗口尺寸增加,高優先級流將具有較大的擁塞窗口尺寸。相應地,高優先級流被分配較高的帶寬。在一個實施例中,增加與高優先級流相關聯的α并且減小與低優先級流相關聯的α。在另一個實施例中,僅增加與高優先級流相關聯的α。在又一個實施例中,僅減小與低優先級流相關聯的α。僅減小低優先級流的α至少具有一個優勢:不會由于α參數的改變而不公平地給予第三方流以較少的帶寬。具體來說,在增加與較高優先級流相關聯的α的情況下,不僅相對于已知的低優先級流,而且相對于可能未被顧及到并且具有α=1的正常值的其它第三方流,擁塞窗口尺寸增加得更快。因此,這些未被顧及到的流可能會比較高優先級流接收更少的帶寬(盡管并非期望如此)。通過僅減小針對較低優先級流的α,避免了這種情況,原因在于沒有流的優選順序被排列到具有α=1的正常值的流之前。另一種為高優先級流分配帶寬的方法包括:增加針對高優先級流的參數β并且/或者減小針對低優先級流的參數β。正常情況下,β等于0.5。增加參數β (例如,增加到大于0.5的值)導致針對高優先級流的擁塞窗口尺寸比具有較小的參數β的流減小得更少。另外,減小參數β (例如,減小到小于0.5的值)導致針對低優先級流的擁塞窗口尺寸比具有較高的參數β的流減小得更多。當分組開始丟失時,針對高優先級流和低優先級流兩者的擁塞窗口尺寸都將減小。然而,由于β的值不同,高優先級流的擁塞窗口尺寸將比低優先級流的擁塞窗口尺寸減小得更少,因此隨著擁塞窗口尺寸減小,高優先級流將具有較大的擁塞窗口尺寸。相應地,高優先級流被分配較高的帶寬。在一個實施例中,增加與高優先級流相關聯的β,并且減小與低優先級流相關聯的β。在另一個實施例中,僅增加與高優先級流相關聯的β。在又一個實施例中,僅減小與低優先級流相關聯的β。僅減小低優先級流的β至少具有一個優勢:不會由于β參數的改變而不公平地給予第三方流以較少的帶寬。具體來說,在增加與較高優先級流相關聯的β的情況下,不僅相對于已知的低優先級流,而且相對于可能未被顧及到并且具有β =0.5的正常值的其它第三方流,擁塞窗口尺寸減小得更少。因此,這些未被顧及到的流可能會比較高優先級流接收更少的帶寬(盡管并非期望如此)。通過僅減小針對較低優先級流的β,避免了這種情況,原因在于沒有流的優選順序被排列到具有β =0.5的正常值的流之前。應當注意到,如何調整α和β的值可以是基于不同的方法來進行的。在一個實施例中,可以基于試探(heuristic)來調整α和β的值。例如,可以基于流的當前速率、針對流的目標期望速率、最小速率約束和最大速率約束和/或容量約束,來調整α和β的值。在一個示例中,根據如下的式I和/或2,基于針對設備的流的目標期望速率來調整α和/或β。
權利要求
1.一種在通信網絡中操作的設備,所述設備包括: 處理器,其被配置為: 基于共享的業務流約束來從多個流中識別流集合,其中,所述流集合包括第一流和第二流;以及 基于所述業務流約束和與所述業務流約束相關聯的可用帶寬來為所述流集合中的每個流分配帶寬。
2.如權利要求1所述的設備,其中,所述處理器被配置為通過確定所述第一流是否在所述第二流經歷擁塞事件的閾值時間段內經歷所述擁塞事件來識別所述流集合。
3.如權利要求2所述的設備,其中,所述擁塞事件包括下列中的至少一個:丟失的分組、增加的往返時間、發送速率降低、瞬時吞吐量降低。
4.如權利要求1所述的設備,其中,所述處理器被配置為通過確定所述第一流是否被分配第一預期帶寬以及所述第二流是否被分配第二預期帶寬來識別所述流集合。
5.如權利要求1所述的設備,其中,所述處理器被配置為通過確定所述第一流是否被分配第一預期接收數據速率以及所述第二流是否被分配第二預期接收數據速率來識別所述流集合。
6.如權利要求1所述的設備,其中,所述處理器被配置為通過確定所述第一流是否被分配第一預期擁塞窗口尺寸以及所述第二流是否被分配第二預期擁塞窗口尺寸來識別所述流集合。
7.如權利要求1所述的設備,其中,所述處理器還被配置為確定針對所述第一流的第一目標數據速率和針對所述第二流的第二目標數據速率。
8.如權利要求7所述的設備`,其中,所述第一目標數據速率和所述第二目標數據速率是基于與所述業務流約束相關聯的可用帶寬來確定的。
9.如權利要求1所述的設備,其中,所述處理器還被配置為通過調整與所述流集合中的至少一個流相關聯的減小參數來為所述流集合中的每個流分配帶寬。
10.如權利要求1所述的設備,其中,所述處理器還被配置為通過調整與所述流集合中的至少一個流相關聯的增加參數來為所述流集合中的每個流分配帶寬。
11.如權利要求1所述的設備,其中,所述處理器還被配置為通過調整與所述流集合中的至少一個流相關聯的擁塞窗口尺寸來為所述流集合中的每個流分配帶寬。
12.如權利要求1所述的設備,其中,所述處理器還被配置為通過調整與所述流集合中的至少一個流相關聯的接收窗口尺寸來為所述流集合中的每個流分配帶寬。
13.如權利要求1所述的設備,其中,所述處理器還被配置為通過調整與所述流集合中的至少一個流相關聯的確認延遲時間來為所述流集合中的每個流分配帶寬。
14.一種在通信網絡中操作的設備中操作的方法,該方法包括: 基于共享的業務流約束來從多個流中識別流集合,其中所述流集合包括第一流和第二流;以及 基于所述業務流約束和與所述業務流約束相關聯的可用帶寬來為所述流集合中的每個流分配帶寬。
15.如權利要求14所述的方法,其中,識別所述流集合包括:確定所述第一流是否在所述第二流經歷擁塞事件的閾值時間段內經歷所述擁塞事件。
16.如權利要求15所述的方法,其中,所述擁塞事件包括下列中的至少一個:丟失的分組、增加的往返時間、發送速率降低、瞬時吞吐量降低。
17.如權利要求14所述的方法,其中,識別所述流集合包括:確定所述第一流是否被分配第一預期帶寬以及所述第二流是否被分配第二預期帶寬。
18.如權利要求14所述的方法,其中,識別所述流集合包括:確定所述第一流是否被分配第一預期接收數據速率以及所述第二流是否被分配第二預期接收數據速率。
19.如權利要求14所述的方法,其中,識別所述流集合包括:確定所述第一流是否被分配第一預期擁塞窗口尺寸以及所述第二流是否被分配第二預期擁塞窗口尺寸。
20.如權利要求14所述的方法,還包括:確定針對所述第一流的第一目標數據速率和針對所述第二流的第二目標數據速率。
21.如權利要求20所述的方法,其中,所述第一目標數據速率和所述第二目標數據速率是基于與所述業務流約束相關聯的可用帶寬來確定的。
22.如權利要求14所述的方法,其中,為所述流集合中的每個流分配帶寬包括:調整與所述流集合中的至少一個流相關聯的減小參數。
23.如權利要求14所 述的方法,其中,為所述流集合中的每個流分配帶寬包括:調整與所述流集合中的至少一個流相關聯的增加參數。
24.如權利要求14所述的方法,其中,為所述流集合中的每個流分配帶寬包括:調整與所述流集合中的至少一個流相關聯的擁塞窗口尺寸。
25.如權利要求14所述的方法,其中,為所述流集合中的每個流分配帶寬包括:調整與所述流集合中的至少一個流相關聯的接收窗口尺寸。
26.如權利要求14所述的方法,其中,為所述流集合中的每個流分配帶寬包括:調整與所述流集合中的至少一個流相關聯的確認延遲時間。
27.—種在通信網絡中操作的設備,所述設備包括: 用于基于共享的業務流約束來從多個流中識別流集合的單元,其中,所述流集合包括第一流和第二流;以及 用于基于所述業務流約束和與所述業務流約束相關聯的可用帶寬來為所述流集合中的每個流分配帶寬的單元。
28.如權利要求27所述的設備,其中,所述用于識別所述流集合的單元包括:用于確定所述第一流是否在所述第二流經歷擁塞事件的閾值時間段內經歷所述擁塞事件的單元。
29.如權利要求28所述的設備,其中,所述擁塞事件包括下列中的至少一個:丟失的分組、增加的往返時間、發送速率降低、瞬時吞吐量降低。
30.如權利要求27所述的設備,其中,所述用于識別所述流集合的單元包括:用于確定所述第一流是否被分配第一預期帶寬以及所述第二流是否被分配第二預期帶寬的單元。
31.如權利要求27所述的設備,其中,所述用于識別所述流集合的單元包括:用于確定所述第一流是否被分配第一預期接收數據速率以及所述第二流是否被分配第二預期接收數據速率的單元。
32.如權利要求27所述的設備,其中,所述用于識別所述流集合的單元包括:用于確定所述第一流是否被分配第一預期擁塞窗口尺寸以及所述第二流是否被分配第二預期擁塞窗口尺寸的單元。
33.如權利要求27所述的設備,還包括:用于確定針對所述第一流的第一目標數據速率和針對所述第二流的第二目標數據速率的單元。
34.如權利要求33所述的設備,其中,所述第一目標數據速率和所述第二目標數據速率是基于與所述業務流約束相關聯的可用帶寬來確定的。
35.如權利要求27所述的設備,其中,所述用于為所述流集合中的每個流分配帶寬的單元包括:用于調整與所述流集合中的至少一個流相關聯的減小參數的單元。
36.如權利要求27所述的設備,其中,所述用于為所述流集合中的每個流分配帶寬的單元包括:用于調整與所述流集合中的至少一個流相關聯的增加參數的單元。
37.如權利要求27所述的設備,其中,所述用于為所述流集合中的每個流分配帶寬的單元包括:用于調整與所述流集合中的至少一個流相關聯的擁塞窗口尺寸的單元。
38.如權利要求27所述的設備,其中,所述用于為所述流集合中的每個流分配帶寬的單元包括:用于調整與所述流集合中的至少一個流相關聯的接收窗口尺寸的單元。
39.如權利要求27所述的設備,其中,所述用于為所述流集合中的每個流分配帶寬的單元包括:用于調整與所述流集合中的至少一個流相關聯的確認延遲時間的單元。
40.一種計算機程序產品,包括: 非臨時性計算機可讀介質,其包括:` 用于使計算機基于共享的業務流約束來從多個流中識別流集合的代碼,其中,所述流集合包括第一流和第二流;以及 用于使計算機基于所述業務流約束和與所述業務流約束相關聯的可用帶寬來為所述流集合中的每個流分配帶寬的代碼。
41.如權利要求40所述的計算機程序產品,其中,用于使計算機識別所述流集合的代碼包括:用于使計算機確定所述第一流是否在所述第二流經歷擁塞事件的閾值時間段內經歷所述擁塞事件的代碼。
42.如權利要求41所述的計算機程序產品,其中,所述擁塞事件包括下列中的至少一個:丟失的分組、增加的往返時間、發送速率降低、瞬時吞吐量降低。
43.如權利要求40所述的計算機程序產品,其中,用于使計算機識別所述流集合的代碼包括:用于使計算機確定所述第一流是否被分配第一預期帶寬以及所述第二流是否被分配第二預期帶寬的代碼。
44.如權利要求40所述的計算機程序產品,其中,用于使計算機識別所述流集合的代碼包括:用于使計算機確定所述第一流是否被分配第一預期接收數據速率以及所述第二流是否被分配第二預期接收數據速率的代碼。
45.如權利要求40所述的計算機程序產品,其中,用于使計算機識別所述流集合的代碼包括:用于使計算機確定所述第一流是否被分配第一預期擁塞窗口尺寸以及所述第二流是否被分配第二預期擁塞窗口尺寸的代碼。
46.如權利要求40所述的計算機程序產品,其中,計算機可讀介質還包括:用于使計算機確定針對所述第一流的第一目標數據速率和針對所述第二流的第二目標數據速率的代碼。
47.如權利要求46所述的計算機程序產品,其中,所述第一目標數據速率和所述第二目標數據速率是基于與所述業務流約束相關聯的可用帶寬來確定的。
48.如權利要求40所述的計算機程序產品,其中,用于使計算機為所述流集合中的每個流分配帶寬的代碼包括:用于使計算機調整與所述流集合中的至少一個流相關聯的減小參數的代碼。
49.如權利要求40所述的計算機程序產品,其中,用于使計算機為所述流集合中的每個流分配帶寬的代碼包括:用于使計算機調整與所述流集合中的至少一個流相關聯的增加參數的代碼。
50.如權利要求40所述的計算機程序產品,其中,用于使計算機為所述流集合中的每個流分配帶寬的代碼包括:用于使計算機調整與所述流集合中的至少一個流相關聯的擁塞窗口尺寸的代碼。
51.如權利要求40所述的計算機程序產品,其中,用于使計算機為所述流集合中的每個流分配帶寬的代碼包括:用于使計算機調整與所述流集合中的至少一個流相關聯的接收窗口尺寸的代碼。
52.如權利要求40所述的計算機程序產品,其中,用于使計算機為所述流集合中的每個流分配帶寬的代碼 包括:用于使計算機調整與所述流集合中的至少一個流相關聯的確認延遲時間的代碼。
全文摘要
本申請描述了用于為用于網絡中的通信設備的傳輸控制協議(TCP)流排列優先順序的系統和方法。本申請的系統和方法還可以基于流的優先級為這些流分配帶寬。另外,本申請的系統和方法還允許設備確定特定流是否共享限制這些流的總體可用帶寬的業務流約束或瓶頸。因此,如果流共享業務流約束,則可以基于對一個流的帶寬分配來調整針對另一個流的帶寬分配。另外,本申請的系統和方法還允許基于共享的業務流約束來為這些流確定目標數據速率。
文檔編號H04L12/877GK103201988SQ201180052908
公開日2013年7月10日 申請日期2011年11月2日 優先權日2010年11月2日
發明者J·K·孫達拉拉詹, D·F·卡薩, G·賈雷塔, D·W·克雷格, J·H·拉加尼耶, G·B·霍恩 申請人:高通股份有限公司