JP7582678B2 - COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL SYSTEM, COMMUNICATION CONTROL METHOD, AND PROGRAM - Google Patents
COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL SYSTEM, COMMUNICATION CONTROL METHOD, AND PROGRAM Download PDFInfo
- Publication number
- JP7582678B2 JP7582678B2 JP2022002165A JP2022002165A JP7582678B2 JP 7582678 B2 JP7582678 B2 JP 7582678B2 JP 2022002165 A JP2022002165 A JP 2022002165A JP 2022002165 A JP2022002165 A JP 2022002165A JP 7582678 B2 JP7582678 B2 JP 7582678B2
- Authority
- JP
- Japan
- Prior art keywords
- communication control
- packet
- received
- conversion
- address
- 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.)
- Active
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Description
本開示は、通信制御装置、通信制御システム、通信制御方法及びプログラムに関し、特にレイヤ3ネットワークのNAPT利用環境における通信制御装置、通信制御システム、通信制御方法及びプログラムに関する。 This disclosure relates to a communication control device, a communication control system, a communication control method, and a program, and in particular to a communication control device, a communication control system, a communication control method, and a program in a NAPT-using environment of a layer 3 network.
通信制御装置の標準的な仕様として、OSI参照モデル(Open Systems Interconnection reference model)のレイヤ3(ネットワーク層)においてIPパケットの通信仕様が定められている。また、グローバルネットワークとプライベートネットワーク間で通信を行うための一般的なアドレス変換技術として、NAPT(Network Address Port Translation)が知られている(例えば特許文献1参照)。 The standard specifications for communication control devices stipulate IP packet communication specifications in Layer 3 (network layer) of the Open Systems Interconnection reference model (OSI reference model). In addition, NAPT (Network Address Port Translation) is known as a general address translation technology for communicating between a global network and a private network (see, for example, Patent Document 1).
NAPT配下で大量のエンドポイントを処理する環境では、ポート番号の枯渇による障害が発生することがあり、これを回避するにはネットワーク構成を制限する必要があるという問題があった。 In environments where a large number of endpoints are processed under NAPT, problems can occur due to port number exhaustion, and to avoid this, it is necessary to restrict the network configuration.
本開示の目的は、上述した課題に鑑み、NAPT利用環境において多数のエンドポイントが好適に処理されるようなネットワーク環境の構築を実現する通信制御装置、通信制御システム、通信制御方法及びプログラムを提供することにある。 In view of the above-mentioned problems, the objective of the present disclosure is to provide a communication control device, a communication control system, a communication control method, and a program that realize the creation of a network environment in which a large number of endpoints can be appropriately processed in a NAPT-using environment.
本開示の一態様にかかる通信制御システムは、
プライベートネットワークに接続され、第1グローバルアドレスを有する第1通信制御部と、
前記プライベートネットワークに接続され、前記第1グローバルアドレスと異なる第2グローバルアドレスを有する第2通信制御部と
を備える。
前記第1通信制御部は、
受信したIPパケットに送信元情報として含まれる、プライベートアドレス及び変換前ポート番号のセットが、OSI参照モデルのネットワーク層のNAPT変換に用いられる第1変換テーブルであって、プライベートアドレス及び変換前ポート番号と、グローバルアドレス及び変換後ポート番号とを対応付ける第1変換テーブルに基づいて、新規な組み合わせと判定される場合、前記第1グローバルアドレスに対応するポート番号であって、前記NAPT変換に利用可能なポート番号の数が予め定められた閾値以下であるか否かを判定し、
前記NAPT変換に利用可能なポート番号の数が前記閾値以下である場合は、
受信した前記IPパケットに送信元情報として含まれる前記セットと、前記第2グローバルアドレスとを対応付けて前記第1変換テーブルに登録し、
前記第2通信制御部に、受信した前記IPパケットを転送する。
A communication control system according to an embodiment of the present disclosure includes:
a first communication control unit connected to the private network and having a first global address;
a second communication control unit connected to the private network and having a second global address different from the first global address.
The first communication control unit is
When a set of a private address and a pre-translation port number included in a received IP packet as source information is determined to be a new combination based on a first translation table used for NAPT conversion in a network layer of the OSI reference model, the first translation table associating a private address and a pre-translation port number with a global address and a post-translation port number, determining whether or not the number of port numbers corresponding to the first global address and available for the NAPT conversion is equal to or less than a predetermined threshold;
If the number of port numbers available for the NAPT conversion is equal to or less than the threshold,
registering the set included as source information in the received IP packet and the second global address in the first conversion table in association with each other;
The received IP packet is transferred to the second communication control unit.
本開示の一態様にかかる通信制御装置は、
受信したIPパケットに送信元情報として含まれる、プライベートアドレス及び変換前ポート番号のセットが、プライベートアドレス及び変換前ポート番号のセットと、グローバルアドレス及び変換後ポート番号のセットとを対応付ける変換テーブルであって、OSI参照モデルのネットワーク層のNAPT変換に用いられる変換テーブルに基づいて、新規な組み合わせと判定される場合、自己が有するグローバルアドレスに対応するポート番号であって、前記NAPT変換に利用可能なポート番号の数が予め定められた閾値以下であるか否かを判定し、
前記NAPT変換に利用可能なポート番号の数が前記閾値以下である場合は、
受信した前記IPパケットに送信元情報として含まれる前記セットと、他の通信制御装置が有するグローバルアドレスとを対応付けて前記変換テーブルに登録し、
前記他の通信制御装置に、受信した前記IPパケットを転送する。
A communication control device according to an aspect of the present disclosure includes:
When a set of a private address and a pre-translation port number included as source information in a received IP packet is determined to be a new combination based on a conversion table that associates a set of a private address and a pre-translation port number with a set of a global address and a post-translation port number, and that is used for NAPT conversion in the network layer of the OSI reference model, the device determines whether or not the number of port numbers that correspond to its own global address and are available for the NAPT conversion is equal to or less than a predetermined threshold value;
If the number of port numbers available for the NAPT conversion is equal to or less than the threshold,
registering the set included as source information in the received IP packet in the conversion table in association with a global address of another communication control device;
The received IP packet is transferred to the other communication control unit.
本開示の一態様にかかる通信制御方法は、
受信したIPパケットに送信元情報として含まれるプライベートアドレス及び変換前ポート番号のセットが、プライベートアドレス及び変換前ポート番号のセットと、グローバルアドレス及び変換後ポート番号のセットとを対応付ける変換テーブルであって、OSI参照モデルのネットワーク層のNAPT変換に用いられる変換テーブルに基づいて、新規な組み合わせと判定される場合、自己が有するグローバルアドレスに対応するポート番号であって、前記NAPT変換に利用可能なポート番号の数が予め定められた閾値以下であるか否かを判定し、
前記NAPT変換に利用可能なポート番号の数が前記閾値以下である場合は、
受信した前記IPパケットに送信元情報として含まれる前記セットと、他の通信制御装置が有するグローバルアドレスとを対応付けて前記変換テーブルに登録し、
前記他の通信制御装置に、受信した前記IPパケットを転送する。
A communication control method according to one aspect of the present disclosure includes:
When a set of a private address and a pre-translation port number included as source information in a received IP packet is determined to be a new combination based on a conversion table that associates a set of a private address and a pre-translation port number with a set of a global address and a post-translation port number, and that is used for NAPT conversion in the network layer of the OSI reference model, the device determines whether or not the number of port numbers that correspond to its own global address and are available for the NAPT conversion is equal to or less than a predetermined threshold value;
If the number of port numbers available for the NAPT conversion is equal to or less than the threshold,
registering the set included as source information in the received IP packet in the conversion table in association with a global address of another communication control device;
The received IP packet is transferred to the other communication control unit.
本開示の一態様にかかるプログラムは、
コンピュータに、
受信したIPパケットに送信元情報として含まれるプライベートアドレス及び変換前ポート番号のセットが、プライベートアドレス及び変換前ポート番号のセットと、グローバルアドレス及び変換後ポート番号のセットとを対応付ける変換テーブルであって、OSI参照モデルのネットワーク層のNAPT変換に用いられる変換テーブルに基づいて、新規な組み合わせと判定される場合、自己が有するグローバルアドレスに対応するポート番号であって、前記NAPT変換に利用可能なポート番号の数が予め定められた閾値以下であるか否かを判定する処理と、
前記NAPT変換に利用可能なポート番号の数が前記閾値以下である場合は、
受信した前記IPパケットに送信元情報として含まれる前記セットと、他の通信制御装置が有するグローバルアドレスとを対応付けて前記変換テーブルに登録し、
前記他の通信制御装置に、受信した前記IPパケットを転送する処理と
を実行させる。
A program according to one aspect of the present disclosure includes:
On the computer,
a process of determining whether the number of port numbers corresponding to a global address owned by the device and available for the NAPT conversion is equal to or less than a predetermined threshold value when a set of a private address and a pre-translation port number included in a received IP packet as source information is determined to be a new combination based on a conversion table that associates a set of a private address and a pre-translation port number with a set of a global address and a post-translation port number and that is used for the NAPT conversion in the network layer of the OSI reference model;
If the number of port numbers available for the NAPT conversion is equal to or less than the threshold,
registering the set included as source information in the received IP packet in the conversion table in association with a global address of another communication control device;
The other communication control device is caused to execute a process of forwarding the received IP packet.
本開示により、NAPT利用環境において多数のエンドポイントが好適に処理されるようなネットワーク環境の構築を実現する通信制御装置、通信制御システム、通信制御方法及びプログラムを提供できる。 This disclosure provides a communication control device, a communication control system, a communication control method, and a program that realize the creation of a network environment in which a large number of endpoints can be appropriately processed in a NAPT-using environment.
以下では、本開示の実施形態について、図面を参照しながら詳細に説明する。各図面において、同一又は対応する要素には同一の符号が付されており、説明の明確化のため、必要に応じて重複説明は省略される。 Embodiments of the present disclosure will now be described in detail with reference to the drawings. In each drawing, identical or corresponding elements are denoted by the same reference numerals, and duplicated descriptions will be omitted as necessary for clarity of explanation.
<実施形態の課題>
関連する技術においては、NAPT(Network Address Port Translation)は、例えば図13に示すシステム9のようなネットワーク構成において用いられている。図13は、関連するシステム9の構成を示すブロック図である。
<Problems of the embodiment>
In a related technique, NAPT (Network Address Port Translation) is used in a network configuration such as a
システム9は、通信制御装置90と、複数のクライアント装置20と、外部装置30とを備える。通信制御装置90と外部装置30とは、グローバルネットワークGNに接続されている。
The
通信制御装置90は、NAPTが動作する一般的な通信制御装置である。通信制御装置90は、グローバルネットワークGNとプライベートネットワークPNとを接続するゲートウェイ部に設置されている。プライベートネットワークPNの配下には、複数のクライアント装置20が接続されている。通信制御装置90及び複数のクライアント装置20は、PN側システム900を構成している。複数のクライアント装置20の各々には、プライベートIPアドレスが割り当てられている。以下では、プライベートIPアドレスを、単にプライベートアドレスと呼ぶ。通信制御装置90がNAPTによるアドレス変換(以下、NAPT変換と呼ぶことがある)を行うことにより、複数のクライアント装置20の各々は、グローバルネットワークGNに存在する外部装置30と通信することが可能になる。
The
NAPTによるアドレス変換について、図14を用いて説明する。図14は、関連する変換テーブルT0のデータ構造の一例を示す図である。NAPTによるアドレス変換は、変換テーブルT0に従って行われる。通信制御装置90は、グローバルネットワークGN上の体系に変換したアドレスをプライベートネットワーク上の体系に戻すために、変換前の情報と変換後の情報を一対一に対応させる必要がある。
Address conversion using NAPT will be explained with reference to FIG. 14. FIG. 14 is a diagram showing an example of the data structure of the associated conversion table T0. Address conversion using NAPT is performed according to conversion table T0. In order to convert an address converted into the system on the global network GN back into the system on the private network, the
変換前の情報は送信元のプライベートアドレスとポート番号の組(セット)となっており、本実施形態内ではこのセットをエンドポイントと呼ぶ。変換後の情報はグローバルアドレスとポート番号のセットである。変換後のグローバルIPアドレスには通信制御装置90に割り当てられたグローバルアドレスG1のみが用いられる。以下では、グローバルIPアドレスを、単にグローバルアドレスと呼ぶ。NAPT変換後のポート番号として利用できるポート番号の範囲は、NAPTの実装による。例えば予約済みポート番号を除いて可能な限り広い変換範囲を確保する場合、1024から65535までのポート番号が用いられる。
The information before conversion is a set of the source private address and port number, and in this embodiment, this set is called an endpoint. The information after conversion is a set of a global address and a port number. Only the global address G1 assigned to the
NAPTでは、変換前のエンドポイントと変換後のポートを一対一で変換する。したがって通信制御装置90が多数のエンドポイントに対してNAPT変換を実施した場合、変換先のポートが不足し、それ以上のNAPT変換を行えなくなる場合がある。通信制御装置90がポート番号を1024から65535まで利用できる環境にある場合、変換可能なポート数は64512個となるため、エンドポイント数がこれを超える場合はそれ以上のNAPT変換が不可能となる。よって図14のR0に示されるエンドポイントから受信したIPパケットは廃棄される。
In NAPT, the endpoint before conversion and the port after conversion are converted on a one-to-one basis. Therefore, if the
一例として、システム9のPN側システム900には、1台のゲートウェイルータ配下に個別のプライベートアドレスが割り当てられた65台のクライアント装置が存在するとする。クライアントはウェブ会議などの用途でグローバルネットワークGNに存在するサーバに接続することがあり、1回の接続あたり送信元ポートの異なる通信を1000セッション生成する必要があるものとする。全社会議などで65台のクライアントが同時に接続を行う場合、エンドポイントの合計数は65×1000=65000件となるため、NAPT変換の上限数である64512個を超過する。この状況下では新たな通信のためのNAPT変換が行えず、通信制御装置90の他の機能でも新たなポートを利用することができないため、通信に障害が生じる可能性がある。この事態を回避するには、多数のセッションが生成されることで利用可能なポート番号が枯渇することがないように同時接続するクライアント数をあらかじめ抑制してネットワーク構成を制限するなどの対策が必要である。
As an example, in the
このように、NAPT配下で大量のエンドポイントを処理する環境では、ポート番号の枯渇による障害が発生することがあり、これを回避するにはネットワーク構成を制限する必要があるという問題があった。 As such, in an environment where a large number of endpoints are processed under NAPT, problems can occur due to port number exhaustion, and to avoid this, it is necessary to restrict the network configuration.
以下の実施形態の少なくとも1つは、このような課題を解決するものである。 At least one of the following embodiments is intended to solve this problem.
<実施形態1>
実施形態1は、後述する実施形態2~4の概要として説明されてよい。本実施形態1では、複数のグローバルアドレスを使用できる回線環境において、それぞれの回線で以下のNAPTによるアドレス変換を実施可能な通信制御装置を用いる。
<
The first embodiment may be described as an outline of the second to fourth embodiments described later. In the first embodiment, in a line environment in which a plurality of global addresses can be used, a communication control device capable of performing the following address conversion by NAPT on each line is used.
図1は、実施形態1にかかるシステム1の構成を示すブロック図である。
システム1は、プライベートネットワークPN配下のクライアント装置20と、グローバルネットワークGN上の外部装置30とが通信するためのコンピュータシステムである。システム1は、図13に示すシステム9と同様に、複数のクライアント装置20と外部装置30とを備えるが、通信制御装置90に代えて通信制御システム10を備える点で相違する。通信制御システム10は、1のコンピュータ装置(通信制御装置)であってもよいし、複数のコンピュータ装置(通信制御装置)を含むコンピュータシステムであってもよい。
FIG. 1 is a block diagram showing a configuration of a
The
プライベートネットワークPNの配下には、複数のクライアント装置20が接続されている。そして外部装置30は、グローバルネットワークGNに接続されている。
Multiple client devices 20 are connected to the private network PN. And the
通信制御システム10は、第1通信制御部12と、第2通信制御部14とを備える。
第1通信制御部12は、プライベートネットワークPNとグローバルネットワークGNとに接続される。そして第1通信制御部12は、第1グローバルアドレスG1を有する。
第2通信制御部14は、第1通信制御部12と同様にプライベートネットワークPNとグローバルネットワークGNとに接続される。そして第2通信制御部14は、第1グローバルアドレスG1と異なる第2グローバルアドレスG2を有する。
The communication control system 10 includes a first
The first
The second
第1通信制御部12は、OSI参照モデルの規定に従った、通常のNAPTを含む通常の通信制御機能を有するとともに、後述するNAPT拡張アルゴリズムに従って動作する機能を有する。第2通信制御部14は、第1通信制御部12と連動して動作する機能を有する。
The first
第1通信制御部12がアクセス可能な記憶装置には、第1変換テーブルが格納され、第2通信制御部14がアクセス可能な記憶装置には、第2変換テーブルが格納される。第1変換テーブル及び第2変換テーブルは、それぞれ、第1通信制御部12及び第2通信制御部14がNAPTによるアドレス変換を実行するために用いるNAPT変換テーブルである。上記記憶装置は、通信制御システム10に含まれていてよい。本実施形態1では、第1通信制御部12及び第2通信制御部14がアクセス可能な記憶装置は、同一の記憶装置であってもよいし、異なる記憶装置であってもよい。また本実施形態1では、第1変換テーブル及び第2変換テーブルが異なるテーブルであるが、同じテーブルであってもよい。
The first conversion table is stored in a storage device accessible to the first
ここで第1通信制御部12及び第2通信制御部14は、それぞれ、互いのグローバルアドレスと、各クライアント装置20のプライベートアドレスとを保持している。例えばユーザ設定により、第1通信制御部12がアクセス可能な記憶装置及び第2通信制御部14がアクセス可能な記憶装置に、これらのアドレスを格納させてよい。また通信制御システム10に含まれる通信制御部が複数ある場合、それぞれ、自己のポート番号が不足した場合にどの通信制御部がどの通信制御部を代理として用いるかを予め定めておく。
Here, the first
図2は、実施形態1にかかる第1変換テーブルT1のデータ構造の一例を示す図である。第1変換テーブルT1は、プライベートアドレス及び変換前ポート番号と、グローバルアドレス及び変換後ポート番号とを、一対一で対応付けている。第1変換テーブルT1は、利用可能なポート番号が所定閾値より大きいレコードR1では、プライベートアドレス及び変換前ポート番号のセットを、第1グローバルアドレスG1及び、受信順番に基づいて一意に決定される変換後ポート番号のセットに対応付けている。一方、第1変換テーブルT1は、利用可能なポート番号が所定閾値以下のレコードR2では、プライベートアドレス及び変換前ポート番号のセットを、第2グローバルアドレスG2に対応付けている。 Figure 2 is a diagram showing an example of the data structure of the first conversion table T1 according to the first embodiment. The first conversion table T1 associates a private address and a pre-conversion port number with a global address and a post-conversion port number in a one-to-one relationship. In the first conversion table T1, in record R1 in which the available port number is greater than a predetermined threshold, the set of the private address and the pre-conversion port number is associated with the first global address G1 and a set of the post-conversion port number that is uniquely determined based on the reception order. On the other hand, in record R2 in which the available port number is equal to or less than the predetermined threshold, the first conversion table T1 associates a set of the private address and the pre-conversion port number with the second global address G2.
以下では1行のレコードをエントリと呼ぶことがあり、1行のレコードに格納された情報をまとめて、アドレス変換情報と呼ぶことがある。 In the following, a single line of record may be referred to as an entry, and the information stored in a single line of record may be collectively referred to as address conversion information.
尚、第2変換テーブルも基本的に同様のデータ構造を有する。ただし第2変換テーブルにおいては、上述の説明の第1グローバルアドレスG1及び第2グローバルアドレスG2を、それぞれ第2グローバルアドレスG2及び第1グローバルアドレスG1に読み替える。また登録される各アドレスおよびポート番号の値は、第1変換テーブルと異なってよい。 The second conversion table basically has the same data structure. However, in the second conversion table, the first global address G1 and the second global address G2 described above are replaced with the second global address G2 and the first global address G1, respectively. Furthermore, the values of each address and port number registered may be different from those in the first conversion table.
少なくとも第1通信制御部12は、NAPTによるアドレス変換処理によって第1変換テーブルT1に新たなエントリを追加しようとした場合、ポート番号不足が発生しているか否かによって後続の処理が異なる。第1通信制御部12は、NAPT変換によるポート番号不足が発生していない状況下では、通常のNAPT変換と同様の処理を実行する。すなわち第1通信制御部12は、通常通り、まず第1グローバルアドレスG1と新たに割り当てたポート番号とを第1変換テーブルT1に登録する。そして第1通信制御部12は、通常通り、NAPT変換およびNAPTによるパケット転送を実行する。
When at least the first
一方、通常のNAPT変換でポート番号不足が発生した場合は、第1通信制御部12は、第1グローバルアドレスG1の代わりに、予め保持している第2グローバルアドレスG2を用いて、第1変換テーブルT1の変換後のグローバルアドレスの部分を更新する。第2グローバルアドレスG2は、第1通信制御部12と連動する第2通信制御部14のグローバルアドレスである。なお変換後ポート番号として書き込む値は任意であってよい。
On the other hand, if a port number shortage occurs during normal NAPT conversion, the first
このように第1通信制御部12は、通常のNAPTの動作に拡張的な動作を加えたNAPT拡張アルゴリズムを採用する。
In this way, the first
図3~5は、実施形態1にかかる第1通信制御部12による通信制御方法の流れを示すフローチャートである。図2~4は、通信制御装置90がプライベートネットワークPNからIPパケットを受信することを契機として動作するNAPT拡張アルゴリズムを示している。
Figures 3 to 5 are flowcharts showing the flow of a communication control method by the first
まず第1通信制御部12は、プライベートネットワークPNの配下のクライアント装置20のいずれかから、IPパケットを受信した場合(S10)、第1変換テーブルを参照する(S11)。次に第1通信制御部12は、受信したIPパケットに送信元情報として含まれるプライベートアドレス及び変換前ポート番号のセットが、第1変換テーブルT1に基づいて、新規な組み合わせか否かを判定する(S12)。具体的には第1通信制御部12は、受信したIPパケットのヘッダ部分から送信元IPアドレス及び送信元ポート番号として含まれるプライベートアドレス及び変換前ポート番号のセットを抽出する。そして第1通信制御部12は、当該セットが変換テーブルT1に登録されているか否かを判定する。
First, when the first
第1通信制御部12は、当該セットが変換テーブルT1に登録されていない、つまり新規な組み合わせである場合(S12でYes)、処理をS13に進める。
If the set is not registered in the conversion table T1, that is, if it is a new combination (Yes in S12), the first
S13において、第1グローバルアドレスG1に対応するポート番号であって、NAPT変換に利用可能なポート番号の数が所定閾値以下であるか否かを判定する。第1グローバルアドレスG1に対応するポート番号とは、第1グローバルアドレスG1と組み合わせ可能なポート番号である。閾値は0であってもよいし、0より大きくてもよい。後者であれば、利用可能なポート番号に余裕を残したままそれ以上のポート番号が消費されることを抑制できる。したがってポート番号を利用する他の機能がポート番号不足による影響を受ける可能性を前者よりも低減できる。 In S13, it is determined whether the number of port numbers corresponding to the first global address G1 and available for NAPT conversion is equal to or less than a predetermined threshold. The port numbers corresponding to the first global address G1 are port numbers that can be combined with the first global address G1. The threshold may be 0 or may be greater than 0. In the latter case, it is possible to prevent the consumption of more port numbers than that in the former case while leaving some room for available port numbers. Therefore, it is possible to reduce the possibility that other functions that use port numbers will be affected by a shortage of port numbers more than in the former case.
NAPT変換に利用可能なポート番号の数が所定閾値以下である場合は(S13でYes)、第1通信制御部12は、IPパケットに送信元情報として含まれるセットと、第2グローバルアドレスG2とを対応付けて第1変換テーブルT1に登録する(S14)。そして第1通信制御部12は、連動する第2通信制御部14に、処理中パケット、つまり受信したIPパケットを転送する(S15)。このとき第1通信制御部12は、処理対象パケットのレイヤ3以上の送信元情報、宛先情報及びデータ部の情報は書き換えずに全て維持したままIPパケットを転送する。第2通信制御部14が第1通信制御部12と別の装置である場合、第2通信制御部14への転送は、第2通信制御部14に対応するMACアドレス(Media Access Control address)をレイヤ2の送信先として指定し、プライベートネットワークPN経由で送信することで実現する。
If the number of port numbers available for NAPT conversion is equal to or less than a predetermined threshold (Yes in S13), the first
転送されたIPパケットは、第2通信制御部14が取得する。第2通信制御部14は受信したIPパケットに対して通常のNAPT変換処理を適用し、送信元情報が変換されたIPパケットを、宛先情報に応じた装置、つまり、グローバルネットワークGN上の外部装置30に送信する。
The forwarded IP packet is acquired by the second
一方、NAPT変換に利用可能なポート番号の数が所定閾値より大きい場合は(S13でNo)、通信制御システム10は処理をS16~S19(フローA)に進める。フローAは、通常のNAPT変換処理である。S16において第1通信制御部12は、まず受信したIPパケットに送信元情報として含まれるセットに対して、利用可能な1のポート番号を変換後ポート番号として割り当てる。次に第1通信制御部12は、受信したIPパケットに送信元情報として含まれるセットと、第1グローバルアドレスG1及び変換後ポート番号のセット(変換後のセット)とを対応付けて、第1変換テーブルT1に登録する(S17)。次に第1通信制御部12は、受信したIPパケットに送信元情報として含まれるセットを、変換後のセットに変換する(S18;NAPT変換)。尚、変換とは、付け替えることを意味する。またS17及びS18に示す処理は、並行して行われてもよいし、S18の後にS17に示す処理が行われてもよい。最後に第1通信制御部12は、送信元情報が変換されたIPパケットを、宛先情報に応じた装置、つまりグローバルネットワークGN上の外部装置30に送信する(S19)。
On the other hand, if the number of port numbers available for NAPT conversion is greater than the predetermined threshold (No in S13), the communication control system 10 proceeds to S16 to S19 (flow A). Flow A is a normal NAPT conversion process. In S16, the first
第1通信制御部12は、受信したIPパケットに送信元情報として含まれるセットが変換テーブルT1に登録されている、つまり新規な組み合わせでない場合(S12でNo)、処理をS20~S24(フローB)に進める。
If the set included as source information in the received IP packet is registered in conversion table T1, that is, if it is not a new combination (No in S12), the first
S20において、第1通信制御部12は、第1変換テーブルT1において、受信したIPパケットに送信元情報として含まれるセットに対応付けられたグローバルアドレス及び変換後ポート番号のセットを読み出す。次に第1通信制御部12は、読み出したセットに含まれるグローバルアドレスが第1グローバルアドレスG1である場合(S21でYes)、処理をS22に進める。
In S20, the first
S22において第1通信制御部12は、通常のNAPT変換処理を実行する。つまり第1通信制御部12は、受信したIPパケットの送信元情報に含まれるセットを、読み出したセットに変換する。そして第1通信制御部12は、送信元情報が変換されたIPパケットを宛先情報に応じた外部装置30に送信する(S23)。
In S22, the first
尚、第1通信制御部12は読み出したセットに含まれるグローバルアドレスが第2グローバルアドレスG2である場合(S21でNo)、S15と同様にIPパケットを第2通信制御部14に転送する(S24)。
If the global address included in the read set is the second global address G2 (No in S21), the first
尚、NAPT拡張アルゴリズムが適用されたエンドポイントから再びグローバルネットワークGNに対する通信が発生した場合、エンドポイントはNAPT拡張アルゴリズムに関知しないため、IPパケットを第1通信制御部12に対して送信する。この場合、第1通信制御部12は、第1変換テーブルT1を参照することにより、受信したIPパケットの送信元情報に該当する変換先アドレスが第2通信制御部14のものであることが判断できる。したがって第1通信制御部12は、図5のS24と同様にIPパケットを第2通信制御部14に転送する。
When communication to the global network GN occurs again from an endpoint to which the NAPT extension algorithm has been applied, the endpoint is unaware of the NAPT extension algorithm and therefore sends an IP packet to the first
このように実施形態1によれば、第1通信制御部12でNAPTのポート番号不足が発生している場合、上記NAPT拡張アルゴリズムを用いて第2通信制御部14にIPパケットを転送し、NAPT変換処理を代行させる。したがってポート番号不足でも通信を失敗させずに新たな通信を確立できる。上記で示したNAPT処理の代行は、第2通信制御部14において利用可能なポート番号に空きがある限り実行できる。また3台以上の通信制御部を用いても、同様の仕組みでNAPT処理の代行を行うことができる。
As described above, according to the first embodiment, if the first
これにより、利用可能な回線数に応じてNAPT変換処理で変換可能なエンドポイント数の上限を拡張できる。つまりNAPT利用環境において多数のエンドポイントが好適に処理されることができる。その結果、ポート番号不足による通信障害を回避するとともに、ネットワーク構成の制限を拡張できる。 This allows the upper limit on the number of endpoints that can be converted in the NAPT conversion process to be expanded according to the number of available lines. In other words, a large number of endpoints can be processed optimally in a NAPT usage environment. As a result, communication failures due to a lack of port numbers can be avoided, and the limitations of network configuration can be expanded.
尚、上述では、転送されたIPパケットを受信した第2通信制御部14は、通常のNAPT変換処理を適用させるとしたが、これに代えて、第1通信制御部12と同様の拡張NAPT変換アルゴリズムを適用させてもよい。この場合、第2通信制御部14においてもポート番号不足である場合には、第2通信制御部14はIPパケットを他の通信制御部に転送する。この転送先は第1通信制御部12であってもよいし、その他の通信制御部であってもよい。
In the above description, the second
尚、上述では、第1通信制御部12は、クライアント装置20から外部装置30にIPパケットを送信する場合にNAPT拡張アルゴリズムを用いるとしたが、外部装置30からクライアント装置20にIPパケットを送信する場合は、通常のアルゴリズムを用いてよい。すなわち第1通信制御部12は、宛先情報としてグローバルアドレス及び変換後ポート番号のセットを含むIPパケットを受信した場合、以下の処理を実行してよい。まず第1通信制御部12は、第1変換テーブルT1において、宛先情報として含まれるセットに対応付けられたプライベートアドレス及び変換後ポート番号のセットを読み出してよい。そして第1通信制御部12は、受信したIPパケットを、読み出したセットに対応するクライアント装置20に転送してよい。
In the above description, the first
<実施形態2>
次に、本開示の実施形態2について説明する。図6は、実施形態2にかかるシステム1aの構成を示すブロック図である。実施形態2において、第1通信制御部と第2通信制御部とは、主・副の関係にある。
<
Next, a second embodiment of the present disclosure will be described. Fig. 6 is a block diagram showing a configuration of a
システム1aは、システム1と基本的に同様の構成を有するが、第1通信制御部12の一例として主系装置12aと、第2通信制御部14の一例として副系装置14aと、外部装置30の一例としてサーバ31とを備える。
主系装置12a及び副系装置14aは、いずれもNAPTが動作可能なコンピュータ装置である。両装置の配下には同一のプライベートネットワークPNが存在する。プライベートネットワークPN内には複数のクライアント装置20-1,20-2,20-3が存在する。尚、クライアント装置20の数はこれに限らない。複数のクライアント装置20は、グローバルネットワークGN上に存在するサーバ31に対して通信を試み、多数のセッションを生成しようとする。尚、複数のクライアント装置20は主系装置12aをデフォルトルートとし、サーバ31と通信する場合はまず主系装置12aを経由するものとする。つまり主系装置12aは、クライアント装置20とサーバ31とが通信する場合に、副系装置14aよりも優先して、通信にかかるIPパケットを受信する。
The
そして主系装置12a及び副系装置14aは、実施形態1と同様のNAPT拡張アルゴリズムを実施可能である。
The
図7~8は、実施形態2にかかるシステムの処理の流れを示すシーケンス図である。
図7は、送信元情報のセットが新規であり、かつポート番号の不足が発生していない場合のシステムの処理の流れを示している。
7 and 8 are sequence diagrams showing the flow of processing in the system according to the second embodiment.
FIG. 7 shows the flow of processing by the system when the set of source information is new and there is no shortage of port numbers.
クライアント装置20-1がサーバ31に対して新しいセッションを張ろうとした場合、クライアント装置20-1は、サーバ31に対してセッション確立を要求するIPパケットを主系装置12aに送信する(S100)。送信されたIPパケットは、送信元情報としてプライベートアドレスP1及びポート番号p1を含む。
When the client device 20-1 attempts to establish a new session with the
この場合、送信元情報のセットが新規であり、かつポート番号の不足が発生していないため、IPパケットを受信した主系装置12aは、通常のNAPT変換処理に従って、受信したIPパケットを処理する。
In this case, since the set of source information is new and there is no shortage of port numbers, the
このとき主系装置12aは、まず図4のS16~S17に示す第1変換テーブルT1の登録処理を実行する(S101)。そして主系装置12aは、図4のS18に示すNAPT変換処理を実行する(S102)。そして主系装置12aは、送信元情報が変換されたIPパケットを、サーバ31に送信する(S103)。送信されたIPパケットは、送信元情報としてグローバルアドレスG1及びポート番号p11を含む。
At this time, the
IPパケットを受信したサーバ31は、グローバルアドレスG1及びポート番号p11を宛先情報として含む応答パケットを用いて、グローバルアドレスG1に対応する主系装置12aに対して応答する(S104)。主系装置12aは、第1変換テーブルT1を用いてNAPT変換処理を実行する(S105)。すなわち主系装置12aは、第1変換テーブルT1において、宛先情報に含まれるセットに対応付けられたプライベートアドレスP1及びポート番号p1のセットを読み出す。そして主系装置12aは、宛先情報のセットを読み出したセットに変換し、変換後の応答パケットを該当するエンドポイント(クライアント装置20-1)に送信する(S106)。
The
クライアント装置20が新規セッションの生成を試みる度に、その都度S100~S106に示す処理が実行されてよい。 Each time the client device 20 attempts to generate a new session, the processes shown in S100 to S106 may be executed.
そして一度第1変換テーブルT1に登録されたクライアント装置20-1が、その後、サーバ31に対して同じセッションでIPパケットを主系装置12aに送信したとする(S110)。この場合、主系装置12aは、第1変換テーブルT1を用いてNAPT変換処理を実行し(S111)、送信元情報が変換されたIPパケットをサーバ31に送信する(S112)。
Then, assume that the client device 20-1, which has once been registered in the first conversion table T1, subsequently sends an IP packet to the
次に、上記処理が繰り返され、主系装置12aで利用可能なポート番号が使い切られた場合について説明する。
Next, we will explain what happens when the above process is repeated and all available port numbers in the
図8は、送信元情報のセットが新規であり、かつポート番号の不足が発生している場合のシステムの処理の流れを示している。 Figure 8 shows the flow of system processing when the set of sender information is new and there is a shortage of port numbers.
クライアント装置20-2がサーバ31に対して新しいセッションを張ろうとした場合、クライアント装置20-2は、サーバ31に対してセッション確立を要求するIPパケットを主系装置12aに送信する(S120)。送信されたIPパケットは、送信元情報としてプライベートアドレスP2及びポート番号p2を含む。
When the client device 20-2 attempts to establish a new session with the
この場合、送信元情報のセットが新規であり、かつポート番号の不足が発生しているため、IPパケットを受信した主系装置12aは、上述したNAPT拡張アルゴリズムに従って、受信したIPパケットを処理する。
In this case, since the set of source information is new and there is a shortage of port numbers, the
このとき主系装置12aは、まず図3のS11~S14に示す第1変換テーブルT1の登録処理を実行する(S121)。このとき主系装置12aは、登録するグローバルアドレスとして、副系装置14aのグローバルアドレスG2を用いる。そして主系装置12aは、図3のS15と同様に受信したIPパケットを、送信元情報を変えないで、副系装置14aに転送する(S122)。このとき主系装置12aは、第1変換テーブルT1を副系装置14aに共有しないでよい。
At this time, the
副系装置14aは、プライベートネットワークPN側インタフェースでIPパケットを受信する。IPパケットを受信した副系装置14aは、図7のS101~S102と同様に通常のNAPT処理を実行する。具体的には、副系装置14aは、IPパケットに対して通常のNAPT変換処理を適用するため、利用可能な1のポート番号を変換後ポート番号として割り当て、第2変換テーブルT2にアドレス変換情報を追加で登録する(S123)。アドレス変換情報は、送信元情報に含まれるプライベートアドレス及び変換前ポート番号のセットと、第2グローバルアドレスG2及び変換後ポート番号のセットとを対応付けた情報である。次に副系装置14aは、送信元情報に含まれるプライベートアドレス及び変換前ポート番号のセットを、第2グローバルアドレスG2及び変換後ポート番号のセットに変換する(S124)。そして副系装置14aは、NAPT変換したIPパケットを宛先情報に応じた装置、つまりサーバ31へ送信する(S125)。送信されたIPパケットの送信元情報は、第2グローバルアドレスG2及びポート番号p21のセットを含む。
The
サーバ31は、通信の送信元を副系装置14aと認識するため、サーバ31からの応答は副系装置14aへと送信される(S126)。副系装置14aはサーバ31からの応答パケットを通常のNAPT変換処理で変換し(S127)、変換した宛先情報に該当するエンドポイント(クライアント装置20-2)に、応答パケットを送信する(S128)。
The
クライアント装置20-2がサーバ31に対して再び通信を行った場合、IPパケットはデフォルトルートに従って主系装置12aへと送信される(S130)。主系装置12aはNAPT拡張アルゴリズムに従って、受信したIPパケットを副系装置14aへと転送する。副系装置14aは第2変換テーブルT2に従ってIPパケットをNAPT変換し(S132)、送信元情報が変換されたIPパケットをサーバ31に送信する(S133)。
When the client device 20-2 communicates with the
このように、主系装置12aでポート番号が枯渇した場合でも、副系装置14aにIPパケットを転送してNAPT変換処理を代行させることで、クライアント装置20群とサーバ31との間で新たなアドレス変換を成立させ、セッションを確立できる。
In this way, even if the port numbers in the
<実施形態2の効果>
関連するNAPT環境では、NAPT変換に利用できるポート数の上限が64512個であることから、NAPTで処理可能なエンドポイント数も64512が上限であった。しかし本実施形態2によれば、上述した上限を超える数のエンドポイントをNAPT変換できる。
<Effects of the Second Embodiment>
In the related NAPT environment, the upper limit of the number of ports available for NAPT conversion is 64512, and therefore the upper limit of the number of endpoints that can be processed by NAPT is also 64512. However, according to the second embodiment, it is possible to perform NAPT conversion on a number of endpoints that exceeds the above-mentioned upper limit.
実施形態2では、主系装置12aと副系装置14a双方のポート番号を利用してNAPT変換処理を行うことで、NAPTに利用できるポート番号の数が疑似的に2倍に拡張できる。グローバルアドレス及び通信制御部として機能する装置の台数を増やすことで、疑似的に拡張できるポート番号数をさらに増加できる。尚、装置間で変換テーブルを共有しなくてよいため、装置の台数を増やしても変換テーブルの管理が簡易である。したがって、装置の台数を容易に増やすことができる。
In the second embodiment, the number of port numbers available for NAPT can be virtually doubled by performing NAPT conversion processing using the port numbers of both the
本実施形態2ではNAPTに利用可能なポート番号数を拡張することで、ポート番号不足によるNAPT変換処理の失敗を防止し、通信障害を抑制できる。また、処理できるエンドポイント数が増加するため、ネットワーク構成の制限を緩和してより大規模なネットワークを構築できる。 In this second embodiment, the number of port numbers available for NAPT is expanded, which prevents failure of the NAPT conversion process due to a lack of port numbers and suppresses communication failures. In addition, since the number of endpoints that can be processed increases, restrictions on network configuration can be relaxed and a larger-scale network can be constructed.
<実施形態3>
次に、本開示の実施形態3について説明する。実施形態3では、通信制御システムに含まれる複数の通信制御部が互いに負荷分散又は冗長化されており、デフォルトルートが決まっていない。
<Embodiment 3>
Next, a third embodiment of the present disclosure will be described. In the third embodiment, a plurality of communication control units included in a communication control system are load-balanced or made redundant, and a default route is not determined.
図9は、実施形態3にかかるシステム1bの構成を示すブロック図である。実施形態3のシステム1bは、実施形態2のシステム1aと基本的に同様の構成であるが、主系装置12a及び副系装置14aに代えて、第1通信制御装置12b、第2通信制御装置14b、および第3通信制御装置16bを備える点で相違する。尚、通信制御装置の数は3に限らず、2であってもよいし、4以上であってもよい。
Figure 9 is a block diagram showing the configuration of
本実施形態3では、システム1bの管理者は、各通信制御装置について、ポート番号不足が発生した場合の代理装置を予め設定する。例えば第1通信制御装置12b、第2通信制御装置14b及び第3通信制御装置16bは、それぞれ、ポート番号不足時には第2通信制御装置14b、第3通信制御装置16b及び第1通信制御装置12bを代理装置として用いるように設定する。通信制御装置が2つの場合は、2つの通信制御装置が互いに互いの代理装置となるように設定してよい。
In this embodiment 3, the administrator of
尚、クライアント装置20群とサーバ31との通信は、第1通信制御装置12b、第2通信制御装置14b及び第3通信制御装置16bによって負荷分散または冗長化されている。本実施形態3では、クライアント装置20群のデフォルトルートが1の通信制御装置に限定されておらず、3つの通信制御装置のいずれもクライアント装置20群から送信される通信のネクストホップとなる可能性がある。
Note that communication between the client devices 20 and the
第1通信制御装置12b、第2通信制御装置14b及び第3通信制御装置16bはいずれも、自己のポート番号が不足した場合、上述したNAPT拡張アルゴリズムに従って、代理先装置にIPパケットを転送する。そして代理先装置においてNAPT変換処理が実行される。
When the first
例として第1通信制御装置12bでポート番号不足が発生した場合、NAPT拡張アルゴリズムに従って第2通信制御装置14bにIPパケットを転送し、第2通信制御装置14bにNAPT変換処理を行わせることができる。このとき第2通信制御装置14bでポート番号不足が枯渇していた場合は、第2通信制御装置14bはさらに第3通信制御装置16bにIPパケットを転送してNAPT変換処理を行わせることができる。
For example, if a port number shortage occurs in the first
尚、通信制御システム10に含まれる全ての通信制御装置でポート番号の逼迫が発生している場合、NAPT拡張アルゴリズムによる代理装置への転送が繰り返されるというループが発生する。これを防止するために、複数の通信制御装置間のIPパケットの転送回数が所定回数以上となった場合、複数の通信制御装置のいずれかの通信制御装置は、IPパケットを廃棄してよい。具体的には通信制御装置が代理装置にIPパケットを転送する場合に、転送するIPパケットのTTL(Time to live)フィールドを減算する。これによりIPパケットの転送が所定回数繰り返された場合にIPパケットを消滅させることができる。 If port number congestion occurs in all communication control devices included in the communication control system 10, a loop occurs in which transfer to the proxy device using the NAPT extension algorithm is repeated. To prevent this, when the number of IP packet transfers between multiple communication control devices reaches a predetermined number, one of the multiple communication control devices may discard the IP packet. Specifically, when a communication control device transfers an IP packet to a proxy device, it subtracts the TTL (Time to live) field of the IP packet to be transferred. This makes it possible to eliminate the IP packet when the transfer of the IP packet has been repeated a predetermined number of times.
実施形態3によれば、いずれの通信制御装置でポート番号不足が発生するか不明な場合でも、ある通信制御装置でポート番号不足が発生した場合に別の通信制御装置でポート番号を補うことができる。したがって、より柔軟な障害防止及びネットワーク構成が可能となる。 According to the third embodiment, even if it is unknown which communication control device will experience a port number shortage, if a port number shortage occurs in one communication control device, the port numbers can be compensated for by another communication control device. This allows for more flexible failure prevention and network configuration.
尚、上述の実施形態3では、通信制御システム10bに3つの通信制御装置が含まれる場合について説明したが、通信制御装置の数はこれに限らない。例えば通信制御装置の数が第1通信制御装置12b及び第2通信制御装置14bの2つである場合、第1通信制御装置12b及び第2通信制御装置14bは、各々が互いの代理装置となる。
In the above-mentioned third embodiment, the case where the
<実施形態4>
次に、本開示の実施形態4について説明する。実施形態4は、NAPT拡張アルゴリズムを単体の装置で実現する。
<Embodiment 4>
Next, a fourth embodiment of the present disclosure will be described. In the fourth embodiment, the NAPT extension algorithm is realized by a single device.
図10は、実施形態4にかかるシステム1cの構成を示すブロック図である。実施形態4のシステム1cは、実施形態2のシステム1aと基本的に同様の構成を有する。但し、システム1cは、通信制御システム10aに代えて、単体の通信制御装置10cを備える。
Figure 10 is a block diagram showing the configuration of
通信制御装置10cは、複数のインタフェースでグローバルネットワークGNと接続されて、各インタフェースで異なるグローバルアドレスG1,G2が割り当てられている。クライアント装置20がサーバ31と通信する場合、デフォルトルートの送信先としてグローバルアドレスG1が選択される。
The
つまり通信制御装置10cは、グローバルアドレスG1が割り当てられた第1インタフェースを有する第1通信制御部12cと、別回線のグローバルアドレスG2が割り当てられた第2インタフェースを有する第2通信制御部14cとを備えると見ることができる。通信制御装置10cは、第1変換テーブルT1及び第2変換テーブルT2を統合した変換テーブルT3を記憶装置に有するか、参照可能な状態にある。
In other words, the
図11は、実施形態4にかかる変換テーブルT3のデータ構造の一例を示す図である。変換テーブルT3では、グローバルアドレスG1に対応するポート番号が不足した場合に記録されるレコードR2において、変換後アドレスとして、グローバルアドレスG2に加えて、グローバルアドレスG2に対応するポート番号が記録されている。 Figure 11 is a diagram showing an example of the data structure of the conversion table T3 according to the fourth embodiment. In the conversion table T3, in record R2, which is recorded when the port number corresponding to the global address G1 is insufficient, in addition to the global address G2, the port number corresponding to the global address G2 is recorded as the converted address.
このようなシステム1cにおいて、通信制御装置10cは、図3~図5に示すNAPT拡張アルゴリズムを実行する。すなわち通信制御装置10cは、グローバルアドレスG1に対応するポート番号が不足していない状況においては、通常のNAPT変換処理を実行する。具体的には第1通信制御部12cは、クライアント装置20群の新たなエンドポイントからサーバ31を宛先としたIPパケットを受信した場合、デフォルトルート上にあるグローバルアドレスG1を変換後アドレスとしてS16~S18に示す処理を実行する。そしてS19で、第1通信制御部12cは、グローバルアドレスG1からIPパケットをサーバ31に送信する。
In this type of
一方、グローバルアドレスG1に対応するポート番号が不足している状況下では、通信制御装置10cは、アルゴリズムの拡張部分を実行する。つまり通信制御装置10cの第1通信制御部12cは、グローバルアドレスG1ではなくグローバルアドレスG2を用いてNAPT変換処理を実行し、変換テーブルT3を更新する。次に通信制御装置10cの第2通信制御部14cは、IPパケットを取得し、変換テーブルT3を参照する。次に第2通信制御部14cは、IPパケットのアドレス情報を変換する。次に第2通信制御部14cは、IPパケットの送信元情報を、アドレス変換されたアドレス及びポート番号としてグローバルネットワークGN上のサーバ31に送信する。このアドレス変換は通信制御装置10cの変換テーブルT3に保持されるため、通信制御装置10cは、同様のエンドポイントを送信元又は宛先とするIPパケットを受信した場合、通常のNAPT変換処理によってIPパケットを送信する。
On the other hand, in a situation where there is a shortage of port numbers corresponding to global address G1, the
実施形態4によれば、複数の外部回線に対して1台の通信制御装置が接続されている環境下であれば、複数の通信制御装置を用意せずともNAPT拡張アルゴリズムを実行できる。 According to the fourth embodiment, in an environment where one communication control device is connected to multiple external lines, the NAPT extension algorithm can be executed without preparing multiple communication control devices.
続いて、通信制御システムに含まれる通信制御装置の物理構成を説明する。図12は、通信制御装置として用いられ得るコンピュータの構成例を示す図である。コンピュータ1000は、プロセッサ1010、記憶部1020、ROM(Read Only Memory)1030、RAM(Random Access Memory)1040、通信インタフェース(IF:Interface)1050、及びユーザインタフェース1060を有する。
Next, the physical configuration of the communication control device included in the communication control system will be described. FIG. 12 is a diagram showing an example of the configuration of a computer that can be used as a communication control device. The
通信インタフェース1050は、有線通信手段又は無線通信手段などを介して、コンピュータ1000と通信ネットワークとを接続するためのインタフェースである。ユーザインタフェース1060は、例えばディスプレイなどの表示部を含む。また、ユーザインタフェース1060は、キーボード、マウス、及びタッチパネルなどの入力部を含む。尚、ユーザインタフェース1060は、必須ではない。
The
記憶部1020は、各種のデータを保持できる補助記憶装置である。記憶部1020は、必ずしもコンピュータ1000の一部である必要はなく、外部記憶装置であってもよいし、ネットワークを介してコンピュータ1000に接続されたクラウドストレージであってもよい。
The
ROM1030は、不揮発性の記憶装置である。ROM1030には、例えば比較的容量が少ないフラッシュメモリなどの半導体記憶装置が用いられる。プロセッサ1010が実行するプログラムは、記憶部1020又はROM1030に格納され得る。記憶部1020又はROM1030は、例えば通信制御装置内の各部の機能を実現するための各種プログラムを記憶する。
The
上記プログラムは、コンピュータに読み込まれた場合に、実施形態で説明された1又はそれ以上の機能をコンピュータに行わせるための命令群(又はソフトウェアコード)を含む。プログラムは、非一時的なコンピュータ可読媒体又は実体のある記憶媒体に格納されてもよい。限定ではなく例として、コンピュータ可読媒体又は実体のある記憶媒体は、random-access memory(RAM)、read-only memory(ROM)、フラッシュメモリ、solid-state drive(SSD)又はその他のメモリ技術、CD-ROM、digital versatile disc(DVD)、Blu-ray(登録商標)ディスク又はその他の光ディスクストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ又はその他の磁気ストレージデバイスを含む。プログラムは、一時的なコンピュータ可読媒体又は通信媒体上で送信されてもよい。限定ではなく例として、一時的なコンピュータ可読媒体又は通信媒体は、電気的、光学的、音響的、またはその他の形式の伝搬信号を含む。 The program includes instructions (or software code) that, when loaded into a computer, cause the computer to perform one or more functions described in the embodiments. The program may be stored on a non-transitory computer-readable medium or a tangible storage medium. By way of example and not limitation, computer-readable media or tangible storage media include random-access memory (RAM), read-only memory (ROM), flash memory, solid-state drive (SSD) or other memory technology, CD-ROM, digital versatile disc (DVD), Blu-ray (registered trademark) disk or other optical disk storage, magnetic cassette, magnetic tape, magnetic disk storage or other magnetic storage device. The program may be transmitted on a transitory computer-readable medium or communication medium. By way of example and not limitation, a transitory computer-readable medium or communication medium includes electrical, optical, acoustic, or other forms of propagated signals.
RAM1040は、揮発性の記憶装置である。RAM1040には、DRAM(Dynamic Random Access Memory)又はSRAM(Static Random Access Memory)などの各種半導体メモリデバイスが用いられる。RAM1040は、データなどを一時的に格納する内部バッファとして用いられ得る。プロセッサ1010は、記憶部1020又はROM1030に格納されたプログラムをRAM1040に展開し、実行する。プロセッサ1010は、CPU(Central Processing Unit)又はGPU(Graphics Processing Unit)であってよい。プロセッサ1010がプログラムを実行することで、通信制御装置内の各部の機能が実現され得る。プロセッサ1010は、データなどを一時的に格納できる内部バッファを有してもよい。
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。 The present invention is not limited to the above embodiment, and can be modified as appropriate without departing from the spirit and scope of the invention.
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)
プライベートネットワークに接続され、第1グローバルアドレスを有する第1通信制御部と、
前記プライベートネットワークに接続され、前記第1グローバルアドレスと異なる第2グローバルアドレスを有する第2通信制御部と
を備え、
前記第1通信制御部は、
受信したIPパケットに送信元情報として含まれる、プライベートアドレス及び変換前ポート番号のセットが、OSI参照モデルのネットワーク層のNAPT(Network Address Port Translation)変換に用いられる第1変換テーブルであって、プライベートアドレス及び変換前ポート番号と、グローバルアドレス及び変換後ポート番号とを対応付ける第1変換テーブルに基づいて、新規な組み合わせと判定される場合、前記第1グローバルアドレスに対応するポート番号であって、前記NAPT変換に利用可能なポート番号の数が予め定められた閾値以下であるか否かを判定し、
前記NAPT変換に利用可能なポート番号の数が前記閾値以下である場合は、
受信した前記IPパケットに送信元情報として含まれる前記セットと、前記第2グローバルアドレスとを対応付けて前記第1変換テーブルに登録し、
前記第2通信制御部に、受信した前記IPパケットを転送する
通信制御システム。
(付記2)
前記第1通信制御部は、
前記NAPT変換に利用可能なポート番号の数が前記閾値より大きい場合は、
受信した前記IPパケットに送信元情報として含まれる前記セットに対して、利用可能な1のポート番号を変換後ポート番号として割り当て、
受信した前記IPパケットに送信元情報として含まれる前記セットを、前記第1グローバルアドレス及び前記変換後ポート番号のセットに変換し、
受信した前記IPパケットに送信元情報として含まれる前記セットと、変換した前記セットとを対応付けて、前記第1変換テーブルに登録し、
送信元情報が変換された前記IPパケットを宛先の装置に送信する
付記1に記載の通信制御システム。
(付記3)
前記第1通信制御部は、
受信した前記IPパケットに送信元情報として含まれる前記セットが、前記第1変換テーブルに基づいて新規な組み合わせと判定されなかった場合、前記第1変換テーブルにおいて、受信した前記IPパケットに送信元情報として含まれる前記セットに対応付けられたグローバルアドレス及び変換後ポート番号のセットを読み出し、
読み出した前記セットに含まれるグローバルアドレスが前記第1グローバルアドレスである場合、
受信した前記IPパケットに送信元情報として含まれる前記セットを、読み出した前記セットに変換し、
送信元情報が変換された前記IPパケットを宛先の装置に送信し、
読み出した前記セットに含まれるグローバルアドレスが前記第2グローバルアドレスである場合、受信した前記IPパケットを前記第2通信制御部に転送する
付記1又は2に記載の通信制御システム。
(付記4)
宛先情報としてグローバルアドレス及び変換後ポート番号のセットを含むIPパケットを受信した場合、前記第1変換テーブルにおいて、受信した前記IPパケットに宛先情報として含まれる前記セットに対応付けられたプライベートアドレス及び変換後ポート番号のセットを読み出し、
受信した前記IPパケットを、読み出した前記セットに対応付けられたクライアント装置に転送する
付記1から3のいずれか1項に記載の通信制御システム。
(付記5)
前記第1通信制御部は、前記プライベートネットワーク配下のクライアント装置と外部のネットワークの装置とが通信する場合に、前記第2通信制御部よりも優先して、前記通信にかかるIPパケットを受信する
付記1から4のいずれか1項に記載の通信制御システム。
(付記6)
前記第1通信制御部及び前記第2通信制御部は、冗長化されている
付記1から4のいずれか1項に記載の通信制御システム。
(付記7)
前記第2通信制御部は、
受信した前記IPパケットに送信元情報として含まれる、プライベートアドレス及び変換前ポート番号のセットが、前記第2通信制御部によるNAPT変換に用いられる第2変換テーブルであって、プライベートアドレス及び変換前ポート番号と、グローバルアドレス及び変換後ポート番号とを対応付ける第2変換テーブルに基づいて、新規な組み合わせと判定される場合、前記第2グローバルアドレスに対応するポート番号であって、前記NAPT変換に利用可能なポート番号の数が予め定められた第2閾値以下であるか否かを判定し、
前記NAPT変換に利用可能なポート番号の数が前記第2閾値より大きい場合は、
受信した前記IPパケットに送信元情報として含まれる前記セットに対して、利用可能な1のポート番号を変換後ポート番号として割り当て、
受信した前記IPパケットに送信元情報として含まれる前記セットを、前記第2グローバルアドレス及び前記変換後ポート番号のセットに変換し、
受信した前記IPパケットに送信元情報として含まれる前記セットと、変換した前記セットとを対応付けて、前記第2変換テーブルに登録し、
送信元情報が変換された前記IPパケットを宛先の装置に送信し、
前記NAPT変換に利用可能なポート番号の数が前記第2閾値以下である場合は、
受信した前記IPパケットに送信元情報として含まれる前記セットと、前記第1グローバルアドレスとを対応付けて前記第2変換テーブルに登録し、
前記第1通信制御部に、受信した前記IPパケットを転送する
付記1から6のいずれか1項に記載の通信制御システム。
(付記8)
複数の通信制御装置間の前記IPパケットの転送回数が予め定められた回数以上となった場合、前記複数の通信制御装置のいずれかの通信制御装置は、前記IPパケットを廃棄する
付記7に記載の通信制御システム。
(付記9)
受信したIPパケットに送信元情報として含まれる、プライベートアドレス及び変換前ポート番号のセットが、プライベートアドレス及び変換前ポート番号のセットと、グローバルアドレス及び変換後ポート番号のセットとを対応付ける変換テーブルであって、OSI参照モデルのネットワーク層のNAPT(Network Address Port Translation)変換に用いられる変換テーブルに基づいて、新規な組み合わせと判定される場合、自己が有するグローバルアドレスに対応するポート番号であって、前記NAPT変換に利用可能なポート番号の数が予め定められた閾値以下であるか否かを判定し、
前記NAPT変換に利用可能なポート番号の数が前記閾値以下である場合は、
受信した前記IPパケットに送信元情報として含まれる前記セットと、他の通信制御装置が有するグローバルアドレスとを対応付けて前記変換テーブルに登録し、
前記他の通信制御装置に、受信した前記IPパケットを転送する
通信制御装置。
(付記10)
前記NAPT変換に利用可能なポート番号の数が前記閾値より大きい場合は、
受信した前記IPパケットに送信元情報として含まれる前記セットに対して、利用可能な1のポート番号を変換後ポート番号として割り当て、
受信した前記IPパケットに送信元情報として含まれる前記セットを、自己が有する前記グローバルアドレス及び前記変換後ポート番号のセットに変換し、
受信した前記IPパケットに送信元情報として含まれる前記セットと、変換した前記セットとを対応付けて、前記変換テーブルに登録し、
受信した前記IPパケットを、宛先の装置に送信する
付記9に記載の通信制御装置。
(付記11)
受信したIPパケットに送信元情報として含まれるプライベートアドレス及び変換前ポート番号のセットが、プライベートアドレス及び変換前ポート番号のセットと、グローバルアドレス及び変換後ポート番号のセットとを対応付ける変換テーブルであって、OSI参照モデルのネットワーク層のNAPT(Network Address Port Translation)変換に用いられる変換テーブルに基づいて、新規な組み合わせと判定される場合、自己が有するグローバルアドレスに対応するポート番号であって、前記NAPT変換に利用可能なポート番号の数が予め定められた閾値以下であるか否かを判定し、
前記NAPT変換に利用可能なポート番号の数が前記閾値以下である場合は、
受信した前記IPパケットに送信元情報として含まれる前記セットと、他の通信制御装置が有するグローバルアドレスとを対応付けて前記変換テーブルに登録し、
前記他の通信制御装置に、受信した前記IPパケットを転送する
通信制御方法。
(付記12)
コンピュータに、
受信したIPパケットに送信元情報として含まれるプライベートアドレス及び変換前ポート番号のセットが、プライベートアドレス及び変換前ポート番号のセットと、グローバルアドレス及び変換後ポート番号のセットとを対応付ける変換テーブルであって、OSI参照モデルのネットワーク層のNAPT(Network Address Port Translation)変換に用いられる変換テーブルに基づいて、新規な組み合わせと判定される場合、自己が有するグローバルアドレスに対応するポート番号であって、前記NAPT変換に利用可能なポート番号の数が予め定められた閾値以下であるか否かを判定する処理と、
前記NAPT変換に利用可能なポート番号の数が前記閾値以下である場合は、
受信した前記IPパケットに送信元情報として含まれる前記セットと、他の通信制御装置が有するグローバルアドレスとを対応付けて前記変換テーブルに登録し、
前記他の通信制御装置に、受信した前記IPパケットを転送する処理と
を実行させるためのプログラム。
A part or all of the above-described embodiments can be described as, but is not limited to, the following supplementary notes.
(Appendix 1)
a first communication control unit connected to the private network and having a first global address;
a second communication control unit connected to the private network and having a second global address different from the first global address;
The first communication control unit is
When a set of a private address and a pre-translation port number included in a received IP packet as source information is determined to be a new combination based on a first translation table used for NAPT (Network Address Port Translation) translation in the network layer of the OSI reference model, the first translation table associating a private address and a pre-translation port number with a global address and a post-translation port number, the method determines whether the number of port numbers corresponding to the first global address and available for the NAPT translation is equal to or less than a predetermined threshold value;
If the number of port numbers available for the NAPT conversion is equal to or less than the threshold,
registering the set included as source information in the received IP packet and the second global address in the first conversion table in association with each other;
The communication control system transfers the received IP packet to the second communication control unit.
(Appendix 2)
The first communication control unit is
If the number of port numbers available for the NAPT conversion is greater than the threshold,
Allocating one available port number as a post-translation port number to the set included in the received IP packet as source information;
converting the set included in the received IP packet as source information into a set of the first global address and the converted port number;
registering the set included as source information in the received IP packet and the converted set in the first conversion table in association with each other;
The communication control system according to
(Appendix 3)
The first communication control unit is
When the set included in the received IP packet as source information is not determined to be a new combination based on the first conversion table, a set of a global address and a converted port number associated with the set included in the received IP packet as source information is read out from the first conversion table;
If the global address included in the read set is the first global address,
converting the set included in the received IP packet as source information into the read set;
Transmitting the IP packet with the converted source information to a destination device;
3. The communication control system according to
(Appendix 4)
When an IP packet including a set of a global address and a post-translation port number as destination information is received, a set of a private address and a post-translation port number associated with the set included in the received IP packet as destination information is read from the first translation table;
The communication control system according to any one of
(Appendix 5)
The communication control system according to any one of
(Appendix 6)
The communication control system according to any one of
(Appendix 7)
The second communication control unit is
when a set of a private address and a pre-conversion port number included as source information in the received IP packet is determined to be a new combination based on a second conversion table used for NAPT conversion by the second communication control unit, the second conversion table associating a private address and a pre-conversion port number with a global address and a post-conversion port number, determining whether or not the number of port numbers corresponding to the second global address and available for the NAPT conversion is equal to or less than a predetermined second threshold value;
If the number of port numbers available for the NAPT conversion is greater than the second threshold,
Allocating one available port number as a post-translation port number to the set included in the received IP packet as source information;
converting the set included in the received IP packet as source information into a set of the second global address and the converted port number;
registering the set included as source information in the received IP packet and the converted set in the second conversion table in association with each other;
Transmitting the IP packet with the converted source information to a destination device;
If the number of port numbers available for the NAPT conversion is equal to or less than the second threshold,
registering the set included as source information in the received IP packet and the first global address in the second conversion table in association with each other;
The communication control system according to any one of
(Appendix 8)
The communication control system according to claim 7, wherein when the number of times the IP packet is transferred between a plurality of communication control devices becomes equal to or greater than a predetermined number of times, any one of the plurality of communication control devices discards the IP packet.
(Appendix 9)
When a set of a private address and a pre-translation port number included as source information in a received IP packet is determined to be a new combination based on a conversion table that associates a set of a private address and a pre-translation port number with a set of a global address and a post-translation port number, and that is used for NAPT (Network Address Port Translation) conversion in the network layer of the OSI reference model, the device determines whether the number of port numbers corresponding to its own global address and available for the NAPT conversion is equal to or less than a predetermined threshold value;
If the number of port numbers available for the NAPT conversion is equal to or less than the threshold,
registering the set included as source information in the received IP packet in the conversion table in association with a global address of another communication control device;
The communication control device transfers the received IP packet to the other communication control device.
(Appendix 10)
If the number of port numbers available for the NAPT conversion is greater than the threshold,
Allocating one available port number as a post-translation port number to the set included in the received IP packet as source information;
converting the set included as source information in the received IP packet into a set of the global address and the converted port number that the IP packet has;
registering the set included in the received IP packet as source information and the converted set in the conversion table in association with each other;
The communication control device according to
(Appendix 11)
When a set of a private address and a pre-translation port number included as source information in a received IP packet is determined to be a new combination based on a conversion table that associates a set of a private address and a pre-translation port number with a set of a global address and a post-translation port number, and that is used for NAPT (Network Address Port Translation) conversion in the network layer of the OSI reference model, the device determines whether the number of port numbers corresponding to its own global address and available for the NAPT conversion is equal to or less than a predetermined threshold value;
If the number of port numbers available for the NAPT conversion is equal to or less than the threshold,
registering the set included as source information in the received IP packet in the conversion table in association with a global address of another communication control device;
and transferring the received IP packet to the other communication control device.
(Appendix 12)
On the computer,
a process of determining whether the number of port numbers corresponding to the global address owned by the device and available for the NAPT conversion is equal to or less than a predetermined threshold value when the set of private address and pre-translation port number included in the received IP packet as source information is determined to be a new combination based on a conversion table that associates the set of private address and pre-translation port number with a set of global address and post-translation port number, the conversion table being used for NAPT conversion in the network layer of the OSI reference model;
If the number of port numbers available for the NAPT conversion is equal to or less than the threshold,
registering the set included as source information in the received IP packet in the conversion table in association with a global address of another communication control device;
and a program for causing the other communication control device to execute a process of forwarding the received IP packet.
1,1a,1b,1c システム
9 システム
10,10a,10b 通信制御システム
10c 通信制御装置(通信制御システム)
12,12c 第1通信制御部
12a 主系装置(第1通信制御部)
12b 第1通信制御装置(第1通信制御部)
14,14c 第2通信制御部
14b 第2通信制御装置(第2通信制御部)
14a 副系装置(第2通信制御部)
16b 第3通信制御装置
90 通信制御装置
20 クライアント装置
30 外部装置
31 サーバ
1000 コンピュータ
1010 プロセッサ
1020 記憶部
1030 ROM
1040 RAM
1050 通信インタフェース(IF)
1060 ユーザインタフェース(IF)
G1,G2 グローバルアドレス
GN グローバルネットワーク
PN プライベートネットワーク
1, 1a, 1b, 1c
12, 12c First
12b First communication control device (first communication control unit)
14, 14c Second
14a Subsystem device (second communication control unit)
16b Third
1040 RAM
1050 Communication interface (IF)
1060 User Interface (IF)
G1, G2 Global address GN Global network PN Private network
Claims (10)
前記プライベートネットワークに接続され、前記第1グローバルアドレスと異なる第2グローバルアドレスを有する第2通信制御部と
を備え、
前記第1通信制御部は、
受信したIPパケットに送信元情報として含まれる、プライベートアドレス及び変換前ポート番号のセットが、OSI参照モデルのネットワーク層のNAPT(Network Address Port Translation)変換に用いられる第1変換テーブルであって、プライベートアドレス及び変換前ポート番号と、グローバルアドレス及び変換後ポート番号とを対応付ける第1変換テーブルに基づいて、新規な組み合わせと判定される場合、前記第1グローバルアドレスに対応するポート番号であって、前記NAPT変換に利用可能なポート番号の数が予め定められた閾値以下であるか否かを判定し、
前記NAPT変換に利用可能なポート番号の数が前記閾値以下である場合は、
受信した前記IPパケットに送信元情報として含まれる前記セットと、前記第2グローバルアドレスとを対応付けて前記第1変換テーブルに登録し、
前記第2通信制御部に、受信した前記IPパケットを転送し、
前記プライベートネットワーク配下のクライアント装置と外部のネットワークの装置とが通信する場合に、前記第2通信制御部よりも優先して、前記通信にかかるIPパケットを受信する
通信制御システム。 a first communication control unit connected to the private network and having a first global address;
a second communication control unit connected to the private network and having a second global address different from the first global address;
The first communication control unit is
When a set of a private address and a pre-translation port number included in a received IP packet as source information is determined to be a new combination based on a first translation table used for NAPT (Network Address Port Translation) translation in the network layer of the OSI reference model, the first translation table associating a private address and a pre-translation port number with a global address and a post-translation port number, the method determines whether the number of port numbers corresponding to the first global address and available for the NAPT translation is equal to or less than a predetermined threshold value;
If the number of port numbers available for the NAPT conversion is equal to or less than the threshold,
registering the set included as source information in the received IP packet and the second global address in the first conversion table in association with each other;
Transferring the received IP packet to the second communication control unit;
When a client device under the private network communicates with a device on an external network, the client device receives IP packets relating to the communication in priority over the second communication control unit.
前記NAPT変換に利用可能なポート番号の数が前記閾値より大きい場合は、
受信した前記IPパケットに送信元情報として含まれる前記セットに対して、利用可能な1のポート番号を変換後ポート番号として割り当て、
受信した前記IPパケットに送信元情報として含まれる前記セットを、前記第1グローバルアドレス及び前記変換後ポート番号のセットに変換し、
受信した前記IPパケットに送信元情報として含まれる前記セットと、変換した前記セットとを対応付けて、前記第1変換テーブルに登録し、
送信元情報が変換された前記IPパケットを宛先の装置に送信する
請求項1に記載の通信制御システム。 The first communication control unit is
If the number of port numbers available for the NAPT conversion is greater than the threshold,
Allocating one available port number as a post-translation port number to the set included in the received IP packet as source information;
converting the set included in the received IP packet as source information into a set of the first global address and the converted port number;
registering the set included as source information in the received IP packet and the converted set in the first conversion table in association with each other;
The communication control system according to claim 1 , further comprising: transmitting the IP packet, the source information of which has been converted, to a destination device.
受信した前記IPパケットに送信元情報として含まれる前記セットが、前記第1変換テーブルに基づいて新規な組み合わせと判定されなかった場合、前記第1変換テーブルにおいて、受信した前記IPパケットに送信元情報として含まれる前記セットに対応付けられたグローバルアドレス及び変換後ポート番号のセットを読み出し、
読み出した前記セットに含まれるグローバルアドレスが前記第1グローバルアドレスである場合、
受信した前記IPパケットに送信元情報として含まれる前記セットを、読み出した前記セットに変換し、
送信元情報が変換された前記IPパケットを宛先の装置に送信し、
読み出した前記セットに含まれるグローバルアドレスが前記第2グローバルアドレスである場合、受信した前記IPパケットを前記第2通信制御部に転送する
請求項1又は2に記載の通信制御システム。 The first communication control unit is
When the set included in the received IP packet as source information is not determined to be a new combination based on the first conversion table, a set of a global address and a converted port number associated with the set included in the received IP packet as source information is read out from the first conversion table;
If the global address included in the read set is the first global address,
converting the set included in the received IP packet as source information into the read set;
Transmitting the IP packet with the converted source information to a destination device;
3 . The communication control system according to claim 1 , wherein when a global address included in the read set is the second global address, the received IP packet is transferred to the second communication control unit. 4 .
受信した前記IPパケットを、読み出した前記セットに対応付けられたクライアント装置に転送する
請求項1から3のいずれか1項に記載の通信制御システム。 When an IP packet including a set of a global address and a post-translation port number as destination information is received, a set of a private address and a post-translation port number associated with the set included in the received IP packet as destination information is read from the first translation table;
The communication control system according to claim 1 , further comprising: a communication control unit that transfers the received IP packet to a client device associated with the read set.
受信した前記IPパケットに送信元情報として含まれる、プライベートアドレス及び変換前ポート番号のセットが、前記第2通信制御部によるNAPT変換に用いられる第2変換テーブルであって、プライベートアドレス及び変換前ポート番号と、グローバルアドレス及び変換後ポート番号とを対応付ける第2変換テーブルに基づいて、新規な組み合わせと判定される場合、前記第2グローバルアドレスに対応するポート番号であって、前記NAPT変換に利用可能なポート番号の数が予め定められた第2閾値以下であるか否かを判定し、
前記NAPT変換に利用可能なポート番号の数が前記第2閾値より大きい場合は、
受信した前記IPパケットに送信元情報として含まれる前記セットに対して、利用可能な1のポート番号を変換後ポート番号として割り当て、
受信した前記IPパケットに送信元情報として含まれる前記セットを、前記第2グローバルアドレス及び前記変換後ポート番号のセットに変換し、
受信した前記IPパケットに送信元情報として含まれる前記セットと、変換した前記セットとを対応付けて、前記第2変換テーブルに登録し、
送信元情報が変換された前記IPパケットを宛先の装置に送信し、
前記NAPT変換に利用可能なポート番号の数が前記第2閾値以下である場合は、
受信した前記IPパケットに送信元情報として含まれる前記セットと、前記第1グローバルアドレスとを対応付けて前記第2変換テーブルに登録し、
前記第1通信制御部に、受信した前記IPパケットを転送する
請求項1から4のいずれか1項に記載の通信制御システム。 The second communication control unit is
when a set of a private address and a pre-conversion port number included as source information in the received IP packet is determined to be a new combination based on a second conversion table used for NAPT conversion by the second communication control unit, the second conversion table associating a private address and a pre-conversion port number with a global address and a post-conversion port number, determining whether or not the number of port numbers corresponding to the second global address and available for the NAPT conversion is equal to or less than a predetermined second threshold value;
If the number of port numbers available for the NAPT conversion is greater than the second threshold,
Allocating one available port number as a post-translation port number to the set included in the received IP packet as source information;
converting the set included in the received IP packet as source information into a set of the second global address and the converted port number;
registering the set included as source information in the received IP packet and the converted set in the second conversion table in association with each other;
Transmitting the IP packet with the converted source information to a destination device;
If the number of port numbers available for the NAPT conversion is equal to or less than the second threshold,
registering the set included as source information in the received IP packet and the first global address in the second conversion table in association with each other;
The communication control system according to claim 1 , further comprising: a first communication control unit that transfers the received IP packet to the first communication control unit.
請求項5に記載の通信制御システム。 6. The communication control system according to claim 5, wherein when the number of times the IP packet is transferred between a plurality of communication control devices reaches or exceeds a predetermined number of times, any one of the plurality of communication control devices discards the IP packet.
前記NAPT変換に利用可能なポート番号の数が前記閾値以下である場合は、
受信した前記IPパケットに送信元情報として含まれる前記セットと、プライベートネットワークに接続された他の通信制御装置が有するグローバルアドレスとを対応付けて前記変換テーブルに登録し、
前記他の通信制御装置に、受信した前記IPパケットを転送し、
前記プライベートネットワーク配下のクライアント装置と外部のネットワークの装置とが通信する場合に、前記他の通信制御装置よりも優先して、前記通信にかかるIPパケットを受信する
通信制御装置。 When a set of a private address and a pre-translation port number included as source information in a received IP packet is determined to be a new combination based on a conversion table that associates a set of a private address and a pre-translation port number with a set of a global address and a post-translation port number, and that is used for NAPT (Network Address Port Translation) conversion in the network layer of the OSI reference model, the device determines whether the number of port numbers corresponding to its own global address and available for the NAPT conversion is equal to or less than a predetermined threshold value;
If the number of port numbers available for the NAPT conversion is equal to or less than the threshold,
registering the set included as source information in the received IP packet in the conversion table in association with a global address of another communication control device connected to the private network ;
Transferring the received IP packet to the other communication control device;
a communication control device which, when a client device under the private network communicates with a device on an external network, receives IP packets relating to the communication in priority over the other communication control devices;
受信した前記IPパケットに送信元情報として含まれる前記セットに対して、利用可能な1のポート番号を変換後ポート番号として割り当て、
受信した前記IPパケットに送信元情報として含まれる前記セットを、自己が有する前記グローバルアドレス及び前記変換後ポート番号のセットに変換し、
受信した前記IPパケットに送信元情報として含まれる前記セットと、変換した前記セットとを対応付けて、前記変換テーブルに登録し、
受信した前記IPパケットを、宛先の装置に送信する
請求項7に記載の通信制御装置。 If the number of port numbers available for the NAPT conversion is greater than the threshold,
Allocating one available port number as a post-translation port number to the set included in the received IP packet as source information;
converting the set included as source information in the received IP packet into a set of the global address and the converted port number that the IP packet has;
registering the set included in the received IP packet as source information and the converted set in the conversion table in association with each other;
The communication control device according to claim 7 , wherein the received IP packet is transmitted to a destination device.
前記NAPT変換に利用可能なポート番号の数が前記閾値以下である場合は、
受信した前記IPパケットに送信元情報として含まれる前記セットと、プライベートネットワークに接続された他の通信制御装置が有するグローバルアドレスとを対応付けて前記変換テーブルに登録し、
前記他の通信制御装置に、受信した前記IPパケットを転送し、
前記プライベートネットワーク配下のクライアント装置と外部のネットワークの装置とが通信する場合に、前記他の通信制御装置よりも優先して、前記通信にかかるIPパケットを受信する
通信制御方法。 When a set of a private address and a pre-translation port number included as source information in a received IP packet is determined to be a new combination based on a conversion table that associates a set of a private address and a pre-translation port number with a set of a global address and a post-translation port number, and that is used for NAPT (Network Address Port Translation) conversion in the network layer of the OSI reference model, the device determines whether the number of port numbers corresponding to its own global address and available for the NAPT conversion is equal to or less than a predetermined threshold value;
If the number of port numbers available for the NAPT conversion is equal to or less than the threshold,
registering the set included as source information in the received IP packet in the conversion table in association with a global address of another communication control device connected to the private network ;
Transferring the received IP packet to the other communication control device;
When a client device under the private network communicates with a device on an external network, the client device receives IP packets related to the communication in priority over the other communication control devices.
受信したIPパケットに送信元情報として含まれるプライベートアドレス及び変換前ポート番号のセットが、プライベートアドレス及び変換前ポート番号のセットと、グローバルアドレス及び変換後ポート番号のセットとを対応付ける変換テーブルであって、OSI参照モデルのネットワーク層のNAPT(Network Address Port Translation)変換に用いられる変換テーブルに基づいて、新規な組み合わせと判定される場合、自己が有するグローバルアドレスに対応するポート番号であって、前記NAPT変換に利用可能なポート番号の数が予め定められた閾値以下であるか否かを判定する処理と、
前記NAPT変換に利用可能なポート番号の数が前記閾値以下である場合は、
受信した前記IPパケットに送信元情報として含まれる前記セットと、プライベートネットワークに接続された他の通信制御装置が有するグローバルアドレスとを対応付けて前記変換テーブルに登録し、
前記他の通信制御装置に、受信した前記IPパケットを転送する処理と、
前記プライベートネットワーク配下のクライアント装置と外部のネットワークの装置とが通信する場合に、前記他の通信制御装置よりも優先して、前記通信にかかるIPパケットを受信する処理と、
を実行させるためのプログラム。 On the computer,
a process of determining whether the number of port numbers corresponding to the global address owned by the device and available for the NAPT conversion is equal to or less than a predetermined threshold value when the set of private address and pre-translation port number included in the received IP packet as source information is determined to be a new combination based on a conversion table that associates the set of private address and pre-translation port number with a set of global address and post-translation port number, the conversion table being used for NAPT conversion in the network layer of the OSI reference model;
If the number of port numbers available for the NAPT conversion is equal to or less than the threshold,
registering the set included as source information in the received IP packet in the conversion table in association with a global address of another communication control device connected to the private network ;
A process of transferring the received IP packet to the other communication control device;
When a client device under the private network communicates with a device of an external network, the client device receives IP packets related to the communication in priority to the other communication control devices;
A program for executing the above.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2022002165A JP7582678B2 (en) | 2022-01-11 | 2022-01-11 | COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL SYSTEM, COMMUNICATION CONTROL METHOD, AND PROGRAM |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2022002165A JP7582678B2 (en) | 2022-01-11 | 2022-01-11 | COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL SYSTEM, COMMUNICATION CONTROL METHOD, AND PROGRAM |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2023101924A JP2023101924A (en) | 2023-07-24 |
| JP7582678B2 true JP7582678B2 (en) | 2024-11-13 |
Family
ID=87425435
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2022002165A Active JP7582678B2 (en) | 2022-01-11 | 2022-01-11 | COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL SYSTEM, COMMUNICATION CONTROL METHOD, AND PROGRAM |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP7582678B2 (en) |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20130185404A1 (en) | 2012-01-18 | 2013-07-18 | Microsoft Corporation | Efficient port management for a distributed network address translation |
| US10237235B1 (en) | 2014-05-29 | 2019-03-19 | Amazon Technologies, Inc. | System for network address translation |
-
2022
- 2022-01-11 JP JP2022002165A patent/JP7582678B2/en active Active
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20130185404A1 (en) | 2012-01-18 | 2013-07-18 | Microsoft Corporation | Efficient port management for a distributed network address translation |
| US10237235B1 (en) | 2014-05-29 | 2019-03-19 | Amazon Technologies, Inc. | System for network address translation |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2023101924A (en) | 2023-07-24 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN107810627B (en) | Method and apparatus for establishing a media session | |
| EP3207667B1 (en) | System and method for distributed flow state p2p setup in virtual networks | |
| CN101404619B (en) | Method for implementing server load balancing and a three-layer switchboard | |
| US7991914B2 (en) | Technique for addressing a cluster of network servers | |
| US11436111B2 (en) | Highly-available distributed network address translation (NAT) architecture with failover solutions | |
| US7554993B2 (en) | Method and apparatus for performing connection management with multiple stacks | |
| TWI381682B (en) | Smart load balancing and fault recovery for network traffic | |
| CN100435530C (en) | A Realization Method of Two-way Load Balancing Mechanism in Multi-machine Server System | |
| CN107846358B (en) | Data transmission method, device and network system | |
| CN107770062A (en) | A kind of data packet sending method, device and the network architecture | |
| US11621915B2 (en) | Packet forwarding method, route sending and receiving method, and apparatus | |
| JP5169992B2 (en) | Network, network device, and load balancing method used therefor | |
| US11516125B2 (en) | Handling packets travelling towards logical service routers (SRs) for active-active stateful service insertion | |
| US20240388545A1 (en) | Packet processing method, gateway device, and storage system | |
| CN116132542B (en) | Container network management method, container network plug-in and related equipment | |
| CN113381929A (en) | Route processing method, gateway equipment and computer storage medium | |
| CN103051538A (en) | Method, control equipment and system for generating ARP (Address Resolution Protocol) table entry | |
| TWI501092B (en) | Method for controlling operations of server cluster | |
| JP7582678B2 (en) | COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL SYSTEM, COMMUNICATION CONTROL METHOD, AND PROGRAM | |
| CN100359875C (en) | Method for realizing load sharing on address resolution protocol agent | |
| US11190484B2 (en) | Enhanced large scale network address translation (NAT) system for processing packets between router and transmission control protocol/internet protocol (TCP/IP) network | |
| US9838302B1 (en) | Managing loss of network connectivity in traffic forwarding systems | |
| EP3026851B1 (en) | Apparatus, network gateway, method and computer program for providing information related to a specific route to a service in a network | |
| CN116366541A (en) | A cloud scene network storage load balancing access method and system | |
| US10084890B2 (en) | Sysplexport allocation across a z/OS sysplex |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230512 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20240227 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20240319 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240515 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20240702 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240828 |
|
| 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: 20241001 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20241024 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 7582678 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |