JP2001251353A - Ipネットワークにおけるpmtu見積もり値検出の方法およびそのシステム - Google Patents
Ipネットワークにおけるpmtu見積もり値検出の方法およびそのシステムInfo
- Publication number
- JP2001251353A JP2001251353A JP2000062376A JP2000062376A JP2001251353A JP 2001251353 A JP2001251353 A JP 2001251353A JP 2000062376 A JP2000062376 A JP 2000062376A JP 2000062376 A JP2000062376 A JP 2000062376A JP 2001251353 A JP2001251353 A JP 2001251353A
- Authority
- JP
- Japan
- Prior art keywords
- packet
- pmtu
- network
- value
- detecting
- 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
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
で、PMTU(Path Maximum Transmission Unit)の見積も
り値を検出し、送信元のホストから受信先のターゲット
端末までの経路上を、伝送データのフラグメンテーショ
ンによる転送遅延を生じさせること無く、且つ、該伝送
データの伝送効率を向上させることができるIPネットワ
ークにおけるPMTU見積もり値検出方法を提供する。 【解決手段】送信元のホスト2から所定のパケット長を
有するICMPエコーリクエストパケット8を送出し、受信
先のターゲット端末7からのICMPレスポンスパケット1
2または各ルータ3〜6からのICMPエコーパケット10
を受信し、その受信結果に応じてパケット長を変化させ
ながら繰り返しICMPエコーリクエストパケット8を送出
することでPMTU見積もり値を検出する。
Description
tocol)ネットワークにおけるPMTU(Path MaximumTrans
mission Unit:経路上の最大転送長)見積もり値の検出
方法およびそのシステムに関する。
方法の一例が、特開平11−168492号公報に記載
されている。
パケットを中継するルータ装置を示したものである。こ
の図10において、301〜305はルータ、311〜
316はネットワーク、321、322はネットワーク
に接続したホスト、331、332はネットワークイン
タフェース、341は経路表、342はMTU(Maximum T
ransmission Unit)記憶領域、351はホスト321が
ホスト322に宛てて送出したIPパケットを示してい
る。ここで、ホスト321からホスト322へ経路上の
ネットワークMTUが、ネットワーク311において15
00、ネットワーク313において1200、ネットワ
ーク315において1000、ネットワーク316にお
いて1500だとする。
御プロトコルのパケットの構造例を示したものである。
この図11において、400は経路制御プロトコルのパ
ケット、401はネットワークアドレス、402は宛先
ネットワークまでの距離、403はネットワークのMTU
である。
による中継要領について説明する。ルータ305は、経
路制御プロトコルのパケット400中のネットワークア
ドレス401にネットワーク316を、宛先ネットワー
クまでの距離402を1に、ネットワークのMTU403
を1500に設定して、ネットワーク315内に送信
し、ネットワーク316への経路があることをMTUが1
500であることとともにネットワーク315内に通知
する。
ットワーク316へはルータ305を経由すれば良いと
認識するが、ネットワーク315のMTUは1000なの
で、通知されたMTU1500より小さいため、経路表のM
TU記憶領域には1000と記録する。さらに、ルータ3
04は、経路制御プロトコルのパケット400を用い、
ネットワーク316への経路があることを、この経路上
の最小のMTUが1000であることとともにネットワー
ク313内に通知する。
ットワーク316へはルータ304を経由すれば良いと
認識し、ネットワーク313のMTUは1200である
が、通されたMTUが1000であるため、経路表のMTU記
憶領域には1000と記録する。さらに、ルータ302
は、経路制御プロトコルのパケット400を用い、ネッ
トワーク316への経路があることを、この経路上の最
小のMTUが1000であることとともにネットワーク3
11内に通知する。
ットワーク316へはルータ304を経由すれば良いと
認識するとともに、経路上の最小のMTUが1000であ
ることを知る。そのため、ホスト321がIPパケット3
51をホスト322に宛てて送信する際には、ネットワ
ーク311のMTUが1500であるにもかかわらず、IP
パケットを1000バイトにフラグメント処理してから
送信すれば良いことが分かる。
元のホストが宛先ホストまでの経路上の最小のMTUを把
握して、そのMTUに収まる範囲のパケットを送信できる
ようにし、IPルータにおいて中継の遅延を招くフラグメ
ント処理を行わずに高速でパケットを中継ですることの
できる、ルータの中継方法及びルータ装置を提供すると
いう所期の課題(目的)を達成することができる。そし
て、従来例のルータで構成したネットワークにおいて
は、IPパケットを送信する際に宛先ネットワークまでの
経路のMTUを経路表を参照するだけで事前に知ることが
できる。これにより経路上のルータで度々フラグメント
処理が行われることのないように最適なパケットサイズ
でパケットを送信することができ、ルータを経由する際
の遅延を少なくして高速で通信を行うことができるとい
う効果を発揮する。
には、次のような問題点があった。
ストまでの経路上の最小のMTUを把握して、そのMTUに収
まる範囲のパケットを送信できるようにし、IPルータに
おいて中継の遅延を招くフラグメント処理を行わずに高
速でパケットを中継するために、例えば、現在、全世界
に敷設されているルータ装置を全て、この従来例の方法
に対応したルータに交換する必要があり、経済上現実的
ではないということである。
トワーク上のルータの機能に依存しており、ネットワー
ク上のルータ自体が従来例の方法に対応していないもの
が1つでも存在した場合、送信元から宛先ネットワーク
へ至る経路上の最小のMTUの値が、送信元へ通知されな
いためである。
ルータを必要としないで、PMTUの見積もり値を検出し
て、送信元のホストから受信先のターゲット端末までの
経路上を、伝送データのフラグメンテーションによる転
送遅延を生じさせること無く、且つ、該伝送データの伝
送効率を向上させることができるIPネットワークにおけ
るPMTU見積もり値検出する方法およびシステムの構築を
可能にすることを1つの目的とする。
め、請求項1記載の発明は、IP(Internet Protocol)
ネットワークにおけるPMTU(Path Maximum Transmissio
n Unit;経路上の最大転送長)見積もり値の検出方法で
あって、送信元のホストから所定のパケット長を有する
見積もり値検出用の診断パケットを、返信を要求するパ
ケットとして送出する第1の過程と、受信先のターゲッ
ト端末からの診断パケットに対する返信パケットの受信
状態を判定する第2の過程と、第2の過程における判定
結果に応じて診断パケットのパケット長を設定する第3
の過程とを有し、繰り返しパケット長が異なる診断パケ
ットを送出することによって、IPネットワークにおける
PMTU見積もり値を検出することを特徴とする。請求項2
記載の発明は、診断パケットのパケット長を複数のパケ
ット長をあらかじめ定めたテーブルを参照することによ
って設定することを特徴とする。請求項3記載の発明
は、診断パケットのパケット長を所定の差分値で変化さ
せながら設定することを特徴とする。請求項4記載の発
明は、IP(Internet Protocol)ネットワークにおけるP
MTU(Path Maximum Transmission Unit;経路上の最大
転送長)見積もり値の検出システムであって、送信元の
ホストから所定のパケット長を有する見積もり値検出用
の診断パケットを、返信を要求するパケットとして送出
する第1の手段と、受信先のターゲット端末からの診断
パケットに対する返信パケットの受信状態を判定する第
2の手段と、第2の手段による判定結果に応じて診断パ
ケットのパケット長を設定する第3の手段とを有し、繰
り返しパケット長が異なる診断パケットを送出すること
によって、IPネットワークにおけるPMTU見積もり値を検
出することを特徴とする。請求項5記載の発明は、IP
(Internet Protocol)ネットワークにおけるPMTU(Pat
h Maximum Transmission Unit;経路上の最大転送長)
見積もり値の検出を行うためのプログラムを記録した記
録媒体であって、送信元のホストから所定のパケット長
を有する見積もり値検出用の診断パケットを、返信を要
求するパケットとして送出する第1の過程と、受信先の
ターゲット端末からの診断パケットに対する返信パケッ
トの受信状態を判定する第2の過程と、第2の過程にお
ける判定結果に応じて診断パケットのパケット長を設定
する第3の過程とを実行し、繰り返しパケット長が異な
る診断パケットを送出することによって、IPネットワー
クにおけるPMTU見積もり値を検出するためのIPネットワ
ークにおけるPMTU見積もり値検出用のプログラムを記録
したコンピュータ読み取り可能な記録媒体である。
施の形態について説明する。
一実施形態としてのIPネットワーク1におけるPMTU検出
システムが示されている。
ームデータを供給する送信元であるホスト2と、第1の
ルータ3、第2のルータ4、第Mのルータ5(Mは3以上
の整数)、第Nのルータ6(Nは4以上の整数)、および
ホスト2から例えば動画ストリームデータの供給を受け
る受信先であるターゲット端末7とから構成される。ホ
スト2と第1のルータ3はパス9で、そしてターゲット
端末7と第Nのルータ6はパス11で、ネットワーク的
に接続されている。また、第1のルータ3〜第Nのルー
タ6も、ネットワーク的に接続されていて、本システム
全体がネットワークを構成している。
よび制御情報を取り扱うプロトコルであり、且つIET
F(Internet Engineering Task Force)で規定されて
いるICMP(Internet Control Message Protocol)にお
ける診断用パケットのICMPエコーリクエストパケット8
を、ターゲット端末7へ送信できる機能をホスト2が備
えており、ICMPにおけるICMP NEEDFRAGエラーパケット
10をホスト2へ返信する機能を第1のルータ3〜第N
のルータ6が備えており、そしてICMPエコーレスポンス
パケット12をホスト2へ返信する機能をターゲット端
末7が備える構成としてある。
と、ICMP NEEDFRAGエラーパケット10は、既知の技術
であるので説明は省略する。
明の一実施形態としてのIPネットワークにおけるPMTUを
検出するソフトウェアの構成が示されている。
2を参照すると、例えばホスト2にソフト的に組み込ま
れており、ターゲット端末7のIPアドレスを取得するタ
ーゲット端末のIP取得部30と、ターゲット端末のIP取
得部30が取得したIPアドレスを有するターゲット端末
7にいたる経路上において各種データリンク方式のネッ
トワークにおけるMTUの値がテーブル形式で格納されて
いるMTUテーブル部32と、該MTUテーブル部32からま
たはホスト2が受信したメッセージパケットからMTUの
値を取得するMTU取得部31と、検出するPMTUの見積も
り値を格納するPMTU見積もりレジスタ部とICMP NEEDFR
AGエラーが生起した回数を格納するICMP NEEDFRAGエラ
ーカウンタ部とPMTUを検出するための診断パケットであ
るTESTメッセージパケットのデータグラムのサイズを格
納するTESTパケットサイズレジスタ部とから構成される
レジスタ部35と、該レジスタ部35に値を格納するレ
ジスタセット部33と、レジスタ部35のTESTパケット
サイズレジスタ部に格納されている値のデータグラムサ
イズを有するTESTメッセージパケットを生成するTESTメ
ッセージパケット生成部34と、TESTメッセージパケッ
ト生成部34で生成されたTESTメッセージパケットをIC
MPエコーリクエストパケットとしてターゲット端末7へ
送信する第一のICMPエコーリクエストパケット送信部3
6と、該第一のICMPエコーリクエストパケット送信部3
6が送信したパケットの返信パケットがホスト2へ返信
されるまでの時間を計測する第一のタイムアウトカウン
タ部37(ここでタイムアウトカウンタはハードウェア
またはソフトウェアで構成できる)と、第一のICMPエコ
ーリクエストパケット送信部36が送信したパケットの
返信パケットを受信する第一のICMPエコーレスポンスパ
ケット受信部38と、該第一のICMPエコーレスポンスパ
ケット受信部38において受信すべき時限内すなわち第
一のタイムアウトカウンタ部37で設定されている時限
内にICMPエコーレスポンスパケットをホスト2が受信し
なかった回数を計測する第一のリトライカウンタ部39
と、第一のICMPエコーレスポンスパケット受信部38が
受信した返信パケットがICMP NEEDFRAGエラーメッセー
ジパケットであることを確認するICMP NEEDFRAGエラー
メッセージ確認部40と、第一のICMPエコーレスポンス
パケット受信部38が受信した返信パケットがICMPエコ
ーレスポンスメッセージパケットであることを確認する
ICMPエコーレスポンスメッセージ確認部41と、第一の
ICMPエコーレスポンスパケット受信部38が返信パケッ
トとしてICMP NEEDFRAGエラーメッセージパケットを受
信した回数を計測するICMP NEEDFRAGエラーカウンタ部
42と、本発明の一実施形態のプロセスを終了させる第
一の終了プロセス部43とを備える構成としてある。
一のタイムアウトカウンタ部37の時限の値を決定する
ソフトウェアの構成を示してあり、例えばターゲット端
末7のIPアドレスを取得するターゲット端末のIP取得部
30と、大きさが1バイトであるデータグラムサイズを
有するタイムアウトTESTメッセージパケットをICMPエコ
ーリクエストパケットとして生成する第二のICMPエコー
リクエストパケット生成部51と、該ICMPエコーリクエ
ストパケットをターゲット端末7へ送信する第二のICMP
エコーリクエストパケット送信部52と、該第二のICMP
エコーリクエストパケット送信部52が送信したパケッ
トの返信パケットがホスト2へ返信されるまでの時間を
計測する第二のタイムアウトカウンタ部54(ここでタ
イムアウトカウンタはハードウェアまたはソフトウェア
で構成できる)と、第二のICMPエコーリクエストパケッ
ト送信部52が送信したパケットの返信パケットを受信
する第二のICMPエコーレスポンスパケット受信部53
と、該第一のICMPエコーレスポンスパケット受信部53
において受信すべき時限内すなわち第二のタイムアウト
カウンタ部54で設定されている時限内にICMPエコーレ
スポンスパケットをホスト2が受信しなかった回数を計
測する第二のリトライカウンタ部56と、第二のICMPエ
コーレスポンスパケット受信部53が受信したICMPエコ
ーレスポンスパケットのメッセージ部に含まれるRTT(R
ound Trip Time)の値を求めるRTT計算部55と、第一
のタイムアウトカウンタ部37へ時限の値を設定するPM
TU検出プロセス・タイムアウトカウンタ・セット部57
と、図3で示されるプロセスを終了させる第二の終了プ
ロセス部58とを備える構成としてある。
態の動作につき説明する。図1、図2、図3の構成図
と、図4および図5ならびに図6のフローチャートと図
12に示す表を参照して本発明の実施形態の動作につい
て詳細に説明する。ただし、図4と図5は、2つの図で
1つの連続したフローチャートを示すものであり、図4
と図5における互いの接続点は同一の符号を付けた接合
子で示している。
トカウンタの値を求める。図6において、ステップ20
2で、ターゲット端末のIP取得部30がターゲット端末
7のIPアドレスを入手する。IPアドレスはこのPMTU検出
プロセスを利用するアプリケーションから得られる。次
に、ステップ203でデータグラムの大きさが1バイト
であるタイムアウトTESTメッセージパケットを、第二の
ICMPエコーリクエストパケット生成部51が生成する。
このタイムアウトTESTメッセージパケットは、ルータお
よびホスト間のエラーおよび制御情報を取り扱うプロト
コルであるICMPにおける診断用パケットのICMPエコーリ
クエストパケット8として且つパケットのネットワーク
における寿命時間であるTTL(TIME TO LIVE)の値を2
55msecに設定して、第二のICMPエコーリクエストパケ
ット送信部52がホスト2によりターゲット端末7へ送
信する。次に、ステップ205で、第二のタイムアウト
カウンタ部54が時限を255msecとして本フローのタ
イムアウトのカウントを開始する。次にステップ206
において、ターゲット端末7からホスト2へICMPエコー
レスポンスパケット12がステップ205の第二のタイ
ムアウトカウンタ部54がタイムアウトになる前に返信
されたか否かを、第二のICMPエコーレスポンスパケット
受信部53が確認する。ICMPエコーレスポンスパケット
12が返信されない場合は、次はステップ207へ移行
し、ICMPエコーレスポンスパケット12が返信された場
合はステップ209へ移行する。ここで、ICMPエコーレ
スポンスパケット12はICMPにおけるメッセージパケッ
トの一つであり、RTTは通信技術では既知の内容である
ため説明は省略する。
ンタ部56が、ICMPエコーレスポンスパケット12が返
信されない回数を検出しており、第二のリトライカウン
タ部56の値が3となった場合、IPネットワークシステ
ム1が不測の異常状態であると判断し、アプリケーショ
ン層にエラーを返して本プロセスを強制終了(ステップ
208)し、またリトライカウンタの値が1または2で
ある場合は、ステップ204へ移行しプロセスを継続す
る。
5が、ターゲット端末7からホスト2へ返信されたICMP
エコーレスポンスパケット12のパケットメッセージの
内容を見て、RTT(Round Trip Time)の2倍の値を計算
して求める。
9で求められたRTTの2倍の値を、図2の第一のタイム
アウトカウンタ部37の時限の値として設定し、第二の
終了プロセス部58において本プロセスを終了する(ス
テップ211)。ここで、第一のタイムアウトカウンタ
部37の時限の値として、データグラムサイズが1バイ
トであるICMPエコーリクエストパケットの、ホスト2と
ターゲット端末7の間のRTTの2倍の値としている。な
ぜなら、IPネットワーク1においては、少なくとも、RT
Tの2倍以内には、ルータ/ターゲット端末から何らか
のレスポンスがあるべきと考えるからであるが、1以上
であれば特に2という値にはこだわらなくても良い。
を、図4および図5を用いて説明する。まず、ステップ
102で、ターゲット端末のIP取得部30が、ターゲッ
ト端末7のIPアドレスを取得する。IPアドレスは、この
PMTU検出プロセスを利用するアプリケーションから得ら
れる。ステップ103では、ネットワークを介したホス
トからターゲット端末7までの最初のPMTU見積もり値と
して、MTUテーブル部32に格納されているMTUテーブ
ル、すなわち図12のMTUテーブルのグループMTUの中か
ら最も低い値から順に選択し、その値をPとする。
2のMTUテーブルは、データリンク層の設計者が類似の
方法でMTUを選択する傾向があることに基づいて作成さ
れており、類似のMTU値のグループを集めて、そしてそ
のグループでの最も低い値を、グループMTUとして採用
している。このテーブルを用いることにより、インター
ネットで利用されている通信プロトコルのTCP/IP(Tran
smission Control Protocol/Internet Protocol)で用
いられているような、ACK(Acknoledge)が返ってくる
毎にウィンドウサイズを1オクテットずつ増加するスロ
ースタートに比べ、目的の値への収束速度はすぐれてい
る。
レジスタ部35の各レジスタの値を0に、レジスタセッ
ト部33が初期化する。ステップ105では、本プロセ
スでPMTU見積もり値を検出する際に使用する診断メッセ
ージパケットのデータグラムのサイズを格納するTESTパ
ケットサイズレジスタ部35に、最初のPMTU見積もり値
としてステップ103で得たPの値からICMPヘッダ分の
20(バイト)とIPヘッダ分の20(バイト)との合計
40(バイト)を減じた値を、レジスタセット部33が
セットする。ステップ106では、レジスタ部35のTE
STパケットサイズレジスタ部に格納された値の大きさを
持つTESTメッセージパケットを、TESTメッセージパケッ
ト生成部34が生成する。
成したTESTメッセージパケットを、第一のICMPエコーリ
クエストパケット送信部36が、フラグメンテーション
を禁止するDFビットをセットしたICMPエコーリクエスト
パケット8として生成し、該ICMPエコーリクエストパケ
ット8を、図1のパス9、第1のルータ3〜第Nのルー
タ6、およびパス11を介してターゲット端末7へ、第
一のICMPエコーリクエストパケット送信部36が送信す
る。ここで、フラグメンテーションとDFビットは、IPネ
ットワーク技術において既知の技術であるので、説明は
省略する。
ケットを送信すると同時に、第一のタイムアウトカウン
タ部37のカウントを開始する。
で、第一のICMPエコーレスポンスパケット受信部38
が、ICMPエコーリクエストパケット8を待ち受ける。こ
の時点で図1のICMP NEEDFRAGエラーパケット10が、I
Pネットワーク1内のルータ3〜5からホスト2へ通知
されることがありうる。このICMP NEEDFRAGエラーパケ
ット10の意味するエラーメッセージは、ステップ10
6で採用した最初のPMTU見積もり値を減少させなくては
ならないことを意味する。
ット受信部38が、該ICMP NEEDFRAGエラーパケット1
0を受信し、且つその受信したことをICMP NEEDFRAGエ
ラーメッセージ確認部40が検出した場合、まずステッ
プ111で、ICMP NEEDFRAGエラーが発生した回数をカ
ウントするICMP NEEDFRAGエラーカウンタ部42のカウ
ントを1つ増加させ、図5のステップ114で、このIC
MP NEEDFRAGエラーパケット10が、インターネット・
プロトコルのバージョン6であるIPv6をサポートして
いるルータからの返信パケットなら含んでいるべきであ
る次のホップ(以下NEXT HOPと称する)のMTU値を含ん
でいるか否かを、ICMP NEEDFRAGエラーメッセージ確認
部40において確認する。
の値を含んでいるとICMP NEEDFRAGエラーメッセージ確
認部40が確認したなら、ステップ115において、こ
のNEXT HOPのMTU値をICMP NEEDFRAGエラーパケット10
から取得し、このNEXT HOPのMTU値からICMPヘッダ分の
20(バイト)とIPヘッダ分の20(バイト)との合計
40(バイト)を減じた値を、レジスタ部35のTESTパ
ケットサイズレジスタ部へレジスタセット部33がスト
アし、ステップ106へ移行して本プロセスを継続す
る。
MP NEEDFRAGエラーパケット10がNEXT HOPのMTU値を含
んでいないと、ICMP NEEDFRAGエラーメッセージ確認部
40が確認した場合は、ステップ116へ移行する。
ーカウンタ部42のカウンタの値を調べる。もし、ICMP
NEEDFRAGエラーカウンタ部42のカウンタの値が1な
ら、1回目のICMP NEEDFRAGエラーが発生したことにな
り、この場合はMTUテーブル部32の中で選択したグル
ープMTUの値より小さいMTU値をもつルータが、経路上に
存在することを意味し、ステップ118へ移行する。
たICMPエコーリクエストパケットの大きさ、すなわちレ
ジスタ部35のPMTU見積もりレジスタ部に格納されてい
る値からICMPヘッダ分の20(バイト)とIPヘッダ分の
20(バイト)との合計40(バイト)を減じた値に1
14(バイト)を足して、すなわち74(=114−2
0−20)を足した値をTESTパケットサイズレジスタ部
へ格納し、ステップ106へ移行し本プロセスを継続す
る。この114という値は、図12のPMTU見積もり値の
最小値68(バイト)とその次に小さいPMTU見積もり値
である296(バイト)との差の半分の値であるが、こ
の値は、1(バイト)以上で且つ114(バイト)以下
の値であれば良い。
の第一のタイムアウトカウンタ部37で設定されている
時限内に、第一のICMPエコーレスポンスパケット受信部
38が何らパケットを受信しない場合、IPネットワーク
1が一時的な高トラフィックな輻輳状態であるか、ネッ
トワークケーブルが外れているか、あるいはターゲット
端末7の電源がオフ状態であるか、いずれにせよIPネッ
トワークシステムが不測の正常状態ではないことを意味
するので、再確認のためステップ110で3回のリトラ
イカウントを第一のリトライカウンタ部39がカウント
しつつステップ107へ移行し、本プロセスを継続す
る。もし、3回のリトライ後でさえ、第一のタイムアウ
トカウンタ部37で設定されている時限内に、第一のIC
MPエコーレスポンスパケット受信部38が何らパケット
を受信しない場合は、IPネットワークシステム1が上述
の不測の異常状態であると判断し、アプリケーション層
にエラーを返して本プロセスを強制終了(ステップ11
3)する。ここで、アプリケーション層については、通
信技術における既知の技術であるため説明は省略する。
ーレスポンスパケット受信部38がICMPエコーレスポン
ス12を、ターゲット端末7から受信した場合、ステッ
プ112へ移行する。ステップ112では、ICMPエコー
レスポンスメッセージ確認部41が、ICMPエコーリクエ
ストパケット8のTESTメッセージパケットサイズを、レ
ジスタ部35のTESTパケットサイズレジスタ部から取得
し、ステップ120へ移行する。
ズにICMPヘッダ分の20(バイト)とIPヘッダ分の20
(バイト)との合計40(バイト)を足した値が、レジ
スタ部35のPMTU見積もりレジスタ部に格納されている
PMTU見積もりの値より大きい場合は、ステップ112で
取得したTESTメッセージパケットのサイズの値にICMPヘ
ッダ分の20(バイト)とIPヘッダ分の20(バイト)
との合計40(バイト)を足した値を、レジスタセット
部33がレジスタ部35のPMTU見積もりレジスタ部に格
納されている値に上書きし、ステップ116へ移行す
る。
EEDFRAGエラーカウンタ部42の値が0ならICMPNEEDFRA
Gエラーが全く発生していないことを意味し、ステップ
119へ移行する。
から、まだ採用していない最も低いグループMTUの値を
選択し、この値からICMPヘッダ分の20(バイト)とIP
ヘッダ分の20(バイト)との合計40(バイト)を減
じた値を、レジスタ部35のTESTパケットサイズレジス
タ部へ格納し、ステップ106へ移行して本プロセスを
継続する。
Gエラーカウンタ部42のカウンタの値が2以上なら、
2回以上のICMP NEEDFRAGエラーが発生したことを意味
し、本プロセスを終了する(図5のステップ117)
が、このとき、本プロセスの目的であるPMTU見積もりの
値はレジスタ部35のPMTU見積もりレジスタ部に格納さ
れているのでこれを参照すればよい。
ークにおけるPMTU検出システムを用いることにより、ホ
スト2とターゲット端末7との間のPMTUの近似値を容易
に得ることができる。
(バイト)の値を1(バイト)にすることにより、PMTU
の値を正確に、且つ容易に得ることができる。
発明の他の実施形態は、その基本的構成は上記の通りで
あるが、上記の実施形態では、図2におけるMTUテーブ
ル部32のテーブルとして図12に示すグループMTUの
値を採用しているが、この他の実施形態では、ある一定
の差を持つ等差数列的な値を採用し、その一定の差ずつ
レジスタ部35のTESTパケットサイズレジスタ部の値を
増加させている点が特徴である。
のフローチャートは、それぞれ図7ならびに図8および
図9となる。ただし、図8と図9は、2つの図で1つの
フローチャートを示すものであり、図8と図9における
互いの接続点は同一の符号の接合子で示している。図2
と図7の差分は、MTUテーブル部32が構成から削除さ
れていることである。図4および図5と図8および図9
の差分は、ステップ103、ステップ105、ステップ
119が、それぞれステップ150、ステップ151、
ステップ152へその処理内容が変更されていることで
ある。
PMTUの見積もり値として、例えば50(バイト)とす
る。この値50は、1以上で68以下であれば良い。ス
テップ151では、レジスタセット部33がレジスタ部
35のTESTパケットサイズレジスタ部に10をセット
し、ステップ104へ移行する。この10は、PMTU見積
もり値の50バイトからICMPパケットのヘッダ分の20
バイトと、IPパケットのヘッダ分の20バイトを減じた
値である。そして、ステップ152では、レジスタ部3
5のTESTパケットサイズレジスタ部の値を10だけ増加
させて、ステップ106へ移行しプロセスを継続する。
差数列的な値をPMTU見積もり値として採用することによ
り、その一定の差ずつレジスタ部35のTESTパケットサ
イズレジスタ部の値を増加させてすることで、このMTU
テーブル部32を削除した構成とすることができる。
ホストが、IPネットワークにおけるデータを転送する際
に、送信元のホストから受信先のターゲット端末までの
PMTU(Path Maximum Transmission Unit:経路上の最大
転送長)を検出して、送信元のホストが、送信元のホス
トがパケットの大きさを、予めそのPMTUの大きさ以下に
パケタイジングして送信することにより、途中のIPルー
タおよび受信先のターゲット端末においてフラグメンテ
ーションによる伝播遅延が生じることなく、そのデータ
伝送効率が向上できる方法および構成を提供する。
図2に示すように、ホスト2にソフト的に組み込まれ
た、ターゲット端末7のIPアドレスを取得するターゲッ
ト端末のIP取得部30と、各種データリンク方式のネッ
トワークにおけるMTUの値がテーブル形式で格納されて
いるMTUテーブル部32と、該MTUテーブル部32からま
たはホスト2が受信したメッセージパケットからMTUの
値を取得するMTU取得部31と、検出するPMTUの見積も
り値を格納するPMTU見積もりレジスタ部とICMP NEEDFR
AGエラーが生起した回数を格納するICMP NEEDFRAGエラ
ーカウンタ部とPMTUを検出するための診断パケットであ
るTESTメッセージパケットのデータグラムのサイズを格
納するTESTパケットサイズレジスタ部とから構成される
レジスタ部35と、該レジスタ部35に値を格納するレ
ジスタセット部33と、レジスタ部35のTESTパケット
サイズレジスタ部に格納されている値のデータグラムサ
イズを有するTESTメッセージパケットを生成するTESTメ
ッセージパケット生成部34と、TESTメッセージパケッ
ト生成部34で生成されたTESTメッセージパケットをIC
MPエコーリクエストパケットとしてターゲット端末7へ
送信する第一のICMPエコーリクエストパケット送信部3
6と、該第一のICMPエコーリクエストパケット送信部3
6が送信したパケットの返信パケットがホスト2へ返信
されるまでの時間を計測する第一のタイムアウトカウン
タ部37(ここでタイムアウトカウンタはハードウェア
またはソフトウェアで構成できる)と、第一のICMPエコ
ーリクエストパケット送信部36が送信したパケットの
返信パケットを受信する第一のICMPエコーレスポンスパ
ケット受信部38と、該第一のICMPエコーレスポンスパ
ケット受信部38において受信すべき時限内すなわち第
一のタイムアウトカウンタ部37で設定されている時限
内にICMPエコーレスポンスパケットをホスト2が受信し
なかった回数を計測する第一のリトライカウンタ部39
と、第一のICMPエコーレスポンスパケット受信部38が
受信した返信パケットがICMP NEEDFRAGエラーメッセー
ジパケットであることを確認するICMP NEEDFRAGエラー
メッセージ確認部40と、第一のICMPエコーレスポンス
パケット受信部38が受信した返信パケットがICMPエコ
ーレスポンスメッセージパケットであることを確認する
ICMPエコーレスポンスメッセージ確認部41と、第一の
ICMPエコーレスポンスパケット受信部38が返信パケッ
トとしてICMP NEEDFRAGエラーメッセージパケットを受
信した回数を計測するICMP NEEDFRAGエラーカウンタ部
42と、本発明の一実施形態のプロセスを終了させる第
一の終了プロセス部43とを設けてあることを特徴とし
ている。
フトウェアのみよりPMTU見積もり値を検出するという動
作を実行する。したがって、特別な機能を有するIPルー
タを必要としないで、PMTUの見積もり値を検出して、送
信元のホストから受信先のターゲット端末までの経路上
を、伝送データのフラグメンテーションによる転送遅延
を生じさせること無く、且つ、該伝送データの伝送効率
を向上させるIPネットワークにおけるPMTU見積もり値検
出する方法およびシステムの構築を可能にするという効
果が得られる。
限定されることなく、例えば、図12に示すようなMTU
テーブル部32を参照する構成と、ある一定の差を持つ
等差数列的な値をPMTU見積もり値として採用する構成と
を組み合わせて採用すること等、適宜変更が可能であ
る。また、上記の実施形態は、ワークステーション等の
コンピュータと、それによって実行されるプログラムと
によって実現することができ、そのプログラムはコンピ
ュータ読み取り可能な記録媒体あるいは通信回線を介し
て頒布することが可能である。
によれば、従来例がPMTU見積もり値を検出するために、
特別な機能を有するIPルータを使用している代わりに、
送信元のホストに組み込んだソフトウェアによりICMPエ
コーリクエストパケット等の診断パケットを使用してい
るので、以下の利点が得られる。
に組み込んだソフトウェアのみでPMTUの値を検出するこ
とができるので、IPネットワーク上の従来のルータを全
く変更することなく、送信元のホストが宛先ホストまで
の経路上の最小のMTUであるPMTUを把握することがで
き、そのPMTUに収まる範囲のパケットを送信元のホスト
が送信できるようにし、IPルータにおいて中継の遅延を
招くフラグメンテーションを行わずに高速でパケットを
中継することができるという効果がある。
もり値検出のシステムの構成を説明するためのブロック
図
ウェアによって実現される各機能を示すシステムフロー
図
ウェアによって実現される各機能を図2とともに示すシ
ステムフロー図
ート
すフローチャート
ート
成によるソフトウェアによって実現される各機能を示す
システムフロー図
を示すフローチャート
を図8とともに示すフローチャート
ク図
す模式図
複数の構成において使用される類似のMTU値のグループ
を集めて、そのグループでの最も低い値をグループMTU
として設定したテーブルを示す図
Claims (5)
- 【請求項1】 IP(Internet Protocol)ネットワーク
におけるPMTU(PathMaximum Transmission Unit;経路
上の最大転送長)見積もり値の検出方法であって、 送信元のホストから所定のパケット長を有する見積もり
値検出用の診断パケットを、返信を要求するパケットと
して送出する第1の過程と、 受信先のターゲット端末からの診断パケットに対する返
信パケットの受信状態を判定する第2の過程と、 第2の過程における判定結果に応じて診断パケットのパ
ケット長を設定する第3の過程とを有し、 繰り返しパケット長が異なる診断パケットを送出するこ
とによって、IPネットワークにおけるPMTU見積もり値を
検出することを特徴とするIPネットワークにおけるPMTU
見積もり値検出の方法。 - 【請求項2】 診断パケットのパケット長を複数のパケ
ット長をあらかじめ定めたテーブルを参照することによ
って設定することを特徴とする請求項1記載のIPネット
ワークにおけるPMTU見積もり値検出の方法。 - 【請求項3】 診断パケットのパケット長を所定の差分
値で変化させながら設定することを特徴とする請求項1
記載のIPネットワークにおけるPMTU見積もり値検出の方
法。 - 【請求項4】 IP(Internet Protocol)ネットワーク
におけるPMTU(PathMaximum Transmission Unit;経路
上の最大転送長)見積もり値の検出システムであって、 送信元のホストから所定のパケット長を有する見積もり
値検出用の診断パケットを、返信を要求するパケットと
して送出する第1の手段と、 受信先のターゲット端末からの診断パケットに対する返
信パケットの受信状態を判定する第2の手段と、 第2の手段による判定結果に応じて診断パケットのパケ
ット長を設定する第3の手段とを有し、 繰り返しパケット長が異なる診断パケットを送出するこ
とによって、IPネットワークにおけるPMTU見積もり値を
検出することを特徴とするIPネットワークにおけるPMTU
見積もり値検出のシステム。 - 【請求項5】 IP(Internet Protocol)ネットワーク
におけるPMTU(PathMaximum Transmission Unit;経路
上の最大転送長)見積もり値の検出を行うためのプログ
ラムを記録した記録媒体であって、 送信元のホストから所定のパケット長を有する見積もり
値検出用の診断パケットを、返信を要求するパケットと
して送出する第1の過程と、 受信先のターゲット端末からの診断パケットに対する返
信パケットの受信状態を判定する第2の過程と、 第2の過程における判定結果に応じて診断パケットのパ
ケット長を設定する第3の過程とを実行し、 繰り返しパケット長が異なる診断パケットを送出するこ
とによって、IPネットワークにおけるPMTU見積もり値を
検出するためのIPネットワークにおけるPMTU見積もり値
検出用のプログラムを記録したコンピュータ読み取り可
能な記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000062376A JP3511969B2 (ja) | 2000-03-07 | 2000-03-07 | Ipネットワークにおけるpmtu見積もり値検出の方法およびそのシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000062376A JP3511969B2 (ja) | 2000-03-07 | 2000-03-07 | Ipネットワークにおけるpmtu見積もり値検出の方法およびそのシステム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001251353A true JP2001251353A (ja) | 2001-09-14 |
JP3511969B2 JP3511969B2 (ja) | 2004-03-29 |
Family
ID=18582399
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000062376A Expired - Fee Related JP3511969B2 (ja) | 2000-03-07 | 2000-03-07 | Ipネットワークにおけるpmtu見積もり値検出の方法およびそのシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3511969B2 (ja) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100453055B1 (ko) * | 2002-03-29 | 2004-10-15 | 삼성전자주식회사 | Ip 네트워크 상에서의 경로 mtu 탐색 방법 및 그 장치 |
KR100453056B1 (ko) * | 2002-03-29 | 2004-10-15 | 삼성전자주식회사 | 동적 ip 네트워크 상에서의 pmtu 변경 방법 및 그장치 |
KR100504389B1 (ko) * | 2001-12-27 | 2005-07-27 | 스콥정보통신 주식회사 | 아이피 공유기 검출 시스템 및 그 방법 |
KR100506844B1 (ko) * | 2002-03-12 | 2005-08-11 | 주식회사 프리컴시스템 | Ip 공유 검출 방법 |
WO2006069478A1 (fr) * | 2004-12-28 | 2006-07-06 | Zte Corporation | Methode pour diagnostiquer un routeur prenant en charge une trajectoire de selection de strategie |
JP2006526302A (ja) * | 2003-05-13 | 2006-11-16 | カイヨン・インコーポレイテッド | 有線又は無線ネットワークにおけるパケットのルーティングのためのシステム及び方法 |
WO2007052764A1 (ja) * | 2005-11-07 | 2007-05-10 | Nec Corporation | セッション中継装置およびセッション中継方法 |
CN100448224C (zh) * | 2004-06-17 | 2008-12-31 | 国际商业机器公司 | 探索路径最大传输单元的方法和设备 |
EP2131619A2 (en) | 2008-06-05 | 2009-12-09 | Fujitsu Ltd. | Mobile communication system, mobile communication method, and communication apparatus |
CN113411260A (zh) * | 2015-08-31 | 2021-09-17 | 华为技术有限公司 | 一种IPv6网络中数据报文的发送方法及装置 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100375433C (zh) * | 2003-11-13 | 2008-03-12 | 中兴通讯股份有限公司 | 动态发现IPsec隧道PMTU的方法 |
-
2000
- 2000-03-07 JP JP2000062376A patent/JP3511969B2/ja not_active Expired - Fee Related
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100504389B1 (ko) * | 2001-12-27 | 2005-07-27 | 스콥정보통신 주식회사 | 아이피 공유기 검출 시스템 및 그 방법 |
KR100506844B1 (ko) * | 2002-03-12 | 2005-08-11 | 주식회사 프리컴시스템 | Ip 공유 검출 방법 |
KR100453056B1 (ko) * | 2002-03-29 | 2004-10-15 | 삼성전자주식회사 | 동적 ip 네트워크 상에서의 pmtu 변경 방법 및 그장치 |
KR100453055B1 (ko) * | 2002-03-29 | 2004-10-15 | 삼성전자주식회사 | Ip 네트워크 상에서의 경로 mtu 탐색 방법 및 그 장치 |
JP2006526302A (ja) * | 2003-05-13 | 2006-11-16 | カイヨン・インコーポレイテッド | 有線又は無線ネットワークにおけるパケットのルーティングのためのシステム及び方法 |
CN100448224C (zh) * | 2004-06-17 | 2008-12-31 | 国际商业机器公司 | 探索路径最大传输单元的方法和设备 |
US8223761B2 (en) | 2004-12-28 | 2012-07-17 | Zte Corporation | Method for diagnosing the router which supports policy-based routing |
WO2006069478A1 (fr) * | 2004-12-28 | 2006-07-06 | Zte Corporation | Methode pour diagnostiquer un routeur prenant en charge une trajectoire de selection de strategie |
WO2007052764A1 (ja) * | 2005-11-07 | 2007-05-10 | Nec Corporation | セッション中継装置およびセッション中継方法 |
US8085669B2 (en) | 2005-11-07 | 2011-12-27 | Nec Corporation | Session relay device and session relay method |
US8179851B2 (en) | 2008-06-05 | 2012-05-15 | Fujitsu Limited | Mobile communication system, mobile communication method, and communication apparatus |
EP2131619A2 (en) | 2008-06-05 | 2009-12-09 | Fujitsu Ltd. | Mobile communication system, mobile communication method, and communication apparatus |
CN113411260A (zh) * | 2015-08-31 | 2021-09-17 | 华为技术有限公司 | 一种IPv6网络中数据报文的发送方法及装置 |
US11477106B2 (en) | 2015-08-31 | 2022-10-18 | Huawei Technologies Co., Ltd. | Data packet sending method and apparatus in IPV6 network |
Also Published As
Publication number | Publication date |
---|---|
JP3511969B2 (ja) | 2004-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2416897C (en) | Tcp flow control | |
JP5491533B2 (ja) | 利用可能帯域幅を測定する効率的かつ損失耐性を有する方法およびメカニズム | |
CN100459576C (zh) | 一种探测路径最大传输单元的方法 | |
JP5020076B2 (ja) | 低頻度ackのシステムに適した高性能tcp | |
US7925775B2 (en) | TCP congestion control based on bandwidth estimation techniques | |
JP5363658B1 (ja) | 中継装置、中継装置の制御方法、及び、ネットワークシステム | |
US20070133414A1 (en) | Method for faster detection and retransmission of lost TCP segments | |
WO2013044827A1 (zh) | 一种跟踪路由测试方法、***、装置及设备 | |
JP3511969B2 (ja) | Ipネットワークにおけるpmtu見積もり値検出の方法およびそのシステム | |
JP3377994B2 (ja) | データ配信管理装置およびデータ配信管理方法 | |
CN108234087A (zh) | 数据传输方法及发送端 | |
JP4672448B2 (ja) | 全二重・半二重不整合検出方法及び,この方法を適用する全二重・半二重不整合検出装置 | |
JP2006174451A (ja) | 複数のノードを含むワイヤレスネットワークにおいてルートを追跡する方法及びルートを追跡するように構成されるノードのワイヤレスネットワーク | |
JP2009089197A (ja) | 中継装置 | |
US20030137948A1 (en) | Retransmission control in wireless packet data networks | |
JP3929452B2 (ja) | モバイルアドホックネットワークにおけるトランスポート層を用いた効率的なデータの送受信方法及びその方法を用いたネットワーク装置 | |
KR100663465B1 (ko) | 전송제어 프로토콜을 사용하는 데이터 네트워크에서 다중 세그먼트 복구를 위한 가상 블록 정보의 송수신 방법 및 장치 | |
JP2007006068A (ja) | 高速ネットワークにおけるパケットの同期送受信方法、送受信システム、送受信装置および同期送受信プログラム | |
JP4505575B2 (ja) | 通信システム、ゲートウェイ送信装置、ゲートウェイ受信装置、送信方法、受信方法および情報記録媒体 | |
US20140369189A1 (en) | Method of controlling packet transmission in network system and network system transmitting packet using pseudo-tcp agent | |
JP5082986B2 (ja) | 送信ノード、並びにその制御方法及び制御プログラム | |
JP3313563B2 (ja) | データ伝送制御方法 | |
JP5771656B2 (ja) | 中継装置 | |
KR102184144B1 (ko) | Mptcp를 이용한 통신에서의 응답 메시지 처리 방법 및 시스템 | |
KR101547048B1 (ko) | 라우터에서의 통신들을 관리하는 기술 |
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: 20031216 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20031229 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080116 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090116 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100116 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110116 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110116 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120116 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120116 Year of fee payment: 8 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
R371 | Transfer withdrawn |
Free format text: JAPANESE INTERMEDIATE CODE: R371 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120116 Year of fee payment: 8 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120116 Year of fee payment: 8 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130116 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130116 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130116 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130116 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140116 Year of fee payment: 10 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |