JP2005012698A - データ中継方法、データ中継装置およびその装置を用いたデータ中継システム - Google Patents
データ中継方法、データ中継装置およびその装置を用いたデータ中継システム Download PDFInfo
- Publication number
- JP2005012698A JP2005012698A JP2003177048A JP2003177048A JP2005012698A JP 2005012698 A JP2005012698 A JP 2005012698A JP 2003177048 A JP2003177048 A JP 2003177048A JP 2003177048 A JP2003177048 A JP 2003177048A JP 2005012698 A JP2005012698 A JP 2005012698A
- Authority
- JP
- Japan
- Prior art keywords
- packet
- data
- address
- data relay
- received
- 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.)
- Pending
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
【解決手段】再構成処理部24によって、受信されたIPパケットが分割されているかどうか判断し、分割されている場合には、このIPパケットを一旦パケット蓄積部25に蓄積し、全部の分割されたIPパケットが蓄積されてから、フラグメント処理前のもとの1つのIPパケットデータに再構成する。その後に受信処理部26がアドレス変換テーブル27を検索して、IPパケットのヘッダ内のアドレスを宛先ネットワークで設定されているアドレスにアドレス変換して、ネットワーク間のデータ中継を可能にする。
【選択図】 図2
Description
【発明の属する技術分野】
この発明は、取り込んだパケットのアドレスを変換する際に、パケットの再構成を行うデータ中継方法、データ中継装置およびその装置を用いたデータ中継システムに関するものである。
【0002】
【従来の技術】
従来、ルータなどのデータ中継装置は、ISP(Internet Service Provider:インターネットサービス事業者)のバックボーンネットワークとユーザ間に用いられ、TCP(Transmission Control Protocol)/IP(Internet Protocol)プロトコルを利用したインターネット上に伝送されるパケット構成のデータのデータ中継を行っていた。
【0003】
このようなルータが用いられるネットワークでは、ユーザ数の増大やインターネットの発展などに伴って、各ユーザに付与するIPアドレスの枯渇が大きな問題になってきており、その解決策として種々の方法が提案されている。たとえば、非特許文献1に示すNAT(The IP Network Translator)では、図6に示すように、WAN(ワイドエリアネットワーク)側のグローバルなIPアドレス(ローカルIPアドレスA0〜A2)を、ユーザのLAN(ローカルエリアネットワーク)側のプライベートなIPアドレス(ローカルIPアドレスL0〜L2)にそれぞれアドレス変換することにより、ユーザのローカルなネットワークとISPのグローバルなネットワークとを接続させる機能を提供している。
【0004】
ところが、近年では、インターネットの発展やローカルネットワーク環境の向上に伴い、ローカルネットワークの増加やユーザ内の通信媒体、たとえばPC(パーソナルコンピュータ)の台数が増加する傾向にあり、益々IPアドレスの枯渇を解決することが必要な状況となっている。
【0005】
そこで、従来では、図7のNATアドレス変換テーブルの他の例に示すように、受信ポートとIPアドレスを組み合わせて、ISPが設定するグローバルなIPアドレスを、ユーザ側に設定されるプライベートなIPアドレスに変換するアドレス変換方法が提案されている。このアドレス変換方法では、IPパケットに含まれるレイヤ3をサポートするIPを用いたネットワーク層でのユーザのIPアドレス(図7中のローカルIPアドレスA0〜A2)と、LAN側のローカルポート番号(図7中のローカルポートP0〜P2)と、レイヤ4をサポートするTCP/UDP/ICMPを用いたトランスポート層でのWAN側のIPアドレス(図7中のローカルIPアドレスW)と、ルータにおけるインターフェース(以下、「I/F」という)のローカルポート番号(図7中のローカルポートS0〜S2)とを対応付けて管理しており、ISPのバックボーンネットワークからのパケットが受信される受信ポート番号と、このパケットに含まれる宛先のIPアドレスとから、プライベートなユーザのIPアドレスA0〜A2を検索して、パケットの宛先アドレスの変換を行うことで、N対1のNATアドレス変換を行っていた。
【0006】
なお、図8は、中継されるIPパケットのデータと、フラグメントされたパケットのデータフォーマットを示す図である。図において、このIPパケットは、IPヘッダと、その後に続くIPデータ部とから構成されており、このIPデータ部は、TCPヘッダと、TCPデータ部とから構成されている。
【0007】
このIPヘッダは、図9に示すように、IPのプロトコル版数を示すバージョン(Version)と、このIPヘッダの長さを示すIHLと、このパケットの配送経路上での取り扱い方法を指定するタイプオブサービス(Type ofService)と、パケットの全長を示すトータル長(Total Length)と、パケットを識別するためのIDとして用いられる識別子(Identification)と、パケットのフラグメンテーションをコントロールするために用いられるフラグ(Flags)およびオフセット値(Flagment Offset)と、パケットの生存時間を示すタイムツウライブ(Timeto Live)と、パケットのデータ部をどの上位プロトコルに渡すかを示すプロトコル(Protocol)と、ヘッダのチェックサム(Header Checksum)と、パケットの送信元IPアドレスを示す送信元アドレス(Source Address)と、パケットの宛先IPアドレスを示す宛先アドレス(Destination Address)と、特殊な処理を付加するオプションを指定するオプション(Options)と、オプションの指定に伴い変化するヘッダ長を調整するためのパッディング(Padding)の各フィールドから構成されている。
【0008】
また、TCPヘッダは、図10に示すように、送信元ポート番号を示す送信元ポート(Source Port)と、宛先ポート番号を示す宛先ポート(Destination Port)と、TCPコネクションストリームの中でのセグメントの位置を示すシーケンス番号(Sequence Number)と、次に到着を期待するバイトの番号を伝えるための確認応答番号(Acknowledgment Number)と、データの始まりを示すデータオフセット(Data Offset)と、将来の拡張に予約されたフィールドであるリザーブド(Reserved)と、緊急ポインタフィールド識別を示すURGと、確認フィールド識別を示すACKと、プッシュ機能を示すPSHと、コネクションのリセットを示すRSTと、同期シーケンス番号を示すSYNと、送信側からのデータが無いことを示すFINと、受信可能なデータオクテットの数を示すウインドウ(Window)と、チェックサム(Checksum)と、緊急ポインタの現在の値にかかわる緊急ポインタ(Urgent Pointer)と、オプション(Options)と、パッディング(Padding)と、データ(Data)の各フィールドから構成されている。
【0009】
ここで、WAN側からLAN側へのIPパケットの流れを考えると、ルータがWAN側から受信するIPパケットのうち、IPヘッダのソースアドレスには、リモートIPアドレスR0〜R2のうちの該当するアドレスが付加され、宛先アドレスには、ローカルIPアドレスWが付加され、さらにTCPヘッダの送信元ポートには、リモートポート番号Q0〜Q2のうちの該当するポート番号が付加され、また宛先ポートには、ローカルポート番号S0〜S2のうちの該当するポート番号が付加されている。
【0010】
ルータは、このIPパケットを受信すると、図7に示したNATアドレス変換テーブルを検索して、このIPパケットのうち、IPヘッダの宛先アドレスを、ローカルIPアドレスA0〜A2のいずれかにアドレス変換し、またTCPヘッダの宛先ポートを、ローカルポート番号P0〜P2に変換してLANに送信している。
【0011】
この従来例においては、インターネットを構成する物理的な伝送路では、1つのデータをさらに小さな部分(フラグメント)に分割しないと、データを転送することができないような場合が起こり得る。このような場合、IPのソフトウェアは、図8に示すように、IPパケットのIPデータ部を分割し、それぞれのデータ部にもとのIPパケットのIPヘッダをコピーして付加し、複数のIPパケットとしてデータ転送を行っていた。
【0012】
【非特許文献1】
Kjeld Borch Egevang&Paul Francis共著、「RFC1631 The IP Network Address Translator(NAT)」、インターネット公式プロトコル(STD1)、1994年3月、p.1−5、AlterNIC The NetworkInformation Center、[平成14年10月29日検索]、インターネット〈URL:HYPERLINK“http://www.alternic.org/rfcs/rfc1600/rfc1631.html”〉
【0013】
【発明が解決しようとする課題】
しかしながら、上記従来例では、IPデータ部を構成するTCPヘッダは、分割された最初のパケットに含まれるのみで、2番目以降の分割されたパケットには、このレイヤ4のTCPヘッダが含まれないこととなる。このため、ルータは、LAN側のローカルポートが認識できず、パケットのアドレス変換を行うことができないので、このフラグメント処理されたパケットの転送ができずに廃棄してしまい、パケットのデータ中継の信頼性が低下するという問題点があった。
【0014】
この発明は、上記問題点に鑑みなされたもので、データの分割処理の有無にかかわらずにIPパケットを送信元のネットワークから宛先側のネットワークに転送できるようにして、パケットのデータ転送を確実に行うことができるデータ中継方法、データ中継装置およびその装置を用いたデータ中継システムを提供することを目的とする。
【0015】
【課題を解決するための手段】
上記目的を達成するため、請求項1にかかるデータ中継方法では、複数のネットワーク間でパケット構成のデータを送受信する際に、該パケット内のネットワークのアドレスを所定のアドレスに変換して中継するデータ中継方法において、前記受信したデータを一旦蓄積する蓄積工程と、前記蓄積されたパケットを再構成する再構成工程と、前記受信されたパケットのアドレス変換を含む受信処理を行う受信処理工程とを含むことを特徴とするデータ中継方法が提供される。
【0016】
この発明によれば、たとえばフラグメント処理されたIPパケットを全て蓄積し、かつリアセンブル処理による再構成を行った後に、このパケットのヘッダ内のアドレスのアドレス変換を行うことで、このフラグメント処理の有無にかかわらずにIPパケットを送信元から宛先側のネットワークへ転送することを可能にする。
【0017】
また、請求項2にかかるデータ中継方法では、前記受信したデータが分割処理されたパケットデータかどうか判断する判断工程をさらに含み、前記蓄積工程では、前記判断工程で前記分割処理されたパケットデータと判断された全てのパケットを一旦蓄積し、前記再構成工程では、前記分割処理されたパケットデータの全てが蓄積されると、前記蓄積されたパケットを再構成し、前記受信処理工程では、前記再構成されたパケットおよび前記判断工程で分割処理されていないと判断されたパケット内のネットワークアドレスをアドレス変換することを特徴とする。
【0018】
この発明によれば、受信したデータがフラグメント処理されたパケットデータかどうか判断し、フラグメント処理されたパケットデータは、全て一旦蓄積されて、リアセンブル処理が施されて再構成された後に、アドレス変換され、またフラグメント処理されていないパケットデータは、蓄積されることなく、アドレス変換されて中継されるので、フラグメント処理の有無にかかわらずにIPパケットを送信元から宛先側のネットワークへ転送することを可能にする。
【0019】
また、請求項3にかかるデータ中継方法において、前記再構成工程では、前記分割処理されたパケットを、もとの1つのパケットに再構成することを特徴とする。
【0020】
この発明によれば、フラグメント処理されたIPパケットを全て蓄積し、さらに分割前のもとの1つのIPパケットに再構成した後に、このパケットのヘッダ内のアドレスを宛先のローカルエリアネットワークのプライベートなアドレスまたはワイドエリアネットワークのグローバルなアドレスにアドレス変換することで、このフラグメント処理されたIPパケットを送信元から宛先側のネットワークに転送できるようにする。
【0021】
また、請求項4にかかるデータ中継装置では、複数のネットワーク間でパケット構成のデータを送受信する通信手段を備え、受信した該パケット内のネットワークのアドレスをアドレス変換して中継するデータ中継装置において、前記通信手段で受信されたパケットを蓄積する蓄積手段と、前記蓄積手段内のパケットを再構成する再構成手段と、前記受信されたパケット内のネットワークアドレスを所定のアドレスに変換する受信処理手段とを備えたことを特徴とする。
【0022】
この発明によれば、送信元のネットワークからのIPパケットを通信手段によって受信して、蓄積手段に蓄積し、さらに再構成手段でリアセンブル処理によるIPパケットの再構成を行った後に、このパケットのヘッダ内のネットワークアドレスのアドレス変換を受信処理手段で行うことで、フラグメント処理の有無にかかわらずにIPパケットを送信元から宛先側のネットワークに転送できるようにする。
【0023】
また、請求項5にかかるデータ中継装置では、分割処理された前記パケットデータを中継するとともに、前記受信したパケットが前記分割処理されたパケットデータかどうか判断する判断手段をさらに備え、前記蓄積手段は、前記判断結果に基づいて、前記分割処理されたパケットの全パケットを一旦蓄積し、前記再構成手段は、前記蓄積されたパケットをもとの1つのパケットに再構成し、前記受信処理手段は、前記再構成されたパケットおよび前記判断手段で分割処理されていないと判断されたパケット内のネットワークアドレスを宛先側のネットワークのアドレスに変換することを特徴とする。
【0024】
この発明によれば、送信元のネットワークからのIPパケットを通信手段によって受信し、フラグメント処理されたパケットデータかどうかの判断を判断手段で行い、フラグメント処理されたパケットデータは、蓄積手段によって全てのパケットが蓄積され、さらに再構成手段でフラグメント処理前のもとの1つのIPパケットに再構成した後に、このパケットデータおよびフラグメント処理されていないパケットデータのヘッダ内のネットワークアドレスのアドレス変換を受信処理手段で行うことで、このフラグメント処理の有無にかかわらずにIPパケットを送信元から宛先側のネットワークに転送できるようにする。
【0025】
また、請求項6にかかるデータ中継装置では、前記受信処理手段は、前記受信されたパケットのうちのレイヤ3のヘッダ内の宛先アドレスと、レイヤ4のヘッダ内の宛先ポートのアドレスを変換することを特徴とする。
【0026】
この発明によれば、受信されたパケットのうちの、たとえばIPヘッダ内の宛先アドレスと、TCPヘッダ内の宛先ポートのアドレスを、受信処理手段によってたとえば宛先側のネットワークのアドレスに変換することで、フラグメント処理の有無にかかわらずにIPパケットを送信元から宛先側のネットワークに転送できるようにする。
【0027】
また、請求項7にかかるデータ中継システムでは、複数のネットワーク間でパケット構成のデータを送受信するデータ中継システムにおいて、請求項4〜6のいずれかに記載のデータ中継装置を備え、受信したパケットを再構成して中継することを特徴とする。
【0028】
この発明によれば、送信側のネットワークでフラグメント処理されたIPパケットを請求項4〜6のいずれかに記載のデータ中継装置によって全て蓄積した後に、フラグメント処理前のもとの1つのIPパケットに再構築して、このIPパケットを送信元から宛先側のネットワークに転送することで、データ中継の信頼性を高める。
【0029】
【発明の実施の形態】
以下に図1〜図5の添付図面を参照して、この発明にかかるデータ中継方法、データ中継装置およびその装置を用いたデータ中継システムの好適な実施の形態を説明する。
【0030】
(実施の形態)
図1は、この発明にかかるデータ中継システムの概略構成を示すシステム構成図である。図において、この実施の形態のデータ中継システムは、バックボーンネットワーク1上に設けられたISPの各PEルータ10〜13と、この発明にかかるデータ中継装置であるユーザ用ルータ20〜50とを接続させるとともに、ユーザ用ルータ20〜50には、特定ユーザの各PC61〜63,71〜7n(nは任意の整数)が接続されている。この構成において、たとえばルータ11〜13は、バックボーンネットワーク1を介して接続されてWANを構築し、ルータ20とPC61〜63とは、LAN1を構築し、またルータ30とPC71〜7nは、LAN2を構築している。
【0031】
これらルータ20〜50は、同一の構成からなっているので、ここでは代表してルータ20の構成を示す。ルータ20は、図2に示すように、WAN側のルータ10と接続されるI/F21と、LAN1側のI/F22と、ルーティング制御用のプロトコルによる経路情報の制御処理を行うルーティング制御部23と、IPパケットデータの再構成を行う再構成処理部24と、受信されたIPパケットデータを蓄積するパケット蓄積部25と、再構成されたIPパケットデータのアドレス変換処理を含む受信処理を行う受信処理部26と、図7に示したテーブルと同一構成のアドレス変換テーブル27とから構成されている。
【0032】
パケット蓄積部25は、たとえば送信側のネットワークでフラグメント処理が施されたIPパケットデータの全てのIPパケットを蓄積するものである。このパケット蓄積部25に蓄積されたIPパケットデータは、図示しないリアセンブル処理管理用コントロールブロックによって管理されている。このコントロールブロックには、IPヘッダ中のID(識別子)値と、受信された各IPパケットの受信断片合計長と、フラグメント処理によって分割される前のIPパケットデータのパケット長などを示すパケット情報と、蓄積されている各IPパケットへのリンクを示すポインタ情報が記憶されている。なお、このコントロールブロックは、パケット蓄積部25内に設けられている。
【0033】
再構成処理部24は、I/F21または22で受信されたIPパケットが、送信元のネットワークでフラグメント処理が施されたIPパケットかどうか判断している。そして、このIPパケットがフラグメント処理されている場合には、このフラグメント処理されているIPパケットを、パケット蓄積部25に一旦蓄積させるとともに、リアセンブル処理管理用コントロールブロックを取得して、上述した各種パケット情報やポインタ情報を記憶させることで、分割されて自装置に受信されるIPパケット同士の関連付けを行っている。
【0034】
また、再構成処理部24は、フラグメント処理されたIPパケットが受信されると、受信されたIPパケットの受信断片合計長と、フラグメント処理によって分割される前のIPパケットデータのパケット長との比較計算を行い、その結果からパケット蓄積部25に全てのフラグメント処理されているIPパケットが揃ったことを確認する。そして、このIPパケットが揃うと、再構成処理部24は、これらIPパケットをフラグメント処理前のもとの1つのIPパケットデータに再構築するリアセンブル処理を行って、受信処理部26に出力する。
【0035】
さらに、再構成処理部24は、上記判断結果において、受信されたIPパケットがフラグメント処理を施されたIPパケットでない場合には、このIPパケットデータのパケット蓄積部25への蓄積やリアセンブル処理を行うことなく、直接受信処理部26に出力するように制御動作を行う。
【0036】
受信処理部26は、再構成処理部24で再構成されたIPパケットおよびフラグメント処理されていないIPパケットのアドレス変換処理を含む、後述するNAT処理を行う。すなわち、受信処理部26は、I/F21または22からIPパケットが入力されると、NAT処理の動作を行い、その動作の中でNATアドレス変換テーブル27を検索して、このIPパケットのうち、IPヘッダの宛先アドレスを、該当するアドレスにアドレス変換し、またTCPヘッダの宛先ポートを、該当するポート番号に変換している。
【0037】
次に、このデータ中継装置のデータ処理の動作を図3〜図5のIPパケットの流れを示す図およびフローチャートに基づいて説明する。なお、この実施の形態では、PC71からPC61にIPパケットを送信する場合について説明する。
【0038】
図3は、フラグメント処理されたIPパケットのネットワーク上の流れを示す図であり、図4は、IPパケットのNAT処理の動作を説明するためのフローチャートである。図3において、送信側ネットワークのPC71は、IPパケットのデータ長に応じてフラグメント処理を行うかどうか決定し、このデータ長が規定の長さより長い場合に、IPパケットのフラグメント処理を行ってIPパケット内のIPデータを分割し、さらにこのIPデータにコピーしたIPヘッダを付加する。この分割されたIPパケットはI/FとPE(プロバイダエッジ)ルータ11を介してISPのバックボーンネットワーク1に順番に送信される。このIPパケットは、ネットワーク1上で転送され、さらにPEルータ10を介して、LAN1のCE(カスタマエッジ)ルータ20に受信される。
【0039】
CEルータ20においては、図3に示すNAT処理が行われており、まずI/F21がIPパケットを受信すると(ステップ101)、受信処理部26は、このパケットからレイヤ3の情報を取得する(ステップ102)。この実施の形態においては、受信処理部26は、IPヘッダの各フィールド内の情報を取得するが、その中で発明にかかわる情報は、トータル長と、識別子と、フラグと、フラグメントオフセットと、送信元アドレスと、宛先アドレスとが該当する。
【0040】
受信処理部26は、これら情報を取得すると(ステップ103)、このIPパケットがフラグメント処理されたパケットかどうか判断する(ステップ104)。ここでは、フラグとフラグメントオフセット内の情報に基づいて、このIPパケットがフラグメント処理されたパケットかどうか判断しており、フラグメント処理されたパケットの場合には、後述する再構成処理部24によるリアセンブル処理に移行し(ステップ105)、またフラグメント処理されたパケットでない場合には、このパケットからレイヤ4の情報を取得する(ステップ106)。この実施の形態においては、TCPヘッダの各フィールド内の情報を取得するが、その中で発明にかかる情報は、送信元ポートと、宛先ポートとが該当する。
【0041】
次に、受信処理部26は、これら情報を取得すると(ステップ107)、NATアドレス変換テーブル27を検索して、レイヤ3とレイヤ4の情報を変換する(ステップ108)。ここで、WAN側のルータ10からLAN側のルータ20へのIPパケットの流れを考えると、ルータ20がWAN側ルータ10から受信するIPパケットのうち、IPヘッダのソースアドレスには、リモートIPアドレスR0が付加され、宛先アドレスには、ローカルIPアドレスWが付加されており、さらにTCPヘッダの送信元ポートには、リモートポート番号Q0が付加され、また宛先ポートには、ローカルポート番号S0が付加されている。
【0042】
ルータ20の受信処理部26は、このIPパケットを受信すると、図7に示したNATアドレス変換テーブルを検索して、このIPパケットがローカルIPアドレスがA0のPC61宛のパケットであることを認識する。そして、このIPパケットのうち、IPヘッダの宛先アドレスを、ローカルIPアドレスA0にアドレス変換し、またTCPヘッダの宛先ポートを、ローカルポート番号P0に変換する。
【0043】
次に、受信処理部26は、IPヘッダのトータル長のフィールド内に格納されているパケットデータの長さに応じて、このパケットのフラグメント処理を行うか決定し、この判断結果に基づいた処理動作を行った後に、このIPパケットをI/F22を介してLAN1に送信する(ステップ109)。
【0044】
また、ステップ104において、受信されたIPパケットがフラグメントパケットの場合には、ステップ105において、リアセンブル処理を行うために、受信処理部26は、このIPパケットを再構成処理部24に出力して、この再構成処理部24によってリアセンブル処理を行わせる。
【0045】
再構成処理部24は、IPパケットが入力されると、図5に示すリアセンブル処理を行う。図において、再構成処理部24は、受信処理部26からIPパケットが入力すると、このIPパケットに付与されるIPヘッダのフラグとフラグメントオフセット内の情報に基づいて、このIPパケットが分割されているパケットかどうか判断し(ステップ201)、分割されている場合には、このIPパケットに関わる他の断片(IPパケット)を既に取得しているかどうか判断する(ステップ202)。
【0046】
この判断において、再構成処理部24は、このIPパケットにおけるIPヘッダのIDと、リアセンブル処理管理用コントロールブロックに格納されたIPヘッダのIDとを比較し、これらIDが異なるIDの場合には、このIPパケットに関わる他の断片はないと判断し、このIPパケットをパケット蓄積部25に蓄積するとともに、新たなリアセンブル処理管理用コントロールブロックを取得する(ステップ203)。そして、この取得したリアセンブル処理管理用コントロールブロックに上述した種々のパケット情報とポインタ情報を記憶させて、このコントロールブロックに分割されているIPパケットを繋ぐ(ステップ204)。
【0047】
また、ステップ202の判断において、これらIDが同じ場合には、このIPパケットに関わる他の断片が、既にパケット蓄積部25に蓄積されていると判断して、ステップ204において、このIPパケットをパケット蓄積部25に蓄積するとともに、該当するコントロールブロックに上述した種々のパケット情報とポインタ情報を記憶させて、このコントロールブロックに分割されているIPパケットを繋ぐ。
【0048】
次に、再構成処理部24は、今までに受信した断片の合計長と、分割前のIPパケット長とから、断片が全て揃ったか確認の計算を行う(ステップ205)。そして、分割された断片が全て揃ったか判断し(ステップ206)、まだ全て揃っていない場合には、次のパケットに対するリアセンブル処理に移行する(ステップ207)。また、分割された断片が全て揃った場合には、IPパケットを図3に示すように、分割前の1つのIPパケットに再構成して受信処理部26に出力し(ステップ208)、この受信処理部26による受信処理に移行する(ステップ209)。
【0049】
図4において、受信処理部26は、再構成処理部24からのIPパケットの有無によってリアセンブルが完了したかどうか判断しており(ステップ110)、再構成処理部24からIPパケットが入力すると、ステップ106〜109において、このIPパケットのレイヤ4の情報を取得し、ステップ102で取得したレイヤ3の情報とともに、上述したようにLAN側の情報に変換して、I/F22を介してLAN1に送信することができる。
【0050】
このように、この実施の形態では、受信されたIPパケットがフラグメント処理されているかどうか判断し、フラグメント処理されている場合には、この分割化されたIPパケットを一旦パケット蓄積部に蓄積した後に、フラグメント処理前のもとの1つのIPパケットデータに再構成するリアセンブル処理を行うので、全てのIPパケットにレイヤ3とレイヤ4のヘッダが付加されることとなり、受信処理部は、アドレス変換を行うときに、このレイヤ4の情報を取得してアドレス変換を行うことができる。これにより、この実施の形態では、このフラグメント処理されたIPパケットを異なるネットワーク側に転送できるようになり、フラグメント処理の有無に関わらずにIPパケットのデータ転送を確実に行うことができ、データ中継の信頼性を向上することができる。
【0051】
なお、この実施の形態では、WAN側からLAN側へのIPパケットの中継動作の場合を説明したが、この発明はこれに限らず、LAN側からWAN側へのIPパケットの場合も、同様にフラグメント処理されたIPパケットのリアセンブル処理を行うことで、フラグメント処理されたIPパケットをWAN側に転送することが可能となる。
【0052】
この発明は、これら実施形態に限定されるものではなく、この発明の要旨を逸脱しない範囲で種々の変形実施が可能である。たとえば、この実施の形態では、フラグメント処理されたIPパケットのみをパケット蓄積部に蓄積するようにしたが、この発明はこれに限らず、受信したパケットを一旦、このパケット蓄積部に蓄積されてから、パケットの再構成やアドレス変換を行うようにすることも可能である。
【0053】
また、この実施の形態では、データ中継装置であるルータの機能として、再構成処理部と受信処理部を別々の構成としたが、再構成の処理を受信処理の処理工程の一環として、受信処理部によって行わせるようにルータの機能を構成することも可能である。
【0054】
また、この実施の形態では、リアセンブル処理によって、分割されたパケットをもとの1つのIPパケットに再構成し、アドレス変換を行った後に、パケットデータの長さに応じて、再びこのパケットのフラグメント処理を行っているが、この発明はこれに限らず、たとえばこの再構成の後にフラグメント処理を行ってから、アドレス変換処理を行うようにすることも可能である。
【0055】
【発明の効果】
以上説明したように、この発明では、複数のネットワーク間でパケット構成のデータを送受信する際に、該パケット内のネットワークのアドレスを所定のアドレスに変換して中継するデータ中継にて、受信したパケットを一旦蓄積し、かつ蓄積されたパケットの再構成を行った後に、パケットのヘッダ内のアドレスを変換するので、この分割処理の有無にかかわらずにIPパケットを送信元のネットワークから宛先側のネットワークに転送できるようになり、パケットのデータ転送を確実に行うことができる。
【0056】
また、この発明では、受信したデータが分割処理されたパケットデータかどうか判断し、分割されたパケットデータの場合には、全て一旦蓄積し、分割されたパケットが全て揃うと再構成を行った後に、パケットのヘッダ内のアドレスを変換するので、この分割処理の有無にかかわらずにIPパケットを送信元のネットワークから宛先側のネットワークに転送できるようになり、パケットのデータ転送を確実に行うことができる。
【0057】
また、この発明では、分割されたパケットを全て蓄積し、さらに分割前のもとの1つのパケットに再構成した後に、ヘッダ内のアドレスを宛先のネットワークで設定されるアドレスにアドレス変換するので、分割処理されたIPパケットを送信元から宛先側のネットワークに良好に転送することができる。
【0058】
また、この発明では、分割処理されたパケットを請求項4〜6のいずれかに記載のデータ中継装置を用いて再構成して、送信元から宛先側のネットワークに転送するので、分割処理されたパケットを確実に中継することができ、データ中継の信頼性を向上させることができる。
【図面の簡単な説明】
【図1】この発明にかかるデータ中継システムの概略構成を示すシステム構成図である。
【図2】図1に示したルータの構成を示す構成図である。
【図3】フラグメント処理されたIPパケットのネットワーク上の流れを示す図である。
【図4】図2に示した受信処理部におけるIPパケットのNAT処理の動作を説明するためのフローチャートである。
【図5】図2に示した再構成処理部におけるIPパケットのリアセンブル処理を説明するためのフローチャートである。
【図6】従来のNATアドレス変換テーブルの構成内容の一例を示す構成図である。
【図7】同じく、従来のNATアドレス変換テーブルの構成内容の他の例を示す構成図である。
【図8】中継されるIPパケットのデータと、フラグメントされたパケットのデータフォーマットを示す図である。
【図9】図8に示したIPヘッダのデータフォーマットを示す図である。
【図10】同じく、図8に示したTCPヘッダのデータフォーマットを示す図である。
【符号の説明】
1 バックボーンネットワーク
10〜13 WAN側ルータ(PEルータ)
20〜50 ユーザ用ルータ(CEルータ)
21 WAN側インターフェース(I/F)
22 LAN側インターフェース(I/F)
23 ルーティング制御部
24 再構成処理部
25 パケット蓄積部
26 受信処理部
27 アドレス変換テーブル
61〜63,71〜7n パーソナルコンピュータ(PC)
A0〜A2,L0〜L2 LAN側ローカルIPアドレス
P0〜P2 LAN側ローカルポート番号
Q0〜Q2 リモートポート番号
R0〜R2 リモートIPアドレス
S0〜S2 WAN側ローカルポート番号
W WAN側ローカルIPアドレス
Claims (7)
- 複数のネットワーク間でパケット構成のデータを送受信する際に、該パケット内のネットワークのアドレスを所定のアドレスに変換して中継するデータ中継方法において、
前記受信したデータを一旦蓄積する蓄積工程と、
前記蓄積されたパケットを再構成する再構成工程と、
前記受信されたパケットのアドレス変換を含む受信処理を行う受信処理工程と、
を含むことを特徴とするデータ中継方法。 - 前記データ中継方法では、前記受信したデータが分割処理されたパケットデータかどうか判断する判断工程を、
さらに含み、前記蓄積工程では、前記判断工程で前記分割処理されたパケットデータと判断された全てのパケットを一旦蓄積し、
前記再構成工程では、前記分割処理されたパケットデータの全てが蓄積されると、前記蓄積されたパケットを再構成し、
前記受信処理工程では、前記再構成されたパケットおよび前記判断工程で分割処理されていないと判断されたパケット内のネットワークアドレスをアドレス変換することを特徴とする請求項1に記載のデータ中継方法。 - 前記データ中継方法において、前記再構成工程では、前記分割処理されたパケットを、もとの1つのパケットデータに再構成することを特徴とする請求項1に記載のデータ中継方法。
- 複数のネットワーク間でパケット構成のデータを送受信する通信手段を備え、受信した該パケット内のネットワークのアドレスをアドレス変換して中継するデータ中継装置において、
前記通信手段で受信されたパケットを蓄積する蓄積手段と、
前記蓄積手段内のパケットを再構成する再構成手段と、
前記受信されたパケット内のネットワークアドレスを所定のアドレスに変換する受信処理手段と、
を備えたことを特徴とするデータ中継装置。 - 前記データ中継装置は、分割処理された前記パケットデータを中継するとともに、
前記受信したパケットが前記分割処理されたパケットデータかどうか判断する判断手段を、
さらに備え、前記蓄積手段は、前記判断結果に基づいて、前記分割処理されたパケットの全パケットを一旦蓄積し、
前記再構成手段は、前記蓄積されたパケットをもとの1つのパケットデータに再構成し、
前記受信処理手段は、前記再構成されたパケットおよび前記判断手段で分割処理されていないと判断されたパケット内のネットワークアドレスを宛先側のネットワークのアドレスに変換することを特徴とする請求項4に記載のデータ中継装置。 - 前記受信処理手段は、前記受信されたパケットのうちのレイヤ3のヘッダ内の宛先アドレスと、レイヤ4のヘッダ内の宛先ポートのアドレスを変換することを特徴とする請求項4または5に記載のデータ中継装置。
- 複数のネットワーク間でパケット構成のデータを送受信するデータ中継システムにおいて、
請求項4〜6のいずれかに記載のデータ中継装置を備え、受信したパケットを再構成して中継することを特徴とするデータ中継システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003177048A JP2005012698A (ja) | 2003-06-20 | 2003-06-20 | データ中継方法、データ中継装置およびその装置を用いたデータ中継システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003177048A JP2005012698A (ja) | 2003-06-20 | 2003-06-20 | データ中継方法、データ中継装置およびその装置を用いたデータ中継システム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005012698A true JP2005012698A (ja) | 2005-01-13 |
Family
ID=34099747
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003177048A Pending JP2005012698A (ja) | 2003-06-20 | 2003-06-20 | データ中継方法、データ中継装置およびその装置を用いたデータ中継システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005012698A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008078365A1 (ja) * | 2006-12-22 | 2008-07-03 | Fujitsu Limited | 送信局及び中継局並びに中継方法 |
JP2011525774A (ja) * | 2008-06-23 | 2011-09-22 | アルカテル−ルーセント ユーエスエー インコーポレーテッド | パケットフラグメントの処理 |
JP2014531880A (ja) * | 2011-10-06 | 2014-11-27 | クアルコム,インコーポレイテッド | データパケット処理のためのシステムおよび方法 |
-
2003
- 2003-06-20 JP JP2003177048A patent/JP2005012698A/ja active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008078365A1 (ja) * | 2006-12-22 | 2008-07-03 | Fujitsu Limited | 送信局及び中継局並びに中継方法 |
JP4801743B2 (ja) * | 2006-12-22 | 2011-10-26 | 富士通株式会社 | 送信局及び中継局並びに中継方法 |
US8509229B2 (en) | 2006-12-22 | 2013-08-13 | Fujitsu Limited | Sending station, relay station, and relay method |
JP2011525774A (ja) * | 2008-06-23 | 2011-09-22 | アルカテル−ルーセント ユーエスエー インコーポレーテッド | パケットフラグメントの処理 |
JP2014531880A (ja) * | 2011-10-06 | 2014-11-27 | クアルコム,インコーポレイテッド | データパケット処理のためのシステムおよび方法 |
US9185073B2 (en) | 2011-10-06 | 2015-11-10 | Qualcomm Incorporated | Systems and methods for data packet processing |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1128614B1 (en) | IP router device having a TCP termination function and a medium thereof | |
JP4038223B2 (ja) | パケット転送方法及び装置 | |
US7590755B2 (en) | Method to offload a network stack | |
US20050182854A1 (en) | Method to synchronize and upload an offloaded network stack connection with a network stack | |
CN108111509B (zh) | 数据传输方法 | |
EP1326403B1 (en) | Communication system for establishing PPPoE like connections between IEEE 1394 based peers and IP based peers | |
US10158570B2 (en) | Carrying TCP over an ICN network | |
US20090238209A1 (en) | Method for transmitting fragmented packets, communication system, and tunnel equipment | |
US7260650B1 (en) | Method and apparatus for tunneling information | |
US9445384B2 (en) | Mobile device to generate multiple maximum transfer units and data transfer method | |
JP5506933B2 (ja) | ネットワーク相互通信の実現方法及びシステム | |
CN100433714C (zh) | 一种ip分片报文传输处理方法 | |
JPH09331348A (ja) | ネットワーク間接続装置 | |
KR20140024051A (ko) | 다수의 인터페이스 네트워크 노드들에 대한 통신 메커니즘 | |
Sun et al. | The Internet underwater: An IP-compatible protocol stack for commercial undersea modems | |
WO2009124477A1 (zh) | 一种报文传输的方法、系统和装置 | |
JP2005085284A (ja) | フェイルオーバーイベントをサポートするネットワーク状態オブジェクトの多重オフロード | |
WO2017206058A1 (zh) | 一种宽带集群通信中的通信配置方法和装置 | |
JP2007180686A (ja) | 中継通信装置、記憶媒体、集積回路および通信システム | |
Rayes et al. | The internet in IoT | |
JP7035771B2 (ja) | パケット取得装置、パケット取得方法、およびパケット取得プログラム | |
JP2005012698A (ja) | データ中継方法、データ中継装置およびその装置を用いたデータ中継システム | |
JP2004158973A (ja) | パケット中継装置 | |
JPH09270822A (ja) | パケット通信経路試験方法 | |
JP4776330B2 (ja) | ブリッジ装置及びブリッジ装置の制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060201 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20071009 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20071016 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071217 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080603 |