(57)【要約】【課題】発着信アドレスを省略してデータフレームを送信する。【解決手段】送信側の通信ノード装置１１は、受信側の通信ノード装置１２により送達確認が行われたデータフレーム４に含まれていた通番４１と発着信アドレス３１を送信キャッシュテーブル６に記憶し、受信側の通信ノード１２は、送信側の通信ノード１１から受信済みのデータフレームに含まれていた通番４１と発着信アドレス３１を受信キャッシュテーブル７に記憶し、通信ノード１１は、通信ノード１２に送信するデータフレームの発着信アドレス３１に一致する発着信アドレス３１が送信キャッシュテーブル６に存在する場合に、当該発着信アドレスに対する通番をポインタ４３としてデータフレームに付加して送信し、通信ノード１２では、データフレームに付加されているポインタ４３が示す通番に対応する発着信アドレス３１を受信キャッシュテーブル７から検索して、データ３２に付加する。【選択図】図２
2007324958.tif 000002
【特許請求の範囲】
【請求項１】
通番と発着信アドレスとが含まれるデータフレームを受信ノード装置に送信する送信ノード装置であって、
前記受信ノード装置による送達確認済みのデータフレームに含まれていた通番と発着信アドレスとを示す通番アドレス情報を記憶する通番アドレス情報記憶部と、
前記受信ノード装置に対して新たに送信する新規データフレームの発着信アドレスに一致する発着信アドレスを前記通番アドレス情報から検索する発着信アドレス検索部と、
前記発着信アドレス検索部により新規データフレームの発着信アドレスに一致する発着信アドレスが前記通番アドレス情報から検索された場合に、新規データフレームの発着信アドレスに代えて、前記発着信アドレス検索部により検索された発着信アドレスに対する通番を発着信アドレス表象ポインタとして新規データフレームに付加するポインタ付加部と、
前記ポインタ付加部により発着信アドレスに代えて発着信アドレス表象ポインタが付加された新規データフレームを前記受信ノード装置に対して送信する通信部とを有することを特徴とする送信ノード装置。
【請求項２】
前記ポインタ付加部は、
発着信アドレスに代えて発着信アドレス表象ポインタを新規データフレームに付加する場合に、発着信アドレスに代えて発着信アドレス表象ポインタが付加されていることを示す圧縮表示識別子を新規データフレームに設定することを特徴とする請求項１に記載の送信ノード装置。
【請求項３】
前記通番アドレス情報記憶部は、
前記通信部が新規データフレームを送信するたびに、通番アドレス情報に示されている通番を新規データフレームの通番に更新することを特徴とする請求項１に記載の送信ノード装置。
【請求項４】
前記通信部は、
前記受信ノード装置からデータフレームの不達を通知する不達否定応答を受信し、受信した不達否定応答が対象とするデータフレームが発着信アドレスに代えて発着信アドレス表象ポインタが付加されたデータフレームである場合に、発着信アドレスに代えて発着信アドレス表象ポインタが付加された形式のままで当該データフレームを前記受信ノード装置に対して再送することを特徴とする請求項１に記載の送信ノード装置。
【請求項５】
前記通信部は、
発着信アドレスに代えて発着信アドレス表象ポインタが付加されて送信されたデータフレームに対して、前記受信ノード装置が当該発着信アドレス表象ポインタからは当該データフレームの発着信アドレスを特定できない旨のポインタ不一致否定応答を前記受信ノード装置から受信する場合があり、
前記ポインタ付加部は、
前記通信部により前記ポインタ不一致否定応答が受信された場合に、前記ポインタ不一致否定応答が対象とするデータフレームから発着信アドレス表象ポインタを除去するとともに対応する発着信アドレスを付加し、
前記通信部は、
前記ポインタ付加部により発着信アドレス表象ポインタに代えて発着信アドレスが付加されたデータフレームを前記受信ノード装置に対して再送することを特徴とする請求項１に記載の送信ノード装置。
【請求項６】
通番と発着信アドレスとが含まれるデータフレームを送信ノード装置から受信する受信ノード装置であって、
前記送信ノード装置から受信済みのデータフレームに含まれていた通番と発着信アドレスとを示す通番アドレス情報を記憶する通番アドレス情報記憶部と、
前記送信ノード装置から送信された新規データフレームを受信する通信部と、
新規データフレームに、発着信アドレスの代わりに、前記通番アドレス情報に示されるいずれかの通番に一致する通番が発着信アドレス表象ポインタとして含まれているか否かを検索する通番検索部と、
前記通番アドレス情報に示されるいずれかの通番に一致する通番が発着信アドレス表象ポインタとして新規データフレームに含まれている場合に、前記通番検索部により検索された通番に対する発着信アドレスを新規データフレームのデータに付加するアドレス付加部とを有することを特徴とする受信ノード装置。
【請求項７】
前記通番検索部は、
新規データフレームに、発着信アドレスに代えて発着信アドレス表象ポインタが付加されていることを示す圧縮表示識別子が設定されているか否かを判定し、圧縮表示識別子が設定されている場合に、新規データフレームに、前記通番アドレス情報に示されるいずれかの通番に一致する通番が発着信アドレス表象ポインタとして含まれているか否かを検索することを特徴とする請求項６に記載の受信ノード装置。
【請求項８】
前記通番アドレス情報記憶部は、
前記通信部が新規データフレームを受信するたびに、通番アドレス情報に示されている通番を新規データフレームの通番に更新することを特徴とする請求項６に記載の受信ノード装置。
【請求項９】
前記受信ノード装置は、更に、
発着信アドレスに代えて発着信アドレス表象ポインタが付加されている新規データフレームについて、前記通番検索部が発着信アドレス表象ポインタに示されている通番に一致する通番が前記通番アドレス情報から検索できない場合に、当該発着信アドレス表象ポインタからは発着信アドレスを特定できない旨のポインタ不一致否定応答を生成する応答生成部を有し、
前記通信部は、
前記応答生成部により生成されたポインタ不一致否定応答を前記送信ノード装置に対して送信することを特徴とする請求項６に記載の受信ノード装置。
【請求項１０】
通番と発着信アドレスとが含まれるデータフレームを受信ノード装置に送信する送信方法であって、
前記受信ノード装置による送達確認済みのデータフレームに含まれていた通番と発着信アドレスとを示す通番アドレス情報から、前記受信ノード装置に対して新たに送信する新規データフレームの発着信アドレスに一致する発着信アドレスを検索する発着信アドレス検索ステップと、
前記発着信アドレス検索ステップにより新規データフレームの発着信アドレスに一致する発着信アドレスが前記通番アドレス情報から検索された場合に、新規データフレームの発着信アドレスに代えて、前記発着信アドレス検索ステップにより検索された発着信アドレスに対する通番を発着信アドレス表象ポインタとして新規データフレームに付加するポインタ付加ステップと、
前記ポインタ付加ステップにより発着信アドレスに代えて発着信アドレス表象ポインタが付加された新規データフレームを前記受信ノード装置に対して送信する通信ステップとを有することを特徴とする送信方法。
【請求項１１】
通番と発着信アドレスとが含まれるデータフレームを送信ノード装置から受信する受信方法であって、
前記送信ノード装置から送信された新規データフレームを受信する通信ステップと、
前記送信ノード装置から受信済みのデータフレームに含まれていた通番と発着信アドレスとを示す通番アドレス情報を検索し、新規データフレームに、発着信アドレスの代わりに、前記通番アドレス情報に示されるいずれかの通番に一致する通番が発着信アドレス表象ポインタとして含まれているか否かを検索する通番検索ステップと、
前記通番アドレス情報に示されるいずれかの通番に一致する通番が発着信アドレス表象ポインタとして新規データフレームに含まれている場合に、前記通番検索ステップにより検索された通番に対する発着信アドレスを新規データフレームのデータに付加するアドレス付加ステップとを有することを特徴とする受信方法。
【請求項１２】
通番と発着信アドレスとが含まれるデータフレームを受信ノード装置に送信するコンピュータに、
前記受信ノード装置による送達確認済みのデータフレームに含まれていた通番と発着信アドレスとを示す通番アドレス情報から、前記受信ノード装置に対して新たに送信する新規データフレームの発着信アドレスに一致する発着信アドレスを検索する発着信アドレス検索処理と、
前記発着信アドレス検索処理により新規データフレームの発着信アドレスに一致する発着信アドレスが前記通番アドレス情報から検索された場合に、新規データフレームの発着信アドレスに代えて、前記発着信アドレス検索処理により検索された発着信アドレスに対する通番を発着信アドレス表象ポインタとして新規データフレームに付加するポインタ付加処理と、
前記ポインタ付加処理により発着信アドレスに代えて発着信アドレス表象ポインタが付加された新規データフレームを前記受信ノード装置に対して送信する通信処理とを実行させることを特徴とするプログラム。
【請求項１３】
通番と発着信アドレスとが含まれるデータフレームを送信ノード装置から受信するコンピュータに、
前記送信ノード装置から送信された新規データフレームを受信する通信処理と、
前記送信ノード装置から受信済みのデータフレームに含まれていた通番と発着信アドレスとを示す通番アドレス情報を検索し、新規データフレームに、発着信アドレスの代わりに、前記通番アドレス情報に示されるいずれかの通番に一致する通番が発着信アドレス表象ポインタとして含まれているか否かを検索する通番検索処理と、
前記通番アドレス情報に示されるいずれかの通番に一致する通番が発着信アドレス表象ポインタとして新規データフレームに含まれている場合に、前記通番検索処理により検索された通番に対する発着信アドレスを新規データフレームのデータに付加するアドレス付加処理とを実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば、発着信アドレスを含むパケットに通番を付与してデータフレームを構成し、隣接ノード間で通番を用いてデータフレームの送達確認および失われたデータフレームの再送を行う通信システムにおけるデータフレームのヘッダ圧縮技術に関する。
【背景技術】
【０００２】
従来のヘッダ圧縮方法として、例えば、特許文献１には、ＲＯＨＣ（ＲＯｂｕｓｔ  Ｈｅａｄｅｒ  Ｃｏｍｐｒｅｓｓｉｏｎ）が開示されている。このＲＯＨＣは、主に携帯電話網などの無線でのパケット伝送向けにＩＥＴＦ（Ｉｎｔｅｒｎｅｔ  Ｅｎｇｉｎｅｅｒｉｎｇ  Ｔａｓｋ  Ｆｏｒｃｅ）で提案されているヘッダ圧縮方法である。これは、無線区間においては、有線区間に比べてパケット伝送中の誤り発生率が高くなる傾向があることを考慮したものであり、伝送中に生じた誤りに対して高い耐性を持つことを特徴とするヘッダ圧縮方法である。
ＲＯＨＣでは、上位層プロトコルのシーケンス番号を利用し、直前に送信したパケットのシーケンス番号とこれから送信するパケットのシーケンス番号との差が大きくなったら、これから送信するパケットは別のコンテキスト番号を用いて送信することでヘッダの圧縮を行う。
【０００３】
また、パケットを通信路で伝送する場合の効率の良い誤り回復プロトコルとしてＳｅｌｅｃｔｉｖｅ−Ｒｅｐｅａｔ  ＡＲＱ（ＳＲ−ＡＲＱ）が一般に用いられる。このＳＲ−ＡＲＱは上位層のパケットに通番を付与してフレームを構成し送信する。受信側ではフレームを受信してその通番により伝送誤りにより失われたフレームを検出し、送信側に失われたフレームの通番を否定応答（ＮＡＣＫ）に含めて送信する。送信側ではＮＡＣＫに含まれる通番のフレームを再送することにより伝送誤りに対する回復を行う。
【０００４】
このようなＳＲ−ＡＲＱでは、受信側で通番に従ってフレームの順序を並び替える順序制御が必要となる。
この順序制御による遅延時間を減少させ、順序制御に必要となる受信バッファ量を減少させる方式として上位層のフローごとに順序制御を行うＰｅｒ  Ｆｌｏｗ  ＲｅＳｅｑｕｅｎｃｉｎｇ  方式（ＰＦＲＳ方式）が提案されている。さらにこのＰＦＲＳ方式の実現方式としてＳＲ−ＡＲＱの通番を利用するポインタ方式が提案されている（例えば、非特許文献１）。ポインタ方式は、ある上位層フローに属するパケットを運ぶフレームを送信する際、同じフローに属する直前のパケットを運ぶフレームをＳＲ  ＡＲＱの通番を用いることにより指定する方式で、ポインタと呼ぶ通番を従来のフレームに付与する。ポインタによりフレームが運ぶパケットのフロー識別と同一フローに属するパケット間の順序識別を同時に実現することができる。
【特許文献１】特開２００３−８６４４号公報
【非特許文献１】鹿間敏弘、水野忠則著「Ｓｅｌｅｃｔｉｖｅ−Ｒｅｐｅａｔ  ＡＲＱの通番を用いるフロー単位の順序制御方式」  電子情報通信学会論文誌，  ＶＯＬ．Ｊ８８−Ｂ，Ｎｏ．６、（社）電子情報通信学会，２００５年６月、Ｐ１０１７−１０２８
【発明の開示】
【発明が解決しようとする課題】
【０００５】
このような従来のポインタ方式ではＳＲ−ＡＲＱのポインタをフレームに付与することにより、上位層のフローごとに順序制御を効率良く実現しているが、このポインタによりフレームのサイズが大きくなり余分な通信帯域を必要とする問題があった。
【０００６】
この発明は上記のような問題点を解決することを主な目的としており、ポインタによる余分な通信帯域を必要としないフロー識別およびフローごとのパケット順序識別を実現することを主な目的とする。
【課題を解決するための手段】
【０００７】
本発明に係る送信ノード装置は、
通番と発着信アドレスとが含まれるデータフレームを受信ノード装置に送信する送信ノード装置であって、
前記受信ノード装置による送達確認済みのデータフレームに含まれていた通番と発着信アドレスとを示す通番アドレス情報を記憶する通番アドレス情報記憶部と、
前記受信ノード装置に対して新たに送信する新規データフレームの発着信アドレスに一致する発着信アドレスを前記通番アドレス情報から検索する発着信アドレス検索部と、
前記発着信アドレス検索部により新規データフレームの発着信アドレスに一致する発着信アドレスが前記通番アドレス情報から検索された場合に、新規データフレームの発着信アドレスに代えて、前記発着信アドレス検索部により検索された発着信アドレスに対する通番を発着信アドレス表象ポインタとして新規データフレームに付加するポインタ付加部と、
前記ポインタ付加部により発着信アドレスに代えて発着信アドレス表象ポインタが付加された新規データフレームを前記受信ノード装置に対して送信する通信部とを有することを特徴とする。
【０００８】
また、本発明に係る受信ノード装置は、
通番と発着信アドレスとが含まれるデータフレームを送信ノード装置から受信する受信ノード装置であって、
前記送信ノード装置から受信済みのデータフレームに含まれていた通番と発着信アドレスとを示す通番アドレス情報を記憶する通番アドレス情報記憶部と、
前記送信ノード装置から送信された新規データフレームを受信する通信部と、
新規データフレームに、発着信アドレスの代わりに、前記通番アドレス情報に示されるいずれかの通番に一致する通番が発着信アドレス表象ポインタとして含まれているか否かを検索する通番検索部と、
前記通番アドレス情報に示されるいずれかの通番に一致する通番が発着信アドレス表象ポインタとして新規データフレームに含まれている場合に、前記通番検索部により検索された通番に対する発着信アドレスを新規データフレームのデータに付加するアドレス付加部とを有することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、データ量の多い発着信アドレスを用いずに、データ量の少ない発着信アドレス表象ポインタを圧縮アドレスとして用いるため、発着信アドレスによるオーバーヘッドを削減することができる。
【発明を実施するための最良の形態】
【００１０】
実施の形態１．
本実施の形態では、同一フローではパケットの発着信アドレスと発着信ポート番号が常に同じであることに着目し、送信側と受信側でフレームの通番とそのフレームが運ぶパケットの発着信アドレスと発着信ポート番号を記憶させ、同一フローのパケットが既に送られて送達確認されていれば、パケットの発着信アドレスと発着信ポート番号を削除することによりフレームのサイズを減少させ、ポインタの付与によるオーバーヘッドを平均的に削減しようとするものである。
【００１１】
図１は、本実施の形態に係る通信システム例を示す構成図である。
図１において１１および１２は通信ノード装置（以下、単に通信ノードともいう）、２は通信回線、３はパケット、４はデータフレーム、５は応答パケットを示している。
図１では通信ノード１１から通信ノード１２へパケット３を送る場合を示しており、通信ノード１１は送信すべきパケット３に通番を含むフレームヘッダを付与してデータフレーム４を構成し通信ノード１２へ送信する。
通信ノード１２はこれを正しく受信すると応答パケット５を通信ノード１１に返す。
本実施の形態では、通信ノード１１が送信ノード装置の例であり、通信ノード１２が受信ノード装置の例である。
【００１２】
図２は、図１の構成図における通信シーケンス例を示している。
図２において、６は送信キャッシュテーブル、７は受信キャッシュテーブルを示し、それぞれ通信ノード１１と通信ノード１２の内部に存在する。
３１は発着信アドレス、３２はデータ、４１は通番、４２は圧縮表示識別子（以下、圧縮表示という）、４３は発着信アドレス表象ポインタ（以下、ポインタという）、５１は応答パケット識別情報、８は送達確認フラグ、ｔ１、ｔ２、ｔ３、ｔ４は説明に用いる時刻を示す。
なお、ＡＤＲ１、ＡＤＲ２等の発着信アドレス３１には、発着信ポート番号も含まれている。また、圧縮表示４２は、発着信アドレス３１に代えてポインタ４３が付加されているか否かを識別するための識別子である。
また、各時刻における通信ノード１１及び通信ノード１２の動作の詳細は、後述することとし、ここでは、通信ノード１１及び通信ノード１２の動作を概説する。
【００１３】
送信側の通信ノード１１は、受信側の通信ノード１２により送達確認が行われたデータフレーム４に含まれていた通番４１と発着信アドレス３１を送信キャッシュテーブル６に記憶し、受信側の通信ノード１２は、送信側の通信ノード１１から受信済みのデータフレームに含まれていた通番４１と発着信アドレス３１を受信キャッシュテーブル７に記憶する。
図２の例では、時刻ｔ１において送信されたデータフレームは応答パケット５が送信されているので、時刻ｔ１において送信されたデータフレームに含まれる発着信アドレス３１であるＡＤＲ１と対応する通番４１である３が送信キャッシュテーブル６及び受信キャッシュテーブル７に記憶されることになる。同様に、時刻ｔ２において送信されたデータフレームも応答パケット５が送信されているので、発着信アドレス３１であるＡＤＲ２及び対応する通番４１である４も送信キャッシュテーブル６及び受信キャッシュテーブル７に記憶される。
通信ノード１１は、例えば時刻ｔ３において、通信ノード１２に新たなデータフレームを送信する場合に、新たに送信する新規データフレームの発着信アドレス３１（ＡＤＲ１）に一致する発着信アドレス３１が送信キャッシュテーブル６に存在するか否かを検索し、一致する発着信アドレスが存在する場合に、当該発着信アドレスに対する通番（ここでは３）を発着信アドレスを表象するポインタ４３（発着信アドレス表象ポインタ）としてデータフレーム４に付加して送信し、通信ノード１２では、データフレーム４に付加されているポインタ４３が示す通番（ここでは３）に対応する発着信アドレス３１（ＡＤＲ１）を受信キャッシュテーブル７から検索して、検索した発着信アドレス３１（ＡＤＲ１）をデータ３２に付加する。
また、時刻ｔ４においては、発着信アドレスＡＤＲ２に対して同様の取り扱いが行われる。
【００１４】
次に、本実施の形態に係る通信ノード１１（送信ノード装置）及び通信ノード１２（受信ノード装置）の構成例を図６及び図７に示す。
図６は通信ノード１１の構成例を示し、図７は通信ノード１２の構成例を示す。
【００１５】
図６において、通信部１１０１は、データフレームを通信回線２に送出する。通信部１１０１は、後述するように、ヘッダ加工部１１０２により発着信アドレス３１に代えて発着信アドレスを表象するポインタ４３が付加されたデータフレーム４を通信ノード１２に対して送信する場合がある。
ヘッダ加工部１１０２は、通信ノード１２に送信しようとするデータフレーム４の発着信アドレス３１が送信キャッシュテーブル１１０７にある場合に、ヘッダから発着信アドレス３１を削除するとともにポインタ４３を付加する。ヘッダ加工部１１０２は、ポインタ付加部の例である。
再送用フレーム蓄積部１１０３は、データフレーム４の再送用に通信部１１０１により送信されたデータフレーム４を一時的に蓄積しておくバッファである。
制御部１１０４は、通信ノード１１の全体の制御を行う。
送信キャッシュテーブル管理部１１０５は、送信キャッシュテーブル１１０７に対する処理を行う手段であり、例えば、通信ノード１２に送信しようとするデータフレーム４の発着信アドレス３１が送信キャッシュテーブル１１０７に存在するか否かを検索したり、送信キャッシュテーブル１１０７に示されている通番の更新を行ったりする。送信キャッシュテーブル管理部１１０５は、発着信アドレス検索部の例である。
送信キャッシュテーブル記憶部１１０６は、送信キャッシュテーブル１１０７を記憶している。送信キャッシュテーブル記憶部１１０６は、通番アドレス情報記憶部の例である。
また、送信キャッシュテーブル１１０７は、図２に示す送信キャッシュテーブル６である。送信キャッシュテーブル１１０７は、通番アドレス情報の例である。
【００１６】
また、図７において、通信部１２０１は、通信回線２からデータフレーム４を受信する。通信部１２０１は、発着信アドレス３１に代えて発着信アドレスを表象するポインタ４３が付加されたデータフレーム４を通信ノード１１から受信する場合がある。
ヘッダ切出部１２０２は、受信したデータフレーム４のうちヘッダ部分（通番４１、圧縮表示４２、ポインタ４３又は発着信アドレス３１）を切り出す。
ヘッダ加工部１２０３は、ヘッダ切出部１２０２により切り出されたヘッダにポインタ４３が付加され、付加されているポインタ４３に示される通番が受信キャッシュテーブル１２０７にある場合に、ポインタ４３を削除するとともに、当該通番に対応する発着信アドレス３１をデータ３２に付加する。ヘッダ加工部１２０３は、アドレス付加部の例である。
制御部１２０４は、通信ノード１２の全体の制御を行う。また、通信ノード１１からデータフレーム４を受信した際に、応答パケット５を生成する。制御部１２０４は、応答生成部の例である。
受信キャッシュテーブル管理部１２０５は、受信キャッシュテーブル１２０７に対する処理を行う手段であり、例えば、通信ノード１１から受信したデータフレーム４に付加されているポインタ４３に示される通番が受信キャッシュテーブル１２０７に存在するか否かを検索したり、受信キャッシュテーブル１２０７に示されている通番の更新を行ったりする。受信キャッシュテーブル管理部１２０５は、通番アドレス検索部の例である。
受信キャッシュテーブル記憶部１２０６は、受信キャッシュテーブル１２０７を記憶している。受信キャッシュテーブル記憶部１２０６は、通番アドレス情報記憶部の例である。
また、受信キャッシュテーブル１２０７は、図２に示す受信キャッシュテーブル７である。受信キャッシュテーブル１２０７は、通番アドレス情報の例である。
【００１７】
なお、通信ノード１１及び通信ノード１２のそれぞれを図６の構成と図７の構成を組み合わせた構成としてもよい。この場合、図６及び図７において名称が共通する２つの要素は統合して１つの要素にしてもよい。
【００１８】
次に、本実施の形態に係る通信ノード１１及び通信ノード１２のハードウェア構成例を説明する。
図１１は、本実施の形態に示す通信ノード１１及び通信ノード１２のハードウェア資源の一例を示す図である。
図１１において、通信ノード１１及び通信ノード１２は、プログラムを実行するＣＰＵ９１１（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう）を備えている。ＣＰＵ９１１は、バス９１２を介して、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）９１３、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）９１４、通信ボード９１５、表示装置９０１、キーボード９０２、マウス９０３、磁気ディスク装置９２０と接続され、これらのハードウェアデバイスを制御する。更に、ＣＰＵ９１１は、ＦＤＤ９０４（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ  Ｄｒｉｖｅ）、コンパクトディスク装置９０５（ＣＤＤ）、プリンタ装置９０６、スキャナ装置９０７と接続していてもよい。また、磁気ディスク装置９２０の代わりに、光ディスク装置、メモリカード読み書き装置などの記憶装置でもよい。
ＲＡＭ９１４は、揮発性メモリの一例である。ＲＯＭ９１３、ＦＤＤ９０４、ＣＤＤ９０５、磁気ディスク装置９２０の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置あるいは記憶部の一例である。
通信ボード９１５、キーボード９０２、スキャナ装置９０７、ＦＤＤ９０４などは、入力部、入力装置の一例である。
また、通信ボード９１５、表示装置９０１、プリンタ装置９０６などは、出力部、出力装置の一例である。
【００１９】
通信ボード９１５は、図１に示すように、通信回線２に接続されている。例えば、通信ボード９１５は、ＬＡＮ（ローカルエリアネットワーク）、インターネット、ＷＡＮ（ワイドエリアネットワーク）などに接続されていても構わない。
磁気ディスク装置９２０には、オペレーティングシステム９２１（ＯＳ）、ウィンドウシステム９２２、プログラム群９２３、ファイル群９２４が記憶されている。プログラム群９２３のプログラムは、ＣＰＵ９１１、オペレーティングシステム９２１、ウィンドウシステム９２２により実行される。
【００２０】
上記プログラム群９２３には、本実施の形態の説明において「〜部」、「〜手段」として説明している機能を実行するプログラムが記憶されている。プログラムは、ＣＰＵ９１１により読み出され実行される。
ファイル群９２４には、以下に述べる説明において、「〜の判定結果」、「〜の計算結果」、「〜の処理結果」、「〜の評価結果」等として説明している情報やデータや信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」の各項目として記憶されている。「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリになどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してＣＰＵ９１１によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示などのＣＰＵの動作に用いられる。抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示のＣＰＵの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリ、レジスタ、キャッシュメモリ、バッファメモリ等に一時的に記憶される。
また、以下で説明するフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、ＲＡＭ９１４のメモリ、ＦＤＤ９０４のフレキシブルディスク、ＣＤＤ９０５のコンパクトディスク、磁気ディスク装置９２０の磁気ディスク、その他光ディスク、ミニディスク、ＤＶＤ等の記録媒体に記録される。また、データや信号は、バス９１２や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
【００２１】
また、本実施の形態の説明において「〜部」、「〜手段」として説明しているものは、「〜回路」、「〜装置」、「〜機器」、「手段」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」、「〜手段」として説明しているものは、ＲＯＭ９１３に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、ＤＶＤ等の記録媒体に記憶される。プログラムはＣＰＵ９１１により読み出され、ＣＰＵ９１１により実行される。すなわち、プログラムは、本実施の形態の「〜部」、「〜手段」としてコンピュータを機能させるものである。あるいは、本実施の形態の「〜部」、「〜手段」の手順や方法をコンピュータに実行させるものである。
【００２２】
このように、本実施の形態に示す通信ノード１１及び通信ノード１２は、処理装置たるＣＰＵ、記憶装置たるメモリ、磁気ディスク等、入力装置たるキーボード、マウス、通信ボード等、出力装置たる表示装置、通信ボード等を備えるコンピュータであり、上記したように「〜部」、「〜手段」として示された機能をこれら処理装置、記憶装置、入力装置、出力装置を用いて実現するものである。
【００２３】
次に、図２〜図５のシーケンス図を参照して通信ノード１１及び通信ノード１２の動作例を説明する。
【００２４】
先ず、図２について説明する。
時刻ｔ１で、通信ノード１１の通信部１１０１が、発着信アドレス３１がＡＤＲ１のデータパケット３を運ぶデータフレーム４を送信する。データフレーム４はデータパケット３と通番４１および圧縮表示４２を含む。圧縮表示４２の値０はデータパケット３が発着信アドレス３１を含むことを示す。
データパケット３を送信する前に、通信ノード１１の送信キャッシュテーブル管理部１１０５が、データフレーム４の通番４１と発着信アドレス３１を送信キャッシュテーブル６（１１０７）に登録し、その送達確認フラグ８を０にする。
次に、通信ノード１２では、通信部１２０１がデータフレーム４を正しく受信すると、ヘッダ切出部１２０２がヘッダを切出すとともに、受信キャッシュテーブル管理部１２０５がその通番４１およびこのデータフレーム４が運ぶデータパケット３に含まれる発着信アドレス３１を受信キャッシュテーブル７（１２０７）に登録し、制御部１２０４が正しく受信したことを示す応答パケット５を生成し、通信部１２０１が応答パケット５を通信ノード１１に返す。
応答パケット５は応答パケット識別情報５１と通番４１を含む。
通信ノード１１において通信部１１０１が応答パケット５を受信すると、通信ノード１１の送信キャッシュテーブル管理部１１０５はデータフレーム４が正しく受信されたことを確認したので、送信キャッシュテーブル６（１１０７）の送達確認フラグ８を１に設定する。
【００２５】
次に、時刻ｔ２で、通信ノード１１の通信部１１０１が、発着信アドレス３１がＡＤＲ２のデータパケット３を運ぶデータフレーム４を送信する。この場合も、同様にして、送信キャッシュテーブル管理部１１０５は、発着信アドレス３１（ＡＤＲ２）及び通番４１（４）を送信キャッシュテーブル６（１１０７）に登録する。
このデータフレーム４も通信ノード１２で正しく受信され、通信ノード１２は応答パケット５を通信ノード１１に返す。応答パケット５を受信後、送信キャッシュテーブル管理部１１０５は、送信キャッシュテーブル６（１１０７）の送達確認フラグ８を１に設定する。
この結果、送信キャッシュテーブル６（１１０７）には、通番４１の値が３で発着信アドレス３１がＡＤＲ１、通番４１の値が４で発着信アドレス３１がＡＤＲ２の情報が設定される。どちらも送達確認フラグ８は１の値が設定されている。同様に通信ノード１２の受信キャッシュテーブル７（１２０７）にも通番４１の値が３で発着信アドレス３１がＡＤＲ１、通番４１の値が４で発着信アドレス３１がＡＤＲ２の情報が設定される。
【００２６】
次に、時刻ｔ３で、通信ノード１１の通信部１１０１は発着信アドレス３１がＡＤＲ１のパケットを運ぶデータフレーム４を通信ノード１２に送信する。通信ノード１１の送信キャッシュテーブル管理部１１０５は送信キャッシュテーブル６（１１０７）を検索し、ＡＤＲ１の発着信アドレス３１が登録されているか検査する。この場合、ＡＤＲ１は登録され送達確認フラグ８の値が１となっているので、通信ノード１１のヘッダ加工部１１０２は圧縮表示４２を１とし発着信アドレス３１の代わりに登録されている通番４１の値３をポインタ４３としてデータフレーム４に付与し、通信部１１０１がこのようにヘッダが加工されたデータフレーム４を送信する。
通信ノード１２では、通信部１２０１がこのデータフレーム４を受信し、ヘッダ切出部１２０２がヘッダを切出し、圧縮表示４２の値が１となっているので受信キャッシュテーブル管理部１２０５がポインタ４３の値３が受信キャッシュテーブル７（１２０７）の通番４１の値として登録されているか検査する。この場合、値３は登録されているので、受信キャッシュテーブル管理部１２０５は、対で登録されている発着信アドレス３１の値ＡＤＲ１を取り出し、ヘッダ加工部１２０３が、この発着信アドレスＡＤＲ１を受信したデータフレーム４に含まれるデータパケット３に付与することにより、通信ノード１２で元のデータパケット３を復元する。
【００２７】
同様に、時刻ｔ４で通信ノード１１は発着信アドレス３１がＡＤＲ２のデータフレーム４を通信ノード１２に送信する。この場合も通信ノード１１の送信キャッシュテーブル６（１１０７）および通信ノード１２の受信キャッシュテーブル７（１２０７）に発着信アドレス３１の値ＡＤＲ２が登録されているので、圧縮表示４２の値を１としポインタ４３を用いて発着信アドレス３１を削除したデータパケット３を含むデータフレーム４を送ることができる。
【００２８】
このように、最初の通信では元の発着信アドレス３１を含むデータパケット３がデータフレーム４で送信されるが、送信キャッシュテーブル６および受信キャッシュテーブル７に発着信アドレス３１と通番４１とが登録されると、長い発着信アドレス３１を用いずに短いポインタ４３を圧縮アドレスとして用いるため、発着信アドレス３１によるオーバーヘッドを削減することができる。
発着信アドレス３１はポインタ４３の値よりもデータ量として大きく、発着信アドレス３１を削除して送受信することにより圧縮表示４２およびポインタ４３を付与してもデータフレーム４の大きさを大幅に削減できる。このため、通信に必要な帯域を削減できる。また、送信側は受信側が発着信アドレス３１を含むデータパケット３を運ぶデータフレーム４を受信したことを確認してからポインタ４３を用いるため、送信側と受信側で不一致が生じることは基本的には無い。
【００２９】
また、送信側の通信ノード１１において、ヘッダ加工部１１０２は、発着信アドレス３１に代えてポインタ４３をデータフレーム４に付加する場合に、発着信アドレス３１に代えてポインタ４３が付加されていることを示す圧縮表示４２をデータフレーム４に設定し、受信側の通信ノード１２では、受信キャッシュテーブル管理部１２０５が、データフレーム４に圧縮表示４２が設定されているか否かを判定し、圧縮表示４２が設定されている場合に、データフレーム４に、受信キャッシュテーブル７に示されるいずれかの通番４１に一致する通番４１がポインタ４３として含まれているか否かを検索する。このようにすることで、発着信アドレス３１に代えてポインタ４３を用いても、受信側の通信ノードで確実にポインタ４３から発着信アドレス３１への変換が行われる。
【００３０】
図３は、ポインタ４３によりデータパケット３の順序制御とデータパケット３の発着信アドレス３１の削減を同時に行う場合を示している。
ここで通信回線２には比較的大きな遅延が存在し、データフレーム４を送信するとその応答パケット５は次のデータフレーム４の送信後に返ってくるものとしている。
図３で、４４は再送を要求するデータフレーム４の通番、ｔ５、ｔ６、ｔ７、ｔ８、ｔ９は説明に用いる時刻を示している。
【００３１】
図３においても図２と同様に、時刻ｔ５とｔ６で、発着信アドレスＡＤＲ１とＡＤＲ２のデータパケット３が各々送信され、送信キャッシュテーブル６と受信キャッシュテーブル７にはＡＤＲ１とＡＤＲ２の発着信アドレス３１が登録される。
【００３２】
時刻ｔ７で、データパケット３を含む通番４１の値が５のデータフレーム４が送信されるが、通信路での伝送誤りにより失われたとする。
【００３３】
時刻ｔ８で、通番４１の値が６のデータフレーム４が送信され正しく受信されたとする。
受信側では、制御部１２０４が、通番４１の不連続により通番４１の値が５のデータフレーム４が失われたことを検出し、不達否定応答ＮＡＫ１を運ぶ応答パケット５を生成し、通信部１２０１が返送する。ここで不達否定応答ＮＡＫ１は、受信側の通信ノード１２から送信側の通信ノード１１に対してデータフレームの不達を通知するための応答である。
応答パケット５には再送を要求するデータフレームの通番４４が付与され、通番の値は５が設定される。
不達否定応答ＮＡＫ１を運ぶ応答パケット５を受信すると送信側は、再送用フレーム蓄積部１１０３に蓄積されている通番５のデータフレーム４を再送する。
受信側は、通番４１の値が６のデータフレームを受信した時点で、そのポインタ４３が発着信アドレス３１の値ＡＤＲ２のパケットで通番４１が４のパケットを指していることが分かる。通番４１が４のパケットは正しく受信されているので、ヘッダ加工部１２０３が、発着信アドレス３１の値ＡＤＲ２をデータフレーム４に含まれるデータパケット３に付与することにより、通信ノード１２は元のデータパケット３を復元し、転送する。
【００３４】
このように通信ノード１２は伝送誤りにより失われた通番４１の値が５のデータフレーム４の受信を待たずに、通番４１の値が６のデータフレーム４が運ぶデータパケット３を転送できる。
【００３５】
また、送信側の通信ノード１１は、不達否定応答ＮＡＫ１を受信した際に、受信した不達否定応答ＮＡＫ１が対象とするデータフレームが発着信アドレスに代えてポインタが付加されたデータフレームである場合に、発着信アドレスに代えてポインタが付加された形式のままで当該データフレームを受信側の通信ノード１２に対して再送する。
【００３６】
図４は、新規データフレーム４を送信するたびに行う送信キャッシュテーブル６における通番４１の更新、新規データフレーム４を受信するたびに行う受信キャッシュテーブル７における通番４１の更新を示している。
図４で６１、６２、６３は送信キャッシュテーブル６に登録された通番４１の変化、７１、７２、７３は受信キャッシュテーブル７に登録された通番４１の変化、ｔ１０、ｔ１１、ｔ１２は説明に用いる時刻を示している。
【００３７】
ここでは、時刻ｔ１０において、発着信アドレスＡＤＲ１が送信キャッシュテーブル６および受信キャッシュテーブル７に登録されるようにしている。
発着信アドレス３１の値ＡＤＲ１が既に登録されているので、以降の時刻では、同じ発着信アドレス３１のデータパケット３はポインタ４３を用いることにより発着信アドレス３１を省略できる。ポインタは同一発着信アドレス３１を持つデータパケット３間の順序関係を表しており、同じフローに属す直前のデータパケット３を指す。このため、ポインタから発着信アドレス３１を復元するためには、送信キャッシュテーブル６の通番４１の値と受信キャッシュテーブル７の通番４１の値を最新の値に更新する必要がある。
【００３８】
時刻ｔ１０で、通信ノード１１の通信部１１０１が通番４１の値が３のデータパケット３を送信すると、送信キャッシュテーブル管理部１１０５が通番を登録することにより送信キャッシュテーブル６１（１１０７）の通番の値は３となる。
通信ノード１２の通信部１２０１がこのデータパケット３を受信すると、受信キャッシュテーブル管理部１２０５が通番を登録することにより受信キャッシュテーブル７１（１２０７）の通番４１の値も３となる。
時刻ｔ１１で、通信ノード１１の通信部１１０１が通番４１の値が４のデータパケット３を送信すると、送信キャッシュテーブル管理部１１０５が通番を更新することにより送信キャッシュテーブル６２の通番の値は４となる。通信ノード１２がこのデータパケット３を受信すると、受信キャッシュテーブル管理部１２０５が通番を更新することにより受信キャッシュテーブル７２（１２０７）の通番４１の値も４となる。
同様に時刻ｔ１２で、通番４１の値が５のデータパケット３が送信されると、送信キャッシュテーブル７３の通番４１の値は５、受信キャッシュテーブル７３の通番４１の値も５と更新される。
【００３９】
このように、送信側の通信ノード１１において、送信キャッシュテーブル管理部１１０５が、新規データフレームが送信されるたびに、送信キャッシュテーブル６に示されている通番を新規データフレームの通番に更新する。また、受信側の通信ノード１２においても、受信キャッシュテーブル管理部１２０５が、新規データフレームが受信されるたびに、受信キャッシュテーブル７に示されている通番を新規データフレームの通番に更新する。
【００４０】
図５は、何らかの原因で送信キャッシュテーブル６と受信キャッシュテーブル７の間で不一致が生じた場合のシーケンス例を示している。
ｔ１３、ｔ１４、ｔ１５は説明に用いる時刻を示している。
【００４１】
時刻ｔ１３で、通信ノード１１は発着信アドレス３１の値ＡＤＲ１が送信キャッシュテーブル６（１１０７）に登録されているので、圧縮表示４２の値を１とし登録されている通番４１の値３をポインタ４３としてデータパケット３を含むデータフレーム４を送信する。
通信ノード１２では、このデータフレーム４を受信すると、圧縮表示４２の値が１なので、受信キャッシュテーブル管理部１２０５が、ポインタ４３の値３が受信キャッシュテーブル７（１２０７）に登録されているか検査する。この場合、登録されていないので通信ノード１２の制御部１２０４が応答パケット５の応答パケット識別情報５１として未登録であることを示す否定応答であるポインタ不一致否定応答ＮＡＫ２を返送する。このポインタ不一致否定応答ＮＡＫ２は、ポインタに示されている通番に一致する通番が受信キャッシュテーブル７から検索できない、すなわち、ポインタからは発着信アドレスを特定できない旨を通知する応答である。
この不一致否定応答ＮＡＫ２を含む応答パケット５を受信すると、通信ノード１１では、ヘッダ加工部１１０２が、再送用フレーム蓄積部１１０３に蓄積されている該当するデータフレーム４のヘッダからポインタ４３を削除するとともに対応する発着信アドレス３１付加し、更に圧縮表示４２の値を０とし、通信部１１０１が、発着信アドレス３１が含まれる元の形式（ポインタ４３を用いない形式）のデータパケット３を含むデータフレーム４を時刻ｔ１２で再送する。
このデータフレーム４が通信ノード１２で受信され、送達確認情報を含む応答パケット５が通信ノード１１で受信されると、通信ノード１１の送信キャッシュテーブル６と通信ノード１２の受信キャッシュテーブル７の内容は発着信アドレス３１の値がＡＤＲ１に関して整合が取れる。これにより時刻ｔ１３で、発着信アドレス３１の値がＡＤＲ１のデータパケット３はポインタ４３を用いることにより発着信アドレス３１を削除して送ることができる。
【００４２】
このように、発着信アドレス３１に代えてポインタ４３が付加されている新規データフレーム４について、受信側の通信ノード１２において、受信キャッシュテーブル管理部１２０５がポインタ４３に示されている通番４１に一致する通番４１が受信キャッシュテーブル７から検索できない場合に、制御部１２０４が、当該ポインタ４３からは発着信アドレス３１を特定できない旨のポインタ不一致否定応答ＮＡＫ２を生成し、当該ポインタ不一致否定応答ＮＡＫ２を送信側の通信ノード１１に送信する。
他方、送信側の通信ノード１１では、通信部１１０１がポインタ不一致否定応答ＮＡＫ２を受信した場合に、ヘッダ加工部１１０２が、ポインタ不一致否定応答ＮＡＫ２が対象とするデータフレーム４からポインタ４３を除去するとともに対応する発着信アドレス３１を付加し、通信部１１０１が、ヘッダ加工部１１０２によりポインタ４３に代えて発着信アドレス３１が付加されたデータフレーム４を受信側の通信ノード１２に対して再送する。これにより、なんらかの理由により、送信キャッシュテーブル６と受信キャッシュテーブル７の内容に不一致があった場合でも、受信側の通信ノード１２は、再送時に発着信アドレス３１が示されたデータフレーム４を受信することができ、受信側の通信ノード１２が認識可能な形式のデータフレーム４を早期に受信できるとともに、送信キャッシュテーブル６と受信キャッシュテーブル７における不一致を早期に是正することができ、以後のデータフレーム４における発着信アドレス３１の省略を可能とする。
【００４３】
次に、図２〜図５に示した通信ノード１１及び通信ノード１２の動作例を図８〜図１０のフローチャートとして示す。
【００４４】
先ず、図８を参照して、送信側の通信ノード１１がデータフレームを送信する際の動作例を説明する。
受信側の通信ノード１２に対して送信する新規データパケットが発生すると、Ｓ８０１において、送信キャッシュテーブル管理部１１０５が送信キャッシュテーブル６（１１０７）を検索する（発着信アドレス検索ステップ）。
次に、Ｓ８０２において、送信キャッシュテーブル管理部１１０５は、新規データパケットの発着信アドレス３１が送信キャッシュテーブル６（１１０７）に登録済みか否かを判断し、登録済みでない場合（ＮＯの場合）、Ｓ８０６において、ヘッダ加工部１１０２が、圧縮表示４２を０とし、そのまま発着信アドレス３１が含まれるようにする（発着信アドレス３１を削除しない）。また、Ｓ８０７において、送信キャッシュテーブル管理部１１０５が、送信キャッシュテーブル６（１１０７）に当該データパケットの送信に用いるデータフレームの通番４１、発着信アドレス３１を登録するとともに、送達確認フラグ８を０とする。
一方、Ｓ８０２において発着信アドレスが登録済みであった場合（ＹＥＳの場合）、送信キャッシュテーブル管理部１１０５は、送信キャッシュテーブル６（１１０７）の当該発着信アドレスのレコードに示されている送達確認フラグ８の値が１であるか否かを判断する（発着信アドレス検索ステップ）。
Ｓ８０３において送達確認フラグ８の値が０であった場合（ＮＯの場合）、Ｓ８０６に進む。
一方、Ｓ８０３において送達確認フラグ８の値が１であった場合（ＹＥＳの場合）、Ｓ８０４において、ヘッダ加工部１１０２が、圧縮表示４２を１とし、データパケット３に含まれている発着信アドレス３１を削除し、送信キャッシュテーブル６（１１０７）における当該発着信アドレスのレコードに示されている通番４１の値をポインタ４３として付加する（ポインタ付加ステップ）。
次に、Ｓ８０５において、送信キャッシュテーブル管理部１１０５が、送信キャッシュテーブル６（１１０７）の通番４１を新規データフレームの通番４１に更新する。
最後に、Ｓ８０８において、通信部１１０１が、受信側の通信ノード１２に対してデータフレーム４を送信する（通信ステップ）。また、この送信されたデータフレーム４は、再送用フレーム蓄積部１１０３に蓄積される。
【００４５】
次に、図９を参照して、送信側の通信ノード１１が応答パケット５を受信した際の動作例を説明する。
通信部１１０１が受信側の通信ノード１２から応答パケット５を受信した場合に（Ｓ９０１でＹＥＳ）、Ｓ９０２において、制御部１１０４が、応答パケット５の種類がＡＣＫ、ＮＡＫ１、ＮＡＫ２のいずれであるかを判断する。
そして、ＡＣＫであった場合には、Ｓ９０３において、送信キャッシュテーブル管理部１１０５が、送信キャッシュテーブル６（１１０７）の送達確認フラグ８の値が０であれば、１にする。
また、ＮＡＫ１であれば、Ｓ９０４において、通信部１１０１が、再送用フレーム蓄積部１１０３に蓄積されているデータフレームをそのまま（ヘッダを加工することなく）再送する。
また、ＮＡＫ２であれば、Ｓ９０５において、ヘッダ加工部１１０２が、再送用フレーム蓄積部１１０３に蓄積されているデータフレームのヘッダに発着信アドレス３１を付加するとともに、ポインタ４３を削除し、更に、圧縮表示４２の値を０にして、通信部１１０１がヘッダ加工部１１０２によりヘッダが加工されたデータフレーム４を再送する。
【００４６】
次に、図１０を参照して、受信側の通信ノード１２がデータフレームを受信する際の動作例を説明する。
先ず、Ｓ１００１において、通信部１２０１が、送信側の通信ノード１１から送信されたデータフレーム４を受信する（通信ステップ）。
次に、Ｓ１００２において、ヘッダ切出部１２０２がヘッダを切り出すとともに、受信キャッシュテーブル管理部１２０５が、受信キャッシュテーブル７（１２０７）を検索する（通番検索ステップ）。
次に、Ｓ１００３において、受信キャッシュテーブル管理部１２０５が、受信したデータフレームの通番４１が受信キャッシュテーブル７（１２０７）に示されている通番４１に連続しているか否かを判断し、通番が連続していない場合（ＮＯの場合）は、不達のデータフレームが存在することになるので、Ｓ１００４において、制御部１２０４がＮＡＫ１の応答パケット５を生成し、通信部１２０１が当該応答パケット５を送信側の通信ノード１１に対して送信する。
一方、Ｓ１００３において通番が連続していると判断した場合は（ＹＥＳの場合）、Ｓ１００５において、受信キャッシュテーブル管理部１２０５は、圧縮表示４２が１であるか否かを判断する（通番検索ステップ）。
圧縮表示４２が０の場合（ＮＯの場合）は、ポインタ４３ではなく発着信アドレス３１が含まれている場合であり、また、未登録の新規な発着信アドレス３１がデータフレーム４に含まれている場合なので、Ｓ１００６において、受信キャッシュテーブル管理部１２０５は、データフレームに含まれている通番４１と発着信アドレス３１を受信キャッシュテーブル７（１２０７）に登録する。
一方、Ｓ１００５において圧縮表示４２が１であった場合（ＹＥＳの場合）は、発着信アドレス３１の代わりにポインタ４３が含まれている場合なので、Ｓ１００７において、受信キャッシュテーブル管理部１２０５は、データフレーム４に含まれているポインタ４３の値に一致する通番４１が受信キャッシュテーブル７（１２０７）に存在する否かを検索する（通番検索ステップ）。
Ｓ１００７においてポインタ４３の値に一致する通番４１が存在しない場合（ＮＯの場合）は、何らかの理由により、送信キャッシュテーブル６（１１０７）と受信キャッシュテーブル７（１２０７）の内容が一致しない状態になっており、Ｓ１００８において、制御部１２０４がＮＡＫ２の応答パケット５を生成し、通信部１２０１が当該応答パケット５を送信側の通信ノード１１に対して送信する。
一方、Ｓ１００７において、ポインタ４３の値に一致する通番４１が存在した場合（ＹＥＳの場合）は、Ｓ１００９において、受信キャッシュテーブル管理部１２０５が、検索した通番４１に対応する発着信アドレス３１を受信キャッシュテーブル７（１２０７）から抽出し、ヘッダ加工部１２０３が当該発着信アドレスをデータ３２に付加する（アドレス付加ステップ）。
次に、Ｓ１０１０において、受信キャッシュテーブル管理部１２０５が、受信キャッシュテーブル７（１２０７）の通番４１の値を、受信したデータフレーム４に含まれている通番４１の値に更新する。
次に、Ｓ１０１１において、制御部１２０４が、ＡＣＫの応答パケット５を生成し、通信部１２０１が当該応答パケット５を送信側の通信ノード１１に対して送信する。
【００４７】
このように、本実施の形態では、発着信アドレスを含むパケットに通番を付与してフレームを構成し、通信媒体で接続された隣接ノード間で通番を用いてフレームの送達確認および失われたフレームの再送を行う通信システムについて説明した。
そして、この通信システムにおけるヘッダ圧縮方式は、送信側が送信テーブルを設け送信したフレームが運ぶパケットの発着信アドレスとフレームの通番およびフレームの送達確認の有無を前記送信テーブルに記憶する手段を備え、受信側が受信テーブルを設け正しく受信したフレームが運ぶパケットの発着信アドレスとフレームの通番を前記受信テーブルに記憶する手段を備え、送信側が受信側からの送達確認フレームを受信して、送達確認されたフレームが運ぶパケットの発着信アドレスとフレームの通番が受信側に記憶されたことを示す情報を送信テーブルに記憶する手段を備え、送信側が新規パケットを送信する場合に当該パケットの発着信アドレスが送信テーブルに記憶されかつ送達確認されている場合はフレームに圧縮表示を設定し、発着信アドレスの代わりに前記送信テーブルに記憶された通番をポインタとしてフレームに付与して送信する手段を備え、受信側はフレームを受信して圧縮表示が設定されている場合にフレームに付与されたポインタの値が受信テーブルに記憶されていれば、前記受信テーブルに記憶されている発着信アドレスにより元のパケットを復元する手段を備えていることを特徴とする。
【００４８】
また、本実施の形態では、送信側が新規フレームを送信するたびに送信テーブルの通番を更新する手段を備え、受信側が新規フレームを正しく受信するたびに受信テーブルの通番を更新する手段備え、送達確認受信側はフレームを受信してフレームに付与されているポインタによりフローごとの順序制御とパケットの復元とを行うことを特徴とするヘッダ圧縮方式について説明した。
【００４９】
また、本実施の形態では、受信側はパケットを受信して圧縮表示が設定されている場合に圧縮ヘッダの値が受信テーブルに記憶されていなければ、送信側に否定応答を返す手段を備え、送信側は否定応答を受信して圧縮ヘッダを使用せず元の形式のパケットからフレームを構成して再送する手段を備えていることを特徴とするヘッダ圧縮方式について説明した。
【００５０】
このように、本実施の形態では、隣接ノード間で通番を用いて送達確認を行っている場合、送信側と受信側でヘッダ情報をキャッシングし、以前に同じヘッダ情報を送受している場合は、ヘッダ情報の代わりに以前に使用した通番を用いることにより、ヘッダ情報を送らないようにする。
そして、例えば、ＲＦＣ１１４４がヘッダ圧縮を行うフローが静的に決まっているのに対し、本実施の形態では、送信側と受信側でキャッシングの概念を導入し、動的にヘッダ圧縮をおこなう。不特定多数のフローによるパケットが送受され、同じフローのパケットが時間的に集中する傾向のある場合に有効となる。
また、本実施の形態では、特許文献１に開示されている技術とは異なり、コンテキストの概念がなく、下位層のシーケンス番号（通番）を用いて、複数の上位層プロトコルのコンテキスト相当を識別する。そして、下位層のシーケンス番号を用いて、ヘッダ圧縮とコネクションごとのパケット順序識別が同時に可能となる。
【図面の簡単な説明】
【００５１】
【図１】実施の形態１に係る通信システムの構成例を示す図。
【図２】実施の形態１に係る通信ノードの動作例を示すシーケンス図。
【図３】実施の形態１に係る通信ノードの動作例を示すシーケンス図。
【図４】実施の形態１に係る通信ノードの動作例を示すシーケンス図。
【図５】実施の形態１に係る通信ノードの動作例を示すシーケンス図。
【図６】実施の形態１に係る送信側の通信ノードの構成例を示す図。
【図７】実施の形態１に係る受信側の通信ノードの構成例を示す図。
【図８】実施の形態１に係る送信側の通信ノードの動作例を示すフローチャート図。
【図９】実施の形態１に係る送信側の通信ノードの動作例を示すフローチャート図。
【図１０】実施の形態１に係る受信側の通信ノードの動作例を示すフローチャート図。
【図１１】実施の形態１に係る通信ノードのハードウェア構成例を示す図。
【符号の説明】
【００５２】
２  通信回線、３  パケット、４  データフレーム、５  応答パケット、６  送信キャッシュテーブル、７  受信キャッシュテーブル、８  送達確認フラグ、１１  通信ノード装置、１２  通信ノード装置、３１  発着信アドレス、３２  データ、４１  通番、４２  圧縮表示、４３  ポインタ、５１  応答パケット識別情報、１１０１  通信部、１１０２  ヘッダ加工部、１１０３  再送用フレーム蓄積部、１１０４  制御部、１１０５  送信キャッシュテーブル管理部、１１０６  送信キャッシュテーブル記憶部、１１０７  送信キャッシュテーブル、１２０１  通信部、１２０２  ヘッダ切出部、１２０３  ヘッダ加工部、１２０４  制御部、１２０５  受信キャッシュテーブル管理部、１２０６  受信キャッシュテーブル記憶部、１２０７  受信キャッシュテーブル。
【図１】
2007324958.tif 000003
【図２】
2007324958.tif 000004
【図３】
2007324958.tif 000005
【図４】
2007324958.tif 000006
【図５】
2007324958.tif 000007
【図６】
2007324958.tif 000008
【図７】
2007324958.tif 000009
【図８】
2007324958.tif 000010
【図９】
2007324958.tif 000011
【図１０】
2007324958.tif 000012
【図１１】
2007324958.tif 000013