JPWO2011117959A1 - 通信装置、通信装置の制御方法、プログラム - Google Patents
通信装置、通信装置の制御方法、プログラム Download PDFInfo
- Publication number
- JPWO2011117959A1 JPWO2011117959A1 JP2012506687A JP2012506687A JPWO2011117959A1 JP WO2011117959 A1 JPWO2011117959 A1 JP WO2011117959A1 JP 2012506687 A JP2012506687 A JP 2012506687A JP 2012506687 A JP2012506687 A JP 2012506687A JP WO2011117959 A1 JPWO2011117959 A1 JP WO2011117959A1
- Authority
- JP
- Japan
- Prior art keywords
- address
- packet
- transmitted
- destination
- transmission
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/10—Mapping addresses of different types
- H04L61/103—Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5007—Internet protocol [IP] addresses
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
ネットワークに接続される通信装置において広く使用されているプロトコルはインターネットプロトコルである。インターネットプロトコルでは各装置に固有のアドレス(IPアドレス)を割り当て、このIPアドレスを用いて互いの装置を識別している。
1つのネットワークインターフェースに複数のIPアドレスが割り当てられた場合におけるIPアドレスの選択方法として、非特許文献1(RFC3484)が知られている。非特許文献1に示される方法では、条件に合致する複数のIPアドレスのうちプレフィックス長がより長いIPアドレスを選択する。
しかしながら、アプリケーションによってはトランスポート層よりも上位の層に対応するデータの内容を固定的なものとしていることがあり、非特許文献2に示されるようなIDを付加することが困難な場合がある。即ち、IDを参照することによるレスポンスの識別を行う場合、全てのパケットにIDを付加するようにしなければならない。このためには、アプリケーションのプログラム内容を大幅に変更しなければならず、多くの手間やコストがかかってしまう。
サーバ110は、クライアントPC100からのリクエストに応答するサービスを提供している。サーバ110が提供するサービスとしては、例えばWeb、DNS、電子メール、SNMPエージェント、WS−Eventingのサーバ機能が挙げられる。
図3は、サーバ110のハードウェア構成を示すブロック図である。CPU311を含む制御部310は、サーバ110全体の動作を制御する。CPU311は、ROM312に記憶された制御プログラムを読み出して各種制御処理を実行する。RAM313は、CPU311の主メモリ、ワークエリア等の一時記憶領域として用いられる。HDD314は、画像データや各種プログラムを記憶する。
図4は、クライアントPC100及びサーバ110のソフトウェア構成を示す。図4に示す各機能部は、クライアントPC100及びサーバ110のそれぞれが備えるCPU211及びCPU311が制御プログラムを実行することにより実現される。
アプリケーション406がサーバ110との間でデータを送受信する場合は、クライアントPC100内の通信制御部405に対して要求を行う。通信制御部405は、アプリケーション406からの要求を受けて、オペレーティングシステムの通信ライブラリ404を介してサーバ110と通信する。なお、通信ライブラリ404は、ソケット通信以外にRPC(Remote Procedure Call)やWebサービス等による通信にも対応している。
アプリケーション401がクライアントPC100との間でデータを送受信する場合は、サーバ110内の通信制御部402に対して要求を行う。通信制御部402は、アプリケーション401からの要求を受けて、オペレーティングシステムの通信ライブラリ403を介してクライアントPC100と通信する。なお、通信ライブラリ403は、通信ライブラリ404と同様に、ソケット通信以外にRPCやWebサービス等による通信にも対応している。
返信パケット508には、宛先アドレス507、送信元アドレス506、及びレスポンスデータ505が含まれる。宛先アドレス507及び送信元アドレス506は、OSI参照モデルにおけるネットワーク層のIPアドレスの「Destination Address」及び「Source Address」に対応する。返信パケット508では、送信パケット501の送信元アドレス503として使用されていたIPアドレスaが宛先アドレス507として用いられる。
返信パケット508に含まれるレスポンスデータ505は、OSI参照モデルにおけるトランスポート層に対応するデータである。
しかしながら、この方法を採用する場合、サーバ110に送信する全てのパケットのデータ部分にIDを付加するように、クライアントPC100及びサーバ110双方のアプリケーションの内容を大幅に変更する必要がある。この場合、多くの手間とコストがかかってしまう。
更に、P601で送信される送信パケットの送信元アドレスには、クライアントPC100に割り当てられているIPアドレスa及びcのうち、RFC3484に従った方法で選択されたIPアドレスが使用される。即ち、IPアドレスa及びcのうち、宛先アドレスとして選択したIPアドレスdに対してプレフィックス長がより長いIPアドレスが選択される。図6に示す例では、IPアドレスaが選択され、送信元アドレスとして使用される。
この返信パケットの宛先アドレスは、P601の送信パケットの送信元アドレスとして使用されていたIPアドレスaが使用される。更に、P603で送信される返信パケットの送信元アドレスには、サーバ110に割り当てられているIPアドレスb及びdのうち、RFC3484に従った方法で選択されたIPアドレスが使用される。即ち、IPアドレスb及びdのうち、宛先アドレスとして選択したIPアドレスaに対してプレフィックス長がより長いIPアドレスが選択される。図6に示す例では、IPアドレスbが選択され、送信元アドレスとして使用されるものとする。
P604では、サーバ110からのパケットを受信したクライアントPC100が、返信パケット内のID(0xABCD)を参照し、受信したパケットがP601で送信した送信パケットに対する返信パケットであることを識別する。そして、受信した返信パケットの送信元アドレスを抽出し、後述する図9に示すテーブルを更新する。
P607では、サーバ110がリクエストデータを処理し、リクエストデータに対するレスポンスデータを生成する。なお、このレスポンスデータにもやはり、P603の返信パケットに付加されていたIDは付加されない。
以上の通り、クライアントPC100は、リクエストデータを送信するための前準備として、所定の識別情報(ID)を付加した送信パケットを一度だけサーバ110に送信する。そして、それに対する返信パケットの送信元アドレスを抽出し、次回以降の宛先アドレスとして使用する。これにより、次回以降にサーバ110に対して送信するリクエストデータにIDを付加しなくとも、リクエストデータとレスポンスデータ(送信パケットと返信パケット)を関連付けることが可能となる。
ステップS701では、アプリケーション406からの送信要求を受け付ける。ステップS702では、図9を用いて後述するアドレス管理テーブルを参照し、アプリケーション406から指定された宛先アドレスと一致するものがテーブル内の要求アドレス903に含まれているか否かを判定する。この判定の結果、一致するIPアドレスが存在する場合はステップS707に進み、そうでなければステップS703に進む。
ステップS704では、クライアントPC100宛てのパケットを受信したか否かを判定する。クライアントPC100宛てのパケットを受信した場合は、ステップS705に進み、ステップS703で送信した送信パケットに付加したIDと同じIDが、受信したパケットに付加されているか否かを判定する。この判定の結果、IDが付加されていた場合はステップS706に進む。受信したパケットにIDが付加されている場合は、そのパケットがステップS703で送信した送信パケットに対する返信パケットであることが識別できる。
ステップS709では、クライアントPC100宛てのパケットを受信したか否かを判定する。クライアントPC100宛てのパケットを受信した場合は、ステップS710に進み、受信したパケットの送信元アドレスが、ステップS708で送信した送信パケットの宛先アドレスと一致するか否かを判定する。この判定の結果、アドレスが一致した場合はステップS711に進む。アドレスが一致した場合は、受信したパケットがステップS708で送信した送信パケットに対する返信パケットであることが識別できる。
図8は、クライアントPC100からサーバ110にパケットを送信する際の、サーバ110側の通信制御部402の処理を説明するフローチャートである。図8のフローチャートに示す各動作は、サーバ110のCPU311が制御プログラムを実行することにより実行される。
ステップS807では、受信したパケット内のデータをアプリケーション401に転送することなく、通信制御部402が返信パケットを生成し、送信する(図6のP603)。このとき、返信パケットの宛先アドレスは、ステップS801で受信したパケットの送信元アドレスを用いる。また、返信パケットの送信元アドレスは、図6のP602で説明した通り、RFC3484に従った方法で選択されたIPアドレスが使用される。
ステップS804では、受信したパケットに含まれるデータをアプリケーション401に転送する。続くステップS805では、アプリケーション401からの送信要求を受け付ける。
図9は、HDD214に記憶されているアドレス管理テーブルを示す図である。アドレス管理テーブルには、管理番号901、アプリケーション識別902、アプリケーションからの要求アドレス903、及び返信パケットの送信元アドレス904が対応付けて管理されている。
アプリケーションからの要求アドレス903は、ステップS703においてアドレス管理テーブルに追加される情報である。返信パケットの送信元アドレス904は、ステップS706においてアドレス管理テーブルに追加される情報である。
しかしながら、クライアントPC100とサーバ110との間に、ルータのような通信機器やファイアウォールのようなソフトウェアが介在する場合には、“Ingress Filtering Problem”が発生しうる。これは、送信パケットの宛先アドレスと、返信パケットの発信元アドレスが異なる場合は、ルータやファイアウォールが返信パケットを通さず、破棄してしまうという問題である。
そこで第2の実施形態では、サーバ110が送信する返信パケットの送信元アドレスが、クライアントPC100が送信した送信パケットの宛先アドレスと異なるものになることがないTCPパケットを利用する。
P1004では、クライアントPC100が、受信したアドレスリストをHDD214に記憶する。
P1006では、図6のP602の処理と同様に、サーバ110が返信パケットを生成する。この返信パケットには、送信パケットに含まれていたIDが付加される。続くP1007では、図6のP603と同様に、返信パケットをクライアントPC100に対して送信する。
以上の流れで、クライアントPC100は、サーバ110に対してUDPパケットを送信するのに適したIPアドレス(IPアドレスb)を知ることができる。これにより、次回以降にサーバ110にリクエストデータを送信する際に、IPアドレスbを宛先アドレスとして使用することにより、サーバ110と正常に通信することができる。
図11に示すフローチャートは、図7のステップS702で「いいえ」と判定された場合に開始される。ステップS1101では、TCPパケットを用いてサーバ110にアドレスリストを要求する(図10のP1001)。
ステップS1104では、アプリケーション406から指定された宛先アドレスに対して、所定の識別情報(ID)を付加した送信パケットを送信する(図10のP1005)。このとき、アプリケーション406から指定された宛先アドレスを、図9に示すアドレス管理テーブルの要求アドレス903に、新規レコードとして追加する。
この判定の結果、所定時間が経過していればステップS1108に進み、そうでなければステップS1105に戻る。ステップS1108では、S1103で記憶したアドレスリストに含まれるIPアドレスのうち、ステップS1104の送信パケットで使用したものと異なるものに宛先アドレスを変更する。
以上の通り、第2の実施形態では、リクエストデータを送信するための前準備としてTCPパケットを用いてサーバ110のアドレスリストを取得する。そして、ルータやファイアウォールの存在により、サーバ110からの返信パケットを受信できなかった場合は、アドレスリストに含まれる他のIPアドレスを宛先としてIDを付加した送信パケットを再送信する。これにより、ルータやファイアウォールが存在する環境においても、サーバ110との通信を正常に行うことが可能となる。
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
Claims (8)
- 複数のアドレスが割り当てられた外部装置とネットワークを介して接続される通信装置であって、
所定の識別情報を含むパケットを、前記複数のアドレスに含まれる第1のアドレスを宛先として前記外部装置に送信する送信手段と、
前記外部装置から送信されたパケットを受信する受信手段と、
前記受信手段が受信したパケットに前記所定の識別情報が含まれている場合に、当該受信したパケットの送信元アドレスを抽出する抽出手段と、
前記抽出手段が抽出した送信元アドレスが前記第1のアドレスとは異なる第2のアドレスである場合は、次回以降に前記外部装置に対してパケットを送信する際に前記第2のアドレスを宛先として送信するよう制御する制御手段と、
を備えることを特徴とする通信装置。 - 前記外部装置に対して次回以降に送信するパケットには、前記所定の識別情報が含まれないことを特徴とする請求項1に記載の通信装置。
- 前記送信手段が前記所定の識別情報を含むパケットを送信する際に用いた宛先アドレスと、前記抽出手段により抽出された送信元アドレスとを対応付けて管理する管理手段と、
所定のアドレスを宛先とする新規のパケット送信が要求された場合に、当該所定のアドレスが前記管理手段により管理されている宛先アドレスと一致するか否かを判定する判定手段と、
前記制御手段は、前記判定手段による判定の結果、前記所定のアドレスが前記管理手段により管理されている宛先アドレスと一致すると判定された場合に、当該所定のアドレスに対応付けて前記管理手段により管理されている送信元アドレスを宛先として前記新規のパケット送信を行うよう制御することを特徴とする請求項1に記載の通信装置。 - 前記判定手段による判定の結果、前記所定のアドレスが前記管理手段により管理されている宛先アドレスと一致しないと判定された場合に、前記送信手段は、当該所定のアドレスを宛先として前記所定の識別情報を含むパケットを送信することを特徴とする請求項3に記載の通信装置。
- TCPパケットを送信することにより、前記外部装置に割り当てられた前記複数のアドレスを示すアドレスリストを前記外部装置に対して要求する要求手段と、
前記要求手段による要求に応じて前記外部装置から送信されたアドレスリストを記憶する記憶手段と、を更に備え、
前記送信手段は、前記記憶手段に記憶されているアドレスリストを参照し、当該アドレスリストに含まれているアドレスに対して、前記所定の識別情報を含むパケットを送信することを特徴とする請求項1に記載の通信装置。 - 前記送信手段が送信するパケットは、UDPパケットであることを特徴とする請求項1に記載の通信装置。
- 複数のアドレスが割り当てられた外部装置とネットワークを介して接続される通信装置の制御方法であって、
所定の識別情報を含むパケットを、前記複数のアドレスに含まれる第1のアドレスを宛先として前記外部装置に送信する送信工程と、
前記外部装置から送信されたパケットを受信する受信工程と、
前記受信工程で受信したパケットに前記所定の識別情報が含まれている場合に、当該受信したパケットの送信元アドレスを抽出する抽出工程と、
前記抽出工程で抽出した送信元アドレスが前記第1のアドレスとは異なる第2のアドレスである場合は、次回以降に前記外部装置に対してパケットを送信する際に前記第2のアドレスを宛先として送信するよう制御する制御工程と、
を備えることを特徴とする通信装置の制御方法。 - 請求項7に記載の通信装置の制御方法をコンピュータに実行させるためのプログラム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2010/054917 WO2011117959A1 (ja) | 2010-03-23 | 2010-03-23 | 通信装置、通信装置の制御方法、プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2011117959A1 true JPWO2011117959A1 (ja) | 2013-07-04 |
JP5638063B2 JP5638063B2 (ja) | 2014-12-10 |
Family
ID=44656438
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012506687A Active JP5638063B2 (ja) | 2010-03-23 | 2010-03-23 | 通信装置、通信装置の制御方法、プログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US20110235641A1 (ja) |
JP (1) | JP5638063B2 (ja) |
WO (1) | WO2011117959A1 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5393719B2 (ja) * | 2011-03-24 | 2014-01-22 | 京セラドキュメントソリューションズ株式会社 | 画像形成装置 |
JP6217060B2 (ja) * | 2012-07-17 | 2017-10-25 | 沖電気工業株式会社 | 通信装置及び通信プログラム |
CN109842574B (zh) * | 2017-11-28 | 2020-07-17 | 中国科学院声学研究所 | 一种基于可编程网络技术的多宿主网络路由转发方法 |
JP2024039786A (ja) * | 2022-09-12 | 2024-03-25 | 久利寿 帝都 | ネットワークシステム、情報処理装置および通信方法 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10320327A (ja) * | 1997-03-19 | 1998-12-04 | Fujitsu Ltd | 二重化された通信アダプタの切替方法、切替方式、および切替用プログラムを格納した記録媒体 |
US7161897B1 (en) * | 2000-11-27 | 2007-01-09 | Nortel Networks Limited | Communications system, apparatus and method therefor |
US7492787B2 (en) * | 2002-03-29 | 2009-02-17 | Fujitsu Limited | Method, apparatus, and medium for migration across link technologies |
JP3665622B2 (ja) * | 2002-03-29 | 2005-06-29 | 株式会社東芝 | ソースアドレス選択システム、ルータ装置、通信ノード及びソースアドレス選択方法 |
JP2004274129A (ja) * | 2003-03-05 | 2004-09-30 | National Institute Of Information & Communication Technology | マルチホーミング接続装置 |
JP2005072685A (ja) * | 2003-08-27 | 2005-03-17 | Ntt Docomo Inc | ルータ装置及びその装置における経路情報の配布方法並びに通信システム |
JP4785338B2 (ja) * | 2003-09-18 | 2011-10-05 | 株式会社野村総合研究所 | データ転送方法、通信システム、および通信装置 |
JP2006086800A (ja) * | 2004-09-16 | 2006-03-30 | Fujitsu Ltd | ソースアドレスを選択する通信装置 |
US7706281B2 (en) * | 2006-01-06 | 2010-04-27 | Cisco Technology, Inc. | Selecting paths in multi-homed transport-layer network associations |
JP4176794B2 (ja) * | 2006-09-19 | 2008-11-05 | 株式会社東芝 | 通信に用いるアドレスを選択する装置、方法およびプログラム |
US8539053B2 (en) * | 2009-02-27 | 2013-09-17 | Futurewei Technologies, Inc. | Apparatus and method for dynamic host configuration protocol version 6 extensions for configuring hosts with multiple interfaces |
-
2010
- 2010-03-23 WO PCT/JP2010/054917 patent/WO2011117959A1/ja active Application Filing
- 2010-03-23 JP JP2012506687A patent/JP5638063B2/ja active Active
-
2011
- 2011-03-21 US US13/052,914 patent/US20110235641A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
WO2011117959A1 (ja) | 2011-09-29 |
JP5638063B2 (ja) | 2014-12-10 |
US20110235641A1 (en) | 2011-09-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101055048B1 (ko) | 정보 통신 시스템, 정보 처리 장치 및 방법, 및 기록 매체 | |
US7769878B2 (en) | Tunneling IPv6 packets | |
US7245622B2 (en) | Allowing IPv4 clients to communicate over an IPv6 network when behind a network address translator with reduced server workload | |
US8130671B2 (en) | Method and system for establishing bidirectional tunnel | |
JP2007531166A (ja) | ピアツーピアネットワークにおいてファイアウォールを介してwebブラウジングを提供するための方法及びシステム | |
JP2018533872A (ja) | リソース取得方法および装置 | |
KR100429902B1 (ko) | 공중망에서 사설망 내의 디바이스를 제어하기 위한 장치및 방법 | |
JP5638063B2 (ja) | 通信装置、通信装置の制御方法、プログラム | |
JP2009021921A (ja) | IPv4/IPv6デュアルスタック対応端末のための情報提示システム | |
JP2005197936A (ja) | 通信システム、登録装置及び通信装置 | |
JP3864397B2 (ja) | ユーザエッジルータ、ゲートウェイルータ、マルチホーミング通信システム、マルチホーミング通信方法およびマルチホーミング通信プログラム | |
JP4352645B2 (ja) | 端末装置、中継装置、通信方法及びその通信プログラムを記録した記録媒体 | |
JP2015201758A (ja) | 中継装置、通信システム、情報処理方法及びプログラム | |
JP2004135108A (ja) | 通信制御方法、通信端末、ルータ、通信端末の制御プログラム、およびルータの制御プログラム | |
JP4331638B2 (ja) | ネットワーク制御システム及びネットワーク制御方法 | |
US11962502B2 (en) | Control apparatus, communication system, control method and program | |
JP5084716B2 (ja) | Vpn接続装置、dnsパケット制御方法、及びプログラム | |
JP2009206876A (ja) | サービス公開システム、通信中継装置、およびサービス公開装置 | |
JP2010157857A (ja) | Vpn接続装置、パケット制御方法、及びプログラム | |
JP2008206081A (ja) | マルチホーミング通信システムに用いられるデータ中継装置およびデータ中継方法 | |
TWI385999B (zh) | And a method of accessing the connection between the user side and the network device in the network system | |
JP5171608B2 (ja) | Vpn接続装置、パケット制御方法、及びプログラム | |
JP2020145568A (ja) | 中継装置及びプログラム | |
JP2006039827A (ja) | 情報提供システム、情報処理装置、プログラムおよび記録媒体 | |
JP2017175361A (ja) | サーバ装置、端末装置、クライアントサーバシステム、通知方法、および情報取得方法、並びにコンピュータ・プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130325 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140225 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140428 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140701 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140901 |
|
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: 20140924 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20141021 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5638063 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |