JP2008085470A - Ipアプリケーションサービス提供システム - Google Patents

Ipアプリケーションサービス提供システム Download PDF

Info

Publication number
JP2008085470A
JP2008085470A JP2006260830A JP2006260830A JP2008085470A JP 2008085470 A JP2008085470 A JP 2008085470A JP 2006260830 A JP2006260830 A JP 2006260830A JP 2006260830 A JP2006260830 A JP 2006260830A JP 2008085470 A JP2008085470 A JP 2008085470A
Authority
JP
Japan
Prior art keywords
nat
communication
application
port
control channel
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2006260830A
Other languages
English (en)
Inventor
Atsushi Kitada
敦史 北田
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2006260830A priority Critical patent/JP2008085470A/ja
Priority to US11/705,094 priority patent/US7706358B2/en
Publication of JP2008085470A publication Critical patent/JP2008085470A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2514Translation of Internet protocol [IP] addresses between local and global IP addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2517Translation of Internet protocol [IP] addresses using port numbers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal
    • H04L61/2567NAT traversal for reachability, e.g. inquiring the address of a correspondent behind a NAT server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal
    • H04L61/2578NAT traversal without involvement of the NAT server

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

【課題】ゲートウェイ装置の有無を意識せずサービスを提供する。
【解決手段】アウトバウンド通信のみを許容するように設定されているゲートウェイ装置により外部ネットワークから隠蔽されかつ内部ネットワークに属する内部ノードと、外部ネットワークに属する外部ノードとの間での意図するIPアプリケーション通信でのインバウンド通信も可能にするIPアプリケーションサービス提供方法であって;ゲートウェイ装置配下の内部ノードから外部ネットワーク上の接続支援装置に対し制御チャネルポートの通知及び制御チャネルパスの通信許容エントリの維持を目的とする制御パケットを定期送信するステップと;接続支援装置から内部ノードに対し制御チャネルを通して外部ノード対応の接続先アドレス及びポートを通知するステップと;通知を受けた接続先アドレス及びポートに対してIPアプリケーションのデータチャネルをアクティブにオープンするステップを備える。
【選択図】図14

Description

本発明は、IP(Internet Protocol)アプリケーションサービス提供システムに関し、
特にネットワークアドレス変換装置またはファイアウォール(NAT/FW)等のゲートウェイ装置を経由してインターネット等のIPネットワークに接続されたノードが、NAT/FWの有無状態に拠らず容易にIPアプリケーション通信を可能とする接続支援技術に関する。
IPv4ネットワークにおいては、グローバルIPアドレス節約の観点からネットワークアドレス変換装置(NAT:Network Address Translation)が広く用いられている。NAT、特にNAPT(Network Address Port Translation)と呼ばれる装置では、企業内/ホームネットワークのプライベートアドレス及び送信元ポートをNAPTのグローバルアドレス及び送信元ポートに変換することにより(図1参照)、複数の内部ノードAから外部ネットワークONWへのアクセスを可能としている。
また、IPv6ネットワークにおいては、アドレス枯渇の問題は無くなるものの、セキュリティの観点から企業内/ホームネットワークを外部ネットワークONWから隠蔽し、内部から外部向け通信のレスポンスのみの透過を許容するファイアウォール(FW)機能(図2参照)は引き続き使用されるものと考えられる。
このようにNAT/FWは、内部から外部トリガの通信(アウトバウンド通信)には有効である一方、外部から内部トリガの通信(インバウンド通信)においては、NAT/FWに通信を許可するエントリが存在しないため、ノードまでパケットが到達せず、NAT/FW配下のノードにおいてサーバアプリケーションやP2P(Peer-to-Peer)アプリケーションを動作させる場合に大きな障壁となる(図3参照)。こうした問題は、一般に「NAT越え問題」と呼ばれる。
これを解決する従来技術としては、(1)NATに静的なエントリを設定(図4中のその1参照)、(2)UPnP(Universal Plug and Play)を用いてプロトコルによりエ
ントリを制御(図4中のその2参照)、(3)変換後のNATエントリを予測して擬似的にインバウンド通信を許可するエントリを作成(UDP(User Datagram Protocol) Hole Punching,図4中のその3参照)等が考えられる。
従来技術(1)は、一般にStatic NATと呼ばれるもので、例えば、192.168.1.1:80を1.1.1.1:80に一意に変換するよう静的にNATエントリを設定することにより、外部ノードBからはあたかもグローバルアドレス1.1.1.1にWebサーバが公開されているように見える。実際には、NAT配下のプライベートアドレス192.168.1.1においてWebサーバが動作している。
従来技術(2)は、Static NATを自動化したもので、ノードとNAT間でUPnPプロトコルを動作させ、AddPortMappingメッセージにより、192.168.1.1:80を1.1.1.1:80にマッピングするように、ノードからNATを制御することにより、Static NATと同様のエントリが設定される。
従来技術(3)は、NATの内部ノードAが変換後のグローバルIPアドレス:ポートをRFC3489で規定されるSTUN(Simple Traversal of UDP through NATs)プロトコル(図9,図10参照)等を用いて予測し、ダミーパケットによりNATエントリを
生成した上で相手のノードに通知して、外部ノードBが変換後のIPアドレス:ポートに対して接続を開始することにより、内部ノードAとの通信を可能にする、というものである。
しかし、これらの従来技術には、次のような問題がある。従来技術(1)では、アプリケーション毎にNATに対する詳細な設定や知識が必要である、つまり作業工数が大である。
従来技術(2)では、ノード及びNATともに同一プロトコルのサポートが必要であり、またノードとNATが同一セグメントでない場合(つまり、NATが多段になっている場合や、NATまでの経路にルータが存在する場合)には、UPnPパケット(マルチキャストパケット)がNATまで到達できず制御不可能である。
従来技術(3)では、タイプによって適用できないNATが存在すること(後述)や、特にTCP(Transmission Control Protocol)通信の場合にはNATエントリ自体は作
成できてもインバウンドのTCP SYN(接続要求)パケットをフィルタ(ステートフルインスペクション機能,図13参照)してしまうケースが多く、環境によっては適用できない。
NATは、大別すると、Cone NATとSymmetric NATとの2種類があり、さらにCone NATは3種類に分けられる(図5〜図8参照)が、Symmetric NATの場合、宛先毎に別々のグローバルポートが割り当てられるため、STUN及びUDP Hole Punchingのように変換後ポートを予測する技術では対応することができない(図11,図12参照)。
また、従来技術は、いずれも、如何にしてNAT/FWの外部から内部に対してインバゥンド通信を開始しようとするかに着目しているため、任意のタイミングで通信ができない(つまり、NAT配下からのアクションに同期を取らないと接続できない)場合があったり、ウェルノウンポートで提供されるサーバアプリケーションを動作させたい場合には、ノードやアプリケーション間でポート競合(グローバルポートの共有ができないため、同一グローバルポートにて複数アプリケーションの提供ができない)が発生する。
例えば、NAT配下に2台のWebサーバを構築しようとしても、2台目のWebサーバはデフォルトの80番ポートにて提供できない。正確には、Webサーバ自体は80番ポートで動作しているのだが、1.1.1.1:80へのマッピングがすでに使われてしまっているため、例えば、2台目のWebサーバ192.168.1.2:80を外部に公開しようとすると、1.1.1.1:81など80番以外のポートにマッピングせざるを得ず、これは外部ノードBからは予め別ポートで提供されていることを知っていて、かつ「http://1.1.1.1:81」等を入力しないと、Webページが閲覧できないことを意味する。80番ポートで提供されている場合は、「http://1.1.1.1」等ポート番号を省略することができる。
このように、NAT/FWが存在しない場合と比較すると、アプリケーション提供の制約が大きく、場合によってはNAT/FWが存在するがためにアプリケーションの動作そのものを組み替える必要があるという課題がある。
特開2005−260715号公報
本発明の課題は、NAT/FWなどのゲートウェイ装置の有無(介在状態)を意識せず
容易にIPアプリケーションサービスの提供を可能にする技術を提供することにある。
上記課題を解決するために、本発明のIPアプリケーションサービス提供システムは、内部から外部向けへのアウトバウンド通信のみを許容するように設定されているゲートウェイ装置により外部ネットワークから隠蔽され、かつ内部ネットワークに属する内部ノードと、前記外部ネットワークに属する外部ノードとの間での意図するIPアプリケーション通信での外部から内部向けへのインバウンド通信も可能にするIPアプリケーションサービス提供システムであって;
前記ゲートウェイ装置配下の前記内部ノードが、
前記外部ネットワーク上の接続支援装置に対し、制御チャネルポートの通知及び制御チャネルパスの通信許容エントリの維持を目的とする制御パケットを定期送信する手段と;
前記接続支援装置から前記制御チャネルを通して前記外部ノード対応の接続先アドレス及びポートの通知を受ける手段と;
前記通知を受けた接続先アドレス及びポートに対してIPアプリケーションのデータチャネルをアクティブにオープンする手段とを備える。
本発明のIPアプリケーションサービス提供方法は、内部から外部向けへのアウトバウンド通信のみを許容するように設定されているゲートウェイ装置により外部ネットワークから隠蔽され、かつ内部ネットワークに属する内部ノードと、前記外部ネットワークに属する外部ノードとの間での意図するIPアプリケーション通信での外部から内部向けへのインバウンド通信も可能にするIPアプリケーションサービス提供方法であって;
前記ゲートウェイ装置配下の前記内部ノードから前記外部ネットワーク上の接続支援装置に対し、制御チャネルポートの通知及び制御チャネルパスの通信許容エントリの維持を目的とする制御パケットを定期送信する第1のステップと;
前記接続支援装置から前記内部ノードに対し、前記制御チャネルを通して前記外部ノード対応の接続先アドレス及びポートを通知する第2のステップと;
前記通知を受けた接続先アドレス及びポートに対してIPアプリケーションのデータチャネルをアクティブにオープンする第3のステップとを備える。
本発明によれば、NAT/FWなどのゲートウェイ装置の有無を意識せず(存在しても種類に拠らず、また任意のタイミングで)、IPアプリケーションサービスの提供が可能となる。
本発明の他の課題、特徴及び利点は、図面及び特許請求の範囲とともに取り上げられる際に、以下に記載される明細書(実施の形態)を読むことにより明らかになるであろう。
以下、添付図面を参照して、本発明についてさらに詳細に説明する。図面には本発明の好ましい実施形態が示されている。しかし、本発明は、多くの異なる形態で実施されることが可能であり、本明細書に記載される実施形態に限定されると解釈されてはならない。むしろ、これらの実施形態は、本明細書の開示が徹底的かつ完全となり、当業者に本発明の範囲を十分に伝えるように提供される。全体を通じて同様の番号は同様の要素を指す。
[IPアプリケーションサービス提供システムの構成及び機能]
本発明の一実施の形態におけるIPアプリケーションサービス提供システムの構成を示す図14を参照すると、このシステムは、企業内またはホームネットワークとしての内部ネットワーク(非公開ネットワーク)INWからインターネットまたはアプリケーションサービスネットワークなどの外部ネットワーク(公開ネットワーク)ONWに対して、内
部から外部向けの通信(アウトバウンド通信)のみを許容するように設定されているゲートウェイ装置としてのネットワークアドレス変換装置NAT(単に、NATと記載することもある)を介するネットワーク形態において、NATにより外部ネットワークONWから隠蔽された内部ノードAと外部ノードB間での意図するIPアプリケーション通信での外部から内部向けへの通信(インバウンド通信)も可能とする接続支援を行う。なお、監視ポートについては、予めインバウンド通信が許容されているゲートウェイ装置もある。
このIPアプリケーションサービス提供システムにおいて、ネットワークアドレス変換装置NATまたはファイアウォールFW(NAT/FW)などのゲートウェイ装置の有無(介在状態)を意識せず容易にIPアプリケーションサービスの提供を可能とするためには、次の3つの条件が必要となる。
条件1:NATのタイプを問わずに「NAT越え」が可能であること。
条件2:NATの有無により、アプリケーションのプロトコル仕様が変わらないこと。
条件3:外部ノードBより任意のタイミングで接続できること。
これらの条件を充足するために、このIPアプリケーションサービス提供システムにおいては、ノードA,B間のIPアプリケーション通信を外部ネットワーク(サービスネットワーク)ONWの接続支援装置CSが仲介し、基本的に、次の3つの処理を実行する。
第1の処理(第1のステップ):NAT配下のノード(内部ノード)Aから接続支援装置CSに対し、制御パケットを定期送信する。つまり、制御チャネルパスのNATエントリを維持する。制御パケットは、NATによってIPアドレス:ポートが変換され、接続支援装置CSにおいて受信される(図4中の丸数字3参照)。
第2の処理(第2のステップ):接続支援装置CSは、外部ノードBからの接続要求を受け、内部ノードAに対し、上記制御チャネルを用いて、外部ノードBの接続先IPアドレス:ポートを通知する。このとき、制御チャネルパスのNATエントリが維持されていれば、任意のタイミングで通知可能である(図4中の丸数字4,5参照)。
第3の処理(第3のステップ):内部ノードAは、通知を受けた接続先IPアドレス:ポートに対し、トランスポート層プロトコル(TCP(Transmission Control Protocol
)/UDP(User Datagram Protocol))接続を開始、すなわちIPアプリケーションデータチャネルをアクティブにオープンする。NATの内部から外部に対してトランスポート層プロトコル接続を開始しているため、NATに拠らず接続可能であり、またトランスポート層接続の方向はアプリケーション固有の処理には依存しないため、アプリケーション共通のアプリケーションプログラムインタフェースAPIとして定義することが可能である(図4中の丸数字7参照)。
このシステムにおいて、内部ノードA及びNATは内部ネットワークINWに存在し、接続支援装置CSは外部ネットワークONWのプロバイダ提供のサーバに存在する。
このIPアプリケーションサービス提供システムにおいては、制御チャネルプロトコルとしてUDPを用いることが可能であり、コネクションレスプロトコルであることから、制御チャネルパスのNATエントリが維持されていれば、接続支援装置CSから任意のタイミングで上記第2のステップを実行できる。すなわち、上記第1のステップにおけるUDPパケットの送信元(NAT変換後)がIP(アドレス):Port=A:a、宛先(接続支援装置CS)がIP:Port=B:bとすると、上記第2のステップでは、送信元IP:Port=B:b、宛先IP:Port=A:aとすることで、NATを越えて内部ノードAに到達することを利用するものである(図15参照)。
また、このシステムにおいては、制御チャネルプロトコルとしてICMP(Internet Control Message Protocol)を用いることが可能であり、コネクションレスプロトコルで
あることから、制御チャネルパスのNATエントリが維持されていれば、接続支援装置CSから任意のタイミングで上記第2のステップを実行できる。ICMPはUDP/TCPとは異なりポート番号が存在しないが、ほとんどのNAPT(Network Address Port Translation)は、Ping(ICMP Echo)などについてはIdentifierフィールド(実装によってはSequence Numberフィールドも)をポート番号同様にNATエントリとして管理することで、内部ノードA及び外部ノードB間のPingを可能としている。この特性を利用し、接続支援装置CSは、上記第1のステップで受信したICMPパケットのIdentifierを記憶し、上記第2のステップで用いることで内部ノードAに到達する(図16参照)。
さらに、制御チャネルプロトコルとしてTCPを用いることが可能であり、TCPはコネクションオリエンテッドプロトコルであり、制御チャネルのコネクションを保持する必要があるが、それだけ制御チャネルの信頼性が高まる(図17参照)。
このシステムにおいては、制御チャネルプロトコルとしてUDPあるいはICMPを用いることで、上記第1のステップと上記第2のステップとが非同期にて実行できる。これによると、接続支援装置CSで制御チャネルのコネクションを保持する必要が無いため処理負荷が軽い。それぞれのステップをトランザクション(リクエストに対してレスポンスを返すことで完結する)を実行することで、例えば、レスポンスが返ってこない場合は再送を行うことが可能で、信頼性を高めることができる。もちろん、トランザクションを行わなければそれだけ処理負荷が軽減できる(図18参照)。
また、上記第1のステップにて送信する制御パケットに対する応答として上記第2のステップを実行することが可能である。つまり、上記第1のステップと上記第2のステップが一連のトランザクションとして同期して動作する。上記第2のステップは、外部ノードBから接続要求がない場合は、上記第1のステップに対して応答を返さないか、ヌル(NULL)応答を返し、要求があった場合は、応答メッセージに外部ノードBの接続先IPアドレス:ポートを含める(図19参照)。
このシステムにおいては、制御パケットの送信元認証を行ったり、ペイロード(例えば、上記第2のステップで通知する外部ノードBのIPアドレス:ポート)を暗号化したり、改竄防止(検知)のため電子署名を行う等、悪意のある第三者からの不正アクセスを防止する機構を取り入れ、セキュリティ耐性を持つ(図20参照)。
このシステムにおいては、内部ノードA自身がNAT/FW配下に位置するか否かによって、上記第1から第3のステップを実施するかどうかを判断する。これは、NAT/FW配下でない場合には、該ステップを実施せずともIPアプリケーション通信が可能であることによる。なお、NAT/FW配下に位置するか否かを検査する処理(ステップ)は、例えばRFC3489にて規定されているSTUN(Simple Traversal of UDP through NATs)プロトコルのような技術を使うことも可能である。ただし、STUNのようにNATのタイプまでを判別する必要は無く、NAT/FWの有無のみを判断できれば良い(図21参照)。
このシステムにおいては、内部ノードAのNAT検査部10がNAT/FWのエントリタイマを検査することで、上記第1のステップでの制御パケット定期送信間隔を最適化する。エントリタイマを検査する処理(ステップ)としては、例えば内部ノードAから接続支援装置CSに対し、レスポンスを返すまでの待ち時間を含めたリクエストメッセージを送信し、接続支援装置CSはその時間だけ待ってレスポンスを返すといった動作を、レス
ポンスが受信できなくなるまで待ち時間を徐々に広げていくことで調べることができる。なお、NATによってはTCPとUDPとでエントリタイマ値が異なる場合があるため、それぞれについて検査を行う(図22参照)。
このシステムにおいては、上記第1のステップに記載する、制御チャネルポートの通知及び制御チャネルパスのNAT/FWエントリ維持を目的とする制御パケットの定期送信を行う処理機能を内部ノードAの接続制御部20が通信プログラムモジュールとして有している。なお、このプログラムモジュールは各IPアプリケーション30とは独立(別プロセス)して動作し、複数のIPアプリケーションの制御を可能とする(図23参照)。
このシステムにおいては、上記第2のステップに記載する、上記第1のステップにて通知を受けた制御チャネルポートを管理し、IPアプリケーション通信要求が発生した際に、制御チャネルを用いて接続先アドレス:ポートを通知する機能を接続支援装置CSのノード管理部40が通信プログラムモジュールとして有している(図23参照)。
このシステムにおいては、上記第3のステップに記載する、上記第2のステップにて制御チャネル経由で接続先アドレス:ポートの通知を受け、IPアプリケーションデータチャネルをアクティブオープンする機能をアプリケーション30が通信プログラムモジュールとして有している。なお、本プログラムモジュールは、本来はパッシブオープンするアプリケーション(例えば、サーバアプリケーション)に対しても適用(拡張)でき、例えば同一NAT配下の内部ノードAからの接続は、従来どおりパッシブオープンにて接続することができる。また、アプリケーション固有の処理には依存しないため、アプリケーション共通のAPI(Active Open API)として定義することが可能である(図23参照)。
このシステムにおいては、NAT/FWの有無及びNAT/FWエントリタイマを検査する機能を内部ノードAのNAT検査部10が通信プログラムモジュールとして更に有している(図23参照)。
上記接続制御部20及びIPアプリケーション30の有する機能(通信プログラムモジュール)は、内部ノードAがNAT/FW配下でなければ動作させる必要のない機能である。NAT検査部10は、NAT/FWの有無を検査し、存在する場合にのみ、CPU及びメモリに通信プログラムモジュールをロードしてプロセスを機能させるプログラムモジュール管理機構である(図25参照)。
上記接続制御部20及びIPアプリケーション30の有する機能(通信プログラムモジュール)は、内部ノードAがNAT/FW配下でなければ動作はおろか、記憶領域(HDD等)に保持する必要がない。NAT検査部10は、NAT/FWの有無を検査し、存在する場合にのみ、接続支援装置CSなどから指定されたダウンロード先からダウンロードして機能させるプログラムモジュール管理機構である(図26参照)。
上記内部ノードA自身がNAT/FW配下に位置するか否かを検査するステップを、IPアドレスの取得を契機として実施することが可能である。IPアドレス取得の契機とは、例えば内部ノードAが起動した際や、インタフェースがリンクアップした際、また手動あるいはDHCP(Dynamic Host Configuration Protocol)等自動でIPアドレスが変
更された際などが考えられ、このタイミングでネットワーク構成変更等によりNAT/FWが挿入あるいは除去される可能性がある。前者の場合は、これまで動作させていなかったIPアプリケーション30の通信プログラムモジュールを動作させる必要があるし、後者の場合は、逆に必要がなくなるため、このモジュールの動作を停止させるトリガとなる。
また、上記内部ノードA自身がNAT/FW配下に位置するか否かを検査するステップを、NATを越えて接続したい特定IPアプリケーション30の起動を契機として実施することも可能である。
[IPアプリケーションサービス提供システムの具体例]
次に、本発明の一実施の形態のIPアプリケーションサービス提供システムの具体例について説明する。
ここでは、外部ノードB対応のコンテンツ配布サーバSVを所有するあるコンテンツプロバイダが、ユーザA,B,CにサービスゲートウェイSGW(SGW#1〜#3)を提供し、リアルタイムで最新コンテンツを配信(アップロード)するケースを考える(図27参照)。
この場合、NAT/FWが存在しなければ、オンデマンドでTCPコネクションを確立することができるが、NAT/FWが存在する場合は、前述のとおりTCPコネクションを確立することができない。Static NATにより静的にNATエントリを設定することは可能ではあるが、設定に不慣れなユーザには難しく、サービスを提供する上で大きな障壁となる。
サービスゲートウェイSGWから定期的にコンテンツをポーリングしてコンテンツが最新であればダウンロードする、という手法も可能ではあるが、ポーリング間隔によってはリアルタイム性に欠け、またNAT/FWの有無でコンテンツを提供するためのアプリケーションプロトコル(NAT無:アップロード、NAT有:ダウンロード)が異なってしまい、それぞれのためにアプリケーション開発が必要となる。
そこで、サービスゲートウェイSGWには、IPアドレス取得時(電源ONなど)に初期登録としてSGW管理サーバ(接続支援装置CS)CS−SVにアクセスするよう予め設定しておき、その際、自身がNAT/FW配下に位置するか否かを確認する。NAT/FWが存在しなければ、その後、特にアクションは起こさず、コンテンツが配信される(TCP接続要求)のを待つ(図29参照)。
NAT/FWが存在する場合には、サービスゲートウェイSGWはSGW管理サーバCS−SVから接続制御モジュール及びActive Open API(通信プログラムモジュール)をダウンロードし、インストールを行う。そして、サービスゲートウェイSGWはSGW管理サーバCS−SVに対し、定期的に制御パケットを送信して制御チャネルを維持する。なお、送信間隔はNATエントリが維持される間隔で送信すれば良く(一般に1分〜5分間隔)、SGW管理サーバCS−SVの処理負荷にはならない。
NAT/FWエントリタイマを検査するステップを実行することで、送信間隔を最適化することも可能である。SGW管理サーバCS−SVは、初期登録時にサービスゲートウェイSGWのIPアドレスを管理するとともに、制御パケットを受信したサービスゲートウェイSGWはNAT/FW配下に位置すると判断し、NAT flag及び制御チャネルポートも合わせて管理する(図28参照)。
コンテンツを配信する際、コンテンツ配布サーバSVはSGW管理サーバCS−SVに問い合わせを行い、各サービスゲートウェイSGWのIPアドレス及びNAT/FWの有無を照会する。照会の結果、NAT無のサービスゲートウェイSGW#1,#2には、コンテンツ配布サーバSVから直接TCP接続要求を行うが、NAT有のサービスゲートウェイSGW#3は、待受IP:PortとともにSGW管理サーバCS−SV経由でサー
ビスゲートウェイSGWからのTCP接続要求を依頼する。サービスゲートウェイSGW#3はこの要求を受け、コンテンツ配布サーバSVに対してTCP接続を開始する。
なお、この要求が正規のもの、つまりSGW管理サーバCS−SVから送付されたもので、改竄などが行われていないことを確認するため、認証や暗号化及び電子署名等と組み合わせても良い。そして、TCPコネクションが確立した後は、NAT有無によらず最新コンテンツをサービスゲートウェイSGWに対してアップロードする。つまり、NATの有無によってアプリケーション自体の動作は組み替えることなく、かつ任意のタイミングでアクセスを行うことが可能となる。
上述した一実施の形態によれば、NAT/FWなどのゲートウェイ装置の有無を意識せず(存在しても種類に拠らず、また任意のタイミングで)、IPアプリケーションサービスの提供が可能となる。
また、制御部が各IPアプリケーション部と独立しており、かつアプリケーション固有の処理に依存しない拡張を行うため、汎用性が高い。
また、NAT/FWの配下に複数の同一ポートで提供されるアプリケーションが存在した場合、例えば上述した一実施の形態で言うと、NAT/FW配下に複数台のサービスゲートウェイSGWがある場合においても、それぞれのサービスゲートウェイSGWからコンテンツ配布サーバSVに対してアクティブにTCPコネクション確立を行うため、サービスゲートウェイSGWの使用するポートが同一であってもポート競合の問題は発生しない。
[変形例]
上述した一実施の形態における処理はコンピュータで実行可能なプログラムとして提供され、CD−ROMやフレキシブルディスクなどの記録媒体、さらには通信回線を経て提供可能である。
また、上述した一実施の形態における各処理はその任意の複数または全てを選択し組合せて実施することもできる。
[その他]
(付記1)内部から外部向けへのアウトバウンド通信のみを許容するように設定されているゲートウェイ装置により外部ネットワークから隠蔽され、かつ内部ネットワークに属する内部ノードと、前記外部ネットワークに属する外部ノードとの間での意図するIPアプリケーション通信での外部から内部向けへのインバウンド通信も可能にするIPアプリケーションサービス提供方法であって;
前記ゲートウェイ装置配下の前記内部ノードから前記外部ネットワーク上の接続支援装置に対し、制御チャネルポートの通知及び制御チャネルパスの通信許容エントリの維持を目的とする制御パケットを定期送信する第1のステップと;
前記接続支援装置から前記内部ノードに対し、前記制御チャネルを通して前記外部ノード対応の接続先アドレス及びポートを通知する第2のステップと;
前記通知を受けた接続先アドレス及びポートに対してIPアプリケーションのデータチャネルをアクティブにオープンする第3のステップと;
を備えるIPアプリケーションサービス提供方法。(2)
(付記2)前記制御チャネルのプロトコルとして、UDP、ICMP、及びTCPのいずれかを使用する付記1記載のIPアプリケーションサービス提供方法。(3)
(付記3)前記第1のステップと前記第2のステップとが非同期で遂行され、前記第1のステップにおける前記制御パケットの送信タイミングに拠らず前記第2のステップを実
行する付記1記載のIPアプリケーションサービス提供方法。(4)
(付記4)前記第1のステップにおいて定期送信される前記制御パケットに対する応答として前記第2のステップを遂行する付記1記載のIPアプリケーションサービス提供方法。(5)
(付記5)前記第1のステップ及び前記第2のステップにおいて、正当性、機密性、及び完全性を併せて確認することにより、セキュリティ耐性を有する付記1記載のIPアプリケーションサービス提供方法。
(付記6)前記ゲートウェイ装置の有無を検査する第4のステップを更に備え、前記内部ノードが前記ゲートウェイ装置の配下に位置すると判明した場合のみ前記第1、第2及び第3のステップを実行する付記1記載のIPアプリケーションサービス提供方法。(6)
(付記7)前記ゲートウェイ装置の通信許容エントリタイマを検査する第5のステップを更に備え、タイマ値に応じて前記第1のステップにおける前記制御パケットの送信間隔を最適化する付記1記載のIPアプリケーションサービス提供方法。(7)
(付記8)内部から外部向けへのアウトバウンド通信のみを許容するように設定されているゲートウェイ装置により外部ネットワークから隠蔽され、かつ内部ネットワークに属する内部ノードと、前記外部ネットワークに属する外部ノードとの間での意図するIPアプリケーション通信での外部から内部向けへのインバウンド通信も可能にするIPアプリケーションサービス提供システムであって;
前記ゲートウェイ装置配下の前記内部ノードが、
前記外部ネットワーク上の接続支援装置に対し、制御チャネルポートの通知及び制御チャネルパスの通信許容エントリの維持を目的とする制御パケットを定期送信する手段と;
前記接続支援装置から前記制御チャネルを通して前記外部ノード対応の接続先アドレス及びポートの通知を受ける手段と;
前記通知を受けた接続先アドレス及びポートに対してIPアプリケーションのデータチャネルをアクティブにオープンする手段とを備える
IPアプリケーションサービス提供システム。(1)
NA(P)Tの動作原理説明図である。 FWの動作原理説明図である。 発明の背景(NATの課題)を示す。 従来技術とその課題を示す。 NATの種類(Full Cone NAT)を示す。 NATの種類(Restricted Cone NAT)を示す。 NATの種類(Port Restricted Cone NAT)を示す。 NATの種類(Symmetric NAT)を示す。 STUNの動作説明図である。 STUNフローチャートを示す。 STUNとUDP Hole Punchingを使った接続成功例を示す。 STUNとUDP Hole Punchingを使った接続失敗例を示す。 ステートフルインスペクションの説明図である。 本発明の一実施の形態のシステムの構成を示すブロック図である。 本発明の一実施の形態のシステムの説明図である。 本発明の一実施の形態のシステムの説明図である。 本発明の一実施の形態のシステムの説明図である。 本発明の一実施の形態のシステムの説明図である。 本発明の一実施の形態のシステムの説明図である。 本発明の一実施の形態のシステムの説明図である。 本発明の一実施の形態のシステムの説明図である。 本発明の一実施の形態のシステムの説明図である。 本発明の一実施の形態のシステムの説明図である。 OSI参照モデルの説明図である。 本発明の一実施の形態のシステムの説明図である。 本発明の一実施の形態のシステムの説明図である。 具体例の説明図である。 具体例の説明図である。 具体例の説明図である。
符号の説明
INW 内部ネットワーク
ONW 外部ネットワーク
NAT ネットワークアドレス変換装置
CS 接続支援装置
10 NAT検査部
20 接続制御部
30 IPアプリケーション

Claims (7)

  1. 内部から外部向けへのアウトバウンド通信のみを許容するように設定されているゲートウェイ装置により外部ネットワークから隠蔽され、かつ内部ネットワークに属する内部ノードと、前記外部ネットワークに属する外部ノードとの間での意図するIPアプリケーション通信での外部から内部向けへのインバウンド通信も可能にするIPアプリケーションサービス提供システムであって;
    前記ゲートウェイ装置配下の前記内部ノードが、
    前記外部ネットワーク上の接続支援装置に対し、制御チャネルポートの通知及び制御チャネルパスの通信許容エントリの維持を目的とする制御パケットを定期送信する手段と;
    前記接続支援装置から前記制御チャネルを通して前記外部ノード対応の接続先アドレス及びポートの通知を受ける手段と;
    前記通知を受けた接続先アドレス及びポートに対してIPアプリケーションのデータチャネルをアクティブにオープンする手段とを備える
    IPアプリケーションサービス提供システム。
  2. 内部から外部向けへのアウトバウンド通信のみを許容するように設定されているゲートウェイ装置により外部ネットワークから隠蔽され、かつ内部ネットワークに属する内部ノードと、前記外部ネットワークに属する外部ノードとの間での意図するIPアプリケーション通信での外部から内部向けへのインバウンド通信も可能にするIPアプリケーションサービス提供方法であって;
    前記ゲートウェイ装置配下の前記内部ノードから前記外部ネットワーク上の接続支援装置に対し、制御チャネルポートの通知及び制御チャネルパスの通信許容エントリの維持を目的とする制御パケットを定期送信する第1のステップと;
    前記接続支援装置から前記内部ノードに対し、前記制御チャネルを通して前記外部ノード対応の接続先アドレス及びポートを通知する第2のステップと;
    前記通知を受けた接続先アドレス及びポートに対してIPアプリケーションのデータチャネルをアクティブにオープンする第3のステップと;
    を備えるIPアプリケーションサービス提供方法。
  3. 前記制御チャネルのプロトコルとして、UDP、ICMP、及びTCPのいずれかを使用する請求項2記載のIPアプリケーションサービス提供方法。
  4. 前記第1のステップと前記第2のステップとが非同期で遂行され、前記第1のステップにおける前記制御パケットの送信タイミングに拠らず前記第2のステップを実行する請求項2記載のIPアプリケーションサービス提供方法。
  5. 前記第1のステップにおいて定期送信される前記制御パケットに対する応答として前記第2のステップを遂行する請求項2記載のIPアプリケーションサービス提供方法。
  6. 前記ゲートウェイ装置の有無を検査する第4のステップを更に備え、前記内部ノードが前記ゲートウェイ装置の配下に位置すると判明した場合のみ前記第1、第2及び第3のステップを実行する請求項2記載のIPアプリケーションサービス提供方法。
  7. 前記ゲートウェイ装置の通信許容エントリタイマを検査する第5のステップを更に備え、タイマ値に応じて前記第1のステップにおける前記制御パケットの送信間隔を最適化する請求項2記載のIPアプリケーションサービス提供方法。
JP2006260830A 2006-09-26 2006-09-26 Ipアプリケーションサービス提供システム Pending JP2008085470A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006260830A JP2008085470A (ja) 2006-09-26 2006-09-26 Ipアプリケーションサービス提供システム
US11/705,094 US7706358B2 (en) 2006-09-26 2007-02-12 IP application service providing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006260830A JP2008085470A (ja) 2006-09-26 2006-09-26 Ipアプリケーションサービス提供システム

Publications (1)

Publication Number Publication Date
JP2008085470A true JP2008085470A (ja) 2008-04-10

Family

ID=39224866

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006260830A Pending JP2008085470A (ja) 2006-09-26 2006-09-26 Ipアプリケーションサービス提供システム

Country Status (2)

Country Link
US (1) US7706358B2 (ja)
JP (1) JP2008085470A (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008289109A (ja) * 2007-04-20 2008-11-27 Panasonic Corp Ip通信装置及びip通信装置によるnat種別の判定方法
JP2011525776A (ja) * 2008-06-24 2011-09-22 マイクロソフト コーポレーション 中継サーバー間の通信を管理するための技法
JP2012524466A (ja) * 2009-04-17 2012-10-11 スリング メディア,インク. ネットワーク上で通信する装置間の接続を確立するシステムならびに方法
WO2013150925A1 (ja) 2012-04-03 2013-10-10 日本電気株式会社 ネットワークシステム、コントローラ、及びパケット認証方法
JP2014053731A (ja) * 2012-09-06 2014-03-20 Oki Electric Ind Co Ltd 遠隔制御対象装置、遠隔制御装置、遠隔制御支援装置、遠隔制御システム及び遠隔制御方法
WO2014061220A1 (ja) * 2012-10-17 2014-04-24 日本電気株式会社 端末、メッセージ配信システム、メッセージ配信方法およびメッセージ受信プログラム
WO2015162735A1 (ja) * 2014-04-23 2015-10-29 富士通株式会社 通信装置、サーバ、通信システム及び通信方法
US10021073B2 (en) 2009-11-16 2018-07-10 Sling Media L.L.C. Systems and methods for delivering messages over a network

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030009561A1 (en) 2001-06-14 2003-01-09 Sollee Patrick N. Providing telephony services to terminals behind a firewall and /or network address translator
US7684317B2 (en) * 2001-06-14 2010-03-23 Nortel Networks Limited Protecting a network from unauthorized access
EP2325743B1 (en) 2003-01-31 2012-12-19 Good Technology Corporation Asynchronous real-time retrieval of data
JP4411332B2 (ja) * 2007-03-20 2010-02-10 パナソニック株式会社 Ip通信装置及びip通信システム並びにこれらのip通信方法
US8964945B2 (en) * 2007-09-28 2015-02-24 Centurylink Intellectual Property Llc System and method for providing location based E-911 of network access devices registered with a network gateway
KR100930037B1 (ko) * 2007-12-17 2009-12-07 한국전자통신연구원 네트워크 주소 변환 시뮬레이션 방법 및 그 시스템
US8218459B1 (en) * 2007-12-20 2012-07-10 Genbrand US LLC Topology hiding of a network for an administrative interface between networks
US9178923B2 (en) 2009-12-23 2015-11-03 Echostar Technologies L.L.C. Systems and methods for remotely controlling a media server via a network
US9275054B2 (en) 2009-12-28 2016-03-01 Sling Media, Inc. Systems and methods for searching media content
US9113185B2 (en) 2010-06-23 2015-08-18 Sling Media Inc. Systems and methods for authorizing access to network services using information obtained from subscriber equipment
CN103229161B (zh) * 2010-08-24 2016-01-20 科派恩股份有限公司 连续接入网关和去重数据缓存服务器
CN102882828A (zh) * 2011-07-11 2013-01-16 上海可鲁系统软件有限公司 一种内网与外网间的信息安全传输控制方法及其网关
US11212321B2 (en) * 2014-08-18 2021-12-28 Nokia Solutions and Network OY Group communication service enabler security
US9264370B1 (en) 2015-02-10 2016-02-16 Centripetal Networks, Inc. Correlating packets in communications networks
US9866576B2 (en) 2015-04-17 2018-01-09 Centripetal Networks, Inc. Rule-based network-threat detection

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004120547A (ja) * 2002-09-27 2004-04-15 Matsushita Electric Ind Co Ltd インターネットに接続するサーバ、機器および通信システム
JP2005236728A (ja) * 2004-02-20 2005-09-02 Matsushita Electric Ind Co Ltd サーバ装置、要求発行機器、要求受諾機器、通信システム及び通信方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9497168B2 (en) * 2002-07-30 2016-11-15 Avaya Inc. Method and apparatus for supporting communications between a computing device within a network and an external computing device
US7257837B2 (en) * 2003-07-26 2007-08-14 Innomedia Pte Firewall penetration system and method for real time media communications
US8989737B2 (en) * 2004-03-10 2015-03-24 Nokia Corporation System and method for establishing a session initiation protocol communication session with a mobile terminal
US8085741B2 (en) * 2004-03-10 2011-12-27 Core Wireless Licensing S.A.R.L. System and method for pushing content to a terminal utilizing a network-initiated data service technique
JP4260659B2 (ja) 2004-03-12 2009-04-30 エヌ・ティ・ティ・コミュニケーションズ株式会社 パケットのnat透過機能を有する端末装置及びそのプログラム
US7333492B2 (en) * 2004-08-31 2008-02-19 Innomedia Pte Ltd Firewall proxy system and method
JP4480535B2 (ja) * 2004-09-30 2010-06-16 株式会社アドイン研究所 トンネル装置、中継装置、端末装置、呼制御システム、ip電話システム、会議装置、これらの制御方法及びプログラム
US7492764B2 (en) * 2004-10-12 2009-02-17 Innomedia Pte Ltd System for management of equipment deployed behind firewalls
JP4599196B2 (ja) * 2005-03-11 2010-12-15 株式会社アドイン研究所 中継装置、通信システム、これらの制御方法及び制御プログラム
US20060230163A1 (en) * 2005-03-23 2006-10-12 Fish Russell H Iii System and method for securely establishing a direct connection between two firewalled computers
US7639668B2 (en) * 2005-05-31 2009-12-29 Alcatel-Lucent Usa Inc. Method for securing RTS communications across middleboxes

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004120547A (ja) * 2002-09-27 2004-04-15 Matsushita Electric Ind Co Ltd インターネットに接続するサーバ、機器および通信システム
JP2005236728A (ja) * 2004-02-20 2005-09-02 Matsushita Electric Ind Co Ltd サーバ装置、要求発行機器、要求受諾機器、通信システム及び通信方法

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008289109A (ja) * 2007-04-20 2008-11-27 Panasonic Corp Ip通信装置及びip通信装置によるnat種別の判定方法
JP2011525776A (ja) * 2008-06-24 2011-09-22 マイクロソフト コーポレーション 中継サーバー間の通信を管理するための技法
JP2012524466A (ja) * 2009-04-17 2012-10-11 スリング メディア,インク. ネットワーク上で通信する装置間の接続を確立するシステムならびに方法
US10021073B2 (en) 2009-11-16 2018-07-10 Sling Media L.L.C. Systems and methods for delivering messages over a network
WO2013150925A1 (ja) 2012-04-03 2013-10-10 日本電気株式会社 ネットワークシステム、コントローラ、及びパケット認証方法
JP2014053731A (ja) * 2012-09-06 2014-03-20 Oki Electric Ind Co Ltd 遠隔制御対象装置、遠隔制御装置、遠隔制御支援装置、遠隔制御システム及び遠隔制御方法
WO2014061220A1 (ja) * 2012-10-17 2014-04-24 日本電気株式会社 端末、メッセージ配信システム、メッセージ配信方法およびメッセージ受信プログラム
JPWO2014061220A1 (ja) * 2012-10-17 2016-09-05 日本電気株式会社 端末、メッセージ配信システム、メッセージ配信方法およびメッセージ受信プログラム
US9866644B2 (en) 2012-10-17 2018-01-09 Nec Corporation Terminal, message distribution system, message distribution method, and computer-readable medium
WO2015162735A1 (ja) * 2014-04-23 2015-10-29 富士通株式会社 通信装置、サーバ、通信システム及び通信方法
JPWO2015162735A1 (ja) * 2014-04-23 2017-04-13 富士通株式会社 通信装置、サーバ、通信システム及び通信方法
US10044523B2 (en) 2014-04-23 2018-08-07 Fujitsu Limited Communication apparatus, server, communication system, and communication method

Also Published As

Publication number Publication date
US20080075097A1 (en) 2008-03-27
US7706358B2 (en) 2010-04-27

Similar Documents

Publication Publication Date Title
JP2008085470A (ja) Ipアプリケーションサービス提供システム
TWI413389B (zh) 使用裝置之網頁服務的跨網路漫遊和方法
US8380863B2 (en) Control of security application in a LAN from outside the LAN
EP3834393B1 (en) Systems and methods for server cluster network communication across the public internet
Guha et al. NUTSS: A SIP-based approach to UDP and TCP network connectivity
EP3186930B1 (en) Relay optimization using software defined networking
JP5378494B2 (ja) リレーサーバを利用したデータ伝送システム及び方法
US20170034174A1 (en) Method for providing access to a web server
US8364847B2 (en) Address management in a connectivity platform
US20090138611A1 (en) System And Method For Connection Of Hosts Behind NATs
JP3999785B2 (ja) 通信方法
JP2005260715A (ja) パケットのnat透過機能を有する端末装置及びそのプログラム
JP5084716B2 (ja) Vpn接続装置、dnsパケット制御方法、及びプログラム
JP2007221740A (ja) Vpnシステム利用時のipアドレス競合回避策
JP5023672B2 (ja) パケット中継装置
JP2008098922A (ja) 中継サーバ
JP2007306227A (ja) 通信路確立方法、通信路確立システム、プログラム格納媒体、プログラム及び情報処理装置
JP2014053731A (ja) 遠隔制御対象装置、遠隔制御装置、遠隔制御支援装置、遠隔制御システム及び遠隔制御方法
JP2006115073A (ja) ネットワーク内中継装置、外部中継装置、通信システム及び通信方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20081117

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100915

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100928

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101110

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110215

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110512

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20110519

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20110722