[go: up one dir, main page]

JP2003152792A - パケット転送装置、方法およびプログラム - Google Patents

パケット転送装置、方法およびプログラム

Info

Publication number
JP2003152792A
JP2003152792A JP2001351252A JP2001351252A JP2003152792A JP 2003152792 A JP2003152792 A JP 2003152792A JP 2001351252 A JP2001351252 A JP 2001351252A JP 2001351252 A JP2001351252 A JP 2001351252A JP 2003152792 A JP2003152792 A JP 2003152792A
Authority
JP
Japan
Prior art keywords
connection
packet
queue
received
transferred
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
Application number
JP2001351252A
Other languages
English (en)
Other versions
JP3726741B2 (ja
Inventor
Masahiro Ono
真裕 小野
Yasuhiko Matsunaga
泰彦 松永
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2001351252A priority Critical patent/JP3726741B2/ja
Priority to US10/294,702 priority patent/US7385986B2/en
Publication of JP2003152792A publication Critical patent/JP2003152792A/ja
Application granted granted Critical
Publication of JP3726741B2 publication Critical patent/JP3726741B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/19Flow control; Congestion control at layers above the network layer
    • H04L47/193Flow control; Congestion control at layers above the network layer at the transport layer, e.g. TCP related
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/28Flow control; Congestion control in relation to timing considerations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/30Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/32Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/621Individual queue per connection or flow, e.g. per VC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/6215Individual queue per QOS, rate or priority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/163In-band adaptation of TCP data exchange; In-band control procedures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/02Processing of mobility data, e.g. registration information at HLR [Home Location Register] or VLR [Visitor Location Register]; Transfer of mobility data, e.g. between HLR, VLR or external networks
    • H04W8/04Registration at HLR or HSS [Home Subscriber Server]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

Landscapes

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

Abstract

(57)【要約】 (修正有) 【課題】 転送するデータサイズの異なるTCPコネク
ション間の公平性の向上をはかる。 【解決手段】 スケジューラ109で、キュー106〜
108のうち、コネクション確立後転送したデータ量が
少ないコネクションのキューに格納されている受信パケ
ットを、コネクション確立後転送したデータ量が多いコ
ネクションのキューに格納されている受信パケットに対
して優先して転送する。また、キュー選択条件として
は、コネクション確立後転送したデータ量に代えて、コ
ネクション確立後の経過時間が短いもの、転送レートの
時間変化が正で最も大きいものを用いる。また、このよ
うなキュー選択をグループ分けして行う。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、パケット転送装
置、パケット転送方法およびプログラムに関し、特にイ
ンターネットなどで使用されているTCP(Transmissi
on Control Protocol)を用いてパケットを転送する
際、複数のコネクション間で公平にパケット転送するパ
ケット転送装置、パケット転送方法およびプログラムに
関するものである。
【0002】
【従来の技術】従来、パケット通信ではパケット転送装
置におけるパケットスケジューリング方式の工夫によっ
てコネクション間の公平性の向上が図られてきた。従来
のスケジューリング方式の1つとして、DRR(Defici
t Round Robin)という技術がある(例えば、M.Shreedh
ar, G.Varghese,"Efficient fair queuing using defic
it round robin",Proc. ACM SIGCOMM 1995. など参
照)。
【0003】以下、図14,15を参照して、上記DR
Rについて説明する。図14はDRRを用いたパケット
転送装置の構成を示すブロック図である。図15はDR
Rに基づくパケット転送制御方法を示すフローチャート
である。このパケット転送装置には、入力端子001、
コネクション情報記憶部002、パケット分類部00
3、キューマネージャ004、キュー006〜008を
含むキュー集合005、デフォルトキュー011、スケ
ジューラ009、および出力端子010が設けられてい
る。
【0004】TCP/IPを利用したパケット通信を行
う複数の通信装置間に、図14に示すパケット転送装置
が設置されている場合、入力端子001から入力された
パケットはパケット分類部003でコネクション毎に分
類される。パケット分類部003はヘッダ解析を行い、
コネクションのプロトコル種別、送信元アドレス、送信
元ポート番号、宛先アドレス、宛先ポート番号を組とし
てコネクションを認識し適切なコネクションを識別す
る。
【0005】ここで、ヘッダ解析の結果、トランスポー
ト層プロトコルとしてTCPを用い、TCPヘッダ部分
のSYNフラグがたっているコネクション確立パケット
を受信したことがわかった場合には、キューマネージャ
004により新規にキューを生成し、送信元と宛先のア
ドレス・ポート番号の組と生成したキューの識別子の情
報をもつ新規コネクション情報をコネクション情報記憶
部002に登録し、生成したキューにパケットを格納す
る。また、ヘッダ解析の結果、トランスポート層プロト
コルとしてTCPを用い、データパケットを受信したこ
とがわかった場合には、キューマネージャ004により
送信元と宛先のアドレス・ポート番号の組をキーとして
コネクション情報記憶部002に問合せ、格納すべきキ
ューの識別子を得、該当キューにパケットを格納する。
【0006】あるいは、ヘッダ解析の結果、トランスポ
ート層プロトコルとしてTCPを用い、TCPヘッダ部
分のFINフラグがたっているコネクション開放パケッ
トを受信したことがわかった場合には、キューマネージ
ャ004により送信元と宛先のアドレス・ポート番号の
組をキーとしてコネクション情報記憶部002から格納
すべきキューの識別子を得て、該当キューにパケットを
格納する。その後、コネクション情報記憶部002に該
当する登録情報を消去するよう要求する。コネクション
情報記憶部002は登録情報を消去する要求を受ける
と、一定時間後にコネクション情報を消去する。また、
ヘッダ解析の結果、トランスポート層プロトコルとして
UDP(User Datagram Protocol)などTCP以外のプ
ロトコルを使用するパケットを受信したことがわかった
場合には、あらかじめ設けてあるデフォルトキュー01
1に格納し、TCPコネクションとは別に帯域を確保
し、このキューを処理する。
【0007】コネクション情報記憶部002は、TCP
コネクションが異常終了した時のために、それぞれのコ
ネクションについてタイマを保持し、一定時間中にパケ
ットが入力されなければコネクション情報を削除する。
キューに追加する時にキューマネージャ004によっ
て、ある条件にしたがってパケットを廃棄するRED
(Random Early Detection: S.Floyd, V.Jacobson.,"Ra
ndom early detection gateways for congestion avoid
ance", IEEE/ACM trans. networking, 1995.)などのア
クティブ・キュー・マネジメントを行っても良い。この
ような処理を経て、入力パケットはコネクション毎のキ
ュー006〜008のいずれかに追加される。
【0008】スケジューラ009では、キュー集合00
5中のキュー006〜008のいずれかのキューを選択
し、キューの先頭からパケット取り出し、出力端子01
0を通してネットワークに出力する。スケジューラ00
9は出力端子010がパケットを送信し終えると次に送
信すべきパケットを選択する。
【0009】スケジューラ009でのキューの選択動作
すなわちパケット転送制御は、図15に示すような処理
となる。この場合、デフォルトキューとコネクション毎
のキュー群は、それぞれに割り当てられたタイミングに
処理することとする。DRRのスケジューラ009は、
ラウンドロビン方式によってキューを順番に選択し、各
キューでパケットを出力するかどうかを以下のようにし
て判断する。このとき、各コネクションのキュー毎に不
足カウンタという変数を用意し、コネクション確立時に
不足カウンタを0にリセットする。
【0010】まず、スケジューラ009は、出力端子0
10でパケット転送が終了し次に転送すべきパケットを
選択する時、デフォルトキュー011を処理するタイミ
ングであるか判断する(ステップA01)。ここで、デ
フォルトキューを処理するタイミングである場合(ステ
ップA01:YES)、次にデフォルトキューが空であ
るかどうかチェックする(ステップA10)。もし空で
あれば(ステップA10:YES)、すぐにステップA
01に戻る。空でなければ(ステップA10:NO)、
デフォルトキューの先頭パケットを送信し(ステップA
11)、再びステップA01に戻る。
【0011】デフォルトキューを処理するタイミングで
ない場合は(ステップA01:NO)、まず、処理する
キューについてキューが空であるか否かをチェックする
(ステップA02)。ここで、キューの中に送信すべき
パケットがない場合には(ステップA02:YES)、
不足カウンタをリセットし(ステップA07)、このキ
ューの処理を終了する。
【0012】一方、キューが空でなければ(ステップA
02:YES)、quantumと呼ばれる定数を不足
カウンタに加算し(ステップA03)、キュー先頭のパ
ケットサイズと不足カウンタの大小を比較する(ステッ
プA04)。このとき、不足カウンタの方が大きければ
(ステップA04:YES)、パケットを出力し(ステ
ップA05)、不足カウンタからパケットサイズ分を減
算し(ステップA06)、再びステップA05に戻る。
また、不足カウンタの方が先頭のパケットサイズより小
さければ(ステップA04:NO)、不足カウンタの値
を記憶し(ステップA08)、このキューの処理を終了
する。
【0013】キューの処理を終了した後、全てのキュー
が空であるかチェックし(ステップA09)、空でなけ
れば再び次に選択されたキューについて処理するための
ステップA01に移る。全てのキューが空であれば(ス
テップA09:YES)、一連のパケット転送制御処理
を終了する。以上の結果、quantumで決まるデー
タ長の送信に要する時間の程度において、各コネクショ
ンに対する転送レートはほぼ平均化され、コネクション
間の公平性を保つことが可能となる。
【0014】
【発明が解決しようとする課題】しかしながら、このよ
うな従来のパケット転送制御方法では、DRRのような
フェアスケジューラを用いたとしても、インターネット
で一般的に使用されているTCPを用いてデータを転送
する場合、小さなデータを転送するコネクションほどス
ループットが小さく、コネクション間のスループットが
公平にならないという問題点があった。特に、インター
ネットでWebブラウジングをおこなう際に広く使用さ
れるHTTP(Hyper Text Transfer Protocol)を用い
てTCP通信を行う場合、小さなファイルのデータ転送
がほとんどであり、大きなファイルの転送はごく一部と
なるため、不公平性が大きい。
【0015】その理由は、TCPでは、コネクション確
立直後は低い送信レートから始めて指数関数的に増加さ
せるスロースタート動作と、コネクション確立後しばら
く経過してからは送信レートを線形的に増加させる輻輳
回避動作があり、転送するデータサイズが小さい場合ス
ロースタート動作の間にコネクションが終了し、スルー
プットが小さくなる傾向があるためである。本発明はこ
のような課題を解決するためのものであり、転送するデ
ータサイズの異なるTCPコネクション間の公平性の向
上をはかることができるパケット転送装置、パケット転
送制御方法およびプログラムを提供することを目的とし
ている。
【0016】
【課題を解決するための手段】このような目的を達成す
るために、本発明にかかるパケット転送装置は、パケッ
ト通信網を介して確立したコネクションを用いて、送信
端末と受信端末との間でデータ通信を行う際、パケット
通信網に接続されて送信端末からのパケットを受信端末
へ転送するパケット転送装置において、送信端末から受
信した受信パケットのヘッダに含まれる1つ以上のフィ
ールドから、送信端末と受信端末との間でデータの転送
に使用されるコネクションを識別し、その確立および解
放を検出するパケット分類部を設け、スケジューラで、
前記パケット分類部で識別された各コネクションのう
ち、そのコネクションの確立後に転送した受信パケット
のデータ量が少ないコネクションの受信パケットを優先
して転送するようにしたものである。
【0017】このとき、パケット分類部で識別された各
コネクションに対応するキューへ当該受信パケットを順
次格納するキューマネージャをさらに設け、前記スケジ
ューラで、前記各コネクションのうち、そのコネクショ
ンの確立後に転送した受信パケットのデータ量が少ない
コネクションのキューから受信パケットを優先して転送
するようにしてもよい。
【0018】コネクション選択の条件としては、記スケ
ジューラで、次に受信パケットを転送するコネクション
を選択する際、データ量に代えて、各コネクションのう
ち、そのコネクションの確立後からの経過時間が短いコ
ネクションを優先して選択するようにしてもよい。ある
いは、スケジューラで、次に受信パケットを転送するコ
ネクションを選択する際、データ量に代えて、各コネク
ションのうち、そのコネクションの転送レートの時間変
化が正でかつその時間変化が大きいコネクションを優先
して選択するようにしてもよい。
【0019】また、スケジューラで、各コネクションを
そのコネクションの確立後に転送した受信パケットのデ
ータ量に基づき複数のグループに分類し、次に受信パケ
ットを転送するコネクションを選択する際、各グループ
のうち、データ量が少ないグループに属するコネクショ
ンを優先して選択するようにしてもよい。
【0020】このとき、コネクション選択の条件として
は、スケジューラで、各コネクションをそのコネクショ
ンの確立後からの経過時間に基づき複数のグループに分
類し、次に受信パケットを転送するコネクションを選択
する際、各グループのうち、経過時間が短いグループに
属するコネクションを優先して選択するようにしてもよ
い。あるいは、スケジューラで、各コネクションをその
コネクションの転送レートの時間変化に基づき複数のグ
ループに分類し、次に受信パケットを転送するコネクシ
ョンを選択する際、各グループのうち、時間変化が正で
かつその時間変化が大きいグループに属するコネクショ
ンを優先して選択するようにしてもよい。上記コネクシ
ョンでは、トランスポート層プロトコルとしてTCPを
用いるようにしてもよい。
【0021】また、本発明にかかるパケット転送方法
は、パケット通信網を介して確立したコネクションを用
いて、送信端末と受信端末との間でデータ通信を行う
際、パケット通信網に接続されて送信端末からのパケッ
トを受信端末へ転送するパケット転送装置で用いるパケ
ット転送方法において、送信端末から受信した受信パケ
ットのヘッダに含まれる1つ以上のフィールドから、送
信端末と受信端末との間でデータの転送に使用されるコ
ネクションを識別して、その確立および解放を検出し、
これら識別された各コネクションのうち、そのコネクシ
ョンの確立後に転送した受信パケットのデータ量が少な
いコネクションの受信パケットを優先して転送するよう
にしたものである。
【0022】このとき、前記識別された各コネクション
に対応するキューへ当該受信パケットを順次格納し、前
記各コネクションのうち、そのコネクションの確立後に
転送した受信パケットのデータ量が少ないコネクション
のキューから受信パケットを優先して転送するようにし
てもよい。
【0023】コネクション選択の条件としては、次に受
信パケットを転送するコネクションを選択する際、デー
タ量に代えて、各コネクションのうち、そのコネクショ
ンの確立後からの経過時間が短いコネクションを優先し
て選択するようにしてもよい。あるいは、次に受信パケ
ットを転送するコネクションを選択する際、データ量に
代えて、各コネクションのうち、そのコネクションの転
送レートの時間変化が正でかつその時間変化が大きいコ
ネクションを優先して選択するようにしてもよい。
【0024】また、各コネクションをそのコネクション
の確立後に転送した受信パケットのデータ量に基づき複
数のグループに分類し、次に受信パケットを転送するコ
ネクションを選択する際、各グループのうち、データ量
が少ないグループに属するコネクションを優先して選択
するようにしてもよい。
【0025】このとき、コネクション選択の条件として
は、各コネクションをそのコネクションの確立後からの
経過時間に基づき複数のグループに分類し、次に受信パ
ケットを転送するコネクションを選択する際、各グルー
プのうち、経過時間が短いグループに属するコネクショ
ンを優先して選択するようにしてもよい。あるいは、各
コネクションをそのコネクションの転送レートの時間変
化に基づき複数のグループに分類し、次に受信パケット
を転送するコネクションを選択する際、各グループのう
ち、時間変化が正でかつその時間変化が大きいグループ
に属するコネクションを優先して選択するようにしても
よい。上記コネクションでは、トランスポート層プロト
コルとしてTCPを用いるようにしてもよい。
【0026】また、本発明にかかるプログラムは、上記
した本発明にかかるパケット転送方法の各ステップを実
行するようにしたものである。
【0027】
【発明の実施の形態】次に、本発明の実施の形態につい
て図面を参照して説明する。図1は本発明の一実施の形
態にかかるパケット転送装置の適用例である。この通信
ネットワークは、通信装置A01、無線リンク02、パ
ケット転送装置03、有線リンク04、パケットネット
ワーク05、有線リンク06、および通信装置B07か
ら構成されている。
【0028】通信装置A01と通信装置B07は予め確
立したコネクションを介してパケット通信を行ってお
り、出力されたパケットは、無線リンク02、パケット
転送装置03、有線リンク04、パケットネットワーク
05、および有線リンク06を経由して通信相手に到達
する。無線リンク02は、通信装置B07から通信装置
A01の方向へパケットを転送する下りリンク11と、
通信装置A01から通信装置B07の方向へパケットを
転送する上りリンク12からなる。ただし、無線リンク
02は一例であり、パケット転送装置03から通信装置
A01へ1ホップで到達すれば、有線リンクでも構わな
い。パケット転送装置03は、下りリンク11に関して
パケット転送の順序を制御する。パケットネットワーク
05は、パケットが通るネットワークである。
【0029】図2にパケット転送装置03の構成を示
す。このパケット転送装置03には、入力端子101、
コネクション情報記憶部102、パケット分類部10
3、キューマネージャ104、キュー106〜108を
含むキュー集合105、スケジューラ109、出力端子
110、およびデフォルトキュー111が設けられてい
る。
【0030】入力端子101は、パケット転送装置03
に入力されたパケットを受信する部分であり、パケット
分類部103に受信パケットを送信する。コネクション
情報記憶部102は、コネクションの識別子などのコネ
クションを管理する情報を保持する部分であり、パケッ
ト分類部103から情報の登録、更新、参照、削除を行
われる。
【0031】パケット分類部103は、入力されたパケ
ットのヘッダ解析を行うことによりコネクションを識別
し、コネクションの確立を検出した場合はコネクション
情報記憶部102に登録し、コネクションの解放を検出
した場合はコネクション情報記憶部102の該当情報を
削除する。また、既知のコネクションならばコネクショ
ン情報記憶部102を参照し、対応するキューのキュー
識別子とともにキューマネージャ104に受信パケット
を渡す。キューマネージャ104は、パケット分類部1
03から受け取ったパケットをキュー識別子に従い該当
するキューに格納する。この際、必要に応じてパケット
を廃棄してもよい。
【0032】キュー集合105は、コネクション毎に用
意されたキュー106〜108から構成される。デフォ
ルトキュー111は、トランスポート層プロトコルがT
CP以外のパケットなどを格納するデフォルトのキュー
である。スケジューラ109はキュー集合105に属す
るキューとデフォルトキュー111の中からいずれかの
キューを選択し、キューの先頭からパケットを取り出し
て出力端子110へと送信する。出力端子110はスケ
ジューラ109から受け取ったパケットをネットワーク
へ送信する。
【0033】パケット転送装置03は、図3に示すよう
に、全体としてプログラムにより各種処理を実行するコ
ンピュータから構成されている。入出力I/F(インタ
ーフェース)部31は、パケットの入力端子101や出
力端子110を備えて外部とのパケットのやり取りを行
う。演算処理部32は、CPUなどのマイクロプロセッ
サやその周辺回路からなり、所定のプログラムを読み込
んで実行することにより、上記ハードウェアとプログラ
ムからなるソフトウェアとを協働させて、パケット分類
部103、キューマネージャ104およびスケジューラ
109の各機能手段を実現する。記憶部33はコネクシ
ョン情報記憶部102を実現するとともに、演算処理部
32での処理に用いる各種情報やプログラムを記憶する
メモリである。キューバッファ34は、各キュー106
〜108、111を実現するバッファメモリである。こ
れら入出力I/F部31、演算処理部32、記憶部33
およびキューバッファ34は、バス35を介して相互に
接続されており、必要に応じて各種情報をやり取りす
る。
【0034】次に、図4を参照して、TCPコネクショ
ンを用いた一般的なパケット転送手順について説明す
る。図4はTCPコネクションでのパケット転送手順を
示すシーケンス図である。TCPは、次のような、コネ
クション確立フェーズと、データ送受信フェーズ、コネ
クション開放フェーズを持つ。コネクション確立フェー
ズでは、SYNフラグを立てたパケットを送信すること
から始まる。通信装置A01,通信装置B07のどちら
から開始しても構わないが、ここでは通信装置Aから開
始する例を説明する。
【0035】まず初めに、通信装置Aからコネクション
確立要求であるSYNフラグを立てたパケットP01が
送信される。このパケットP01には、以降のコネクシ
ョンで使用する通信装置Aと通信装置BのIPアドレス
およびポート番号が含まれている。パケットP01は、
パケット転送装置03により受信、転送され通信装置B
により受信される。パケットP01を受信した通信装置
Bは、SYNとACKフラグを立てたパケットP02を
送信し、パケットP02はパケット転送装置でのバケッ
ト転送処理P03を経て通信装置Aにより受信される。
このパケットP02に対して通信装置AがACKフラグ
を立てたパケットP04を送信し、パケットP04はパ
ケット転送装置を経て通信装置Bにより受信される。以
上でTCPコネクション確立が終了する。
【0036】このようにしてコネクションが確立した
後、データ送受信フェーズでのデータ通信は、確立され
た相手IPアドレス・ポートに向かって、確立した自分
のIPアドレス・ポートから、パケットを送信すること
により達成される。通信装置Bから送信されたデータパ
ケットP05は、パケット転送装置でのデータ通信処理
P06を経て通信装置Aで受信される。
【0037】またコネクション開放フェーズでは、FI
Nフラグを立てたパケットを送信することから始まる。
通信装置A01、通信装置B07どちらから開始しても
構わないが、ここでは通信装置Bから開始する例を説明
する。まず初めに通信装置Bからコネクション開放要求
であるFINフラグを立てたパケットP07が送信され
る。パケットP07は、パケット転送装置03でのコネ
クション開放処理P08を経て通信装置Aで受信され
る。パケットP07を受信した通信装置Aは、FINと
ACKフラグを立てたパケットP09を送信し、パケッ
トP09はパケット転送装置を経て通信装置Aにより受
信される。パケットP09に対して通信装置BがACK
フラグを立てたパケットP10を送信し、パケットP1
0はパケット転送装置を経て通信装置Aにより受信され
る。以上でTCPコネクション開放フェーズが終了す
る。
【0038】次に、図2を参照して本発明の第1の実施
の形態にかかるパケット転送装置の動作について説明す
る。以下では、図1に示したように、通信装置A01と
通信装置B02間に本実施の形態にかかるパケット転送
装置03が設置されており、図4で示したように、通信
装置Bから通信装置Aへデータ送信する場合を例として
説明する。なお、本実施の形態は、通信装置Aと通信装
置Bとの通信を考えた場合、通信装置Aから通信装置B
方向へのデータ送信と、通信装置Bから通信装置A方向
へのデータ送信と、通信装置Bと通信装置A方向間の双
方向データ送信とのいずれについても適用可能である。
【0039】まず、TCPコネクション確立手順におけ
るコネクション確立処理(図4:P03)について説明
する。、パケット転送装置03では、入力端子101へ
パケットが入力されると、まずパケット分類部103で
パケットのヘッダ情報の解析を行う。パケット分類部1
03は、ヘッダ解析の結果、TCPコネクションの確立
手順中の、通信装置Bから通信装置AへのTCPヘッダ
部分にSYNフラグがたっているコネクション確立パケ
ットを受信したことがわかると、送信元と宛先のアドレ
ス・ポート番号の組と転送データ量を0とした情報をも
つ新規コネクション情報をコネクション情報記憶部10
2に登録し、キューマネージャ104に、新しいキュー
の生成要求と共にパケットを送る。
【0040】図5に、コネクション情報記憶部102が
記憶するコネクション毎の情報の一例を示す。ただし、
ここでは、スケジューラにおいて転送データ量を基準と
した並べ替えを行うため、コネクション毎にその情報を
保持しているが、他に転送レートの時間変動量や、コネ
クション確立からの経過時間などでも構わない。キュー
マネージャ104は、パケット分類部103からキュー
生成要求と共にパケットを受け取ると、新しいキューを
生成しコネクション情報記憶部102にキュー識別子の
情報を該当するコネクションに追加し、パケットを生成
したキューに格納する。
【0041】次に、TCPデータ送受信フェーズにおけ
るデータ送受信処理(図4:P06)について説明す
る。パケット転送装置03では、入力端子101へパケ
ットが入力されると、まずパケット分類部103でパケ
ットのヘッダ情報の解析を行う。パケット分類部103
は、ヘッダ解析の結果、データパケットを受信したこと
がわかると、送信元と宛先のアドレス・ポート番号の組
をキーとしてコネクション情報記憶部102に問合せ、
格納すべきキューの識別子を得る。その後、キューマネ
ージャ104にキュー識別子と共にパケットを送る。キ
ューマネージャ104は、パケット分類部103からキ
ュー識別子と共にパケットを受け取ると、キュー識別子
に従い該当するキューにパケットを格納する。
【0042】次に、TCPコネクション開放フェーズに
おけるコネクション開放処理(図4:P08)について
説明する。パケット転送装置03では、入力端子101
へパケットが入力されると、まずパケット分類部103
でパケットのヘッダ情報の解析を行う。パケット分類部
103は、ヘッダ解析の結果、TCPコネクションの開
放手順中の、通信装置Bから通信装置AへのTCPヘッ
ダ部分にFINフラグがたっているコネクション開放パ
ケットを受信したことがわかると、送信元と宛先のアド
レス・ポート番号の組をキーとしてコネクション情報記
憶部102に、格納すべきキューの識別子を得る。
【0043】また、これと同時に、コネクション情報記
憶部102に該当する登録情報を消去するよう要求す
る。コネクション情報記憶部102は、一定時間後該コ
ネクション情報を消去する。その後、キューマネージャ
104に、キュー識別子と、キュー削除要求と共にパケ
ットを送る。キューマネージャ104は、パケット分類
部103からキュー識別子とキュー削除要求と共にパケ
ットを受け取ると、キュー識別子に従い該当するキュー
にパケットを格納する。キューマネージャ104は、キ
ューからパケットが送信された一定時間後キューを削除
する。
【0044】ヘッダ解析の結果、トランスポート層プロ
トコルとしてUDPなどTCP以外のプロトコルを使用
するパケットを受信したことがわかった場合には、あら
かじめ設けてあるデフォルトキュー111に格納し、T
CPコネクションとは別に帯域を確保しこのキューを処
理する。コネクション情報記憶部102は、TCPコネ
クションが異常終了した時のために、それぞれのコネク
ションについてタイマを保持し、一定時間中にパケット
が入力されなければコネクション情報を削除する。以上
のような処理を経て、入力パケットはコネクション毎の
キュー106〜108のいずれかに追加される。
【0045】スケジューラ109は、コネクション情報
記憶部102から得たコネクションの情報を参考に、キ
ュー集合105中のキュー106〜108のいずれかの
キューを選択し、そのキュー内のパケットを出力端子1
10を通して通信装置Aに向けてネットワークに出力す
る。そして、スケジューラ109は、出力端子110が
パケットを送信し終えると次の送信パケットを選択し送
信する、という処理をキュー集合105中のキュー全て
が空となるまで続ける。
【0046】次に、図6を参照して、スケジューラ10
9のパケット転送制御処理(キュー選択処理)について
説明する。図6は、スケジューラでのパケット転送制御
処理を示すフローチャートであり、特に選択条件として
コネクション確立後の転送データ量を用いた場合を示し
ている。デフォルトキューとコネクション毎のキュー群
は、それぞれに割り当てられたタイミングに処理するこ
ととする。スケジューラ109は、出力端子110でパ
ケット転送が終了し次に転送すべきパケットを選択する
時、デフォルトキューを処理するタイミングであるか判
断する(ステップB01)。
【0047】ここで、デフォルトキューを処理するタイ
ミングである場合(ステップB01:YES)、次にデ
フォルトキューが空であるかどうかチェックする(ステ
ップB06)。もし空であれば(ステップB06:YE
S)、すぐにステップB01に戻る。空でなければ(ス
テップB06:NO)、デフォルトキューの先頭パケッ
トを送信し(ステップB07)、再びステップB01に
戻る。
【0048】一方、デフォルトキューを処理するタイミ
ングでない場合は(ステップB01:NO)、まずキュ
ー集合105中の空でない全てのキューを当該コネクシ
ョン確立後の転送データ量(パケット数や実データ量)
が少ない順に並べ替える(ステップB02)。次に、転
送データ量順に並べ替えられたキューの内、最も転送デ
ータ量の少ないコネクションを持つキューを最優先とし
先頭のパケットを送信する(ステップB03)。そし
て、コネクション情報記憶部102の保持するコネクシ
ョン情報の転送データ量を、転送したパケットの情報も
含めて更新する(ステップB04)。
【0049】その後、キュー集合105中の全てのキュ
ーが空であるかどうかチェックし(ステップB05)、
全てのキューが空でなければ(ステップB05:N
O)、再びステップB01の処理に戻る。全てのキュー
が空であれば(ステップB05:YES)、一連のパケ
ット転送制御処理を終了する。
【0050】以上では、スケジューラ109での優先転
送制御において、選択条件としてコネクション確立後の
転送データ量を用いた場合について説明したが、他の選
択条件として、コネクション確立からの経過時間を用い
てもよい。図7は、スケジューラでのパケット転送制御
処理を示すフローチャートであり、特に選択条件として
コネクション確立からの経過時間を用いた場合を示して
いる。この場合、コネクション情報記憶部102は、コ
ネクション毎にコネクション確立からの経過時間を記憶
している必要がある。
【0051】デフォルトキューとコネクション毎のキュ
ー群は、それぞれに割り当てられたタイミングに処理す
ることとする。スケジューラ109は、出力端子110
でパケット転送が終了し次に転送すべきパケットを選択
する時、デフォルトキューを処理するタイミングである
か判断する(ステップC01)。
【0052】ここで、デフォルトキューを処理するタイ
ミングである場合(ステップC01:YES)、次にデ
フォルトキューが空であるかどうかチェックする(ステ
ップC06)。もし空であれば(ステップC06:YE
S)、すぐにステップC01に戻る。空でなければ(ス
テップC06:NO)、デフォルトキューの先頭パケッ
トを送信し(ステップC07)、再びステップC01に
戻る。
【0053】一方、デフォルトキューを処理するタイミ
ングでない場合は(ステップC01:NO)、まずキュ
ー集合105中の空でない全てのキューをコネクション
確立からの経過時間が短い順に並べ替える(ステップC
02)。次に、コネクション確立からの経過時間順に並
べ替えられたキューの内、最もコネクション確立からの
経過時間が短いコネクションを持つキューを最優先とし
先頭のパケットを送信する(ステップC03)。
【0054】そして、コネクション情報記憶部102の
保持するコネクション情報のコネクション確立からの経
過時間を、転送したパケットの情報も含めて更新する
(ステップC04)。その後、キュー集合105中の全
てのキューが空であるかどうかチェックし(ステップC
05)、全てのキューが空でなければ(ステップC0
5:NO)、再びステップC01の処理に戻る。全ての
キューが空であれば(ステップC05:YES)、一連
のパケット転送制御処理を終了する。
【0055】また、スケジューラ109での優先転送制
御において、選択条件として転送レートの時間変化量を
用いてもよい。図8は、スケジューラでのパケット転送
制御処理を示すフローチャートであり、特に選択条件と
して転送レートの時間変化量を用いた場合を示してい
る。この場合コネクション情報記憶部102は、コネク
ション毎に転送レートの時間変化量を記憶している必要
がある。
【0056】デフォルトキューとコネクション毎のキュ
ー群は、それぞれに割り当てられたタイミングに処理す
ることとする。スケジューラ109は、出力端子110
でパケット転送が終了し次に転送すべきパケットを選択
する時、デフォルトキューを処理するタイミングである
か判断する(ステップD01)。ここで、デフォルトキ
ューを処理するタイミングである場合(ステップD0
1:YES)、次にデフォルトキューが空であるかどう
かチェックする(ステップD06)。もし空であれば
(ステップD06:YES)、すぐにステップD01に
戻る。空でなければ(ステップD06:NO)、デフォ
ルトキューの先頭パケットを送信し(ステップD0
7)、再びステップD01に戻る。
【0057】一方、デフォルトキューを処理するタイミ
ングでない場合は(ステップD01:NO)、まずキュ
ー集合105中の空でない全てのキューを転送レートの
時間変化量にしたがって並べ替える(ステップD0
2)。次に、転送レートの時間変化量順に並べ替えられ
たキューの内、転送レートの時間変化量が正で最も大き
いコネクションを持つキュー、すなわち転送レートが増
加しておりその増加幅が最も大きいキューを最優先とし
先頭のパケットを送信する(ステップD03)。
【0058】そして、コネクション情報記憶部102の
保持するコネクション情報の転送レートの時間変化量
を、転送したパケットの情報も含めて更新する(ステッ
プD04)。その後、キュー集合105中の全てのキュ
ーが空であるかどうかチェックする(ステップD0
5)。全てのキューが空でなければ(ステップD05:
NO)、再びステップC01の処理に戻る。全てのキュ
ーが空であれば(ステップD05:YES)、一連のパ
ケット転送制御処理を終了する。
【0059】このように、本実施の形態は、パケット分
類部103で、送信端末から受信した受信パケットのヘ
ッダに含まれる1つ以上のフィールドから、送信端末と
受信端末との間でデータの転送に使用されるコネクショ
ンを識別し、その確立および解放を検出し、パケット分
類部103で識別された各コネクションのうち、そのコ
ネクションの確立後に転送した受信パケットのデータ量
が少ないコネクションの受信パケットを、スケジューラ
109で優先して転送するようにしたものである。
【0060】またこのとき、キューマネージャ104
で、パケット分類部103により識別された各コネクシ
ョンに対応するキュー106〜108へ当該受信パケッ
トを順次格納し、スケジューラ109で、次に受信パケ
ットを転送するコネクションを選択する際、各コネクシ
ョンのうち、そのコネクションの確立後に転送した受信
パケットのデータ量が少ないコネクション、コネクショ
ンの確立後からの経過時間が短いコネクション、あるい
はコネクションの転送レートの時間変化が正でかつその
時間変化が大きいコネクションの受信パケットを優先し
て転送するようにしたものである。
【0061】これにより、TCPコネクションのスロー
スタート動作時のパケットが優先されるため、各コネク
ションで転送するデータ量に束縛されることなく、転送
するデータサイズの異なるTCPコネクション間の公平
性を向上させることができる。特に、TCPのスロース
タート動作は、ネットワークの輻輳を回避するために送
信側の端末がおこなう動作としては適切であるが、デー
タを受信する端末に最も近いエッジルータにおいては、
スロースタート中のコネクションに関するパケットを優
先して出力したとしても輻輳をまねくことはない。
【0062】したがって、通信装置間のパケット転送装
置において、TCPコネクションのスロースタート動作
時のパケットを優先する優先制御方式を行い、パケット
転送装置において優先するパケットの入力から出力まで
の待ち時間を低減させることにより、転送するデータサ
イズが小さいコネクションのスループットを向上させる
ことができる。また、キュー集合105においてコネク
ション毎にキューを持たず、スケジューラ109におい
て優先制御を行わない場合でも、キューマネージャ10
4によりデータ転送量が多いコネクション、転送レート
の時間変化が負もしくは0もしくは正で小さいコネクシ
ョン、あるいはコネクション確立からの経過時間が長い
コネクションほど、パケット廃棄率を高くすることで同
様の作用効果が得られる。
【0063】具体的には、キューマネージャ104で、
パケットが到着する際、適当にパケットを廃棄するよう
にしてもよい。例えば、コネクション情報記憶部102
から得たコネクションの情報を参考に、転送データ量が
多いほどパケット廃棄確率を高くしておけばよい。他
に、データ流量の変化が負や正で小さいものほどパケッ
ト廃棄確率を高くする、コネクション確立後の経過時間
が長いほどパケット廃棄確立を高くする、メモリが足り
なくなった場合に入力パケットを無条件に廃棄する、R
ED、などの任意のアルゴリズムで行って構わない。
【0064】次に、図9を参照して、本発明の第2の実
施の形態にかかるパケット転送装置について説明する。
このパケット転送装置には、入力端子201、コネクシ
ョン情報記憶部202、パケット分類部203、キュー
マネージャ204、キュー207〜208を含む優先グ
ループ205、キュー209〜210を含む非優先グル
ープ206、デフォルトキュー216、スケジューラ2
11、および出力端子215が設けられている。なお、
本実施の形態にかかるパケット転送装置も、前述した図
3と同様の構成をなしており、ここでの説明は省略す
る。
【0065】入力端子201は、パケット転送装置03
に入力されたパケットを受信する部分であり、パケット
分類部203に受信パケットを送信する。コネクション
情報記憶部202は、コネクションの識別子などのコネ
クションを管理する情報を保持する部分であり、パケッ
ト分類部203から情報の登録、更新、参照、削除を行
われる。パケット分類部203は、入力されたパケット
のヘッダ解析を行うことにより、コネクションを識別
し、コネクション情報記憶部202へのコネクションの
登録、削除し、参照、更新を行い、コネクションの情報
と共にキューマネージャ204に受信パケットを渡す。
【0066】キューマネージャ204は、パケット分類
部203から受け取ったパケットをキューに格納する。
この際、パケットを廃棄する場合もある。優先グループ
205は、コネクション毎に存在するキュー207、2
08を備える。非優先グループ206はコネクション毎
に存在するキュー209、210を備える。ただし、こ
の例ではグループを二つに分けているが、任意の数のグ
ループに分けて構わない。
【0067】デフォルトキュー216は、トランスポー
ト層プロトコルがTCP以外のパケットなどを格納する
デフォルトのキューである。スケジューラ211は、第
1スケジューラ212、213と第2スケジューラ21
4を備える。第1スケジューラ212、213は、それ
ぞれ優先グループ205、非優先グループ206内のコ
ネクション毎のキューを並べ替えて第2スケジューラ2
14に渡す。第2スケジューラ214は、第1スケジュ
ーラ212、213、もしくはデフォルトキュー216
から送信するべきキューを選択しパケットを送信する。
出力端子215はスケジューラ211から受け取ったパ
ケットをネットワークへ送信する。
【0068】次に、図9を参照して本発明の第2の実施
の形態にかかるパケット転送装置の動作について説明す
る。以下では、図1に示したように、通信装置A01と
通信装置B02間に本実施の形態にかかるパケット転送
装置03が設置されており、図4で示したように、通信
装置Bから通信装置Aへデータ送信する場合を例として
説明する。なお、本実施の形態は、通信装置Aと通信装
置Bとの通信を考えた場合、通信装置Aから通信装置B
方向へのデータ送信と、通信装置Bから通信装置A方向
へのデータ送信と、通信装置Bと通信装置A方向間の双
方向データ送信とのいずれについても適用可能である。
【0069】まず、TCPコネクション確立手順におけ
るコネクション確立処理(図4:P03)について説明
する。、パケット転送装置03では、入力端子201へ
パケットが入力されると、まずパケット分類部203で
パケットのヘッダ情報の解析を行う。パケット分類部2
03は、ヘッダ解析の結果、TCPコネクションの確立
手順中の、通信装置Bから通信装置AへのTCPヘッダ
部分にSYNフラグがたっているコネクション確立パケ
ットを受信したことがわかると、送信元と宛先のアドレ
ス・ポート番号の組と転送データ量を0とした情報をも
つ新規コネクション情報をコネクション情報記憶部20
2に登録し、キューマネージャ204に、新しいキュー
の生成要求と共にパケットを送る。
【0070】図10に、コネクション情報記憶部202
が記憶するコネクション毎の情報の一例を示す。ただ
し、ここでは、スケジューラにおいて転送データ量を基
準とした並べ替えを行うため、コネクション毎にその情
報を保持しているが、他に転送レートの時間変動量や、
コネクション確立からの経過時間などでも構わない。キ
ューマネージャ204は、パケット分類部203からキ
ュー生成要求と共にパケットを受け取ると、新しいキュ
ーを生成しキューに格納し、該キューを転送データ量が
100kバイト未満である優先グループ205に組み込
む。次に、コネクション情報記憶部202の保持する該
コネクション情報に、キュー識別子と、キューは優先グ
ループに属しているという情報とを追加する。
【0071】次に、TCPデータ送受信フェーズにおけ
るデータ送受信処理(図4:P06)について説明す
る。パケット転送装置03では、入力端子201へパケ
ットが入力されると、まずパケット分類部203でパケ
ットのヘッダ情報の解析を行う。パケット分類部203
は、ヘッダ解析の結果、データパケットを受信したこと
がわかると、送信元と宛先のアドレス・ポート番号の組
をキーとしてコネクション情報記憶部202に問合せ、
格納すべきキューの識別子を得る。その後、キュー識別
子とパケットをキューマネージャ204に送る。キュー
マネージャ204は、パケット分類部203からキュー
識別子と共にパケットを受け取ると、キュー識別子に従
い該当するキューにパケットを格納する。
【0072】次に、TCPコネクション開放フェーズに
おけるコネクション開放処理(図4:P08)について
説明する。パケット転送装置03では、入力端子201
へパケットが入力されると、まずパケット分類部203
でパケットのヘッダ情報の解析を行う。パケット分類部
203は、ヘッダ解析の結果、TCPコネクションの開
放手順中の、通信装置Bから通信装置AへのTCPヘッ
ダ部分にFINフラグがたっているコネクション開放パ
ケットを受信したことがわかると、送信元と宛先のアド
レス・ポート番号の組をキーとしてコネクション情報記
憶部202に、格納すべきキューの識別子を得る。
【0073】また、これと同時に、コネクション情報記
憶部202に該当する登録情報を消去するよう要求す
る。コネクション情報記憶部202は、一定時間後外コ
ネクション情報を消去する。その後、キューマネージャ
204に、キュー識別子と、キュー削除要求と共にパケ
ットを送る。キューマネージャ204は、パケット分類
部203からキュー識別子とキュー削除要求と共にパケ
ットを受け取ると、キュー識別子に従い該当するキュー
にパケットを格納する。キューマネージャ204は、キ
ューからパケットが送信された一定時間後キューを削除
する。
【0074】ヘッダ解析の結果、トランスポート層プロ
トコルとしてUDPなどTCP以外のプロトコルを使用
するパケットを受信したことがわかった場合には、あら
かじめ設けてあるデフォルトキュー216に格納し、T
CPコネクションとは別に帯域を確保しこのキューを処
理する。コネクション情報記憶部202は、TCPコネ
クションが異常終了した時のために、それぞれのコネク
ションについてタイマを保持し、一定時間中にパケット
が入力されなければコネクション情報を削除する。
【0075】また、キューマネージャ204は、パケッ
トが到着する際、適当にパケットを廃棄してもよい。例
えば、コネクション情報記憶部202から得たコネクシ
ョンの情報を参考に、転送データ量が多いほどパケット
廃棄確率を高くしておくなどである。他に、データ流量
の変化が負や正で小さいものほどパケット廃棄確率を高
くする、コネクション確立後の経過時間が長いほどパケ
ット廃棄確立を高くする、メモリが足りなくなった場合
に入力パケットを無条件に廃棄する、RED、など任意
のアルゴリズムで行って構わない。以上のような処理を
経て、入力パケットはコネクション毎のキュー207〜
210のいずれかに追加される。
【0076】スケジューラ211は、コネクション情報
記憶部202から得たコネクションの情報を参考に、キ
ュー207〜210のいずれかのキューを選択し、その
キューのパケットを出力端子215を通して通信装置A
に向けてネットワークに出力する。そして、スケジュー
ラ211は、出力端子215がパケットを送信し終える
と次の送信パケットを選択し送信する、という処理をキ
ュー集合中のキュー全てが空とならない限り続ける。
【0077】次に、図11を参照して、スケジューラ2
11のパケット転送制御処理(キュー選択処理)につい
て説明する。図6は、スケジューラでのパケット転送制
御処理を示すフローチャートであり、特に選択条件とし
てコネクション確立後の転送データ量を用いた場合を示
している。デフォルトキューとコネクション毎のキュー
群は、それぞれに割り当てられたタイミングに処理する
こととする。スケジューラ211では、出力端子215
でパケット転送が終了し次に転送すべきパケットを選択
する時、デフォルトキューを処理するタイミングである
か判断する(ステップE01)。
【0078】ここで、デフォルトキューを処理するタイ
ミングである場合(ステップE01:YES)、次にデ
フォルトキューが空であるかどうかチェックする(ステ
ップE11)。もし空であれば(ステップE11:YE
S)、すぐにステップE01に戻る。空でなければ(ス
テップE11:NO)、デフォルトキューの先頭パケッ
トを送信し(ステップE12)、再びステップE01に
戻る。
【0079】一方、デフォルトキューを処理するタイミ
ングでない場合(ステップE01:NO)、まず第2ス
ケジューラ214は、優先グループ205に空でないキ
ューが存在するかどうかをチェックする。もしあれば、
優先グループ205を選択し、無ければ非優先グループ
206を選択する(ステップE02)。ただし、ここで
は優先グループに空でないキューがある場合は必ず優先
グループのキューを処理する、としているが、任意のア
ルゴリズムで優先グループ205と非優先グループ20
6の選択を行って構わない。
【0080】このとき、第2スケジューラ214が非優
先グループ206を選択した場合(ステップE02:N
O)、第1スケジューラ213は、非優先グループ20
6内のキューを、宛先の通信装置までの無線リンクの伝
搬状態の良い順に並べ替えを行う(ステップE08)。
ここでは並べ替えのための、無線リンクの伝搬状態の良
さを示す指標としてC/I比(Carrier to Interferenc
e Ratio)を例として用いている。ただし、ここでの並
べ替えに用いるアルゴリズムは任意のもので構わない。
並べ替えの後、最もC/I比の高いキューの先頭のパケ
ットを送信する(ステップE09)。
【0081】一方、第2スケジューラ214が優先グル
ープを選択した場合(ステップE02:YES)、第1
スケジューラ212は、優先グループ205のキューの
中から、そのコネクション確立後の転送データ量が最も
少ないキューの先頭パケットを送信する(ステップE0
3)。次に、送信したキューの転送データ量が、優先グ
ループ、非優先グループの閾値である100kバイトを
超えたかどうかチェックする(ステップE04)。ただ
し、この閾値は任意で構わない。
【0082】ここで、100kバイトを超えていない場
合には(ステップE04:NO)、コネクション情報記
憶部202に転送データ量の更新を行う(ステップE0
5)。また、100kバイトを超えた場合には(ステッ
プE04:YES)、キューを非優先グループ206に
移動し(ステップE06)、コネクション情報記憶部2
02に転送データ量の更新に加えて、キューグループ情
報を非優先グループに変更する(ステップE07)。
【0083】このようにしてパケットの送信まで完了し
た後、キュー207〜210の全てのキューが空である
かどうかチェックする(ステップE10)。全てのキュ
ーが空でなければ(ステップE05:NO)、再びステ
ップE01の処理に戻る。全てのキューが空であれば
(ステップE05:YES)、一連のパケット転送制御
処理を終了する。
【0084】以上では、スケジューラ209での優先転
送制御において、選択条件としてコネクション確立後の
転送データ量を用いた場合について説明したが、他の選
択条件として、コネクション確立からの経過時間を用い
てもよい。図12は、スケジューラでのパケット転送制
御処理を示すフローチャートであり、特に選択条件とし
てコネクション確立からの経過時間を用いた場合を示し
ている。この場合コネクション情報記憶部202は、コ
ネクション毎にコネクション確立からの経過時間を記憶
している必要がある。
【0085】デフォルトキューとコネクション毎のキュ
ー群は、それぞれに割り当てられたタイミングに処理す
ることとする。スケジューラ211は、出力端子215
でパケット転送が終了し次に転送すべきパケットを選択
する時、デフォルトキューを処理するタイミングである
か判断する(ステップF01)。
【0086】ここで、デフォルトキューを処理するタイ
ミングである場合(ステップF01:YES)、次にデ
フォルトキューが空であるかどうかチェックする(ステ
ップF11)。もし空であれば(ステップF11:YE
S)、すぐにステップF01に戻る。空でなければ(ス
テップF11:NO)、デフォルトキューの先頭パケッ
トを送信し(ステップF12)、再びステップF01に
戻る。
【0087】一方、デフォルトキューを処理するタイミ
ングでない場合は(ステップF01:NO)、まず第2
スケジューラ214は、優先グループ205に空でない
キューが存在するかどうかをチェックする。もしあれ
ば、優先グループ205を選択し、無ければ非優先グル
ープ206を選択する(ステップF02)。ただし、こ
こでは優先グループに空でないキューがある場合は必ず
優先グループのキューを処理する、としているが、任意
のアルゴリズムで優先グループ205と非優先グループ
206の選択を行って構わない。
【0088】このとき、第2スケジューラ214が非優
先グループ206を選択した場合(ステップF02:N
O)、第1スケジューラ213が、非優先グループ20
6内のキューを、宛先の通信装置までの無線リンク固有
の伝搬状態の良い順に並べ替えを行う(ステップF0
8)。ここでは並べ替えのための、無線リンクの状態の
良さを示す指標としてC/I比を例として用いている。
ただし、ここでの並べ替えに用いるアルゴリズムは任意
のもので構わない。並べ替えの後、最もC/I比の高い
キューの先頭のパケットを送信する(ステップF0
9)。
【0089】一方、第2スケジューラ214が優先グル
ープを選択した場合(ステップF02:YES)、第1
スケジューラ212は優先グループ205のキューの中
から、コネクション確立からの経過時間が最も短いキュ
ーの先頭パケットを送信する(ステップF03)。次
に、送信したキューのコネクション確立からの経過時間
が、優先グループ、非優先グループの閾値である10s
を超えたかどうかチェックする(ステップF04)。た
だし、この閾値は任意で構わない。
【0090】ここで、コネクション確立からの経過時間
が10sより短い場合には(ステップF04:NO)、
コネクション情報記憶部202にコネクション確立から
の経過時間の更新を行う(ステップF05)。10sよ
り長い場合には、キューを非優先グループ206に移動
し(ステップF06)、コネクション情報記憶部202
にコネクション確立からの経過時間の更新に加えて、キ
ューグループ情報を非優先グループに変更する(ステッ
プF07)。
【0091】このようにしてパケットの送信まで完了し
た後、キュー207〜210の全てのキューが空である
かどうかチェックする(ステップF10)。全てのキュ
ーが空でなければ(ステップF05:NO)、再びステ
ップF01の処理に戻る。全てのキューが空であれば
(ステップF05:YES)、一連のパケット転送制御
処理を終了する。
【0092】また、スケジューラ209での優先転送制
御において、選択条件として転送レートの時間変化量を
用いてもよい。図13は、スケジューラでのパケット転
送制御処理を示すフローチャートであり、特に選択条件
として転送レートの時間変化量を用いた場合を示してい
る。この場合コネクション情報記憶部202は、コネク
ション毎に転送レートの時間変化量を記憶している必要
がある。
【0093】デフォルトキューとコネクション毎のキュ
ー群は、それぞれに割り当てられたタイミングに処理す
ることとする。スケジューラ211では、出力端子21
5でパケット転送が終了し次に転送すべきパケットを選
択する時、デフォルトキューを処理するタイミングであ
るか判断する(ステップG01)。ここで、デフォルト
キューを処理するタイミングである場合(ステップG0
1:YES)、次にデフォルトキューが空であるかどう
かチェックする(ステップG11)。もし空であれば
(ステップG06:YES)、すぐにステップG01に
戻る。空でなければ(ステップG06:NO)、デフォ
ルトキューの先頭パケットを送信し(ステップG1
2)、再びステップG01に戻る。
【0094】一方、デフォルトキューを処理するタイミ
ングでない場合(ステップG01:NO)、まず第2ス
ケジューラ214は、優先グループ205に空でないキ
ューが存在するかどうかをチェックする。もしあれば、
優先グループ205を選択し、無ければ非優先グループ
206を選択する(ステップG02)。ただし、ここで
は優先グループに空でないキューがある場合は必ず優先
グループのキューを処理する、としているが、任意のア
ルゴリズムで優先グループ205と非優先グループ20
6の選択を行って構わない。
【0095】このとき、第2スケジューラ214が非優
先グループ206を選択した場合は(ステップG02:
NO)、第1スケジューラ213が、非優先グループ2
06内のキューを、宛先の通信装置までの無線リンク固
有の伝搬状態の良い順に並べ替えを行う(ステップG0
8)。ここでは並べ替えのための、無線リンクの状態の
良さを示す指標としてC/I比を例として用いている。
ただし、ここでの並べ替えに用いるアルゴリズムは任意
のもので構わない。並べ替えの後、最もC/I比の高い
キューの先頭のパケットを送信する(ステップG0
9)。
【0096】一方、第2スケジューラ214が優先グル
ープを選択した場合(ステップG02:YES)、第1
スケジューラ212は、優先グループ205のキューの
中から、転送レートの時間変化量が正で最も大きいキュ
ーの先頭パケットを送信する(ステップG03)。次
に、送信したキューの転送レートの時間変化量が、優先
グループ、非優先グループの閾値である20kbps/
sを超えたかどうかチェックする(ステップG04)。
ただし、この閾値は任意で構わない。
【0097】ここで、20kbps/sより大きい場合
には、コネクション情報記憶部202に転送レートの時
間変化量の更新を行う(ステップG05)。20kbp
s/sより小さい場合には、キューを非優先グループ2
06に移動し(ステップG06)、コネクション情報記
憶部202に転送レートの時間変化量の更新に加えて、
キューグループ情報を非優先グループに変更する(ステ
ップG07)。
【0098】このようにしてパケットの送信まで完了し
た後、キュー207〜210の全てのキューが空である
かどうかチェックする(ステップG10)。全てのキュ
ーが空でなければ(ステップG05:NO)、再びステ
ップG01の処理に戻る。全てのキューが空であれば
(ステップG05:YES)、一連のパケット転送制御
処理を終了する。
【0099】このように、本実施の形態は、スケジュー
ラ211で、各コネクションをそのコネクションの確立
後に転送した受信パケットのデータ量に基づき複数のグ
ループに分類し、次に受信パケットを転送するコネクシ
ョンを選択する際、各グループのうち、データ量が少な
いグループに属するコネクションを優先して選択するよ
うにしたものである。また、コネクションの確立後から
の経過時間や、コネクションの転送レートの時間変化に
基づき複数のグループに分類し、そのグループ単位でコ
ネクションを優先して選択するようにしたものである。
【0100】したがって、第1の実施の形態と同様の作
用効果が得られるとともに、コネクション選択の際、特
定のコネクションへ偏ることなく、グループという幅を
持ってさらに公平にコネクションを選択できる。また、
第1の実施の形態と同様に、コネクション毎にキューを
持たず、スケジューラ211において優先制御を行わな
い場合でも、キューマネージャ204により、非優先グ
ループに属するコネクションかでパケット廃棄率を高く
することで同様の作用効果が得られる。
【0101】
【発明の効果】以上説明したように、本発明は、パケッ
ト分類部で、送信端末から受信した受信パケットのヘッ
ダに含まれる1つ以上のフィールドから、送信端末と受
信端末との間でデータの転送に使用されるコネクション
を識別し、その確立および解放を検出し、パケット分類
部で識別された各コネクションのうち、そのコネクショ
ンの確立後に転送した受信パケットのデータ量が少ない
コネクションの受信パケットをスケジューラで優先して
転送するようにしたものである。あるいは、コネクショ
ンの確立後からの経過時間が短いコネクションや、コネ
クションの転送レートの時間変化が正でかつその時間変
化が大きいコネクションの受信パケットを優先して転送
するようにしたものである。
【0102】したがって、一般的なTCPでは、コネク
ション確立直後は低い送信レートから始めて指数関数的
に増加させるスロースタート動作や、コネクション確立
後しばらく経過してから送信レートを線形的に増加させ
る輻輳回避動作に起因して、データサイズの小さいコネ
クションでは、上記スロースタート動作の間にコネクシ
ョンが終了してスループットが小さくなる傾向があった
が、本発明によれば、各コネクションで転送するデータ
量に束縛されることなく、転送するデータサイズの異な
るTCPコネクション間の公平性を向上させることがで
きる。
【図面の簡単な説明】
【図1】 本発明の一実施の形態にかかるパケット転送
装置の適用例である。
【図2】 本発明の第1の実施の形態にかかるパケット
転送装置の構成を示すブロック図である。
【図3】 コンピュータからなるパケット転送装置の構
成例である。
【図4】 TCPコネクションでのパケット転送手順を
示すシーケンス図である。
【図5】 コネクション情報記憶部で記憶するコネクシ
ョン毎の情報例である。
【図6】 本発明の第1の実施の形態にかかるパケット
転送制御処理を示すフローチャートである。
【図7】 本発明の第1の実施の形態にかかる他のパケ
ット転送制御処理を示すフローチャートである。
【図8】 本発明の第1の実施の形態にかかるスケジュ
ーラでの他のパケット転送制御処理を示すフローチャー
トである。
【図9】 本発明の第2の実施の形態にかかるパケット
転送装置の構成を示すブロック図である。
【図10】 コネクション情報記憶部で記憶するコネク
ション毎の情報例である。
【図11】 本発明の第2の実施の形態にかかるパケッ
ト転送制御処理を示すフローチャートである。
【図12】 本発明の第2の実施の形態にかかる他のパ
ケット転送制御処理を示すフローチャートである。
【図13】 本発明の第2の実施の形態にかかる他のパ
ケット転送制御処理を示すフローチャートである。
【図14】 従来のパケット転送装置の構成を示すブロ
ック図である。
【図15】 従来のパケット転送制御処理を示すフロー
チャートである。
【符号の説明】
01,07…通信装置、02…無線リンク、03…パケ
ット転送装置、04,06…有線リンク、05…パケッ
トネットワーク、11…下りリンク、12…上りリン
ク、31…入出力I/F部、32…演算処理部、33…
記憶部、34…キューバッファ、35…バス、101…
入力端子、102…コネクション情報記憶部、103…
パケット分類部、104…キューマネージャ、105…
キュー集合、106〜108…キュー、109…スケジ
ューラ、110…出力端子、111…デフォルトキュ
ー、201…入力端子、202…コネクション情報記憶
部、203…パケット分類部、204…キューマネージ
ャ、205…優先グループ、206…非優先グループ、
207〜210…キュー、211…スケジューラ、21
2,213…第1スケジューラ、214…第2スケジュ
ーラ、215…出力端子、216…デフォルトキュー。
───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 5K030 GA03 HA08 KX29 LA03 LC02 LE05 MA13 MB15 5K067 AA21 BB21 CC08 DD11 DD17 DD51 EE02 EE10 EE16 HH17 JJ17

Claims (24)

    【特許請求の範囲】
  1. 【請求項1】 パケット通信網を介して確立したコネク
    ションを用いて、送信端末と受信端末との間でデータ通
    信を行う際、前記パケット通信網に接続されて前記送信
    端末からのパケットを前記受信端末へ転送するパケット
    転送装置において、 前記送信端末から受信した受信パケットのヘッダに含ま
    れる1つ以上のフィールドから、送信端末と受信端末と
    の間でデータの転送に使用されるコネクションを識別
    し、その確立および解放を検出するパケット分類部と、 前記パケット分類部で識別された各コネクションのう
    ち、そのコネクションの確立後に転送した受信パケット
    のデータ量が少ないコネクションの受信パケットを優先
    して転送するスケジューラとを備えることを特徴とする
    パケット転送装置。
  2. 【請求項2】 請求項1記載のパケット転送装置におい
    て、 前記パケット分類部で識別された各コネクションに対応
    するキューへ当該受信パケットを順次格納するキューマ
    ネージャをさらに備え、 前記スケジューラは、前記各コネクションのうち、その
    コネクションの確立後に転送した受信パケットのデータ
    量が少ないコネクションのキューから受信パケットを優
    先して転送することを特徴とするパケット転送装置。
  3. 【請求項3】 請求項1または2記載のパケット転送装
    置において、 前記スケジューラは、次に受信パケットを転送するコネ
    クションを選択する際、前記データ量に代えて、前記各
    コネクションのうち、そのコネクションの確立後からの
    経過時間が短いコネクションを優先して選択することを
    特徴とするパケット転送装置。
  4. 【請求項4】 請求項1または2記載のパケット転送装
    置において、 前記スケジューラは、次に受信パケットを転送するコネ
    クションを選択する際、前記データ量に代えて、前記各
    コネクションのうち、そのコネクションの転送レートの
    時間変化が正でかつその時間変化が大きいコネクション
    を優先して選択することを特徴とするパケット転送装
    置。
  5. 【請求項5】 請求項1または2記載のパケット転送装
    置において、 前記スケジューラは、前記各コネクションをそのコネク
    ションの確立後に転送した受信パケットのデータ量に基
    づき複数のグループに分類し、次に受信パケットを転送
    するコネクションを選択する際、前記各グループのう
    ち、前記データ量が少ないグループに属するコネクショ
    ンを優先して選択することを特徴とするパケット転送装
    置。
  6. 【請求項6】 請求項3記載のパケット転送装置におい
    て、 前記スケジューラは、前記各コネクションをそのコネク
    ションの確立後からの経過時間に基づき複数のグループ
    に分類し、次に受信パケットを転送するコネクションを
    選択する際、前記各グループのうち、前記経過時間が短
    いグループに属するコネクションを優先して選択するこ
    とを特徴とするパケット転送装置。
  7. 【請求項7】 請求項4記載のパケット転送装置におい
    て、 前記スケジューラは、前記各コネクションをそのコネク
    ションの転送レートの時間変化に基づき複数のグループ
    に分類し、次に受信パケットを転送するコネクションを
    選択する際、前記各グループのうち、前記時間変化が正
    でかつその時間変化が大きいグループに属するコネクシ
    ョンを優先して選択することを特徴とするパケット転送
    装置。
  8. 【請求項8】 請求項1〜7記載のパケット転送装置に
    おいて、 前記コネクションでは、トランスポート層プロトコルと
    してTCPを用いることを特徴とするパケット転送装
    置。
  9. 【請求項9】 パケット通信網を介して確立したコネク
    ションを用いて、送信端末と受信端末との間でデータ通
    信を行う際、前記パケット通信網に接続されて前記送信
    端末からのパケットを前記受信端末へ転送するパケット
    転送装置で用いるパケット転送方法において、 前記送信端末から受信した受信パケットのヘッダに含ま
    れる1つ以上のフィールドから、送信端末と受信端末と
    の間でデータの転送に使用されるコネクションを識別し
    て、その確立および解放を検出し、 これら識別された各コネクションのうち、そのコネクシ
    ョンの確立後に転送した受信パケットのデータ量が少な
    いコネクションの受信パケットを優先して転送すること
    を特徴とするパケット転送方法。
  10. 【請求項10】 請求項9記載のパケット転送方法にお
    いて、 前記識別された各コネクションに対応するキューへ当該
    受信パケットを順次格納し、 前記各コネクションのうち、そのコネクションの確立後
    に転送した受信パケットのデータ量が少ないコネクショ
    ンのキューから受信パケットを優先して転送することを
    特徴とするパケット転送方法。
  11. 【請求項11】 請求項9または10記載のパケット転
    送方法において、 次に受信パケットを転送するコネクションを選択する
    際、前記データ量に代えて、前記各コネクションのう
    ち、そのコネクションの確立後からの経過時間が短いコ
    ネクションを優先して選択することを特徴とするパケッ
    ト転送方法。
  12. 【請求項12】 請求項9または10記載のパケット転
    送方法において、 次に受信パケットを転送するコネクションを選択する
    際、前記データ量に代えて、前記各コネクションのう
    ち、そのコネクションの転送レートの時間変化が正でか
    つその時間変化が大きいコネクションを優先して選択す
    ることを特徴とするパケット転送方法。
  13. 【請求項13】 請求項9または10記載のパケット転
    送方法において、 前記各コネクションをそのコネクションの確立後に転送
    した受信パケットのデータ量に基づき複数のグループに
    分類し、 次に受信パケットを転送するコネクションを選択する
    際、前記各グループのうち、前記データ量が少ないグル
    ープに属するコネクションを優先して選択することを特
    徴とするパケット転送方法。
  14. 【請求項14】 請求項11記載のパケット転送方法に
    おいて、 前記各コネクションをそのコネクションの確立後からの
    経過時間に基づき複数のグループに分類し、 次に受信パケットを転送するコネクションを選択する
    際、前記各グループのうち、前記経過時間が短いグルー
    プに属するコネクションを優先して選択することを特徴
    とするパケット転送方法。
  15. 【請求項15】 請求項12記載のパケット転送方法に
    おいて、 前記各コネクションをそのコネクションの転送レートの
    時間変化に基づき複数のグループに分類し、 次に受信パケットを転送するコネクションを選択する
    際、前記各グループのうち、前記時間変化が正でかつそ
    の時間変化が大きいグループに属するコネクションを優
    先して選択することを特徴とするパケット転送方法。
  16. 【請求項16】 請求項9〜15記載のパケット転送方
    法において、 前記コネクションでは、トランスポート層プロトコルと
    してTCPを用いることを特徴とするパケット転送方
    法。
  17. 【請求項17】 パケット通信網を介して確立したコネ
    クションを用いて、送信端末と受信端末との間でデータ
    通信を行う際、前記パケット通信網に接続されて前記送
    信端末からのパケットを前記受信端末へ転送するパケッ
    ト転送装置のコンピュータで、 前記送信端末から受信した受信パケットのヘッダに含ま
    れる1つ以上のフィールドから、送信端末と受信端末と
    の間でデータの転送に使用されるコネクションを識別し
    て、その確立および解放を検出するステップと、 これら識別された各コネクションのうち、そのコネクシ
    ョンの確立後に転送した受信パケットのデータ量が少な
    いコネクションの受信パケットを優先して転送するステ
    ップとを実行させるためのプログラム。
  18. 【請求項18】 請求項17記載のプログラムにおい
    て、 前記受信パケットを優先して転送する際、前記識別され
    た各コネクションに対応するキューへ当該受信パケット
    を順次格納し、前記各コネクションのうち、そのコネク
    ションの確立後に転送した受信パケットのデータ量が少
    ないコネクションのキューから受信パケットを優先して
    転送するステップを実行させるためのプログラム。
  19. 【請求項19】 請求項17または18記載のプログラ
    ムにおいて、 次に受信パケットを転送するコネクションを選択する
    際、前記データ量に代えて、前記各コネクションのう
    ち、そのコネクションの確立後からの経過時間が短いコ
    ネクションを優先して選択するステップを実行させるた
    めのプログラム。
  20. 【請求項20】 請求項17または18記載のプログラ
    ムにおいて、 次に受信パケットを転送するコネクションを選択する
    際、前記データ量に代えて、前記各コネクションのう
    ち、そのコネクションの転送レートの時間変化が正でか
    つその時間変化が大きいコネクションを優先して選択す
    るステップを実行させるためのプログラム。
  21. 【請求項21】 請求項17または18記載のプログラ
    ムにおいて、 前記各コネクションをそのコネクションの確立後に転送
    した受信パケットのデータ量に基づき複数のグループに
    分類するステップと、 次に受信パケットを転送するコネクションを選択する
    際、前記各グループのうち、前記データ量が少ないグル
    ープに属するコネクションを優先して選択するステップ
    を実行させるためのプログラム。
  22. 【請求項22】 請求項19記載のプログラムにおい
    て、 前記各コネクションをそのコネクションの確立後からの
    経過時間に基づき複数のグループに分類するステップ
    と、 次に受信パケットを転送するコネクションを選択する
    際、前記各グループのうち、前記経過時間が短いグルー
    プに属するコネクションを優先して選択するステップを
    実行させるためのプログラム。
  23. 【請求項23】 請求項20記載のプログラムにおい
    て、 前記各コネクションをそのコネクションの転送レートの
    時間変化に基づき複数のグループに分類するステップ
    と、 次に受信パケットを転送するコネクションを選択する
    際、前記各グループのうち、前記時間変化が正でかつそ
    の時間変化が大きいグループに属するコネクションを優
    先して選択するステップを実行させるためのプログラ
    ム。
  24. 【請求項24】 請求項17〜23記載のプログラムに
    おいて、 前記コネクションでは、トランスポート層プロトコルと
    してTCPを用いることを特徴とするプログラム。
JP2001351252A 2001-11-16 2001-11-16 パケット転送装置、方法およびプログラム Expired - Fee Related JP3726741B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2001351252A JP3726741B2 (ja) 2001-11-16 2001-11-16 パケット転送装置、方法およびプログラム
US10/294,702 US7385986B2 (en) 2001-11-16 2002-11-15 Packet transfer method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001351252A JP3726741B2 (ja) 2001-11-16 2001-11-16 パケット転送装置、方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2003152792A true JP2003152792A (ja) 2003-05-23
JP3726741B2 JP3726741B2 (ja) 2005-12-14

Family

ID=19163582

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001351252A Expired - Fee Related JP3726741B2 (ja) 2001-11-16 2001-11-16 パケット転送装置、方法およびプログラム

Country Status (2)

Country Link
US (1) US7385986B2 (ja)
JP (1) JP3726741B2 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100546002B1 (ko) * 2003-11-25 2006-01-25 한국과학기술원 무선이동통신시스템의 자원 할당방법 및 패킷 그루핑 기능을 갖는 기지국 시스템과 단말 시스템
JP2007228377A (ja) * 2006-02-24 2007-09-06 Mitsubishi Electric Corp 通信装置およびコネクション選択方法
JP2008118478A (ja) * 2006-11-06 2008-05-22 Nec Corp 通信制御装置、通信制御システム、通信制御方法及び通信制御プログラム
JP2015204466A (ja) * 2014-04-10 2015-11-16 株式会社東芝 データ転送装置、データ転送方法および通信装置
WO2016157914A1 (ja) * 2015-04-02 2016-10-06 日本電気株式会社 ネットワークシステム、通信制御方法、及び、記録媒体
JP2018061287A (ja) * 2017-12-12 2018-04-12 株式会社東芝 データ転送装置、データ転送方法および通信装置

Families Citing this family (71)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7339943B1 (en) 2002-05-10 2008-03-04 Altera Corporation Apparatus and method for queuing flow management between input, intermediate and output queues
US7320037B1 (en) 2002-05-10 2008-01-15 Altera Corporation Method and apparatus for packet segmentation, enqueuing and queue servicing for multiple network processor architecture
US7606248B1 (en) 2002-05-10 2009-10-20 Altera Corporation Method and apparatus for using multiple network processors to achieve higher performance networking applications
US7593334B1 (en) 2002-05-20 2009-09-22 Altera Corporation Method of policing network traffic
US7336669B1 (en) 2002-05-20 2008-02-26 Altera Corporation Mechanism for distributing statistics across multiple elements
US7277437B1 (en) * 2002-05-20 2007-10-02 Altera Corporation Packet classification method
KR100473814B1 (ko) * 2003-07-16 2005-03-14 한국전자통신연구원 직병렬 버스정합을 이용한 이중화시스템 및 방법
WO2005048614A1 (fr) * 2003-11-14 2005-05-26 Zte Corporation Procede de programmation de paquets pour systeme de communication sans fil
US7296273B2 (en) * 2003-12-04 2007-11-13 International Business Machines Corporation System, method and program tool to reset an application
US7422152B2 (en) 2004-05-13 2008-09-09 Cisco Technology, Inc. Methods and devices for providing scalable RFID networks
US7710911B2 (en) * 2004-06-10 2010-05-04 Interdigital Technology Corporation Method and apparatus for dynamically allocating H-ARQ processes
US7720063B2 (en) * 2004-07-02 2010-05-18 Vt Idirect, Inc. Method apparatus and system for accelerated communication
US7509431B2 (en) * 2004-11-17 2009-03-24 Cisco Technology, Inc. Performing message and transformation adapter functions in a network element on behalf of an application
US7664879B2 (en) * 2004-11-23 2010-02-16 Cisco Technology, Inc. Caching content and state data at a network element
US7987272B2 (en) 2004-12-06 2011-07-26 Cisco Technology, Inc. Performing message payload processing functions in a network element on behalf of an application
US7496750B2 (en) * 2004-12-07 2009-02-24 Cisco Technology, Inc. Performing security functions on a message payload in a network element
US7725934B2 (en) * 2004-12-07 2010-05-25 Cisco Technology, Inc. Network and application attack protection based on application layer message inspection
US7606267B2 (en) * 2004-12-10 2009-10-20 Cisco Technology, Inc. Reducing the sizes of application layer messages in a network element
US8082304B2 (en) * 2004-12-10 2011-12-20 Cisco Technology, Inc. Guaranteed delivery of application layer messages by a network element
US20060140193A1 (en) * 2004-12-29 2006-06-29 Nokia Corporation Optimization of a TCP connection
US7551567B2 (en) * 2005-01-05 2009-06-23 Cisco Technology, Inc. Interpreting an application message at a network element using sampling and heuristics
US20060155862A1 (en) * 2005-01-06 2006-07-13 Hari Kathi Data traffic load balancing based on application layer messages
US7698416B2 (en) * 2005-01-25 2010-04-13 Cisco Technology, Inc. Application layer message-based server failover management by a network element
US7345585B2 (en) 2005-08-01 2008-03-18 Cisco Technology, Inc. Network based device for providing RFID middleware functionality
US8218770B2 (en) * 2005-09-13 2012-07-10 Agere Systems Inc. Method and apparatus for secure key management and protection
TWI276334B (en) * 2005-09-16 2007-03-11 Ind Tech Res Inst Methods for allocating transmission bandwidths of a network
JP2007233977A (ja) * 2006-03-03 2007-09-13 Oki Electric Ind Co Ltd マルチタスクシステムの排他制御方法
US7756134B2 (en) * 2006-05-02 2010-07-13 Harris Corporation Systems and methods for close queuing to support quality of service
US20070258445A1 (en) * 2006-05-02 2007-11-08 Harris Corporation Systems and methods for protocol filtering for quality of service
US7894509B2 (en) * 2006-05-18 2011-02-22 Harris Corporation Method and system for functional redundancy based quality of service
US8064464B2 (en) * 2006-06-16 2011-11-22 Harris Corporation Method and system for inbound content-based QoS
US8516153B2 (en) 2006-06-16 2013-08-20 Harris Corporation Method and system for network-independent QoS
US20070291768A1 (en) * 2006-06-16 2007-12-20 Harris Corporation Method and system for content-based differentiation and sequencing as a mechanism of prioritization for QOS
US7990860B2 (en) 2006-06-16 2011-08-02 Harris Corporation Method and system for rule-based sequencing for QoS
US7856012B2 (en) 2006-06-16 2010-12-21 Harris Corporation System and methods for generic data transparent rules to support quality of service
US7916626B2 (en) 2006-06-19 2011-03-29 Harris Corporation Method and system for fault-tolerant quality of service
US8730981B2 (en) 2006-06-20 2014-05-20 Harris Corporation Method and system for compression based quality of service
US20070291765A1 (en) * 2006-06-20 2007-12-20 Harris Corporation Systems and methods for dynamic mode-driven link management
US7769028B2 (en) 2006-06-21 2010-08-03 Harris Corporation Systems and methods for adaptive throughput management for event-driven message-based data
US20080013559A1 (en) * 2006-07-14 2008-01-17 Smith Donald L Systems and methods for applying back-pressure for sequencing in quality of service
US20080025318A1 (en) * 2006-07-31 2008-01-31 Harris Corporation Systems and methods for dynamically customizable quality of service on the edge of a network
US8300653B2 (en) * 2006-07-31 2012-10-30 Harris Corporation Systems and methods for assured communications with quality of service
JP4884132B2 (ja) * 2006-08-17 2012-02-29 富士通株式会社 電話システム、接続制御方法、接続制御装置、及びコンピュータプログラム
CN101140549B (zh) * 2006-09-07 2010-05-12 中兴通讯股份有限公司 核心处理器与微引擎的上报、下发及内存控制通信方法
US7990989B2 (en) * 2006-09-16 2011-08-02 Mips Technologies, Inc. Transaction selector employing transaction queue group priorities in multi-port switch
US7961745B2 (en) * 2006-09-16 2011-06-14 Mips Technologies, Inc. Bifurcated transaction selector supporting dynamic priorities in multi-port switch
US8467401B1 (en) * 2006-10-04 2013-06-18 Altera Corporation Scheduling variable length packets
US7953895B1 (en) 2007-03-07 2011-05-31 Juniper Networks, Inc. Application identification
US8504622B1 (en) * 2007-11-05 2013-08-06 Mcafee, Inc. System, method, and computer program product for reacting based on a frequency in which a compromised source communicates unsolicited electronic messages
US9229792B1 (en) * 2007-11-21 2016-01-05 Marvell International Ltd. Method and apparatus for weighted message passing
US8761022B2 (en) 2007-12-26 2014-06-24 Rockstar Consortium Us Lp Tie-breaking in shortest path determination
US7911944B2 (en) * 2007-12-26 2011-03-22 Nortel Networks Limited Tie-breaking in shortest path determination
US8850029B2 (en) * 2008-02-14 2014-09-30 Mcafee, Inc. System, method, and computer program product for managing at least one aspect of a connection based on application behavior
US8400997B2 (en) * 2009-08-01 2013-03-19 Ubiquiti Networks, Inc. Wireless network communication system and method
JP5032543B2 (ja) * 2009-09-16 2012-09-26 株式会社東芝 スケジューリング装置、方法及びプログラム
US20110134930A1 (en) * 2009-12-09 2011-06-09 Mclaren Moray Packet-based networking system
US8639822B2 (en) * 2011-01-07 2014-01-28 Cisco Technology, Inc. Extending application-layer sessions based on out-of-order messages
JP5238829B2 (ja) 2011-01-13 2013-07-17 株式会社東芝 データ収集装置、データ収集プログラム、およびデータ収集システム
US8811173B2 (en) * 2011-02-04 2014-08-19 Alcatel Lucent Method of managing user traffic to prevent aggressive users from abusing network resources
US8949496B2 (en) * 2011-03-25 2015-02-03 Adc Telecommunications, Inc. Double-buffer insertion count stored in a device attached to a physical layer medium
EP2689566B1 (en) 2011-03-25 2015-09-16 ADC Telecommunications, Inc. Identifier encoding scheme for use with multi-path connectors
US9497098B2 (en) 2011-03-25 2016-11-15 Commscope Technologies Llc Event-monitoring in a system for automatically obtaining and managing physical layer information using a reliable packet-based communication protocol
MY155822A (en) * 2012-02-03 2015-12-08 Mimos Berhad A system and method for differentiating backhaul traffic of wireless network
US9973438B2 (en) 2013-10-07 2018-05-15 Telefonaktiebolaget Lm Ericsson (Publ) Downlink flow management
US20150124704A1 (en) * 2013-11-06 2015-05-07 Qualcomm Incorporated Apparatus and methods for mac header compression
GB201411366D0 (en) 2014-06-26 2014-08-13 Univ Warwick Controlling packet flow in a network
JP6569374B2 (ja) * 2015-08-10 2019-09-04 富士通株式会社 スイッチ装置及びスイッチ装置の制御方法
TWI689820B (zh) * 2018-08-23 2020-04-01 瑞昱半導體股份有限公司 Usb傳輸系統、usb裝置與支援usb傳輸的主機
CN110874334B (zh) * 2018-08-30 2023-10-20 瑞昱半导体股份有限公司 Usb传输系统、usb装置与支持usb传输的主机
CN115955447B (zh) * 2023-03-13 2023-06-27 微网优联科技(成都)有限公司 一种数据传输方法、交换机及交换机系统
CN117806261B (zh) * 2024-02-29 2024-05-28 佛山慧谷科技股份有限公司 一种石材磨抛队列管理系统及方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6570876B1 (en) * 1998-04-01 2003-05-27 Hitachi, Ltd. Packet switch and switching method for switching variable length packets
US6286052B1 (en) * 1998-12-04 2001-09-04 Cisco Technology, Inc. Method and apparatus for identifying network data traffic flows and for applying quality of service treatments to the flows
US7058974B1 (en) * 2000-06-21 2006-06-06 Netrake Corporation Method and apparatus for preventing denial of service attacks
JP2002314592A (ja) 2001-04-13 2002-10-25 Nec Corp Ipパケット通信網におけるルータ、同ルータの輻輳制御方法及びプログラム
US6944678B2 (en) * 2001-06-18 2005-09-13 Transtech Networks Usa, Inc. Content-aware application switch and methods thereof

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100546002B1 (ko) * 2003-11-25 2006-01-25 한국과학기술원 무선이동통신시스템의 자원 할당방법 및 패킷 그루핑 기능을 갖는 기지국 시스템과 단말 시스템
JP2007228377A (ja) * 2006-02-24 2007-09-06 Mitsubishi Electric Corp 通信装置およびコネクション選択方法
JP2008118478A (ja) * 2006-11-06 2008-05-22 Nec Corp 通信制御装置、通信制御システム、通信制御方法及び通信制御プログラム
JP2015204466A (ja) * 2014-04-10 2015-11-16 株式会社東芝 データ転送装置、データ転送方法および通信装置
WO2016157914A1 (ja) * 2015-04-02 2016-10-06 日本電気株式会社 ネットワークシステム、通信制御方法、及び、記録媒体
JP2018061287A (ja) * 2017-12-12 2018-04-12 株式会社東芝 データ転送装置、データ転送方法および通信装置

Also Published As

Publication number Publication date
US7385986B2 (en) 2008-06-10
JP3726741B2 (ja) 2005-12-14
US20030112802A1 (en) 2003-06-19

Similar Documents

Publication Publication Date Title
JP3726741B2 (ja) パケット転送装置、方法およびプログラム
US11316795B2 (en) Network flow control method and network device
JP4490956B2 (ja) ポリシー・ベースのサービス品質
US7315892B2 (en) In-kernel content-aware service differentiation
US7480304B2 (en) Predictive congestion management in a data communications switch using traffic and system statistics
EP0932282A2 (en) TCP admission control
US11165716B2 (en) Data flow processing method and device
Zhong et al. Age-aware scheduling for asynchronous arriving jobs in edge applications
CN114079638B (zh) 多协议混合网络的数据传输方法、装置和存储介质
CN111628940A (zh) 流量调度方法、设备、系统、交换机及计算机存储介质
US10965605B2 (en) Communication system, communication control method, and communication apparatus
CN113315720A (zh) 一种数据流控制方法、系统及设备
CN113765812A (zh) 一种标记报文的方法和装置
Imputato et al. Design and implementation of the traffic control module in ns-3
US9331853B2 (en) Method and apparatus for increasing the output of a cryptographic system
US20070058649A1 (en) Packet queuing system and method
JP5611171B2 (ja) パケット処理方法及びパケット処理装置
JP2002044136A (ja) マルチプロトコルネットワーク用のフロー制御装置
WO2025035627A1 (zh) 缓存分配方法、装置以及设备
JP3950895B2 (ja) 通信システムおよび通信方法
JP3888453B2 (ja) ネットワークシステム
JP2008193310A (ja) ルータのバッファ管理方法並びにその管理方法を用いたルータ
CN118381769B (zh) 队列管理方法、装置、设备及存储介质
KR100475783B1 (ko) 계층적 우선 순위화 라운드 로빈 스케쥴링
Shpiner et al. Scaling multi-core network processors without the reordering bottleneck

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050301

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050308

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050420

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20050906

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050919

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091007

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees