JPH10200598A - 通信装置 - Google Patents
通信装置Info
- Publication number
- JPH10200598A JPH10200598A JP236597A JP236597A JPH10200598A JP H10200598 A JPH10200598 A JP H10200598A JP 236597 A JP236597 A JP 236597A JP 236597 A JP236597 A JP 236597A JP H10200598 A JPH10200598 A JP H10200598A
- Authority
- JP
- Japan
- Prior art keywords
- tcp
- network
- protocol data
- transport layer
- data unit
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/27—Evaluation or update of window size, e.g. using information derived from acknowledged [ACK] packets
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/36—Flow control; Congestion control by determining packet size, e.g. maximum transfer unit [MTU]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
Abstract
実装を変更することなく、該端末を非対称な通信路に接
続した場合にTCPのスループットを向上させることが
できる通信装置の提供。 【解決手段】 通信装置100を介して端末111等か
ら端末121等に対し、TCPによって送信するデータ
は、通信装置100によって横取りされて(TCP層の
引き上げられて)、一旦元のデータに組み立てられ、更
に1つのTCPセグメントが複数のIPデータグラムに
フラグメントされるようにTCPセグメントのサイズを
変換した後、端末121等に対して送信される。
Description
を含む通信プロトコルを使用する通信装置に関する。
層を含む通信プロトコルである。従来のTCP/IPネ
ットワークの構成例を図10に示す。
ク610に属する端末131、132とこれとは異なる
ネットワーク620に属する端末141、142、14
3とが相互に通信するために、ネットワーク610とネ
ットワーク620とをIPルータ150により接続して
いる。IPルータ150は、IPアドレスa.a.a.
1またはa.a.b.1のインタフェースからIPデー
タグラムを受信し、該IPデータグラムのIPヘッダの
送信先IPアドレスをキーとしてルーティングテーブル
を引き、出力すべき適切なインタフェースにIPデータ
グラムを出力する。例えば、IPアドレスa.a.a.
2の端末131からIPアドレスa.a.b.2の端末
141に送信されたIPデータグラムは、IPルータ1
50のa.a.a.1インタフェースで受信され、a.
a.b.1インタフェースに出力され、端末141に達
する。
マルチメディアサービスでは、データをサーバ端末から
クライアント端末にダウンロードするものが多い点に着
目して、最近では端末への入力の帯域幅が端末からの出
力の帯域幅に比べて極めて広い、非対称なアクセスネッ
トワークが開発されている。
ネットワークでは、推奨されているTCPの実装方式に
おいて「2つのTCPセグメントに対して1つのack
を返す」というアルゴリズムがあることから、サーバか
らクライアント方向へのTCPのスループットを低下さ
せることがある。なぜならば、サーバからクライアント
方向への帯域幅は、 (クライアント→サーバ方向帯域幅)×(2×最大セグ
メントサイズ)/ackサイズ を上回ることができないからである。
1つのackを返すというアルゴリズムを変更し、n個
のTCPセグメント(n>2)に対して1つのackを
返すようにして、ackの数を減らせばスループットは
向上するが、これでは推奨されたTCPの実装方式を破
ることになり、しかも全ての端末のTCPの実装を変更
することは困難である。
トランスポート層プロトコルデータユニット、IPデー
タグラムはネットワーク層プロトコルデータユニットと
呼ばれる。
課題を解決するためになされたもので、TCPの標準的
な実装をもつ端末のTCPの実装を変更することなく、
該端末を非対称な通信路に接続した場合にTCPのスル
ープットを向上させることができる通信装置を提供する
ことを目的とする。
め、請求項1記載の本発明は、少なくともトランスポー
ト層を持つ通信プロトコルにより通信を行う通信装置で
あって、第1のネットワークから第1のトランスポート
層プロトコルデータユニット(PDU)を入力する第1
のインタフェース手段と、前記第1のトランスポート層
プロトコルデータユニットを、このトランスポート層プ
ロトコルデータユニットに含まれたデータを含みかつ第
1のトランスポート層とは異なるプロトコルデータユニ
ットサイズの第2のトランスポート層に変換する変換手
段と、前記第2のトランスポート層プロトコルデータユ
ニットを第2のネットワークへ出力する第2のインタフ
ェース手段とを具備する。
ンスポート層を持つ通信プロトコルにより通信を行う通
信装置であって、第1のネットワークへトランスポート
層プロトコルデータユニットを出力する第1のインタフ
ェース手段と、第2のネットワークへトランスポート層
プロトコルデータユニットを出力する第2のインタフェ
ース手段と、前記第1のインタフェース手段より複数の
ネットワーク層プロトコルデータユニットに分割されな
いプロトコルデータユニットサイズのトランスポート層
プロトコルデータユニットを出力し、前記第2のインタ
フェース手段より複数のネットワーク層プロトコルデー
タユニットに分割されたプロトコルデータユニットサイ
ズのトランスポート層プロトコルデータユニットを出力
することを許容する手段とを具備する。
記載の通信装置であって、前記第2のインターフェース
手段が、出力の帯域幅が入力の帯域幅よりも大きい非対
称性をもつことを特徴とする。
スポート層を持つ通信プロトコルにより通信を行う通信
装置であって、第1のネットワークから第1のトランス
ポート層プロトコルデータユニットを入力する第1のイ
ンタフェース手段と、前記第1のネットワークにネット
ワーク層ルータを介して接続され、かつ第1のネットワ
ークから第2のネットワーク方向の帯域が逆方向よりも
大きい非対称性を持つ第2のネットワークと、前記イン
タフェース手段から第1のネットワークと第2のネット
ワークを経由するトランスポート層プロトコルデータユ
ニットを出力する場合、前記第2のネットワークにおい
て複数のネットワーク層プロトコルデータユニットに分
割されるプロトコルデータユニットサイズのトランスポ
ート層プロトコルデータユニットを出力する手段とを具
備する。
ずれかに記載の通信装置であって、複数のネットワーク
層プロトコルデータユニットに分割されるプロトコルデ
ータユニットサイズのトランスポート層プロトコルデー
タユニットを出力することを許容するか否かを、該トラ
ンスポート層プロトコルデータユニットを受信する端末
の属性に基づき決定することを特徴とする。
トワークでは、サーバからクライアント方向の広帯域側
の帯域が使い尽くされる前に、狭帯域側の帯域をack
が圧迫する。これに対して、本発明では、例えば第2の
インターフェースから出力される第2のTCPセグメン
トの長さを長くなるようにすれば、同じ全体の送信デー
タのサイズに対するackが減少し、サーバからクライ
アントへのスループットが向上する。
て、帯域幅は、 (クライアント→サーバ方向帯域幅)×(n×最大セグ
メントサイズ)/ackサイズ によって制限されるが、本発明により最大セグメントサ
イズ(第2のTCPセグメントの長さ)が大きく制御さ
れるので、この制限を取り除くことができる。
非対称通信路においては例えば複数のIPフラグメント
に分割されるほど大きくなるようにTCPセグメントサ
イズを制御することが可能となるため、同じサイズのバ
ルクデータをサーバ端末からクライアント端末に送るた
めのTCPセグメントの数を減らすことができ、この結
果TCPセグメントに対するackが減るのである。a
ckが減少するのは、通常のTCPの実装では、TCP
セグメントが失われずに順調に流れ(重複ackが発生
しない)、かつクライアント端末のアプリケーシヨンが
十分に速くデータを読み続ける(閉じた受信ウィンドウ
が大きく開いたことを示すackが送信されない)限
り、1つのTCPセグメントに複数のackが返される
ことはない、という性質を利用している。
のTCPプロトコルの実装の変更を要求しない。よっ
て、非対称な伝送路を持つネットワークの設備として、
本発明の通信装置を導入すればその効果は絶大である。
実施形態を詳細に説明する。
の構成を示す。
0、201と、TCP最大セグメントサイズ制御部30
1、TCP入力部303、TCP出力部304及びTC
Pセグメントサイズ変換部302を含むTCP中継部3
05を備えたTCP層300と、IP中継部401、I
P入力部402及びIP出力部403を備えたIP層4
00、IF入力部501及びIF出力部502を備えて
IPアドレスa.a.a.1を持つIF部500と、I
F入力部511及びIF出力部512を備えてIPアド
レスa.a.b.1を持つIF部510とを備える。
幅が等しい対称な伝送路(後述のネットワーク610)
に接続され、IF部510は出力側の帯域幅が入力側の
帯域幅よりも大きな非対称伝送路(後述のネットワーク
620)に接続される。
データの流れを示し、破線の矢印は制御の流れを示す。
分は図示を省略している。
ワーク構成図を示す。
11、IPアドレスa.a.a.3を持つ端末112は
入出力対称な伝送路を持つネットワーク610に接続さ
れている。
21、IPアドレスa.a.b.3を持つ端末122、
IPアドレスa.a.b.4を持つ端末123は非対称
な伝送路を持つネットワーク620に接続されている。
但し、各端末121、122、123は、通信装置10
0の場合と異なり、入力側の帯域幅が出力側の帯域幅よ
りも大きい。
異なる。
装置(ホスト)宛のIPデータグラム(ここでは送信先
アドレスがa.a.a.1またはa.a.b.1のも
の)を上位層(TCP層)に上げ、それ以外をIP中継
部401に渡す。しかし、本発明に係るIP入力部40
2はIPデータグラムの送信先アドレスが定められたネ
ットワーク(ここではネットワーク620)に属する端
末のアドレス(端末121、122及び123のIPア
ドレスa.a.b.2、a.a.b.3、a.a.b.
4)であり、かつプロトコルがTCPである場合は、該
IPデータグラムをTCP部400に送る。以下、この
IPデータグラムを「TCP中継対象IPデータグラ
ム」と呼ぶ。但し、IPデータグラムの送信先アドレス
が予め登録されたネットワークまたはホストアドレスで
あっても、プロトコルがTCP以外である場合はIP中
継部401に該IPデータグラムを渡す。
点で異なる。
はTCPセグメントから取り出したデータを送信先ポー
ト番号に対応するアプリケーション200、201に送
る。しかし、本発明に係るTCP入力部303は、IP
入力部402から送られてきたTCPセグメントにTC
P中継対象IPデータグラムが含まれていた場合には、
このTPCセグメントから取り出したデータをTCP中
継部305に送る。
Pのコネクションを確立する際には、TCP最大セグメ
ント制御部301は自側のTCP最大セグメントサイズ
(mss:Maximum Segment Siz
e)と相手側のTCP mssとの小さい方を、該TC
Pコネクションのmssとしている。ここで、自側のm
ssはそのコネクションが経由するIF部の最大転送ユ
ニットサイズ(MTU:Maximum Transf
er Unit)からTCPとIPのヘッダサイズを差
し引いた値を元に決める(実装上の最適化により若干異
なる)。相手側のmssは相手の出すSYNメッセージ
のオプションからわかる。しかし、本発明に係るTCP
最大セグメントサイズ制御部301は、TCPコネクシ
ョンを終端するいずれか一方の端末のIPアドレスが定
められたネットワーク(ここではネットワーク620)
に属する端末のアドレス(端末121、122及び12
3のIPアドレスa.a.b.2、a.a.b.3、
a.a.b.4)である場合(前述のTCP中継対象I
Pデータグラムは通信装置100のIPアドレスa.
a.a.1とa.a.b.1を含まないが、ここでは含
んでいても良い)、該端末に対向する側のIF部510
にフラグメントされたIPデータグラムが流れるよう
に、該IF部のMTUからTCPとIPのヘッダの大き
さを差し引いた大きさよりも大きな値を当該TCPコネ
クションのmssとする。通信装置100において、2
つのTCPコネクションを接続して元来のTCPコネク
ションを中継する場合は、2つのTCPコネクションの
内、定められたネットワークに属する端末側のTCPコ
ネクションの値をmssとする。
伝えられる。
100が直接接続されず、1つ以上のルータを介して登
録されたネットワークに接続される場合には、例えば通
信装置とネットワーク620との間に別のネットワーク
とルータが介在するような場合には、登録されたネット
ワークより手前のルータのいずれかでフラグメントが行
われるようなmssとする。
メッセージの発信元と送信先のIPアドレスが、通信装
置100のIPアドレスに対応しない場合は、当該TC
Pコネクションを通信装置100で中継する。このた
め、TCP最大セグメント制御部301は、TCPセグ
メントサイズ変換部302のしきい値をmss以上の値
に設定する。
TCP入力部303から受け取ったバッファ内のデータ
がしきい値を越えると、TCP出力部304にデータを
送る。TCPセグメントサイズ変換部302が確保する
バッフアのサイズは、定められたネットワーク(ここで
はネットワーク620)に属する端末(端末121.1
22、及び123)側の受信ウィンドウサイズを元(受
信ウインドウサイズの数倍程度)に決める。
メントサイズ変換部302の他に、中継すべきTCPコ
ネクションの一方から受け取ったSYNメッセージ、F
INメッセージ等を他方に中継する。
304によって実現されるTCP再送部の再送アルゴリ
ズムは、以下の点で通常のTCP再送アルゴリズムと異
なる。 TCP入力部303は、重複ack、例えば既
にackされたシーケンス番号を持ち、受信ウィンドウ
サイズが直前のackと同じ値であるヘッダだけのTC
P ackを1つ受信すると、直ちに該シーケンス番号
を持つTCPセグメントを送信するようにTCP出力部
304に要求する。
ackに対する再送を行った後に受信するTCP ac
kのシーケンス番号が、既に送信済みのシーケンス番号
を持つ場合、直ちに該シーケンス番号を持つTCPセグ
メントを送信するようにTCP出力部304に要求し、
この後送信済みでないシーケンス番号を持つTCPac
kを受信するまでの間、連続的に受信する送信済みのシ
ーケンス番号を持つTCP ackに対し該シーケンス
番号を持つTCPセグメントを直ちに再送するようにT
CP出力部304に要求する。
アプリケーション200または201が、図3に示すよ
うに、定められた端末121、122または123に対
し、TCPによって送るデータは、1つのTCPセグメ
ントが複数のIPデータグラムにフラグメントとされた
形になる。
より、端末111または112から定められた端末12
1、122または123に対し、TCPによって送信す
るデータは、通信装置100によって横取りされて(T
CP層の引き上げられて)、一旦元のデータに組み立て
られ、更に1つのTCPセグメントが複数のIPデータ
グラムにフラグメントされるようにTCPセグメントの
サイズを変換した後、端末121、122または123
に対して送信される。
ットワーク(ネットワーク620等)に属する場合で
も、該端末がここで提供される通常のTCP/IPへの
追加機能の適用を拒否した場合は、通信装置100は該
TCPコネクションに対しては、拡張のない通常のTC
P/IP通信装置として動作する。例えば定められたネ
ットワーク内の端末からのSYNメッセージのTCPオ
プションに拒否を要求する情報を追加することができ
る。
0の動作を図5〜図7に基づき説明する。
を示し、縦方向の長さはセグメントを送るために必要な
時間を示す。帯域幅が一定でセグメントサイズが大きく
なれば傾きは大きくなり、セグメントサイズが一定で帯
域幅が広くなれば傾きは小さくなる。
継装置からサーバ端末、及びTCP中継装置からクライ
アント端末の方向は同じ帯域幅を持つが、クライアント
端末からTCP中継装置方向への帯域幅は、前記の3つ
よりも狭い。つまり、この例は、ネットワーク610に
属するサーバ端末(端末111または112)から通信
装置100を経由して、クライアント端末(端末12
1、122または123)に大きなデータを転送するも
のである。
て、シーケンス番号=992、クライアント端末側ms
s=1000、受信ウィンドウサイズ=16000とい
う情報を含むSYNメッセージ[1]を送る。TCP中
継装置のIP入力部402はTCP中継対象IPデータ
グラムとして、通常はIP層で中継されるIPデータグ
ラムを横取りして、TCP層に上げる。
は、TCP中継装置のIPアドレスをa.a.b.1と
し、クライアント端末間に設定されるTCPコネクショ
ンのmssを予め定められた4000とし、TCP出力
制御部304に伝える。
301は、TCPセグメントサイズ変換部302のしき
い値を4000に設定する。
02は、受信ウィンドウサイズの数倍、例えば3倍のサ
イズである48000のバッフアを確保する。
[1]をSYNメッセージ[2]として中継する。
ドレスa.a.a.1で終端される通常のTCPコネク
ションの場合と同じ方法で定めれば良く、一般にはSY
Nメッセージ[1]の値と一致しない。また、受信ウィ
ンドウサイズも必ずしも一致させる必要はない。バッフ
アは48000確保してあるのでこれを受信ウィンドウ
サイズにできるが、受信ウィンドウサイズをあまりに大
きくすると、かえってTCPの性能を落とす場合がある
ので、ここでは受信ウィンドウサイズを16000とし
てある。
な例がack[81]、[84]に示されている。
SYNメッセージ[3]をSYNメッセージ[4]とし
てクライアント端末に中継する。SYNメッセージ
[4]のmssは、クライアント端末が送るTCPセグ
メントの大きさを決める元になるデータである。このm
ssは、TCP中継装置が送るTCPセグメントサイズ
とは無関係にできるので、TCP最大セグメントサイズ
制御部402が定めたmssである必要はなく、ここで
はIPアドレスa.a.b.1のIF部510のMTU
サイズから決めた値を用いている。この際に、クライア
ント端末からサーバ端末方向へのバッファの確保等も行
う。
[5]によって、「get data」というコマンド
をサーバ端末に送る。すると、クライアント端末からサ
ーバ端末へのデータは、TCP中継装置によって直ちに
サーバ端末にTCPセグメント[6]として送られる。
ータの一部をTCPセグメント[7]、[9]、[1
0]、[12]としてクライアント端末に送る。
わちTCP層に引き上げつつ、ack[8]、[11]
を返す一方で、送られたデータをTCPセグメントサィ
ズ変換部302のバッファに溜める。
ッファの残り容量が32000を割らない限り、160
00に固定する。
点でTCPセグメントサイズ変換部302のしきい値に
達するので、TCPセグメントサイズ変換部302は、
バッファ内のデータを送信するようにTCP出力部30
4に要求する。TCP出力部304は送られたデータが
mssに達しているため、直ちにこれを1つのTCPセ
グメント[13]として送る。このTCPセグメント
[13]はIP出力部403によって、4つのIPデー
タグラムにフラグメントとされて(図4参照)、クライ
アント端末に達する。
の受信によって、再びTCPセグメントサイズ変換部3
02のしきい値に達するので、TCPセグメントサイズ
変換部302は、バッファ内のデータを送信するように
TCP出力部304に要求するが、既知のTCPのスロ
ースタートアルゴリズムによって決められる輻輳ウィン
ドウの制限(この時点で4000)により、TCP出力
機能304はack[20]を受信すると輻輳ウィンド
ウサイズは8000となるので、TCP出力部304は
2つのTCPセグメント[35]、[42]をクライア
ント端末に送信する。
グメントを受信する度に1つのackを返す。これはT
CPで推奨されている実装である。このアルゴリズムに
従うクライアン卜端末に対しては、TCPセグメントサ
イズが大きくすれば、同じデータ量を送信する際のac
kの数が減少することは明らかである。クライアント端
末が1つのTCPセグメントに対して1つのackを返
す場合もあるが(図示せず)、やはリTCPセグメント
サイズを十分に大きくすれば、ackの数は減少する。
通常のTCPの実装では、TCPセグメントが失われず
に順調に流れ(重複ackが発生しない)、かつクライ
アント端末のアプリケーションが十分に速くデータを読
み続ける(閉じた受信ウィンドウが大きく開いたことを
示すackが送信されない)限り、1つのTCPセグメ
ントに複数のackが返されることはない。
シーケンスを示す。
ージを重畳したTCPセグメント[4]を送信する。T
CP中継装置のack[5]により、サーバ端末からT
CP中継装置方向のTCPコネクションは切断される。
変更部302のバッフアが空になるまでクライアント端
末にデータの送信(TCPセグメント[7]、[8]、
[9]、[10])し続ける。バッフアのデータはしき
い値を越えていないが、FINがあるため、それを最後
のデータとして、FINメッセージを重畳させたTCP
セグメーント[11]を送る。
イアント端末方向のTCPコネクションが閉じる。クラ
イアント端末のアプリケーションの要求でFINメッセ
ージ[13]が送られ、これに対するack[14]で
クライアント端末からTCP中継装置方向へのTCPコ
ネクションが閉じる。これによつて、TCP中継装置か
らサーバ端末方向へのこれ以上のデータの流れが無いこ
とが保証されるので、TCP中継装置はFINメッセー
ジ[15]をサーバ端末に送り、これに対するack
[16]により、最後に残ったTCP中継装置からサー
バ端末方向へのTCPコネクションも閉じられる。
体がサーバ端末として、クライアント端末(端末12
1、122または123)と通信する場合の動作を説明
する。TCPコネクションの設定と開放及びTCPセグ
メントが失われない順調な場合のバルクデータの流れに
関しては、上述した動作例から中継に関する部分を除い
たものにほぼ等しいので省略する。ここでは、TCPセ
グメントが失われた場合の再送制御に重点をおいて説明
する。
に対して、ウィンドウが十分に開いた初期状態(この例
では16000)で、あるTCPセグメント[4]が失
われた場合を示す。
れる18001と異なるシーケンス番号を持つため、ク
ライアント端末は通常のack[7]と重複ack
[8]を返す。
くしているために、ウィンドウサイズが比較的大きな割
りに、重複ackの数が少なく、高速再送(Fast
Retransmission)が行われない。標準的
なTCPの実装では、IPデータグラムの順序が変わり
得ることを考慮して、重複ackが3になった時にはじ
めて、サーバ端末が高速再送を行うようにしきい値を設
定している。
と、TCPセグメントサイズを大きくしているためウィ
ンドウサイズの割りに重複ackが少なくなり、高速再
送ではなくタイムアウトによる再送となる確率が高く、
スループットが下がるという欠点が現れる。
ットワークに多い点を考慮すると、通信装置100とク
ライアント端末はルータを介さずに接続されているか、
ルータの段数が少なく経路がほぼ固定されるので、IP
データグラムの順序が狂うことはほとんど考慮する必要
がない。従つて、高速再送のしき値を重複ack1つに
設定することができる。TCPセグメント[9]の再送
はこの条件を満たしたために行われる。重複ackを2
にしても、重複ackを1にした場合よりは劣るがある
程度の改善は望める。
セグメント[2]、[5]が失われた場合を示す。重複
ack[6]によりTCPセグメント[8]が高速再送
されるが、通常の高速再送アルゴリズムでは、TCPセ
グメント[5]は再送されない。ウィンドウ内で複数の
TCPセグメントが失われるのは、通常はネットワーク
が輻輳していることを示唆し、このTCPセグメントを
再送しないことは輻輳状態からネットワークを回復させ
るために役立つ。
線である場合も多く、この場合のバースト的なTCPセ
グメントの喪失は輻輳を意味しているわけではない。
るために、高速再送したTCPセグメント(このでは
[8]に対すると解釈できる。)ack(ここでは[1
0])が、そのTCPセグメントを再送した時点で既に
送信済みのシーケンス番号をackしていれば、直ちに
該TCPセグメント(ここでは[11])を再送する。
なお、この再送についても送信済みのシーケンス番号の
ackが返って来れば、同様に再送を行う。
直接的でなくルータ124を介して間接的に非対称性を
持つネットワーク630に接続されている場合の動作を
説明する。
の伝送路の帯域はネットワーク620と異なり対称であ
り、端末123はルータ124に置き換えられ、端末1
31が追加され、更にルータ124から端末131方向
への帯域幅が端末131からルータ124方向への帯域
幅よりも広いという非対称な伝送路を持つネットワーク
630が追加されている。
し、端末131をクライアントとするとき、通信装置1
00は、サーバからクライアント方向へのTCPセグメ
ントをネットワーク630において複数のIPデータグ
ラムにフラグメントされるようにTCPセグメントサイ
ズを制御する。具体的な詳細は既に述べたものとほとん
ど同じであるから省略する。
バとした場合、出力されるIPデータグラムを一旦通信
装置100を経由してからルータ124によってネット
ワーク630に中継されるようにルーティングの設定を
行えば、やはり同様に動作する。
TCPの標準的な実装をもつ端末のTCPの実装を変更
することなく、該端末を非対称な通信路に接続した場合
にTCPのスループットを向上させることができる。
ある。
図である。
データ形式の模式図である。
模式図である。
P中継時のシーケンス図である。
グメント再送時のシーケンス図である。
グメント再送時のシーケンス図である。
構成図である。
Claims (5)
- 【請求項1】 少なくともトランスポート層を持つ通信
プロトコルにより通信を行う通信装置であって、 第1のネットワークから第1のトランスポート層プロト
コルデータユニットを入力する第1のインタフェース手
段と、 前記第1のトランスポート層プロトコルデータユニット
を、このトランスポート層プロトコルデータユニットに
含まれたデータを含みかつ第1のトランスポート層とは
異なるプロトコルデータユニットサイズの第2のトラン
スポート層に変換する変換手段と、 前記第2のトランスポート層プロトコルデータユニット
を第2のネットワークへ出力する第2のインタフェース
手段とを具備することを特徴とする通信装置。 - 【請求項2】 少なくともトランスポート層を持つ通信
プロトコルにより通信を行う通信装置であって、 第1のネットワークへトランスポート層プロトコルデー
タユニットを出力する第1のインタフェース手段と、 第2のネットワークへトランスポート層プロトコルデー
タユニットを出力する第2のインタフェース手段と、 前記第1のインタフェース手段より複数のネットワーク
層プロトコルデータユニットに分割されないプロトコル
データユニットサイズのトランスポート層プロトコルデ
ータユニットを出力し、前記第2のインタフェース手段
より複数のネットワーク層プロトコルデータユニットに
分割されたプロトコルデータユニットサイズのトランス
ポート層プロトコルデータユニットを出力することを許
容する手段とを具備することを特徴とする通信装置。 - 【請求項3】 請求項1または2記載の通信装置であっ
て、 前記第2のインターフェース手段が、出力の帯域幅が入
力の帯域幅よりも大きい非対称性をもつことを特徴とす
る通信装置。 - 【請求項4】 少なくともトランスポート層を持つ通信
プロトコルにより通信を行う通信装置であって、 第1のネットワークから第1のトランスポート層プロト
コルデータユニットを入力する第1のインタフェース手
段と、 前記第1のネットワークにネットワーク層ルータを介し
て接続され、かつ第1のネットワークから第2のネット
ワーク方向の帯域が逆方向よりも大きい非対称性を持つ
第2のネットワークと、 前記インタフェース手段から第1のネットワークと第2
のネットワークを経由するトランスポート層プロトコル
データユニットを出力する場合、前記第2のネットワー
クにおいて複数のネットワーク層プロトコルデータユニ
ットに分割されるプロトコルデータユニットサイズのト
ランスポート層プロトコルデータユニットを出力する手
段とを具備することを特徴とする通信装置。 - 【請求項5】 請求項2〜4のいずれかに記載の通信装
置であって、 複数のネットワーク層プロトコルデータユニットに分割
されるプロトコルデータユニットサイズのトランスポー
ト層プロトコルデータユニットを出力することを許容す
るか否かを、該トランスポート層プロトコルデータユニ
ットを受信する端末の属性に基づき決定することを特徴
とする通信装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP00236597A JP3482091B2 (ja) | 1997-01-09 | 1997-01-09 | 通信装置 |
US08/999,330 US6091733A (en) | 1997-01-09 | 1997-12-29 | Communication device using communication protocol including transport layer and communication method using communication protocol including transport layer |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP00236597A JP3482091B2 (ja) | 1997-01-09 | 1997-01-09 | 通信装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH10200598A true JPH10200598A (ja) | 1998-07-31 |
JP3482091B2 JP3482091B2 (ja) | 2003-12-22 |
Family
ID=11527243
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP00236597A Expired - Fee Related JP3482091B2 (ja) | 1997-01-09 | 1997-01-09 | 通信装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US6091733A (ja) |
JP (1) | JP3482091B2 (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1116122A1 (en) * | 1998-08-28 | 2001-07-18 | Intel Corporation | Method and apparatus for transmitting and receiving network protocol compliant signal packets over a platform bus |
JP2003087320A (ja) * | 2001-09-06 | 2003-03-20 | Kddi Corp | パケット中継装置、及びその方法 |
JP2008518531A (ja) * | 2004-10-29 | 2008-05-29 | 株式会社エヌ・ティ・ティ・ドコモ | 異なるプロトコル実装間の切替えを行う方法および装置 |
KR100909536B1 (ko) * | 2001-08-15 | 2009-07-27 | 삼성전자주식회사 | 지능형 인터넷 프로토콜 패킷 릴레이 장치 및 방법 |
JP2010034644A (ja) * | 2008-07-25 | 2010-02-12 | Kyocera Corp | 中継装置およびバッファ量制御方法 |
JP2012048573A (ja) * | 2010-08-27 | 2012-03-08 | Canon Inc | 半導体集積回路、データ処理装置 |
Families Citing this family (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11163947A (ja) * | 1997-09-22 | 1999-06-18 | Toshiba Corp | ゲートウェイ装置、無線端末装置、ルータ装置および通信ネットワークのゲートウェイ制御方法 |
JP3620010B2 (ja) * | 1998-05-22 | 2005-02-16 | 富士通株式会社 | 無線通信システムで用いられる装置とプログラム記録媒体 |
US6295561B1 (en) * | 1998-06-30 | 2001-09-25 | At&T Corp | System for translating native data structures and specific message structures by using template represented data structures on communication media and host machines |
JP3602972B2 (ja) * | 1998-07-28 | 2004-12-15 | 富士通株式会社 | 通信性能測定装置及びその測定方法 |
US6327626B1 (en) * | 1998-09-15 | 2001-12-04 | Alteon Networks, Inc. | Method and apparatus for MSS spoofing |
US6587431B1 (en) * | 1998-12-18 | 2003-07-01 | Nortel Networks Limited | Supertrunking for packet switching |
US6453357B1 (en) * | 1999-01-07 | 2002-09-17 | Cisco Technology, Inc. | Method and system for processing fragments and their out-of-order delivery during address translation |
US7009967B1 (en) | 1999-08-07 | 2006-03-07 | Shrikumar Hariharasubrahmanian | Systems and methods for transmitting data packets |
AU6758000A (en) * | 1999-08-07 | 2001-09-17 | Shrikumar Hariharasubrahmanian | Virtual memory systems and methods |
JP2001142845A (ja) * | 1999-11-17 | 2001-05-25 | Toshiba Corp | コンピュータシステムおよびデータ転送制御方法 |
US6778523B1 (en) * | 2000-01-12 | 2004-08-17 | Kent Ridge Digital Labs | Connectionless oriented communications network |
JP3730480B2 (ja) * | 2000-05-23 | 2006-01-05 | 株式会社東芝 | ゲートウェイ装置 |
JP3814185B2 (ja) * | 2000-11-13 | 2006-08-23 | 松下電器産業株式会社 | 基地局装置、移動通信端末装置、及びそれらを用いた無線アクセスシステム |
US20020124095A1 (en) * | 2001-03-02 | 2002-09-05 | Sultan Israel Daniel | Apparatus and method for sending point-to-point protocol over ethernet |
US7362707B2 (en) * | 2001-07-23 | 2008-04-22 | Acme Packet, Inc. | System and method for determining flow quality statistics for real-time transport protocol data flows |
US7774492B2 (en) * | 2001-07-26 | 2010-08-10 | Citrix Systems, Inc. | System, method and computer program product to maximize server throughput while avoiding server overload by controlling the rate of establishing server-side net work connections |
US20030045798A1 (en) * | 2001-09-04 | 2003-03-06 | Richard Hular | Multisensor probe for tissue identification |
US7281052B2 (en) | 2001-12-14 | 2007-10-09 | International Business Machines Corporation | Data tracing identifiers |
JP4362261B2 (ja) * | 2002-01-17 | 2009-11-11 | 日本電気通信システム株式会社 | 音声符号制御方法 |
US6781990B1 (en) | 2002-02-11 | 2004-08-24 | Extreme Networks | Method and system for managing traffic in a packet network environment |
US7152124B1 (en) | 2002-02-11 | 2006-12-19 | Extreme Networks | Method and system for maintaining temporal consistency of resources and data in a multiple-processor packet switch |
US7584262B1 (en) | 2002-02-11 | 2009-09-01 | Extreme Networks | Method of and system for allocating resources to resource requests based on application of persistence policies |
US7298746B1 (en) | 2002-02-11 | 2007-11-20 | Extreme Networks | Method and system for reassembling and parsing packets in a network environment |
US7321926B1 (en) | 2002-02-11 | 2008-01-22 | Extreme Networks | Method of and system for allocating resources to resource requests |
US7447777B1 (en) | 2002-02-11 | 2008-11-04 | Extreme Networks | Switching system |
US7814204B1 (en) | 2002-02-11 | 2010-10-12 | Extreme Networks, Inc. | Method of and system for analyzing the content of resource requests |
US7286546B2 (en) | 2002-07-31 | 2007-10-23 | Infosys Technologies Ltd. | Method and system for providing reliable and fast communications with mobile entities |
GB2406245B (en) * | 2003-09-17 | 2006-01-04 | Siemens Ag | A method of transmitting packet data on a network |
US20050071510A1 (en) * | 2003-09-29 | 2005-03-31 | Nokia Corporation | Transport layer communication |
JP2005167353A (ja) * | 2003-11-28 | 2005-06-23 | Ntt Docomo Inc | 送信装置およびプログラム |
DE102004036488A1 (de) * | 2004-07-28 | 2006-03-23 | Siemens Ag | Verfahren, Vorrichtung und System zur adaptiven Optimierung von Transportprotokollen bei der Übertragung von Bildern |
US20060114931A1 (en) * | 2004-11-30 | 2006-06-01 | Yokogawa Electric Corporation | IPv6/IPv4 packet conversion system |
JP4785551B2 (ja) * | 2005-03-07 | 2011-10-05 | キヤノン株式会社 | 通信装置及び通信方法並びにコンピュータにより実行可能なプログラム |
JP4407556B2 (ja) * | 2005-03-29 | 2010-02-03 | 日本電気株式会社 | セッション中継装置、セッション中継方法およびプログラム |
US8352728B2 (en) * | 2006-08-21 | 2013-01-08 | Citrix Systems, Inc. | Systems and methods for bulk encryption and decryption of transmitted data |
EP2009867A1 (en) * | 2007-06-28 | 2008-12-31 | Alcatel Lucent | Access node with TCP traffic termination |
JP2013535131A (ja) * | 2010-06-09 | 2013-09-09 | プラヴァラ インコーポレイテッド | 複数の異なるネットワークを介したデータの伝送 |
JP5976277B2 (ja) * | 2011-02-23 | 2016-08-23 | 富士通株式会社 | 伝送制御方法 |
TWI602064B (zh) | 2016-11-23 | 2017-10-11 | 財團法人工業技術研究院 | 資料傳輸系統,以及其所使用的拓樸架構建立方法與拓樸架構修復方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5931961A (en) * | 1996-05-08 | 1999-08-03 | Apple Computer, Inc. | Discovery of acceptable packet size using ICMP echo |
-
1997
- 1997-01-09 JP JP00236597A patent/JP3482091B2/ja not_active Expired - Fee Related
- 1997-12-29 US US08/999,330 patent/US6091733A/en not_active Expired - Lifetime
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1116122A1 (en) * | 1998-08-28 | 2001-07-18 | Intel Corporation | Method and apparatus for transmitting and receiving network protocol compliant signal packets over a platform bus |
EP1116122A4 (en) * | 1998-08-28 | 2003-05-21 | Intel Corp | METHOD AND APPARATUS FOR TRANSMITTING AND RECEIVING PACKETS OF SIGNALS CONFORMING TO NETWORK PROTOCOL ON PLATFORM BUS |
KR100909536B1 (ko) * | 2001-08-15 | 2009-07-27 | 삼성전자주식회사 | 지능형 인터넷 프로토콜 패킷 릴레이 장치 및 방법 |
JP2003087320A (ja) * | 2001-09-06 | 2003-03-20 | Kddi Corp | パケット中継装置、及びその方法 |
JP2008518531A (ja) * | 2004-10-29 | 2008-05-29 | 株式会社エヌ・ティ・ティ・ドコモ | 異なるプロトコル実装間の切替えを行う方法および装置 |
JP4642855B2 (ja) * | 2004-10-29 | 2011-03-02 | 株式会社エヌ・ティ・ティ・ドコモ | 異なるプロトコル実装間の切替えを行う方法および装置 |
JP2010034644A (ja) * | 2008-07-25 | 2010-02-12 | Kyocera Corp | 中継装置およびバッファ量制御方法 |
JP2012048573A (ja) * | 2010-08-27 | 2012-03-08 | Canon Inc | 半導体集積回路、データ処理装置 |
Also Published As
Publication number | Publication date |
---|---|
US6091733A (en) | 2000-07-18 |
JP3482091B2 (ja) | 2003-12-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH10200598A (ja) | 通信装置 | |
US6341129B1 (en) | TCP resegmentation | |
US6907042B1 (en) | Packet processing device | |
JP5544430B2 (ja) | 通信装置および通信システム | |
US5519699A (en) | Method of protocol termination and a packet data communication system applied the method | |
JP3448481B2 (ja) | 非対称回線用tcp通信高速化装置 | |
EP0912028B1 (en) | Mechanism for dispatching packets via a telecommunications network | |
JP4164365B2 (ja) | デュアル・プロキシ装置を設けることによる無線インタフェースを介するtcp性能の改良技術 | |
US6426944B1 (en) | Method and apparatus for controlling data messages across a fast packet network | |
US20040192312A1 (en) | Communication system for voice and data with wireless TCP server | |
EP1343267A2 (en) | Data transmission confirmation in a wireless communication system | |
US7676593B2 (en) | Method of bandwidth control by rewriting ACK number | |
EP2632102A1 (en) | Method and device for data transmission | |
EP1393497B1 (en) | Dual mode service platform within network communication system | |
EP1295428A2 (en) | Performance enhancement of transmission control protocol (tcp) for wireless network applications | |
US20050120140A1 (en) | Method of and system for multi-patch communication | |
CN100407698C (zh) | 无线链路控制层的数据传输方法 | |
JP4229807B2 (ja) | データ転送方法とtcpプロキシ装置およびそれを用いたネットワークシステム | |
US7490160B2 (en) | Method of efficiently transmitting/receiving data using transport layer in a mobile ad hoc network, and network device using the method | |
JP3808882B2 (ja) | ゲートウェイ装置および無線端末装置 | |
JP2001136209A (ja) | 通信装置 | |
EP2697950B1 (en) | Technique for managing communications at a router | |
Ahmad | The Network and Higher Layer Functions |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20030930 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081010 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081010 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091010 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101010 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111010 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111010 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121010 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131010 Year of fee payment: 10 |
|
LAPS | Cancellation because of no payment of annual fees |