新四季網

帶寬控制裝置的製作方法

2023-06-01 12:09:31 1

專利名稱:帶寬控制裝置的製作方法
技術領域:
本發明涉及在WWW (World Wide W^eb)等、在伺服器與終端間通信的網絡系統中、 具備設置在伺服器裝置中、或終端與伺服器裝置之間的通信路徑上的中繼裝置的帶寬控制 (traffic shaping/流量整形)技術。
背景技術:
有將網絡按照計劃使用帶寬籤訂合同、在合同帶寬內可以一定費用使用的合同方式。在這樣的合同中,對於網絡提供者而言,希望控制通信以使其不超過合同帶寬,此外,對於用戶而言,希望在合同帶寬內能夠以合同上限的帶寬進行通信。作為帶寬控制裝置的例子,在美國專利申請公開第2006/(^68719號中提出了中繼裝置通過令牌桶算法、或漏桶算法決定數據的發送定時、分別實現最低保證帶寬的保證、 和向最大容許帶寬以下的限制的方法。在TCP/IP等的協議中,在終端發送的段(傳輸層中的數據塊的稱呼)在網絡上丟失的情況下,終端檢測段的丟失而將該段再發送。一般,帶寬控制如上述美國專利申請公開第2006/(^68719號那樣,通過將在一定期間中中繼的數據量抑制為規定值以下,來限制網絡層中的通信帶寬,所以帶寬控制裝置不論是否再發送段都將數據的送出抑制在限制帶寬以下。因此,在頻繁發生段的丟失帶來的再發送、品質不好的網絡中,傳輸層中的通信帶寬比規定(合同)帶寬低。此外,接收側裝置如果接收到不是按照順序的段,則應答重複確認應答 (duplicate acknowledgment),發送側裝置如果接收到一定數量以上該重複確認應答,則判斷為丟失了段(稱作高速再傳送(Fast Retransmit))。但是,如果帶寬控制裝置限制通信帶寬,則接收側裝置接收不是按照順序的段的動作也延遲。結果,發送側裝置延遲接收重複確認應答,所以段丟失的檢測也變慢,傳輸層的通信帶寬進一步下降。因此,對於用戶而言,有可能不能進行合同的上限的帶寬下的通信。

發明內容
在TCP中,發送側裝置在段中包括表示其順序的信息而發送,接著接收側裝置將包括期待從發送側裝置的接收的段的順序信息的確認應答(acknowledgment)進行發送。在以下公開的帶寬控制功能的一例中,以在發送側裝置連續預先設定的數量以上接收到包括相同的順序信息Sequence ID/序列ID,以下簡稱作SID)的確認應答的情況下、將該SID以後的段再發送的情況為前提。中繼裝置按照每個連接計算預測為接著要接收的段的SID,作為預測SID存儲。帶寬控制功能如果接收到同連接的下個段,則將該預測SID與接收到的段的SID 比較,如果該SID小於預測SID,則將該段判斷為再發送的段,不控制其帶寬而向接收側裝
4置發送。由此,能夠防止帶寬控制裝置對再發送的段也控制帶寬而超過需要地控制通信帶覓ο此外,在連續一定數量以上接收到具有超過預測SID的SID的段的情況下,判斷為具有預測SID的段丟失了,對這些具有超過預測SID的SID的段不控制帶寬而向接收側發送。在公開的帶寬控制功能的另一例中,以在發送側裝置連續預先設定的數量以上接收到包含相同的SID的確認應答的情況下、將該SID的段再發送、然後再開始從再送前已發送的段的下個段起的發送的情況為前提。中繼裝置按照每個連接,參照接收到的段的SID和其尺寸,計算接收到的段的範圍作為已接收區間,與到目前為止的已接收區間連結並存儲。如果帶寬控制功能接收到同連接的下個段,則將該已接收區間與接收到的段的 SID比較,如果該SID不在已接收區間內,則將該段判斷為再發送的段,不控制其帶寬,向接收側裝置發送。由此,能夠防止帶寬控制裝置對再發送的段也控制帶寬而超過需要地控制
通f曰市覓ο此外,在接收段的SID是已接收區間外、並且是已接收區間以下的情況下,將該段判斷為再發送的段並且為帶寬控制的對象,比保留隊列的其他段更優先地向接收側裝置發送。通過這些,接收側裝置帶來的、請求丟失的段的確認應答被迅速向發送側裝置發送,所以能夠防止發送側裝置進行的段丟失的檢測和再發送因帶寬控制而延遲、結果超過需要地控制通信帶寬。通過上述技術方案,在錯誤率(error rate)較高的網絡中的通信中,能夠使傳輸層中的通信帶寬接近於規定帶寬。根據本發明,能夠進行更接近於合同帶寬的帶寬下的通信。


圖1是實施例1的中繼裝置的結構圖的一例。圖2是作為實施例1的中繼裝置使用的信息處理裝置的結構圖的一例。圖3是實施例1的中繼裝置處理從發送源通信裝置接收到的段的流程圖的一例。圖4是在實施例1的中繼裝置與伺服器、終端的通信中、在終端與中繼裝置間段丟失的情況的時序的一例。圖5是在實施例1的中繼裝置與伺服器、終端間的通信中、在中繼裝置與伺服器間段丟失的情況的時序的一例。圖6是實施例2的中繼裝置的結構圖的一例。圖7是實施例2的中繼裝置處理從發送源通信裝置接收到的段的流程圖的一例。圖8是實施例3的中繼裝置的結構圖的一例。圖9是實施例4的中繼裝置的結構圖的一例。圖10是在實施例2的中繼裝置與伺服器、終端的通信中、在終端與中繼裝置間段丟失的情況的時序的一例。圖11是在實施例2的中繼裝置與伺服器、終端的通信中、在中繼裝置與伺服器間段丟失的情況的時序的一例。圖12是在實施例3的中繼裝置與伺服器、終端的通信中、在中繼裝置與伺服器間段丟失的情況的時序的一例。
具體實施例方式以下,參照附圖對本發明的實施方式進行說明。在以下的各實施例中,對網絡上的中繼裝置具備帶寬控制功能的情況進行說明, 但也可以是伺服器裝置具備本帶寬控制功能。在以下的各實施例中,對傳輸層的協議是TCP、作為SID而使用TCP的序列號碼的情況進行說明,但也可以與TCP同樣是連接型的通信,是各段作為SID而具有相當於TCP的序列號碼Sequence number)的數據的順序信息的其他協議。例如,在TCP中,發送側裝置將SID包含在段中而發送,接收側裝置發送作為確認應答號碼而包括期待接著從發送側裝置的接收的段的SID的確認應答。進而,在以下的各實施例中,對網絡上的一個中繼裝置具備帶寬控制功能的情況進行說明,但帶寬控制功能具備的各處理部及存儲部也可以分別由用網絡連接的物理上不同的裝置具備。進而,在以下的各實施例中,中繼裝置對從伺服器向終端的通信控制帶寬(即,伺服器為發送側裝置,終端為接收側裝置),但也可以相反而控制從終端向伺服器的通信,此外也可以是對其兩方向控制。[實施例1]如圖1所示,本實施方式的通信系統包括在傳輸層的通信協議中使用TCP而從伺服器接收數據的終端102、使用該通信協議對終端發送數據的伺服器104、和在終端102與伺服器104之間的例如網際網路等的網絡106上進行通信的中繼和控制的中繼裝置100而構成。終端102、伺服器104和中繼裝置100也可以分別有多臺。另外,在本實施例中,設終端102作為對接收數據的確認應答(ACK)而參照包含在接收到的段中的SID和其尺寸,將包含接著期待接收的段的SID的確認應答向伺服器104 發送,伺服器104在連續預先設定的數量以上接收到包含相同的SID的確認應答的情況下, 將該SID以後的段再發送。在中繼裝置100中,保留隊列130是將後述的接收功能112接收到的段在後述的發送功能114發送之前保持的FIF0(First In First Out)隊列。FIFO隊列生成與後述的連接管理功能116管理的連接相同數量,對應於各連接。接收功能112經由網絡106從伺服器104或終端102接收段,進隊(enqueue)到保留隊列130中。但是,在由後述的用戶管理功能IM判斷為該段不是帶寬控制的對象的情況下等,不進隊到保留隊列中,後述的發送功能114將該段直接發送。發送功能114將接收功能112接收到的、或者從保留隊列130出隊(dequeue)的段以後述的帶寬控制功能110決定的定時,向終端102或伺服器104發送。連接管理功能116判斷接收到的段是屬於新的連接、還是屬於已建立的連接。此外,在屬於已有的連接的情況下,管理屬於哪個連接。本功能是公知技術,在連接的確定中, 例如如果通信協議是TCP/IP則使用目的地(destination) IP位址、發送源(source) IP位址、目的地埠號碼、發送源埠號碼的組合。用戶管理功能IM是判斷接收到的段屬於哪個用戶、決定是否需要對該用戶的通信的帶寬控制、決定控制帶寬值的功能,是公知的技術。在用戶的判斷的隊列中,使用例如段的發送源的IP位址。用戶的信息既可以由用戶管理功能IM存儲,也可以對外部的資料庫詢問。帶寬控制功能110按照用戶管理功能IM決定的控制帶寬,決定發送接收功能112 接收到的段、或者在保留隊列130中保留中的段的定時。本技術是公知的,在發送定時的決定算法中,例如有令牌桶等。在本實施例中,沒有限定帶寬控制的算法。但是,帶寬控制功能110對於後述的解除標誌是ON的段不包含在控制帶寬內,不控制帶寬。後接SID預測功能118參照接收到的段是SID(以下稱作接收SID)、和該段的尺寸,通過計算而預測在該段的通信連接中接著要接收的段的SID,作為預測SID。預測SID 在TCP中,與包含在終端102對接收到的段發送的確認應答中的值同樣,如以下這樣計算。(預測SID)=(接收SID)+(段的尺寸) (式1)段的SID和尺寸例如在通信協議TCP、UDP中分別能夠從頭信息中取得。預測SID存儲功能1 將後接SID預測功能118計算出的預測SID按照每個通信連接存儲。段信息存儲功能120在段存在於保留隊列130中的期間中,按照段存儲預約標誌和解除標誌。預約標誌和解除標誌的初始值是OFF,由後述的SID判斷功能122變更。SID判斷功能122在連接管理功能116判斷段屬於已有的連接的情況下,將接收 SID與預測SID存儲功能1 存儲的該連接的預測SID比較。根據比較的結果,進行以下的 3種的某種處理。(1)在接收SID小於預測SID的情況下,對於該段,將用來解除帶寬控制(從帶寬控制對象中去除)的解除標誌設為ON。(2)在接收SID超過預測SID的情況下,對後述的順序外SID數存儲功能1 存儲的順序外SID數加1,將用來將該段設為從帶寬控制對象去除的候補的預約標誌設為ON。 順序外SID數是新的概念,定義為「在每個連接中、接收SID連續超過預測SID的次數」。在相加的結果是,順序外SID數為預先設定的值(例如2)以上的情況下,將該段、 和在同連接中預約標誌是ON的保留隊列130內的段的解除標誌設為ON。另外,例如如以下這樣設定伺服器104判斷為某個段沒有到達目的地的、「相同確認應答號碼的連續接收數」與「關於順序外SID數N預先設定的值」的關係。「關於順序外SID數N預先設定的值」=「相同確認應答號碼的連續接收數」-1(3)如果接收SID與預測SID相等,則將同連接的順序外SID數設定為0,在保留隊列130內將同連接的所有的段的預約標誌設為OFF。順序外SID數存儲功能1 將順序外SID數按照每個連接存儲。各連接的順序外 SID的初始值是0,由SID判斷功能122更新。圖2是表示實現本實施方式的中繼裝置100的電子計算機的物理結構的圖。本實施方式的中繼裝置100具備執行程序來實現圖1所示的各功能的處理器H201、將執行的程序及數據臨時保持的存儲器裝置H202、用來輸入來自外部的指示及信息的輸入裝置H203、 保存程序的實體、指示、信息等、作為數據的存儲裝置使用的盤裝置H204、控制中繼裝置100的內部與外部裝置的數據的交換的通信控制裝置H205、用來在中繼裝置100的內部中進行數據的交換的總線等的內部通信線H206、和用來進行中繼裝置100的內部與外部裝置的數據的交換的外部通信線路H207(相當於圖1的網絡106)。上述程序既可以預先保存在中繼裝置100內的存儲器裝置H201或盤裝置H204 中,也可以在需要時從上述中繼裝置100可利用的、可拆裝的存儲媒體、或經由通信媒體 (網絡、或在網絡上傳播的輸送波或數位訊號)從其他裝置導入。此外,以下說明的各功能和其處理內容通過處理器H201將保存的盤裝置H204中的程序讀出並執行而具體實現。圖3是表示中繼裝置100接收到了一個段的情況下的動作的流程圖。首先,接收功能112從終端102或伺服器104接收段(F100)。接著,用戶管理功能IM根據該段屬於的用戶信息,判斷該段是否是帶寬控制對象(F102)。在接收到的段不是帶寬控制對象的情況下,發送功能114中繼段(F130)。在該段是帶寬控制對象的情況下,連接管理功能116判斷該段是否是新的連接 (F104)。在該段屬於已建立的連接(established connection)的情況下,將預測SID存儲功能126存儲的同連接的預測SID與接收SID比較(F106)。在新連接的情況下,或者在F106的比較中預測SID與接收SID相等的情況下,後接SID預測功能118將預測SID的值更新(F108),將順序外SID數的值設定為0,在保留隊列130內將同連接的所有段的預約標誌設為OFF(FllO)。帶寬控制功能110判斷在接收到的段屬於的連接的FIFO隊列中是否存在以前接收到的段(F122),如果存在,則將該段接在同連接的FIFO隊列的末尾(F128)。如果在保留隊列130的同連接的FIFO隊列中不存在以前接收到的段,則帶寬控制功能110判斷接收到的段的解除標誌是否是0N(F124)。如果解除標誌是ON(在FlM中「是」),則將帶寬控制解除(即不考慮控制帶寬), 使發送功能114中繼該段(F130)。如果解除標誌是0FF,則帶寬控制功能110判斷是否能夠將該段在控制帶寬內發送(F126)。如果能夠發送,則使發送功能114中繼該段(F130)。如果不能發送,則帶寬控制功能110將該段接在保留隊列130的末尾上(F128)。此外,在F106中接收SID比預測SID小的情況下,使發送功能114中繼該段 (F130)。此外,在F106中接收SID比預測SID大的情況下,將該段的預約標誌設為 ON(FlH),使順序外SID數的值增加1 (Fl 16)。如果順序外SID數是預先設定的值N(例如2)以上,則在保留隊列130的同連接中,將預約標誌是ON的段的解除標誌設為0N(F120)。以後的處理遵照F122以下。此外,帶寬控制功能110並行地、反覆判斷、例如定期地判斷保留隊列130的各連接的FIFO隊列的開頭的段是否能夠在控制帶寬內發送、或者解除標誌是否是0N(F132)。
在能夠發送段、或解除標誌是ON的情況下,遵照FlM以下的處理。圖4是伺服器104經由中繼裝置100對終端102發送數據時、在終端102與中繼裝置100之間丟失了段的情況下的時序例。圖4的通信設為1個連接,說明中不需要的確認應答省略。DOO表示伺服器104發送的段DOl到D04的SID和尺寸。伺服器104如果在某個新連接中發送段D01,則中繼裝置100的接收功能112接收該段DOl (F104中「是」,S201 和S210),中繼裝置100的帶寬控制功能110如果判斷為能夠將段DOl在控制帶寬內發送 (F126中「是」),則將該段DOl向終端102中繼(F108 。其中,解除標誌是OFF,S210)。這裡,後接SID預測功能118通過上述式1將預測SID如下述這樣計算為200(F108)。100 (接收 SID) +100 X (尺寸)=200終端102如果接收到段D01,則將確認應答號碼是200的確認應答AOl發送給伺服器 104(S221)。如果伺服器104與S201同樣發送段D02、D03、D04 (S202),則中繼裝置100的接收功能112依次接收該段(F104中「否」),由於接收SID與預測SID相等(在F106中「相等」), 所以後接SID預測功能118通過式1,將預測SID依次變更為300 (200+100)、400 (300+100)、 500(400+100)(F108、S211)。帶寬控制功能110如果判斷為不能將段D02在控制帶寬內發送(F126中「否」), 則接在保留隊列末尾(F128)。此外,在段D03、D04接收時也由於在保留隊列中存在段 D02(F122),所以將段D03、D04也接在保留隊列的末尾(F128)。在經過一定期間後,如果帶寬控制功能110判斷為能夠在控制帶寬內發送段D02, 則將段D02發送給終端102(F132 。其中,解除標誌是OFF,S212),但假設段D02在從中繼裝置100到終端102之間丟失、沒有到達終端102(S222)。中繼裝置100與S212同樣,如果通過一定期間的經過而段D03變為能夠發送,則將該段D03向終端102發送(F132 。其中,解除標誌為OFF,S213)。終端102如果接收到段D03,則由於未接收到段D02,所以將確認應答號碼為200 的確認應答A02向伺服器104應答(S223)。中繼裝置100與S213同樣,如果通過一定時間的經過而段D04變為能夠發送,則將該段D04向終端102發送(F132 。其中,解除標誌為OFF,S214)。終端102由於未接收到段D02,所以與S223同樣,將確認應答號碼為200的確認應答A03向伺服器104應答(S224)。伺服器104如果接收到確認應答號碼為200的確認應答A02、A03,則與前面接收到的確認應答AOl合計連續3次接收到了確認應答號碼200的確認應答。伺服器104由於連續接收到了一定數量(在本實施例中設為幻的相同的確認應答號碼,所以判斷為該確認應答號碼的段(這裡是沒有到達終端102,將段D02以後的段再發送(S203)。中繼裝置100的接收功能112接收段D02、D03、D04 (F104中「否」),由於各段的 SID為200、300、400,小於最新的預測SID即500(F106中「,,),所以SID判斷功能122將該段的預約標誌設為ON(FlH),將順序夕卜SID 數從0變更為1 (F116)。如果將F118的N在本實施例中設為2,則關於該段D13,為順序外 SID數」),所以SID判斷功能122將該段的預約標誌設為ON(FlH), 將順序外SID數從1變更為2 (Fl 16)。這裡,由於順序外SID數成為預先設定的值(在本實施例中假設為2)以上(F118中「是」),所以將預約標誌是ON的段(包括保存在保留隊列 130中的段。這裡是D13和D14)的解除標誌設為0N(F120)。帶寬控制功能110由於段D13和D14的解除標誌是ON(FlM中「是」),所以不控制帶寬,發送功能114將段D13和D14向終端102發送(F130)。關於在比D14後接收的段也為「接收SID >預測SID」,所以同樣地處理。終端102由於要接收D13和D14、但還沒有接收到D12,所以分別將確認應答號碼 200的確認應答A12和A13向伺服器104應答(S322)(關於比D14靠後接收的段也同樣)。在S305中,伺服器104如果接收到確認應答A12、A13,則與All合計,連續一定次數(這裡是幻接收到了確認應答號碼是相同的200的確認應答。伺服器104連續接收到一定次數以上(按照上述定義例為幻相同的確認應答號碼,判斷為該段(這裡是DU)沒有到達終端102,所以將D12以後的段向終端102再發送。
中繼裝置100關於以後的沒有丟失而到達的段D12、D13、D14,由於為「接收SID = 預測SID」,所以對於這些,在通常那樣的帶寬控制內向終端102發送(S313,S314)。如以上說明,在段沒有到達中繼裝置的情況下,不進行之後接收的段的帶寬控制, 所以關於丟失的段的確認應答從終端102迅速地到達伺服器104。結果,能夠使伺服器104 迅速地進行丟失的段D12的再發送,能夠以更接近於計劃帶寬的帶寬發送。以上,根據本實施方式,中繼裝置能夠不使傳輸層中的通信帶寬比控制的帶寬顯著地低而控制帶寬。此外,在本實施例中,伺服器104和終端102不需要變更而能夠使用已有的裝置。[實施例2]第2實施例是在終端與伺服器間的通信連接中由RFC2018規定的TCP的 SACK (Selective ACKnowledgement)選項是有效、具體而言能夠詳細地通知哪個段正送達的情況下、防止傳輸層的通信帶寬比通過帶寬控制指定的帶寬顯著低的實施方式。S卩,伺服器104在連續預先設定數量以上接收到包括相同的SID的確認應答的情況下,與實施例1不同,再發送該SID的段,然後再開始從再發送前已發送的段的下個段起的發送。另外,在本實施例中,對TCP的SACK選項是有效的情況進行說明,但只要是將丟失的段再發送而沒有丟失的段不再發送的通信協議,本實施例就能夠適用。圖6是實施例2的通信系統的一結構例。中繼裝置200除了實施例1的中繼裝置 100以外,還具備SACK判斷功能202、和SID區間存儲功能204。此外,中繼裝置200也可以不具備實施例1的中繼裝置100的後接SID預測功能118、預測SID存儲功能1 和順序外 SID數存儲功能。此外,段信息存儲功能220、連接管理功能216、和SID判斷功能222分別與實施例1的段信息存儲功能120、SID判斷功能122、連接管理功能116不同。SACK判斷功能202在伺服器104與終端102之間的通信連接建立時,判斷TCP協議的SACK選項是否為有效。SACK選項是否為有效的判斷只要參照段的TCP頭的信息就能夠進行,是公知的技術。另外,如果SACK選項是有效的,則在段丟失的情況下,發送側裝置不將丟失的段以後的、沒有丟失的段再發送。連接管理功能216除了實施例1的連接管理功能116的功能以外,還具備管理 SACK判斷功能202判斷的每個連接的SACK選項的有效/無效的功能。SID判斷功能222對每個連接,通過已接收區間=接收數據的段+接收數據尺寸-1根據接收到的段的SID和其尺寸計算接收到的段的範圍(以下稱作已接收區間), 與到目前為止的已接收區間連結。此外,SID判斷功能222判斷接收到的段的SID是同連接的已接收區間內、還是比已接收區間大。如果該SID是已接收區間內,則將該段通過發送功能114中繼,如果該SID 比已接收區間大,則對於該段,將後述的優先標誌設為ON。SID區間存儲功能204將SID判斷功能222計算出的已接收區間按照每個連接存儲。例如,在接收到SID是100、段的尺寸是200的段的情況下,考慮接收到了 SID從 100到四9的範圍。圖6的例子表示中繼裝置200在連接A中已接收了 SID從100到199、和從300到500的段。段信息存儲功能220除了實施例1的段信息存儲功能120以外,還具備按照每個段存儲優先標誌的功能。優先標誌的初始值是OFF。此外,不需要實施例1的段信息存儲功能120存儲的預約標誌。圖7是表示中繼裝置200接收到段的情況下的動作的流程圖。首先,接收功能112從終端102或伺服器104接收段(F200)。如果將接收到的段屬於的連接通過後述的F205判斷SACK選項不是有效的(F201 中「否」),遵照實施例1(圖3的F102以後)的處理(F234)。另外,也可以構成為代替遵照F102以後的處理而發送功能114將該段向終端102發送(F230)的實施例、和代替遵照 F102以後的處理而遵照F222以後的處理、作為以往的帶寬控制裝置發揮功能。如果SACK選項為有效(F201中「是」)或還沒有由SACK判斷功能202判斷(F201 中「是」),則遵照F202以後的處理。另外,在SACK選項是有效的情況下,也可以構成為代替F202以後的處理而發送功能114將該段向終端102發送(F230)的實施例、和代替遵照 F102以後的處理而遵照F222以後的處理、作為以往的帶寬控制裝置發揮功能。F202、F204的處理與實施例1的F102、F104的處理等同。在是新的連接的情況下(F204中「是」),SACK判斷功能202基於該段的TCP頭信息,判斷SACK選項是否是有效的(F205)。在不是新的連接的情況下(F204中「否」),SID判斷功能222判斷在SID區間存儲功能204存儲的已接收區間中是否包含有接收SID(F206)。在接收SID不包含在已接收區間中的情況下(F206中「是」),判斷接收SID是否比已接收區間的最大的SID大(F208)。在接收SID是已接收區間的最大SID以下的情況下(F208中「否」),將該段的優先標誌設為0N(F210)。在F205的處理之後,或者在F210的處理之後,或者在F208中接收SID比已接收區間大的情況下(F208中「是」),SID區間存儲功能204將接收到的段屬於的連接的已接收區間更新。例如,如圖6所示,在已接收區間是「100 199,300 500」的情況下,如果接收到SID為200、尺寸為50的段,則將已接收區間更新為「100 249,300 500」 (F212)。在F206中,在接收SID包含在已接收區間中的情況下(S206中「否」),發送功能 114中繼該段(F230)。在F212的處理之後,帶寬控制功能110判斷在段屬於的連接的FIFO 隊列中是否存在已接收的段(F222)。在保留隊列中不存在段的情況下(F222中「否」),遵照以後的處理。F226、 F228、F230、F232的處理分別與實施例1的F126、F128、F130、F132的處理等同。在保留隊列中存在段的情況下(F222中「是」),帶寬控制功能110判斷段的優先標誌(F218)。在優先標誌是OFF的情況下(S218中「否」),將該段接在保留隊列的末尾(F228)。在優先標誌是ON的情況下(F218中「是」),將該段接在保留隊列的開頭(F220)。 但是,在保留隊列中已經存在優先標誌為ON的段的情況下,插入到這些優先標誌為ON的段的最末尾、且優先標誌為OFF的段的開頭。圖10是與圖4同樣的在伺服器104經由中繼裝置200對終端102發送數據時、在
12終端102與中繼裝置200之間丟失了段的情況下的、實施例2的時序例。圖10的通信設為 1個連接,說明中不需要的確認應答省略。在圖10中,以下的點與實施例1的圖4不同。此外,伺服器104發送的段DOl到 D04的SID和尺寸與實施例1的DOO相等。當伺服器104接收到終端102發送的、第3個確認應答號碼為200的確認應答A03 時640 ,伺服器104由於SACK選項是有效的,所以將丟失的段D02再發送,不將已經發送的段D03、D04再發送。中繼裝置200的接收功能112如果接收到伺服器104再發送的段D02 (S410),則由於SID區間存儲功能204存儲的已接收區間是100 499、該段D02的SID是200,所以該 SID包含在已接收區間中(F206中「否」),帶寬控制功能110將該段D02不作為帶寬控制的對象。將段D02以下與實施例1同樣向終端102發送(F230)。圖11是與圖5同樣的在伺服器104經由中繼裝置200對終端102發送數據時、在伺服器104與中繼裝置200之間丟失了段的情況下的、實施例2的時序例。圖11的通信設為1個連接,說明中不需要的確認應答省略。在圖11中,以下的點與實施例1的圖5不同。D40表示伺服器104發送的段Dll到D15的SID和尺寸。為了說明,在圖11中舉出伺服器104發送的段比實施例1的圖5多1個的例子。中繼裝置200的接收功能112如果接收到伺服器104發送的段D14(S411),則由於該段D14的SID比已接收區間的SID大(F206和F208中「是」),在保留隊列中已經存在段(F222中「是」),所以帶寬控制功能110將段D14接在保留隊列的末尾(F218中「否」, F228)。同樣,中繼裝置200如果接收到段D15,則將段D15接在保留隊列末尾(S412)。如果伺服器104與實施例1同樣連續一定次數(這裡是3)接收到終端102為了請求丟失的段D12而應答的確認應答號碼200的確認應答A12,則伺服器104判斷為段D12 丟失,將段D12再發送(S402)。如果中繼裝置200的接收功能112接收到段D12 (S413),則由於SID區間存儲功能204存儲的已接收區間是100 199、300 599、該段D12的SID是200,所以帶寬控制功能110判斷接收SID是已接收區間外(F206中「是」),接收SID是已接收區間以下(F208 中「否」),對該段D12設置優先標誌(F210),接在保留隊列的開頭(F220)。雖然在保留隊列中從段D12以前存在段D15,但由於帶有優先標誌的段D12被接在比段D15更靠隊列的前方,所以如果在經過一定期間後變得能夠發送段(F232),則將段D12 比段D15更先發送(F230, S414)。以上,根據本實施例,在使用將丟失的段再發送、而不將沒有丟失的段再發送的通信協議的通信中,中繼裝置也能夠不使傳輸層中的通信帶寬比控制的帶寬顯著低而控制帶
覓ο[實施例3]第3實施例是在中繼裝置300從伺服器104 —定數量以上接收到不是按照順序的段的情況下、不將該段向終端102中繼、而中繼裝置300向伺服器104應答、敦促段的再發送的實施例。
圖8是實施例3的通信系統的一結構例。中繼裝置300除了實施例1的中繼裝置 100以外還具備應答生成功能302。應答生成功能302生成對接收功能112接收到的段的確認應答。對段生成應答的技術是公知的。但是,應答生成功能302與公知技術不同,作為生成的應答的確認應答號碼,使用預測SID存儲功能1 存儲的該段屬於的連接的預測SID。中繼裝置300的表示接收到段的情況下的動作的流程圖與實施例1的圖3除了 F120以外是等同的。在中繼裝置300中,在F120中,應答生成功能302生成存在於保留隊列130存儲的同連接的FIFO隊列中、對預約標誌是ON的段的確認應答。此時,在各確認應答的確認應答號碼中,使用預測SID存儲功能1 存儲的同連接的預測SID的值。接著,發送功能114將應答生成功能302生成的確認應答向伺服器104發送。此外,將與生成的確認應答的對應的預約標誌是ON的段丟棄。圖12是在伺服器104經由中繼裝置300向終端102發送數據時、在伺服器104與中繼裝置300之間丟失了段的情況下的時序例。實施例3的圖12在以下的點與實施例1的圖5不同。此外,伺服器104發送的段 Dll到D14的SID和尺寸與實施例1的DlO相等。中繼裝置300的接收功能112如果接收到丟失的段D12以外的段Dll、D13、 D14 (S310 S312),則順序外SID數是2,假如F118的N為2,則為「順序外SID彡N」(圖3 的F118中「是」),所以在實施例3的F120中,應答生成功能302對應於D13、D14而生成以同連接的預測SID即200為確認應答號碼的確認應答A31、A32,向伺服器104應答(S510)。伺服器104由於連續一定次數(這裡是幻接收到確認應答號碼是相同的200的確認應答,所以判斷為段D12丟失,與實施例1同樣,將段D12再發送。以上,根據本實施例,通過在中繼裝置300接收到一定數量不按照順序的段的情況下、中繼裝置返回確認應答,能夠期待更快的段的再發送。[實施例4]第4實施例是中繼裝置400能夠對伺服器104發送的再發送段新設置控制帶寬的實施例。圖9是實施例4的通信系統的一結構例。中繼裝置400與實施例1的中繼裝置 100在用戶管理功能似4和帶寬控制功能410方面不同。用戶管理功能424除了實施例1的功能以外,還按照用戶而存儲再發送段的控制帶寬。再發送段的控制帶寬既可以預先設定,也可以基於過去一定期間中接收到的段的接收SID與預測SID不同的次數而由用戶管理功能424決定。帶寬控制功能410將解除標誌是ON的段的控制帶寬不是解除、而是變更為用戶管理功能似4存儲的再發送段的控制帶寬。表示中繼裝置400接收到段的情況下的動作的流程圖與實施例1的圖3在F124、 F126以外是相等的。在中繼裝置400中,在FlM中,即使解除標誌是0N,也不轉移到F130的處理,而在 F126中,如果解除標誌是0N,則帶寬控制功能410判斷是否能夠在用戶管理功能4M存儲的再發送段的控制帶寬內發送該段。
如果判斷為不能將該段在控制帶寬內發送(F126中「否」),則將該段不是接在保留隊列的末尾、而是接在開頭。但是,在保留隊列中已經存在優先標誌是ON的段的情況下, 插入到這些優先標誌是ON的段的最末尾、並且優先標誌是OFF的段的開頭。以上,根據本實施例,中繼裝置400對於伺服器104再發送的段也能夠進行帶寬控制。
權利要求
1.一種中繼裝置,設置在連接發送側裝置和接收側裝置的網絡上,其特徵在於, 對於上述發送側裝置和上述接收側裝置之間的通信連接中的作為數據的順序信息的序列ID,在上述發送側裝置如果連續接收到預先設定的數量以上的確認應答中包含有相同的序列ID,則重發該序列ID以後的段的情況下, 上述中繼裝置具備接收部,從上述發送側裝置接收以上述接收側裝置為目的地的數據; 發送部,以上述接收側裝置為目的地發送上述數據;序列ID判斷部,提取包含在接收到的上述接收數據中的序列ID和數據尺寸;以及帶寬控制部,控制上述發送部,以使上述發送側裝置和上述接收側裝置之間的通信連接中的、向上述接收側裝置的上述接收數據的發送在網絡層中以預先設定的帶寬以下進行;上述帶寬控制部在一個上述通信連接中,基於上述序列ID判斷部提取的上述序列ID和上述數據尺寸,計算預測接著接收的數據的上述序列ID作為預測序列ID,將計算出的上述預測序列ID與接著接收到的接收數據的序列ID進行比較,如果不相等,則將該數據作為上述帶寬控制的非對象、或非對象的候補。
2.如權利要求1所述的中繼裝置,其特徵在於,在上述序列ID判斷部的比較的結果為上述接收數據的序列ID比上述預測序列ID小的情況下,上述帶寬控制部將上述接收數據作為上述帶寬控制的非對象;在上述序列ID判斷部的比較的結果為上述接收數據的順序號碼超過上述預測序列ID 的情況下,上述帶寬控制部將上述接收數據作為帶寬控制的非對象的候補。
3.如權利要求2所述的中繼裝置,其特徵在於,上述帶寬控制部將上述接收數據的序列ID連續超過上述預測序列ID的超過數存儲, 在該超過數成為預先設定的值以上的情況下,將作為上述帶寬控制的非對象的候補的上述接收數據作為上述帶寬控制的非對象。
4.如權利要求2所述的中繼裝置,其特徵在於,具備基於上述接收數據和上述預測序列ID生成對上述接收數據的確認應答的應答生成部;上述應答生成部在連續成為非對象的候補的上述接收數據數成為預先設定的值以上的情況下,生成對上述接收數據的上述確認應答;上述發送部將作為上述帶寬控制的非對象的候補的上述接收數據丟棄,將上述應答生成部生成的上述確認應答發送給該發送側裝置。
5.一種中繼裝置,設置在連接發送側裝置與接收側裝置的網絡上,其特徵在於, 對於上述發送側裝置和上述接收側裝置之間的通信連接中的作為數據的順序信息的序列ID,在上述發送側裝置如果連續接收到預先設定的數量以上的確認應答中包含有相同的序列ID,則重發該序列ID的段的情況下, 上述中繼裝置具備接收部,從上述發送側裝置接收以上述接收側裝置為目的地的數據; 發送部,以上述接收側裝置為目的地發送上述數據;序列ID判斷部,提取包含在接收到的上述接收數據中的序列ID和數據尺寸;帶寬控制部,控制上述發送部,以使上述發送側裝置和上述接收側裝置之間的通信連接中的、向上述接收側裝置的上述接收數據的發送在網絡層中以預先設定的帶寬以下進行;以及序列ID區間存儲部,按照來自上述發送側裝置的每個通信連接,計算上述接收數據的已接收區間並存儲;上述帶寬控制部將上述已接收序列ID的區間與上述接收數據的序列ID進行比較,基於上述比較結果決定是否將該接收數據作為上述帶寬控制的對象。
6.如權利要求5所述的中繼裝置,其特徵在於,上述帶寬控制部在上述序列ID包含在上述已接收序列ID區間中的情況下,將該接收數據作為帶寬控制的非對象;在上述序列ID不包含在上述已接收序列ID區間中、並且是上述已接收序列ID區間的最大值以下的情況下,上述帶寬控制部應將該接收數據比同連接的其他數據更優先地發送,並且作為上述帶寬控制的對象。
7.如權利要求1所述的中繼裝置,其特徵在於,對作為帶寬控制的非對象的數據,按照每個數據發送者存儲新的控制帶寬;對作為上述帶寬控制的非對象的數據,在上述新的控制帶寬內發送。
8.如權利要求5所述的中繼裝置,其特徵在於,對作為帶寬控制的非對象的數據,按照每個數據發送者存儲新的控制帶寬;對作為上述帶寬控制的非對象的數據,在上述新的控制帶寬內發送。
全文摘要
本發明提供一種帶寬控制裝置,在用網絡上的中繼裝置控制通信裝置間的通信帶寬時錯誤率較高的網絡中,防止傳輸層的通信速度比控制的帶寬顯著下降。中繼裝置基於包含在從通信裝置接收到的數據中的SID和數據尺寸,預測期待在該通信中接著接收的SID,將預測出的SID與接著接收到的數據包含的SID比較,如果小於預測的SID,則對該數據解除控制帶寬。此外,如果連續一定數量以上接收到超過預測的SID的數據,則對這些數據也解除控制帶寬。
文檔編號H04L12/56GK102201975SQ201010595430
公開日2011年9月28日 申請日期2010年12月20日 優先權日2010年3月23日
發明者相樂恭宏 申請人:株式會社日立製作所

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀