專利名稱:通信裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信裝置,特別涉及對(duì)終端間的通信頻帶進(jìn)行控制的通信裝置。
背景技術(shù):
作為在云等中所用的據(jù)點(diǎn)間的通信網(wǎng),一般對(duì)利用了 IP-VPN (InternetProtocol-Virtual Private Network:網(wǎng)際協(xié)議虛擬專用通信網(wǎng))技術(shù)等的WAN(Wide AreaNetwork:廣域網(wǎng))進(jìn)行利用。當(dāng)在某據(jù)點(diǎn)存在的終端與在其他據(jù)點(diǎn)存在的終端進(jìn)行通信時(shí),經(jīng)由將自身據(jù)點(diǎn)LAN與WAN連接的線路和將WAN與其他據(jù)點(diǎn)LAN連接的線路進(jìn)行通信。這些線路的能夠使用的帶寬受合同頻帶限制。在終端間的通信中,一般利用TCP。在TCP通信中,對(duì)于發(fā)送終端發(fā)送出的數(shù)據(jù),接收終端將接收完畢數(shù)據(jù)的位置反饋通知至發(fā)送終端。在反饋通知的接收完畢數(shù)據(jù)的位置變得不增加時(shí),發(fā)送終端判斷為廢棄檢測(cè)。并且,發(fā)送終端對(duì)稱為擁塞窗口大小(即使未從接收終端通知已接收到也能夠發(fā)送的數(shù)據(jù)大小)的參數(shù)進(jìn)行管理,根據(jù)RTT (Round TripTime:往返時(shí)間)、廢棄檢測(cè)的有無,改變擁塞窗口大小。在RTT增加時(shí)或廢棄檢測(cè)時(shí),判斷為網(wǎng)絡(luò)擁擠,減少窗口大小,由此間接地減小發(fā)送頻帶,避免網(wǎng)絡(luò)的擁擠。另外,在RTT減少時(shí)或沒有廢棄時(shí),判斷為網(wǎng)絡(luò)空閑,增加窗口大小,從而間接地增加發(fā)送頻帶,并有效利用網(wǎng)絡(luò)的線路頻帶。RTT越大,則窗口大小越不易增力口,當(dāng)在RTT不同的通信間共有一條線路時(shí),有時(shí)分配的頻帶產(chǎn)生不公平。如以上所述,在利用了 TCP的通信中,發(fā)送頻帶被RTT和廢棄率大幅左右。除了 RTT和廢棄檢測(cè)以外,也存在將過去的發(fā)送頻帶和最近的再發(fā)送頻帶組合來控制頻帶或利用在裝置間進(jìn)行了交換的連接數(shù)的信息來控制頻帶的技術(shù)(專利文獻(xiàn)I)?,F(xiàn)有技術(shù)文獻(xiàn)專利文獻(xiàn)專利文獻(xiàn)1:國(guó)際公開05/00666號(hào)
發(fā)明內(nèi)容
發(fā)明要解決的課題在利用了 TCP的通信中,發(fā)送頻帶被RTT和廢棄率大幅左右,因此在如WAN那樣的RTT較大并且跳數(shù)(*,數(shù))較大從而廢棄發(fā)生位置較多的環(huán)境下,有時(shí)只能夠獲得將合同頻帶大幅降低的發(fā)送頻帶。并且,在多個(gè)TCP通信之間未公平地分配線路頻帶。本發(fā)明鑒于以上的點(diǎn),目的在于,提供一種通信裝置,在利用了 TCP的通信中,在如WAN那樣的RTT較大并且跳數(shù)較大從而廢棄發(fā)生位置較多的環(huán)境下,防止發(fā)送頻帶大幅低于合同頻帶。用于解決課題的手段為了解決上述課題,在本件發(fā)明的一方式中,各據(jù)點(diǎn)中的在從LAN向WAN的訪問線路部分所設(shè)置的裝置,包括多個(gè)具有對(duì)兩個(gè)TCP通信進(jìn)行中繼的TCP變換部的卡,卡內(nèi)的TCP變換部包括:對(duì)某據(jù)點(diǎn)的終端與裝置之間的TCP通信、兩個(gè)裝置間的TCP通信、裝置與其他據(jù)點(diǎn)的終端之間的TCP通信進(jìn)行中繼的單元、在裝置內(nèi)的多個(gè)TCP變換部之間,交換正在進(jìn)行數(shù)據(jù)發(fā)送的連接數(shù)和正在進(jìn)行數(shù)據(jù)接收的連接數(shù)的信息的單元、計(jì)算正在進(jìn)行數(shù)據(jù)發(fā)送的連接數(shù)和正在進(jìn)行數(shù)據(jù)接收的連接數(shù)的合計(jì)數(shù)的單元、對(duì)于對(duì)向裝置內(nèi)的TCP變換部,針對(duì)每個(gè)TCP連接、通知正在進(jìn)行數(shù)據(jù)接收的連接數(shù)的合計(jì)數(shù)和對(duì)WAN的訪問線路頻帶的信息的單元、與接收側(cè)終端連接的裝置內(nèi)的TCP變換部對(duì)于與發(fā)送側(cè)終端連接的裝置內(nèi)的TCP變換部,針對(duì)每個(gè)TCP連接、反饋通知廢棄位置的單元、與發(fā)送側(cè)終端連接的裝置內(nèi)的TCP變換部再發(fā)送所反饋通知的廢棄位置的單元、與發(fā)送側(cè)終端連接的裝置內(nèi)的卡基于最近的再發(fā)送頻帶、其以前的發(fā)送頻帶、自身裝置的正在進(jìn)行數(shù)據(jù)發(fā)送的連接數(shù)的合計(jì)數(shù)和對(duì)WAN的訪問線路頻帶、由對(duì)向裝置所通知的正在進(jìn)行數(shù)據(jù)接收的連接數(shù)的合計(jì)數(shù)和對(duì)WAN的訪問線路頻帶來確定控制頻帶的單元。通過上述的方式,變?yōu)榘l(fā)送頻帶不被RTT廢棄率大幅左右,在如WAN那樣的RTT較大并且跳數(shù)較大從而廢棄發(fā)生位置較多的環(huán)境下,有效頻帶改善。并且,在多個(gè)TCP通信之間公平地分配線路頻帶。通過本發(fā)明的解決單元,提供一種通信裝置,包括多個(gè)具有對(duì)TCP通信進(jìn)行中繼的TCP變換部的卡,上述TCP變換部具有:信息交換部,經(jīng)由自身TCP變換部在信息交換部與自身裝置內(nèi)的其他TCP變換部之間交換正在進(jìn)行數(shù)據(jù)發(fā)送的TCP連接數(shù)的信息;以及頻帶控制部,確定各TCP通信的最大發(fā)送頻帶,上述信息交換部基于與其他TCP交換部進(jìn)行了交換的TCP連接數(shù)的信息,計(jì)算裝置整體中的正在進(jìn)行數(shù)據(jù)發(fā)送的TCP連接數(shù)的合計(jì)值,上述頻帶控制部基于裝置整體中的正在進(jìn)行數(shù)據(jù)發(fā)送的TCP連接數(shù)的合計(jì)值,確定各TCP通信的最大發(fā)送頻帶。發(fā)明的效果根據(jù)本發(fā)明,能夠提供一種通信裝置,在利用了 TCP的通信中,在如WAN那樣的RTT較大并且跳數(shù)較大從而廢棄發(fā)生位置較多的環(huán)境下,防止發(fā)送頻帶大幅低于合同頻帶。
圖1是具有本實(shí)施方式中的裝置的系統(tǒng)結(jié)構(gòu)圖。圖2是卡1100內(nèi)的TCP變換部200的框圖。圖3是緩存器的指針的說明圖。圖4是包的格式圖。圖5是狀態(tài)表212的格式圖。圖6是代理部206的框圖。圖7A是TCP部209的框圖。圖7B是TCP部203的框圖。圖8是頻帶表213的格式圖。
圖9是代理部206將LAN側(cè)接收緩存器的數(shù)據(jù)向WAN側(cè)發(fā)送緩存器移動(dòng)的處理的流程圖。圖10是代理部206將WAN側(cè)接收緩存器的數(shù)據(jù)向LAN側(cè)發(fā)送緩存器移動(dòng)的處理的流程圖。圖11是裝置1111的框圖。圖12是用于說明頻帶表213保持的值的意思的概念13A是利用再發(fā)送率的變化率以及自身裝置和對(duì)向裝置的連接數(shù)和訪問頻帶來更新用控制頻帶的流程圖(I)。圖13B是利用再發(fā)送率的變化率以及自身裝置和對(duì)向裝置的連接數(shù)和訪問頻帶來更新用控制頻帶的流程圖(2 )。圖14是包含一個(gè)卡的裝置Illl-A基于自身裝置統(tǒng)計(jì)信息來進(jìn)行頻帶控制的概念圖。圖15是包含多個(gè)卡的裝置Illl-A基于自身裝置統(tǒng)計(jì)信息來進(jìn)行頻帶控制的概念圖。圖16是包含一個(gè)卡的裝置Illl-A基于包含一個(gè)卡的對(duì)向裝置Illl-B的統(tǒng)計(jì)信息來進(jìn)行頻帶控制的概念圖。圖17是包含一個(gè)卡的裝置Illl-A基于包含多個(gè)卡的對(duì)向裝置Illl-B的統(tǒng)計(jì)信息來進(jìn)行頻帶控制的概念圖。圖18是包含一個(gè)卡的裝置Illl-A基于自身裝置的統(tǒng)計(jì)信息、包含一個(gè)卡的對(duì)向裝置Illl-B的統(tǒng)計(jì)信息來進(jìn)行頻帶控制的概念圖。圖19是包含一個(gè)卡的裝置Illl-A基于自身裝置的統(tǒng)計(jì)信息以及包含多個(gè)卡的對(duì)向裝置Illl-B的統(tǒng)計(jì)信息來進(jìn)行頻帶控制的概念圖。圖20是包含多個(gè)卡的裝置Illl-A基于自身裝置的統(tǒng)計(jì)信息、包含一個(gè)卡的對(duì)向裝置Illl-B的統(tǒng)計(jì)信息來進(jìn)行頻帶控制的概念圖。圖21是包含多個(gè)卡的裝置Illl-A基于自身裝置的統(tǒng)計(jì)信息以及包含多個(gè)卡的對(duì)向裝置Illl-B的統(tǒng)計(jì)信息來進(jìn)行頻帶控制的概念圖。圖22是基于自身裝置和對(duì)向裝置的平均一個(gè)連接的頻帶來限制控制頻帶的處理的流程圖。圖23是包含對(duì)兩個(gè)WAN (2340,2330)進(jìn)行中繼的裝置2303時(shí)(實(shí)施例2)的系統(tǒng)
結(jié)構(gòu)圖。圖24是實(shí)施例2中的裝置2303內(nèi)的TCP變換部的框圖。圖25是實(shí)施例2中的狀態(tài)表2401的格式圖。圖26是實(shí)施例3中的狀態(tài)表212-1的格式圖。
具體實(shí)施例方式用于實(shí)施本發(fā)明的代表性的方式,如下所述。實(shí)施例1中記載了基本的一個(gè)方式,實(shí)施例2中記載了對(duì)兩個(gè)WAN進(jìn)行中繼的方式,實(shí)施例3中記載了針對(duì)每個(gè)TCP連接加權(quán)的方式。實(shí)施例1
圖1中,表示應(yīng)用本實(shí)施方式的通信裝置的中繼系統(tǒng)的結(jié)構(gòu)圖。通信裝置(也稱為中繼裝置。以下,簡(jiǎn)單地記作裝置)101、102、103設(shè)置在將多個(gè)據(jù)點(diǎn)內(nèi)LAN110、120、130和WAN140連接的通信線路上。各據(jù)點(diǎn)內(nèi)LAN110、120、130上連接有多個(gè)終端111 113、121 123、131 133。另外,終端、裝置及網(wǎng)絡(luò)的數(shù)目除了圖示以外也可以包括適當(dāng)?shù)臄?shù)目。裝置101對(duì)從LANllO對(duì)WAN140的正在進(jìn)行數(shù)據(jù)發(fā)送的TCP通信的發(fā)送連接數(shù)、從LANllO向WAN140的線路141的發(fā)送訪問頻帶進(jìn)行管理。并且,利用發(fā)送連接數(shù)和發(fā)送訪問頻帶的信息,為了避免一個(gè)TCP通信過于使用線路頻帶,對(duì)平均一個(gè)連接的通信頻帶的最大值進(jìn)行限制,從而確保連接間的公平性。例如,在線路141的發(fā)送訪問頻帶為IOOMbps并且TCP通信的發(fā)送連接數(shù)為10時(shí),將平均一個(gè)連接的通信頻帶的最大值限制為10Mbps,并且實(shí)施TCP通信的頻帶控制。裝置102對(duì)從WAN140向LAN120的正在接收數(shù)據(jù)的TCP通信的接收連接數(shù)、從WAN140向LAN120的線路142的接收訪問頻帶進(jìn)行管理。裝置102中,不僅流入來自裝置101的通信數(shù)據(jù),還流入來自裝置103的通信數(shù)據(jù)。裝置102向裝置101裝置103通知通過自身裝置正在管理的接收連接數(shù)和接收訪問頻帶的信息。裝置101除了使用自身裝置的發(fā)送連接數(shù)和發(fā)送訪問頻帶的信息以外,還使用對(duì)向裝置102的接收連接數(shù)和接收訪問頻帶的信息,為了避免一個(gè)TCP通信過載使用線路141或線路142的頻帶,對(duì)平均一個(gè)連接的通信頻帶的最大值進(jìn)行限制,從而確保連接間的公平性。例如,在線路141的發(fā)送訪問頻帶為100Mbps、線路142的接收訪問頻帶為40Mbps、裝置101的發(fā)送連接數(shù)為10并且裝置102的接收連接數(shù)為8時(shí),線路141中的平均一個(gè)連接的通信頻帶的最大值為10Mbps,但線路142中的平均一個(gè)連接的通信頻帶的最大值為5Mbps。這種情況下,裝置101將向裝置102的TCP通信的平均一個(gè)連接的通信頻帶的最大值限制為兩者中的較少的線路142中的最大值5Mbps,從而能夠?qū)崿F(xiàn)不僅考慮了自身裝置的處于連接狀態(tài)的線路141,還考慮了遠(yuǎn)程的線路142的、連接間的公平性。在僅利用自身裝置的信息來將平均一個(gè)連接的通信頻帶的最大值限制為IOMbps時(shí),將過載使用線路142的頻帶,因此也利用對(duì)向裝置的信息來綜合地限制頻帶是重要的。圖11中,表示本實(shí)施方式的通信裝置1111的框圖。相當(dāng)于圖1的裝置101、102、103。裝置1111包括:一個(gè)或多個(gè)卡1100- (I S)、一個(gè)或多個(gè)NIF (NetworkInterFace:網(wǎng)絡(luò)接口)1106- (I t)、多個(gè)開關(guān)1104- (I W)、用于在它們間互換數(shù)據(jù)的連接部(1105- (I s)、1110- (I t))、以及用于對(duì)卡1100、NIF1106和開關(guān)1104進(jìn)行管理的管理部1120。卡1100- (I s)包括:進(jìn)行TCP通信中繼的TCP變換部200- (I S)、收納多個(gè)網(wǎng)絡(luò)線路1103- (I s)- (I e)并進(jìn)行包的收發(fā)的接口 1102- (I S)、以及在TCP變換部200- (I S)、接口 1102- (I S)、連接部1105- (I s)之間進(jìn)行包的收發(fā)的開關(guān) 1101- (I S)。NIF # I t (1106- (I t))包括:收納多個(gè)網(wǎng)絡(luò)線路1109- (I t) - (I i)-(l f)并進(jìn)行包的收發(fā)的多個(gè)接口 1107-(1 t)-(l i)、以及在接口 1107-(1 t)- (I i)與連接部1110- (I t)之間進(jìn)行包的收發(fā)的開關(guān)1108- (I t)。
管理部1120上連接終端(管理終端)1121,能夠從終端1121收發(fā)管理用的信息以夕卜,還能夠向終端1121發(fā)送內(nèi)部的信息,還能夠在終端1121顯示內(nèi)部信息。裝置1111中,網(wǎng)絡(luò)線路1103-(1 s)-(l e)或網(wǎng)絡(luò)線路1109-(1 t)-(l i)- (I f)中的任一個(gè)以上與LAN連接,網(wǎng)絡(luò)線路1103- (I s) - (I e)或網(wǎng)絡(luò)線路1109- (I t)- (I i)- (I f)中的任一個(gè)以上與WAN連接。從LAN輸入到裝置1111的包被向TCP變換部200中的任一個(gè)轉(zhuǎn)送,之后,向WAN輸出。從WAN被輸入到裝置1111的包被轉(zhuǎn)送到TCP變換部200中的任一個(gè),之后,向LAN輸出。裝置1111在從網(wǎng)絡(luò)線路1103- (I s)- (I e)或網(wǎng)絡(luò)線路1109- (I t)- (I i)- (I f)接收包時(shí),判斷是否是應(yīng)該進(jìn)行TCP變換的包。例如,能夠基于包的標(biāo)頭信息進(jìn)行判斷。在判斷為是應(yīng)該進(jìn)行TCP變換的包時(shí),向TCP變換部200轉(zhuǎn)送。不進(jìn)行TCP變換的包與通常的路由器或開關(guān)同樣地進(jìn)行轉(zhuǎn)送。TCP變換部200對(duì)于被轉(zhuǎn)送來的包進(jìn)行了 TCP通信的中繼處理后,與通常的路由器或開關(guān)同樣地進(jìn)行轉(zhuǎn)送。圖2中,表示進(jìn)行TCP通信中繼的TCP變換部200的框圖。TCP變換部200具有:進(jìn)行用于TCP通信的控制的WAN側(cè)及LAN側(cè)的TCP處理部203/209、WAN側(cè)的TCP209管理的N個(gè)發(fā)送緩存器207及N個(gè)接收緩存器208、LAN側(cè)的TCP203管理的N個(gè)發(fā)送緩存器205及N個(gè)接收緩存器204、在收發(fā)緩存器間進(jìn)行數(shù)據(jù)替換(乗姑換λ )的代理206、包括N個(gè)輸入的狀態(tài)表(狀態(tài)存儲(chǔ)區(qū)域)212、包括N個(gè)輸入的頻帶表213、用在裝置1111內(nèi)的TCP變換部200之間交換正在進(jìn)行數(shù)據(jù)發(fā)送的連接數(shù)或正在進(jìn)行數(shù)據(jù)接收的連接數(shù)的信息的信息交換部230、將包分配到WAN側(cè)的TCP處理部209或LAN側(cè)的TCP處理部203或信息交換部230的分配部221、以及將從WAN側(cè)的TCP處理部209或LAN側(cè)的TCP處理部203或信息交換部230發(fā)送出的包匯總后與通常的路由器或開關(guān)同樣地進(jìn)行轉(zhuǎn)送的匯總部220。此外,上述的N個(gè)也可以是分別不同的數(shù)。分配部221判斷被轉(zhuǎn)送來的包是從LAN側(cè)來的包還是從WAN側(cè)來的包,將從LAN側(cè)來的包向LAN側(cè)的TCP處理部203轉(zhuǎn)送,將從WAN側(cè)來的包向WAN側(cè)的TCP處理部209轉(zhuǎn)送。是從LAN側(cè)來的還是從WAN側(cè)來的也可以利用例如包內(nèi)的適當(dāng)?shù)男畔砼袛?。關(guān)于TCP處理部203、209、代理206,在后詳述,在此敘述概略。LAN側(cè)的TCP處理部203包括:發(fā)送履歷更新部725、包再發(fā)送部724、接收履歷更新部726、分配部728以及匯總部732。接收履歷更新部726將接收到的包數(shù)據(jù)存儲(chǔ)于LAN側(cè)接收緩存器204。并且,接收履歷更新部726根據(jù)進(jìn)行了存儲(chǔ)的數(shù)據(jù)大小,更新狀態(tài)表212的緩存器管理指針(508 510,515 517,521 526)的信息。并且,接收履歷更新部726將記載有接收到的數(shù)據(jù)的位置的ACK包經(jīng)由匯總部732并返送。發(fā)送履歷更新部725將從LAN側(cè)發(fā)送緩存器205讀出的發(fā)送數(shù)據(jù)打包并發(fā)送,并且根據(jù)讀出的發(fā)送數(shù)據(jù)大小,更新狀態(tài)表212的緩存器管理指針(508 510,515 517,521 526)的信息。WAN側(cè)的TCP處理部209包括:發(fā)送頻帶控制部715、發(fā)送履歷更新部705、包再發(fā)送部704、接收履歷更新部706、分配部708以及匯總部712。接收履歷更新部706將接收到的包數(shù)據(jù)存儲(chǔ)于WAN側(cè)接收緩存器208。并且,接收履歷更新部706根據(jù)進(jìn)行了存儲(chǔ)的數(shù)據(jù)大小,更新狀態(tài)表212的緩存器管理指針(508 510,515 517,521 526)的信息。并且,接收履歷更新部706將記載有接收到的數(shù)據(jù)的位置的ACK包經(jīng)由匯總部712并返送。發(fā)送頻帶控制部715將測(cè)量出的發(fā)送頻帶(532 534)和再發(fā)送頻帶(530,531)的信息存儲(chǔ)于狀態(tài)表212。發(fā)送履歷更新部705將從WAN側(cè)發(fā)送緩存器207讀出的發(fā)送數(shù)據(jù)打包并發(fā)送,并且根據(jù)讀出的發(fā)送數(shù)據(jù)大小,更新狀態(tài)表212的緩存器管理指針(508 510,515 517,521 526)的信息。代理206包括:數(shù)據(jù)讀出部(601,606)、數(shù)據(jù)加工部(602,605)以及數(shù)據(jù)寫入部(603,604)。數(shù)據(jù)加工部(602,605)將正在進(jìn)行加工的數(shù)據(jù)大小(529,530)的信息存儲(chǔ)于狀態(tài)表212。數(shù)據(jù)讀出部(601,606 )根據(jù)從接收緩存器(204,208 )讀出的數(shù)據(jù)大小,更新狀態(tài)表212的緩存器管理指針(508 510,515 517,521 526)的信息。數(shù)據(jù)寫入部(603,604)根據(jù)寫入到發(fā)送緩存器(207,205)的數(shù)據(jù)大小,更新狀態(tài)表212的緩存器管理指針(508 510,515 517,521 526)的信息。圖3中,表示收發(fā)緩存器管理用的指針的說明圖。在本圖中,設(shè)從左向右寫入數(shù)據(jù)并從左向右讀出。接收緩存器對(duì)表示接收到的數(shù)據(jù)的開頭的指針right_recv303、表示編隊(duì)完畢數(shù)據(jù)與未編隊(duì)數(shù)據(jù)的邊界的指針left_recV302、表示代理206已經(jīng)讀出完畢的數(shù)據(jù)與還未讀出的數(shù)據(jù)的邊界的left_rbuf301進(jìn)行管理。沒有損耗產(chǎn)生地從前端起按順序地接收數(shù)據(jù)時(shí),表示接收到的數(shù)據(jù)的開頭的指針right_recv303增加接收到的數(shù)據(jù)大小的量并向右移動(dòng)。在不能接收并且變得缺損的數(shù)據(jù)位置(損耗段)存在的狀態(tài)下,接收再發(fā)送包,損耗段消滅時(shí),表示編隊(duì)完畢數(shù)據(jù)與未編隊(duì)數(shù)據(jù)的邊界的指針left_recV302移動(dòng)到最小的損耗段的左端為止。代理206從表示讀出完畢數(shù)據(jù)與未讀出數(shù)據(jù)的邊界的left_rbuf301起向右按順序地讀出數(shù)據(jù),并使left_rbuf301向右移動(dòng)讀出的數(shù)據(jù)大小的量。讀出的數(shù)據(jù)大小的最大值是left_recV302與left_rbuf301 之差。發(fā)送緩存器對(duì)表示代理206寫入完畢并且變?yōu)槟軌虬l(fā)送的狀態(tài)的數(shù)據(jù)的開頭的指針right_sbuf306、表示已經(jīng)發(fā)送完畢的數(shù)據(jù)的開頭的指針right_send305、表示從接收側(cè)接收確認(rèn)應(yīng)答完畢的數(shù)據(jù)的開頭的指針left_Send304進(jìn)行管理。表示代理206寫入完畢并且變?yōu)槟軌虬l(fā)送的狀態(tài)的數(shù)據(jù)的開頭的指針right_sbuf306每當(dāng)代理206寫入數(shù)據(jù)就增加寫入的數(shù)據(jù)大小的量,并向右移動(dòng)。將表示發(fā)送完畢數(shù)據(jù)的開頭的指針right_send305作為起點(diǎn)向右發(fā)送新的數(shù)據(jù),right_send305增加所發(fā)送的數(shù)據(jù)大小的量,并向右移動(dòng)。在從接收側(cè)接收具有比left_send304的大的接收序列編號(hào)的確認(rèn)應(yīng)答包時(shí),left_Send304增加到在確認(rèn)應(yīng)答包中所記載的接收序列編號(hào),并向右移動(dòng)。圖4中,表示裝置收發(fā)的包的格式圖。包中包含MAC標(biāo)頭400、IP標(biāo)頭410、TCP標(biāo)頭420、TCP任選報(bào)頭430以及有效負(fù)載450。MAC標(biāo)頭400包含:表示目的地MAC地址的DMAC401、表示發(fā)送源MAC地址的SMAC402、表示MAC幀類型的Type403。IP標(biāo)頭410包含:表示除了 MAC標(biāo)頭以外的包長(zhǎng)的IP length411、表示協(xié)議編號(hào)的protocol412、表示發(fā)送源IP地址的SIP413、表示目的地IP地址的DIP414。TCP標(biāo)頭420包含:表示發(fā)送源端口編號(hào)的src.port421、表示目的地端口編號(hào)的dst.port422、表示發(fā)送序列編號(hào)的SEQ423、表示接收序列編號(hào)的ACK424、表示TCP標(biāo)記編號(hào)的flag425、表示TCP的標(biāo)頭長(zhǎng)的tcphlen426。TCP任選報(bào)頭430包含:表示選項(xiàng)類別的option kind431、表示選項(xiàng)長(zhǎng)度的option length432、對(duì)從哪里到哪里能夠局部地接收進(jìn)行記載的left_edge_l 4 (433,435,437,439)、right_edge_l 4 (434,436,438,440)。 left_edge_l 4 (433,435,437,439)、right_edge_l 4 (434,436,438,440)中記載無法接收的部分的情況也存在。并且,TCP任選報(bào)頭430中記載發(fā)送訪問線路頻帶max_send_bandwidth443、接收訪問線路頻帶max_recv_bandwidth441、正在進(jìn)行數(shù)據(jù)接收的連接數(shù)recv_number442及正在進(jìn)行數(shù)據(jù)發(fā)送的連接數(shù)send_number444,可以使用于裝置間的信息交換、裝置內(nèi)的TCP變換部彼此的信息交換等。圖5中,表示狀態(tài)表212的格式圖。各TCP變換部200的狀態(tài)表212具有:例如用于記錄每個(gè)TCP連接的狀態(tài)的η個(gè)輸入520、記錄裝置1111的發(fā)送訪問線路頻帶的max_snd_bandwidth539、記錄裝置1111的接收訪問線路的max_rcv_bandwidth540、記錄裝置1111整體的正在進(jìn)行數(shù)據(jù)發(fā)送的TCP連接數(shù)的all_snd_num536、記錄裝置1111整體的正在進(jìn)行數(shù)據(jù)接收的TCP連接數(shù)的all_rcv_num538、記錄各TCP變換部200正在進(jìn)行數(shù)據(jù)發(fā)送的TCP連接數(shù)的snd_num535、記錄各TCP變換部200正在進(jìn)行數(shù)據(jù)接收的TCP連接數(shù)的rcv_num537、記錄各TCP連接的最小頻帶的each—min—bandwidth543。各輸入520具有:例如,記載輸入是否正在進(jìn)行使用的VLD501、對(duì)LAN或WAN側(cè)的連接是否正在進(jìn)行確立進(jìn)行記載的connect_state502、表示LAN側(cè)的終端的IP地址的LIP503、表示W(wǎng)AN側(cè)的終端的IP地址的WIP504、表示LAN側(cè)的終端的TCP端口編號(hào)的Lport505、表示W(wǎng)AN側(cè)的終端的TCP端口編號(hào)的Wport506、表示LAN側(cè)的TCP通信的狀態(tài)的lan_state507、表示LAN側(cè)的接收緩存器管理用的指針的lan_left_rbuf508、lan_left_recv509> lan_right_recv510、表示LAN側(cè)的窗口標(biāo)度選項(xiàng)的值的lan_ws511、表示LAN側(cè)的平均RTT的lan_rtt512、表示LAN側(cè)的擁塞窗口大小的cwnd513、表示從LAN側(cè)的接收緩存器被讀出并正在進(jìn)行加工的數(shù)據(jù)大小的lan_wan528、表示LAN側(cè)的發(fā)送緩存器管理用的指針的 Ian_left_send521、lan_right_send522、lan_right_sbuf523、表不對(duì) LAN 側(cè)的發(fā)送終端通知的接收窗口大小的rwnd527、表示W(wǎng)AN側(cè)的TCP通信的狀態(tài)的wan_state514、表示W(wǎng)AN 側(cè)的接收緩存器管理用的指針的 wan_left_rbuf515、wan_left_recv516、wan_right_recv517、表示W(wǎng)AN側(cè)的窗口標(biāo)度選項(xiàng)的值的wan_ws518、表示W(wǎng)AN側(cè)的平均RTT的wan_rtt519、表示從WAN側(cè)的接收緩存器被讀出并正在進(jìn)行加工的數(shù)據(jù)大小的wan_lan529、表不WAN側(cè)的發(fā)送緩存器管理用的指針的wan_left_send524、wan_right_send525、wan_right_sbuf526、表示W(wǎng)AN側(cè)的最近的再發(fā)送率是rts_ratio530、表示W(wǎng)AN側(cè)的過去的再發(fā)送率的old_rts_ratio531、表示W(wǎng)AN側(cè)的最近的發(fā)送頻帶的snd532、表示W(wǎng)AN側(cè)的過去的發(fā)送頻帶的old_snd533、表示W(wǎng)AN側(cè)的進(jìn)一步再過去的發(fā)送頻帶的old_old_snd534。還具有:記錄對(duì)向裝置的正在進(jìn)行數(shù)據(jù)接收的連接數(shù)的each_rcv_num541、記錄對(duì)向裝置的接收訪問線路頻帶的each_rcv_bandwidth542。each_rcv_num541、each_rcv_bandwidth542基于對(duì)向裝置通知來的信息而被更新。例如,包再發(fā)送部704利用在對(duì)向裝置發(fā)送來的ACK包的TCP選項(xiàng)字段中記載的值等,針對(duì)每個(gè)TCP連接來更新。each_rcv_num541、each_rcv_bandwidth542例如與從相應(yīng)的輸入對(duì)應(yīng)的TCP通信的對(duì)向裝置接收。max_snd_bandwidth539、max_rcv bandwidth540 等經(jīng)由終端 1121 經(jīng)由等手動(dòng)更新。
Snd_num535、rcv_num537由信息交換部230更新。信息交換部230例如針對(duì)狀態(tài)表212的每個(gè)輸入檢查緩存器存儲(chǔ)量(right_sbuf與left_send的差、right_recv與left_rbuf的差的合計(jì)),數(shù)據(jù)被存儲(chǔ)在發(fā)送緩存器中的輸入通過判斷從而計(jì)算為正在進(jìn)行數(shù)據(jù)發(fā)送的連接,數(shù)據(jù)被存儲(chǔ)在接收緩存器中的輸入通過判斷從而計(jì)算為正在進(jìn)行數(shù)據(jù)接收的連接。all_rcv_num538、all_snd_num536基于裝置1111內(nèi)部的其他的全部TCP變換部200之間的信息交換而被更新。TCP變換部200的信息交換部230對(duì)于其他的全部TCP變換部200通知自己的snd_num535、rcv_num537,并且計(jì)算從其他的全部TCP變換部200通知來的 snd_num535、rcv_num537 的合計(jì)值,從而獲得 all_rcv_num538、all_snd_num536,并定期更新。信息交換部230將自身裝置中正在進(jìn)行數(shù)據(jù)接收的TCP連接的合計(jì)值all_rcv_num538、被連接的線路的最大接收頻帶max_rcv_bandwidth540通知至TCP通信的對(duì)向裝置。圖6中,表示代理206的框圖。代理206具有:從LAN側(cè)的接收緩存器rbuf204讀出數(shù)據(jù)的數(shù)據(jù)讀出部601、對(duì)于讀出的數(shù)據(jù)進(jìn)行壓縮、解壓縮、加密、解密、刪除、復(fù)制、補(bǔ)寫等加工的數(shù)據(jù)加工部602、將加工完畢數(shù)據(jù)向WAN側(cè)的發(fā)送緩存器sbut207寫入的數(shù)據(jù)寫入部603、從WAN側(cè)的接收緩存器rbuf208讀出數(shù)據(jù)的數(shù)據(jù)讀出部606、對(duì)于讀出的數(shù)據(jù)進(jìn)行壓縮、解壓縮、加密、解密、刪除、復(fù)制、補(bǔ)寫等加工的數(shù)據(jù)加工部605、將加工完畢數(shù)據(jù)向LAN側(cè)的發(fā)送緩存器sbuf205寫入的數(shù)據(jù)寫入部604。也可以在數(shù)據(jù)加工部602和數(shù)據(jù)加工部605之間進(jìn)行數(shù)據(jù)的互換。數(shù)據(jù)的加工也可以是上述的例子以外。數(shù)據(jù)讀出部601根據(jù)從在從lan_left_rbuf508到lan_left_recv509之間存儲(chǔ)的編隊(duì)完畢數(shù)據(jù)讀出的開頭數(shù)據(jù),估計(jì)應(yīng)當(dāng)讀出的數(shù)據(jù)大小、數(shù)據(jù)加工后的數(shù)據(jù)大小。作為開頭數(shù)據(jù),可以使用 TLS (TransportLayer Security) /SSL (Secure Socket Layer)標(biāo)頭、SMB (Server MessageBlock)標(biāo)頭等等。根據(jù)在TLS/SSL標(biāo)頭中所記載的值,能夠估計(jì)解密后的除了檢查和、標(biāo)頭以外的普通文件(平文)數(shù)據(jù)大小。根據(jù)SMB標(biāo)頭,能夠估計(jì)進(jìn)行了預(yù)取后的指令數(shù)據(jù)大小。估計(jì)出的加工后的數(shù)據(jù)大小,wan_right_sbuf526與wan_left_send524的差、即未發(fā)送數(shù)據(jù)和ACK確認(rèn)等待數(shù)據(jù)的合計(jì)值,不超過WAN側(cè)的發(fā)送緩存器大小wan_sbuf_size時(shí),讀出數(shù)據(jù)并向數(shù)據(jù)加工部602轉(zhuǎn)送。并且,將估計(jì)出的應(yīng)當(dāng)讀出的數(shù)據(jù)大小和數(shù)據(jù)加工后的數(shù)據(jù)大小中的、大的一方記載到狀態(tài)表212的lan_wan528。詳細(xì)參照?qǐng)D9所示的流程圖在后闡述。數(shù)據(jù)讀出部606根據(jù)從在從wan_left_rbuf515到wan_left_recv516之間存儲(chǔ)的編隊(duì)完畢數(shù)據(jù)讀出的開頭數(shù)據(jù),估計(jì)應(yīng)當(dāng)讀出的數(shù)據(jù)大小和數(shù)據(jù)加工后的數(shù)據(jù)大小。作為開頭數(shù)據(jù),也可以使用 TLS (TransportLayer Security) /SSL (Secure Socket Layer)標(biāo)頭、SMB (Server MessageBlock)標(biāo)頭等等。估計(jì)出的加工后的數(shù)據(jù)大小,lan_right_sbuf523和lan_left_send521的差、即未發(fā)送數(shù)據(jù)與ACK確認(rèn)等待數(shù)據(jù)的合計(jì)值,不超過LAN側(cè)的發(fā)送緩存器大小lan_sbuf_size時(shí),讀出數(shù)據(jù),并向數(shù)據(jù)加工部605轉(zhuǎn)送。并且,將估計(jì)出的應(yīng)當(dāng)讀出的數(shù)據(jù)大小和數(shù)據(jù)加工后的數(shù)據(jù)大小中的、較大的一方記載到狀態(tài)表212的wan_lan529。詳細(xì)參照?qǐng)D10所示的流程圖后述。圖9和圖10中,分別表示數(shù)據(jù)讀出部601和數(shù)據(jù)讀出部606的數(shù)據(jù)讀出處理的流程圖。圖9的各步驟由數(shù)據(jù)讀出部601執(zhí)行。數(shù)據(jù)讀出部601在使處理開始后(步驟900),首先,進(jìn)行l(wèi)an_left_recv509是否比lan_left_rbuf508大的比較,判斷在LAN側(cè)的接收緩存器204中是否存在編隊(duì)完畢數(shù)據(jù)(步驟901)。當(dāng)在步驟901中判斷為不大時(shí)、即在不存在編隊(duì)完畢數(shù)據(jù)時(shí),重復(fù)步驟901。當(dāng)在步驟901中判斷為大時(shí)、即存在編隊(duì)完畢數(shù)據(jù)時(shí),接著根據(jù)位于lan_left_reCV509到lan_left_rbuf508之間的編隊(duì)完畢數(shù)據(jù)的開頭數(shù)據(jù),估計(jì)應(yīng)當(dāng)讀出的數(shù)據(jù)大小和數(shù)據(jù)加工后的數(shù)據(jù)大小(步驟906)。作為開頭數(shù)據(jù),也可以使用TLS (Transport Layer Security)/SSL (SecureSocket Layer)標(biāo)頭、SMB (Server Message Block)標(biāo)頭等等。接著,進(jìn)行wan_right_sbuf526與wan_left_send524的差分(未發(fā)送數(shù)據(jù)與ACK確認(rèn)等待數(shù)據(jù)的合計(jì)值)與WAN側(cè)的發(fā)送緩存器大小wan_sbuf_size的差分(緩存器剩余空間大小)是否比在步驟906中估計(jì)出的加工后的數(shù)據(jù)大小大的比較(步驟902)。在通過步驟902判斷為大時(shí),從LAN側(cè)的接收緩存器204讀出通過步驟906估計(jì)出的應(yīng)當(dāng)讀出的數(shù)據(jù)大小的數(shù)據(jù)(步驟903)。當(dāng)通過步驟902判斷為否時(shí),僅在不進(jìn)行數(shù)據(jù)加工時(shí),從LAN側(cè)的接收緩存器204讀出與wan_right_sbuf526和wan_left_send524的差分(未發(fā)送數(shù)據(jù)與ACK確認(rèn)等待數(shù)據(jù)的合計(jì)值)與WAN側(cè)的發(fā)送緩存器大小wan_sbuf_size的差分(緩存器剩余空間大小)相當(dāng)?shù)拇笮〉臄?shù)據(jù)(步驟904)。所讀出的數(shù)據(jù)經(jīng)由數(shù)據(jù)加工部602被輸出至數(shù)據(jù)寫入部603。數(shù)據(jù)讀出后,對(duì)lan_left_rbuf508加上所讀出的數(shù)據(jù)大小(步驟905)。步驟905之后,返回到步驟901。此外,在數(shù)據(jù)寫入部603寫入數(shù)據(jù)時(shí),wan_right_sbuf526僅增加進(jìn)行了寫入的數(shù)據(jù)大小的量。圖10的各步驟由數(shù)據(jù)讀出部606執(zhí)行。數(shù)據(jù)讀出部606在使處理開始后(步驟1000),首先進(jìn)行wan_left_recv516是否比wan_left_rbuf515大的比較,判斷WAN側(cè)的接收緩存器208中是否存在編隊(duì)完畢數(shù)據(jù)(步驟1001)。當(dāng)在步驟1001中判斷為不大時(shí)、即不存在編隊(duì)完畢數(shù)據(jù)時(shí),重復(fù)步驟1001。當(dāng)在步驟1001中判斷為大時(shí)、即存在編隊(duì)完畢數(shù)據(jù)時(shí),接著,根據(jù)位于wan_left_recv516到wan_left_rbuf515之間的編隊(duì)完畢數(shù)據(jù)的開頭數(shù)據(jù),估計(jì)應(yīng)當(dāng)讀出的數(shù)據(jù)大小和數(shù)據(jù)加工后的數(shù)據(jù)大小(步驟1006)。作為開頭數(shù)據(jù),也可以使用 TLS (Transport Layer Security) /SSL (SecureSocket Layer)標(biāo)頭、SMB (ServerMessage Block)標(biāo)頭等等。接著,進(jìn)行 lan_right_sbuf523 和 lan_left_send521 的差分(未發(fā)送數(shù)據(jù)與ACK確認(rèn)等待數(shù)據(jù)的合計(jì)值)與LAN側(cè)的發(fā)送緩存器大小lan_sbuf_size的差分(緩存器剩余空間大小)是否比通過步驟1006估計(jì)出的加工后的數(shù)據(jù)大小大的比較(步驟1002)。當(dāng)通過步驟1002判斷為大時(shí),從WAN側(cè)的接收緩存器208讀出通過步驟1006估計(jì)出的應(yīng)當(dāng)讀出的數(shù)據(jù)大小的數(shù)據(jù)(步驟1003)。當(dāng)通過步驟1002判斷為否時(shí),僅在不進(jìn)行數(shù)據(jù)加工時(shí),從WAN側(cè)的接收緩存器208讀出與lan_right_sbuf523和lan_left_send521的差分(未發(fā)送數(shù)據(jù)與ACK確認(rèn)等待數(shù)據(jù)的合計(jì)值)與LAN側(cè)的發(fā)送緩存器大小lan_sbuf_size的差分(緩存器剩余空間大小)相當(dāng)?shù)拇笮〉臄?shù)據(jù)(步驟1004)。所讀出的數(shù)據(jù)經(jīng)由數(shù)據(jù)加工部605被輸出至數(shù)據(jù)寫入部604。數(shù)據(jù)讀出后,對(duì)wan_left_rbuf515加上所讀出的數(shù)據(jù)大小(步驟1005)。步驟1005之后,返回到步驟1001。此外,在數(shù)據(jù)寫入部604寫入數(shù)據(jù)時(shí),lan_right_sbuf523僅增加進(jìn)行了寫入的數(shù)據(jù)大小的量。圖7A中,表示W(wǎng)AN側(cè)的TCP處理部209的框圖。
實(shí)現(xiàn)TCP通信的TCP處理部209具有:進(jìn)行接收處理的RX部(接收部)702、進(jìn)行發(fā)送處理的TX部(發(fā)送部)701。RX部702具有:包分配部716,將接收包分離成TCP控制包、附帶數(shù)據(jù)的包及ACK包;TCP控制部707,基于接收到的TCP控制包來變更狀態(tài)表212內(nèi)的TCP狀態(tài)lan_state507、wan_state514 ;以及接收履歷更新部706,基于接收到的數(shù)據(jù)包的發(fā)送序列編號(hào)SEQ423和接收序列編號(hào)ACK424,變更狀態(tài)表212內(nèi)的緩存器管理指針并返送ACK包。TX部701具有:TCP控制部703,利用狀態(tài)表212內(nèi)的TCP狀態(tài)lan_state507、wan_state514來發(fā)送TCP控制包;包再發(fā)送部704,基于接收到的ACK包來變更狀態(tài)表212內(nèi)的緩存器管理指針,利用接收到的ACK包記載的部分的確認(rèn)應(yīng)答left_edge_l 4 (433,435,436,439)、right_edge_l 4 (434,436,438,440),來從發(fā)送緩存器 sbuf207 讀出數(shù)據(jù)并對(duì)包進(jìn)行再發(fā)送;發(fā)送履歷更新部705,發(fā)送載有從發(fā)送緩存器sbuf207讀出的數(shù)據(jù)的包,變更狀態(tài)表212內(nèi)的緩存器管理指針;分配部708 ;接受再發(fā)送包和數(shù)據(jù)包,分配至緩存器I η (709-1 η),并且將各TCP連接的發(fā)送/再發(fā)送比特長(zhǎng)通知至發(fā)送頻帶控制部715 ;計(jì)時(shí)器713,生成當(dāng)前時(shí)刻并通知至發(fā)送頻帶控制部715 ;間隔保存部714,保存間隔時(shí)間(預(yù)先確定的固定值,或測(cè)量出的RTT等)并通知至發(fā)送頻帶控制部715 ;發(fā)送頻帶控制部715,對(duì)頻帶表213進(jìn)行控制,將各TCP連接的令牌大小通知至令牌更新部;令牌更新部717,針對(duì)每個(gè)TCP連接,對(duì)令牌桶進(jìn)行管理,將能夠發(fā)送的連接通知至多路轉(zhuǎn)換器712 ;多路轉(zhuǎn)換器712以FIFO將ACK包、TCP控制包、再發(fā)送包、數(shù)據(jù)包匯總并輸出;以及緩存器709 711。在本實(shí)施例中,對(duì)TX部701的各塊中的、按各TCP通信的控制頻帶(最大發(fā)送頻帶)發(fā)送數(shù)據(jù)的塊(例如,令牌更新部717、多路轉(zhuǎn)換器712、緩存器709等)進(jìn)行歸納并稱為發(fā)送控制部的情況也存在。圖7B中,表示LAN側(cè)的TCP處理部203的框圖。實(shí)現(xiàn)TCP通信的TCP處理部203具有:進(jìn)行接收處理的RX部(接收部)722、進(jìn)行發(fā)送處理的TX部(發(fā)送部)721。RX部722具有:包分配部728,將接收包分離成TCP控制包、附帶數(shù)據(jù)的包及ACK包;TCP控制部727,基于接收到的TCP控制包來變更狀態(tài)表212內(nèi)的TCP狀態(tài)lan_state507、wan_state514 ;以及接收履歷更新部726,基于接收到的數(shù)據(jù)包的發(fā)送序列編號(hào)SEQ423和接收序列編號(hào)ACK424,變更狀態(tài)表212內(nèi)的緩存器管理指針并返送ACK包。TX部721具有:TCP控制部723,利用狀態(tài)表212內(nèi)的TCP狀態(tài)lan_state507、wan_state514來發(fā)送TCP控制包;包再發(fā)送部724,基于接收到的ACK包來變更狀態(tài)表212內(nèi)的緩存器管理指針,利用接收到的ACK包記載的部分的確認(rèn)應(yīng)答left_edge_l 4(433,435,436,439)、right_edge_l 4 (434,436,438,440),來從發(fā)送緩存器 sbuf205 讀出數(shù)據(jù)并對(duì)包進(jìn)行再發(fā)送;發(fā)送履歷更新部725,發(fā)送載有從發(fā)送緩存器sbuf205讀出的數(shù)據(jù)的包,變更狀態(tài)表212內(nèi)的緩存器管理指針;多路轉(zhuǎn)換器732,以FIFO將ACK包、TCP控制包、再發(fā)送包、數(shù)據(jù)包匯總并輸出;以及緩存器729 731。WAN側(cè)TCP處理部209的發(fā)送頻帶控制部715對(duì)基準(zhǔn)時(shí)刻這一內(nèi)部變量進(jìn)行管理。基準(zhǔn)時(shí)刻與計(jì)時(shí)器713的當(dāng)前時(shí)刻之差變得比間隔保存部714的間隔時(shí)間大時(shí),對(duì)基準(zhǔn)時(shí)刻加上間隔時(shí)間來作為新的基準(zhǔn)時(shí)刻。加法運(yùn)算前的基準(zhǔn)時(shí)刻成為舊基準(zhǔn)時(shí)刻。即,當(dāng)前正在使用的基準(zhǔn)時(shí)刻的前一個(gè)使用了的基準(zhǔn)時(shí)刻成為舊基準(zhǔn)時(shí)刻。圖8中,表示發(fā)送頻帶控制部715管理的頻帶表213的格式。頻帶表213對(duì)每個(gè)連接記錄基準(zhǔn)時(shí)刻、基準(zhǔn)時(shí)刻后的發(fā)送比特累計(jì)值、再發(fā)送比特累計(jì)值和控制頻帶、基準(zhǔn)時(shí)刻前的發(fā)送頻帶、再發(fā)送頻帶和控制頻帶以及舊基準(zhǔn)時(shí)刻前的發(fā)送頻帶和控制頻帶?;鶞?zhǔn)時(shí)刻后的控制頻帶表不當(dāng)如時(shí)刻中的控制頻帶(在本實(shí)施例中,表不為token)?;鶞?zhǔn)時(shí)刻后的發(fā)送頻帶表示當(dāng)前時(shí)刻中的發(fā)送頻帶(在本實(shí)施例中,表示為snd),通過基準(zhǔn)時(shí)刻后的發(fā)送比特累計(jì)值除以當(dāng)前時(shí)刻與基準(zhǔn)時(shí)刻的差分來求出?;鶞?zhǔn)時(shí)刻后的再發(fā)送頻帶表示當(dāng)前時(shí)刻中的再發(fā)送頻帶(在本實(shí)施例中,表示為rts),通過基準(zhǔn)時(shí)刻后的再發(fā)送比特累計(jì)值除以當(dāng)前時(shí)刻與基準(zhǔn)時(shí)刻的差分來求出。基準(zhǔn)時(shí)刻前的控制頻帶、發(fā)送頻帶和再發(fā)送頻帶表示從舊基準(zhǔn)時(shí)刻起基準(zhǔn)時(shí)刻為止的控制頻帶、發(fā)送頻帶和再發(fā)送頻帶的平均值(在本實(shí)施例中,表示為old_token、old_snd、old_rts)。舊基準(zhǔn)時(shí)刻前的控制頻帶和發(fā)送頻帶表示即將到達(dá)舊基準(zhǔn)時(shí)刻前為止的控制頻帶和發(fā)送頻帶(在本實(shí)施例中,表示為 old_old_token、old_old_snd)。基準(zhǔn)時(shí)刻前的再發(fā)送率 old_rts_ratio 通過 old_rts/old_old_snd來求出。另外,基準(zhǔn)時(shí)刻后的當(dāng)前的再發(fā)送率rts_ratio通過rts/old_snd來求出。作為間隔時(shí)間,使用狀態(tài)表212記載的wan_rtt519的情況也存在。圖12中,表示舊基準(zhǔn)時(shí)刻、基準(zhǔn)時(shí)刻和當(dāng)前時(shí)刻與其前后的控制頻帶、發(fā)送頻帶和再發(fā)送頻帶的關(guān)系?;鶞?zhǔn)時(shí)刻與舊基準(zhǔn)時(shí)刻之差是間隔時(shí)間。舊基準(zhǔn)時(shí)刻前的間隔時(shí)間的控制頻帶和發(fā)送頻帶的平均值表示為old_old_token、old_old_snd (1203)。從舊基準(zhǔn)時(shí)刻起基準(zhǔn)時(shí)刻為止的控制頻帶、發(fā)送頻帶和再發(fā)送頻帶的平均值表示為old_token、old_snd、old_rts(1202)。從基準(zhǔn)時(shí)刻起當(dāng)前時(shí)刻為止的控制頻帶、發(fā)送頻帶和再發(fā)送頻帶的平均值表示為token、snd、rts (1201)。發(fā)送頻帶控制部715利用在頻帶表213中記載的值,如上所述地即使rts_ratio530和old_rts_ratio531,確定控制頻帶(token),并傳至令牌更新部717。并且,更新狀態(tài)表212。利用圖2,對(duì)從LAN側(cè)接收到附帶數(shù)據(jù)的包時(shí)的包的流程進(jìn)行說明。從LAN側(cè)到來的附帶數(shù)據(jù)的包進(jìn)入LAN側(cè)TCP處理部203,并到達(dá)接收履歷更新部726。接收履歷更新部726經(jīng)由匯總部732將ACK包返送至LAN側(cè),將包中所記載的數(shù)據(jù)存儲(chǔ)到LAN側(cè)接收緩存器rbuf204。并且,基于存儲(chǔ)數(shù)據(jù)大小來更新狀態(tài)表212的指針。數(shù)據(jù)讀出部601讀出在LAN側(cè)接收緩存器rbuf204所存儲(chǔ)的編隊(duì)完畢數(shù)據(jù),向數(shù)據(jù)加工部602轉(zhuǎn)送。并且,基于讀出的數(shù)據(jù)大小更新狀態(tài)表212的指針。數(shù)據(jù)加工部602對(duì)數(shù)據(jù)進(jìn)行加工,向數(shù)據(jù)寫入部603轉(zhuǎn)送。并且,基于正在進(jìn)行加工的數(shù)據(jù)大小來更新狀態(tài)表212的正在進(jìn)行加工的數(shù)據(jù)大小。數(shù)據(jù)寫入部603將加工完畢數(shù)據(jù)寫入WAN側(cè)發(fā)送緩存器sbuf207。并且,基于進(jìn)行了寫入的數(shù)據(jù)大小來更新狀態(tài)表212的指針。被寫入到WAN側(cè)發(fā)送緩存器sbuf207的數(shù)據(jù)被發(fā)送履歷更新部705讀出,并作為附帶數(shù)據(jù)的包向WAN側(cè)發(fā)送。進(jìn)一步對(duì)接收履歷更新部726進(jìn)行說明時(shí),通過從LAN側(cè)的接收緩存器的最大值減去lan_right_recv510與lan_left_rbuf508的差分,從而計(jì)算接收緩存器的剩余量。在有效負(fù)載450的大小為接收緩存器的剩余量以下時(shí),將在有效負(fù)載450中所記載的數(shù)據(jù)全部保存于接收緩存器。在有效負(fù)載450的大小比接收緩存器的剩余量大時(shí),僅將從有效負(fù)載450的開頭起與接收緩存器的剩余量相當(dāng)?shù)拇笮〉臄?shù)據(jù)保存于接收緩存器。在保存數(shù)據(jù)大小比O大時(shí),基于在附帶數(shù)據(jù)的包的TCP標(biāo)頭420所記載的SEQ423的值和保存數(shù)據(jù)大小,進(jìn)行接收緩存器管理用指針的更新。例如,在對(duì)包標(biāo)頭記載的SEQ423加上保存數(shù)據(jù)大小而得到的值比lan_right_recv510大時(shí),將lan_right_recv510變更為對(duì)SEQ423加上保存數(shù)據(jù)大小而得到的值。并且,以接收數(shù)據(jù)的最后尾成為lan_right_recV510的方式,將接收數(shù)據(jù)記載于LAN側(cè)的接收緩存器。之后,向LAN側(cè)返送將接收窗口大小rwnd527記載于TCP標(biāo)頭420的win_size427并將接收緩存器管理指針之一的lan_left_recv509記載于TCP 標(biāo)頭 420 的 ACK424 的 ACK 包。此外,在接收履歷更新部726中,是否保存數(shù)據(jù)的判斷中,rwnd527的值未被使用。為此,即使rwnd527為0,如果接收緩存器的剩余量比O大,則在有效負(fù)載450中所記載的數(shù)據(jù)被保存于接收緩存器,具有增加后的ACK424的ACK包被返送至LAN側(cè)。另外,進(jìn)一步對(duì)發(fā)送履歷更新部705進(jìn)行說明時(shí),從WAN側(cè)發(fā)送緩存器sbuf207讀出從wan_right_send525起向右方向最大到wan_right_sbuf526為止的數(shù)據(jù)。wan_right_send525增加所讀出的數(shù)據(jù)大小的量,并向右移動(dòng)。并且,向WAN側(cè)發(fā)送追加了將所讀出的數(shù)據(jù)記載于有效負(fù)載450并且將wan_right_send525記載于SEQ423的TCP標(biāo)頭420后的附帶數(shù)據(jù)的包。(控制頻帶的更新處理)控制頻帶的更新處理另外通過信息交換部230如上所述地進(jìn)行自身裝置與其他信息交換部之間的信息通知及接收、與對(duì)向裝置的信息交換部之間的信息通知及接收,更新狀態(tài)表212的各信息。圖13A中,表示表示發(fā)送頻帶控制部715更新控制頻帶(token)時(shí)的概念性的流程圖。發(fā)送頻帶控制部715按照本流程圖執(zhí)行處理,從而不僅利用根據(jù)自身裝置的發(fā)送訪問線路頻帶和正在進(jìn)行數(shù)據(jù)發(fā)送的連接數(shù)求出的自身裝置的平均一個(gè)連接的頻帶,也利用根據(jù)從對(duì)向裝置通知的接收訪問線路頻帶和正在進(jìn)行數(shù)據(jù)接收的連接數(shù)求出的對(duì)向裝置的平均一個(gè)連接的頻帶,由此能夠更公平地限制頻帶,并且能夠?qū)崿F(xiàn)基于再發(fā)送率的頻帶控制。圖13A的各步驟由發(fā)送頻帶控制部715來執(zhí)行。控制頻帶的更新處理開始后(步驟1301),發(fā)送頻帶控制部715判斷包再發(fā)送率(=rts/old_token或rts/old_snd)的增加率是否超過一定值(預(yù)先確定的閾值)(步驟1302)。在超過了時(shí),用當(dāng)前的再發(fā)送頻帶(rts)和以前(基準(zhǔn)時(shí)刻之前的)控制頻帶(old_token)或昔的(基準(zhǔn)時(shí)刻之前的)發(fā)送頻帶(old_snd),更新控制頻帶(token)(步驟1303)。例如,使基準(zhǔn)時(shí)刻之前的控制頻帶減去與當(dāng)前的再發(fā)送頻帶相應(yīng)的量,來作為當(dāng)前時(shí)刻的控制頻帶。另一方面,在未超過時(shí),使控制頻帶增加(步驟1304)。在步驟1303或步驟1304之后,基于自身裝置的連接數(shù)和訪問頻帶、及對(duì)向裝置的連接數(shù)和訪問頻帶,更新控制頻帶(token)(步驟1305)。最后,基于各連接的最小頻帶(each_min_bandwidth543),更新控制頻帶(token)(步驟1306)。通過變更控制頻帶(token),從而在令牌桶中存儲(chǔ)的令牌的量變化,由此能夠變更包的發(fā)送率。圖13B中,表示發(fā)送頻帶控制部715利用頻帶表213記載的值來變更控制頻帶(token)的流程圖。表示使圖13A更詳細(xì)的例子。圖13B的各步驟由發(fā)送頻帶控制部715來執(zhí)行。控制頻帶(token)的更新處理開始后(步驟1306),發(fā)送頻帶控制部715判斷計(jì)時(shí)器713輸出的當(dāng)前時(shí)刻與頻帶表213記載的基準(zhǔn)時(shí)刻之差是否為間隔保存部714輸出的間隔時(shí)間以上(步驟1307)。作為間隔時(shí)間,可以使用記錄了測(cè)量出的RTT的平均值或初始值等的wan_rtt519等。當(dāng)在步驟1307中判斷為真時(shí),使tmp保留基準(zhǔn)時(shí)刻后的當(dāng)前的控制頻帶token的值(步驟1308)。并且,例如,判斷通過在頻帶表213所存儲(chǔ)的再發(fā)送比特累計(jì)值(基準(zhǔn)時(shí)刻后)/ (當(dāng)前時(shí)刻-基準(zhǔn)時(shí)刻)/發(fā)送頻帶(基準(zhǔn)時(shí)刻前)求出的再發(fā)送率(基準(zhǔn)時(shí)刻后)rts_ratio是否比通過再發(fā)送頻帶(基準(zhǔn)時(shí)刻前)/發(fā)送頻帶(舊基準(zhǔn)時(shí)刻前)求出的舊再發(fā)送率(基準(zhǔn)時(shí)刻前)old_rts_ratio的K倍(K:預(yù)先確定的I以上的系數(shù))大(步驟1309)。與上述的步驟1302相當(dāng)。K的值可以設(shè)為固定,也可以設(shè)為根據(jù)token的值而變化。在步驟1309中,判斷為大時(shí)是判斷為再發(fā)送率的增加率較大,為了使控制頻帶(基準(zhǔn)時(shí)刻后)token的值比控制頻帶(基準(zhǔn)時(shí)刻前)old_token的值小,例如用再發(fā)送頻帶rts使之減小。例如,設(shè)為控制頻帶(基準(zhǔn)時(shí)刻后)token=控制頻帶(基準(zhǔn)時(shí)刻前)old_token-再發(fā)送頻帶(基準(zhǔn)時(shí)刻后)rts等(步驟1311)。在步驟1309中判斷為假時(shí),使控制頻帶(基準(zhǔn)時(shí)刻后)token增加(步驟1310)??刂祁l帶(基準(zhǔn)時(shí)刻后)token的增加方法可以是使之線性地增加,也可以是使之指數(shù)地增加,也可以使線性增加和指數(shù)增加組合,也可以最初使之線性增加之后使之指數(shù)增加,也可以使增加率根據(jù)控制頻帶(基準(zhǔn)時(shí)刻后)token而變化。步驟1311或步驟1310完成后,例如更新為:發(fā)送頻帶(舊基準(zhǔn)時(shí)刻前)old_old_snd=發(fā)送頻帶(基準(zhǔn)時(shí)刻前)old_snd,發(fā)送頻帶(基準(zhǔn)時(shí)刻前)old_snd=發(fā)送頻帶(基準(zhǔn)時(shí)刻后)snd,再發(fā)送頻帶(基準(zhǔn)時(shí)刻前)old_rts=再發(fā)送頻帶(基準(zhǔn)時(shí)刻后)rts,基準(zhǔn)時(shí)刻=基準(zhǔn)時(shí)刻+往返,發(fā)送比特累計(jì)值(基準(zhǔn)時(shí)刻后)=0,再發(fā)送比特累計(jì)值(基準(zhǔn)時(shí)刻后)=0,控制頻帶(舊基準(zhǔn)時(shí)刻前)old_old_token=控制頻帶(基準(zhǔn)時(shí)刻前)old_token,控制頻帶(基準(zhǔn)時(shí)刻前)old_token=tmp,并將各值記錄于頻帶表213 (步驟1312)。之后轉(zhuǎn)移到步驟1315。另一方面,在步驟1307中判斷為假時(shí),與步驟1309同樣地,判斷通過再發(fā)送比特累計(jì)值(基準(zhǔn)時(shí)刻后)/ (當(dāng)前時(shí)刻-基準(zhǔn)時(shí)刻)/發(fā)送頻帶(基準(zhǔn)時(shí)刻前)求出的再發(fā)送率(基準(zhǔn)時(shí)刻后)rts_ratio是否比通過再發(fā)送頻帶(基準(zhǔn)時(shí)刻前)/發(fā)送頻帶(舊基準(zhǔn)時(shí)刻前)求出的舊再發(fā)送率(基準(zhǔn)時(shí)刻前)old_rts_ratio的K倍(K:預(yù)先確定的I以上的系數(shù))大(步驟1313)。K的值可以設(shè)為固定,也可以設(shè)為根據(jù)token的值而變化。在步驟1313中判斷為大時(shí)是判斷為再發(fā)送率的變化率較大,與步驟1311同樣地,為了使控制頻帶(基準(zhǔn)時(shí)刻后)token的值比控制頻帶(基準(zhǔn)時(shí)刻前)old_token的值小,用再發(fā)送頻帶rts使之減少。例如,設(shè)為控制頻帶(基準(zhǔn)時(shí)刻后)token=控制頻帶(基準(zhǔn)時(shí)刻前)old_token-再發(fā)送頻帶(基準(zhǔn)時(shí)刻后)rts (步驟1314)。在步驟1313中判斷為小或相等時(shí),什么都不做。通過這些步驟,即使不經(jīng)過間隔時(shí)間,也能夠立即檢測(cè)再發(fā)送率的增加并能夠更新控制頻帶。之后轉(zhuǎn)移到步驟1315。在步驟1315中,在控制頻帶(基準(zhǔn)時(shí)刻后)token比將裝置1111的發(fā)送訪問線路頻帶max_snd_bandwidth539除以裝置1111的正在進(jìn)行數(shù)據(jù)發(fā)送的TCP連接數(shù)all_snd_num536而得到的平均一個(gè)連接的發(fā)送訪問線路頻帶大時(shí),將控制頻帶(基準(zhǔn)時(shí)刻后)token變更為平均一個(gè)連接的發(fā)送訪問線路頻帶。并且,在控制頻帶(基準(zhǔn)時(shí)刻后)token比將對(duì)向裝置的接收訪問線路頻帶each_rcv_bandwidth542除以對(duì)向裝置的正在進(jìn)行數(shù)據(jù)接收的TCP連接數(shù)each_rcv_num541而得到的平均一個(gè)連接的接收訪問線路頻帶大時(shí),將控制頻帶(基準(zhǔn)時(shí)刻后)token變更為平均一個(gè)連接的接收訪問線路頻帶(步驟1315)。并且,控制頻帶(基準(zhǔn)時(shí)刻后Hoken比各TCP通信的最小頻帶each_min_bandwidth小時(shí),將控制頻帶(基準(zhǔn)時(shí)刻后)token變更為各TCP通信的最小頻帶each_min_bandwidth (步驟1316)。即取通過以圖13B所示的兩個(gè)式子確定的token中的任一個(gè)小的一方。此外,步驟1315、1316中的各自的數(shù)據(jù)能夠參照狀態(tài)表212而讀出。通過變更控制頻帶(token),從而在令牌桶中存儲(chǔ)的令牌的量變化,由此能夠變更包的發(fā)送率。這樣,不僅利用根據(jù)自身裝置的發(fā)送訪問線路頻帶和正在進(jìn)行數(shù)據(jù)發(fā)送的連接數(shù)求出的自身裝置的平均一個(gè)連接的頻帶,也利用根據(jù)從對(duì)向裝置通知的接收訪問線路頻帶和正在進(jìn)行數(shù)據(jù)接收的連接數(shù)求出的對(duì)向裝置的平均一個(gè)連接的頻帶,由此能夠更公平地限制頻帶,并且能夠?qū)崿F(xiàn)基于再發(fā)送率的頻帶控制。圖22中,表示步驟1305及步驟1315的詳細(xì)的處理例的流程圖。圖22的各步驟由發(fā)送頻帶控制部715來執(zhí)行。處理開始后(步驟2201),從狀態(tài)表212讀出裝置1111的發(fā)送訪問線路頻帶max_snd_bandwidth539、裝置1111的正在進(jìn)行數(shù)據(jù)發(fā)送的TCP連接數(shù)all_snd_num536、對(duì)向裝置的接收訪問線路頻帶each_rcv_bandwidth542、對(duì)向裝置的正在進(jìn)行數(shù)據(jù)接收的TCP連接數(shù)each_rcv_num541的信息(步驟2208)。判斷將裝置1111的發(fā)送訪問線路頻帶max_snd_bandwidth539除以裝置1111的正在進(jìn)行數(shù)據(jù)發(fā)送的TCP連接數(shù)all_snd_num536而得到的平均一個(gè)連接的發(fā)送訪問線路頻帶是否比將對(duì)向裝置的接收訪問線路頻帶each_rcv_bandwidth542除以對(duì)向裝置的正在進(jìn)行數(shù)據(jù)接收的TCP連接數(shù)each_rcv_num541而得到的平均一個(gè)連接的接收訪問線路頻帶大(步驟2202)。在大時(shí),判斷控制頻帶(基準(zhǔn)時(shí)刻后)token是否比對(duì)向裝置的平均一個(gè)連接的接收訪問線路頻帶大(步驟2203)。將在大時(shí),控制頻帶(基準(zhǔn)時(shí)刻后Hoken變更為對(duì)對(duì)向裝置的平均一個(gè)連接的接收訪問線路頻帶加上常數(shù)α而得到的值或乘以常數(shù)α而得到的值(步驟2205)。α的值可以是1,也可以是其他值。當(dāng)在步驟2203中判斷為否時(shí),什么也不做并結(jié)束(步驟2207)。另一方面,當(dāng)在步驟2202中判斷為否時(shí),判斷控制頻帶(基準(zhǔn)時(shí)刻后)token是否比自身裝置的平均一個(gè)連接的發(fā)送訪問線路頻帶大(步驟2204)。在大時(shí),將控制頻帶(基準(zhǔn)時(shí)刻后)token變更為對(duì)自身裝置的平均一個(gè)連接的發(fā)送訪問線路頻帶加上常數(shù)α而得到的值或乘以常數(shù)α而得到的值(步驟2206)。當(dāng)在步驟2204中判斷為否時(shí),什么也不做并結(jié)束(步驟2207)。并且,將控制頻帶token寫入狀態(tài)表212及頻帶表213 (步驟2209)。此外,當(dāng)在步驟2203、2204中判斷為否時(shí),也可以省略步驟2209并結(jié)束處理。這樣,不僅利用根據(jù)自身裝置的發(fā)送訪問線路頻帶和正在進(jìn)行數(shù)據(jù)發(fā)送的連接數(shù)求出的自身裝置的平均一個(gè)連接的頻帶,也利用根據(jù)從對(duì)向裝置通知的接收訪問線路頻帶和正在進(jìn)行數(shù)據(jù)接收的連接數(shù)求出的對(duì)向裝置的平均一個(gè)連接的頻帶,由此能夠更公平地限制頻帶,并且能夠?qū)崿F(xiàn)基于再發(fā)送率的頻帶控制。通過以上的發(fā)送頻帶控制部715更新控制頻帶的方法,將利用基于過去的發(fā)送頻帶和最近的再發(fā)送頻帶的再發(fā)送率的變化率來控制頻帶的方法和利用在裝置間進(jìn)行了交換的連接數(shù)的信息來控制頻帶的方法組合,能夠控制頻帶。由此,控制頻帶以在利用可能頻帶附近上下的方式被更新,因此,能夠接近100%地將利用可能頻帶用完。并且,即使在僅能夠進(jìn)行標(biāo)準(zhǔn)的TCP通信的終端間,也能夠?qū)崿F(xiàn)不依賴于RTT、廢棄率的通信。(動(dòng)作例)圖14中,表示在包含一個(gè)TCP變換部200的裝置1111_A與包含一個(gè)TCP變換部200的裝置Illl-B之間基于自身裝置的統(tǒng)計(jì)信息來進(jìn)行頻帶控制的例子的概念圖。設(shè)裝置Illl-A的發(fā)送訪問線路60Mbps,從三臺(tái)發(fā)送終端(1401 1403)向三臺(tái)接收終端(1404 1406),經(jīng)由裝置Illl-A和裝置1111-B,進(jìn)行三個(gè)TCP通信。在裝置Illl-A內(nèi)的TCP變換部200-A內(nèi)的狀態(tài)表212-A中,記錄有snd_num=3,all_snd_num=3, max_snd_bandwidth=60Mbps。利用本信息,TCP 變換部 200-A 內(nèi)的發(fā)送頻帶控制部715-A將能夠公平分配的TCP通信的平均一個(gè)連接的頻帶計(jì)算為20Mbps。發(fā)送頻帶控制部715-A基于再發(fā)送率確定了控制頻帶token后(于步驟1302 1304相當(dāng)),在控制頻帶token超過20Mbps時(shí),以控制頻帶token為20Mbps以下的方式來限制控制頻帶(與步驟1305相當(dāng))。圖15中,表示在包含多個(gè)TCP變換部200的裝置Illl-A與包含一個(gè)TCP變換部200的裝置Illl-B之間基于自身裝置的統(tǒng)計(jì)信息來進(jìn)行頻帶控制的例子的概念圖。設(shè)裝置Illl-A的發(fā)送訪問線路60Mbps,從三臺(tái)發(fā)送終端(1501 1503)向三臺(tái)接收終端(1504 1506),經(jīng)由裝置Illl-A和裝置1111-B,進(jìn)行三個(gè)TCP通信。兩個(gè)TCP通信經(jīng)由第I個(gè)TCP變換部200-A-1,一個(gè)TCP通信經(jīng)由第2個(gè)TCP變換部200-A-2。在裝置Illl-A內(nèi)的TCP變換部200_A_1內(nèi)的狀態(tài)表212_A_1中,記錄有snd_num=2, all_snd_num=3, max_snd_bandwidth=60Mbps。利用本信息,TCP 變換部 200-A-l內(nèi)的發(fā)送頻帶控制部715-A-1將能夠公平分配的TCP通信的平均一個(gè)連接的頻帶計(jì)算為20Mbps。發(fā)送頻帶控制部715-A-1基于再發(fā)送率確定了控制頻帶token后(與步驟1302 1304相當(dāng)),在控制頻帶token超過20Mbps時(shí),以控制頻帶token為20Mbps以下的方式來限制控制頻帶(與步驟1305相當(dāng))。在裝置Illl-A內(nèi)的TCP變換部200_A_2內(nèi)的狀態(tài)表212_A_1中,記錄有snd_num=l, all_snd_num=3, max_snd_bandwidth=60Mbps。利用本信息,TCP 變換部 200-A-2內(nèi)的發(fā)送頻帶控制部715-A-2將能夠公平分配的TCP通信的平均一個(gè)連接的頻帶計(jì)算為20Mbps。發(fā)送頻帶控制部715-A-2基于再發(fā)送率確定了控制頻帶token后(與步驟1302 1304相當(dāng)),在控制頻帶token超過20Mbps時(shí),以控制頻帶token為20Mbps以下的方式來限制控制頻帶(與步驟1305相當(dāng))。圖16中,表示在包含一個(gè)TCP變換部200的裝置1111-A與包含一個(gè)TCP變換部200的裝置Illl-B之間基于對(duì)向裝置的統(tǒng)計(jì)信息來進(jìn)行頻帶控制的例子的概念圖。設(shè)裝置Illl-B的接收訪問線路30Mbps,從三臺(tái)發(fā)送終端(1601 1603)向三臺(tái)接收終端(1604 1606),經(jīng)由裝置Illl-A和裝置1111-B,進(jìn)行三個(gè)TCP通信。在裝置Illl-B內(nèi)的TCP變換部200-B內(nèi)的狀態(tài)表212-B中,記錄有rcv_num=3,all_rcv_num=3,max_rcv_bandwidth=30Mbps。本信息被載于 ACK包等,向發(fā)送終端(1601 1603)側(cè)的裝置Illl-A通知,并記錄于TCP變換部200-A的狀態(tài)表212?;诒煌ㄖ男畔?,TCP變換部200-A內(nèi)的發(fā)送頻帶控制部715-A以控制頻帶的最大值為IOMbps的方式調(diào)整控制頻帶。圖17中,表示在包含一個(gè)TCP變換部200的裝置Illl-A與包含多個(gè)TCP變換部200的裝置Illl-B之間基于對(duì)向裝置的統(tǒng)計(jì)信息來進(jìn)行頻帶控制的例子的概念圖。設(shè)裝置Illl-B的接收訪問線路30Mbps,從三臺(tái)發(fā)送終端(1701 1703)向三臺(tái)接收終端(1704 1706),經(jīng)由裝置Illl-A和裝置1111-B,進(jìn)行三個(gè)TCP通信。兩個(gè)TCP通信經(jīng)由第I個(gè)TCP變換部200-B-1,一個(gè)TCP通信經(jīng)由第2個(gè)TCP變換部200-B-2。在裝置Illl-B內(nèi)的TCP變換部200-B-1內(nèi)的狀態(tài)表212-B-1中,記錄有rcv_num=2, all_rcv_num=3, max_rcv_bandwidth=30Mbps。本信息被載于 ACK 包等,向發(fā)送終端(1701 1703)側(cè)的裝置Illl-A通知,并記錄于狀態(tài)表212-A?;诒煌ㄖ男畔?,TCP變換部200-A內(nèi)的發(fā)送頻帶控制部715-A以控制頻帶的最大值為IOMbps的方式調(diào)整控制頻帶。在裝置Illl-B內(nèi)的TCP變換部200_B_2內(nèi)的狀態(tài)表212_B_2中,記錄有rcv_num=l, all_rcv_num=3, max_rcv_bandwidth=30Mbps。本信息被載于 ACK 包等,向發(fā)送終端(1701 1703)側(cè)的裝置Illl-A通知,并記錄于狀態(tài)表212-A?;诒煌ㄖ男畔?,TCP變換部200-A內(nèi)的發(fā)送頻帶控制部715-A將能夠公平分配的TCP通信的平均一個(gè)連接的頻帶計(jì)算為10Mbps。發(fā)送頻帶控制部715-A基于再發(fā)送率確定了控制頻帶token后(與步驟1302 1304相當(dāng)),在控制頻帶token超過IOMbps時(shí),以控制頻帶token為IOMbps以下的方式來限制控制頻帶的(與步驟1305相當(dāng))。圖18中,表示在包含一個(gè)TCP變換部200的裝置Illl-A與包含一個(gè)TCP變換部200的裝置Illl-B之間基于自身裝置和對(duì)向裝置的統(tǒng)計(jì)信息來進(jìn)行頻帶控制的例子的概念圖。設(shè)裝置Illl-A的發(fā)送訪問線路60Mbps,設(shè)裝置1111-B的接收訪問線路30Mbps,從三臺(tái)發(fā)送終端(1801 1803)向三臺(tái)接收終端(1804 1806),經(jīng)由裝置Illl-A和裝置1111 -B,進(jìn)行三個(gè)TCP通信。在裝置Illl-B內(nèi)的TCP變換部200-B內(nèi)的狀態(tài)表212-B中,記錄有rcv_num=3,all_rcv_num=3,max_rcv_bandwidth=30Mbps。本信息被載于 ACK包等,向發(fā)送終端(1801 1803 )側(cè)的裝置Illl-A通知,并記錄于狀態(tài)表212-A。在裝置1111-A內(nèi)的TCP變換部200-A內(nèi)的狀態(tài)表 212-A 中,記錄有 snd_num=3,all_snd_num=3,max_snd_bandwidth=60Mbps。利用來自對(duì)向裝置的信息和自身裝置內(nèi)的記錄信息,TCP變換部200-A內(nèi)的發(fā)送頻帶控制部715-A將能夠公平分配的TCP通信的平均一個(gè)連接的頻帶計(jì)算為10Mbps。發(fā)送頻帶控制部715-A基于再發(fā)送率確定了控制頻帶token后(與步驟1302 1304相當(dāng)),在控制頻帶token超過IOMbps時(shí),以控制頻帶token為IOMbps以下的方式來限制控制頻帶的(與步驟1305相當(dāng))。圖19中,表示在包含一個(gè)TCP變換部200的裝置1111-A與包含多個(gè)TCP變換部200的裝置Illl-B之間基于自身裝置和對(duì)向裝置的統(tǒng)計(jì)信息來進(jìn)行頻帶控制的例子的概念圖。設(shè)裝置Illl-A的發(fā)送訪問線路60Mbps,設(shè)裝置1111-B的接收訪問線路30Mbps,從三臺(tái)發(fā)送終端(1901 1903)向三臺(tái)接收終端(1904 1906),經(jīng)由裝置Illl-A和裝置1111-B,進(jìn)行三個(gè)TCP通信。兩個(gè)TCP通信經(jīng)由第I個(gè)TCP變換部200-B-1,一個(gè)TCP通信經(jīng)由第2個(gè)TCP變換部200-B-2。在裝置Illl-B內(nèi)的TCP變換部200-B-1內(nèi)的狀態(tài)表212-B-1中,記錄有rcv_num=2, all_rcv_num=3, max_rcv_bandwidth=30Mbps。本信息被載于 ACK 包等,向發(fā)送終端(1901 1903)側(cè)的裝置Illl-A通知,并記錄于狀態(tài)表212-A。在裝置Illl-B內(nèi)的TCP變換部200-B-2內(nèi)的狀態(tài)表212-B-2中,記錄有rcv_num=l, all_rcv_num=3, max_rcv_bandwidth=30Mbps。本信息被載于 ACK 包等,向發(fā)送終端(1901 1903)側(cè)的裝置Illl-A通知,并記錄于狀態(tài)表212-A。裝置1111-A內(nèi)的TCP變換部200-A內(nèi)的發(fā)送頻帶控制部715_A利用來自對(duì)向裝置的信息和自身裝置內(nèi)的記錄信息,將能夠公平分配的TCP通信的平均一個(gè)連接的頻帶計(jì)算為10Mbps。發(fā)送頻帶控制部715-A基于再發(fā)送率確定了控制頻帶token后(與步驟1302 1304相當(dāng)),在控制頻帶token超過IOMbps時(shí),以控制頻帶token為IOMbps以下的方式來限制控制頻帶的(與步驟1305相當(dāng))。圖20中,表示在包含多個(gè)TCP變換部200的裝置1111-A與包含一個(gè)TCP變換部200的裝置Illl-B之間基于自身裝置和對(duì)向裝置的統(tǒng)計(jì)信息來進(jìn)行頻帶控制的例子的概念圖。設(shè)裝置Illl-A的發(fā)送訪問線路60Mbps,設(shè)裝置1111-B的接收訪問線路30Mbps,從三臺(tái)發(fā)送終端(2001 2003)向三臺(tái)接收終端(2004 2006),經(jīng)由裝置Illl-A和裝置1111-B,進(jìn)行三個(gè)TCP通信。兩個(gè)TCP通信經(jīng)由第I個(gè)TCP變換部200-B-1,一個(gè)TCP通信經(jīng)由第2個(gè)TCP變換部200-B-2。在裝置Illl-B內(nèi)的TCP變換部200-B內(nèi)的狀態(tài)表212-B中,記錄有rcv_num=3,all_rcv_num=3,max_rcv_bandwidth=30Mbps。本信息被載于ACK包等,向發(fā)送終端(2001 2003)側(cè)的裝置Illl-A通知,并記錄于狀態(tài)表212-A-1、212-A-2。在裝置Illl-A內(nèi)的TCP變換部200-A-1內(nèi)的狀態(tài)表212-A-1中,記錄有snd_num=2, all_snd_num=3,max_snd_bandwidth=60Mbps。裝置 1111-A 內(nèi)的 TCP 變換部 200-A-l內(nèi)的發(fā)送頻帶控制部715-A-1利用來自對(duì)向裝置的信息和自身裝置內(nèi)的記錄信息,將能夠公平分配的TCP通信的平均一個(gè)連接的頻帶計(jì)算為10Mbps。發(fā)送頻帶控制部715-A-1基于再發(fā)送率確定了控制頻帶token后(與步驟1302 1304相當(dāng)),在控制頻帶token超過IOMbps時(shí),以控制頻帶token為IOMbps以下的方式來限制控制頻帶的(與步驟1305相當(dāng))。在裝置Illl-A內(nèi)的TCP變換部200-A-2內(nèi)的狀態(tài)表212-A-2中,記錄有snd_num=l, all_snd_num=3,max_snd_bandwidth=60Mbps。裝置 1111-A 內(nèi)的 TCP 變換部 200-A-2內(nèi)的發(fā)送頻帶控制部715-A-2利用來自對(duì)向裝置的信息和自身裝置內(nèi)的記錄信息,將能夠公平分配的TCP通信的平均一個(gè)連接的頻帶計(jì)算為10Mbps。發(fā)送頻帶控制部715-A-2基于再發(fā)送率確定了控制頻帶token后(與步驟1302 1304相當(dāng)),在控制頻帶token超過IOMbps時(shí),以控制頻帶token為IOMbps以下的方式來限制控制頻帶的(與步驟1305相當(dāng))。圖21中,表示在包含多個(gè)TCP變換部200的裝置1111-A與包含多個(gè)TCP變換部200的裝置Illl-B之間基于自身裝置和對(duì)向裝置的統(tǒng)計(jì)信息來進(jìn)行頻帶控制的例子的概念圖。設(shè)裝置Illl-A的發(fā)送訪問線路60Mbps,設(shè)裝置1111-B的接收訪問線路30Mbps,從三臺(tái)發(fā)送終端(2101 2103)向三臺(tái)接收終端(2104 2106),經(jīng)由裝置Illl-A和裝置1111-B,進(jìn)行三個(gè)TCP通信。兩個(gè)TCP通信經(jīng)由第I個(gè)TCP變換部200-A-1和TCP變換部200-B-1,一個(gè)TCP通信經(jīng)由第2個(gè)TCP變換部200-A-2和TCP變換部200-B-2。
在裝置Illl-B內(nèi)的TCP變換部200_B_1內(nèi)的狀態(tài)表212_B_1中,記錄有rcv_num=2, all_rcv_num=3, max_rcv_bandwidth=30Mbps。本信息被載于 ACK 包等,向發(fā)送終端(2101 2103)側(cè)的裝置Illl-A (例如TCP通信中對(duì)向的TCP變換部200-A-1)通知,并記錄于狀態(tài)表212-A-1。在裝置Illl-B內(nèi)的TCP變換部200_B_2內(nèi)的狀態(tài)表212_B_2中,記錄有rcv_num=l, all_rcv_num=3, max_rcv_bandwidth=30Mbps。本信息被載于 ACK 包等,向發(fā)送終端(2101 2103)側(cè)的裝置Illl-A (例如TCP通信中對(duì)向的TCP變換部200-A-2)通知,狀態(tài)表212-A-2并記錄于。裝置Illl-A內(nèi)的TCP變換部200-A-1內(nèi)的狀態(tài)表212-A-1中,記錄有snd_num=2,all_snd_num=3, max_snd_bandwidth=60Mbps。裝置 1111-A 內(nèi)的 TCP 變換部 200-A-1 內(nèi)的發(fā)送頻帶控制部715-A-1利用來自對(duì)向裝置的信息和自身裝置內(nèi)的記錄信息,將能夠公平分配的TCP通信的平均一個(gè)連接的頻帶計(jì)算為10Mbps。發(fā)送頻帶控制部715-A-1基于再發(fā)送率確定了控制頻帶token后(與步驟1302 1304相當(dāng)),在控制頻帶token超過IOMbps時(shí),以控制頻帶token為IOMbps以下的方式來限制控制頻帶的(與步驟1305相當(dāng))。在裝置Illl-A內(nèi)的TCP變換部200-A-2內(nèi)的狀態(tài)表212-A-2中,記錄有snd_num=l, all_snd_num=3,max_snd_bandwidth=60Mbps。裝置 1111-A 內(nèi)的 TCP 變換部 200-A-2內(nèi)的發(fā)送頻帶控制部715-A-2利用來自對(duì)向裝置的信息和自身裝置內(nèi)的記錄信息,將能夠公平分配的TCP通信的平均一個(gè)連接的頻帶計(jì)算為10Mbps。發(fā)送頻帶控制部715-A-2基于再發(fā)送率確定了控制頻帶token后(與步驟1302 1304相當(dāng)),在控制頻帶token超過IOMbps時(shí),以控制頻帶token為IOMbps以下的方式來限制控制頻帶的(與步驟1305相當(dāng))。此外,與裝置1111連接的終端1121讀取裝置1111內(nèi)部的各TCP變換部200內(nèi)的狀態(tài)表212的snd_ _num、all_snd_num、max_snd_bandwidth、rcv_num>all_rcv_num>max_rcv_bandwidth、each_rcv_bandwidth、each_rcv_num 等信息并對(duì)外部顯不,從而能夠顯不每個(gè)TCP連接的頻帶,或能夠顯示裝置所收納的TCP連接數(shù),或能夠顯示對(duì)向裝置的訪問頻帶及TCP連接數(shù)的信息。通過以上的發(fā)送頻帶控制部715是更新控制頻帶的方法,利用過去的發(fā)送頻帶和最近的再發(fā)送頻帶,將利用再發(fā)送率的變化率來控制頻帶的方法和利用在裝置間進(jìn)行了交換的連接數(shù)的信息來控制頻帶的方法組合,能夠控制頻帶。由此,控制頻帶以在利用可能頻帶附近上下的方式被更新,因此,能夠接近100%地將利用可能頻帶用完。實(shí)施例2圖23中,表示包含對(duì)兩個(gè)WAN (2340,2330)進(jìn)行中繼的裝置2303的系統(tǒng)結(jié)構(gòu)圖。裝置2301和裝置2302利用與實(shí)施例1相同的通信裝置。裝置2301與連接有終端(2311 2313)的LAN2310和WAN2340處于連接狀態(tài)。裝置2302與連接有終端(2321 2323)的LAN2320和WAN2330處于連接狀態(tài)。通信裝置(以下,簡(jiǎn)單地記作裝置)2303與WAN2340和WAN2330處于連接狀態(tài)。裝置2303取與圖11所示的框圖同樣的結(jié)構(gòu)。圖11中的LAN變?yōu)閃AN。圖24中,表示裝置2303內(nèi)的TCP變換部的框圖。與圖2的結(jié)構(gòu)相比,在裝置2303中,LAN TCP塊203置換為WAN TCP塊209_1。并且,具有第2頻帶表213-1,包括兩個(gè)頻帶表213。WAN TCP處理部209-1的結(jié)構(gòu)與WAN TCP處理部209相同。上述的控制頻帶的更新處理在WAN2340側(cè)和WAN2330側(cè)這雙方進(jìn)行。圖25中,表示狀態(tài)表2401的格式。狀態(tài)表2401沒有LAN管理用的信息,包括兩組WAN管理用的信息。狀態(tài)表2401具有:用于記錄每個(gè)TCP連接的狀態(tài)的η個(gè)輸入520、記錄裝置2303對(duì)各個(gè)WAN的發(fā)送訪問線路頻帶的max_snd_bandwidth (539, 539_1)、記錄裝置2303對(duì)各個(gè)WAN的接收訪問線路的max_rcv_bandwidth (540, 540-1)、記錄裝置2303對(duì)于各個(gè)WAN正在進(jìn)行數(shù)據(jù)發(fā)送的TCP連接數(shù)的all_snd_num (536,536-1)、記錄裝置2303從各個(gè)WAN正在進(jìn)行數(shù)據(jù)接收的TCP連接數(shù)的all_rcv_num( 538,538-1)、基于各TCP變換部200對(duì)于各個(gè)WAN正在進(jìn)行數(shù)據(jù)發(fā)送的TCP連接數(shù)的snd_num (535,535-1)、記錄各TCP變換部200從各個(gè)WAN正在進(jìn)行數(shù)據(jù)接收的TCP連接數(shù)的rcv_num(537,537-1)、記錄各TCP連接相對(duì)于各個(gè) WAN 的最小頻帶的 each_min_bandwidth (543,543-1)。各輸入520包含各個(gè)WAN的信息。例如,各輸入520具有:記載輸入是否正在進(jìn)行使用的VLD501、記載連接是否正在進(jìn)行確立的connect_state502、表示W(wǎng)AN側(cè)的終端的IP地址的WIP504、表示另一個(gè)WAN側(cè)的終端的IP地址的wIP503、表示W(wǎng)AN側(cè)的終端的TCP端口編號(hào)的Wport506、表示另一個(gè)WAN側(cè)的終端的TCP端口編號(hào)的wport505、表示各個(gè)WAN側(cè)的TCP通信的狀態(tài)的wan_state(514,514_1)、表示各個(gè)WAN側(cè)的接收緩存器管理用的指針的 wan_left_rbuf (515, 515-1)、wan_left_recv (516, 516-1 )> wan_right_recv (517,517-1)、表示各個(gè)WAN側(cè)的窗口標(biāo)度選項(xiàng)的值的wan_ws(518,518-1)、表示各個(gè)WAN側(cè)的平均RTT的wan_rtt (519,519-1)、表示從各個(gè)WAN側(cè)的接收緩存器被讀出并正在進(jìn)行加工的數(shù)據(jù)大小的wan_lan (529,529-1)、表示各個(gè)WAN側(cè)的發(fā)送緩存器管理用的指針的wan_left_send (524,524-1)、wan_right_send (525,525-1)> wan_right_sbuf (526,526-1)、表示各個(gè)WAN側(cè)的最近的再發(fā)送率是rts_ratio (530,530-1)、表示各個(gè)WAN側(cè)的過去的再發(fā)送率的old_rts_ratio (531, 531-1)、表示各個(gè)WAN側(cè)的最近的發(fā)送頻帶的snd (532,532-1)、表示各個(gè)WAN側(cè)的過去的發(fā)送頻帶的old_snd (533,533-1)、表示各個(gè)WAN側(cè)的進(jìn)一步再過去的發(fā)送頻帶的old_old_snd(534,534-l)、記錄各個(gè)WAN側(cè)的對(duì)向裝置的正在進(jìn)行數(shù)據(jù)接收的連接數(shù)的each_rcv_num (541, 541-1)、記錄各個(gè)WAN側(cè)的對(duì)向裝置的接收訪問線路頻帶的 each_rcv_bandwidth (542,542-1)。each_rcv_num (541,541-1)和 each_rcv_bandwidth542, 542-1)基于對(duì)向裝置通知來的信息而被更新。包再發(fā)送部704利用在對(duì)向裝置發(fā)送來的ACK包的TCP選項(xiàng)字段中記載的值等,針對(duì)每個(gè)TCP連接來進(jìn)行更新。max_snd_bandwidth (539, 539-1 )、max_rcv_bandwidth (540, 540-1)等經(jīng)由終端1121等通過手動(dòng)來更新。snd_num (535,535-1)、rcv_num (537,537-1)由信息交換部 2402 針對(duì)各個(gè) WAN中的每個(gè)來交換。信息交換部2402對(duì)狀態(tài)表212的每個(gè)輸入檢查緩存器存儲(chǔ)量,數(shù)據(jù)被存儲(chǔ)在發(fā)送緩存器中的輸入被判斷為正在進(jìn)行數(shù)據(jù)發(fā)送的連接,數(shù)據(jù)被存儲(chǔ)在接收緩存器中的輸入被判斷為正在進(jìn)行數(shù)據(jù)接收的連接并累計(jì)連接數(shù),從而接收snd_num (535,535-1)、rcv_num (537,537-1)。all_rcv_num (538, 538-1)和 all_snd_num (536, 536-1)基于裝置 2303 內(nèi)部的其他的全部TCP變換部200之間的信息交換而被更新。TCP變換部200的信息交換部2402對(duì)于其他的全部TCP變換部200,針對(duì)各個(gè)WAN中的每個(gè)來自己的snd_num (535,535-1)、rcv_num (537,537_1)。另外,針對(duì)各個(gè)WAN中的每個(gè)來計(jì)算從其他的全部TCP變換部200通知來的snd_num (535,535-1)、rcv_num (537,537-1)的合計(jì)值,從而針對(duì)各個(gè)WAN中的每個(gè)來獲得 all_rcv_num (538, 538-1)、all_snd_num (536, 536-1),并定期更新。裝置2303相對(duì)于各個(gè)WAN獨(dú)立動(dòng)作,在各個(gè)WAN中獨(dú)立地進(jìn)行信息交換,從而即使是對(duì)兩個(gè)WAN進(jìn)行中繼的裝置,也能夠?qū)崿F(xiàn)與實(shí)施例1同樣的功能。實(shí)施例3在本實(shí)施例中,表示針對(duì)每個(gè)TCP連接加權(quán)來計(jì)算連接數(shù)的一例。圖26中,表示本實(shí)施例的狀態(tài)表212-1的格式。狀態(tài)表212-1相對(duì)于實(shí)施例1的結(jié)構(gòu),對(duì)各輸入追加權(quán)重weight2601的信息。權(quán)重weight2601例如可以基于各連接的緩存器存儲(chǔ)量(right_sbuf與left_send的差和right_recv與left_rbuf的差的合計(jì))來確定,也可以基于端口編號(hào)(TCP端口編號(hào))來確定。在基于端口編號(hào)來確定時(shí),可以從與裝置1111連接的終端1121,針對(duì)每個(gè)端口編號(hào)手動(dòng)對(duì)信息交換部230指定加權(quán)。信息交換部230觀察輸入的端口編號(hào)Lport、Wport,將被指定的加權(quán)記錄于weight2601。信息交換部230計(jì)算連接數(shù)的合計(jì)值時(shí),對(duì)于一個(gè)連接,加上與該連接對(duì)應(yīng)的weight2601中所記載的值。例如,weight2601為2時(shí),對(duì)與一條該連接加上2,為0.5時(shí)加上0.5。將這樣求出的連接數(shù)的合計(jì)值(snd_num)與其他的TCP交換部200交換。另外,發(fā)送頻帶控制部715求出自身裝置相對(duì)于多個(gè)TCP通信的各連接的頻帶時(shí),將裝置1111的發(fā)送訪問線路頻帶max_snd_bandwidth539除以裝置1111的正在進(jìn)行數(shù)據(jù)發(fā)送的TCP連接數(shù)all_snd_num536,并將所得到的值與相應(yīng)的TCP通信的weight2601相乘,從而求出。另外,發(fā)送頻帶控制部715在求出對(duì)向裝置相對(duì)于多個(gè)TCP通信的各連接的頻帶時(shí),將對(duì)向裝置的接收訪問線路頻帶each_rcv_bandwidth542除以對(duì)向裝置的正在進(jìn)行數(shù)據(jù)接收的TCP連接數(shù)each_rcv_num541,并將所得到的值與相應(yīng)的TCP通信的weight2601相乘,從而求出。如以上所述,通過使用反映了加權(quán)weight2601的TCP連接數(shù),能夠針對(duì)每個(gè)TCP連接進(jìn)行加權(quán),并且能夠?qū)崿F(xiàn)與實(shí)施例1同樣的功能。產(chǎn)業(yè)上的可利用性本發(fā)明例如能夠利用于對(duì)終端間的通信進(jìn)行中繼的通信裝置。
權(quán)利要求
1.一種通信裝置,包括多個(gè)具有對(duì)TCP通信進(jìn)行中繼的TCP變換部的卡, 上述TCP變換部具有: 信息交換部,經(jīng)由自身TCP變換部在信息交換部與本身裝置內(nèi)的其他TCP變換部之間交換正在進(jìn)行數(shù)據(jù)發(fā)送的TCP連接數(shù)的信息;以及頻帶控制部,確定各TCP通信的最大發(fā)送頻帶, 上述信息交換部基于與其他TCP交換部進(jìn)行了交換的TCP連接數(shù)的信息,計(jì)算裝置整體中的正在進(jìn)行數(shù)據(jù)發(fā)送的TCP連接數(shù)的合計(jì)值, 上述頻帶控制部基于裝置整體中的正在進(jìn)行數(shù)據(jù)發(fā)送的TCP連接數(shù)的合計(jì)值,確定各TCP通信的最大發(fā)送頻帶。
2.按權(quán)利要求1所述的通信裝置,其特征在于, 上述TCP變換部還具 有: 狀態(tài)存儲(chǔ)區(qū)域,記錄處于連接狀態(tài)的線路的最大發(fā)送頻帶, 上述頻帶控制部基于所記錄的線路的最大發(fā)送頻帶、裝置整體中的正在進(jìn)行數(shù)據(jù)發(fā)送的TCP連接數(shù)的合計(jì)值,確定并限制各TCP通信中的最大發(fā)送頻帶。
3.按權(quán)利要求1所述的通信裝置,其特征在于, 上述TCP變換部從TCP通信的對(duì)向裝置接收該對(duì)向裝置中的正在進(jìn)行數(shù)據(jù)接收的TCP連接數(shù)的合計(jì)值, 上述頻帶控制部基于裝置整體的正在進(jìn)行數(shù)據(jù)發(fā)送的TCP連接數(shù)的合計(jì)值、從上述對(duì)向裝置接收到的對(duì)向裝置中的正在進(jìn)行數(shù)據(jù)接收的TCP連接數(shù)的合計(jì)值,限制各TCP通信的最大發(fā)送頻帶。
4.按權(quán)利要求3所述的通信裝置,其特征在于, 上述信息交換部, 在上述信息交換部與其他TCP變換部之間,交換正在進(jìn)行數(shù)據(jù)接收的TCP連接數(shù)的信息, 基于進(jìn)行了交換的TCP連接數(shù)的信息,計(jì)算裝置整體的正在進(jìn)行數(shù)據(jù)接收的TCP連接數(shù)的合計(jì)值, 將計(jì)算出的裝置整體的正在進(jìn)行數(shù)據(jù)接收的TCP連接數(shù)的合計(jì)值通知至上述對(duì)向裝置。
5.按權(quán)利要求3所述的通信裝置,其特征在于, 上述TCP變換部還具有: 狀態(tài)存儲(chǔ)區(qū)域,記錄處于與裝置連接狀態(tài)的線路的最大發(fā)送頻帶, 上述TCP變換部還從該對(duì)向裝置接收上述對(duì)向裝置中的線路的最大接收頻帶, 上述頻帶控制部基于記錄于本身裝置的線路的最大發(fā)送頻帶、本身裝置整體的正在進(jìn)行數(shù)據(jù)發(fā)送的TCP連接數(shù)的合計(jì)值、從上述對(duì)向裝置接收到的該對(duì)向裝置中的線路的最大接收頻帶、從上述對(duì)向裝置接收到的該對(duì)向裝置中的正在進(jìn)行數(shù)據(jù)接收的TCP連接數(shù)的合計(jì)值,限制各TCP通信的最大發(fā)送頻帶。
6.按權(quán)利要求5所述的通信裝置,其特征在于, 上述頻帶控制部基于記錄于本身裝置的線路的最大發(fā)送頻帶除以本身裝置整體的正在進(jìn)行數(shù)據(jù)發(fā)送的TCP連接數(shù)的合計(jì)值而得到的值、從上述對(duì)向裝置接收到的該對(duì)向裝置中的線路的最大接收頻帶除以從上述對(duì)向裝置接收到的該對(duì)向裝置中的正在進(jìn)行數(shù)據(jù)接收的TCP連接數(shù)的合計(jì)值而得到的值,限制各TCP通信的最大頻帶。
7.按權(quán)利要求5所述的通信裝置,其特征在于, 上述狀態(tài)存儲(chǔ)區(qū)域還記錄處于連接狀態(tài)的線路的最大接收頻帶, 上述信息交換部將所記錄的線路的最大接收頻帶和本身裝置整體的正在進(jìn)行數(shù)據(jù)接收的TCP連接數(shù)的合計(jì)值通知至上述對(duì)向裝置。
8.按權(quán)利要求1所述的通信裝置,其特征在于, 上述頻帶控制部還使用各TCP通信中的數(shù)據(jù)的再發(fā)送率,限制各TCP通信的最大發(fā)送頻帶。
9.按權(quán)利要求8所述的通信裝置,其特征在于, 上述頻帶控制部, 測(cè)量各TCP通信中的基準(zhǔn)時(shí)刻后的再發(fā)送頻帶和基準(zhǔn)時(shí)刻以前的發(fā)送頻帶, 用基準(zhǔn)時(shí)刻后的再發(fā)送頻帶和基準(zhǔn)時(shí)刻以前的發(fā)送頻帶進(jìn)行除法運(yùn)算,從而計(jì)算數(shù)據(jù)的再發(fā)送率。
10.按權(quán)利要求1所述的通信裝置,其特征在于, 上述頻帶控制部計(jì)算各TCP通信中的再發(fā)送率的變化率, 根據(jù)再發(fā)送率的變化率,變更各TCP通信的最大發(fā)送頻帶。
11.按權(quán)利要求10所述的通信裝置,其特征在于, 在再發(fā)送率的變化率超過了預(yù)先指定的閾值時(shí),上述頻帶控制部根據(jù)再發(fā)送率使各TCP通信的最大發(fā)送頻帶減少。
12.按權(quán)利要求10所述的通信裝置,其特征在于, 在再發(fā)送率的變化率超過了預(yù)先指定的閾值時(shí),上述頻帶控制部使各TCP通信的最大發(fā)送頻帶增加。
13.按權(quán)利要求1所述的通信裝置,其特征在于, 還包括:發(fā)送控制部,按照各TCP通信的最大發(fā)送頻帶發(fā)送數(shù)據(jù)。
14.按權(quán)利要求1所述的通信裝置,其特征在于, 對(duì)各TCP通信設(shè)定權(quán)重, 針對(duì)各個(gè)TCP連接,通過加上對(duì)應(yīng)的各權(quán)重來求出TCP連接數(shù)的合計(jì)值,并根據(jù)該權(quán)重確定最大發(fā)送頻帶。
全文摘要
在利用了TCP的通信中,在如WAN那樣的RTT較大并且跳數(shù)較大從而廢棄發(fā)生位置較多的環(huán)境下,防止發(fā)送頻帶大幅低于合同頻帶的。在從LAN向WAN的線路部分所設(shè)置的裝置,包括多個(gè)具有對(duì)兩個(gè)TCP通信進(jìn)行中繼的TCP變換部的卡。TCP變換部包括在裝置內(nèi)的TCP變換部間交換正在進(jìn)行數(shù)據(jù)發(fā)送的連接數(shù)和正在進(jìn)行數(shù)據(jù)接收的連接數(shù)的信息的單元、計(jì)算它們的合計(jì)數(shù)的單元、針對(duì)每個(gè)TCP連接從對(duì)向裝置接收對(duì)向裝置中的正在進(jìn)行數(shù)據(jù)接收的連接數(shù)的合計(jì)數(shù)和與WAN的訪問線路頻帶的信息的單元、基于數(shù)據(jù)的再發(fā)送率、自身裝置的正在進(jìn)行數(shù)據(jù)發(fā)送的連接數(shù)的合計(jì)數(shù)和對(duì)WAN的訪問線路頻帶、從對(duì)向裝置通知來的正在進(jìn)行數(shù)據(jù)接收的連接數(shù)的合計(jì)數(shù)和對(duì)WAN的訪問線路頻帶來確定控制頻帶的單元。
文檔編號(hào)H04L12/801GK103098422SQ201280002708
公開日2013年5月8日 申請(qǐng)日期2012年3月1日 優(yōu)先權(quán)日2011年7月26日
發(fā)明者磯部隆史 申請(qǐng)人:株式會(huì)社日立制作所