JP2007049498A - 通信方法及び通信装置 - Google Patents

通信方法及び通信装置 Download PDF

Info

Publication number
JP2007049498A
JP2007049498A JP2005232556A JP2005232556A JP2007049498A JP 2007049498 A JP2007049498 A JP 2007049498A JP 2005232556 A JP2005232556 A JP 2005232556A JP 2005232556 A JP2005232556 A JP 2005232556A JP 2007049498 A JP2007049498 A JP 2007049498A
Authority
JP
Japan
Prior art keywords
address
virtual
packet
communication
nnm
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
JP2005232556A
Other languages
English (en)
Other versions
JP4722615B2 (ja
Inventor
Daisuke Sato
大介 佐藤
Yuji Sunochi
雄司 須之内
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.)
Fractalist Inc
Original Assignee
Fractalist Inc
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 Fractalist Inc filed Critical Fractalist Inc
Priority to JP2005232556A priority Critical patent/JP4722615B2/ja
Publication of JP2007049498A publication Critical patent/JP2007049498A/ja
Application granted granted Critical
Publication of JP4722615B2 publication Critical patent/JP4722615B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

【課題】 ネットワーク環境において、簡易な構成で確実にP2Pアプリケーションを実行可能とする。
【解決手段】 パケット30のIPヘッダには、宛先アドレス21として仮想IPアドレス「Y」、送信元アドレス22として「A」が書き込まれ、TCPヘッダまたはUDPヘッダには、宛先ポート番号23として「200」、送信元ポート番号24として「100」が書き込まれている。NNM17は、宛先グローバルアドレス(仮想IPアドレス)「Y」をペイロードに設定し、RAMに格納されている送信元仮想IPアドレス「X」を取得し、ペイロードに設定する。NNM17は、宛先グローバルアドレス「N」、送信元アドレスとしてプライベートアドレス「P」を取得し、ヘッダに設定する。そしてNNM17は、NAT越え及びファイアウォール越え用のSDK等の機能を用いて、NNM18へ向けパケットを転送する。
【選択図】 図1

Description

本発明は、通信方法及び通信装置に関し、より詳細には、NAT機能を有するネットワーク機器に接続されたコンピュータからP2P型通信を行うための通信方法及びプログラム並びに通信装置に関する。
近年、インターネットに接続するホストコンピュータの増大により、IP(Internet Protocol)アドレスの不足という問題が顕著化している。そこで、IPアドレスの不足を解消するための一つの方法として、NAT(Network Address Translator)機能が利用されている。NAT機能は、閉域網であるLAN(local area network)内のプライベートアドレス(プライベートIPアドレス)を有するホストコンピュータと、インターネット内のグローバルアドレス(グローバルIPアドレス)を有するホストコンピュータとの間で通信を行うために、アドレス変換を行う。また、NATの拡張された機能として、NAPT(network address port translation)機能も周知であり利用されている。NAPT機能は、別にIPマスカレードとも呼ばれ、プライベートIPアドレスとポート番号を変更することで、一つのグローバルIPアドレスを使って、複数のホストコンピュータを共有できるようにする技術である。本明細書においては、以下、NATとNAPTとをまとめて広義にNATと呼ぶこととする。
図9に、NAT機能を説明するためのネットワーク接続図を示す。ルータ13、14には、NAT(NAPT)機能が実装されており、プライベートアドレス/ポート番号のペアとグローバルアドレスとの対応・変換の関係を規定した変換テーブルが格納されている。端末11、12等は、PC(personal computer)やプリンター等であり、搭載されたプロセッサがプログラムに従って動作することに鑑み、広義のコンピュータシステムである。
端末11には、ルータ13によってプライベートアドレス「A」とポート「100」とが割り当てられている。ここで端末11からインターネットを介し別なLAN内の端末12(グローバルアドレスNのルータ14に接続されている)へ、ルータ13、14を介してパケットを送信する。端末11から送信されるIPヘッダには、宛先アドレス21として「N」、送信元アドレス22として「A」が書き込まれ、TCPヘッダまたはUDPヘッダには、宛先ポート番号23として「200」、送信元ポート番号24として「100」が書き込まれている。ルータ13は、変換テーブルを参照して、送信元アドレス22のプライベートアドレス「A」をルータ13のグローバルアドレス「M」に変換し、ルータ14に向けてパケットを送信する。
次に、端末12から端末11へ、ルータ14、13を介してIPパケットを送信する。端末12から送信されるパケットのヘッダには、宛先アドレス31として「M」、送信元アドレス32として「B」が書き込まれ、TCPヘッダまたはUDPヘッダには、宛先ポート番号33として「100」、送信元ポート番号34として「200」が書き込まれている。ルータ13は、変換テーブルを参照して、宛先アドレス31のグローバルアドレス「M」をプライベートアドレス「A」に変換し、LAN内の端末11に向けてパケットを送信する。
一方、オンラインゲームやビデオチャットなどのP2P(peer to peer)型通信を利用したアプリケーション(以下、P2Pアプリケーションという)の利用が増えている。P2P型通信は、サーバを介さずに、端末間で直接通信をおこなう。NAT機能を利用した接続環境において、P2Pアプリケーションを利用するために、IETF(Internet Engineering Task Force)の規格であるSTUN(例えば、非特許文献1参照)技術が知られている。
また、NAT機能を有するネットワーク機器を使用した通信方法を開示した文献がある(例えば、特許文献1参照)。
REC3489 "STUN-Simple Traversal of User Datagram Protocol (UDP) Through Network Address Translators (NATs)" March 2003 特開2005−117587号公報
しかしながら、STUN技術によっても端末間で通信ができない場合がある。これは、規格が詳細な部分まで規定されていなかったり、ルータによって実装する部分が異なるためである。また、通信経路の途中に、UDP(User Datagram Protocol)による通信が行えないファイアウォールが接続されていると、端末間で通信することができない。即ち、通信を行う2つ以上の端末がある場合に、それらの端末の間に、NAT機能が存在するネットワーク機器(ルータ等)が接続されている場合、通信を行うことができなかった(所謂、NAT越え問題)。又は端末の間に、ファイアウォール機能が存在するネットワーク機器(WEBプロキシサーバ等)が接続されている場合、通信を行うことができなかった(所謂、ファイアウォール越え問題)。
従来、これらのNAT越え問題及びファイアウォール越え問題に対処するために、図9の端末11に実装されているアプリケーションを、NAT越え及びファイアウォール越え用の市販のSDK(Software Development Kit)等を使用して変更する必要があった。さらに、NAT越え問題及びファイアウォール越え問題に対処するためには、図9のルータ13等の設定を変更する必要があった。従って、NAT越え及びファイアウォール越えの通信は、ネットワーク環境にインパクトを与えなければ行えないという点において、上記従来技術には未だ改善の余地があった。
本発明は、このような状況に鑑みてなされたもので、その目的とするところは、ネットワーク環境において、簡易な構成で確実にP2Pアプリケーションを実行可能とする通信方法及び通信装置を提供することにある。
このような目的を達成するために、本発明の通信方法(図1、3)は、NAT機能を有する第1のネットワーク機器(13)に接続された第1のコンピュータ(11)と、NAT機能を有する第2のネットワーク機器(14)に接続された第2のコンピュータ(12)との間でP2P型通信を行うための通信方法であって、第1のプライベートアドレスとは別に割り当てられた論理的なIPアドレスである第1の仮想IPアドレスを割り当てられた第1の通信装置(17)が、前記第1のネットワーク機器と前記第1のコンピュータとの間に接続されており、第2のプライベートアドレスとは別に割り当てられた論理的なIPアドレスである第2の仮想IPアドレスを割り当てられた第2の通信装置(18)が、前記第2のネットワーク機器と前記第2のコンピュータとの間に接続されており、前記第1の通信装置が、ヘッダに前記第2の仮想IPアドレスを含むパケットを前記第1のコンピュータから受信する第1の受信ステップ(S306→S316)と、前記第1の通信装置が、前記第1の受信ステップにおいて受信したパケットに前記第1の仮想IPアドレスを設定し、該パケットをNAT越え機能(図4、5)を使用して前記第1のネットワーク機器を介し前記第2のコンピュータに向けて送信する第1の送信ステップ(S316〜S322)と、前記第1の通信装置が、前記第1の送信ステップの後に、前記第1の仮想IPアドレス及び前記第2の仮想IPアドレスを含むパケットを前記第1のネットワーク機器から受信する第2の受信ステップ(S306→S308)と、前記第1の通信装置が、前記第2の受信ステップにおいて受信したパケットのヘッダに前記第2の仮想IPアドレスを設定し、該パケットを前記第1のコンピュータに向けて送信する第2の送信ステップ(S308〜S314)とを備えることを特徴とする。
また、上記目的を達成するために、本発明のプログラムは、上記に記載の通信方法の各ステップをコンピュータに実行させることを特徴とする。
また、上記目的を達成するために、本発明の通信装置(17)は、NAT機能を有する第1のネットワーク機器に接続された第1のコンピュータと、NAT機能を有する第2のネットワーク機器に接続された第2のコンピュータとの間でP2P型通信を行うための通信システム(図1)の通信装置であって、前記通信装置は、第1のプライベートアドレスとは別に割り当てられた論理的なIPアドレスである第1の仮想IPアドレスを割り当てられ、前記第1のネットワーク機器と前記第1のコンピュータとの間に接続されており、前記通信システムは、第2のプライベートアドレスとは別に割り当てられた論理的なIPアドレスである第2の仮想IPアドレスを割り当てられ、前記第2のネットワーク機器と前記第2のコンピュータとの間に接続された他の通信装置(18)を含み、前記通信装置は、ヘッダに前記第2の仮想IPアドレスを含むパケットを前記第1のコンピュータから受信する第1の受信手段と、前記第1の受信手段によって受信したパケットに前記第1の仮想IPアドレスを設定し、該パケットをNAT越え機能を使用して前記第1のネットワーク機器を介し前記第2のコンピュータに向けて送信する第1の送信手段と、前記第1の送信手段による送信の後に、前記第1の仮想IPアドレス及び前記第2の仮想IPアドレスを含むパケットを前記第1のネットワーク機器から受信する第2の受信手段と、前記第2の受信手段によって受信したパケットのヘッダに前記第2の仮想IPアドレスを設定し、該パケットを前記第1のコンピュータに向けて送信する第2の送信手段とを備えたことを特徴とする。
なお、特許請求の範囲の構成要素と対応する実施形態中の図中符号等を()で示した。ただし、特許請求の範囲に記載した構成要素は上記()部の実施形態の構成要素に限定されるものではない。
以上の構成により、本発明の通信機器は、設置先のネットワーク環境にインパクトを与えずに導入できる。また、端末(上記第1のコンピュータ)に割り当てられるIPアドレスは従来どおり既に設置されていた上記第1のネットワーク機器(ルータ)がNAT機能の変換テーブルで割り当てたものを利用でき、端末は同ネットワークに設置されている既存の端末(他のPCやプリンター等)と設定変更なく通信することが可能になる。
本発明によれば、ネットワーク環境において、簡易な構成で確実にP2Pアプリケーションを実行可能にするという効果を奏する。
以下、図面を参照して本発明の実施形態を詳細に説明する。なお、各図面において同じ機能を有する箇所には同一の符号を付す。
[装置構成]
図1は、本実施形態のP2P通信方法の説明図である。図1を参照し、端末11、12間のパケット通信について説明する。端末11、12等は、PCやプリンター等であり、搭載されたプロセッサがプログラムに従って動作することに鑑み、広義のコンピュータシステムである。
ルータ13、14には、NAT(NAPT)機能が実装されており、プライベートアドレス/ポート番号のペアとグローバルアドレスとの対応・変換の関係を規定した変換テーブルが格納されている。ルータ13、14は、各々グローバルアドレス「M」、「N」を有する。端末11には、ルータ13によってプライベートアドレス「A」とポート「100」とが割り当てられている。端末12には、ルータ14によってプライベートアドレス「B」とポート「200」とが割り当てられている。
図中符号17、18は本実施形態に特徴的な通信装置であって、本実施形態ではNNM(Nomadic Node Module)と呼ぶ。NNM17には、ルータ13によってプライベートアドレス「P」とポート「100」とが割り当てられており、さらにプライベートアドレス「P」とは別に論理的なIPアドレス「X」が割り当てられている。このプライベートアドレスとは別に割り当てられる論理的なIPアドレスを、本実施形態においては「仮想IPアドレス」と呼び、NNM17には、仮想IPアドレス「X」が割り当てられている。仮想IPアドレスの取得方法については、後述する。
NNM18には、ルータ14によってプライベートアドレス「Q」とポート「200」とが割り当てられており、さらに仮想IPアドレス「Y」が割り当てられている。各NNMは、NAT越え及びファイアウォール越え用の市販のSDK等を組み込み作成したNNMプログラムを実装している。NNMプログラムの処理内容については、後述する。
セッション管理サーバ25は、ソケット(ポート番号+仮想IPアドレス+グローバルアドレス)のデータを格納している。セッション管理サーバ25のソケットの格納については後述する。
また、端末11、NNM17、及びルータ13を含むLAN内には、ファイアウォール機能が存在するWEBプロキシサーバ(不図示)が接続されている。同様に、端末12、NNM18、及びルータ14を含むLAN内にも、ファイアウォール機能が存在する別のWEBプロキシサーバ(不図示)が接続されている。
ここで端末11からインターネットを介し別なLAN内の端末12(グローバルアドレスNのルータ14に接続されている)へ、NNM17、ルータ13、14、及びNNM18を介してパケットを送信する。端末11から送信されるパケット30のIPヘッダには、宛先アドレス21として仮想IPアドレス「Y」、送信元アドレス22として「A」が書き込まれ、TCPヘッダまたはUDPヘッダには、宛先ポート番号23として「200」、送信元ポート番号24として「100」が書き込まれている。宛先アドレス21としての仮想IPアドレス「Y」は、端末11によってセッション管理サーバ25から宛先ポート番号「200」をキーとして取得される。
NNM17は、宛先グローバルアドレス(仮想IPアドレス)「Y」をペイロードに設定し、不図示のRAM(random access memory)に格納されている送信元仮想IPアドレス「X」を取得し、ペイロードに設定する。送信元仮想IPアドレス「X」のRAMへの格納については後述する。NNM17は、宛先グローバルアドレス「N」、送信元アドレスとしてプライベートアドレス「P」を取得し、ヘッダに設定する。宛先グローバルアドレス「N」は、NNM17によってセッション管理サーバ25から宛先ポート番号「200」をキーとして取得される。プライベートアドレス「P」は、予めルータ13によって割り当てられている。そしてNNM17は、NAT越え及びファイアウォール越え用のSDK等の機能を用いて、NNM18へ向けパケットを転送する。
ルータ13は、変換テーブルを参照して、送信元アドレスのプライベートアドレス「P」をルータ13のグローバルアドレス「M」に変換し、ルータ14に向けてパケットを送信する。
次に、端末12から端末11へ、NNM18、ルータ14、13、及びNNM17を介してパケットを送信する。端末12から送信されるパケットのヘッダには、宛先アドレス31として仮想IPアドレス「X」、送信元アドレス32として「B」が書き込まれ、TCPヘッダまたはUDPヘッダには、宛先ポート番号33として「100」、送信元ポート番号34として「200」が書き込まれている。これに次ぐNNM18の処理は、上述したNNM17と同様である。
ルータ14は、変換テーブルを参照して、送信元アドレスのプライベートアドレス「Q」をルータ14のグローバルアドレス「N」に変換し、ルータ13に向けてパケットを送信する。
ルータ13は、変換テーブルを参照して、宛先アドレス31のグローバルアドレス「M」をプライベートアドレス「P」に変換し、LAN内のNNM17に向けてパケット40を送信する。
NNM17は、ペイロードから宛先仮想IPアドレス「X」を削除し、ペイロードの送信元仮想IPアドレス「Y」を送信元アドレスとしてヘッダに設定する。そしてNNM17は、宛先プライベートアドレス「A」を取得し、宛先アドレスとしてヘッダに設定し、そのパケットを端末11へ送信する。接続されている端末11のプライベートアドレス「A」の取得については、後述する。
通常の通信ではNNM17は、ルータ13からDHCP(dynamic host configuration protocol)によるIP取得を行うブリッジとして動作する。NNM17にはルータ13が割り当てる実IPアドレス(プライベートアドレス「P」)とは別に論理的なIPアドレス(仮想IPアドレス「X」)を新たに割り当てる。NNM同士がお互いに通信する際は仮想IPアドレスを指定して行う。仮想IPアドレス間の通信は市販のSDK等によるNAT越え及びファイアウォール越えのセッションを張り、そのセッション上でパケットをトンネリングさせることで通信が行われる。
端末11は、NNM17を接続することで、NNM17に割り当てられている仮想IPアドレス「X」で他のネットワーク上の端末からアクセス可能である。NNM17は、この仮想IPアドレス「X」を設けることで、端末11上で動作する既存のアプリケーションに影響(改変等)を与えずにNAT越え及びファイアウォール越えの通信が行えることに特徴がある。
[動作説明]
次に、図1を参照し上述した端末11、12間のパケット通信における、NNM17の不図示のCPU(central processing unit)が実行する通信制御処理の主な手順を説明する。
本実施形態のNNM17の上述した動作に関わる処理は、図2〜8のフローチャートや通信方法の説明図に示す処理手順により行われる。これらの処理手順は、NNM17のCPUが、ROM(read only memory)に記憶されているNNMプログラムを読み出して実行することにより行われる処理である。
図2は、ルータ13、セッション管理サーバ25等が既に立ち上がっている状況において、端末11及びNNM17の電源をONとした場合の、NNM17のNNMパワーON処理を示すフローチャートである。
NNM17は電源がONとなると、接続されている端末11からのネゴシエーションのパケットを受信する(ステップS200)。端末11からのネゴシエーションとしては、DHCPによるルータ13からのプライベートアドレス「A」取得、ARP(Address Resolution Protocol)リクエスト等がある。次いで、NNM17は、受信パケットから、接続されている端末11のプライベートアドレス「A」を認識し、RAMに格納する(ステップS202)。尚、この段階で、NNM17は、ルータ13から自身のプライベートアドレス「P」を取得し、RAMに格納する
次にステップS204において、NNM17は、仮想IPアドレスの取得方法によって処理を分岐する。例えば、仮想IPアドレスの取得方法設定は、NNMに実装されたDIPスイッチ等で切り替え選択可能とする等、周知の設定手段を適用すればよい。
NNM内の設定ファイルによって仮想IPアドレスを取得する場合、NNM17は、NNM内の設定ファイルから、それに予め設定されている仮想IPアドレス「X」を取得し、RAMに格納する(ステップS206)。NNM17は、ルータ13に問い合わせルータの変換テーブルに設定されている自身のポート番号「100」、グローバルアドレス「M」を取得し、RAMに格納する(ステップS208)。そしてNNM17は、ソケット(ポート番号「100」+仮想IPアドレス「X」+グローバルアドレス「M」)をセッション管理サーバ25へ送信し格納する。
セッション管理サーバ25から仮想IPアドレスを取得する場合、NNM17は、ルータ13に問い合わせルータの変換テーブルに設定されている自身のポート番号「100」を取得し、RAMに格納する(ステップS212)。NNM17は、セッション管理サーバ25へポート番号「100」に対する仮想IPアドレス割り当てをリクエストする(ステップS214)。そしてNNM17は、予めセッション管理サーバ25に格納されているソケット(ポート番号「100」+仮想IPアドレス「X」+グローバルアドレス「M」)を取得する(ステップS216)。NNM17は、取得したソケットから仮想IPアドレス「X」、グローバルアドレス「M」を取得し、RAMに格納する(ステップS218)。
NNM同士の通信によって仮想IPアドレスを取得する場合、NNM17は、自LAN内のNNM同士のネゴシエーションにより、所定の仮想IPアドレス空間における空き仮想IPアドレス認識をする(ステップS220)。NNM17は、空き仮想IPアドレスのうちの最若番の仮想IPアドレス(この例では「X」)を取得し、RAMに格納する(ステップS222)。そしてNNM17は、ルータ13に問い合わせルータの変換テーブルに設定されている自身のポート番号「100」、グローバルアドレス「M」を取得し、RAMに格納する(ステップS224)。NNM17は、ソケット(ポート番号「100」+仮想IPアドレス「X」+グローバルアドレス「M」)をセッション管理サーバ25へ送信し格納する(ステップS226)。
図3は、NNM17の電源をONとした後の通常状態における、NNM17のNNM通常処理を示すフローチャートである。
NNM17は、パケットの受信を検知すると受信パケットが仮想IPアドレス宛のパケットか否かを判定する(ステップS300→S302)。即ち、ステップS302において、NNM17は、仮想IPアドレスに固有のネットワークセグメント(例:10.0.0.0/8)内のIPアドレスが受信パケットに設定されている場合、そのIPアドレスを仮想IPアドレスと判定し、受信パケットは仮想IPアドレス宛のパケットであると判定する。例えば、NNM17は、図1に示したパケット30又は40のようにIPアドレス「Y」又は「X、Y」が受信パケットに設定されている場合、それらのIPアドレスを仮想IPアドレス「Y」又は「X、Y」と判定し、パケット30又は40は仮想IPアドレス宛のパケットであると判定する。
NNM17は、ステップS302において受信パケットが仮想IPアドレス宛のパケットでないと判定した場合、受信パケットをそのまま受信側と反対側のネットワークに転送する(ステップS304)。
NNM17は、ステップS302において受信パケットが仮想IPアドレス宛のパケットであると判定した場合、図2のステップS202の処理で取得した接続されている端末11のプライベートアドレス「A」に基づいて、受信パケットが端末11宛のパケットか否かを判定する(ステップS306)。例えば、NNM17は、図1に示したパケット30のように、送信元アドレス22として端末11のプライベートアドレス「A」が受信パケットに設定されている場合、受信パケットは端末11から他のNNM宛のパケットであると判定する。また例えば、NNM17は、図1に示したパケット40のように、端末11のプライベートアドレス「A」が受信パケットに設定されていない場合、受信パケットは端末11宛のパケットであると判定する。
ステップS306において受信パケットが端末11から他のNNM宛のパケットである場合、図1の例を参照しながら説明する。端末11から送信されるパケット30のIPヘッダには、宛先アドレス21として仮想IPアドレス「Y」、送信元アドレス22として「A」が書き込まれ、TCPヘッダまたはUDPヘッダには、宛先ポート番号23として「200」、送信元ポート番号24として「100」が書き込まれている。NNM17は、宛先グローバルアドレス(仮想IPアドレス)「Y」をペイロードに設定する(ステップS316)。次いでNNM17は、RAMに格納されている送信元仮想IPアドレス「X」を取得し、ペイロードに設定する(ステップS318)。送信元仮想IPアドレス「X」のRAMへの格納は、図2を参照し前述した処理によって行われる。
そしてNNM17は、宛先グローバルアドレス「N」、送信元アドレスとしてプライベートアドレス「P」を取得し、ヘッダに設定する(ステップS320)。宛先グローバルアドレス「N」は、NNM17によってセッション管理サーバ25から宛先ポート番号「200」をキーとして取得される。プライベートアドレス「P」は、予めルータ13によって割り当てられている。そしてNNM17は、NAT越え及びファイアウォール越え用のSDK等の機能を用いて、NNM18へ向けパケットを転送する(ステップS322)。ステップS322の処理の詳細については後述する。
ステップS306において受信パケットが端末11宛のパケットである場合、図1の例を参照しながら説明する。ルータ13から送信されるパケット40のヘッダには、宛先アドレスとしてプライベートアドレス「P」、送信元アドレスとしてグローバルアドレス「N」が書き込まれ、TCPヘッダまたはUDPヘッダには、宛先ポート番号として「100」、送信元ポート番号として「200」が書き込まれている。さらに宛先グローバルアドレス(仮想IPアドレス)「X」がペイロードに設定され、送信元仮想IPアドレス「Y」がペイロードに設定されている。NNM17は、ペイロードから宛先仮想IPアドレス「X」を削除する(ステップS308)。次いでNNM17は、ペイロードの送信元仮想IPアドレス「Y」を送信元アドレスとしてヘッダに設定する(ステップS310)。
そしてNNM17は、図2のステップS202の処理で取得した接続されている端末11のプライベートアドレス「A」を、宛先アドレスとしてヘッダに設定する(ステップS312)。NNM17は、このように編集されたパケットを端末11へ転送する(ステップS314)。
以下では、図3におけるステップS322の処理(NAT越え及びファイアウォール越え用のSDK等の機能を用いて、NNM18へ向けパケットを転送する処理)について説明する。NAT越え及びファイアウォール越え用の市販のSDK等を使用する方法は、当業者にあっては種々の方法が周知であるため、本実施形態に好適な例についてそれらの概要を説明する。
ステップS322の処理の冒頭で、NNM17は、NAT及びファイアウォールの設置状況を検知する。この検知には当業者に周知な種々の方法を適用すればよい。NAT越えが必要な場合、NNM17は、後述の図4及び5に示す処理を行う。ファイアウォール越えが必要な場合、NNM17は、後述の図6〜8に示す処理を行う。
図4及び5は、NAT越え処理の本実施形態に好適な一例を示した、NNMのNAT越え処理の説明図で、特許文献1に開示された技術を適用した例である。NAT機能を利用した接続環境において、P2Pアプリケーションを実現するためには、通信の開始から終了まで、ルータにおける所定のポートを常に開いておく必要がある。そこで、図4を参照し通信の最初にポートを開いておく方法、図5を参照し一旦開いたポートを維持する方法を順次説明する。
図4を参照すると、端末間でP2P通信を行う場合には、ICMP(Internet Control Message Protocol)パケット(宛先到達不能メッセージ)によるブロックを避けて、最初に、セッションで使用するルータのポートを開いておく必要がある。そこで、ルータ13までのホップ数を調べ、ポートを開けるためのUDPパケットを送信する。
具体的には、NNM17でICMPのエコーパケットを生成し、TTL(Time To Live)=1で送信する。順次、TTL=2.3…と増やして、複数のエコーパケットを送信する。TTLの数値がルータ13のホップ数と等しいエコーパケット51を送信すると、ルータ13よりエコーパケット52がNNM17に返送される。NNM17は、返送されたエコーパケット52により、ルータ13までのホップ数を知ることができる。
次に、NNM17は、ルータ13のホップ数に1を加えた値αをTTLに設定し、送信元ポート番号「100」のポート設定パケット53を送信する。これによって、ルータ13の送信元ポート番号「100」のポートが開かれる。ポート設定パケット53は、ルータ13の次のホップで削除されるので、他の通信に影響を与えることはない。
このような構成により、ルータ13の送信元ポート番号「100」のポートを開けておくことにより、パケット54、55によるNNM間の通信を行うことができる。このとき、ルータ14もICMPパケットによりブロックを行う機能を有している場合には、NNM18においても、同様の処理を行う。
次に図5を参照すると、同一のセッションにおいて、パケットの送受信が途絶えている間は、ルータが変換テーブルをクリアしないように、いったん開いたポートを維持しておく必要がある。そこで、パケットの送受信が途絶えている間は、キープアライブパケットを一定時間間隔で送信する。例えば、上述したICMPエコーパケットを利用して、ルータ13までのホップ数を予め調べておく。NNM17は、ルータ13のホップ数に1を加えた値αをTTLに設定し、送信元ポート番号「100」のUDPパケット61を送信する。これによって、ルータ13に格納されている変換テーブルの内容は削除されず、以後、同一のポート番号を設定したパケットを送信することができる。
尚、図4及び図5の実施形態においては、ICMPパケットによりブロックを行う機能を有しているルータにのみ送信するようにしてもよい。ルータによっては、TTLの設定値がαの場合に、パケットを破棄してポートを閉じてしまう機能を有する場合があるからである。
ポート設定パケットおよびキープアライブパケットが他のNNMに到達した場合に、通信の混乱が起こらないようにする。例えば、図5に示したように、全てのパケットの先頭に、フラグ63、64を付加し、キープアライブパケットの場合は「1」を、通常のパケットの場合は「0」を設定する。このようにして、NNMがキープアライブパケットを受信した場合でも、これを識別して破棄することができる。
図6〜8は、ファイアウォール越え処理の本実施形態に好適な一例を示した、NNMファイアウォール越え処理のフローチャートである。
図6において、NNM17は、使用可能な通信方法のサーチを行う(ステップS600)。ステップS600のリターン値がffffH以外、即ちUDPが利用可能なネットワークである場合(ステップS602)、NNM17は、使用可能な通信方法を用いた通信経路の生成を行う(ステップS604)。
図7は、前述したステップS600の通信方法サーチ処理のフローチャートである。NNM17は、UDPを用いてサーバ(不図示のWEBプロキシ)のポート番号nに対して(HTTPやPOP3等のwellknownポート番号以外を利用する)パケットを送信する(ステップS700)。NNM17は、サーバ側の待ち受けポート番号にパケットが届いたか否かを判定する(ステップS702)。サーバ側の待ち受けポート番号にパケットが届いた場合、NNM17は、リターン値=0(UDP通信が利用可能)をRAMに設定し(ステップS704)、呼び出し元の処理へ戻る(リターン)。
サーバ側の待ち受けポート番号にパケットが届かない場合、NNM17は、UDPを用いてサーバの(HTTPS通信が利用する)443番ポートに対してパケットを送信する(ステップS706)。NNM17は、サーバ側の待ち受けポート番号にパケットが届いたか否かを判定する(ステップS708)。サーバ側の待ち受けポート番号にパケットが届いた場合、NNM17は、リターン値=1(443番ポート宛のUDP通信が可能)をRAMに設定し(ステップS710)、呼び出し元の処理へ戻る(リターン)。
サーバ側の待ち受けポート番号にパケットが届かない場合、NNM17は、UDPを用いてサーバの(HTTP通信が利用する)80番ポートに対してパケットを送信する(ステップS712)。NNM17は、サーバ側の待ち受けポート番号にパケットが届いたか否かを判定する(ステップS714)。サーバ側の待ち受けポート番号にパケットが届いた場合、NNM17は、リターン値=2(80番ポート宛のUDP通信が可能)をRAMに設定し(ステップS716)、呼び出し元の処理へ戻る(リターン)。
サーバ側の待ち受けポート番号にパケットが届かない場合、NNM17は、TCPを用いてサーバのポート番号nに対して(HTTPやPOP3等のwellknownポート番号以外を利用する)パケットを送信する(ステップS718)。NNM17は、サーバ側の待ち受けポート番号にパケットが届いたか否かを判定する(ステップS720)。サーバ側の待ち受けポート番号にパケットが届いた場合、NNM17は、リターン値=3(TCP通信が利用可能)をRAMに設定し(ステップS722)、呼び出し元の処理へ戻る(リターン)。
サーバ側の待ち受けポート番号にパケットが届かない場合、NNM17は、TCPを用いてサーバの(HTTPS通信が利用する)443番ポートに対してパケットを送信する(ステップS724)。NNM17は、サーバ側の待ち受けポート番号にパケットが届いたか否かを判定する(ステップS726)。サーバ側の待ち受けポート番号にパケットが届いた場合、NNM17は、リターン値=4(443番ポート宛のTCP通信が可能)をRAMに設定し(ステップS728)、呼び出し元の処理へ戻る(リターン)。
サーバ側の待ち受けポート番号にパケットが届かない場合、NNM17は、TCPを用いてサーバの(HTTP通信が利用する)80番ポートに対してパケットを送信する(ステップS730)。NNM17は、サーバ側の待ち受けポート番号にパケットが届いたか否かを判定する(ステップS732)。サーバ側の待ち受けポート番号にパケットが届いた場合、NNM17は、リターン値=5(80番ポート宛のTCP通信が可能)をRAMに設定し(ステップS734)、呼び出し元の処理へ戻る(リターン)。
サーバ側の待ち受けポート番号にパケットが届かない場合、NNM17は、リターン値=ffffH(UDP利用不可能)をRAMに設定し(ステップS736)、呼び出し元の処理へ戻る(リターン)。
図8は、前述したステップS604の通信経路生成処理のフローチャートである。NNM17は、前述のステップS600のリターン値が3、4又は5のいずれかである場合、UDPが利用できない環境においてUDP通信を行うために、UDPのデータをTCPにくるむ(ステップS800→S802)。
次いでNNM17は、前述のステップS600のリターン値が1又は4のいずれかである場合、通信先の端末を443番ポートで待ち受けさせ(ステップS806)、443番ポートに対して接続を行う(ステップS804→S808)。
或いはNNM17は、前述のステップS600のリターン値が2又は5のいずれかである場合(ステップS804→S810)、通信先の端末を80番ポートで待ち受けさせ(ステップS812)、80番ポートに対して接続を行う(ステップS814)。
ここでは一例として、ネットワーク上にWEBプロキシが設置されている環境でCONNECTメソッドによるSSL(Secure Sockets Layer)通信が許可されている場合を想定する。NNM17は、以降のステップで、「HTTPS CONNECTメソッドによるファイアウォール越え」の処理を行う。
NNM17は、送信するペイロードをHTTPで扱えるデータ列に変換する(ステップS816)。次いでNNM17は、TCPパケットにHTTPヘッダを書き加え、変換したデータ列を添付する(書き加えるヘッダはHTTPで定義されたCONNECTヘッダを利用)(ステップS818)。そしてNNM17は、CONNECTヘッダに通信先端末のアドレスを入れ、そのパケットをWEBプロキシに送信し(ステップS820)、呼び出し元の処理へ戻る(リターン)。これにより、WEBプロキシはSSL通信と誤認し、通信を許可し、通信先端末までパケットが転送される。
[実施形態の効果]
以上説明したように本実施形態によれば、第1の態様として、通信方法(図1、3)は、NAT機能を有する第1のネットワーク機器(13)に接続された第1のコンピュータ(11)と、NAT機能を有する第2のネットワーク機器(14)に接続された第2のコンピュータ(12)との間でP2P型通信を行うための通信方法であって、第1のプライベートアドレスとは別に割り当てられた論理的なIPアドレスである第1の仮想IPアドレスを割り当てられた第1の通信装置(17)が、上記第1のネットワーク機器と上記第1のコンピュータとの間に接続されており、第2のプライベートアドレスとは別に割り当てられた論理的なIPアドレスである第2の仮想IPアドレスを割り当てられた第2の通信装置(18)が、上記第2のネットワーク機器と上記第2のコンピュータとの間に接続されており、上記第1の通信装置が、ヘッダに上記第2の仮想IPアドレスを含むパケットを上記第1のコンピュータから受信する第1の受信ステップ(S306→S316)と、上記第1の通信装置が、上記第1の受信ステップにおいて受信したパケットに上記第1の仮想IPアドレスを設定し、該パケットをNAT越え機能(図4、5)を使用して上記第1のネットワーク機器を介し上記第2のコンピュータに向けて送信する第1の送信ステップ(S316〜S322)と、上記第1の通信装置が、上記第1の送信ステップの後に、上記第1の仮想IPアドレス及び上記第2の仮想IPアドレスを含むパケットを上記第1のネットワーク機器から受信する第2の受信ステップ(S306→S308)と、上記第1の通信装置が、上記第2の受信ステップにおいて受信したパケットのヘッダに上記第2の仮想IPアドレスを設定し、該パケットを上記第1のコンピュータに向けて送信する第2の送信ステップ(S308〜S314)とを備えることを特徴とする。
ここで、第2の態様として、第1の態様において、上記第1の受信ステップにおいて受信されるパケットは、ヘッダの宛先アドレスに上記第2の仮想IPアドレスを含み、上記第1の送信ステップにおいて送信されるパケットは、ペイロードに上記第1の仮想IPアドレスと上記第2の仮想IPアドレスとを含み、上記第2の受信ステップにおいて受信されるパケットは、ペイロードに上記第1の仮想IPアドレスと上記第2の仮想IPアドレスとを含み、上記第2の送信ステップにおいて送信されるパケットは、ヘッダの送信元アドレスに上記第2の仮想IPアドレスを含むことを特徴とするとすることができる。
また、第3の態様として、第1又は2の態様において、上記第1の通信装置、上記第1のネットワーク機器、及び上記第1のコンピュータを含むネットワーク内に、ファイアウォール機能を有する第3のネットワーク機器(不図示のWEBプロキシサーバ)が接続されており、上記第1の送信ステップにおいて、上記第1の通信装置が、上記第1の仮想IPアドレスを設定したパケットをファイアウォール越え機能(図6〜8)をさらに使用して送信することを特徴とすることができる。
また、第4の態様として、第1乃至3のいずれかに記載の態様において、上記第1の通信装置が、ヘッダに上記第2の仮想IPアドレスを含まないパケットを上記第1のコンピュータから受信した場合、該パケットを上記第1のネットワーク機器に向けて送信し、上記第1の仮想IPアドレス及び上記第2の仮想IPアドレスを含まないパケットを上記第1のネットワーク機器から受信した場合、該パケットを上記第1のコンピュータに向けて送信する第3の送信ステップ(S302→S304)をさらに備えることを特徴とすることができる。
以上の構成により、本実施形態の通信装置(NNM17)を使用する通信方法は、以下の効果を奏する。
・端末11上のアプリケーションのSDK等による変更を行う必要がない。
・ネットワーク機器(ルータ13)の設定を変更することなく、NNM17を端末11とルータ13との間の端末11の前にワンタッチで接続すればよい。
・端末11、12同士の直接通信が可能である(端末11、12間のパケット通信において、1つの論理的なLANとなる)。
[他の実施形態]
以上述べた実施形態の他に次の形態を実施できる。
1)ネットワークカメラのリモート参照
NNMとネットワークポートを持つカメラデバイスを接続することで、カメラ・NNM・ルータから成るネットワーク内に設置するだけで、外部のネットワークからのリモート監視を可能にする。
2)情報家電機器のリモート参照
NNMとネットワークポートを持つ家電機器を接続することで、外部のネットワークからの家電参照を可能にする(家電参照:エアコンの遠隔制御、オーディオのメディアファイル参照、ビデオレコーダーの映像コンテンツのストリーミング再生)。
3)機器のリモート電源ON
NNM内に他の機器の電源を操作できるアプリケーションを搭載、あるいは電源を操作で切るデバイスを接続することで、外部の離れたネットワークから機器の電源を操作することが可能になる。
4)パソコンのリモート操作
NNMとパソコン端末を接続し、パソコン内に既存の遠隔操作ソフトウェアをインストールすることで、外部のネットワークからパソコンのリモート操作を実現する。
5)リモート印刷
NNMとプリンター機器を接続、インターネットを介して印刷を行う。外出先で利用しているデジタルカメラから直接ネットワークを経由して自宅等遠隔地にあるプリンター、印刷サービス事業者へのプリンターに出力することが可能となる。
6)IP電話の実現
NNMを端末・NNM・ルータから成るネットワーク内に設置するだけで、インターネットを介してSIP(session initiation protocol)、H.323等のIPを使う電話システム(TV会議システム、TV電話システムを含む)を実現する。
7)機器のリモートメンテナンス
NNMをネットワーク端子を持つ機器に接続することで、外部のネットワークから機器の状態を監視することが可能になる。消耗品の状況や故障状況をリモートで監視することでスピーディーに効率よく機器のメンテナンスが行える。
8)上述の実施形態は例示であって制限的なものではない。したがって、上述の実施形態の他にも変形が可能である。その変形が特許請求の範囲で述べられている本発明の技術思想に基づく限り、その変形は本発明の技術的範囲内となる。
本発明を適用できる実施形態のP2P通信方法の説明図である。 本発明を適用できる実施形態のNNMパワーON処理を示すフローチャートである。 本発明を適用できる実施形態のNNM通常処理を示すフローチャートである。 本発明を適用できる実施形態のNNMのNAT越え処理の説明図である。 本発明を適用できる実施形態のNNMのNAT越え処理の説明図である。 本発明を適用できる実施形態のNNMファイアウォール越え処理のフローチャートである。 本発明を適用できる実施形態のNNMファイアウォール越え処理のフローチャートである。 本発明を適用できる実施形態のNNMファイアウォール越え処理のフローチャートである。 従来のNAT機能を説明するためのネットワーク接続図である。
符号の説明
11、12、15、16 端末
13、14 ルータ
17、18、19、20 NNM
21、31 宛先グローバルアドレス
22、32 送信元プライベートアドレス
23、33 宛先ポート番号
24、34 送信元ポート番号
25 セッション管理サーバ
30、40 パケット

Claims (9)

  1. NAT機能を有する第1のネットワーク機器に接続された第1のコンピュータと、NAT機能を有する第2のネットワーク機器に接続された第2のコンピュータとの間でP2P型通信を行うための通信方法において、
    第1のプライベートアドレスとは別に割り当てられた論理的なIPアドレスである第1の仮想IPアドレスを割り当てられた第1の通信装置が、前記第1のネットワーク機器と前記第1のコンピュータとの間に接続されており、第2のプライベートアドレスとは別に割り当てられた論理的なIPアドレスである第2の仮想IPアドレスを割り当てられた第2の通信装置が、前記第2のネットワーク機器と前記第2のコンピュータとの間に接続されており、
    前記第1の通信装置が、ヘッダに前記第2の仮想IPアドレスを含むパケットを前記第1のコンピュータから受信する第1の受信ステップと、
    前記第1の通信装置が、前記第1の受信ステップにおいて受信したパケットに前記第1の仮想IPアドレスを設定し、該パケットをNAT越え機能を使用して前記第1のネットワーク機器を介し前記第2のコンピュータに向けて送信する第1の送信ステップと、
    前記第1の通信装置が、前記第1の送信ステップの後に、前記第1の仮想IPアドレス及び前記第2の仮想IPアドレスを含むパケットを前記第1のネットワーク機器から受信する第2の受信ステップと、
    前記第1の通信装置が、前記第2の受信ステップにおいて受信したパケットのヘッダに前記第2の仮想IPアドレスを設定し、該パケットを前記第1のコンピュータに向けて送信する第2の送信ステップと
    を備えることを特徴とする通信方法。
  2. 前記第1の受信ステップにおいて受信されるパケットは、ヘッダの宛先アドレスに前記第2の仮想IPアドレスを含み、
    前記第1の送信ステップにおいて送信されるパケットは、ペイロードに前記第1の仮想IPアドレスと前記第2の仮想IPアドレスとを含み、
    前記第2の受信ステップにおいて受信されるパケットは、ペイロードに前記第1の仮想IPアドレスと前記第2の仮想IPアドレスとを含み、
    前記第2の送信ステップにおいて送信されるパケットは、ヘッダの送信元アドレスに前記第2の仮想IPアドレスを含む
    ことを特徴とする請求項1に記載の通信方法。
  3. 前記第1の通信装置、前記第1のネットワーク機器、及び前記第1のコンピュータを含むネットワーク内に、ファイアウォール機能を有する第3のネットワーク機器が接続されており、
    前記第1の送信ステップにおいて、前記第1の通信装置が、前記第1の仮想IPアドレスを設定したパケットをファイアウォール越え機能をさらに使用して送信する
    ことを特徴とする請求項1又は2に記載の通信方法。
  4. 前記第1の通信装置が、ヘッダに前記第2の仮想IPアドレスを含まないパケットを前記第1のコンピュータから受信した場合、該パケットを前記第1のネットワーク機器に向けて送信し、前記第1の仮想IPアドレス及び前記第2の仮想IPアドレスを含まないパケットを前記第1のネットワーク機器から受信した場合、該パケットを前記第1のコンピュータに向けて送信する第3の送信ステップ
    をさらに備えることを特徴とする請求項1乃至3のいずれかに記載の通信方法。
  5. 請求項1乃至4のいずれかに記載の通信方法の各ステップをコンピュータに実行させることを特徴とするプログラム。
  6. NAT機能を有する第1のネットワーク機器に接続された第1のコンピュータと、NAT機能を有する第2のネットワーク機器に接続された第2のコンピュータとの間でP2P型通信を行うための通信システムの通信装置であって、
    前記通信装置は、第1のプライベートアドレスとは別に割り当てられた論理的なIPアドレスである第1の仮想IPアドレスを割り当てられ、前記第1のネットワーク機器と前記第1のコンピュータとの間に接続されており、
    前記通信システムは、第2のプライベートアドレスとは別に割り当てられた論理的なIPアドレスである第2の仮想IPアドレスを割り当てられ、前記第2のネットワーク機器と前記第2のコンピュータとの間に接続された他の通信装置を含み、
    前記通信装置は、
    ヘッダに前記第2の仮想IPアドレスを含むパケットを前記第1のコンピュータから受信する第1の受信手段と、
    前記第1の受信手段によって受信したパケットに前記第1の仮想IPアドレスを設定し、該パケットをNAT越え機能を使用して前記第1のネットワーク機器を介し前記第2のコンピュータに向けて送信する第1の送信手段と、
    前記第1の送信手段による送信の後に、前記第1の仮想IPアドレス及び前記第2の仮想IPアドレスを含むパケットを前記第1のネットワーク機器から受信する第2の受信手段と、
    前記第2の受信手段によって受信したパケットのヘッダに前記第2の仮想IPアドレスを設定し、該パケットを前記第1のコンピュータに向けて送信する第2の送信手段とを備えた
    ことを特徴とする通信装置。
  7. 前記第1の受信手段によって受信されるパケットは、ヘッダの宛先アドレスに前記第2の仮想IPアドレスを含み、
    前記第1の送信手段によって送信されるパケットは、ペイロードに前記第1の仮想IPアドレスと前記第2の仮想IPアドレスとを含み、
    前記第2の受信手段によって受信されるパケットは、ペイロードに前記第1の仮想IPアドレスと前記第2の仮想IPアドレスとを含み、
    前記第2の送信手段によって送信されるパケットは、ヘッダの送信元アドレスに前記第2の仮想IPアドレスを含む
    ことを特徴とする請求項6に記載の通信装置。
  8. 前記通信装置、前記第1のネットワーク機器、及び前記第1のコンピュータを含むネットワーク内に、ファイアウォール機能を有する第3のネットワーク機器が接続されており、
    前記第1の送信手段は、前記通信装置が、前記第1の仮想IPアドレスを設定したパケットをファイアウォール越え機能をさらに使用して送信する
    ことを特徴とする請求項6又は7に記載の通信装置。
  9. ヘッダに前記第2の仮想IPアドレスを含まないパケットを前記第1のコンピュータから受信した場合、該パケットを前記第1のネットワーク機器に向けて送信し、前記第1の仮想IPアドレス及び前記第2の仮想IPアドレスを含まないパケットを前記第1のネットワーク機器から受信した場合、該パケットを前記第1のコンピュータに向けて送信する第3の送信手段
    をさらに備えたことを特徴とする請求項6乃至8のいずれかに記載の通信装置。
JP2005232556A 2005-08-10 2005-08-10 通信方法及び通信装置 Expired - Fee Related JP4722615B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005232556A JP4722615B2 (ja) 2005-08-10 2005-08-10 通信方法及び通信装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005232556A JP4722615B2 (ja) 2005-08-10 2005-08-10 通信方法及び通信装置

Publications (2)

Publication Number Publication Date
JP2007049498A true JP2007049498A (ja) 2007-02-22
JP4722615B2 JP4722615B2 (ja) 2011-07-13

Family

ID=37851957

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005232556A Expired - Fee Related JP4722615B2 (ja) 2005-08-10 2005-08-10 通信方法及び通信装置

Country Status (1)

Country Link
JP (1) JP4722615B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010087951A (ja) * 2008-10-01 2010-04-15 Nec Access Technica Ltd リモートメンテナンスシステム、リモートメンテナンス方法およびリモートメンテナンス制御プログラム
JP2016116183A (ja) * 2014-12-18 2016-06-23 日本電信電話株式会社 呼制御システム、負荷分散装置および呼制御システムの動作方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002190810A (ja) * 2000-12-21 2002-07-05 Hitachi Ltd ネットワーク管理システム
JP2003289318A (ja) * 2002-03-28 2003-10-10 Fujitsu Ltd アドレスアクセスシステム及び方法
WO2005027438A1 (ja) * 2003-09-11 2005-03-24 Fujitsu Limited パケット中継装置
JP2005210352A (ja) * 2004-01-22 2005-08-04 Nec Engineering Ltd Ipアドレス変換装置及び変換方法
JP2007049499A (ja) * 2005-08-10 2007-02-22 Fractalist Inc 通信方法および装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002190810A (ja) * 2000-12-21 2002-07-05 Hitachi Ltd ネットワーク管理システム
JP2003289318A (ja) * 2002-03-28 2003-10-10 Fujitsu Ltd アドレスアクセスシステム及び方法
WO2005027438A1 (ja) * 2003-09-11 2005-03-24 Fujitsu Limited パケット中継装置
JP2005210352A (ja) * 2004-01-22 2005-08-04 Nec Engineering Ltd Ipアドレス変換装置及び変換方法
JP2007049499A (ja) * 2005-08-10 2007-02-22 Fractalist Inc 通信方法および装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010087951A (ja) * 2008-10-01 2010-04-15 Nec Access Technica Ltd リモートメンテナンスシステム、リモートメンテナンス方法およびリモートメンテナンス制御プログラム
JP2016116183A (ja) * 2014-12-18 2016-06-23 日本電信電話株式会社 呼制御システム、負荷分散装置および呼制御システムの動作方法

Also Published As

Publication number Publication date
JP4722615B2 (ja) 2011-07-13

Similar Documents

Publication Publication Date Title
KR100901790B1 (ko) IPv4 네트워크 기반 IPv6 서비스 제공시스템에서의 제어 터널 및 다이렉트 터널 설정 방법
US8693392B2 (en) Peer-to-peer communication system and method
US8224985B2 (en) Peer-to-peer communication traversing symmetric network address translators
EP2890092B1 (en) Cooperative nat behavior discovery
US20040153858A1 (en) Direct peer-to-peer transmission protocol between two virtual networks
JP4331154B2 (ja) 情報処理システム、トンネル通信装置、及びトンネル通信方法
EP1931088A1 (en) Information processing system, tunnel communication device, tunnel communication method, proxy response device, and proxy response method
US8429279B2 (en) Method and device for connecting packet-oriented communication terminals
Babatunde et al. A comparative review of internet protocol version 4 (ipv4) and internet protocol version 6 (ipv6)
US8194683B2 (en) Teredo connectivity between clients behind symmetric NATs
JP4712481B2 (ja) 通信方法および装置
JP3999785B2 (ja) 通信方法
JP2005117587A (ja) 通信方法
JP4292897B2 (ja) 中継装置とポートフォワード設定方法
JP4722615B2 (ja) 通信方法及び通信装置
US20080240131A1 (en) Teredo connectivity between clients behind symmetric NATs
JP4602247B2 (ja) 通信方法
Chen et al. Challenge and solutions of NAT traversal for ubiquitous and pervasive applications on the Internet
JP2007208999A (ja) 通信方法
JP4279847B2 (ja) 通信システム、通信方法、ならびに、プログラム
WO2008069504A1 (en) Method for configuring control tunnel and direct tunnel in ipv4 network-based ipv6 service providing system
Brennan et al. Improving communication through overlay detours: Pipe dream or actionable insight?
Fan et al. An SDN-assisted carrier-grade network address translation service framework for 5G core networks
KR20060020953A (ko) Sip 프로토콜을 사용하여 사설 아이피 네트워크에접속하기 위한 시스템
Duarte Jr et al. Transparent communications for applications behind NAT/firewall over any transport protocol

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080811

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20081008

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20081008

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110225

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110308

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110406

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

Free format text: PAYMENT UNTIL: 20140415

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees