{中継通信システムの全体構成}
以下、図面を参照しつつ、本発明の実施の形態について説明する。図1は、中継通信システムの全体構成を示す図である。中継通信システムは、LAN1、2、WAN3から構成される。LAN1、2は、遠隔に構築される小規模なネットワークである。WAN3は、インターネットなどの大規模なネットワークである。
LAN1は、クライアント端末11、中継サーバ12から構成される。LAN2は、クライアント端末21、中継サーバ22から構成される。WAN3は、SIP(Session Initiation Protocol)サーバ31から構成される。
クライアント端末11、21は、パーソナルコンピュータなどである。中継サーバ12、22は、クライアント端末11、21の相互間の通信を中継する。SIPサーバ31は、中継サーバ12、22の相互間の通信を中継する。
本実施の形態においては、中継サーバ12、22の相互間の通信プロトコルとして、SIPを利用するが、SIP以外のプロトコルを利用してもよい。SIP以外のプロトコルを利用するときには、中継サーバ12、22の相互間の通信が直接に実行されればよい。
クライアント端末11および中継サーバ12の相互間の通信として、IPv4通信および非暗号通信が採用される。中継サーバ12および中継サーバ22の相互間の通信として、IPv6通信および暗号通信が採用される。クライアント端末21および中継サーバ22の相互間の通信として、IPv4通信および非暗号通信が採用される。
{中継サーバの構成要素}
図2は、中継サーバ12(22)の構成要素を示す図である。中継サーバ12(22)は、インターフェース部121(221)、制御部122(222)、データベース格納部123(223)から構成される。括弧が付されていない符号は、中継サーバ12における符号を示す。括弧が付されている符号は、中継サーバ22における符号を示す。
インターフェース部121(221)は、IPv4通信におけるプライベートIPアドレスを利用して、LAN1(2)に接続されるクライアント端末11(21)に対して通信を実行する。インターフェース部121(221)は、IPv6通信におけるIPアドレスを利用して、WAN3に接続されるSIPサーバ31に対して通信を実行する。
制御部122(222)は、クライアント端末11、21の相互間の通信を中継するための制御を実行する。制御部122(222)は、データベース格納部123(223)に格納される中継グループ情報、中継サーバ情報、クライアント端末情報を作成または更新する。制御部122(222)は、データベース格納部123(223)に格納されるネットワーク設定情報、暗号通信設定情報を作成する。
データベース格納部123(223)は、中継グループ情報格納部124(224)、中継サーバ情報格納部125(225)、クライアント端末情報格納部126(226)、ネットワーク設定情報格納部127(227)、暗号通信設定情報格納部128(228)から構成される。以上の情報について以下に説明する。
{中継グループ情報の具体例}
図3は、中継グループ情報の具体例として、中継グループ情報40を示す図である。中継グループ情報は、中継通信システムを構成する中継サーバの概要を示す情報である。
中継グループ情報40は、上位情報401、下位情報402から構成される。上位情報401は、中継グループ識別情報403を含む。下位情報402は、中継サーバ識別情報404を含む。
上位情報401は、上位にある中継グループについての情報である。中継グループ識別情報403は、図1に示した中継グループを識別する情報である。「lastmod」は、中継グループ情報の最新更新時刻を示す。「name」は、中継グループの名称を示す。
下位情報402は、下位にある中継サーバについての情報である。中継サーバ識別情報404は、中継サーバを識別する情報である。
中継グループ情報40は、中継グループ情報格納部124、224において格納される。すなわち、中継グループ情報40は、中継サーバ12、22により共有される。さらに、中継グループ情報40は、中継サーバ12、22およびクライアント端末11、21により共有される。
{中継サーバ情報の具体例}
図4は、中継サーバ情報の具体例として、中継サーバ情報50を示す図である。中継サーバ情報は、中継通信システムを構成する中継サーバの詳細を示す情報であり、中継通信システムを構成するクライアント端末の概要を示す情報である。
中継サーバ情報50は、上位情報501−1、501−2、下位情報502−1、502−2から構成される。上位情報501−1、501−2は、各々、中継サーバ識別情報503−1、503−2、中継サーバ起動情報504−1、504−2を含む。下位情報502−1、502−2は、各々、中継グループ識別情報505−1、505−2、クライアント端末識別情報506−1、506−2、クライアント端末が中継サーバにログインしているかどうかを示すクライアント端末サイト情報507−1、507−2を含む。
上位情報501−1、501−2は、上位にある中継サーバについての情報である。中継サーバ識別情報503−1、503−2は、中継サーバを識別する情報である。「name」は、中継サーバの名称を示す。中継サーバ起動情報504−1、504−2は、中継サーバが起動しているかどうかについての情報である。
下位情報502−1、502−2は、下位にあるクライアント端末についての情報である。「div」は、クライアント端末の部署名を示す。中継グループ識別情報505−1、505−2は、図1に示した中継グループを識別する情報である。クライアント端末識別情報506−1、506−2は、クライアント端末を識別する情報である。「name」は、クライアント端末の名称を示す。クライアント端末サイト情報507−1、507−2は、クライアント端末がログオンしている中継サーバの識別情報を示す。
中継サーバ情報50は、中継サーバ情報格納部125、225において格納される。すなわち、中継サーバ情報50は、中継サーバ12、22により共有される。さらに、中継サーバ情報50は、中継サーバ12、22およびクライアント端末11、21により共有される。
中継サーバが起動しているときには、中継サーバ起動情報504−1、504−2が「active」になっている。中継サーバが起動していないときには、中継サーバ起動情報504−1、504−2が空欄になっている。これにより、中継サーバが起動しているかどうかについての情報が、中継通信システム全体として共有される。
クライアント端末が中継サーバにログオンしているときには、クライアント端末サイト情報507−1、507−2が記載されている。クライアント端末が中継サーバにログオンしていないときには、クライアント端末サイト情報507−1、507−2が記載されていない。これにより、クライアント端末が中継サーバにログオンしているかどうかについての情報が、中継通信システム全体として共有される。
{クライアント端末情報の具体例}
図5は、クライアント端末情報の具体例として、クライアント端末情報60、70を示す図である。クライアント端末情報は、中継通信システムを構成するクライアント端末の詳細を示す情報である。
クライアント端末情報60、70は、各々、中継グループ識別情報601、701、クライアント端末アドレス情報602、702、クライアント端末有効期限情報603、703、クライアント端末識別情報604、704、クライアント端末ポート情報605、705を含む。
「div」は、クライアント端末の部署名を示す。中継グループ識別情報601、701は、図1に示した中継グループを識別する情報である。クライアント端末アドレス情報602、702は、クライアント端末のIPアドレスを示す。クライアント端末有効期限情報603、703は、クライアント端末のレジスト有効期限を示す。クライアント端末識別情報604、704は、クライアント端末を識別する情報である。「name」は、クライアント端末の名称を示す。「pass」は、クライアント端末のパスワードを示す。クライアント端末ポート情報605、705は、クライアント端末のポート番号を示す。
クライアント端末情報60は、クライアント端末情報格納部126のみにおいて格納されて、クライアント端末情報70は、クライアント端末情報格納部226のみにおいて格納される。すなわち、クライアント端末情報60は、中継サーバ12のみにより保有されて、クライアント端末情報70は、中継サーバ22のみにより保有される。
{ネットワーク設定情報}
図6は、中継サーバ12がネットワーク設定情報格納部127において格納する、ネットワーク設定情報81を示す図である。WAN側設定情報811は、図1に示したように、中継サーバ12および中継サーバ22の相互間において、IPv6通信が採用されることを示す。LAN側設定情報812は、図1に示したように、クライアント端末11および中継サーバ12の相互間において、IPv4通信が採用されることを示す。
WAN側設定情報811について説明する。中継サーバ12のIPv6通信におけるIPアドレスとして、「2001:222:1002:2000::5」が設定されている。シグナリングポートとして「5060」が、セキュアシグナリングポートとして「5062」が、セッションポートとして「5070」が設定されている。
LAN側設定情報812について説明する。中継サーバ12のIPv4通信におけるプライベートIPアドレスとして、「192.168.10.1」が設定されている。IPv4通信が採用されることに伴って、サブネットマスクとして「255.255.255.0」が、DNS(Domain Name Server)アドレスとして「192.168.10.3」が、ゲートウェイアドレスとして「192.168.10.3」が設定されている。シグナリングポートとして「5060」が、セキュアシグナリングポートとして「5062」が、セッションポートとして「5070」が設定されている。
図7は、中継サーバ22がネットワーク設定情報格納部227において格納する、ネットワーク設定情報82を示す図である。WAN側設定情報821は、図1に示したように、中継サーバ12および中継サーバ22の相互間において、IPv6通信が採用されることを示す。LAN側設定情報822は、図1に示したように、クライアント端末21および中継サーバ22の相互間において、IPv4通信が採用されることを示す。
WAN側設定情報821について説明する。中継サーバ22のIPv6通信におけるIPアドレスとして、「2001:222:1002:2000::6」が設定されている。シグナリングポートとして「5060」が、セキュアシグナリングポートとして「5062」が、セッションポートとして「5070」が設定されている。
LAN側設定情報822について説明する。中継サーバ22のIPv4通信におけるプライベートIPアドレスとして、「192.168.1.1」が設定されている。IPv4通信が採用されることに伴って、サブネットマスクとして「255.255.255.0」が、DNS(Domain Name Server)アドレスとして「192.168.1.2」が、ゲートウェイアドレスとして「192.168.1.2」が設定されている。シグナリングポートとして「5060」が、セキュアシグナリングポートとして「5062」が、セッションポートとして「5070」が設定されている。
送信側が受信側にWAN3を超えてデータを送信するときには、受信側のIPアドレスを宛先として指定することなく、受信側の識別情報を宛先として指定する。
中継サーバ12、22は、宛先として指定された受信側の識別情報を確認する。そして、中継サーバ12、22は、中継グループ情報、中継サーバ情報、クライアント端末情報を参照することにより、データを転送する中継サーバを決定する。そして、中継サーバ12、22は、ネットワーク設定情報を参照することにより、データを転送する中継サーバに対応する通信方式として、IPv4通信またはIPv6通信を採用する。
{暗号通信設定情報}
図8は、中継サーバ12が暗号通信設定情報格納部128において格納する、暗号通信設定情報91を示す図である。WAN側設定情報911は、図1に示したように、中継サーバ12および中継サーバ22の相互間において、暗号通信が採用されることを示す。LAN側設定情報912は、図1に示したように、クライアント端末11および中継サーバ12の相互間において、非暗号通信が採用されることを示す。
WAN側設定情報911について説明する。暗号通信が採用されることを示す情報として、「ON」が設定されている。暗号通信が採用されることに伴って、認証サーバとして「1001:118:0f02:1000::165」が、認証IDとして「4347834957YHD」が、認証パスワードとして「orKgHD5e3344A」が、ユーザ名として「relay−server−1@abc.net」が、認証サーバシグナリングポートとして「5060」が、認証サーバセキュアシグナリングポートとして「5062」が設定されている。
LAN側設定情報912について説明する。非暗号通信が採用されることを示す情報として、「OFF」が設定されている。非暗号通信が採用されることに伴って、認証サーバ、認証ID、認証パスワード、ユーザ名、認証サーバシグナリングポート、認証サーバセキュアシグナリングポートについての設定項目は空欄になっている。
図9は、中継サーバ22が暗号通信設定情報格納部228において格納する、暗号通信設定情報92を示す図である。WAN側設定情報921は、図1に示したように、中継サーバ12および中継サーバ22の相互間において、暗号通信が採用されることを示す。LAN側設定情報922は、図1に示したように、クライアント端末21および中継サーバ22の相互間において、非暗号通信が採用されることを示す。
WAN側設定情報921について説明する。暗号通信が採用されることを示す情報として、「ON」が設定されている。暗号通信が採用されることに伴って、認証サーバとして「1001:118:0f02:1000::165」が、認証IDとして「4347834957XYZ」が、認証パスワードとして「orKgHD5e1234B」が、ユーザ名として「relay−server−2@abc.net」が、TCP通信における認証サーバシグナリングポートとして「5060」が、認証サーバセキュアシグナリングポートとして「5062」が設定されている。
LAN側設定情報922について説明する。非暗号通信が採用されることを示す情報として、「OFF」が設定されている。非暗号通信が採用されることに伴って、認証サーバ、認証ID、認証パスワード、ユーザ名、認証サーバシグナリングポート、認証サーバセキュアシグナリングポートについての設定項目は空欄になっている。
送信側が受信側にWAN3を超えてデータを送信するときには、受信側のIPアドレスを宛先として指定することなく、受信側の識別情報を宛先として指定する。
中継サーバ12、22は、宛先として指定された受信側の識別情報を確認する。そして、中継サーバ12、22は、中継グループ情報、中継サーバ情報、クライアント端末情報を参照することにより、データを転送する相手方を決定する。さらに、中継サーバ12、22は、暗号通信設定情報を参照することにより、データを転送する相手方に対する通信方式として、暗号通信または非暗号通信を採用する。
{情報共有の流れ}
図10は、中継グループ情報、中継サーバ情報が共有される処理の流れを示す図である。中継サーバ12、22が、中継通信システムに参加する。クライアント端末11のユーザが、中継サーバ12にログオンして、クライアント端末21のユーザが、中継サーバ22にログオンする。
[ステップS1からステップS2までの処理の流れ]
中継サーバ12の管理者および中継サーバ22の管理者は、LAN1、2の相互間において中継通信システムのグループを構築する契約を結ぶ。
中継サーバ12の管理者および中継サーバ22の管理者は、各々、WAN側設定情報811およびWAN側設定情報821の記載内容を決定する。制御部122および制御部222は、各々、WAN側設定情報811およびWAN側設定情報821を作成して、ネットワーク設定情報格納部127およびネットワーク設定情報格納部227に格納する。
中継サーバ12の管理者および中継サーバ22の管理者は、各々、WAN側設定情報911およびWAN側設定情報921の記載内容を決定する。制御部122および制御部222は、各々、WAN側設定情報911およびWAN側設定情報921を作成して、暗号通信設定情報格納部128および暗号通信設定情報格納部228に格納する。
中継サーバ12の管理者は、クライアント端末11のユーザに対して、アカウントを作成する(ステップS1:CreateAccount())。制御部122は、中継サーバ情報51−1を作成して、中継サーバ情報格納部125に格納する。
中継サーバ12の管理者は、LAN側設定情報812およびLAN側設定情報912の記載内容を決定する。制御部122は、LAN側設定情報812およびLAN側設定情報912を作成して、各々、ネットワーク設定情報格納部127および暗号通信設定情報格納部128に格納する。
中継サーバ22の管理者は、クライアント端末21のユーザに対して、アカウントを作成する(ステップS2:CreateAccount())。制御部222は、中継サーバ情報51−2を作成して、中継サーバ情報格納部225に格納する。
中継サーバ22の管理者は、LAN側設定情報822およびLAN側設定情報922の記載内容を決定する。制御部222は、LAN側設定情報822およびLAN側設定情報922を作成して、各々、ネットワーク設定情報格納部227および暗号通信設定情報格納部228に格納する。
以上の処理の流れにより、中継サーバ12は、中継サーバ情報51−1、ネットワーク設定情報81、暗号通信設定情報91を保有する。中継サーバ22は、中継サーバ情報51−2、ネットワーク設定情報82、暗号通信設定情報92を保有する。
図11の1番目の枠内は、中継サーバ情報51−1を示す。上位情報511−1は、上位にある中継サーバ12についての情報である。中継サーバ識別情報513−1として、「relay−server−1@abc.net」が設定されている。「name」として、「RELAY SERVER 1」が設定されている。中継サーバ起動情報514−1として、「active」が設定されている。すなわち、中継サーバ12は、起動している。
下位情報512−1は、下位にあるクライアント端末11についての情報である。「div」として、「software」が設定されている。中継グループ識別情報515−1として、「20070402133100@relay−server−1.abc.net」が設定されている。クライアント端末識別情報516−1として、「client−1@relay−server−1.abc.net」が設定されている。「name」として、「CLIENT 1」が設定されている。クライアント端末サイト情報517−1は、空欄になっている。すなわち、クライアント端末11のユーザは、中継サーバ12にログオンしていない。
図11の2番目の枠内は、中継サーバ情報51−2を示す。上位情報511−2は、上位にある中継サーバ22についての情報である。中継サーバ識別情報513−2として、「relay−server−2@abc.net」が設定されている。「name」として、「RELAY SERVER 2」が設定されている。中継サーバ起動情報514−2として、「active」が設定されている。すなわち、中継サーバ22は、起動している。
下位情報512−2は、下位にあるクライアント端末21についての情報である。「div」として、「software」が設定されている。中継グループ識別情報515−2として、「20070402133100@relay−server−1.abc.net」が設定されている。クライアント端末識別情報516−2として、「client−2@relay−server−2.abc.net」が設定されている。「name」として、「CLIENT 2」が設定されている。クライアント端末サイト情報517−2は、空欄になっている。すなわち、クライアント端末21のユーザは、中継サーバ22にログオンしていない。
[ステップS3からステップS4までの処理の流れ]
以下の説明においては、中継サーバ12、22の相互間の通信は、SIPサーバ31により中継される。中継サーバ12(22)が中継サーバ22(12)に対してSIPサーバ31を介して通信を実行する方法について説明する。
中継サーバ12(22)は、SIPサーバ31に対して、中継サーバ22(12)のアカウントが通信先として指定されたデータなどを送信する。SIPサーバ31は、中継サーバ12、22のアカウントを、各々、中継サーバ12、22のIPv6通信におけるIPアドレスに対応付けている。SIPサーバ31は、中継サーバ22(12)のアカウントに基づいて、中継サーバ22(12)のIPv6通信におけるIPアドレスを取得する。SIPサーバ31は、中継サーバ22(12)に対して、中継サーバ22(12)のIPv6通信におけるIPアドレスが通信先として指定されたデータなどを送信する。
中継サーバ12は、中継サーバ22に対して、中継通信システムのグループ構築を要求する(ステップS3:SetGroup())。制御部122は、中継グループ情報42を作成して、中継グループ情報格納部124に格納する。制御部222は、中継グループ情報42を作成して、中継グループ情報格納部224に格納する。
中継サーバ12は、中継サーバ22に対して、中継サーバ情報の交換を要求する(ステップS4:exchange(db))。中継サーバ12は、中継サーバ22に対して、中継サーバ情報51−1の複製を送信する。中継サーバ22は、中継サーバ12に対して、中継サーバ情報51−2の複製を送信する。
制御部122は、中継サーバ情報51−2の複製、中継サーバ情報51−1を合成することにより、中継サーバ情報52を作成して、中継サーバ情報格納部125に格納する。制御部222は、中継サーバ情報51−1の複製、中継サーバ情報51−2を合成することにより、中継サーバ情報52を作成して、中継サーバ情報格納部225に格納する。
制御部122は、クライアント端末情報62を作成して、クライアント端末情報格納部126に格納する。制御部222は、クライアント端末情報72を作成して、クライアント端末情報格納部226に格納する。クライアント端末情報62の作成処理および格納処理は、ステップS1において実行され、クライアント端末情報72の作成処理および格納処理は、ステップS2において実行され。
以上の処理の流れにより、中継サーバ12は、中継グループ情報42、中継サーバ情報52、クライアント端末情報62を保有する。中継サーバ22は、中継グループ情報42、中継サーバ情報52、クライアント端末情報72を保有する。中継グループ情報42、中継サーバ情報52は、中継サーバ12、22により共有されている。
図12の1番目の枠内は、中継グループ情報42を示す。上位情報421は、上位にある中継グループについての情報である。中継グループ識別情報423として、「20070402133100@relay−server−1.abc.net」が設定されている。「lastmod」として、「20070402133100」が設定されている。「name」として、「GROUP 1」が設定されている。
下位情報422は、下位にある中継サーバ12、22についての情報である。中継サーバ識別情報424として、「relay−server−1@abc.net」、「relay−server−2@abc.net」が設定されている。
図12の2番目の枠内は、中継サーバ情報52を示す。上位情報521−1、521−2は、各々、図11の上位情報511−1、511−2と同様である。下位情報522−1、522−2は、各々、図11の下位情報512−1、512−2と同様である。
図12の3番目の枠内は、クライアント端末情報62を示す。「div」として、「software」が設定されている。中継グループ識別情報621として、「20070402133100@relay−server−1.abc.net」が設定されている。クライアント端末識別情報624として、「client−1@relay−server−1.abc.net」が設定されている。「name」として、「CLIENT 1」が設定されている。「pass」として、「client−1」が設定されている。
クライアント端末アドレス情報622は、空欄になっている。クライアント端末有効期限情報623として、「0」が設定されている。クライアント端末ポート情報625は、空欄になっている。すなわち、クライアント端末11のユーザは、中継サーバ12にログオンしていない。
図12の4番目の枠内は、クライアント端末情報72を示す。「div」として、「software」が設定されている。中継グループ識別情報721として、「20070402133100@relay−server−1.abc.net」が設定されている。クライアント端末識別情報724として、「client−2@relay−server−2.abc.net」が設定されている。「name」として、「CLIENT 2」が設定されている。「pass」として、「client−2」が設定されている。
クライアント端末アドレス情報722は、空欄になっている。クライアント端末有効期限情報723として、「0」が設定されている。クライアント端末ポート情報725は、空欄になっている。すなわち、クライアント端末21のユーザは、中継サーバ22にログオンしていない。
[ステップS5からステップS7までの処理の流れ]
クライアント端末11のユーザは、クライアント端末11の識別情報として、「client−1@relay−server−1.abc.net」を入力して、クライアント端末11のパスワードとして、「client−1」を入力する。クライアント端末11のユーザは、中継サーバ12にログオンする(ステップS5:REGISTER(ID,PASS))。制御部122は、クライアント端末情報62を参照することにより、クライアント端末11のユーザの認証を実行する。
制御部122は、クライアント端末11のユーザのログオンを受け付ける。制御部122は、中継サーバ情報52を更新することにより、中継サーバ情報53を作成して、中継サーバ情報格納部125に格納する。制御部122は、クライアント端末情報62を更新することにより、クライアント端末情報63を作成して、クライアント端末情報格納部126に格納する。制御部122は、中継グループ情報42を更新することはない。
クライアント端末11は、中継サーバ12に対して、中継グループ情報および中継サーバ情報の提供を要求する(ステップS6:get())。中継サーバ12は、クライアント端末11に対して、中継グループ情報42および中継サーバ情報53の複製を送信する。クライアント端末11は、中継グループ情報42、中継サーバ情報53を格納する。
制御部122は、中継グループ情報42、中継サーバ情報53を参照することにより、中継サーバ情報52が中継サーバ情報53に更新されたことを通知すべき中継サーバを決定する。制御部122は、中継サーバ情報53の中継サーバ起動情報534−2が「active」である中継サーバ22を、通知すべき中継サーバとして決定する。
中継サーバ12は、中継サーバ22に対して、中継サーバ情報52が中継サーバ情報53に更新されたことを通知する(ステップ7:NOTIFY())。制御部222は、中継サーバ情報52を更新することにより、中継サーバ情報53を作成して、中継サーバ情報格納部225に格納する。
制御部222は、クライアント端末情報72を参照することにより、中継サーバ情報52が中継サーバ情報53に更新されたことを通知すべきクライアント端末を決定する。制御部222は、クライアント端末情報72のクライアント端末アドレス情報722が空欄であり、クライアント端末情報72のクライアント端末ポート情報725が空欄であるクライアント端末21を、通知すべきクライアント端末として決定することはない。
以上の処理の流れにより、中継サーバ12は、中継グループ情報42、中継サーバ情報53、クライアント端末情報63を保有する。中継サーバ22は、中継グループ情報42、中継サーバ情報53、クライアント端末情報72を保有する。クライアント端末11は、中継グループ情報42、中継サーバ情報53を保有する。中継グループ情報42、中継サーバ情報53は、中継サーバ12、22、クライアント端末11により共有されている。
図13の1番目の枠内は、中継グループ情報42を示す。ステップS5からステップS7までの処理の流れにおいては、新たな中継サーバが中継通信システムに参加していないため、中継グループ情報42が更新されることはない。
図13の2番目の枠内は、中継サーバ情報53を示す。更新部分を下線部により示す。クライアント端末11のユーザは、中継サーバ12にログオンしている。そのため、下位情報532−1のクライアント端末サイト情報537−1は、「relay−server−1@abc.net」に確定されている。
図13の3番目の枠内は、クライアント端末情報63を示す。更新部分を下線部により示す。クライアント端末11のユーザは、中継サーバ12にログオンしている。そのため、クライアント端末アドレス情報632は、「192.168.10.2」に確定されている。また、クライアント端末有効期限情報633は、「1213935960484」に確定されている。さらに、クライアント端末ポート情報635は、「5070」に確定されている。
図13の4番目の枠内は、クライアント端末情報72を示す。ステップS5からステップS7までの処理の流れにおいては、クライアント端末21のユーザが中継サーバ22にログオンしていないため、クライアント端末情報72が更新されることはない。
[ステップS8からステップS11までの処理の流れ]
クライアント端末21のユーザは、クライアント端末21の識別情報として、「client−2@relay−server−2.abc.net」を入力して、クライアント端末21のパスワードとして、「client−2」を入力する。クライアント端末21のユーザは、中継サーバ22にログオンする(ステップS8:REGISTER(ID,PASS))。制御部222は、クライアント端末情報72を参照することにより、クライアント端末21のユーザの認証を実行する。
制御部222は、クライアント端末21のユーザのログオンを受け付ける。制御部222は、中継サーバ情報53を更新することにより、中継サーバ情報54を作成して、中継サーバ情報格納部225に格納する。制御部222は、クライアント端末情報72を更新することにより、クライアント端末情報74を作成して、クライアント端末情報格納部226に格納する。制御部222は、中継グループ情報42を更新することはない。
クライアント端末21は、中継サーバ22に対して、中継グループ情報および中継サーバ情報の提供を要求する(ステップS9:get())。中継サーバ22は、クライアント端末21に対して、中継グループ情報42および中継サーバ情報54の複製を送信する。クライアント端末21は、中継グループ情報42、中継サーバ情報54を格納する。
制御部222は、中継グループ情報42、中継サーバ情報54を参照することにより、中継サーバ情報53が中継サーバ情報54に更新されたことを通知すべき中継サーバを決定する。制御部222は、中継サーバ情報54の中継サーバ起動情報544−1が「active」である中継サーバ12を、通知すべき中継サーバとして決定する。
中継サーバ22は、中継サーバ12に対して、中継サーバ情報53が中継サーバ情報54に更新されたことを通知する(ステップ10:NOTIFY())。制御部122は、中継サーバ情報53を更新することにより、中継サーバ情報54を作成して、中継サーバ情報格納部125に格納する。
制御部122は、クライアント端末情報63を参照することにより、中継サーバ情報53が中継サーバ情報54に更新されたことを通知すべきクライアント端末を決定する。制御部122は、クライアント端末情報63のクライアント端末アドレス情報632が確定されていて、クライアント端末情報63のクライアント端末ポート情報635が確定されているクライアント端末11を、通知すべきクライアント端末として決定する。
中継サーバ12は、クライアント端末11に対して、中継サーバ情報53が中継サーバ情報54に更新されたことを通知する(ステップ11:NOTIFY())。クライアント端末11は、中継サーバ情報53を更新することにより、中継サーバ情報54を作成して、中継サーバ情報54を格納する。
以上の処理の流れにより、中継サーバ12は、中継グループ情報42、中継サーバ情報54、クライアント端末情報63を保有する。中継サーバ22は、中継グループ情報42、中継サーバ情報54、クライアント端末情報74を保有する。クライアント端末11は、中継グループ情報42、中継サーバ情報54を保有する。クライアント端末21は、中継グループ情報42、中継サーバ情報54を保有する。中継グループ情報42、中継サーバ情報54は、中継サーバ12、22、クライアント端末11、21により共有されている。
図14の1番目の枠内は、中継グループ情報42を示す。ステップS8からステップS11までの処理の流れにおいては、新たな中継サーバが中継通信システムに参加していないため、中継グループ情報42が更新されることはない。
図14の2番目の枠内は、中継サーバ情報54を示す。更新部分を下線部により示す。クライアント端末21のユーザは、中継サーバ22にログオンしている。そのため、下位情報542−2のクライアント端末サイト情報547−2は、「relay−server−2@abc.net」に確定されている。
図14の3番目の枠内は、クライアント端末情報63を示す。ステップS8からステップS11までの処理の流れにおいては、クライアント端末11のユーザが中継サーバ12からログオフしていないため、クライアント端末情報63が更新されることはない。
図14の4番目の枠内は、クライアント端末情報74を示す。更新部分を下線部により示す。クライアント端末21のユーザは、中継サーバ22にログオンしている。そのため、クライアント端末アドレス情報742は、「192.168.1.10」に確定されている。また、クライアント端末有効期限情報743は、「1213935978484」に確定されている。さらに、クライアント端末ポート情報745は、「5070」に確定されている。
{情報共有のまとめ}
中継通信システムにおいて、LANおよびクライアント端末の増減状態および接続状態が変化することがある。そこで、一の中継サーバは、状態変化を認識したときには、中継グループ情報、中継サーバ情報、クライアント端末情報を直ちに更新する。
そして、一の中継サーバは、中継グループ情報および中継サーバ情報に記載されている他の中継サーバに、中継グループ情報および中継サーバ情報が更新されたことを直ちに通知する。さらに、一の中継サーバは、クライアント端末情報に記載されているクライアント端末に、中継グループ情報および中継サーバ情報が更新されたことを直ちに通知する。
しかし、一の中継サーバは、他の中継サーバが中継グループ情報および中継サーバ情報に記載されているとしても、他の中継サーバが未接続状態にあると判断したときには、他の中継サーバに直ちに通知することはない。さらに、一の中継サーバは、クライアント端末がクライアント端末情報に記載されているとしても、クライアント端末が未接続状態にあると判断したときには、クライアント端末に直ちに通知することはない。
これにより、LANおよびクライアント端末の増減状態および接続状態についての情報は、中継通信システム全体としてリアルタイムに共有される。
{データ送受信の流れ}
図15から図17までは、情報共有後におけるデータ送受信の流れを示す図である。情報共有後においては、図14に示した中継グループ情報42、中継サーバ情報54、クライアント端末情報63、74が格納されている。クライアント端末11のユーザは、中継サーバ12にログオンしている。クライアント端末21のユーザは、中継サーバ22にログオンしている。
以下の説明においては、「宛先」および「転送先」を次のように定義する。「宛先」は、データ送信の最終的な送信先を示す。「転送先」は、LAN1、2、WAN3のうち複数の区間にわたるデータ送信が実行されるときにおいて、LAN1、2、WAN3のうち単一の区間におけるデータ送信の送信先を示す。
[ステップS12からステップS15までの処理の流れ]
図15は、ブロック単位でデータを送受信する処理の流れを示す。クライアント端末11のユーザは、クライアント端末11が所属する中継グループを確認する。具体的には、クライアント端末11のユーザは、中継グループ情報42をクライアント端末11の表示画面に表示させる(getGroup())。中継グループ情報42には、中継サーバ12、22の識別情報「relay−server−1@abc.net」、「relay−server−2@abc.net」が設定されている。クライアント端末11のユーザは、クライアント端末11が中継サーバ12、22により構成される中継グループに所属していることを確認する。
クライアント端末11のユーザは、中継グループ情報42に対応する中継サーバ情報54を、クライアント端末11の表示画面に表示させる(getServer())。クライアント端末11のユーザは、中継サーバ情報54を参照して、中継グループを構成する中継サーバ、中継サーバの下位に位置するクライアント端末を確認する。
クライアント端末11のユーザは、中継サーバ情報54を参照して、中継サーバ22とのデータの送受信が可能であることを確認する。クライアント端末11のユーザは、中継サーバ12について、中継サーバ情報54の中継サーバ起動情報544−1が「active」に設定されていることを確認する。すなわち、中継サーバ12が起動していることを確認する。
クライアント端末11のユーザは、中継サーバ22について、中継サーバ情報54の中継サーバ起動情報544−2が「active」に設定されていることを確認する。すなわち、中継サーバ22が起動していることを確認する。
クライアント端末11のユーザは、中継サーバ12を介して、中継サーバ22に対して、データを送信できることを確認する。クライアント端末11のユーザは、中継サーバ22に対して、ブロック単位のデータを送信することを決定する。
クライアント端末11は、クライアント端末11および中継サーバ12の相互間の通信(dialog(1))において、中継サーバ12に対して、中継サーバ22を宛先とするブロック単位のデータを送信する(ステップS12:data(from:client−1,to:relay−server−2))。中継サーバ12は、dialog(1)において、クライアント端末11から、ブロック単位のデータを受信する。
クライアント端末11は、中継サーバ22のIPv6通信におけるIPアドレスを宛先として指定しない。クライアント端末11は、中継グループ情報42の中継サーバ識別情報424を参照することにより、または、中継サーバ情報54の中継サーバ識別情報543−2を参照することにより、中継サーバ22の識別情報を宛先として指定する。
クライアント端末11は、クライアント端末11のユーザおよび中継サーバ12の管理者の相互間において決定されたように、dialog(1)においてIPv4通信および非暗号通信を採用する。クライアント端末11は、中継サーバ12のIPv4通信におけるプライベートIPアドレスを、dialog(1)の転送先として指定する。
中継サーバ12は、中継サーバ12および中継サーバ22の相互間の通信(dialog(2))において、中継サーバ22に対して、中継サーバ22を宛先とするブロック単位のデータを送信する(ステップS13:data(from:client−1,to:relay−server−2))。中継サーバ22は、dialog(2)において、中継サーバ12から、ブロック単位のデータを受信する。
中継サーバ12は、中継サーバ22の識別情報を宛先として確認する。中継サーバ12は、中継グループ情報42の中継サーバ識別情報424を参照することにより、または、中継サーバ情報54の中継サーバ識別情報543−2を参照することにより、宛先がLAN1側になくWAN3を隔てたLAN2側にあることを確認する。
中継サーバ12は、ネットワーク設定情報81のうちWAN側設定情報811を参照することにより、dialog(2)においてIPv6通信を採用する。中継サーバ12は、暗号通信設定情報91のうちWAN側設定情報911を参照することにより、dialog(2)において暗号通信(たとえばIPsec(Security Architecture for Internet Protocol)などのプロトコルを用いた通信)を採用する。中継サーバ12は、ステップS3、S4において説明されたように、SIPサーバ31を介して通信を実行する。
中継サーバ22は、dialog(2)において、中継サーバ12に対して、ブロック単位のデータが受信されたことを示す応答を送信する(ステップS14:response(from:relay−server−2,to:client−1))。中継サーバ12は、dialog(2)において、中継サーバ22から、ブロック単位のデータが受信されたことを示す応答を受信する。
中継サーバ22は、クライアント端末11のIPv4通信におけるプライベートIPアドレスを返信先として指定しない。中継サーバ22は、送信元として指定されたクライアント端末11の識別情報を返信先として指定する。中継サーバ22は、中継サーバ情報54のクライアント端末識別情報546−1を参照することにより、返信先がLAN2側になくWAN3を隔てたLAN1側にあることを確認する。
中継サーバ22は、ネットワーク設定情報82のうちWAN側設定情報821を参照することにより、dialog(2)においてIPv6通信を採用する。中継サーバ22は、暗号通信設定情報92のうちWAN側設定情報921を参照することにより、dialog(2)において暗号通信を採用する。中継サーバ22は、ステップS3、S4において説明されたように、SIPサーバ31を介して通信を実行する。
中継サーバ12は、dialog(1)において、クライアント端末11に対して、ブロック単位のデータが受信されたことを示す応答を送信する(ステップS15:response(from:relay−server−2,to:client−1))。クライアント端末11は、dialog(1)において、中継サーバ12から、ブロック単位のデータが受信されたことを示す応答を受信する。
中継サーバ12は、クライアント端末11の識別情報を返信先として確認する。中継サーバ12は、中継サーバ情報54のクライアント端末識別情報546−1を参照することにより、または、クライアント端末情報63のクライアント端末識別情報634を参照することにより、返信先がWAN3を隔てたLAN2側になくLAN1側にあることを確認する。
中継サーバ12は、ネットワーク設定情報81のうちLAN側設定情報812を参照することにより、dialog(1)においてIPv4通信を採用する。中継サーバ12は、暗号通信設定情報91のうちLAN側設定情報912を参照することにより、dialog(1)において非暗号通信を採用する。中継サーバ12は、クライアント端末11のIPv4通信におけるプライベートIPアドレスを、dialog(1)の転送先として指定する。
dialog(1)は、クライアント端末11および中継サーバ12の相互間の通信である。dialog(2)は、中継サーバ12および中継サーバ22の相互間の通信である。中継サーバ12は、相互に隣接する異なる区間におけるdialog(1)およびdialog(2)を相互に関連付ける。
中継サーバ12は、dialog(1)においてデータを受信したときには、dialog(1)およびdialog(2)を相互に関連付けたことを示す情報を作成したうえで、dialog(2)においてデータを送信する。データの送受信において、dialog(1)およびdialog(2)が相互に関連付けられたことが、「dialog(1):recv()==dialog(2):send()」により示されている。
中継サーバ12は、dialog(2)において応答を受信したときには、dialog(1)およびdialog(2)を相互に関連付けたことを示す情報を参照したうえで、dialog(1)において応答を送信する。応答の送受信において、dialog(1)およびdialog(2)が相互に関連付けられたことが、「dialog(1):send()==dialog(2):recv()」により示されている。
[ステップS16からステップS19までの処理の流れ]
図16は、連続的にデータを送受信する前に、コネクションを確立する処理の流れを示す。クライアント端末11のユーザは、クライアント端末11が所属する中継グループを確認する。具体的には、クライアント端末11のユーザは、中継グループ情報42をクライアント端末11の表示画面に表示させる(getGroup())。中継グループ情報42には、中継サーバ12、22の識別情報「relay−server−1@abc.net」、「relay−server−2@abc.net」が設定されている。クライアント端末11のユーザは、クライアント端末11が中継サーバ12、22により構成される中継グループに所属していることを確認する。
クライアント端末11のユーザは、中継グループ情報42に対応する中継サーバ情報54を、クライアント端末11の表示画面に表示させる(getServer())。クライアント端末11のユーザは、中継サーバ情報54を参照して、中継グループを構成する中継サーバ、中継サーバの下位に位置するクライアント端末を確認する。
クライアント端末11のユーザは、中継サーバ情報54を参照して、クライアント端末21とデータの送受信が可能であることを確認する。クライアント端末11のユーザは、ステップS12からステップS15までの処理の流れと同様に、中継サーバ12、22が起動していることを確認する。
クライアント端末11のユーザは、クライアント端末21について、中継サーバ情報54のクライアント端末サイト情報547−2が「relay−server−2@abc.net」に設定されていることを確認する。すなわち、クライアント端末21が中継サーバ22にログオンしていることを確認する。
クライアント端末11のユーザは、中継サーバ12、22を介して、クライアント端末21に対して、データを送信できることを確認する。クライアント端末11のユーザは、クライアント端末21に対して、連続的にデータを送信することを決定する。
クライアント端末11は、クライアント端末11および中継サーバ12の相互間の通信(stream(1))において、中継サーバ12に対して、コネクション確立の要求情報を送信する(ステップS16:open(client−2,client−1))。
クライアント端末11は、クライアント端末21のIPv4通信におけるプライベートIPアドレスを宛先として指定しない。クライアント端末11は、中継サーバ情報54のクライアント端末識別情報546−2を参照することにより、クライアント端末21の識別情報を宛先として指定する。
クライアント端末11は、クライアント端末11のユーザおよび中継サーバ12の管理者の相互間において決定されたように、stream(1)においてIPv4通信および非暗号通信を採用する。クライアント端末11は、中継サーバ12のIPv4通信におけるプライベートIPアドレスを、stream(1)の転送先として指定する。
中継サーバ12は、stream(1)、中継サーバ12および中継サーバ22の相互間の通信(stream(2))を関連付ける(stream(1):open()==stream(2):open())。中継サーバ12は、stream(2)において、中継サーバ22に対して、コネクション確立の要求情報を送信する(ステップS16.1:open(client−2,client−1))。
中継サーバ12は、クライアント端末21の識別情報を宛先として確認する。中継サーバ12は、中継サーバ情報54のクライアント端末識別情報546−2を参照することにより、宛先がLAN1側になくWAN3を隔てたLAN2側にあることを確認する。
中継サーバ12は、ネットワーク設定情報81のうちWAN側設定情報811を参照することにより、stream(2)においてIPv6通信を採用する。中継サーバ12は、暗号通信設定情報91のうちWAN側設定情報911を参照することにより、stream(2)において暗号通信を採用する。中継サーバ12は、ステップS3、S4において説明されたように、SIPサーバ31を介して通信を実行する。
中継サーバ22は、stream(2)、中継サーバ22およびクライアント端末21の相互間の通信(stream(3))を関連付ける(stream(2):open()==stream(3):open())。中継サーバ22は、stream(3)において、クライアント端末21に対して、クライアント端末情報74を用いてコネクション確立の要求情報を送信する(ステップS16.1.1:open(client−2,client−1))。すなわち、コネクション確立の要求情報は、クライアント端末21に対応するクライアント端末アドレス情報742「192.168.1.10」、クライアント端末ポート情報745「5070」などに基づいて、クライアント端末21に送信される。
中継サーバ22は、クライアント端末21の識別情報を宛先として確認する。中継サーバ22は、中継サーバ情報54のクライアント端末識別情報546−2を参照することにより、または、クライアント端末情報74のクライアント端末識別情報744を参照することにより、宛先がWAN3を隔てたLAN1側になくLAN2側にあることを確認する。
中継サーバ22は、ネットワーク設定情報82のうちLAN側設定情報822を参照することにより、stream(3)においてIPv4通信を採用する。中継サーバ22は、暗号通信設定情報92のうちLAN側設定情報922を参照することにより、stream(3)において非暗号通信を採用する。中継サーバ22は、クライアント端末21のIPv4通信におけるプライベートIPアドレスを、stream(3)の転送先として指定する。
クライアント端末21は、stream(3)において、中継サーバ22に対して、コネクション確立の許可情報を送信する(ステップS16.1.1に対するack)。
クライアント端末21は、クライアント端末11のIPv4通信におけるプライベートIPアドレスを返信先として指定しない。クライアント端末21は、送信元として指定されたクライアント端末11の識別情報を返信先として指定する。
クライアント端末21は、クライアント端末21のユーザおよび中継サーバ22の管理者の相互間において決定されたように、stream(3)においてIPv4通信および非暗号通信を採用する。クライアント端末21は、中継サーバ22のIPv4通信におけるプライベートIPアドレスを、stream(3)の転送先として指定する。
中継サーバ22は、stream(2)およびstream(3)の関連付けを参照する(stream(2):ack()==stream(3):ack())。中継サーバ22は、stream(2)において、中継サーバ12に対して、コネクション確立の許可情報を送信する(ステップS16.1に対するack)。
中継サーバ22は、クライアント端末11の識別情報を返信先として確認する。中継サーバ22は、中継サーバ情報54のクライアント端末識別情報546−1を参照することにより、返信先がLAN2側になくWAN3を隔てたLAN1側にあることを確認する。
中継サーバ22は、ネットワーク設定情報82のうちWAN側設定情報821を参照することにより、stream(2)においてIPv6通信を採用する。中継サーバ22は、暗号通信設定情報92のうちWAN側設定情報921を参照することにより、stream(2)において暗号通信を採用する。中継サーバ22は、ステップS3、S4において説明されたように、SIPサーバ31を介して通信を実行する。
中継サーバ12は、stream(1)およびstream(2)の関連付けを参照する(stream(1):ack()==stream(2):ack())。中継サーバ12は、stream(1)において、クライアント端末11に対して、コネクション確立の許可情報を送信する(ステップS16に対するack)。
中継サーバ12は、クライアント端末11の識別情報を返信先として確認する。中継サーバ12は、中継サーバ情報54のクライアント端末識別情報546−1を参照することにより、または、クライアント端末情報63のクライアント端末識別情報634を参照することにより、返信先がWAN3を隔てたLAN2側になくLAN1側にあることを確認する。
中継サーバ12は、ネットワーク設定情報81のうちLAN側設定情報812を参照することにより、stream(1)においてIPv4通信を採用する。中継サーバ12は、暗号通信設定情報91のうちLAN側設定情報912を参照することにより、stream(1)において非暗号通信を採用する。中継サーバ12は、クライアント端末11のIPv4通信におけるプライベートIPアドレスを、stream(1)の転送先として指定する。
クライアント端末11は、中継サーバ12に対して、クライアント端末11および中継サーバ12の相互間のコネクション(connection(1))を確立する(ステップS17:connection(1))。connection(1)の確立において、IPv4通信および非暗号通信が採用される処理の流れは、ステップS16およびステップS16に対するackと同様である。
中継サーバ12は、中継サーバ22に対して、中継サーバ12および中継サーバ22の相互間のコネクション(connection(2))を確立する(ステップS18:connection(2))。中継サーバ12は、connection(1)およびconnection(2)を関連付ける。connection(2)の確立において、IPv6通信および暗号通信が採用される処理の流れは、ステップS16.1およびステップS16.1に対するackと同様である。
中継サーバ22は、クライアント端末21に対して、クライアント端末情報74を用いて中継サーバ22およびクライアント端末21の相互間のコネクション(connection(3))を確立する(ステップS19:connection(3))。中継サーバ22は、connection(2)およびconnection(3)を関連付ける。connection(3)の確立において、IPv4通信および非暗号通信が採用される処理の流れは、ステップS16.1.1およびステップS16.1.1に対するackと同様である。
以上の処理の流れにより、以下に説明するように、クライアント端末11およびクライアント端末21は、双方向に連続的にデータを送受信できる。データの送受信において、通信方式が選択される処理の流れは、ステップS16、ステップS16.1、ステップS16.1.1およびこれらのステップに対するackと同様である。
クライアント端末11がクライアント端末21に対して連続的にデータを送信するときについて説明する。クライアント端末11は、connection(1)においてデータを送信する(connection(1):send())。中継サーバ12は、connection(1)においてデータを受信したときには、connection(1)およびconnection(2)の関連付けを参照することにより、connection(2)においてデータを送信する(connection(1):recv()==connection(2):send())。中継サーバ22は、connection(2)においてデータを受信したときには、connection(2)およびconnection(3)の関連付けを参照することにより、connection(3)においてデータを送信する(connection(2):recv()==connection(3):send())。クライアント端末21は、connection(3)においてデータを受信する(connection(3):recv())。
クライアント端末21がクライアント端末11に対して連続的にデータを送信するときについて説明する。クライアント端末21は、connection(3)においてデータを送信する(connection(3):send())。中継サーバ22は、connection(3)においてデータを受信したときには、connection(2)およびconnection(3)の関連付けを参照することにより、connection(2)においてデータを送信する(connection(2):send()==connection(3):recv())。中継サーバ12は、connection(2)においてデータを受信したときには、connection(1)およびconnection(2)の関連付けを参照することにより、connection(1)においてデータを送信する(connection(1):send()==connection(2):recv())。クライアント端末11は、connection(1)においてデータを受信する(connection(1):recv())。
[ステップS20からステップS23までの処理の流れ]
図17は、連続的にデータを送受信した後に、コネクションを切断する処理の流れを示す。図16においては、クライアント端末11が、クライアント端末21に対して、コネクション確立の要求情報を送信している。図17においては、クライアント端末21が、クライアント端末11に対して、コネクション切断の要求情報を送信している。
クライアント端末21は、stream(3)において、中継サーバ22に対して、コネクション切断の要求情報を送信する(ステップS20:close())。コネクション切断の要求において、IPv4通信および非暗号通信が採用される処理の流れは、ステップS16およびステップS16に対するackと同様である。
中継サーバ22は、stream(2)およびstream(3)の関連付けを参照する(stream(2):close()==stream(3):close())。中継サーバ22は、stream(2)において、中継サーバ12に対して、コネクション切断の要求情報を送信する(ステップS20.1:close())。コネクション切断の要求において、IPv6通信および暗号通信が採用される処理の流れは、ステップS16.1およびステップS16.1に対するackと同様である。
中継サーバ12は、stream(1)およびstream(2)の関連付けを参照する(stream(1):close()==stream(2):close())。中継サーバ12は、stream(1)において、クライアント端末11に対して、コネクション切断の要求情報を送信する(ステップS20.1.1:close())。コネクション切断の要求において、IPv4通信および非暗号通信が採用される処理の流れは、ステップS16.1.1およびステップS16.1.1に対するackと同様である。
クライアント端末21は、中継サーバ22に対して、connection(3)を切断する(ステップS21:disconnect(3))。connection(3)の切断において、IPv4通信および非暗号通信が採用される処理の流れは、ステップS16およびステップS16に対するackと同様である。
中継サーバ22は、connection(2)およびconnection(3)の関連付けを参照する(connection(2):disconnect==connection(3):disconnect)。中継サーバ22は、中継サーバ12に対して、connection(2)を切断する(ステップS22:disconnect(2))。connection(2)の切断において、IPv6通信および暗号通信が採用される処理の流れは、ステップS16.1およびステップS16.1に対するackと同様である。
中継サーバ12は、connection(1)およびconnection(2)の関連付けを参照する(connection(1):disconnect==connection(2):disconnect)。中継サーバ12は、クライアント端末11に対して、connection(1)を切断する(ステップS23:disconnect(1))。connection(1)の切断において、IPv4通信および非暗号通信が採用される処理の流れは、ステップS16.1.1およびステップS16.1.1に対するackと同様である。
{データ送受信のまとめ}
中継通信システムにおいて、遠隔のLANがWANを超えて通信することがある。ここで、LAN内およびWAN内の通信方式として異なる通信方式を採用することがある。
送信側は、受信側にWANを超えてデータを送信するときには、受信側のIPアドレスをデータ宛先として指定しない。そして、中継サーバは、データ宛先として受信側のIPアドレスを参照することにより、データ転送先を決定しない。すなわち、中継通信システム全体において同様の体系で設定されないIPアドレスは、WANを超えるデータ送受信において利用されない。
送信側は、受信側にWANを超えてデータを送信するときには、受信側の識別情報をデータ宛先として指定する。そして、中継サーバは、データ宛先として受信側の識別情報を参照することにより、データ転送先を決定する。すなわち、中継通信システム全体において統一管理されている識別情報が、WANを超えるデータ送受信において利用される。
中継サーバは、中継グループ情報、中継サーバ情報、クライアント端末情報、ネットワーク設定情報、暗号通信設定情報を保有する。そして、中継サーバは、受信側の識別情報を、中継グループ情報、中継サーバ情報、クライアント端末情報と照合することにより、データ転送先を決定する。さらに、中継サーバは、データ転送先を、ネットワーク設定情報、暗号通信設定情報と照合することにより、データ転送の通信方式を決定する。
中継サーバは、受信側の識別情報に基づいてデータ転送先を決定するため、通常のルータとは一線を画する。中継サーバは、データ転送先に基づいてデータ転送の通信方式を決定するため、通常の暗号/復号ゲートウェイとは一線を画する。データ宛先として受信側の識別情報を指定しさえすれば、一の区間におけるデータ送受信においては、他の区間における通信方式まで考慮しないで、一の区間における通信方式のみ考慮すればよい。中継通信システムは、各区間における通信方式を独立方式にする、柔軟性のある運用を容易に図ることができる。
本実施の形態においては、LAN内の通信方式として、IPv4通信および非暗号通信を採用して、WAN内の通信方式として、IPv6通信および暗号通信を採用する。しかし、LAN内およびWAN内の通信方式は、以上の通信方式に限定されない。
本実施の形態においては、IPv4通信およびIPv6通信のうち、いずれかの通信方式を採用して、暗号通信または非暗号通信のうち、いずれかの通信方式を採用する。しかし、通信オプションは、以上の通信オプションに限定されない。