JP2010252103A - インタネットワーク装置、及び、ローカルアドレス及び各ローカルアドレスと共に用いられるローカルアドレス内通信ポート番号と、グローバルアドレス及び各グローバルアドレスと共に用いられるグローバルアドレス内通信ポート番号とを相互に変換する方法 - Google Patents

インタネットワーク装置、及び、ローカルアドレス及び各ローカルアドレスと共に用いられるローカルアドレス内通信ポート番号と、グローバルアドレス及び各グローバルアドレスと共に用いられるグローバルアドレス内通信ポート番号とを相互に変換する方法 Download PDF

Info

Publication number
JP2010252103A
JP2010252103A JP2009100149A JP2009100149A JP2010252103A JP 2010252103 A JP2010252103 A JP 2010252103A JP 2009100149 A JP2009100149 A JP 2009100149A JP 2009100149 A JP2009100149 A JP 2009100149A JP 2010252103 A JP2010252103 A JP 2010252103A
Authority
JP
Japan
Prior art keywords
address
port
local
global
port number
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
JP2009100149A
Other languages
English (en)
Other versions
JP5036752B2 (ja
Inventor
Takashi Nagumo
隆司 南雲
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.)
Alaxala Networks Corp
Original Assignee
Alaxala Networks 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 Alaxala Networks Corp filed Critical Alaxala Networks Corp
Priority to JP2009100149A priority Critical patent/JP5036752B2/ja
Publication of JP2010252103A publication Critical patent/JP2010252103A/ja
Application granted granted Critical
Publication of JP5036752B2 publication Critical patent/JP5036752B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】ローカルアドレスとグローバルアドレスとを変換するインタネットワーク装置において、アドレス・ポート変換表へのアクセス回数を低減することのできる技術を提供する。
【解決手段】インタネットワーク装置は、アドレス・ポート変換表を記憶した変換表記億部と、アドレス・ポート変換表に基づいて、複数のネットワーク間の通信で送受信されるパケット内のローカルアドレス及びローカルアドレス内通信ポート番号とグローバルアドレス及びグローバルアドレス内通信ポート番号とを相互変換するアドレス変換処理部と、を備える。変換表記億部は、アドレス・ポート変換表において、ローカルアドレス及びグローバルアドレスを、それぞれアドレス群ごとに並べて記憶しており、アドレス群内では、ローカルアドレス及びグローバルアドレスは、それぞれ、メモリ空間内に線形に配置されている。
【選択図】図8

Description

本発明は、複数のネットワークを接続するインタネットワーク装置に関し、特に、特定のネットワーク内で用いられるローカルアドレスと複数のネットワーク間の通信で用いられるグローバルアドレスとを相互に変換する機能を有するインタネットワーク装置及びその変換方法に関するものである。
従来、任意に割り当てられたローカルアドレスを用いるローカルネットワークと、グローバルアドレスを用いて複数のネットワークを接続するグローバルネットワーク(以下代表例としてインターネットと称す)との間での通信を行う場合には、ローカルネットワークとインターネットの境界にローカルアドレスとグローバルアドレスとの間でアドレス変換を行う機能を備えた機器を配置し、双方のアドレスを変換する事により送受信端末間の通信を実現していた。このアドレス変換機能をNetwork Address Translationと呼んでいる。また限られたグローバルアドレスを有効に使用するために、TCP/UDPの通信ポート番号も利用して、接続可能な数を増やすアドレス変換機能については、Network Address and Port Translationと呼んでいる(特許文献1参照)。現在、アドレス変換機能とは、後者のNetwork Address and Port Translationを指すことが一般的である。本明細書においても、アドレス変換機能(以下NATと呼ぶ)はNetwork Address and Port Translationを指すものとする。従来、こうしたアドレス変換機能は、小規模な家庭用企業内ローカルネットワークからインターネットに接続するルータ等に装用されてきた。
一方、近年では、IPv4でのグローバルアドレスの不足などに起因して、ユーザ数の多いインターネットサービスプロバイダ(以下ISPと称す)でも、自ISPの網内のルータにローカルアドレスを割り当ててユーザを収容したいとのニーズが高まってきた。この場合、ISPとインターネットの接続点(キャリアのエッジ)においてもNAT機能が必要となる。この位置でのNATは、従来の企業ユーザや個人ユーザがISPと接続するためのNATと役割や求められる性能が大きく異なるため、Carrier Grade NAT(以下CGNと称す)と呼ばれる。このCGN機能を有するルータにはキャリア系の性能および信頼性が求められている。以下、CGN機能を有するルータをインタネットワーク装置と称す。
インタネットワーク装置では、扱うセッション数が膨大かつ回線が高速であるため、膨大なアドレス・ポート変換表を高速に参照する必要がある。しかし従来のリニア検索やハッシュ検索等の方式では、扱うセッション数が大きいと、比例してアドレス・ポート変換表を格納するメモリへのアクセス回数が増えてしまい、アドレス・ポート変換を高速に実行することが困難になるという問題があった。
特開平11−150566号公報
本発明は、上述した従来の課題を解決するためになされたものであり、ローカルアドレスとグローバルアドレスとを変換するインタネットワーク装置において、アドレス・ポート変換表へのアクセス回数を低減することのできる技術を提供することを目的とする。
本発明は、上述の課題の少なくとも一部を解決するために、以下の形態または適用例を取ることが可能である。
[適用例1]
特定のネットワーク内で用いられるローカルアドレス及び各ローカルアドレスと共に用いられるローカルアドレス内通信ポート番号と、複数のネットワーク間の通信で用いられるグローバルアドレス及び各グローバルアドレスと共に用いられるグローバルアドレス内通信ポート番号とを相互に変換するインタネットワーク装置であって、
ローカルアドレス及びローカルアドレス内通信ポート番号の組が並んだローカルアドレス対と、グローバルアドレス及びグローバルアドレス内通信ポート番号の組が並んだグローバルアドレス対とを対応付けるアドレス・ポート変換表を記憶した変換表記億部と、
前記アドレス・ポート変換表に基づいて、複数のネットワーク間の通信で送受信されるパケット内のローカルアドレス及びローカルアドレス内通信ポート番号とグローバルアドレス及びグローバルアドレス内通信ポート番号とを相互変換するアドレス変換処理部と、
を備え、
前記変換表記億部は、前記アドレス・ポート変換表において、前記ローカルアドレス及び前記グローバルアドレスを、それぞれアドレス群ごとに並べて記憶しており、
前記アドレス群内では、前記ローカルアドレス及び前記グローバルアドレスは、それぞれ、メモリ空間内に線形に配置されている、インタネットワーク装置。
適用例1のインタネットワーク装置によれば、アドレス・ポート変換表において、ローカルアドレス及びグローバルアドレスは、それぞれアドレス群ごとに並んでおり、アドレス群内では、ローカルアドレス及びグローバルアドレスは、それぞれ、線形に並んでいるので、演算によってアドレス・ポート変換表におけるアクセス位置を特定することができ、アドレス・ポート変換表へのアクセス回数を低減することができる。
[適用例2]
請求項1記載のインタネットワーク装置であって、さらに、
前記通信に用いられるパケットから変換対象となるアドレス及びアドレス内通信ポート番号を抽出する抽出部と、
前記抽出されたアドレスが属するアドレス群を検索するアドレス群検索部と、
前記抽出されたアドレスと前記アドレス群の先頭アドレスとの差分を算出する差分算出部と、
前記抽出されたアドレスが属するアドレス群の先頭アドレスと、前記差分と、前記抽出された通信ポート番号とに基づいて、前記アドレス・ポート変換表における位置であって前記変換対象となるアドレス及びアドレス内通信ポート番号に対応する位置を特定するポインタと、
を備える、インタネットワーク装置。
適用例2のインタネットワーク装置によれば、抽出されたアドレスが属するアドレス群の先頭アドレスと、差分と、抽出された通信ポート番号とに基づいて、アドレス・ポート変換表におけるアクセス位置を特定するので、アドレス・ポート変換表へのアクセス回数を低減することができる。
なお、本発明は、種々の態様で実現することが可能である。例えば、特定のネットワーク内で用いられるローカルアドレス及び当該ローカルアドレス内通信ポート番号と、複数のネットワーク間の通信で用いられるグローバルアドレス及び当該グローバルアドレス内通信ポート番号とを相互に変換する方法および変換システム、それらの方法または装置の機能を実現するための集積回路、コンピュータプログラム、そのコンピュータプログラムを記録した記録媒体等の形態で実現することができる。
図1は、本発明の一実施例としてのインタネットワーク装置100が用いられるネットワーク構成を示す説明図である。 インタネットワーク装置100の構成を示す説明図である。 アドレス・ポート変換部120の各構成部のプロセッサシステムへの配置を示す説明図である。 実施例における構成定義を示す説明図である。 内側アドレス群を同じ上位アドレスを持つ集合ごとに並べた説明図である。 内側アドレス群検索テーブル122を示す説明図である。 ポート検索ポインタ123を示す説明図である。 アドレス・ポート変換テーブル124を示す説明図である。 ポートマッピングテーブル126を示す説明図である。 インタネットワーク装置100によるアドレス・ポート変換の例を示す説明図である。 Outboundパケットを転送する場合における各構成要素の参照方式を示す説明図である。 Outboundパケットを転送する場合における手順を示すフローチャートである。 セッションの登録をする場合における各構成要素の参照方式を示す説明図である。 セッションの登録をする場合における手順を示すフローチャートである。 Inboundパケットを転送する場合における各構成要素の参照方式を示す説明図である。 Inboundパケットを転送する場合における手順を示すフローチャートである。 Outboundパケットの転送性能をアドレス・ポート変換テーブルの検索方式ごとに比較するグラフである。 Inboundパケットの転送性能をアドレス・ポート変換テーブルの検索方式ごとに比較するグラフである。
次に、本発明の実施の形態を実施例に基づいて以下の順序で説明する。
A.実施例:
A1.ネットワークシステム全体の構成例:
A2.インタネットワーク装置100の構成:
A3.プロセッサシステムへの各構成部の配置:
A4.構成定義:
A5.各構成要素の説明:
A6.パケットの転送:
A6−1.Outboundパケットの転送:
A6−2.セッションの登録:
A6−3.Inboundパケットの転送:
A7.効果:
B.変形例:
A.実施例:
A1.ネットワークシステム全体の構成例:
図1は、本発明の一実施例としてのインタネットワーク装置100が用いられるネットワーク構成を示す説明図である。図示するように、本実施例のインタネットワーク装置100は、多数の企業ルータやホームルータを収容するインターネットサービスプロバイダと接続されている。
従来型のインターネットサービスプロバイダ165は、NAT(Network Address Translation)機能を有するホームルータ155を介して個人ユーザ156を収容しており、さらに、NAT機能を有する企業ルータ150を介して企業ユーザ162を収容している。企業ユーザ162は、ローカルネットワーク160を構成している。インターネットサービスプロバイダ165は、グローバルアドレスを有しており、キャリアエッジルータ185を介してインターネット180に乗り入れている。
これに対して、インターネットサービスプロバイダ166は、グローバルアドレスを有していないため、CGN(Career Grade NAT)機能を有するインタネットワーク装置100に接続されており、キャリアエッジルータ185を介してインターネット180に乗り入れている。そして、インターネットサービスプロバイダ166は、NAT機能を有するホームルータ155を介して個人ユーザ156を収容し、NAT機能を有する企業ルータ150を介して企業ユーザ163を収容している。インターネットサービスプロバイダ167も同様である。すなわち、インタネットワーク装置100の下流側におけるユーザは、IPアドレスとしてローカルアドレスを使用しており、インターネット上の、つまりグローバルなIPアドレスを有するサイトやサーバとは、インタネットワーク装置100によってローカルアドレスをグローバルアドレスに変換して通信を行なっている。インターネット180には、個人ユーザや企業ユーザからアクセス可能な位置に、HTTPサーバ181が設けられている。なお、インタネットワーク装置100は、キャリアエッジルータ185の内部に含まれる構成としてもよい。また、インタネットワーク装置100は、各インターネットサービスプロバイダ毎に設けてもよい。
A2.インタネットワーク装置100の構成:
図2は、インタネットワーク装置100の構成を示す説明図である。インタネットワーク装置100は、アドレス・ポート変換を行なうことによって、ローカルアドレスネットワーク145とグローバルアドレスネットワーク146との間で通信を行なう装置である。インタネットワーク装置100は、ローカルアドレスネットワーク145側に配置されるインサイド部105と、グローバルアドレスネットワーク146側に配置されるアウトサイド部110と、アドレス・ポート変換を行なうアドレス・ポート変換部120とを備えている。
インサイド部105は、ローカルアドレスネットワーク145側から送信されたパケット(以下では、Outboundパケットとも呼ぶ)を入力とするパケット入力部101と、グローバルアドレスネットワーク146側から送信されたパケット(以下では、Inboundパケットとも呼ぶ)をローカルアドレスネットワーク145側へ出力するパケット出力部102と、パケットのルーティングを行なう経路制御部103とを備えている。経路制御部103は、Outboundパケットをアドレス・ポート変換部120にルーティングする機能と、アドレス・ポート変換部120からのInboundパケットをパケット出力部102にルーティングする機能とを有している。
アウトサイド部110は、Outboundパケットをグローバルアドレスネットワーク146側へ出力するパケット出力部106と、グローバルアドレスネットワーク146から送信されたInboundパケットを入力とするパケット入力部107と、パケットのルーティングを行なう経路制御部108とを備えている。経路制御部108は、Outboundパケットをパケット出力部106にルーティングする機能と、Inboundパケットをアドレス・ポート変換部120にルーティングする機能とを有している。
アドレス・ポート変換部120は、Outboundパケット転送部121と、内側アドレス群検索テーブル122と、ポート検索ポインタ123と、アドレス・ポート変換テーブル124と、セッション管理部125と、ポートマッピングテーブル126と、エージング管理部127と、Inboundパケット転送部128と、外側アドレス群検索テーブル129と、装置制御部130とを備えている。なお、本実施例では、ローカルアドレスを内側アドレスとも呼び、グローバルアドレスを外側アドレスとも呼ぶ。
ここで、ローカルアドレスネットワーク145からグローバルアドレスネットワーク146の方向にパケットが送信される場合(Outbound転送)について説明する。Outboundパケット転送部121は、インサイド部105から入力されたOutboundパケットから、送信元アドレス及び送信元ポート番号を取得する。そして、Outboundパケット転送部121は、取得した送信元アドレスを内側アドレス群検索テーブル122へ供給すると共に、送信元ポート番号をポート検索ポインタ123に供給する。内側アドレス群検索テーブル122は、ツリー検索を行なうことによって、供給された送信元アドレスがどの内側アドレス群に属するかを判定する。内側アドレス群とは、連続する複数の内側アドレスからなる内側アドレスの集合であり、後に詳述する。ポート検索ポインタ123は、送信元アドレス及び送信元ポート番号に対応する位置に、アドレス・ポート変換テーブル124に対するポインタ情報を格納している。Outboundパケット転送部121は、ポート検索ポインタ123に格納されているポインタ情報に基づいてアドレス・ポート変換テーブル124を参照する。そして、Outboundパケット転送部121は、読み出したアドレス・ポート変換情報に従って、Outboundパケットの送信元アドレス及び送信元ポート番号を書き換えて、Outboundパケットをアウトサイド部110に出力する。
なお、ポート検索ポインタ123がアドレス・ポート変換テーブル124に対するポインタ情報を格納していない場合には、Outboundパケット転送部121は、セッション管理部125に対して、ポインタ情報の新規登録を要求する。セッション管理部125は、新規登録要求を受けると、ポートマッピングテーブル126における送信元アドレスに対応する位置を参照する。セッション管理部125は、当該送信元アドレスに割り当てられた通信ポートに空きがあれば、ポート検索ポインタ123およびアドレス・ポート変換テーブル124に対してポインタ情報を登録する。エージング管理部127は、セッションの使用状況を監視しており、そのセッションの使用状況をセッション管理部125に通知する。セッション管理部125は、使用されていない通信ポートがある場合には、ポート検索ポインタ123およびアドレス・ポート変換テーブル124におけるポインタ情報の削除を行なう。装置制御部130は、後述する構成定義を、アドレス・ポート変換部120の各構成要素に通知する機能を有する。
次に、グローバルアドレスネットワーク146からローカルアドレスネットワーク145の方向にパケットが送信される場合(Inbound)について説明する。Inboundパケット転送部128は、アウトサイド部110から入力されたInboundパケットから、宛先アドレス及び宛先ポート番号を取得する。そして、Inboundパケット転送部128は、取得した宛先アドレスを外側アドレス群検索テーブル129へ供給する。外側アドレス群検索テーブル129は、ツリー検索を行なうことによって、供給された宛先アドレスがどの外側アドレス群に属するかを判定する。外側アドレス群については後述する。Inboundパケット転送部128は、アドレス・ポート変換テーブル124のうち、宛先アドレスと宛先ポート番号とに対応する位置に格納されているアドレス・ポート変換情報を読み出し、Inboundパケットの宛先アドレス及び宛先ポート番号を書き換えて、Inboundパケットをインサイド部105に出力する。
A3.プロセッサシステムへの各構成部の配置:
インタネットワーク装置100は、周知のプロセッサ、メモリ、ローカル側及びグローバル側のI/Fを、ハード的には備えている。このうち、特に、アドレス変換を司る部分をプロセッサシステム144として図3に抽出した。図3は、アドレス・ポート変換部120の各構成部のプロセッサシステムへの配置を示す説明図である。アドレス・ポート変換部120は、プロセッサシステム144により実現することができる。プロセッサシステム144は、CPU部135と、メインメモリ部140とを備えている。CPU部135は、プロセッサコア部136と、2ndキャッシュ部139とを備えている。プロセッサコア部136は、演算処理部137と、高速SRAM141と、1stキャッシュ部138とを備えている。
メインメモリ部140は、図2におけるInboundパケット転送部121と、Outboundパケット転送部128と、セッション管理部125と、エージング管理部127との機能を実現するためのプログラムを格納しており、これらの機能は、メインメモリ部140に記憶されているプログラムをCPU部135が実行することによって実現される。メインメモリ部140は、さらに、図2におけるポート検索ポインタ123と、ポートマッピングテーブル126と、アドレス・ポート変換テーブル124とを格納している。高速SRAM141は、図2における内側アドレス群検索テーブル122と、外側アドレス群検索テーブル129とを格納している。したがって、演算処理部137は、内側アドレス群検索テーブル122と外側アドレス群検索テーブル129に対して、高速にアクセスすることができる。なお、1stキャッシュ部138の一部をスクラッチパッド化して、内側アドレス群検索テーブル122と、外側アドレス群検索テーブル129とを格納することとしてもよい。
A4.構成定義:
図4は、実施例における構成定義を示す説明図である。本実施例における構成定義は、ローカル側構成定義200と、グローバル側構成定義230とに分類することができる。ローカル側構成定義200には、連続する複数の内側アドレスをネットワーク単位ごとにそれぞれまとめた内側アドレス群211〜218が定義されている。また、ローカル側構成定義200には、1つの内側アドレス毎に割り振られた1ユーザ当りのセッション制限数220と、1ユーザ当りの予備セッション数221とが定義されている。本実施例では、セッション制限数220及び予備セッション数221は、共に1024である。グローバル側構成定義230には、連続する複数の外側アドレスをネットワーク単位ごとにそれぞれまとめた外側アドレス群241〜244が定義されている。また、グローバル側構成定義230には、外側アドレス毎の使用可能ポートとして、ポート範囲250が定義されている。本実施例では、ポート範囲250は、1024から65535までである。このポート範囲250からポートレンジを以下の式(1)から求めることができる。
ポートレンジ=エンドポート番号−スタートポート番号+1 …(1)
本明細書では、アドレス群の表現形式として、内側アドレス群には、A,B,C...Hの識別子を付与し、外側アドレス群には、α,β,γ,δの識別子を付与する。また、アドレス群におけるアドレスおよび帯域の表記は、V.X.Y.Z/Prefixと表記する。ここで、アドレスは、上位8ビット毎に、V(1桁目),X(2桁目),Y(3桁目),Z(4桁目)で示されている。Prefixは、CIDR(Classless Inter-Domain Routing)で用いるプリフィックス値によって、アドレス群のサイズを表している。
なお、上記構成定義から、下記のサイズが決定される。
総セッション数(最大同時接続数)=内側アドレスの総数×1ユーザ当りのセッション制限数
外側アドレス・ポートの空間=外側アドレスの総数×ポートレンジ
なお、外側アドレス・ポート空間は、下記の条件を満たすように定義される。
外側アドレス・ポートの空間≧内側アドレスの総数×(1ユーザ当りのセッション制限数+1ユーザ当りの予備セッション数)
図5は、内側アドレス群を同じ上位アドレスを持つ集合ごとに並べた説明図である。内側アドレス群は、連続性を持った2のべき乗の大きさのアドレス範囲を単位として定義されている。この図5における横方向は、同じ上位アドレスを持つ集合を示しており、それぞれの内側アドレス群を、より大きなアドレス範囲をもつ1つのアドレス群として集約することも可能な事を示している。
A5.各構成要素の説明:
図6は、内側アドレス群検索テーブル122を示す説明図である。内側アドレス群検索テーブル122は、Outboundパケットの転送時に参照されるテーブルであり、構成定義によって定められるテーブルである。この内側アドレス群検索テーブル122は、Outboundパケットに含まれる内側アドレス(送信元アドレス)が属する内側アドレス群をツリー検索によって特定するためのテーブルである。具体的には、例えば、内側アドレス群検索テーブル122は、Outboundパケットに含まれる内側アドレスのV(1桁目)からX,Y,Zと順に比較アドレスと比較し、当該内側アドレスの属する内側アドレス群を特定する。なお、比較アドレスは、内側アドレス群の先頭アドレスでもある。内側アドレス群検索テーブル122には、それぞれの内側アドレス群ごとにポインタ値が格納されている。このポインタ値は、後述するポート検索ポインタ123、アドレス・ポート変換テーブル124及びポートマッピングテーブル126を参照する場合に用いられる値である。本実施例では、ポインタ値は、256個(プリフィックスの/24)の内側アドレスを1つの単位としており、内側アドレスが256個分で、ポインタ値は1だけ増加する。以上より、内側アドレス群検索テーブル122は、ツリー検索をすることにより、下記の結果を取得することが出来る。
・内側アドレスが属するアドレス群の先頭アドレス(比較アドレス)
・内側アドレスが属するアドレス群のサイズ(Prefixより)
・内側アドレスが属するアドレス群の全体に置ける位置(ポインタ値より)
なお、外側アドレス群検索テーブル129も、内側アドレス群検索テーブル122と同様に、外側アドレスに対してツリー検索を行い、当該外側アドレスが属する外側アドレス群を特定する。
図7は、ポート検索ポインタ123を示す説明図である。ポート検索ポインタ123は、Outboundパケットの転送時、すなわち、送信元アドレスが変換対象の時に参照されるポインタであり、後述するポートオフセット値が登録されている。すなわち、ポート検索ポインタ123は、アドレス・ポート変換テーブル124のうち、送信元アドレス及び送信元ポート番号に対応する位置を参照するために用いられるポインタである。ポート検索ポインタ123におけるアドレス群の並びは、内側アドレス群検索テーブル122におけるアドレス群の並びと同じであり、アドレス群内におけるアドレスは、若番から連続に並んでいる。そして、1つの内側アドレスに対して、入力される可能性のある通信ポート番号分(本実施例では65536個)のポインタが格納されている。
図8は、アドレス・ポート変換テーブル124を示す説明図である。アドレス・ポート変換テーブル124は、Outboundパケットの転送時(内側アドレスが比較対象)およびInboundパケットの転送時(外側アドレスが比較対象)に参照されるテーブルであり、アドレス・ポート変換情報である内側アドレス/内側ポート番号と、外側アドレス/外側ポート番号とを格納している。アドレス・ポート変換テーブル124における内側アドレス群の並びは、内側アドレス群検索テーブル122及びポート検索ポインタ123と同じであり、内側アドレス群内のアドレスは、若番から連続番地に並んでいる。同様に、アドレス・ポート変換テーブル124における外側アドレス群の並びは、外側アドレス群検索テーブル129と同じであり、外側アドレス群内のアドレスは、若番から連続番地に並んでいる。すなわち、アドレス・ポート変換テーブル124の全体構成は、ローカル側から見ると、内側アドレス群検索テーブル122及びポート検索ポインタ123の並びと同じであり、グローバル側から見ると、外側アドレス群検索テーブル129の並びと同じである。
ここで、内側アドレスと共に入力される可能性のある通信ポート番号の種類は65536個あるにも係わらず、外側アドレスに登録可能な通信ポートの数は1ユーザ当りのセッション数で制限(実施例では1024個)される。したがって、内側アドレスのポート番号は、構成定義で決まらずに、新規パケットが到着する度に動的に割り当てられる。外側アドレスのポート番号は、ポート範囲、1ユーザ当りのセッション制限数および1ユーザ当りの予備セッション数によって規定されており、外側アドレス内のポート番号は連続している。なお、図8において外側ポートが2047から3072に飛んでいるのは、予備セッション数に相当する分だけポート番号を空けているためである。これは、内側アドレスが1増分する境界ではすべて同様の割り付けとなっている。
図9は、ポートマッピングテーブル126を示す説明図である。ポートマッピングテーブル126は、Outboundパケットの転送時において、ポート検索ポインタ123にポートオフセット値が未登録の場合に参照されるテーブルである。ポートマッピングテーブル126における内側アドレス群の並びは、内側アドレス群検索テーブル122と同じであり、内側アドレス群内のアドレスは、若番から連続番地に並んでいる。ポートマッピングテーブル126は、内側アドレスと対を成す外側アドレスのポートの空き状態を示すテーブルを有している。このテーブル内においては、当該アドレスで使用可能な通信ポートがビットマップで表現されている。ポートマッピングテーブル126は、ポートの割り当てが更新される毎に、空きポートの先頭値を残しながらビットマップ状態を更新して行く。
なお、1ユーザ当りのセッション制限数(構成定義によって決まる)を変更する場合には、1アドレス(ユーザ)当りの使用可能な通信ポートのビットマップのサイズを変更することもできる。また、ポートの空き状態はビットマップで管理されているので、例えば、RTP、RTCPのように、偶数、奇数しかも連番で割り当てが必要なプロトコルに対しても、柔軟に対応する事ができる。
A6.パケットの転送:
図10は、インタネットワーク装置100によるアドレス・ポート変換の例を示す説明図である。以下では、一例として、ローカル側のユーザ151(10.1.5.195 : 15536)と、グローバル側のサーバ152(3x.128.32.8 : 80)との間においてパケットの転送を実行する場合について説明する。なお、図10以降において、(10.1.5.195 : 15536)のように示した場合には、(アドレス:ポート番号)を意味するものとする。また、(5x.7.0.29 : 7188)や(3x.128.32.8 : 80)のように、5x及び3xで始まるアドレスは、外側アドレスを意味するものとする。そして、(10.1.5.195 : 15536)のように、10で始まるアドレスは、内側アドレスを意味するものとする。なお、外側アドレス中に表記された”x”は、実在する特定のグローバルアドレスを表記することを避けるために用いられているだけである。
ローカルアドレスネットワーク212に接続されたユーザ151が、グローバルアドレスネットワーク146に接続されたサーバ152に対してパケットを送信する場合(Outbound通信)には、インタネットワーク装置100は、パケットに含まれる送信元アドレス及び送信元ポート番号を、外側アドレス及び外側ポート番号に書き換える。すなわち、インタネットワーク装置100は、パケットに含まれる(10.1.5.195 : 15536)を(5x.7.0.29 : 7188)に書き換える。
一方、サーバ152が、ユーザ151に対してパケットを送信する場合(Inbound通信)には、インタネットワーク装置100は、パケットに含まれる宛先アドレス及び宛先ポート番号を、内側アドレス及び内側ポート番号に書き換える。すなわち、インタネットワーク装置100は、パケットに含まれる(5x.7.0.29 : 7188)を(10.1.5.195 : 15536)に書き換える。このように、インタネットワーク装置100によってアドレス変換が行なわれることによって、ローカルアドレスネットワーク212に接続されたユーザ151と、グローバルアドレスネットワーク146に接続されたサーバ152とが通信を行なうことができる。
A6−1.Outboundパケットの転送:
図11は、Outboundパケットを転送する場合における各構成要素の参照方式を示す説明図である。図12は、Outboundパケットを転送する場合における手順を示すフローチャートである。インタネットワーク装置100は、パケットの転送に先立って、以下を認識している。
・内側アドレス群検索テーブル122におけるポインタの単位(実施例では256)
・外側アドレス群検索テーブル129におけるポインタの単位(実施例では128)
・1外側アドレス当りの内側アドレスの収容数(実施例では31個)
ここで、収容数(整数)=ポートレンジ/(1ユーザ当りのセッション制限数+1ユーザ当りの予備セッション数)
ステップS10では、パケット入力部101がローカルアドレスネットワーク145からOutboundパケットを受信する。ステップS20では、Outboundパケット転送部121が、受信したパケットから送信元アドレスを取得し、内側アドレス群検索テーブル122を用いて、送信元アドレスが属する内側アドレス群を検索し、その内側アドレス群のポインタ値及び先頭アドレスを取得する。本実施例では以下のとおりとなる。
送信元アドレス:10.1.5.195
内側アドレス群:B
内側アドレス群Bのポインタ値:1
内側アドレス群Bの先頭アドレス:10.1.5.0
ステップS30では、Outboundパケット転送部121が、受信したパケットに含まれる送信元アドレスと、内側アドレス群の先頭アドレスとの差分である内側アドレスオフセットを算出する。本実施例では、以下のとおりとなる。
内側アドレスオフセット:195(=195-0)
ステップS40では、Outboundパケット転送部121は、以下の式(2)に基づいて、ポート検索ポインタ123における内側アドレス群の先頭位置K1を算出する。
K1=内側アドレス群のポインタ値×ポインタの単位×送信元ポートの数 …(2)
本実施例では、以下のとおりとなる。
内側アドレス群Bのポインタ値:1
ポインタの単位:256(Prefix:/24)
送信元ポートの数:65536
ポート検索ポインタ123における内側アドレス群の先頭位置:16777216(=1*256*65536)
また、Outboundパケット転送部121は、以下の式(3)に基づいて、アドレス・ポート変換テーブル124における内側アドレス群の先頭位置L1を算出する。
L1=内側アドレス群のポインタ値×ポインタの単位×1ユーザ毎のセッション制限数 …(3)
本実施例では、以下のとおりとなる。
内側アドレス群Bのポインタ値:1
ポインタの単位:256(Prefix:/24)
1ユーザ毎のセッション制限数:1024
アドレス・ポート変換テーブル124における内側アドレス群の先頭位置:
262144(=1*256*1024)
さらに、Outboundパケット転送部121は、以下の式(4)に基づいて、ポートマッピングテーブル126における内側アドレス群の先頭位置J1を算出する。
J1=内側アドレス群のポインタ値×ポインタの単位 …(4)
本実施例では、以下のとおりとなる。
内側アドレス群Bのポインタ値:1
ポインタの単位:256(Prefix:/24)
ポートマッピングテーブル126における内側アドレス群の先頭位置:256(=1*256)
ステップS50では、Outboundパケット転送部121は、ポート検索ポインタ123のうち、以下の式(5)によって指定される箇所を参照する。
ポート検索ポインタの参照位置=K1+K2+K3 …(5)
ただし、K2=内側アドレスオフセット×送信元ポートの数
K3=送信元ポート番号
本実施例では、以下のとおりとなる。
ポート検索ポインタ123における内側アドレス群の先頭位置:16777216(=1*256*65536)
内側アドレスオフセット:195
送信元ポートの数:65536
送信元ポート番号:15536
ポート検索ポインタの参照位置:29572272(=16777216+195*65536+15536)
ステップS60では、Outboundパケット転送部121が、ポート検索ポインタ123の参照位置にポートオフセット値が登録されているか否かを判定する。ここで、ポートオフセット値とは、アドレス・ポート変換テーブル124を参照する場合に用いられる値である。ステップS60において、ポートオフセット値が登録されていない場合には、ステップS62において、ポートオフセット値の登録を行なう。ポートオフセット値の登録については後述する。
ステップS60において、ポートオフセット値が登録されている場合には、ステップS70において、Outboundパケット転送部121が、アドレス・ポート変換テーブル124のうち、以下の式(6)によって指定される箇所を参照し、参照箇所に格納されている外側アドレス・外側ポート番号を取得する。
アドレス・ポート変換テーブル124の参照箇所=L1+L2+L3 …(6)
ただし、L2=内側アドレスオフセット×1ユーザ毎のセッション制限数
L3=ポートオフセット値
本実施例では以下のとおりとなる。
アドレス・ポート変換テーブル124における内側アドレス群の先頭位置:
262144(=1*256*1024)
内側アドレスオフセット:195
1ユーザ毎のセッション制限数:1024
ポートオフセット値:20
アドレス・ポート変換テーブル124の参照箇所:461844(=262144+195*1024+20)
ステップS80では、Outboundパケット転送部121が、Outboundパケットに含まれる送信元アドレス・送信元ポート番号を、取得した外側アドレス・外側ポート番号に置き換える。ステップS90では、パケット出力部106が、グローバルアドレスネットワーク146にOutboundパケットを送信する。なお、図12に示すように、Outbound転送に必要なメインメモリ部140へのアクセス回数は、ステップS50とステップS70の2回となる。
A6−2.セッションの登録:
図13は、セッションの登録をする場合における各構成要素の参照方式を示す説明図である。図14は、セッションの登録をする場合における手順を示すフローチャートである。ステップS64では、Outboundパケット転送部121は、ポートマッピングテーブル126のうち、以下の式(7)によって指定される箇所を参照し、指定される箇所における空きポート管理テーブル(ビットマップテーブル)を参照して、内側アドレスにおける空きポート情報(ポートオフセット)を取得する。
ポートマッピングテーブル126の参照位置=J1+J2 …(7)
ただし、J2=内側アドレスオフセット
本実施例では以下のとおりとなる。
ポートマッピングテーブル126における内側アドレス群の先頭位置:256
内側アドレスオフセット:195
ポートマッピングテーブル126の参照位置:451
ステップS66では、Outboundパケット転送部121は、アドレス・ポート変換テーブル124において上述した式(6)に基づいて指定される箇所における内側ポート番号(未登録)に、パケットに含まれる送信元ポート番号を書き込むと共に、当該箇所に格納されている外側アドレス・外側ポート番号を取得する。
ステップS68では、Outboundパケット転送部121は、ポート検索ポインタ123のうち、上述した式(5)に基づいて指定される箇所に、取得したポートオフセット値を登録する。なお、図14に示すように、セッション登録に必要なメインメモリ部140へのアクセス回数は3回であり、図12に示すOutbound転送に必要なメインメモリ部140へのアクセス回数を合わせると、合計で5回となる。
A6−3.Inboundパケットの転送:
図15は、Inboundパケットを転送する場合における各構成要素の参照方式を示す説明図である。図16は、Inboundパケットを転送する場合における手順を示すフローチャートである。
ステップS110では、パケット入力部107がグローバルアドレスネットワーク146からInboundパケットを受信する。
ステップS120では、Inboundパケット転送部129が、受信したパケットから宛先アドレスを取得し、外側アドレス群検索テーブル129を用いて、宛先アドレスが属する外側アドレス群を検索し、その外側アドレス群のポインタ値及び先頭アドレスを取得する。本実施例では以下のとおりとなる。
宛先アドレス:5x.7.0.29
外側アドレス群:β
外側アドレス群βのポインタ値:1
外側アドレス群βの先頭アドレス:5x.7.0.0
ステップS130では、Inboundパケット転送部128が、受信したパケットに含まれる宛先アドレスと、外側アドレス群の先頭アドレスとの差分である外側アドレスオフセットを算出する。本実施例では以下のとおりとなる。
外側アドレスオフセット:29(=29-0)
ステップS140では、Inboundパケット転送部128が、以下の式(8)に基づいて、アドレス・ポート変換テーブル124における外側アドレス群の先頭位置M1を算出する。
M1=外側アドレス群のポインタ値×ポインタの単位×内側アドレスの収容数×1ユーザ毎のセッション制限数 …(8)
本実施例では、以下のとおりとなる。
外側アドレス群βのポインタ値:1
ポインタの単位:128(Prefix:/25)
内側アドレスの収容数:31
1ユーザ毎のセッション制限数:1024
アドレス・ポート変換テーブル124における外側アドレス群の先頭位置:
4063232(=1*128*31*1024)
ステップS150では、Inboundパケット転送部128が、以下の式(9)に基づいて、宛先アドレスに相当する外側アドレスのアドレス・ポート変換テーブル124における位置を算出する。
アドレス・ポート変換テーブル124における外側アドレスの位置=M1+M2 …(9)
ただし、M2=外側アドレスオフセット×内側アドレスの収容数×1ユーザ毎のセッション制限数
本実施例では、以下のとおりとなる。
アドレス・ポート変換テーブル124における外側アドレス群の先頭位置:
4063232(=1*128*31*1024)
外側アドレスオフセット:29(=29-0)
内側アドレスの収容数:31
1ユーザ毎のセッション制限数:1024
アドレス・ポート変換テーブル124における外側アドレスの位置:
4983808(=4063232+29*31*1024)
ステップS160では、Inboundパケット転送部128が、アドレス・ポート変換テーブル124のうち、以下の式(10)によって指定される箇所を参照し、参照箇所に格納されている内側アドレス・内側ポート番号を取得する。
アドレス・ポート変換テーブル124の参照位置=M1+M2+M3 …(10)
ただし、
M3=1ユーザ当りのセッション制限数×商+余
商=INT{(宛先ポート番号−スタートポート番号)÷(1ユーザ当りのセッション制限数+1ユーザ当りの予備セッション数)}
余=MOD{(宛先ポート番号−スタートポート番号)÷(1ユーザ当りのセッション制限数+1ユーザ当りの予備セッション数)}
本実施例では、以下のとおりとなる。
宛先ポート番号:7188
スタートポート番号:1024
1ユーザ当りのセッション制限数:1024
1ユーザ当りの予備セッション数:1024
商:3(INT{(7188-1024)/(1024+1024)})
余:20(MOD{(7188-1024)/(1024+1024)})
アドレス・ポート変換テーブル124における外側アドレスの位置:4983808
アドレス・ポート変換テーブル124の参照位置:4986900 (=4983808+1024*3+20)
ステップS170では、Inboundパケット転送部128が、受信したパケットに含まれる宛先アドレス・宛先ポート番号をアドレス・ポート変換テーブル124の参照位置に格納されている内側アドレス・内側ポート番号に置き換える。ステップS180では、パケット出力部102がローカルアドレスネットワーク145にInboundパケットを送信する。なお、図16に示すように、Inbound転送に必要なメインメモリ部140へのアクセス回数は、ステップS160の1回となる。
A7.効果:
図17は、Outboundパケットの転送性能を、アドレス・ポート変換テーブルの検索方式ごとに比較するグラフである。図17の横軸はアクティブセッション数であり、縦軸は要求性能に対する比率である。この図17では、5Mパケット/秒の転送性能を要求性能(100%)としている。図17には、本実施例におけるアドレス・ポート変換テーブルの参照方式を実行した場合の転送性能と、リニア検索を実行した場合の転送性能と、ハッシュ検索を実行した場合の転送性能とが記載されている。
1)リニア検索
リニア検索は、小規模のユーザ数を扱う家庭向けルータで用いられている方式である。まず変換情報のアドレス・ポート変換テーブルへの登録位置は新規パケットの到着順に決定される。したがって、アドレス・ポート対の割当てに関してはランダムとなるのが一般的である。次にパケットの転送に際してのアドレス変換テーブルの検索は、テーブルの先頭から順に老番方向にアドレスを比較することにより行なう。そして、一致したアドレス・ポートの対を転送パケットのアドレス・ポート情報として使用する。なお、リニア検索での一回のパケット転送に於けるアドレス変換テーブルのアクセス回数は以下の計算式で求めることができる。
平均アクセス回数(Navg1)
Navg1=(E+1)/2
E:アドレス・ポート対の登録数
2)ハッシュ検索(チェイン法)
ハッシュ検索は、中規模のユーザ数を扱う企業向けルータで用いられている方式である。まずパケットから取り出したアドレス・ポート情報をアドレス・ポート変換テーブルへ登録するが、登録位置はアドレス・ポート情報をキーにして計算したハッシュ値になる。したがって、アドレス対の割当てに関してはランダムとなるのが一般的である。ハッシュ検索ではハッシュ値によってアドレス・ポート変換テーブルの登録位置が決まるので、転送方向毎(OutboundとInbound)にアドレス・ポート変換テーブルを用意する。アドレス・ポート変換テーブルを転送方向に関わらず共通で持つ場合は、ハッシュ値をアドレス・ポート変換テーブルの当該位置に置き換えるポインタを備える。ハッシュ検索では異なるキーでもハッシュした値が同じになることがあり、これをハッシュ値の衝突とよぶ。この衝突を処理するのにチェイン法が用いられる。
チェイン法は、ハッシュ値が同じ場合に連結リストで繋いで行く方法である。IPv4のNATでは、アドレス(4ギガ)とポート(64キロ)の組み合わせが256テラ個あるので、アドレスおよびポートの偏り方によって、衝突の確率が変化する。次にパケットの転送に際してのアドレス・ポート変換テーブルの検索は、アドレス・ポートをキーにして計算したハッシュ値となる。ハッシュ値の衝突が起こりうるので、連結リスト内でのアドレスの一致を確認して行き、一致したアドレス対を転送パケットのアドレスとして使用する。なお、ハッシュ検索(チェイン法)での一回のパケット転送に於けるアドレス変換テーブルのアクセス回数は以下の計算式で求めることができる。
アドレス変換テーブルをOutbound用、Inbound用それぞれに持つ場合の平均アクセス回数(Navg2)
Navg2 =1+E/B
E:アドレス対の登録数
B:アドレス変換テーブルの大きさ:B
アドレス変換テーブルをOutbound、Inboundで共通に持つ場合の平均アクセス回数(Navg3)
Navg3 =2+E/B
以上説明したリニア検索によって、アドレス・ポート変換テーブルの検索を行なった場合には、アクティブセッション数が1000の時点で、要求性能に対する比率が100%を下回ってしまう。また、ハッシュ検索によってアドレス・ポート変換テーブルの検索を行なった場合には、アクティブセッション数が10メガの時点で、要求性能に対する比率が100%を下回ってしまう。一方、本実施例によるアドレス・ポート変換テーブルの参照方式によれば、アクティブセッション数が10メガを超えた場合であっても、メインメモリ部140へのアクセス回数は固定されるので、要求性能に対する比率は100%を上回っている。したがって、本実施例によるインタネットワーク装置100は、インタネットワーク装置(CGN)としての要求を十分に満たすことができる。
図18は、Inboundパケットの転送性能を、アドレス・ポート変換テーブルの検索方式ごとに比較するグラフである。この図18における横軸及び縦軸は、図17と同じである。ただし、この図18では、10Mパケット/秒の転送性能を要求性能(100%)としている。この理由は、サーバからの応答であるInbound転送の方が高い性能が要求されるためである。この図18によれば、リニア検索及びハッシュ検索では、アクティブセッション数が増加すると、図17の場合と同様に、要求性能に対する比率が100%を下回ってしまうが、本実施例によるインタネットワーク装置100によれば、要求性能に対する比率は、常に100%を上回ることが理解できる。
以上より、本実施例によるインタネットワーク装置100によれば、内側アドレス及び外側アドレスは、それぞれアドレス群ごとに並んでおり、アドレス群内において内側アドレス及び外側アドレスは連続番号で並んでいるため、演算によってアドレス・ポート変換テーブル124における参照位置を求めることができる。具体的には、アドレス群の先頭位置と、アドレスオフセットと、ポート番号と、ポートオフセット値とに基づいてアドレス・ポート変換テーブル124における参照位置を求めることができる。したがって、本実施例によるインタネットワーク装置100によれば、アドレス・ポート変換テーブル124を格納したメインメモリ部140へのアクセス回数を固定することができ、セッション数が増えても一定以上の転送性能を確保することが出来る。また汎用の安価で低速/大容量メモリをメインメモリ部140に採用することができるので、低コスト化も実現することができる。
B.変形例:
なお、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
B1.変形例1:
上記実施例では、内側アドレス群検索テーブル122は、8ビットごとにツリー検索を行なっていたが、1ビットごとにツリー検索を行なうこととしてもよい。
B2.変形例2:
上記実施例においてソフトウェアで実現されている機能の一部をハードウェアで実現してもよく、あるいは、ハードウェアで実現されている機能の一部をソフトウェアで実現してもよい。
100…インタネットワーク装置
101…パケット入力部
102…パケット出力部
103…経路制御部
105…インサイド部
106…パケット出力部
107…パケット入力部
108…経路制御部
110…アウトサイド部
122…内側アドレス群検索テーブル
123…ポート検索ポインタ
124…ポート変換テーブル
125…セッション管理部
126…ポートマッピングテーブル
127…エージング管理部
129…外側アドレス群検索テーブル
130…装置制御部
135…CPU部
136…プロセッサコア部
137…演算処理部
138…1stキャッシュ部
140…メインメモリ部
141…高速SRAM
144…プロセッサシステム
145…ローカルアドレスネットワーク
146…グローバルアドレスネットワーク
150…企業ルータ
151…ユーザ
152…サーバ
155…ホームルータ
156…個人ユーザ
159…ローカルネットワーク
162…企業ユーザ
163…企業ユーザ
165…インターネットサービスプロバイダ
166…インターネットサービスプロバイダ
167…インターネットサービスプロバイダ
180…インターネット
185…キャリアエッジルータ
200…ローカル側構成定義
211…内側アドレス群
230…グローバル側構成定義
241…外側アドレス群
250…ポート範囲

Claims (3)

  1. 特定のネットワーク内で用いられるローカルアドレス及び各ローカルアドレスと共に用いられるローカルアドレス内通信ポート番号と、複数のネットワーク間の通信で用いられるグローバルアドレス及び各グローバルアドレスと共に用いられるグローバルアドレス内通信ポート番号とを相互に変換するインタネットワーク装置であって、
    ローカルアドレス及びローカルアドレス内通信ポート番号の組が並んだローカルアドレス対と、グローバルアドレス及びグローバルアドレス内通信ポート番号の組が並んだグローバルアドレス対とを対応付けるアドレス・ポート変換表を記憶した変換表記億部と、
    前記アドレス・ポート変換表に基づいて、複数のネットワーク間の通信で送受信されるパケット内のローカルアドレス及びローカルアドレス内通信ポート番号とグローバルアドレス及びグローバルアドレス内通信ポート番号とを相互変換するアドレス変換処理部と、
    を備え、
    前記変換表記億部は、前記アドレス・ポート変換表において、前記ローカルアドレス及び前記グローバルアドレスを、それぞれアドレス群ごとに並べて記憶しており、
    前記アドレス群内では、前記ローカルアドレス及び前記グローバルアドレスは、それぞれ、メモリ空間内に線形に配置されている、インタネットワーク装置。
  2. 請求項1記載のインタネットワーク装置であって、さらに、
    前記通信に用いられるパケットから変換対象となるアドレス及びアドレス内通信ポート番号を抽出する抽出部と、
    前記抽出されたアドレスが属するアドレス群を検索するアドレス群検索部と、
    前記抽出されたアドレスと前記アドレス群の先頭アドレスとの差分を算出する差分算出部と、
    前記抽出されたアドレスが属するアドレス群の先頭アドレスと、前記差分と、前記抽出された通信ポート番号とに基づいて、前記アドレス・ポート変換表における位置であって前記変換対象となるアドレス及びアドレス内通信ポート番号に対応する位置を特定するポインタと、
    を備える、インタネットワーク装置。
  3. 特定のネットワーク内で用いられるローカルアドレス及び各ローカルアドレスと共に用いられるローカルアドレス内通信ポート番号と、複数のネットワーク間の通信で用いられるグローバルアドレス及び各グローバルアドレスと共に用いられるグローバルアドレス内通信ポート番号とを相互に変換する方法であって、
    ローカルアドレス及びローカルアドレス内通信ポート番号の組が並んだローカルアドレス対と、グローバルアドレス及びグローバルアドレス内通信ポート番号の組が並んだグローバルアドレス対とを対応付けるアドレス・ポート変換表に基づいて、複数のネットワーク間の通信で送受信されるパケット内のローカルアドレス及びローカルアドレス内通信ポート番号とグローバルアドレス及びグローバルアドレス内通信ポート番号とを相互変換する工程を備え、
    前記アドレス・ポート変換表において、前記ローカルアドレス及び前記グローバルアドレスは、それぞれアドレス群ごとに並んでおり、
    前記アドレス群内では、前記ローカルアドレス及び前記グローバルアドレスは、それぞれ、メモリ空間内に線形に配置されている、方法。
JP2009100149A 2009-04-16 2009-04-16 インタネットワーク装置、及び、ローカルアドレス及び各ローカルアドレスと共に用いられるローカルアドレス内通信ポート番号と、グローバルアドレス及び各グローバルアドレスと共に用いられるグローバルアドレス内通信ポート番号とを相互に変換する方法 Active JP5036752B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009100149A JP5036752B2 (ja) 2009-04-16 2009-04-16 インタネットワーク装置、及び、ローカルアドレス及び各ローカルアドレスと共に用いられるローカルアドレス内通信ポート番号と、グローバルアドレス及び各グローバルアドレスと共に用いられるグローバルアドレス内通信ポート番号とを相互に変換する方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009100149A JP5036752B2 (ja) 2009-04-16 2009-04-16 インタネットワーク装置、及び、ローカルアドレス及び各ローカルアドレスと共に用いられるローカルアドレス内通信ポート番号と、グローバルアドレス及び各グローバルアドレスと共に用いられるグローバルアドレス内通信ポート番号とを相互に変換する方法

Publications (2)

Publication Number Publication Date
JP2010252103A true JP2010252103A (ja) 2010-11-04
JP5036752B2 JP5036752B2 (ja) 2012-09-26

Family

ID=43313928

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009100149A Active JP5036752B2 (ja) 2009-04-16 2009-04-16 インタネットワーク装置、及び、ローカルアドレス及び各ローカルアドレスと共に用いられるローカルアドレス内通信ポート番号と、グローバルアドレス及び各グローバルアドレスと共に用いられるグローバルアドレス内通信ポート番号とを相互に変換する方法

Country Status (1)

Country Link
JP (1) JP5036752B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021516923A (ja) * 2018-03-26 2021-07-08 新華三技術有限公司New H3C Technologies Co., Ltd. ネットワークアドレス変換
JP2021517414A (ja) * 2018-03-26 2021-07-15 新華三技術有限公司New H3C Technologies Co., Ltd. ネットワークアドレス変換

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021516923A (ja) * 2018-03-26 2021-07-08 新華三技術有限公司New H3C Technologies Co., Ltd. ネットワークアドレス変換
JP2021517414A (ja) * 2018-03-26 2021-07-15 新華三技術有限公司New H3C Technologies Co., Ltd. ネットワークアドレス変換
US11201852B2 (en) 2018-03-26 2021-12-14 New H3C Technologies Co., Ltd. Network address translation
JP7082211B2 (ja) 2018-03-26 2022-06-07 新華三技術有限公司 ネットワークアドレス変換

Also Published As

Publication number Publication date
JP5036752B2 (ja) 2012-09-26

Similar Documents

Publication Publication Date Title
US9584398B2 (en) Methods and apparatus to utilize route parameter sets for exchanging routes in a communication network
WO2021078281A1 (zh) 报文转发及域名地址查询
CN104270475A (zh) 基于NAT64实现IPv4网络与IPv6网络互通的系统及方法
CN101150502A (zh) 一种nat-pt设备及其负荷分担方法
CN108259328B (zh) 报文转发方法及装置
WO2016206511A1 (zh) 一种实现nat的方法和装置
JP2014511089A (ja) プライベートアドレスとパブリックアドレスのマッピング
CN112087533B (zh) 报文处理方法、装置、设备和存储介质
CN105556916A (zh) 网络流的信息统计方法和装置
KR20140034951A (ko) 무선 메쉬 네트워크에서 컨텍스트 기반의 IPv6 헤더 압축을 위한 컨텍스트 테이블 관리 방법
CN113315705B (zh) 基于单次哈希布隆过滤器的Flexible IP寻址方法及装置
CN109743414B (zh) 利用冗余连接提高地址翻译可用性的方法及计算机可读存储介质
CN101631075A (zh) 一种报文处理方法和设备
CN104243631A (zh) 一种IPv4地址与IPv6地址有状态转换的方法及设备
US9135833B2 (en) Process for selecting compressed key bits for collision resolution in hash lookup table
CN105681249B (zh) 一种网络访问方法和网络转换设备
US7349981B2 (en) System, apparatus, and method for string matching
US12132653B2 (en) Method and device for processing routing table entries
CN112929277A (zh) 一种报文处理方法及装置
CN103051544B (zh) 实现IPv4私网接入IPv6网络的方法及接入设备
Aldaoud et al. N‐BGP: An efficient BGP routing protocol adaptation for named data networking
CN102904804B (zh) 路由转发信息添加方法、报文转发方法及装置、网络设备
CN103634216A (zh) 一种基于nat64的数据报文转发方法和转发设备
JP5036752B2 (ja) インタネットワーク装置、及び、ローカルアドレス及び各ローカルアドレスと共に用いられるローカルアドレス内通信ポート番号と、グローバルアドレス及び各グローバルアドレスと共に用いられるグローバルアドレス内通信ポート番号とを相互に変換する方法
CN102164080B (zh) 路由地址查询方法和装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110531

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120501

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: 20120619

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120703

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

Free format text: PAYMENT UNTIL: 20150713

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5036752

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250