次に、本発明の実施例について図面を参照して説明する。図2は本発明の一実施例によるノード装置に用いられるインタネットプロトコルの階層構造を示す図である。図2は、本発明の一実施例による階層構造であるユニファイド(Unified)の階層構造を示している。
図1を参照して、レガシーの階層構造は、アプケーション(Application)層210と、トランスポート(Transport)層220と、ネットワーク(Network)層230と、データリンク(Data Link)層240と、物理層250とからなり、トランスポート層220ではポート多重化[Port mux(multiplex)]221が行われ、ネットワーク層230ではアドレス多重化(Address mux)231が行われている。
これに対し、本発明の一実施例によるユニファイドの階層構造は、図2に示すように、アプケーション層110と、トランスポート層120と、ネットワーク層130と、データリンク層140と、物理層150とからなっているが、トランスポート層120及びネットワーク層130におけるセッション(session)の識別を、ネットワーク層130における識別に統合することで、セッション(session)の多重化(mux)を、ネットワーク層130における多重化処理(アドレス多重化)131に統合している。
(構成)
図37を参照して、本発明による通信システムの構成の実施例を説明する。、通信システムは、複数のノード装置を含む。複数のノード装置は、サービスを提供するサーバ10と、サービスを提供するクライアント装置11、12を備える。ここで、サーバ10及びクライアント装置11、12の数は、図37に示す数に限定されない。サーバ10及びクライアント装置11、12のそれぞれは、セッション毎にIPアドレスを割り当てており、従来のようなポートによるセッションの多重化は行わない。すなわち、本発明による通信方法に用いられるアドレス情報(例えばIPアドレス)は、通信システム内のノード装置(サーバ装置10、クライアント装置11、12)を識別する機能(従来のアドレス情報に相当する機能)と、セッションを構築する通信相手(例えばアプリケーション)を識別する機能(従来技術におけるポート番号に相当する機能)とを有する。又、詳細は後述するが、本発明に係るアドレス情報は、サービスを利用するユーザを特定する機能を有しても良い。
図37を参照して、サーバ10の構成を説明する。サーバ10は、記憶装置20内のアプリケーションを実行することでサービスを提供するアプリケーションユニット21と、他ノード(クライアント装置11、12のそれぞれにおけるアプリケーションユニット31との間でセッションを確立するセッションユニット22とを備える。又、サーバ10は、自身を特定するためのアドレスを払い出すアドレス払出しユニット23を更に備えることが好ましい。アプリケーションユニット21、セッションユニット22、及びアドレス払出しユニット23は、20内のプログラムを実行するCPUによって実現されることが好ましい。
セッションユニット22は、送受信するデータのアドレスフィールド内の情報(例えばIPアドレス)に基づいてセッションを識別する。例えば、セッションユニット22は、TCP(Transmission Control Protocol)/UDP(User Datagram Protocol)ヘッダのアドレスフィールド内の情報に基づいてセッションを識別する。すなわち、セッションユニット22は、受信したデータのアドレスフィールド内の情報(例えば宛先アドレス)に基づいて、受信したデータの宛先となるサービス(データを処理するためのアプリケーション)を決定する。又、セッションユニット22は、クライアント装置におけるアプリケーションに対応したアドレスを宛先アドレスとして、送信データのアドレスフィールドに挿入する。
アドレス払出しユニット23は、通信相手として許可した他ノード装置に対応するアドレス(Specific Service Address)を、自身が提供するサービスを特定するためのアドレスとして払出すことが好ましい。これにより、サーバ装置10は、Specific Serviceアドレスを利用したセッションを行うクライアント装置を許可された通信相手として認識できる。換言すれば、クライアント装置は、Specific Serviceアドレスを知ることなしに、当該Specific Serviceアドレスに対応するサービスを受けることができなくなる。
又、アドレス払出しユニット23は、通信相手を特定せずにサービスを特定するアドレス(Generic Service Address)を払い出してもよい。
以上のように、本発明によるサーバ装置10は、ポートフィールドを参照せず、アドレスフィールド内の情報(アドレス情報)に基づいてセッションの識別を行う。あるいは、サーバ装置10は、ポートフィールドを参照してもポートフィールド内の情報(ポート情報)を解釈せずに、アドレス情報のみに基づいてセッション識別を行う。すなわち、本発明に係るサーバ装置10は、セッションを多重化する際、ポート番号を用いずIPアドレスを用いてセッションの識別を行う。
又、サーバ装置10は、本発明によるセッション識別方法を利用したユニファイド通信と、従来技術によるセッション識別方法を利用したレガシー通信とを選択的に利用しても構わない。ここで、本発明によるセッション識別方法(ユニファイド通信)を第1通信モード、従来技術によるセッション識別方法(レガシー通信)を第2通信モードとする。セッションユニット22は、送受信されるデータのポートフィールド内の情報に基づいてセッション識別方法を決定する。ユニファイド通信(第1通信モード)を利用する場合、セッションユニット22は、「LEGACY_COMPAT」と呼ぶ特別なポート番号をデータのポートフィールドに挿入する。例えば、このポート番号は、ユニファイド通信の際のTCP(Transmission Control Protocol)/UDP(User Datagram Protocol)ヘッダのポートフィールドに挿入される。
セッション識別方法を選択的に利用する場合、セッションユニット22は、ソケットAPI(Application Programming Interface)等の機能によって、受信したデータのポートフィールド内の情報(ポート情報)を取得することが好ましい。受信したデータから取得したポート情報が、「LEGACY_COMPAT」と呼ぶ特別なポート番号である場合、セッションユニット22は、ユニファイド通信(第1通信モード)をセッション識別方法として選択する。一方、受信データから取得したポート情報が「LEGACY_COMPAT」以外のポート番号を示す場合、セッションユニット22は、セッション識別方法としてレガシー通信(第2通信モード)を選択し、取得したポート番号に基づいてセッションを識別する。
以上のように、セッション識別方法を選択的に利用することで、サーバ装置10は従来技術(レガシー通信)を用いたノード装置(例えばクライアント装置)との間で通信することができる。
図37を参照して、クライアント装置11の構成を説明する。クライアント装置12の構成はクライアント装置11と同様であるので、その説明を省略する。クライアント装置11は、記憶装置30内のアプリケーションを実行することでサービスを提供するアプリケーションユニット31と、他ノード(例えばサーバ装置10)におけるアプリケーションユニット21との間でセッションを確立するセッションユニット32とを備える。アプリケーションユニット31、セッションユニット32は、記憶装置内のプログラムを実行するCPUによって実現されることが好ましい。
セッションユニット32は、送受信するデータのアドレスフィールド内の情報(例えばIPアドレス)に基づいてセッションを識別する。例えば、セッションユニット32は、TCP(Transmission Control Protocol)/UDP(User Datagram Protocol)ヘッダのアドレスフィールド内の情報に基づいてセッションを識別する。すなわち、セッションユニット32は、受信したデータのアドレスフィールド内の情報(例えば宛先アドレス)に基づいて、受信したデータの宛先となるアプリケーション(データを処理するためのアプリケーション)を決定する。又、セッションユニット32は、サーバ装置10が提供するサービス(アプリケーション)に対応したアドレスを宛先アドレスとして、送信データのアドレスフィールドに挿入する。
クライアント装置11では、OS(Operation System)の機能によって未使用のアドレス(エフェメラルアドレス)が、セッション毎に割り振られる。従来技術では、実際に通信を開始する際にOSから自動的にポート番号が割り振られるエフェメラルポートの機能がある。本発明によるクライアント装置11では、この機能をポート情報からアドレス情報へ発展させることで、エフェメララルアドレスの割り振り機能を実現できる。セッションユニット32は、エフェメラレルアドレスをソースアドレスに指定してセッションの設定を行う。又、セッションユニット32は、セッション終了後、ソースアドレスとして指定したエフェメラルアドレスを破棄する。このため、セッションユニット32は、セッション毎に新しいアドレスをソースアドレスとして指定することとなる。
以上のように、本発明によるクライアント装置11は、ポートフィールドを参照せず、アドレスフィールド内の情報(アドレス情報)に基づいてセッションの識別を行う。あるいは、クライアント装置11は、ポートフィールドを参照してもポートフィールド内の情報(ポート情報)を解釈せずに、アドレス情報のみに基づいてセッション識別を行う。すなわち、本発明に係るクライアント装置11は、セッションを多重化する際、ポート番号を用いずIPアドレスを用いてセッションの識別を行うことができる。
又、クライアント装置11は、サーバ装置10と同様に、本発明によるセッション識別方法を利用したユニファイド通信と、従来技術によるセッション識別方法を利用したレガシー通信とを選択的に利用しても構わない。セッションユニット32は、送受信されるデータのポートフィールド内の情報に基づいてセッション識別方法を決定する。ユニファイド通信(第1通信モード)を利用する場合、セッションユニット32は、「LEGACY_COMPAT」と呼ぶ特別なポート番号をデータのポートフィールドに挿入する。
セッション識別方法を選択的に利用する場合、セッションユニット32は、ソケットAPI(Application Programming Interface)等の機能によって、受信したデータのポートフィールド内の情報(ポート情報)を取得することが好ましい。受信したデータから取得したポート情報が、「LEGACY_COMPAT」である場合、セッションユニット32は、ユニファイド通信(第1通信モード)をセッション識別方法として選択する。一方、受信データから取得したポート情報が「LEGACY_COMPAT」以外のポート番号を示す場合、セッションユニット32は、セッション識別方法としてレガシー通信(第2通信モード)を選択し、取得したポート番号に基づいてセッションを識別する。
以上のように、セッション識別方法を選択的に利用することで、クライアント装置11は従来技術(レガシー通信)を用いたノード装置(例えばサーバ装置)との間とも通信することができる。
本発明の一実施例では、セッション毎にIPアドレスを割り当てており、従来のようなポートによるセッションの多重化は行っていない。すなわち、本発明による通信システムでは、アドレス情報によってセッションを識別するため、トランスポート層でセッション識別処理を行う必要がない。このため、ノード装置(サーバ装置10、クライアント装置11、12)におけるセション識別処理の負荷が軽減される。
また、本発明に係るアドレス情報(例えばIPアドレス)は、通信システム内のノード装置を識別する機能と、従来技術におけるポート情報に相当する機能を有する。すなわち、アドレスフィールド内に従来技術におけるポート情報に相当する情報(ポート相当情報)が挿入されているため、従来技術のようにポート番号の割り当てが不要となる。このためリゾルビング(Resolving)が、アドレス解決のみに一元化される。
ここで、ポート相当情報(基本的に16bitの情報)のアドレスフィールドへの入れ方としては、例えば、そのままプレーン(plain)な形で、暗号/ハッシュ(hash)的処理を加えた形で、すかし的に入れる形で入れることができる。尚、IPv6の場合、Block DAD(Duplicate Address Detection:重複アドレス検出)に影響を与えるため、ポート相当情報は、アドレスフィールドにおけるPrefix fieldには入れられない。このため、IPv6が適用された通信システムでは、ポート相当情報は、Interface ID(下位64bit)の中に挿入されることが好ましい。
本発明の一実施例では、セッションを多重化する際に、セッションの識別にIPアドレスのみが用いられるため、ノード装置間に設けられた中間ノード装置はトランスポート層の情報を解析する必要がない。このため、通信システムへのフィルタやIPsec SPDの実装・運用等を容易化(シンプル化)することができ、従来技術で生じたポート情報の問題を解決することができる。
本実施例では、ネットワーク層でのみ多重化処理を行い、送信元のアドレス情報と、宛先のアドレス情報との二つの情報だけで、IP通信セッションを識別することができるようになる。また、一般にトランスポート層のポート情報を高速に処理するための特別な技術は存在していないが、ネットワーク層には経路制御で培かったアドレス情報を高速に処理する技術が存在しており、これを利用することができる。この点おいても、本発明による通信システムは従来技術に比べ効率良くセッションを設定できる。このように、ネットワーク層の多重化技術(ルーティングテーブルの検索)の方がトランスポート層の多重化技術より優れているので、ネットワーク層の多重化処理への統合の効果が大きい。このネットワーク層の多重化処理への統合は、ルーティング(routing)/ルータ(router)には全く影響がない。このため、本発明による通信システムは、従来技術を利用した通信システムの構成を大きく変更せずに、従来技術と共存することができる。
本発明によれば、アドレス情報がセッションの識別情報になるため、DNS(Domain Name System)をはじめとした従来技術による情報レゾルビングの機構がセッション構築に利用され得る。このため、従来技術のようにウェルノウン(Well−Known)ポート番号に頼る仕組みからも決別することができる。また、レゾルビングの応用的利用や、どのようなアドレスを通信に用いるかを制御することによって、セキュリティ/プライバシーに配慮することが可能になる。すなわち、本発明によれば、従来技術で使用していたウェルノウンポート番号が必要がなくなるため、プライバシーを中心とした高いセキュリティ機能を提供することが可能となる。
本発明によれば、IPアドレス情報がサービスの本質を代表する情報となり、無理のない最適化された仕組みとなる。このため、本発明による通信方法はICMP(Internet Control Message Protocol)通信にも適用することができる。
また、基本的な機能は末端ノードだけでの対応で実現されるものであり、ルータ等の中間ノードへの影響がなく、その面でも導入が容易な構造になっている。ユニファイド通信では、レガシー通信のポート“相当”の情報を内包したアドレス情報を用いることになるため、広いアドレス空間を持つIPv6(Internet Protocol version 6)に適したアーキテクチャであることが好ましい。
また、セッションを多く扱うサーバ装置10では、サービスの種類(ポート)の分だけアドレスを持つので、アドレス空間の広いIPv6が適している。上記のネットワーク層の多重化処理への統合は、2箇所の処理を1箇所の処理に統合するので、基本的に新たな処理が生ずることはない。しかも、トランスポート層の実装が簡単になり、Protocol Stackを小さくすることができるので、小型/組込み系の通信装置への実装が楽になる。
一般に、アドレスをノード装置に割り当てても、すぐに使用することはできない。例えば、IPv6を採用した通信システムでは、アドレスをノード装置に割り当てても、DAD(Duplicate Address Detection:重複アドレス検出)のために1秒以上待たされる。このため、本発明では、事前にDADを終えたアドレスをプール(pool)して持っている方法を取ることが好ましい。尚、1秒以上待ってもよい場合等にはこれに限定されない。
アドレスをプール(pool)して持っている方法としては、1つのアドレスに対するDADを地道に複数回繰り返してプールする方法、1つのアドレスではなく、1回のDAD手順でアドレスのブロック(block)としてDADを終えてプールする方法(DADの機能拡張)がある。
本実施例で最も重要視されるのは、既存のアプリケーションを変更することなく、レガシー実装との通信を容易に行うことができ、レガシー実装とユニファイド実装とが共存できることである。そのために、本実施例では、上記の「LEGACY_COMPAT」と呼ぶ特別なポート番号を導入している。このポート番号は、ユニファイド通信の際のTCP(Transmission Control Protocol)/UDP(User Datagram Protocol)ヘッダのポートフィールドに用いるものであり、ソケットAPI(Application Programming Interface)等のポート情報が求められるところで用いる特別な番号である。
ユニファイド通信でも形式的にポートは存在しても良い。しかしながら、ユニファイド通信におけるポートは実質的意味はなく、セッションの識別には利用されない。この場合、ポートフィールドには、値として特別なポート番号「LEGACY_COMPAT」が設定される。違う表現をすると、ポート情報(ポート番号)が「LEGACY_COMPAT」になっていれば、それはユニファイド通信のセッションであることを示す。
「LEGACY_COMPAT」として具体的にどのような値を用いるかについては、その性質(例えばサービスを識別する機能)からしてそのノード装置内に閉じればよい情報である。このため、個々の実装で決めた任意の番号を用いることができる。従来技術による実装では、「0番」が一般にエフェメラルポート機能のために予約されている。しかし、本発明によるユニファイドMultiplex機能はその機能を包含することができるため、「0番」を用いることも可能である。但し、ルータ等の中間ノードでユニファイド通信かどうかを判別して処理をしたいという要求に対応するためには、この番号を共用とすることが望ましい。
一般的に、レガシーの階層構造におけるクライアント装置は、エフェメラルポートを使用してサーバ装置と通信を行う。この場合、クライアント装置のポート情報やアドレスの設定方法には、ポート情報をOS が設定する一般型(U−Type)と、ポート情報をユーザが設定する例外型(V−Type)とがある。以下では、U−Type、V−Typeそれぞれの通信システムに本発明によるユニファイド階層構造を実装する場合の改良点を説明する。
U−Typeのレガシー通信システムの場合、クライアント装置では、ソケット(socket)は用意されるが、バインド(bind)は用いられない。このため、クライアント装置においてセッションが設定される際、ソース(source)(クライアント:client)のポートは明示的に指定されない。この場合、ソース(クライアント装置)側のポート及びアドレスの設定はOSによって行われる。つまりクライアント装置では、OSが未使用のポートを選択し、ソースポートに動的に割り当てている(エフェメラルポートの割り当て)。この後、クライアント装置は、宛先(destination)(サーバ:server)のアドレス、ポートを指定して接続(connect)を行う。
上述のU−Typeの通信システムに、本発明によるユニファイド階層構造を実装する場合について説明する。本発明によるクライアント装置11、12では、ユニファイド通信を行う際、セッションユニット32が、ポート情報として「LEGACY_COMPAT」を設定し、アドレス情報として、OSによって選定されたエフェメラルアドレス(ephemeral address)を設定する。したがって、U−Typeの通信システムの場合、レガシー通信を行うユーザアプリケーションを変更することなく、OS(カーネル)によるエフェメラルポートの選定機能をエフェメラルアドレスの選定機能に変更するだけで、既存の通信システムにユニファイド階層構造を実装することができる。
一方、V−Typeのレガシー通信システムの場合、クライアント装置は、例外的にエフェメラルポートを使用しない。この場合、クライアント装置におけるセッションの設定では、ソケットが用意され、バインド(bind)が用いられることでソースポートが明示的に設定される(同時にアドレスが指定される場合もある)。この後、クライアント装置におけるセッションの設定では、宛先のアドレス、ポートが指定され、サーバとの間の接続(connect)が行われる。しかしながら、この方法では、同じノード装置において、複数のユーザがが同じポートを指定した場合、エラーとなって利用することができない。
上述のV−Typeの通信システムに、本発明によるユニファイド階層構造を実装する場合について説明する。このタイプの通信システムには、ポート番号を用いてフィルタリングやルーティングを行うノード装置(中間ノード装置)が存在する場合がある。このため、V−typeの通信システムに本発明による通信システムを適用するためには、所定の制約条件を解決する必要がある。例えば、ソースポートをバインドする際に「LEGACY_COMPAT」を使うようにすれば、明示的にユニファイド通信を選択することが可能となる。その際、複数のプロセス(process)がポート番号情報として「LEGACY_COMPAT」を使用してもエラーにならないように上述のユニファイド階層構造を実装する必要がある。
一般的に、レガシーの階層構造におけるサーバ装置のポート情報やアドレスの通信方法には、サーバ装置の持つ任意のアドレスに対する接続を受付ける一般型(X−Type)と、サーバの持つ特定アドレスに対する接続のみを受付ける設定型(Y−Type)とがある。以下では、X−Type、Y−Typeそれぞれの通信システムに本発明によるユニファイド階層構造を実装する場合の改良点を説明する。
X−Typeのレガシー通信システムの場合、一般的に、サーバ装置側では不特定のIPアドレス(INADDR_ANY/IN6ADDR_ANY_INIT)待ちの場合がある。この場合、セッションの設定においては、ソケットが用意され、バインドが用いられることで明示的にサーバ装置の待ち受けのポートが指定される。ポートとしてサーバのサービスに応じたウェルノウン(well known)ポートが設定される(アプリケーションの引数や設定ファイルからバインドするポート番号情報が渡される)。この際、アドレスは誰からでもいい(INADDR_ANY/IN6ADDR_ANY_INIT)が指定される。この後に、サーバ装置は、listen、acceptを実行する。
上述のX−Typeの通信システムに、本発明によるユニファイド階層構造を実装する場合について説明する。バインドによってINADDR_ANY/IN6ADDR_ANY_INITが指定されている場合、サーバプロセス(Server process)が開始した後にアドレスが設定されても、サーバ装置10のアプリケーション(アプリケーションユニット21)はそのアドレス宛ての通信でも受信することができる。この場合、セッションユニット22は、ポート情報として「LEGACY_COMPAT」を使用すればよい。ユニファイド通信であれば、アドレスを明示的に指定することになるので、サーバのアプリケーションを使い方を含めて変更することなく使用することができる。
一方、Y−Typeのレガシー通信システムの場合、サーバ装置は特定のIPアドレスを待ち受ける。この場合、サーバ装置におけるセッションの設定では、ソケットが用意され、バインドが用いられて明示的にサーバの待ち受けのポートとアドレスとが指定される。ポートとしてサーバ装置のサービスに応じたウェルノウン(well known)ポートが設定される(アプリケーション層からバインドされたポート番号情報が渡される)。アドレスは特定のアドレス(アプリケーション層から)が設定される。この後に、サーバ装置は、listen、acceptを実行する。
上述のY−Typeの通信システムに、本発明によるユニファイド階層構造を実装する場合について説明する。この場合、サーバプロセスはアドレスが決定する前に開始することは不可能であるので、既存のサーバの起動方法は使えない。したがって、この場合には、アドレスが決まった後にプロセスの再起動を行う方法が利用されることになる。この場合、ポートは「LEGACY_COMPAT」が設定される。ユニファイド通信であれば、アドレスを明示的に指定することになるので、ユニファイド通信を使う場合には、アプリケーションで「LEGACY_COMPAT」を指定することになる。サーバにおけるカーネルの実装改良はクライアントでの実装と比べると、比較的軽く、簡単である。
ここで、RFC3041[T.Narten,R.Draves,“Privacy Extensions for Stateless Address Autoconfiguration in IPv6”(January 2001)](非特許文献2)には、プライバシー強化のためにテンポラリイアドレス(Temporary Address)というものが定義されている。これはクライアントの発信元アドレスに用い、そのアドレス利用に寿命があり、プライバシーを強化できる点等、上記のエフェメラルアドレスによく似た機能が提供されている。
テンポラリイアドレスは、“複数”のサービスや相手に対して用いられる。そのアドレス利用開始及び終了のタイミングの定義は明瞭になっていない。そのため、極端な場合には、その寿命が切れた際に、使用途中であってもそのアドレスが無効となり、セッションが突然切れてしまうかもしれない等という潜在的問題を抱えている。
一方、本発明においてセッション毎に設定されるエフェメラルアドレスは、“単一”のサービスや相手に対して設定されることが好ましい。エフェメラルアドレスの設定方法は、エフェメラルポートの方法を踏襲したもので、セッションの開始とともに設定され、セッションの終了時に廃棄される。したがって、エフェメラルアドレスは、使用途中にアドレスが無効になり、セッションが突然切れてしまう等ということは基本的に発生しない。
テンポラリイアドレスは、比較的長い寿命を想定したものであるため、結果としてアドレスの“使いまわし”を行っており、使い捨てに徹していない仕様のため、潜在的問題を抱えている。それに対し、エフェメラルアドレスは、“使い捨て”に徹しており、テンポラリイアドレスにあるような問題がない。よって、エフェメラルアドレスは、寿命も比較的短いものになり、そのためにアタックを受けにくく、セキュリティ的視点でも良い。
また、テンポラリイアドレスは、単純な乱数を用いて生成されるため、生成したアドレス間の関連性がないため、アドレス情報だけではどのノードが生成し、保持するものであるかがわからない。よって、テンポラリイアドレスは、Anonymity(匿名性)は提供されるものの、何らかの管理しようとした場合に管理することができず、結果として、扱い難い情報になっている。
それに対し、エフェメラルアドレスでは、ポート相当情報をアドレスの中に包含させる必要があり、その情報の包含のさせ方次第では、アドレス間に関連を持たせ、意味があるものにすることができる。つまり、そのアドレス生成規則を知るものにとっては、管理可能な情報になりえる。エフェメラルアドレスの場合、Anonymityだけではなく、Pseudonymity(同一であることが分かる匿名性)も提供可能なものになりえる。その面においても、エフェメラルアドレスは、良い方法であると考えられる。
次に、ユニファイド通信で用いるアドレスの型について説明する。ユニファイド通信で用いるアドレスの型は、クライアント側で用いるものとサーバ側で用いるものとに大きく分類される。サーバ側のアドレスはさらに2つの型に分けられ、全部で3つの型に大きく分類される。
まず、クライアント側のアドレス(Ephemeral Address)の型について述べる。このクライアント側のアドレスの型は、既存のレガシー通信で用いられている、実際に通信を開始する際にOSから自動的にポート番号を割り振ってもらうエフェメラルポートの機能を、ポート情報からアドレス情報へと発展させることによって、生まれたアドレスの型である。
このアドレスの型では、セッション毎に基本的に新しくなり、恒久的に用いないことによって、セキュリティが向上するのに加え、プライバシーへも配慮することができる。このアドレスの型は、既存のクライアントプログラムを全く変更することなく用いることができる。
次に、サーバ側の第1のアドレス[(Client) Specific Service Address]の型について述べる。このサーバ側のアドレスの型は、ある通信相手からの接続のためだけ等の特定の条件のついたサービスを提供するのに用いるアドレスの型である。このアドレスの型は、ユニファイド通信で新規に導入する型のアドレスであり、その全特性を利用するには通信スタイルとしても新しいものを用いることになる。
続いて、サーバ側の第2のアドレス(Generic Service Address)の型について述べる。このサーバ側のアドレスの型は、通信相手等を特定せずに不特定の相手に対してサービスを提供する場合に用いるアドレスの型である。
このアドレスの型は、従来のレガシー通信での発想や使い方を継承したもので、サービスを示す指標がポート情報からアドレス情報へ移行したことによって生まれたものである。このアドレスの型は、既存のサーバプログラムを全く変更することなく用いることができる。
本発明による通信システムでは、ポート情報に応じてレガシー通信とユニファイド通信を選択する機能を採用することも可能である。この場合、通信システム内に従来技術を利用したノード装置が混在していても、本発明によるノード装置は、セッションを識別することができる。すなわち、従来技術による通信システムの構成を変えることなく、本発明によるノード装置、あるいは通信システムを従来の通信システムに導入することができる。
次に、上述したレガシー通信とユニファイド通信との共存について述べる。尚、サーバ装置10が提供するサービスを「Ax」、クライアント装置11、12のアプリケーションを「Bx」、サーバ装置10のレガシー通信におけるポートを「ax」、アドレスを「bx」、サーバ装置10のユニファイド通信におけるアドレスを「Cx」、クライアント装置11、12のレガシー通信におけるポートを「cx」、アドレスを「dx」、サーバ装置10のユニファイド通信におけるアドレスを「Dx」とする。xは任意の整数である。
又、以下では、多重化通信の最小構成となる2つのセッションを1つのサーバ上で実現する形態を、4つのタイプ(タイプA、B、C、D)に分類して、本発明による通信システムにおけるレガシー通信とユニファイド通信の共存について説明する。
タイプA(Type A):サーバ装置10が1つのサービスA1,A2を提供し、クライアント装置11(Client 11)が2つのアプリケーションB1,B2から1つのサービスA1,A2にアクセスする場合。
タイプB(Type B):サーバ装置10が2つのサービスA3,A4を提供し、クライアント装置12(Client 12)が2つのアプリケーションB3,B4から2つのサービスA3,A4にアクセスする場合。
タイプC(Type C):サーバ装置10が1つのサービスA5,A6を提供し、クライアント装置11、12(Client 11,Client 12)の各々が1つのアプリケーションB5,B6から1つのサービスA5,A6にアクセスする場合。
タイプD(Type D):サーバ装置10が2つのサービスA7,A8を提供し、クライアント装置11、12(Client 11,Client 12)の各々が1つのアプリケーションB7,B8から2つのサービスA7,A8の一方にアクセスする場合。
図3A、図4A、図5A、図6Aは、サーバ装置10及びクライアント装置11、12がレガシー通信(第2通信モード)によってセッションを設定する場合のセッション及び階層構造の一例を示す模式図である。この場合、サーバ装置10及びクライアント装置11、12は従来技術と同様な動作によりセッションを識別する。図3B、図4B、図5B、図6Bは、図3A、図4A、図5A、図6Aに示すセッションを特定する情報を示す図である。
図3Aは、タイプAにおいて、サーバ装置10及びクライアント装置11が共にレガシー通信を行う場合のセッション及び階層構造を示す模式図である。この場合、サービスA1とアプリケーションB2とのセッションは、図3Bに示すように、宛先ポート「a1」、宛先アドレス「b1」、送信元ポート「c2」、送信元アドレス「d1」で特定される。また、サービスA2とアプリケーションB1とのセッションは、図3Bに示すように、宛先ポート「a1」、宛先アドレス「b1」、送信元ポート「c1」、送信元アドレス「d1」で特定される。
図4Aは、タイプBにおいて、サーバ装置10及びクライアント装置11が共にレガシー通信を行う場合のセッション及び階層構造を示す模式図である。この場合、サービスA3とアプリケーションB4とのセッションは、図4Bに示すように、宛先ポート「a2」、宛先アドレス「b2」、送信元ポート「c4」、送信元アドレス「d2」で特定される。また、サービスA4とアプリケーションB3とのセッションは、図4Bに示すように、宛先ポート「a3」、宛先アドレス「b2」、送信元ポート「c3」、送信元アドレス「d2」で特定される。
図5Aは、タイプCにおいて、サーバ装置10及びクライアント装置11が共にレガシー通信を行う場合のセッション及び階層構造を示す模式図である。この場合、サービスA5とアプリケーションB6とのセッションは、図5Bに示すように、宛先ポート「a4」、宛先アドレス「b3」、送信元ポート「c6」、送信元アドレス「d4」で特定される。また、サービスA6とアプリケーションB5とのセッションは、図5Bに示すように、宛先ポート「a4」、宛先アドレス「b3」、送信元ポート「c5」、送信元アドレス「d3」で特定される。
図6Aは、タイプDにおいて、サーバ装置10及びクライアント装置11が共にレガシー通信を行う場合のセッション及び階層構造を示す模式図である。この場合、サービスA7とアプリケーションB8とのセッションは、図6Bに示すように、宛先ポート「a5」、宛先アドレス「b4」、送信元ポート「c8」、送信元アドレス「d6」で特定される。また、サービスA8とアプリケーションB7とのセッションは、図6Bに示すように、宛先ポート「a6」、宛先アドレス「b4」、送信元ポート「c7」、送信元アドレス「d5」で特定される。
(タイプAにおけるレガシー通信とユニファイド通信の共存)
図7A、図8A、図9A、図10Aは、タイプAにおけるセッションの設定を、レガシー通信の階層構造と本発明の一実施例によるユニファイド通信の階層構造とを組み合わせて行う場合の一例を示す図である。図7B、図8B、図9B、図10Bは、図7A、図8A、図9A、図10Aに示すセッションを特定する情報を示す図である。
図7Aは、タイプAにおいて、サーバ装置10及びクライアント装置11が共にレガシー通信(第2通信モード)によってセッションを設定する場合(タイプA−LL)のセッション及び階層構造を示す模式図である。すなわち、タイプA−LLは、レガシーの階層構造のサーバ装置10が1つのサービスA1,A2を提供し、レガシーの階層構造のクライアント装置11(Client 11)が2つのアプリケーションB1,B2からアクセスする場合を示す。
タイプA−LLの場合、サービスA1とアプリケーションB2とのセッションA1B2は、図7Bに示すように、宛先ポート「a1」、宛先アドレス「b1」、送信元ポート「c2」、送信元アドレス「d1」で特定される。また、サービスA2とアプリケーションB1とのセッションA2B1は、図7Bに示すように、宛先ポート「a1」、宛先アドレス「b1」、送信元ポート「c1」、送信元アドレス「d1」で特定される。
図8Aは、タイプAにおいて、サーバ装置10がレガシー通信(第2通信モード)によってセッションを設定し、クライアント装置11がユニファイド通信(第1通信モード)によってセッションを設定する場合(タイプA−LU)のセッション及び階層構造を示す模式図である。すなわち、タイプA−LUは、レガシーの階層構造のサーバ装置が1つのサービスA1,A2を提供し、ユニファイドの階層構造のクライアント装置10(Client 11)が2つのアプリケーションB1,B2からアクセスする場合を示す。
本一例のクライアント装置11は、セッション毎(プログラムやクライアントユーザ毎)に異なるアドレスD1、D2(エフェメラルアドレス)を指定する。この場合、サーバ装置10のサービスA1、A2は、それぞれ異なるアドレスD2、D1を宛先アドレスとしてプログラムB2、B1にアクセスする。
タイプA−LUにおけるサービスA1とアプリケーションB2とのセッションについて説明する。クライアント装置11は、送信元ポートとして「LEGACY_COMPAT」、送信元アドレスとしてエフェメラルアドレス「D2」、宛先ポートとして「a1」、宛先アドレスとして「b1」を指定したデータをサーバ装置10に送信する。サーバ装置10は、宛先ポート「a1」、宛先アドレス「b1」を参照してデータの宛先のサービスA1、A2を特定する。又、サーバ装置10は、送信元ポートに「LEGACY_COMPAT」が指定されているため、送信元ポートを利用せずに送信元アドレス「D2」のみでデータの送信元のアプリケーションB2を特定する。一方、サーバ装置10は、送信元ポートとして「a1」、送信元アドレスとして「b1」、宛先ポートとして「LEGACY_COMPAT」、宛先アドレスとして「D2」を指定したデータをクライアント装置11に送信する。クライアント装置11は、宛先ポートに「LEGACY_COMPAT」が指定されているため、宛先ポートを利用せずに宛先アドレス「D2」のみでデータの宛先のアプリケーションB2を特定する。又、クライアント装置11は、送信元ポート「a1」、送信元アドレス「b1」を参照してデータの送信元のサービスA1、A2を特定する。すなわち、タイプA−LUにおいて、サービスA1とアプリケーションB2とのセッションは、図8Bに示すように、宛先ポート「a1」、宛先アドレス「b1」、送信元アドレス「D2」で特定される。同様に、タイプA−LUにおいて、サービスA2とアプリケーションB1とのセッションは、図8Bに示すように、宛先ポート「a1」、宛先アドレス「b1」、送信元アドレス「D1」で特定される。
図9Aは、タイプAにおいて、サーバ装置10がユニファイド通信(第1通信モード)によってセッションを設定し、クライアント装置11がレガシー通信(第2通信モード)によってセッションを設定する場合(タイプA−UL)のセッション及び階層構造を示す模式図である。すなわち、タイプA−ULは、ユニファイドの階層構造のサーバ装置10が1つのサービスA1,A2を提供し、レガシーの階層構造のクライアント装置11(Client 11)が2つのアプリケーションB1,B2からアクセスする場合を示す。尚、タイプA−LUとタイプA−ULは実質的に同じ形態である。
本一例のサーバ装置10は、セッション毎に異なるアドレスC1、C2(Specific Service Address)を指定する。この場合、クライアント装置11のアプリケーションB1、B2はそれぞれ異なるアドレスC2、C1を宛先アドレスとしてサービスA2、A1にアクセスする。
タイプA−ULにおけるサービスA1とアプリケーションB2とのセッションについて説明する。クライアント装置11は、送信元ポートとして「c2」、送信元アドレスとして「d1」、宛先ポートとして「LEGACY_COMPAT」、宛先アドレスとして「C1」を指定したデータをサーバ装置10に送信する。サーバ装置10は、宛先ポートに「LEGACY_COMPAT」が指定されているため、宛先ポートを利用せずに宛先アドレス「C1」のみでデータの宛先のサービスA1を特定する。又、サーバ装置10は、送信元ポート「c2」、送信元アドレス「d1」を参照して送信元のサービスB2を特定する。一方、サーバ装置10は、送信元ポートとして「LEGACY_COMPAT」、送信元アドレスとして「C1」、宛先ポートとして「d1」、宛先アドレスとして「c2」を指定したデータをクライアント装置11に送信する。クライアント装置11は、宛先ポート「c2」、宛先アドレス「d1」を参照してデータの宛先のアプリケーションB2を特定する。又、クライアント装置11は、送信元ポートに「LEGACY_COMPAT」が指定されているため、送信元ポートを利用せずに送信元アドレス「C1」のみでデータの送信元のサービスA1を特定する。すなわち、タイプA−ULにおいて、サービスA1とアプリケーションB2とのセッションは、図9Bに示すように、宛先アドレス「C1」、送信元ポート「c2」、送信元アドレス「d1」で特定される。同様に、タイプA−ULにおいて、サービスA2とアプリケーションB1とのセッションは、図9Bに示すように、宛先アドレス「C2」、送信元ポート「c1」、送信元アドレス「d1」で特定される。
図10Aは、タイプAにおいて、サーバ装置10及びクライアント装置11が共にユニファイド通信(第1通信モード)によってセッションを設定する場合(タイプA−UU)のセッション及び階層構造を示す模式図である。すなわち、タイプA−UUは、ユニファイドの階層構造のサーバ装置10が1つのサービスA1,A2を提供し、ユニファイドの階層構造のクライアント装置11(Client 11)が2つのアプリケーションB1,B2からアクセスする場合を示す。
本一例のサーバ装置10は、セッション毎に異なるアドレスC1、C2(Specific Service Address)を指定する。この場合、クライアント装置11のアプリケーションB1、B2はそれぞれ異なるアドレスC2、C1を宛先アドレスとしてサービスA2、A2にアクセスする。又、クライアント装置11は、セッション毎(プログラムやクライアントユーザ毎)に異なるアドレスD1、D2(エフェメラルアドレス)を指定する。この場合、サーバ装置10のサービスA1、A2は、それぞれ異なるアドレスD2、D1を宛先アドレスとしてプログラムB2、B1にアクセスする。
タイプA−UUにおけるサービスA1とアプリケーションB2とのセッションについて説明する。クライアント装置11は、送信元ポートとして「LEGACY_COMPAT」、送信元アドレスとしてエフェメラルアドレス「D2」、宛先ポートとして「LEGACY_COMPAT」、宛先アドレスとして「C1」を指定したデータをサーバ装置10に送信する。サーバ装置10は、宛先ポートに「LEGACY_COMPAT」が指定されているため、宛先ポートを利用せずに宛先アドレス「C1」のみでデータの宛先のサービスA1を特定する。又、サーバ装置10は、送信元ポートに「LEGACY_COMPAT」が指定されているため、送信元ポートを利用せずに送信元アドレス「D2」のみでデータの送信元のアプリケーションB2を特定する。一方、サーバ装置10は、送信元ポートとして「LEGACY_COMPAT」、送信元アドレスとして「C1」、宛先ポートとして「LEGACY_COMPAT」、宛先アドレスとして「D2」を指定したデータをクライアント装置11に送信する。クライアント装置11は、宛先ポートに「LEGACY_COMPAT」が指定されているため、宛先ポートを利用せずに宛先アドレス「D2」のみでデータの宛先のアプリケーションB2を特定する。又、クライアント装置11は、送信元ポートに「LEGACY_COMPAT」が指定されているため、送信元ポートを利用せずに送信元アドレス「C1」のみでデータの送信元のサービスA1を特定する。すなわち、タイプA−UUにおいて、サービスA1とアプリケーションB2とのセッションは、図10Bに示すように、宛先アドレス「C1」、送信元アドレス「D2」で特定される。同様に、タイプA−UUにおいて、サービスA2とアプリケーションB1とのセッションは、図10Bに示すように、宛先アドレス「C2」、送信元アドレス「D1」で特定される。
(タイプBにおけるレガシー通信とユニファイド通信の共存)
図11A、図12A、図13A、図14Aは、タイプBにおけるセッションの設定を、レガシー通信の階層構造と本発明の一実施例によるユニファイド通信の階層構造とを組み合わせて行う場合の一例を示す図である。図11B、図12B、図13B、図14Bは、図11A、図12A、図13A、図14Aに示すセッションを特定する情報を示す図である。
図11Aは、タイプBにおいて、サーバ装置10及びクライアント装置12が共にレガシー通信(第2通信モード)によってセッションを設定する場合(タイプB−LL)のセッション及び階層構造を示す模式図である。すなわち、タイプB−LLは、レガシーの階層構造のサーバ装置10が2つのサービスA3,A4を提供し、レガシーの階層構造のクライアント装置12(Client 12)が2つのアプリケーションB3,B4からアクセスする場合を示す。
タイプB−LLの場合、サービスA3とアプリケーションB4とのセッションは、図11Bに示すように、宛先ポート「a2」、宛先アドレス「b2」、送信元ポート「c4」、送信元アドレス「d2」で特定される。また、サービスA4とアプリケーションB3とのセッションは、図11Bに示すように、宛先ポート「a3」、宛先アドレス「b2」、送信元ポート「c3」、送信元アドレス「d2」で特定される。
図12Aは、タイプAにおいて、サーバ装置10がレガシー通信(第2通信モード)によってセッションを設定し、クライアント装置12がユニファイド通信(第1通信モード)によってセッションを設定する場合(タイプA−LU)のセッション及び階層構造を示す模式図である。すなわち、タイプB−LUは、レガシーの階層構造のサーバ装置10が2つのサービスA3,A4を提供し、ユニファイドの階層構造のクライアント装置12(Client 12)が2つのアプリケーションB3,B4からアクセスする場合を示す。
本一例のクライアント装置11は、セッション毎(プログラムやクライアントユーザ毎)に異なるアドレスD3、D4(エフェメラルアドレス)を指定する。この場合、サーバ装置10のサービスA3、A4は、それぞれ異なるアドレスD4、D3を宛先アドレスとしてプログラムB4、B3にアクセスする。
タイプB−LUにおけるサービスA3とアプリケーションB4とのセッションについて説明する。クライアント装置12は、送信元ポートとして「LEGACY_COMPAT」、送信元アドレスとしてエフェメラルアドレス「D4」、宛先ポートとして「a2」、宛先アドレスとして「b2」を指定したデータをサーバ装置10に送信する。サーバ装置10は、宛先ポート「a2」、宛先アドレス「b2」を参照してデータの宛先のサービスA3を特定する。又、サーバ装置10は、送信元ポートに「LEGACY_COMPAT」が指定されているため、送信元ポートを利用せずに送信元アドレス「D3」のみでデータの送信元のアプリケーションB3を特定する。一方、サーバ装置10は、送信元ポートとして「a2」、送信元アドレスとして「b2」、宛先ポートとして「LEGACY_COMPAT」、宛先アドレスとして「D3」を指定したデータをクライアント装置12に送信する。クライアント装置12は、宛先ポートに「LEGACY_COMPAT」が指定されているため、宛先ポートを利用せずに宛先アドレス「D3」のみでデータの宛先のアプリケーションB3を特定する。又、クライアント装置12は、送信元ポート「a2」、送信元アドレス「b2」を参照してデータの送信元のサービスA3を特定する。すなわち、タイプB−LUにおいて、サービスA3とアプリケーションB4とのセッションは、図12Bに示すように、宛先ポート「a2」、宛先アドレス「b2」、送信元アドレス「D4」で特定される。同様に、タイプB−LUにおいて、サービスA4とアプリケーションB3とのセッションは、図12Bに示すように、宛先ポート「a3」、宛先アドレス「b2」、送信元アドレス「D3」で特定される。
図13Aは、タイプBにおいて、サーバ装置10がユニファイド通信(第1通信モード)によってセッションを設定し、クライアント装置12がレガシー通信(第2通信モード)によってセッションを設定する場合(タイプB−UL)のセッション及び階層構造を示す模式図である。すなわち、タイプB−ULは、ユニファイドの階層構造のサーバ装置10が2つのサービスA3,A4を提供し、レガシーの階層構造のクライアント装置12(Client 12)が2つのアプリケーションB3,B4からアクセスする場合を示す。尚、タイプB−LUとタイプB−ULは実質的に同じ形態である。
本一例のサーバ装置10は、サービス毎(あるいはクライアントユーザ毎)に異なるアドレスC3、C4を指定する。
タイプB−ULにおけるサービスA3とアプリケーションB4とのセッションについて説明する。クライアント装置12は、送信元ポートとして「c4」、送信元アドレスとして「d2」、宛先ポートとして「LEGACY_COMPAT」、宛先アドレスとして「C3」を指定したデータをサーバ装置10に送信する。サーバ装置10は、宛先ポートに「LEGACY_COMPAT」が指定されているため、宛先ポートを利用せずに宛先アドレス「C3」のみでデータの宛先のサービスA3を特定する。又、サーバ装置10は、送信元ポート「c4」、送信元アドレス「d2」を参照して送信元のサービスB4を特定する。一方、サーバ装置10は、送信元ポートとして「LEGACY_COMPAT」、送信元アドレスとして「C3」、宛先ポートとして「d2」、宛先アドレスとして「c4」を指定したデータをクライアント装置12に送信する。クライアント装置12は、宛先ポート「c4」、宛先アドレス「d2」を参照してデータの宛先のアプリケーションB4を特定する。又、クライアント装置12は、送信元ポートに「LEGACY_COMPAT」が指定されているため、送信元ポートを利用せずに送信元アドレス「C3」のみでデータの送信元のサービスA3を特定する。すなわち、タイプB−ULにおいて、サービスA3とアプリケーションB4とのセッションは、図13Bに示すように、宛先アドレス「C3」、送信元ポート「c4」、送信元アドレス「d2」で特定される。同様に、タイプB−ULにおいて、サービスA4とアプリケーションB3とのセッションは、図13Bに示すように、宛先アドレス「C4」、送信元ポート「c3」、送信元アドレス「d2」で特定される。
図14Aは、タイプBにおいて、サーバ装置10及びクライアント装置12が共にユニファイド通信(第1通信モード)によってセッションを設定する場合(タイプB−UU)のセッション及び階層構造を示す模式図である。すなわち、タイプB−UUは、ユニファイドの階層構造のサーバ装置10が2つのサービスA3,A4を提供し、ユニファイドの階層構造のクライアント装置12(Client 12)が2つのアプリケーションB3,B4からアクセスする場合を示している。
本一例のサーバ装置10は、サービス毎(あるいはクライアントユーザ毎)に異なるアドレスC5、C6を指定する。又、クライアント装置12は、セッション毎(プログラムやクライアントユーザ毎)に異なるアドレスD3、D4(エフェメレラルアドレス)を指定する。
タイプB−UUにおけるサービスA3とアプリケーションB4とのセッションについて説明する。クライアント装置12は、送信元ポートとして「LEGACY_COMPAT」、送信元アドレスとしてエフェメラルアドレス「D4」、宛先ポートとして「LEGACY_COMPAT」、宛先アドレスとして「C3」を指定したデータをサーバ装置10に送信する。サーバ装置10は、宛先ポートに「LEGACY_COMPAT」が指定されているため、宛先ポートを利用せずに宛先アドレス「C3」のみでデータの宛先のサービスA3を特定する。又、サーバ装置10は、送信元ポートに「LEGACY_COMPAT」が指定されているため、送信元ポートを利用せずに送信元アドレス「D4」のみでデータの送信元のアプリケーションB4を特定する。一方、サーバ装置10は、送信元ポートとして「LEGACY_COMPAT」、送信元アドレスとして「C3」、宛先ポートとして「LEGACY_COMPAT」、宛先アドレスとして「D4」を指定したデータをクライアント装置12に送信する。クライアント装置12は、宛先ポートに「LEGACY_COMPAT」が指定されているため、宛先ポートを利用せずに宛先アドレス「D4」のみでデータの宛先のアプリケーションB4を特定する。又、クライアント装置11は、送信元ポートに「LEGACY_COMPAT」が指定されているため、送信元ポートを利用せずに送信元アドレス「C3」のみでデータの送信元のサービスA3を特定する。すなわち、サービスA3とアプリケーションB4とのセッションは、図14Bに示すように、宛先アドレス「C3」、送信元アドレス「D4」で特定される。同様に、タイプB−UUにおいて、サービスA4とアプリケーションB3とのセッションは、図14Bに示すように、宛先アドレス「C4」、送信元アドレス「D3」で特定される。
(タイプCにおけるレガシー通信とユニファイド通信の共存)
図15A〜図22Aは、タイプCにおけるセッションの設定を、レガシー通信の階層構造と本発明の一実施例によるユニファイド通信の階層構造とを組み合わせて行う場合の一例を示す図である。図15B〜図22Bは、図15A〜図22Aに示すセッションを特定する情報を示す図である。
タイプCは、タイプAと同様に、サーバ装置10が提供する1つのサービスが、複数(少なくとも1つ)のアプリケーションからアクセスされる形態である。このため、タイプCにおけるサーバ装置10とクライアント装置11、12のそれぞれとのセッションの設定動作は、タイプAと同様である。以下ではタイプCにおけるセッションを特定する要素のみをタイプ別で説明する。
図15Aは、タイプCにおいて、サーバ装置10及びクライアント装置111、12の全てがレガシー通信(第2通信モード)によってセッションを設定する場合(タイプC−LLL)のセッション及び階層構造を示す模式図である。すなわち、タイプC−LLLは、レガシーの階層構造のサーバ装置が1つのサービスA5,A6を提供し、レガシーの階層構造のクライアント装置11、12(Client 11,Client 12)各々が1つのアプリケーションB5,B6からアクセスする場合を示す。
タイプC−LLLの場合、サービスA5とアプリケーションB6とのセッションは、図15Bに示すように、宛先ポート「a4」、宛先アドレス「b3」、送信元ポート「c6」、送信元アドレス「d4」で特定される。また、サービスA6とアプリケーションB5とのセッションは、図15Bに示すように、宛先ポート「a4」、宛先アドレス「b3」、送信元ポート「c5」、送信元アドレス「d3」で特定される。
図16Aは、タイプCにおいて、サーバ装置10がレガシー通信(第2通信モード)によってセッションを設定し、クライアント装置11、12が共にユニファイド通信(第1通信モード)によってセッションを設定する場合(タイプC−LUU)のセッション及び階層構造を示す模式図である。すなわち、タイプC−LUUは、レガシーの階層構造のサーバ装置10が1つのサービスA5,A6を提供し、ユニファイドの階層構造のクライアント装置11、12(Client 11,Client 12)の各々が1つのアプリケーションB5,B6からアクセスする場合を示す。
タイプC−LUUの場合、サービスA5とアプリケーションB6とのセッションは、図16Bに示すように、宛先ポート「a4」、宛先アドレス「b3」、送信元アドレス「D6」で特定される。また、サービスA6とアプリケーションB5とのセッションは、図16Bに示すように、宛先ポート「a4」、宛先アドレス「b3」、送信元アドレス「D5」で特定される。
図17Aは、タイプCにおいて、サーバ装置10がユニファイド通信(第1通信モード)によってセッションを設定し、クライアント装置11、12が共にレガシー通信(第2通信モード)によってセッションを設定する場合(タイプC−ULL)のセッション及び階層構造を示す模式図である。すなわち、タイプC−ULLは、ユニファイドの階層構造のサーバ装置10が1つのサービスA5,A6を提供し、レガシーの階層構造のクライアント装置11、12(Client 1,Client 2)の各々が1つのアプリケーションB5,B6からアクセスする場合を示す。
本一例のサーバ装置10は、セッション毎に異なるアドレスC5、C6(Specific Service Address)を指定する。この場合、クライアント装置11のアプリケーションB5、クライアント装置12のB6は、それぞれ異なるアドレスC5、C6を宛先アドレスとしてアクセスする。
タイプC−ULLの場合、サービスA5とアプリケーションB6とのセッションは、図17Bに示すように、宛先アドレス「C5」、送信元ポート「c6」、送信元アドレス「d4」で特定される。また、サービスA6とアプリケーションB5とのセッションは、図17Bに示すように、宛先アドレス「C6」、送信元ポート「c5」、送信元アドレス「d3」で特定される。
図18Aは、タイプCにおいて、サーバ装置10及びクライアント装置11、12が全てユニファイド通信(第1通信モード)によってセッションを設定する場合(タイプC−UUU)のセッション及び階層構造を示す模式図である。すなわち、タイプC−UUUは、ユニファイドの階層構造のサーバ装置10が1つのサービスA5,A6を提供し、ユニファイドの階層構造のクライアント装置11(Client 11,Client 12)各々が1つのアプリケーションB5,B6からアクセスする場合を示す。
本一例のサーバ装置10は、セッション毎に異なるアドレスC5、C6(Specific Service Address)を指定する。この場合、クライアント装置11のアプリケーションB5、クライアント装置12のB6は、それぞれ異なるアドレスC6、C5を宛先アドレスとしてサービスA6、A5にアクセスする。
タイプC−UUUの場合、サービスA5とアプリケーションB6とのセッションは、図18Bに示すように、宛先アドレス「C5」、送信元アドレス「D6」で特定される。また、サービスA6とアプリケーションB5とのセッションは、図18Bに示すように、宛先アドレス「C6」、送信元アドレス「D5」で特定される。
図19Aは、タイプCにおいて、サーバ装置10とクライアント装置11がレガシー通信(第2通信モード)によってセッションを設定し、クライアント装置12がユニファイド通信(第1通信モード)によってセッションを設定する場合(タイプC−LLU)のセッション及び階層構造を示す模式図である。すなわち、タイプC−LLUは、レガシーの階層構造のサーバ装置10が1つのサービスA5,A6を提供し、レガシーの階層構造のクライアント装置11(Client 11)及びユニファイドの階層構造のクライアント装置12(Client 12)の各々が1つのアプリケーションB5,B6からアクセスする場合を示す。
タイプC−LLUの場合、サービスA5とアプリケーションB6とのセッションは、図19Bに示すように、宛先ポート「a4」、宛先アドレス「b3」、送信元アドレス「D6」で特定される。また、サービスA6とアプリケーションB5とのセッションは、図19Bに示すように、宛先ポート「a4」、宛先アドレス「b3」、送信元ポート「c5」、送信元アドレス「d3」で特定される。
図20Aは、タイプCにおいて、サーバ装置10とクライアント装置12がレガシー通信(第2通信モード)によってセッションを設定し、クライアント装置11がユニファイド通信(第1通信モード)によってセッションを設定する場合(タイプC−LUL)のセッション及び階層構造を示す模式図である。すなわち、タイプC−LULは、レガシーの階層構造のサーバ装置10が1つのサービスA5,A6を提供し、ユニファイドの階層構造のクライアント装置11(Client 11)及びレガシーの階層構造のクライアント装置(Client 12)の各々が1つのアプリケーションB5,B6からアクセスする場合を示している。尚、タイプC−LLUとタイプC−LULは実質的に同じ形態である。
タイプC−LULの場合、サービスA5とアプリケーションB6とのセッションは、図20Bに示すように、宛先ポート「a4」、宛先アドレス「b3」、送信元ポート「c6」、送信元アドレス「d4」で特定される。また、サービスA6とアプリケーションB5とのセッションは、図20Bに示すように、宛先ポート「a4」、宛先アドレス「b3」、送信元アドレス「D5」で特定される。
図21Aは、タイプCにおいて、サーバ装置10とクライアント装置12がユニファイド通信(第1通信モード)によってセッションを設定し、クライアント装置11がレガシー通信(第2通信モード)によってセッションを設定する場合(タイプC−ULU)のセッション及び階層構造を示す模式図である。すなわち、タイプC−ULUは、ユニファイドの階層構造のサーバ装置10が1つのサービスA5,A6を提供し、レガシーの階層構造のクライアント装置11(Client 11)及びユニファイドの階層構造のクライアント装置12(Client 12)の各々が1つのアプリケーションB5,B6からアクセスする場合を示す。
本一例のサーバ装置10は、セッション毎に異なるアドレスC5、C6(Specific Service Address)を指定する。この場合、クライアント装置11のアプリケーションB5、クライアント装置12のB6は、それぞれ異なるアドレスC6、C5を宛先アドレスとしてサービスA6、A5にアクセスする。
タイプC−ULUの場合、サービスA5とアプリケーションB6とのセッションは、図21Aに示すように、宛先アドレス「C5」、送信元アドレス「D6」で特定される。また、サービスA6とアプリケーションB5とのセッションは、図21Bに示すように、宛先アドレス「C6」、送信元ポート「c5」、送信元アドレス「d3」で特定される。
図22Aは、タイプCにおいて、サーバ装置10とクライアント装置11がユニファイド通信(第1通信モード)によってセッションを設定し、クライアント装置12がレガシー通信(第2通信モード)によってセッションを設定する場合(タイプC−UUL)のセッション及び階層構造を示す模式図である。すなわち、タイプC−UULは、ユニファイドの階層構造のサーバ装置10が1つのサービスA5,A6を提供し、ユニファイドの階層構造のクライアント装置11(Client 11)及びレガシーの階層構造のクライアント装置12(Client 12)の各々が1つのアプリケーションB5,B6からアクセスする場合を示している。尚、タイプC−ULUとタイプC−UULは実質的に同じ形態である。
タイプC−UULの場合、サービスA5とアプリケーションB6とのセッションは、図22Bに示すように、宛先アドレス「C5」、送信元ポート「c6」、送信元アドレス「d4」で特定される。また、サービスA6とアプリケーションB5とのセッションは、図22Bに示すように、宛先アドレス「C6」、送信元アドレス「D5」で特定される。
(タイプDにおけるレガシー通信とユニファイド通信の共存)
図23A〜図30Aは、タイプCにおけるセッションの設定を、レガシー通信の階層構造と本発明の一実施例によるユニファイド通信の階層構造とを組み合わせて行う場合の一例を示す図である。図23B〜図30Bは、図15A〜図22Aに示すセッションを特定する情報を示す図である。
タイプDは、タイプBと同様に、サーバ装置10が提供する複数(ここでは一例として2つ)のサービスが、複数(少なくとも1つ)のアプリケーションからアクセスされる形態である。このため、タイプDにおけるサーバ装置10とクライアント装置11、12のそれぞれとのセッションの設定動作は、タイプBと同様である。以下ではタイプDにおけるセッションを特定する要素のみをタイプ別で説明する。
図23Aは、タイプDにおいて、サーバ装置10及びクライアント装置111、12の全てがレガシー通信(第2通信モード)によってセッションを設定する場合(タイプD−LLL)のセッション及び階層構造を示す模式図である。すなわち、タイプD−LLLは、レガシーの階層構造のサーバ装置10が2つのサービスA7,A8を提供し、レガシーの階層構造のクライアント装置11、12(Client 11,Client 12)の各々が1つのアプリケーションB7,B8からアクセスする場合を示す。
タイプD−LLLの場合、サービスA7とアプリケーションB8とのセッションは、図23Bに示すように、宛先ポート「a5」、宛先アドレス「b4」、送信元ポート「c8」、送信元アドレス「d6」で特定される。また、サービスA8とアプリケーションB7とのセッションは、図23Bに示すように、宛先ポート「a6」、宛先アドレス「b4」、送信元ポート「c7」、送信元アドレス「d5」で特定される。
図24Aは、タイプDにおいて、サーバ装置10がレガシー通信(第2通信モード)によってセッションを設定し、クライアント装置11、12が共にユニファイド通信(第1通信モード)によってセッションを設定する場合(タイプD−LUU)のセッション及び階層構造を示す模式図である。すなわち、タイプD−LUUは、レガシーの階層構造のサーバ装置10が2つのサービスA7,A8を提供し、ユニファイドの階層構造のクライアント装置11、12(Client 1,Client 2)の各々が1つのアプリケーションB7,B8からアクセスする場合を示している。
タイプD−LUUの場合、サービスA7とアプリケーションB8とのセッションは、図24Bに示すように、宛先ポート「a5」、宛先アドレス「b4」、送信元アドレス「D8」で特定される。また、サービスA8とアプリケーションB7とのセッションは、図24Bに示すように、宛先ポート「a6」、宛先アドレス「b4」、送信元アドレス「D7」で特定される。
図25Aは、タイプDにおいて、サーバ装置10がユニファイド通信(第1通信モード)によってセッションを設定し、クライアント装置11、12が共にレガシー通信(第2通信モード)によってセッションを設定する場合(タイプD−ULL)のセッション及び階層構造を示す模式図である。すなわち、タイプD−ULLは、ユニファイドの階層構造のサーバ装置10が2つのサービスA7,A8を提供し、レガシーの階層構造のクライアント装置11、12(Client 11,Client 12)の各々が1つのアプリケーションB7,B8からアクセスする場合を示す。
本一例のサーバ装置10は、サービス毎(あるいはクライアントユーザ毎)に異なるアドレスC7、C8を指定する。
タイプD−ULLの場合、サービスA7とアプリケーションB8とのセッションは、図25Bに示すように、宛先アドレス「C7」、送信元ポート「c8」、送信元アドレス「d6」で特定される。また、サービスA8とアプリケーションB7とのセッションは、図25Bに示すように、宛先アドレス「C8」、送信元ポート「c7」、送信元アドレス「d5」で特定される。
図26Aは、タイプDにおいて、サーバ装置10及びクライアント装置11、12が全てユニファイド通信(第1通信モード)によってセッションを設定する場合(タイプD−UUU)のセッション及び階層構造を示す模式図である。すなわち、タイプD−UUUは、ユニファイドの階層構造のサーバ装置10が2つのサービスA7,A8を提供し、ユニファイドの階層構造のクライアント装置11(Client 11,Client 12)の各々が1つのアプリケーションB7,B8からアクセスする場合を示している。
本一例のサーバ装置10は、サービス毎(あるいはクライアントユーザ毎)に異なるアドレスC3、C4を指定する。
タイプD−UUUの場合、サービスA7とアプリケーションB8とのセッションは、図26Bに示すように、宛先アドレス「C7」、送信元アドレス「D8」で特定される。また、サービスA8とアプリケーションB7とのセッションは、図26Bに示すように、宛先アドレス「C8」、送信元アドレス「D7」で特定される。
図27Aは、タイプDにおいて、サーバ装置10とクライアント装置11がレガシー通信(第2通信モード)によってセッションを設定し、クライアント装置12がユニファイド通信(第1通信モード)によってセッションを設定する場合(タイプD−LLU)のセッション及び階層構造を示す模式図である。すなわち、タイプD−LLUは、レガシーの階層構造のサーバ装置10が2つのサービスA7,A8を提供し、レガシーの階層構造のクライアント装置11(Client 11)及びユニファイドの階層構造のクライアント装置12(Client 12)の各々が1つのアプリケーションB7,B8からアクセスする場合を示す。
タイプD−LLUの場合、サービスA7とアプリケーションB8とのセッションは、図27Bに示すように、宛先ポート「a5」、宛先アドレス「b4」、送信元アドレス「D8」で特定される。また、サービスA8とアプリケーションB7とのセッションは、図27Bに示すように、宛先ポート「a6」、宛先アドレス「b4」、送信元ポート「c7」、送信元アドレス「d5」で特定される。
図28Aは、タイプDにおいて、サーバ装置10とクライアント装置12がレガシー通信(第2通信モード)によってセッションを設定し、クライアント装置11がユニファイド通信(第1通信モード)によってセッションを設定する場合(タイプD−LUL)のセッション及び階層構造を示す模式図である。すなわち、タイプD−LULは、レガシーの階層構造のサーバ装置10が2つのサービスA7,A8を提供し、ユニファイドの階層構造のクライアント装置11(Client 11)及びレガシーの階層構造のクライアント装置12(Client 12)の各々が1つのアプリケーションB7,B8からアクセスする場合を示す。尚、タイプD−LLUとタイプD−LULは実質的に同じ形態である。
タイプD−LULの場合、サービスA7とアプリケーションB8とのセッションは、図28Bに示すように、宛先ポート「a5」、宛先アドレス「b4」、送信元ポート「c8」、送信元アドレス「d6」で特定される。また、サービスA8とアプリケーションB7とのセッションは、図28Bに示すように、宛先ポート「a6」、宛先アドレス「b4」、送信元アドレス「D7」で特定される。
図29Aは、タイプDにおいて、サーバ装置10とクライアント装置12がユニファイド通信(第1通信モード)によってセッションを設定し、クライアント装置11がレガシー通信(第2通信モード)によってセッションを設定する場合(タイプD−ULU)のセッション及び階層構造を示す模式図である。すなわち、タイプD−ULUは、ユニファイドの階層構造のサーバ装置10が2つのサービスA7,A8を提供し、レガシーの階層構造のクライアント装置11(Client 11)及びユニファイドの階層構造のクライアント装置12(Client 12)各々が1つのアプリケーションB7,B8からアクセスする場合を示す。
本一例のサーバ装置10は、サービス毎(あるいはクライアントユーザ毎)に異なるアドレスC7、C8を指定する。
タイプD−ULUの場合、サービスA7とアプリケーションB8とのセッションは、図29Bに示すように、宛先アドレス「C7」、送信元アドレス「D8」で特定される。また、サービスA8とアプリケーションB7とのセッションは、図29Bに示すように、宛先アドレス「C8」、送信元ポート「c7」、送信元アドレス「d5」で特定される。
図30Aは、タイプDにおいて、サーバ装置10とクライアント装置11がユニファイド通信(第1通信モード)によってセッションを設定し、クライアント装置12がレガシー通信(第2通信モード)によってセッションを設定する場合(タイプD−UUL)のセッション及び階層構造を示す模式図である。すなわち、タイプD−UULは、ユニファイドの階層構造のサーバ装置10が2つのサービスA7,A8を提供し、ユニファイドの階層構造のクライアント装置11(Client 11)及びレガシーの階層構造のクライアント装置(Client 12)各々が1つのアプリケーションB7,B8からアクセスする場合を示している。尚、タイプD−ULUとタイプD−UULは実質的に同じ形態である。
タイプD−UULの場合、サービスA7とアプリケーションB8とのセッションは、図30Bに示すように、宛先アドレス「C7」、送信元ポート「c8」、送信元アドレス「d6」で特定される。また、サービスA7とアプリケーションB7とのセッションは、図30Bに示すように、宛先アドレス「C7」、送信元アドレス「D7」で特定される。
(タイプAにおけるレガシー通信とユニファイド通信の共存に関する他の一例)
図31Aは、タイプAにおけるセッションの設定を、レガシー通信の階層構造と本発明の一実施例によるユニファイド通信の階層構造とを組み合わせて行う場合の他の一例を示す図である。図31B、図32Bは、図31A、図32Aに示すセッションを特定する情報を示す図である。
図31Aにおいて、タイプA−U’Lは、図9Aに示す形態と同様に、ユニファイドの階層構造のサーバ装置10が1つのサービスA9,A10を提供し、レガシーの階層構造のクライアント装置11(Client 11)が2つのアプリケーションB9,B10からアクセスする場合を示す。図9Aに示したサーバ装置10は、セッション毎に異なるアドレス(Specific Service Address)を指定する。一方、図31Aに示すサーバ装置10は、全てのセッションに対し同一のアドレス(Generic Service Address)を指定する。この場合、クライアント装置11のアプリケーションB9、B10はそれぞれ同じアドレスC9を宛先アドレスとしてサービスA9、A10にアクセスする。
タイプA−U’Lの場合、サービスA9とアプリケーションB10とのセッションは、図31Bに示すように、宛先アドレス「C9」、送信元ポート「c10」、送信元アドレス「d7」で特定される。また、サービスA10とアプリケーションB9とのセッションは、図31Bに示すように、宛先アドレス「C9」、送信元ポート「c9」、送信元アドレス「d7」で特定される。
図32Aにおいて、タイプA−U’Uは、図10Aに示す形態と同様に、ユニファイドの階層構造のサーバ装置10が1つのサービスA9,A10を提供し、ユニファイドの階層構造のクライアント装置11(Client 11)が2つのアプリケーションB9,B10からアクセスする場合を示す。図10Aに示したサーバ装置10は、セッション毎に異なるアドレス(Specific Service Address)を指定する。一方、図32Aに示すサーバ装置10は、全てのセッションに対し同一のアドレス(Generic Service Address)を指定する。この場合、クライアント装置11のアプリケーションB9、B10はそれぞれ同じアドレスC9を宛先アドレスとしてサービスA9、A10にアクセスする。
タイプA−U’Uの場合、サービスA9とアプリケーションB10とのセッションは、図32Bに示すように、宛先アドレス「C9」、送信元ポート「LEGACY_COMPAT」、送信元アドレス「D10」で特定される。また、サービスA10とアプリケーションB9とのセッションは、図32Bに示すように、宛先アドレス「C10」、送信元アドレス「D9」で特定される。
(タイプCにおけるレガシー通信とユニファイド通信の共存に関する他の一例)
図33A、図34Aは、タイプCにおけるセッションの設定を、レガシー通信の階層構造と本発明の一実施例によるユニファイド通信の階層構造とを組み合わせて行う場合の他の一例を示す図である。図33B、図34Bは、図33A、図34Aに示すセッションを特定する情報を示す図である。
図33Aにおいて、タイプC−U’LLは、図17Aに示す形態と同様に、ユニファイドの階層構造のサーバ装置10が1つのサービスA11,A12を提供し、レガシーの階層構造のクライアント装置11、12(Client 11,Client 12)の各々が1つのアプリケーションB11,B12からアクセスする場合を示す。図17Aに示したサーバ装置10は、セッション毎に異なるアドレス(Specific Service Address)を指定する。一方、図33Aに示すサーバ装置10は、全てのセッションに対し同一のアドレス(Generic Service Address)を指定する。この場合、クライアント装置11のアプリケーションB11、B12はそれぞれ同じアドレスC10を宛先アドレスとしてサービスA9、A10にアクセスする。
タイプC−U’LLの場合、サービスA11とアプリケーションB12とのセッションは、図33Bに示すように、宛先アドレス「C10」、送信元ポート「c12」、送信元アドレス「d9」で特定される。また、サービスA12とアプリケーションB11とのセッションは、図33Bに示すように、宛先アドレス「C10」、送信元ポート「c11」、送信元アドレス「d8」で特定される。
図33Aにおいて、タイプC−U’UUは、図18Aに示す形態と同様に、ユニファイドの階層構造のサーバ装置10が1つのサービスA11,A12を提供し、ユニファイドの階層構造のクライアント装置11、12(Client 11,Client 12)の各々が1つのアプリケーションB11,B12からアクセスする場合を示す。図18Aに示したサーバ装置10は、セッション毎に異なるアドレス(Specific Service Address)を指定する。一方、図33Aに示すサーバ装置10は、全てのセッションに対し同一のアドレス(Generic Service Address)を指定する。この場合、クライアント装置11のアプリケーションB11、クライアント装置12のアプリケーションB12はそれぞれ同じアドレスC10を宛先アドレスとしてサービスA11、A12にアクセスする。
タイプC−U’UUの場合、サービスA11とアプリケーションB12とのセッションは、図34Bに示すように、宛先アドレス「C10」、送信元アドレス「D12」で特定される。また、サービスA12とアプリケーションB11とのセッションは、図34Bに示すように、宛先アドレス「C10」、送信元アドレス「D11」で特定される。
図35Aにおいて、タイプC−U’LUは、図21Aに示す形態と同様に、ユニファイドの階層構造のサーバ装置10が1つのサービスA11,A12を提供し、レガシーの階層構造のクライアント装置11(Client 11)及びユニファイドの階層構造のクライアント装置12(Client 12)の各々が1つのアプリケーションB11,B12からアクセスする場合を示す。図21Aに示したサーバ装置10は、セッション毎に異なるアドレス(Specific Service Address)を指定する。一方、図35Aに示すサーバ装置10は、全てのセッションに対し同一のアドレス(Generic Service Address)を指定する。この場合、クライアント装置11のアプリケーションB11、クライアント装置12のアプリケーションB12はそれぞれ同じアドレスC10を宛先アドレスとしてサービスA11、A12にアクセスする。
タイプC−U’LUの場合、サービスA11とアプリケーションB12とのセッションは、図35Bに示すように、宛先アドレス「C10」、送信元アドレス「D12」で特定される。また、サービスA12とアプリケーションB11とのセッションは、図35Bに示すように、宛先アドレス「C10」、送信元ポート「c11」、送信元アドレス「d8」で特定される。
図36Aにおいて、タイプC−U’ULは、図22Aに示す形態と同様に、ユニファイドの階層構造のサーバ装置10が1つのサービスA11,A12を提供し、ユニファイドの階層構造のクライアント装置11(Client 11)及びレガシーの階層構造のクライアント装置12(Client 12)の各々が1つのアプリケーションB11,B12からアクセスする場合を示す。尚、タイプC−U’LUとタイプC−U’ULは実質的に同じ形態である。
タイプC−U’ULの場合、サービスA5とアプリケーションB6とのセッションは、図36Bに示すように、宛先アドレス「C10」、送信元ポート「c12」、送信元アドレス「d9」で特定される。また、サービスA12とアプリケーションB11とのセッションは、図36Bに示すように、宛先アドレス「C10」、送信元アドレス「D11」で特定される。
(効果)
このように、サーバ装置10及びクライアント装置11、12をそれぞれユニファイドの階層構造とすることで、サーバ装置が提供するサービスとクライアント装置のアプリケーションとの間のセョションは、実質的にアドレスのみで特定(識別)されることとなる。このため、トランスポート層の情報を解析する必要がなく、フィルタやIPsec SPDの実装・運用等を容易化(シンプル化)することができる。従って、本発明によれば従来技術で生じたポート情報の問題を解決することができる。また、本実施例では、ウェルノウンポート番号を使用する必要がなくなるため、プライバシーを中心とした高いセキュリティ機能を提供することができる。
特定の通信相手という条件のついたサービスを示すアドレス[(Client) Specific Service Address]、通信相手を特定せずにサービスを代表するアドレス[Generic Service Address]の場合も考えられるが、その場合のセッションも、上述したタイプA及びタイプCと同様に、本発明の一実施例によるユニファイドの階層構造を用いることができる。
また、上述したように、本発明の一実施例によるユニファイドの階層構造を用いるユニファイド通信と、従来のレガシーの階層構造を用いるレガシー通信とが混在して通信が行われる場合には、ユニファイド通信のポート情報の「LEGACY_COMPAT」は固定であるため、レガシー通信の「アドレス情報」+「ポート情報」とユニファイド通信の「アドレス情報」との3つの情報で済むこととなる。さらに、ユニファイド通信のみで通信が行われる場合には、宛先及び送信元(発信元)のユニファイド通信の「アドレス情報」のみの2つの情報で済むこととなる。
したがって、本発明では、セッションの識別が単一層の情報に閉じ、必要最低限な情報だけで、単純な情報管理を実現し、機能実装を効率的にすることができる。すなわち、本発明によれば、セッションの多重化とセッションの識別の効率を向上させることができる。これにより、中間ノードの実装・運用を容易化するセッションを多重化する際に、フィルタやIPsec SPDの実装・運用等を容易化することができる。また、本発明では、ウェルノウンに頼った仕組みを用いることなく、必要な情報がresolvingによって取得することができ、セキュリティ/プライバシーに配慮することができる。さらに、本発明では、サービスの本質を代表するものがセッションの識別情報として採用される。
尚、本発明は、ユニキャスト(Unicast)通信だけでなく、エニイキャスト(Anycast)通信/マルチキャスト(Multicast)通信でも利用することができ、TCP/UDP通信のみならず、ICMP通信にも対応可能である。
つまり、これまでの説明ではポート情報を伴うTCP/UDPの通信を対象としているが、ポート情報を持たないICMP通信の場合についても本発明を適用することができる。ICMPにはポート情報がなく、従来の通常の発想では基本的に多重化することができないと考えられてきている。しかしながら、本発明を適用することで、サービスがIPアドレス情報を通して示されたものであるならば、適切なサービス指向な通信も可能であるし、同時に多重化された通信も可能となる。
本発明による通信システムは、インタネットプロトコルのトランスポート層及びネットワーク層を含むノード装置からなる通信システムである。ノード装置は、トランスポート層及びネットワーク層におけるセッションの識別を前記ネットワーク層におけるセッションの識別に統合して行う。
又、本発明によるノード装置は、トランスポート層及びネットワーク層にて行うセッションの多重化をネットワーク層における多重化に統合した統合多重化処理を実行することが好ましい。
更に、本発明によるノード装置は、セッション毎に、トランスポート層にて扱うポート番号に対応する情報を含むIP(Internet Protocol)アドレスを割り当てることが好ましい。
又、本発明によるノード装置は、他のノード装置への通信においてIPアドレスと統合多重化処理によることを示すポート番号情報とを送信することが好ましい。
本発明によるノード装置は、重複アドレス検出済みのIPアドレスを記憶装置に複数蓄積し、その蓄積されたIPアドレスの中から選択して前記統合多重化処理にて使用することが好ましい。
すなわち、本発明の通信システムは、トランスポート層及びネットワーク層におけるセッション(session)の識別をネットワーク層における識別に統合する。又、本発明の通信システムではセッション毎にIP(Internet Protocol)アドレスを各ノード装置に割り当てることで、セッションを多重化(multiplex)する際に、フィルタ(Filter)やIPsec SPD(IPセキュリティ・ポリシー・データベース)の実装・運用等を容易化し、従来のポート番号情報の問題を解決している。このセッションの識別がネットワーク層における識別に統合されることで、トランスポート層及びネットワーク層におけるセッションの多重化もネットワーク層における多重化に統合することが可能となる。
本発明の通信システムでは、サービスとアプリケーションとの間、あるいはアプリケーション間のセッションの多重化をネットワーク層における多重化に統合することで、IPパケットのルーティグ(routing)やルータ(router)に対して影響を与えることなく実現することが可能となる。この場合、ネットワーク層の多重化技術(ルーティングテーブルを引く等)の方がトランスポート層の多重化技術より優れている。
また、本発明の通信システムでは、トランスポート層及びネットワーク層の2箇所で行うセッションの多重化処理をネットワーク層の1箇所に統合するので、新たな処理が必要となることはない。但し、本発明の通信システムでは、セッション毎にIPアドレスを割り当てているので、インタネットプロトコルとしてはアドレス空間の広いIPv6(Internet Protocol version)が適している。
以上、本発明の実施の形態を詳述してきたが、具体的な構成は上記実施の形態に限られるものではなく、本発明の要旨を逸脱しない範囲の変更があっても本発明に含まれる。