JP6308295B2 - 通信装置、サーバ、通信システム及び通信方法 - Google Patents

通信装置、サーバ、通信システム及び通信方法 Download PDF

Info

Publication number
JP6308295B2
JP6308295B2 JP2016514623A JP2016514623A JP6308295B2 JP 6308295 B2 JP6308295 B2 JP 6308295B2 JP 2016514623 A JP2016514623 A JP 2016514623A JP 2016514623 A JP2016514623 A JP 2016514623A JP 6308295 B2 JP6308295 B2 JP 6308295B2
Authority
JP
Japan
Prior art keywords
lan
nat
router
server
communication
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.)
Expired - Fee Related
Application number
JP2016514623A
Other languages
English (en)
Other versions
JPWO2015162735A1 (ja
Inventor
雅也 織田
雅也 織田
竜一 江淵
竜一 江淵
友和 牧野
友和 牧野
純嗣 小野
純嗣 小野
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
Publication of JPWO2015162735A1 publication Critical patent/JPWO2015162735A1/ja
Application granted granted Critical
Publication of JP6308295B2 publication Critical patent/JP6308295B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4604LAN interconnection over a backbone network, e.g. Internet, Frame Relay
    • 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/255Maintenance or indexing of mapping tables
    • 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/2557Translation policies or rules
    • 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

Landscapes

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

Description

本発明は、通信装置、サーバ、通信システム及び通信方法に関する。
ブロードバンドルータの普及により、例えば宅内にLAN(Local Area Network)を利用できる環境を構築し、LAN内の機器をルータを介してインターネット上の機器に接続する形態が提案されている(例えば、特許文献1及び特許文献2参照)。
LAN内の機器とインターネット上の機器とでは、ネットワークに割り当てられるアドレスの体系が異なる。よって、ルータが、LANのプライベートIPアドレスとインターネットのグローバルIPアドレスとが対応付けられたNATエントリを使用してアドレス変換を行うことにより、LAN内の機器とインターネット上の機器との通信が可能となる(NAT越え)。
NAT越えの技術としては、静的NAT/UPnP(Universal Plug and Play)によるポートフォワーディングや、動的NAT/STUN(Simple Traversal of UDP through NATs)が挙げられる。静的NAT/UPnPによるポートフォワーディングは、NATルータに対し、NATエントリを固定的に設定するか、あるいは、UPnP対応のルータに対し、UPnPによりポートフォワードを固定的に設定する。動的NATは、インターネットとの通信が発生すると動的にNATエントリを作成する。この場合、一定時間無通信であるとNATエントリは消去される。
特開2005−102316号公報 特開2005−130453号公報
しかしながら、NATエントリが消去されると、ルータによるIPアドレスの対応付けができないため、LAN内の機器とインターネット上の機器との通信はできなくなる。
一方、UPnP対応のルータが設定するNATエントリは消去されない。ただし、このUPnPの技術は、LANの機器と隣接するルータにしか使用できない。
そこで、一つの側面では、LANのルータの構成に応じてNAT越えが可能な状態を維持することを目的とする。
一つの態様では、LANのルータでNAT越えを行い、外部ネットワークを介してサーバと接続されるLAN上の通信装置であって、前記LANのルータの構成を判定するLAN構成判定部と、前記LANのルータの構成が二段以上と判定された場合、前記サーバに登録されている前記NAT越えを行うルータへ、一定時間無通信であってもNATエントリは消去されない間隔でNAT更新要求パケットを送信するように要求する通信装置側の通信制御部と、を有する通信装置が提供される。
一つの側面として、LANのルータの構成に応じてNAT越えが可能な状態を維持することで、サーバの負荷を軽減することができる。
第1実施形態にかかる通信システムを示した図。 通信システムのルータが一段の場合のNAT越えを説明するための図。 通信システムのルータが多段の場合のNAT越えを説明するための図。 第1実施形態にかかるPC、サーバ、ルータの機能構成を示す図。 NATエントリ更新処理(ルータ構成一段)を示すフローチャート。 図5のS1のLAN登録要求の一例を示す図。 図5のS2のLAN登録要求受信処理を示すフローチャート。 図5のS3のLAN登録要求の一例を示す図。 図5のS4のPCから送信されるLAN登録要求の一例を示す図。 図5のS5のルータで保持するNATエントリの一例を示す図。 図5のS6のNAT変換後のLAN登録要求の一例を示す図。 図5のS8のLAN登録要求受信処理を示すフローチャート。 図5のS8のLAN情報テーブルの一例を示す図。 図5のS9のNAT更新要求送信処理を示すフローチャート。 図5のS11のサーバから送信されるNAT更新要求の一例を示す図。 図5のS13のNAT変換後のNAT更新要求の一例を示す図。 図5のS15のNAT更新要求受信処理を示すフローチャート。 第1実施形態にかかるNATエントリ更新処理(ルータ構成一段又は多段)を示すフローチャート。 図18のS22のLAN登録要求受信処理を示すフローチャート。 図18のS23のLAN構成判定要求の一例を示す図。 図18のS24のLAN構成判定要求受信処理を示すフローチャート。 図18のS30のLAN構成判定処理を示すフローチャート。 図18のS31のLAN構成判定応答の一例を示す図。 図18のS32のLAN構成判定応答受信処理を示すフローチャート。 第2実施形態にかかる通信システムを示した図。 第2実施形態にかかるPC、サーバ、ルータの機能構成を示す図。 第2実施形態にかかるNAT更新周期最適化処理を示すフローチャート。 図27のS41のLAN登録要求の一例を示す図。 図27のS44のPCから送信されるLAN登録要求の一例を示す図。 図27のS48のLAN登録要求受信処理を示すフローチャート。 図27のS50の周期最適化要求の一例を示す図。 図27のS52の周期最適化要求受信処理を示すフローチャート。 図27のS52の周期送信管理テーブル(初回登録時)の一例を示す図。 図27のS54のNATエントリ生存確認送信処理を示すフローチャート。 図27のS55のNATエントリ生存確認の一例を示す図。 図27のS60のNATエントリ生存確認受信処理を示すフローチャート。 図27のS61のNATエントリ生存確認応答の一例を示す図。 図27のS71の周期送信タイマ更新処理(NATエントリ生存確認応答受信時)を示すフローチャート。 図27のS71の周期送信管理テーブルの一例を示す図。 図27のS78の応答待ちタイマ満了処理を示すフローチャート。 図27のS79の周期最適化応答の一例を示す図。 図27のS80の周期最適化応答受信処理を示すフローチャート。 第3実施形態にかかる通信システムを示した図。 第3実施形態にかかるPC、サーバ、ルータの機能構成を示す図。 第3実施形態にかかるLAN変更処理を示すフローチャート。 図45のS90の重複LAN検索要求の一例を示す図。 図45のS91の重複LAN検索処理を示すフローチャート。 図45のS91の重複管理テーブルの一例を示す図。 図45のS92の重複LAN検索応答の一例を示す図。 図45のS93のLAN登録処理を示すフローチャート。 図45のS93のサーバ(NAT制御部)で保持するLAN情報テーブルの一例を示す図。 図45のS102の重複管理テーブルの一例を示す図。 図45のS104のLAN情報テーブルの一例を示す図。 第1〜第3実施形態にかかるPC、サーバ、ルータのハードウェア構成を示す図。
以下、本発明の実施形態について添付の図面を参照しながら説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複した説明を省く。
<第1の実施形態>
[通信システム]
まず、本発明の第1実施形態に係る通信システムについて、図1を参照しながら説明する。図1は、第1実施形態にかかる通信システムを示した図である。図1(a)は、本通信システム10のLAN内のルータの構成が一段の場合を示し、図1(b)は、通信システム10のLAN内のルータが多段(二段以上)の場合を示す。
図1(a)の通信システム10では、PC1とサーバ2とが、LAN11とWAN12及びインターネット13とを介して接続されている。ルータ3aは、PC1のプライベートIPアドレスとWAN12のグローバルIPアドレスとが対応付けられたNATエントリを生成し、NATエントリに基づきプライベートIPアドレスとグローバルIPアドレスとのアドレス変換を行う。以下、プライベートIPアドレスを「ローカルIPアドレス」ともいう。これにより、PC1とサーバ2との通信が可能となる。なお、WAN12及びインターネット13は、外部ネットワークの一例である。
図1(b)の通信システム10は、LAN11のルータの構成がルータ3a、3b(以下、総称して「ルータ3」ともいう)の二段の場合を示す。ルータ3bは、LAN内のプライベートIPアドレスが対応付けられたNATエントリを生成してアドレス変換を行う。ルータ3aは、LANのプライベートIPアドレスとWAN12のグローバルIPアドレスとが対応付けられたNATエントリを生成してアドレス変換を行う。
図2に示したように、PC1は、隣接するルータ3(一段の場合にはルータ3b、二段の場合にはルータ3a)に、IPアドレスの取得要求を送信する(1)。PC1は、IPアドレスを隣接するルータ3から取得する(2)。
PC1は、取得したIPアドレスに基づき、LAN11内のルータ3の構成が一段か二段以上(二段以上を「多段」とも表記する)かの判定を実行する(3)。PC1は、IPアドレスがプライベートIPアドレスと判定した場合、ルータ3の構成は二段以上であり、隣接するルータの先のルータでプライベートIPアドレスからグローバルIPアドレスへの変換が行われていると判断する。
一方、PC1は、取得したIPアドレスがグローバルIPアドレスと判定した場合、隣接するルータでプライベートIPアドレスからグローバルIPアドレスへの変換が行われているため、ルータ3は一段で構成されていると判定する。
LAN11内のルータ3が一段で構成されている場合、UPnPによるポートフォワーディングによりNAT越えが可能である。この場合、一定時間無通信であってもNATエントリは消去されない。
これに対して、LAN11内のルータ3が多段で構成されている場合、WAN12(インターネット13)側のルータ3は、インターネット13との通信が発生すると動的にNATエントリを作成する。この場合、一定時間無通信であるとNATエントリは消去される。
以下に説明する一実施形態にかかる通信システム10では、LAN11内のルータ3が多段で構成されているかを判定し、多段の場合、PC1は、LAN11の登録要求(つまり、一定時間無通信であってもNATエントリを延命させるための登録要求を実行し、サーバ2は、登録したLAN11へNAT更新要求パケットを送信する。これにより、一定時間無通信であってもNATエントリを消去することを回避できる。
具体的には、図3に示したように、PC1は、LAN11内のルータ3が多段で構成されていると判定した場合、サーバ2へLAN登録要求を発信する(1)。ルータ3bは、IPアドレス及びポート変換を行い、NATテーブルを生成する(2)。ルータ3aは、IPアドレス及びポート変換を行い、NATテーブルを生成する(2)'。これにより、NAT越えが可能になる。
サーバ2は、PC1からのLAN登録要求に応じて、(2)'のPC1のグローバルIPアドレス及びポート情報を後述されるLAN情報テーブルに保持する(3)。次に、サーバ2は、所定の間隔(例えば定期的)に(3)でLAN情報テーブルに保持されたグローバルIPアドレス及びポート情報にNAT更新要求パケットを送信する(4)。ルータ3aは、NAT更新要求パケットを受信することで、一定時間無通信であるときにNATエントリが消去されることを回避し、NAT越えが可能な状態を維持することができる(5:NATエントリ延命)。また、PC1は、LAN11内のルータ3が多段で構成されている場合のみLAN11の登録要求を行い、サーバ2はこれに応じてNAT更新要求パケットを送信する。これにより、ルータ3が一段で構成されている場合にはNAT更新要求パケットの周期的送信を行わないことで、サーバ2及びネットワークの負荷を軽減することができる。
なお、ルータ3bは、プライベートIPアドレスの変換を行い、NAT更新要求パケットをPC1に送信する。ルータ3bもルータ3aと同様に、NAT更新要求パケットを受信することで、NATエントリを延命させることができる(5)。
以上に説明したように、本実施形態では、LAN11内のルータ3が多段で構成されている場合、サーバ2がPC1のグローバルIPアドレス及びポート宛てに所定の間隔でUDP(User Datagram Protocol)によるNAT更新要求パケットを送信することで、ルータ3のNATエントリを維持することができる。
[各装置の機能構成]
次に、第1実施形態に係るPC1、サーバ2、ルータ3の機能構成について、図4を参照しながら説明する。図4は、第1実施形態に係るPC1、サーバ2、ルータ3の機能構成を示す図である。
PC1は、UI部14、LAN登録部15、LAN構成判定部16、UPnP取得部17及び通信制御部18を有する。PC1は、LAN11のルータ3でNAT越えを行い、インターネット13等の外部ネットワークを介してサーバ2と接続されるLAN上の通信装置の一例である。通信装置は、PC1に限られず、テレビジョン受像機や録画再生機器、ゲーム機器、音楽再生機器などのマルチメディア装置、通信機能を有する冷蔵庫、洗濯機、エアコン、電子レンジ等の家電機器、携帯機器、タブレット型端末等であってもよい。
UI部14は、サーバ2へのLAN登録を行うためのユーザインタフェースの機能を有する。LAN登録部15は、サーバ2へのLAN登録を制御する。UPnP取得部17は、UPnP対応のルータ3にアクセスし、IPアドレスを取得する。LAN構成判定部16は、取得したIPアドレスにより、LAN11内のルータ構成(一段又は多段)を判断する。通信制御部18は、TCP/IPによる他装置との通信を制御する。
ルータ3は、通信制御部31及びUPnP処理部33を有する。通信制御部31は、TCP/IPによる他装置との通信を制御する。UPnP処理部33は、PC1のUPnP取得部17によるIPアドレス取得に応答し、PC1の外向けのIPアドレスを送信する。通信制御部31は、NATテーブル32を保持する。NATテーブル32は、LAN11とWAN12(インターネット13)間のIPアドレス変換を行うためのNATエントリーを記憶したアドレス変換のためのテーブルである。
サーバ2は、通信制御部21、NAT制御部22及び記憶部23を有する。通信制御部21は、TCP/IPによる他装置との通信を制御する。NAT制御部22は、PC1からのLAN登録要求に応じて、ルータ3にNAT更新要求パケットを送信する。記憶部23は、LAN登録要求に応じてNAT更新要求パケットを送信するルータ3のNATエントリの情報をLAN情報テーブル24に記憶する。
[NATエントリ更新処理(ルータ構成一段)]
次に、ルータ構成が一段の場合(図3(a))のNATエントリ更新処理について、図5を参照しながら説明する。図5は、NATエントリ更新処理(ルータ構成が一段の場合)を示すフローチャートである。図5では、LAN登録処理が実行され、次にNATエントリ更新処理が実行される。
(LAN登録要求)
NATエントリ更新処理が開始されると、まず、PC1のUI部14が、LAN登録要求を送信する(ステップS1)。図6は、LAN登録要求に含まれる情報の一例として、上段にパラメータ、下段に各パラメータに対する設定値を示す。LAN登録要求には、メッセージ種別61に「LAN登録要求」、周期送信間隔情報62に「800秒」が設定されている。
図5にてステップS1のLAN登録要求を受けて、LAN登録部15が、LAN登録要求受信処理を実行する(ステップS2)。図7のLAN登録要求受信処理では、LAN登録部15は、端末IDを決定し(ステップS100)、通信制御部18にLAN登録要求を送信する(ステップS101)。端末IDには、PC1のMACアドレスを使用してもよいし、インターネットで一意となる他のIDを生成してもよい。
次に、図5にてLAN登録部15は、LAN登録要求を送信する(ステップS3)。図8に示すように、LAN登録部15から送信されるLAN登録要求に含まれる情報には、ステップS1においてUI部14から送信されたLAN登録要求に端末ID63「12345」が付加されている。
次に、図5にて通信制御部18は、LAN登録要求のIPパケットを送信する(ステップS4)。図9に示すLAN登録要求のIPパケットは、PC1からルータ3に送信される。LAN登録要求のIPパケットには、IPヘッダに送信先IPアドレス71及び送信元IPアドレス72、UDPヘッダに送信先ポート73、送信元ポート74、LAN情報にメッセージ種別75、端末ID76及び周期送信間隔情報77が設定されている。ここでは、送信先IPアドレス71にサーバ2のIPアドレス「100.100.100.1」、送信元IPアドレス72にPC1のIPアドレス「192.168.10.1」、送信先ポート73にサーバ2のポート「2000」、送信元ポート74にPC1のポート「1000」が設定される。
次に、図5にてルータ3の通信制御部31は、プライベートIPアドレスとグローバルIPアドレスとが対応付けられたNATエントリを生成してアドレス変換を行う(ステップS5)。図10に示すように、ルータ3が生成するNATエントリは、プライペートIPアドレス81、プライペートポート82、グローバルIPアドレス83、グローバルポート84、サーバIPアドレス85及びサーバポート86の情報を含む。生成されたNATエントリは、NATテーブル32に保存される。ルータ3は、NATエントリに基づきLAN11内のPC1のプライベートIPアドレス「192.168.10.1」をインターネットのグローバルIPアドレス「120.120.120.120」にアドレス変換する。これにより、PC1は、ルータ3でNAT越えを行い、インターネット13を介してサーバ2と接続可能となる。
次に、図5にてルータ3の通信制御部31は、NAT変換後のLAN登録要求のIPパケットをサーバ2に送信する(ステップS6)。図11に示すNAT変換後のLAN登録要求は、送信元IPアドレス92にアドレス変換後のグローバルIPアドレス「120.120.120.120」が設定され、送信元ポート94にグローバルポート「1500」が設定される。
次に、図5にてサーバ2の通信制御部21は、NAT変換後のLAN登録要求のIPパケットを受信し、そのLAN登録要求をNAT制御部22に送信する(ステップS7)。NAT制御部22は、LAN登録要求受信処理を実行する(ステップS8)。図12に示すように、LAN登録要求受信処理では、NAT制御部22は、LAN情報テーブル24を生成する(ステップS103)。記憶部23は、LAN情報テーブル24を記憶する。LAN情報テーブル24は、図13に示すように、端末ID241、端末IPアドレス242、端末ポート番号243.周期送信間隔情報244の情報を含む。端末ID241にはPC1を識別するためのIDが設定され、端末IPアドレス242には、NATエントリのグローバルIPアドレスが設定され、端末ポート番号243にはグローバルポートが設定される。周期送信間隔情報244には、サーバ2からNAT越えを行うルータ3へNAT更新要求パケットを送信する際の所定の間隔(周期)として「800秒」が設定される。
(NATエントリ更新)
次に、図5にてNAT制御部22は、NAT更新要求送信処理を実行する(ステップS9)。図14に示すように、NAT更新要求送信処理では、NAT制御部22は、NATエントリ更新タイマで時刻をカウントし、前回のNAT更新要求パケットの送信から周期送信間隔である800秒が経過したとき(ステップS106:満了)、NAT更新要求を送信する(ステップS107)。NAT制御部22は、NATエントリ更新タイマで次のNAT更新要求パケットの送信のためのカウントを開始する(ステップS108)。
このようにして、図5にてNAT制御部22は、NAT更新要求を送信する(ステップS10)。次いで、通信制御部21は、NAT更新要求のIPパケットをルータ3に送信する(ステップS11)。図15のNAT更新要求のIPパケットには、IPヘッダに送信先IPアドレス101、送信元IPアドレス102、UDPヘッダに送信先ポート103、送信元ポート104、メッセージの内容にメッセージ種別105及び端末ID106が設定されている。送信先IPアドレス101にはグローバルIPアドレス「120.120.120.120」、送信元IPアドレス102にはサーバ2のIPアドレス「100.100.100.1」が設定される。また、送信先ポート103にはグローバルポート「1500」、送信元ポート104にはサーバ2のポート「2000」が設定される。メッセージ種別105は「NAT更新」、端末ID106は「12345」である。
次に、図5にてルータ3aの通信制御部31は、NATエントリを更新し、グローバルIPアドレスからプライベートIPアドレスにアドレス変換を行う(ステップS12)。次に、通信制御部31は、NAT更新要求のIPパケットをPC1に送信する(ステップS13)。図16に示すNAT変換後のNAT更新要求のIPパケットは、送信先IPアドレス111にアドレス変換後のプライベートIPアドレス「192.168.10.1」が設定され、送信先ポート103にプライベートポート「1000」が設定される。
次に、図5にてPC1の通信制御部18は、NAT更新要求を送信する(ステップS14)。LAN登録部15は、NAT更新要求を受けて、NAT更新要求受信処理を実行する(ステップS15)。この時点では、ルータ3のNATエントリは更新済みであるため、特にPC1側で何らかの処理を行う必要はない。よって、図17に示すように、LAN登録部15は、NAT更新要求受信処理では、何もしないか、受信したIPパケットに基づきエラーチェックを行う(ステップS109)。例えば、IPパケットに含まれる端末ID(図16の116)をチェックし、自PCと異なる端末IDが設定されていた場合には、エラーを表示してもよい。
[NATエントリ更新処理(ルータ構成一段又は多段)]
次に、ルータ構成が一段又は多段の場合(図3(b))のNATエントリ更新処理について、図18を参照しながら説明する。図18は、NATエントリ更新処理(ルータ構成一段又は多段)を示すフローチャートである。図18では、LAN登録処理が実行され、次にNATエントリ更新処理が実行される。LAN登録処理では、本実施形態の特徴の一つであるLAN構成判定処理が実行される。図18では、図1(b)に示したPC1に最も近いルータ3bが、ルータ3として示されている。
(LAN登録要求)
まず、PC1のUI部14が、LAN登録要求を送信する(ステップS21)。次に、LAN登録部15が、LAN登録要求受信処理を実行する(ステップS22)。図19のLAN登録要求受信処理においてLAN登録部15は、端末IDを決定し(ステップS110)、LAN構成判定部16にLAN構成判定要求を送信する(ステップS111)。
これにより、図18のステップS23にてLAN登録部15からLAN構成判定部16にLAN構成判定要求が送信される。図20には、メッセージ種別121がLAN構成判定要求に設定されたLAN構成判定要求の一例が示されている。
次に、図18にてLAN構成判定部16は、LAN構成判定要求受信処理を実行する(ステップS24)。図21のLAN構成判定要求受信処理においてLAN構成判定部16は、PC1のUPnPの機能が有効になっているかを判定する(ステップS113)。LAN構成判定部16は、UPnPの機能が有効になっていると判定した場合、IPアドレス(以下、「外向けアドレス」ともいう。)の取得要求をUPnP取得部17に送信する(ステップS114)。LAN構成判定部16は、UPnPの機能が有効になっていないと判定した場合、LAN構成判定の結果が「判定不能」である応答をLAN登録部15に送信する(ステップS115)。
次に、図18にてUPnP取得部17は、外向けアドレスの取得要求(ステップS25)を受けて、外向けアドレス取得要求受信処理を実行する(ステップS26)。次に、UPnP取得部17は、外向けアドレス取得要求のIPパケットをPC1に隣接するルータ3bのUPnP処理部33に送信する(ステップS27)。UPnP処理部33は、外向けアドレスを通知するIPパケットを送信する(ステップS28)。
次に、UPnP取得部17は、外向けアドレスの取得応答を送信する(ステップS29)。LAN構成判定部16は、LAN構成判定処理を実行する(ステップS30)。図22のLAN構成判定処理においてLAN構成判定部16は、PC1から最も近いルータ3から取得した外向けアドレス(ネットワークアドレス)を判定する(ステップS117)。LAN構成判定部16は、取得した外向けアドレスがグローバルIPアドレスと判定した場合、ルータ3にてグローバルIPアドレスへの変換を行っており、LAN11内のルータの構成が一段になっていると判断する。よって、LAN構成判定部16は、LANのルータ構成の判定結果が「一段」である応答をLAN登録部15に送信する(ステップS118)。
一方、ステップS117にてLAN構成判定部16は、外向けアドレスがプライベートIPアドレスと判定した場合、LAN11内にプライベートIPアドレスからグローバルIPアドレスへの変換を行う別のルータが存在すると判断する。これにより、LAN構成判定部16は、LAN11内のルータの構成は二段以上であると判定する。よって、LAN構成判定部16は、LAN構成判定の結果が「多段(二段以上)」である応答をLAN登録部15に送信する(ステップS119)。
次に、図18にてLAN登録部15は、LAN構成判定の応答を受信する(ステップS31)。図23のLAN構成判定応答の一例には、メッセージ種別123が「LAN構成判定応答」、結果情報124が「一段構成/多段構成/判定不能のいずれか」に設定されている。
次に、図18にてLAN登録部15は、LAN構成判定応答受信処理を実行する(ステップS32)。図24のLAN構成判定応答受信処理においてLAN登録部15は、LAN構成判定応答の結果を判定する(ステップS121)。LAN登録部15は、ルータの構成が一段であると判定した場合、一定時間無通信であってもNATエントリは消去されず、サーバ2からのNAT更新要求パケットの送信は不要と判断し、何も処理しない(ステップS122)。これに対して、LAN登録部15は、ルータの構成が二段以上であると判定した場合、通信制御部18にLAN登録要求を送信する(ステップS123)。なお、LAN登録要求に応じてサーバ2が実行するNAT更新要求パケットの周期的送信処理は、すでに説明した図5のステップS3〜S15を実行することにより遂行されるため、ここでは説明を省略する。
よって、本実施形態によれば、PC1は、LAN11内のルータの構成を判定し、ルータの構成が二段以上であると判定した場合、サーバ2に向けてLAN登録要求を送信する。サーバ2は、LAN登録要求に応じて、周期送信間隔(例えば、5秒)でNAT更新要求のIPパケットを周期的に送信する。これにより、LAN11内のルータの構成が二段以上である場合においても、一定時間無通信のときにNATエントリが消去されることを回避できる。
以上に説明したように、第1実施形態にかかる通信システム10によれば、接続されるLANのルータの構成をPC1が判別することで、サーバ2からのNAT更新要求のIPパケットの周期送信の要否を判定することができる。これにより、ルータの構成が二段以上の場合においてもルータにNATエントリを記憶し続けることができ、NAT越えが可能な状態を維持することができる。なお、ルータの構成が一段の場合、UPnP機能が有効なルータが設定するNATエントリは消去されないように規定されている。よって、ルータの構成が一段と判定された場合には、PC1からLAN登録要求を送信しないことにより、NAT更新要求パケットはサーバ2から送信されない。これにより、サーバの負荷及びネットワークのトラフィックを軽減することができる。
<第2の実施形態>
次に、本発明の第2実施形態に係る通信システム10の全体構成及び機能構成について図25及び図26を参照しながら説明する。図25は、第2実施形態に係る通信システム10の全体構成を示し、図26は、第2実施形態に係るPC1、サーバ2、ルータ3の機能構成を示す。第2実施形態では、サーバ2とは別に周期送信最適化サーバ7が存在する点が、第1実施形態と異なる。なお、図25では、ルータ3(ルータ3a)は一段の構成になっているが、多段の構成であってもよい。
図26に示すように、PC1、サーバ2、ルータ3の機能構成は第1実施形態と同一である。第2実施形態において追加された周期送信最適化サーバ7は、周期最適化部25及び通信制御部26を有する。周期最適化部25は、NAT更新要求パケットの送信間隔を制御する。周期最適化部25は、周期送信管理テーブル27にNAT更新要求パケットの送信間隔を制御するための情報を保存する。通信制御部26は、TCP/IPによる他装置との通信を制御する。
[NAT更新周期最適化処理]
次に、本実施形態にかかるNAT更新周期最適化処理について、図27を参照しながら説明する。図27は、NAT更新周期最適化処理を示すフローチャートである。図27では、サーバ2で第1実施形態にて説明したLAN登録処理及びNATエントリ更新処理が実行され、周期送信最適化サーバ7では、本実施形態の特徴の一つであるNAT更新要求パケットの周期最適化処理が実行される。
(LAN登録要求)
NAT更新周期最適化処理が開始されると、まず、PC1のUI部14が、LAN登録要求を送信する(ステップS41)。図28に示すように、LAN登録要求に含まれる情報の一例としては、メッセージ種別126に「LAN登録要求」、周期送信間隔情報127に「800秒」、最適化情報128に「あり」が設定されている。最適化情報128のパラメータは、例えばユーザがUI部14の画面上で「最適化を行う」の項目にチェックを入れた場合に「あり」に設定される。
LAN登録部15は、LAN登録要求を生成し(ステップS42)、LAN登録要求を送信する(ステップS43)。通信制御部18は、LAN登録要求のIPパケットをルータ3に送信する(ステップS44)。図29に示すLAN登録要求のIPパケットは、、PC1からルータ3に送信される。LAN登録要求のIPパケットには、送信先IPアドレス131、送信元IPアドレス132、送信先ポート133、送信元ポート134、メッセージ種別135、端末ID136、周期送信間隔情報137及び最適化情報138が設定されている。送信先IPアドレス131にはサーバ2のIPアドレス「100.100.100.1」、送信元IPアドレス132にはPC1のIPアドレス「192.168.10.1」が設定されている。また、送信先ポート133にはサーバ2のポート「2000」、送信元ポート134にはPC1のポート「1000」が設定されている。また、メッセージ種別135には「LAN登録」、端末ID136には「12345」、周期送信間隔137には「800秒」及びLAN情報の最適化情報138には「あり」が設定されている。
次に、図27にてルータ3の通信制御部31は、NATエントリを生成し(ステップS45)、IPアドレスをプライベートIPアドレスからグローバルIPアドレスに変換する。次に、通信制御部31は、NAT変換後のLAN登録要求のIPパケットをサーバ2に送信する(ステップS46)。サーバ2の通信制御部21は、NAT変換後のLAN登録要求のIPパケットを受信し、そのLAN登録要求をNAT制御部22に送信する(ステップS47)。NAT制御部22は、LAN登録要求受信処理を実行する(ステップS48)。図30に示すように、LAN登録要求受信処理では、NAT制御部22は、LAN情報テーブル24を生成する(ステップS126)。次に、NAT制御部22は、LAN登録要求の送信間隔の最適化を判定する(ステップS127)。PC1から送信されるLAN登録要求の最適化情報(図29の138)に「あり」が設定されている場合、NAT制御部22は、周期送信最適化サーバ7に周期最適化要求を送信する(ステップS128)。一方、PC1から送信されるLAN登録要求の最適化情報に「なし」が設定されている場合、NAT制御部22は、NATエントリ更新タイマを開始する(ステップS129)。ここで、計時されるタイマ値は、LAN情報テーブル24の周期送信間隔の設定値(図13の244)である。
これにより、図27にて通信制御部21は、NAT制御部22からの周期最適化要求を(ステップS49)を受けて、周期最適化要求のIPパケットを周期送信最適化サーバ7に送信する(ステップS50)。図31には、周期最適化要求に含まれる情報の一例が示されている。送信先IPアドレス141には周期送信最適化サーバ7のIPアドレス「100.100.100.2」、送信元IPアドレス142にはサーバ2のIPアドレス「100.100.100.1」が設定されている。送信先ポート143及び送信元ポート144には、サーバ間の通信に使用される任意のポート番号が設定される。また、メッセージ種別145には「周期最適化要求」が設定され、端末ID146には「12345」が設定されている。端末IPアドレス147にはルータ3aのIPアドレス「120.120.120.120」、端末ポート番号148に「1200」が設定される。
次に、通信制御部26は、周期最適化要求を周期最適化部25に送信する(ステップS51)。周期最適化部25は、周期最適化要求受信処理を実行する(ステップS52)。図32に示すように、周期最適化要求受信処理では、周期最適化部25は、周期送信管理テーブル27に、周期最適化要求で通知された端末ID、端末IPアドレス及び端末ポート番号を設定する。
図33には、周期送信管理テーブル27の一例として、端末ID151、端末IPアドレス152、端末ポート番号153、現在周期154及び前回周期155が示されている。端末ID151にはPC1の端末ID「12345」、端末IPアドレス152にはルータ3のIPアドレス「120.120.120.120」が設定される。また、現在周期は、サーバ2が使用している周期(LAN情報テーブル24の周期送信間隔の設定値)が設定され、前回の周期は「0」に設定されている。
この状態において、サーバ2では、LAN情報テーブル24の周期送信間隔の設定値に基づきNAT更新要求パケットを周期的に送信する。このNATエントリ更新処理(ステップS81〜S85)については後述する。
サーバ2が実行するNATエントリ更新処理と並行して、周期送信最適化サーバ7は、NATエントリ更新周期最適化処理(ステップS53〜S80)を実行する。具体的には、周期最適化部25は、周期送信タイマによる周期送信間隔のカウントを開始する(ステップS53)。周期送信タイマが終了すると、周期送信最適化サーバ7は、NATエントリ生存確認送信処理を実行する(ステップS54)。図34に示すように、NATエントリ生存確認送信処理では、タイマが満了すると(ステップS134)、周期最適化部25は、周期送信管理テーブル27に登録された端末IPアドレス、端末ポート番号へNATエントリ生存確認を送信する(ステップS135)。これにより、ルータ3にNATエントリ生存確認が通知される。次に、周期最適化部25は、NATエントリ生存確認応答待ちタイマ(固定値で例えば10秒等に設定)のカウントを開始する(ステップS136)。
これにより、図27にて周期送信最適化サーバ7の通信制御部26は、周期最適化部25からのNATエントリ生存確認を受けて(ステップS55)、NATエントリ生存確認のIPパケットをルータ3の通信制御部31に送信する(ステップS56)。図35には、NATエントリ生存確認に含まれる情報の一例が示される。送信先IPアドレス161にはグローバルIPアドレス「120.120.120.120」、送信元IPアドレス162には周期送信最適化サーバ7のIPアドレス「100.100.100.2」が設定されている。また、送信先ポート163にはグローバルポート「1200」、送信元ポート164には周期送信最適化サーバ7のポート「2000」が設定されている。メッセージ内容には、メッセージ種別164には「生存確認」、PC1の端末IDには「12345」が設定されている。
なお、NATエントリ生存確認のIPパケットは、NAT更新要求パケットを送信するサーバ2とは異なる周期送信最適化サーバ7から間隔を変えて送信されるテスト用パケットの一例である。本実施形態では、テスト用パケットは、徐々に間隔を長くして送信される。
通信制御部31は、NATエントリを更新し、グローバルIPアドレスからプライベートIPアドレスにアドレス変換を行う(ステップS57)。次に、通信制御部31は、NATエントリ生存確認のIPパケットをPC1に送信する(ステップS58)。PC1の通信制御部18は、NATエントリ生存確認をLAN登録部15に送信する(ステップS59)。LAN登録部15は、NATエントリ生存確認受信処理を実行する(ステップS60)。図36に示すように、NATエントリ生存確認受信処理では、LAN登録部15は、NATエントリ生存確認のIPパケットの送信元へ、NATエントリ生存確認応答を送信する(ステップS138)。これにより、図27にてLAN登録部15が送信したNATエントリ生存確認応答を受けて(ステップS61)、通信制御部18は、NATエントリ生存確認応答のIPパケットをルータ3に送信する(ステップS62)。図37には、NATエントリ生存確認応答に含まれる情報の一例が示されている。送信先IPアドレス171にはNATエントリ生存確認のIPパケットの送信先である周期送信最適化サーバ7が設定され、送信元IPアドレス172にはPC1のIPアドレスが設定されている。メッセージ種別175には「生存確認応答」、端末IDにはPC1のID「12345」が設定されている。なお、NATエントリ生存確認応答のIPパケットは、NATエントリ生存確認に対する応答パケットの一例である。
次に、図27にてルータ3は、NATエントリを更新し、グローバルIPアドレスからプライベートIPアドレスにアドレス変換を行う(ステップS63)。通信制御部31は、NATエントリ生存確認応答のIPパケットを周期送信最適化サーバ7に送信する(ステップS64)。周期送信最適化サーバ7の通信制御部26は、NATエントリ生存確認応答を周期最適化部25に送信する(ステップS65)。
一方、ステップS55においてNATエントリ生存確認が送信されるタイミングに連動して、周期最適化部25は、応答待ちタイマを開始する(ステップS70)。図27では、ステップS65のNATエントリ生存確認応答は、応答待ちタイマが所定時間(例えば10秒)を終了する(図27の点A)前に周期最適化部25に届いている。よって、周期最適化部25は、応答待ち時間内にNATエントリ生存確認応答が正しく届いたと判定し、周期送信タイマ更新処理を実行する(ステップS71)。図38に示すように、周期送信タイマ更新処理では、周期最適化部25は、応答待ちタイマを停止する(ステップS140)。次に、周期最適化部25は、周期送信管理テーブル27を更新する(ステップS141)。図39には、周期送信管理テーブル27の一例が示されている。ステップS141では、周期最適化部25は、現在間隔184に設定されたタイマ値(800秒)を前回間隔185にコピーし、現在間隔184を、設定されたタイマ値より長いタイマ(例えば2倍にした1600秒)で更新する。
次に、周期最適化部25は、ステップS53に戻り、ステップS53からの処理を繰り返す。以上、ステップS53〜S71においてNATエントリ生存確認パケットがPC1に届く場合の一連の処理について説明した。次に、NATエントリ生存確認パケットがPC1に届かない場合の一連の処理(ステップS72〜S80)について説明する。
周期最適化部25は、周期送信タイマによる周期送信間隔のカウントを開始する(ステップS72)。周期送信タイマが起動中に、一定期間無通信のためにルータ3aは、NATエントリを削除する(ステップS73)。
周期最適化部25は、周期送信タイマによる周期送信間隔のカウントが満了すると、NATエントリ生存確認を送信し(ステップS74)、通信制御部26は、そのIPパケットをルータ3に送信する(ステップS75)。並行して、周期最適化部25は、NATエントリ生存確認応答待ちタイマのカウントを開始する(ステップS76)。
通信制御部31は、NATエントリが削除されているため、グローバルIPアドレスからプライベートIPアドレスへのアドレス変換に失敗し、このIPパケットを破棄する(ステップS77)。周期送信最適化サーバ7がPC1からNATエントリ生存確認応答を受信しないまま、応答待ちタイマは応答待ち時間を満了すると、周期最適化部25はこれに応じて応答待ちタイマ満了処理を実行する(ステップS78)。図40に示す応答待ちタイマ満了処理では、応答待ちタイマがタイムアウトすると(ステップS140)、周期最適化部25は、周期送信管理テーブル27の前回間隔(図39の185)に設定された値を、図41に示す周期最適化応答の周期タイマ197に設定する。周期最適化部25は、周期最適化応答をサーバ2に送信する(ステップS141)。
これにより、図27にて周期最適化部25は、通信制御部26に周期最適化応答を送信する(ステップS79)。NAT制御部22は、周期最適化応答のIPパケットを受けて、周期最適化応答受信処理を実行する(ステップS80)。図42に示すように、NAT制御部22は、周期最適化応答の周期タイマに設定されたタイマ値を、LAN情報テーブル24の周期送信間隔に設定する。
NAT制御部22は、NAT更新要求送信処理にて、LAN情報テーブル24の周期送信間隔を、周期最適化応答の周期タイマに設定し、新たに設定された周期送信間隔に基づき周期タイマが満了すると、NAT更新要求を送信する(ステップS82)。NAT更新要求のIPパケットは、ルータ3に送信され(ステップS83)、ルータ3にてNATエントリが更新され、アドレス変換後(ステップS84)、NAT更新要求のIPパケットは、PC1に送信される(ステップS85)。
以上に説明したように、サーバ2から送信されるNAT更新要求パケットは、一定時間無通信のときにNATエントリーが消去されることを回避するために送信されるパケットである。このため、本実施形態にかかる周期送信最適化サーバ7は、送信間隔を徐々に長くしてテスト用パケットを送信する。そして、テスト用パケットに対する応答パケットの返信がなかったとき、その一つ前の送信間隔を周期送信間隔の値に決定する。そして、サーバ2から送信される以降のNAT更新要求パケットは、決定された周期送信間隔で送信される。これにより、NAT更新要求パケットの周期送信間隔をNATエントリーが消去されない間隔であってかつ、最も長い送信間隔に最適化することができる。この結果、サーバ2の負荷及びネットワークのトラフィックを軽減することができる。
<第3の実施形態>
次に、本発明の第3実施形態に係る通信システム10の全体構成及び機能構成について図43及び図44を参照しながら説明する。図43は、第3実施形態に係る通信システム10の全体構成を示し、図44は、第3実施形態に係るPC1、サーバ2、ルータ3の機能構成を示す。第3実施形態では、PC1に接続されるLANがLAN1(LAN11a)からLAN2(LAN11b)へ変更される点が、第1実施形態と異なる。これに伴い、ルータ3が、ルータ3cからルータ3dへ変更される。なお、図43では、ルータ3は一段の構成になっているが、多段の構成であってもよい。
図44に示すように、PC1、ルータ3、周期送信最適化サーバ7の機能構成は第2実施形態と同一である。本実施形態では、周期送信最適化サーバ7はなくてもよい。サーバ2は、第1実施形態の機能構成(図4参照)に加えて、LAN変更検出部28を有する。LAN変更検出部28は、重複管理テーブル29にPC1と接続されているLANの情報を保存する。LAN変更検出部28は、重複管理テーブル29に基づき、同一のPC1と接続されている複数のLANを検出する。NAT制御部22は、PC1が接続するLANが変更された場合、変更前のLANへのNAT更新要求パケットの送信を停止する。
[LAN変更処理]
次に、LAN変更処理について、図45を参照しながら説明する。図45は、第3実施形態にかかるLAN変更処理を示すフローチャートである。図45では、一回目のLAN登録要求(LAN1登録要求)が実行され、次に二回目以降のLAN登録要求(LAN2登録要求)が実行される。二回目以降のLAN登録要求では、本実施形態の特徴の一つである重複LANの検索処理及びLAN変更処理が実行される。PC1が最初に接続されているLANをLAN1とする。
(LAN1登録要求)
まず、PC1のUI部14が、LAN登録要求を送信する(ステップS1)。LAN登録要求は、ルータ3cにてアドレス変換後、サーバ2のNAT制御部22に送信される(ステップS2〜S7)。NAT制御部22は、重複LAN検索要求を送信する(ステップS90)。図46に示す重複LAN検索要求には、メッセージ種別201に「重複LAN検索要求」、端末ID202に「12345」、端末IPアドレス203に「130.130.130.130」、端末ポート番号に「1300」が設定されている。これにより、NAT制御部22は、受信したLAN登録要求のIPパケットのIPアドレス(外向けアドレス)及びポート番号をLAN変更検出部28に通知する。なお、端末IDは、通信装置の識別情報の一例であり、端末IPアドレス及び端末ポート番号は、LANの識別情報の一例である。
LAN変更検出部28は、重複LAN検索処理を実行する(ステップS91)。図47に示すように、LAN変更検出部28は、通知された端末IDが重複管理テーブル29にあるかを判定する(ステップS151)。この時点では、通知された端末IDは重複管理テーブル29に登録されていない。よって、LAN変更検出部28は、重複LAN検索要求で通知された端末ID、IPアドレス及びポート番号を重複管理テーブル29に追加し、検索結果が重複なしの重複LAN検索応答をNAT制御部22に送信する。図47のステップS153については後述する。図48には、重複LAN検索要求で通知された端末ID、IPアドレス及びポート番号が重複管理テーブル29の端末ID211、端末IPアドレス212及び端末ポート番号213に登録された例が示されている。
図45にてNAT制御部22は、重複LAN検索応答を受信する(ステップS92)。図49に示す重複LAN検索応答には、メッセージ種別221、結果222(ここでは重複なしの結果)、結果を通知する端末ID223、端末IPアドレス224及び端末ポート番号225が含まれている。
次に、図45にてNAT制御部22は、LAN登録処理を実行する(ステップS93)。図50に示すLAN登録処理では、NAT制御部22は、重複LAN検索応答の結果を判定する(ステップS161)。NAT制御部22は、結果が「重複なし」の場合、LAN登録要求で通知された情報をLAN情報テーブル24に登録する(ステップS162)。図50のステップS163については後述する。図51には、NAT制御部22で保持するLAN情報テーブル29の一例が示されている。端末ID231「12345」のPC1が接続されているLAN情報として、端末IPアドレス232「130.130.130.130」のルータ3c、端末ポート番号233「1300」、周期送信間隔234「800(秒)」が登録されている。
図45にてステップS93のLAN登録処理後、LAN1への定期送信が開始される。その後、図43に示すように、PC1を別のLAN2に接続した場合について説明を続ける。なお、LANの接続変更は、有線から無線への切り替えや無線から無線への切り替え等を含む。
(LAN2登録要求)
LAN接続変更後のLAN登録要求では、PC1のUI部14が、LAN登録要求を送信する(ステップS94)。LAN登録要求は、ルータ3dにてアドレス変換後、サーバ2のLAN変更検出部28に送信される(ステップS95〜S101)。
LAN変更検出部28は、重複LAN検索処理を実行する(ステップS102)。図47に示すように、LAN変更検出部28は、通知された端末IDが重複管理テーブル29に登録されているかを判定する(ステップS151)。この場合、通知された端末ID「12345」は、図48に示す重複管理テーブル29の端末ID211に登録されている。よって、LAN変更検出部28は、通知された端末IDが重複管理テーブル29に登録されていると判定する(図50のS161:重複あり)。この結果、LAN変更検出部28は、重複管理テーブル29の端末ID211「12345」の端末IPアドレス212及び端末ポート番号213を、重複LAN検索要求で通知されたIPアドレス及びポート番号で上書きする(図5のS163)。上書き後の重複管理テーブル29を図52に示す。端末ID231「12345」のエントリの端末IPアドレス「140.140.140.140」及び端末ポート番号「1400」が上書きされている。

次に、図45にてNAT制御部22は、図49に示す重複LAN検索応答の結果222が「重複あり」に設定された重複LAN検索応答を送信する(ステップS103)。次に、図45にてNAT制御部22は、LAN登録処理を実行する(ステップS104)。LAN登録処理では、重複LAN検索処理にて、重複ありと判定された場合、重複管理テーブル29の情報をLAN情報テーブル24に記憶する。図53には、NAT制御部22で保持するLAN情報テーブル24の一例を示す。LAN情報テーブル24の端末ID「12345」のエントリの端末IPアドレス「140.140.140.140」及びポート番号「1400」が上書きされている。
以上に説明したように、第3実施形態にかかる通信システム10によれば、PC1が接続されるLANが変更されたとき、重複するLANをサーバ2が検出することで、以前に接続されていたLANと現在通信を行うLANとをサーバ2が識別することができる。
なお、第1〜第3実施形態にかかる通信システム10は、サーバ2からインターネットを介してプライベートなネットワーク内のパソコン等へプッシュ通信するような形態のサービスを実施する場合に好適である。
第1〜第3実施形態にかかる通信システム10では、ルータ3の構成が多段の場合においてもNATエントリの削除を回避し、NAT越えが可能となる。また、UPnP/STUN(Simple Traversal of UDP through NATs)に対応していないNAT対応ブロードバンドルータにも適用可能である。また、PC1が起動していないときであっても、サーバ2からPC1に対してNATを越えてパケットを送信することができる。さらに、NATルータの構成が多段の場合にLAN経由でPC(スリープモード状態を含む)がインターネットに接続された場合においても、インターネットからNAT越え可能な状態維持を実現できる。なお、第1〜第3実施形態にかかる通信システム10によれば、ルータの構成が二段以上のLANに接続されたスリープモードのPC1をインターネットからWOL(Wake on LAN)により起動するといった活用にも適用可能である。
[ハードウェア構成]
最後に、各実施形態にかかるPC1、ルータ3、サーバ2のハードウェア構成の一例について、図54を参照しながら説明する。
(PC)
PC1は、CPU(Central Processing Unit)601、ROM(Read Only Memory)602、RAM(Random Access Memory)603、入力装置604、出力装置605、HDD(Hard Disk Drive)606及びネットワークインタフェース607を有する。
ROM602は、不揮発性の半導体メモリ(記憶装置)であり、起動時に実行されるOS設定やネットワーク設定などのプログラムやデータが格納されている。RAM603は、プログラムやデータを一時保持する揮発性の半導体メモリ(記憶装置)である。HDD606は、プログラムやデータを格納している不揮発性の記憶装置である。格納されるプログラムやデータには、装置全体を制御する基本ソフトウェアであるOS(Operating System)、及びOS上において各種機能を提供するアプリケーションソフトウェアなどがある。例えば、HDD606は、上記実施形態のNATエントリ更新処理、NAT更新周期最適化処理、LAN変更処理を行うためにCPU601により実行されるプログラムを格納する。CPU601は、上記記憶装置から、プログラムやデータをRAM上に読み出し、各処理を実行することで、装置全体の制御や搭載機能を実現する演算装置である。
入力装置604は、キーボードやマウスなどを含み、PC1に各操作を入力するのに用いられる。出力装置605は、ディスプレイなどを含み、PC1の管理者にシステム運用結果等を表示や出力する。
ネットワークインタフェース607は、PC1をLANに接続するインタフェースである。これにより、PC1は、ネットワークインタフェース607を介してルータ3に接続され、ルータ3にてアドレス変換を行い、インターネット上のサーバ2と通信可能となる。
かかる構成では、UI部14は、入力装置604により実現可能である。LAN登録部15、LAN構成判定部16及びUPnP取得部17は、CPU601により実現可能である。通信制御部18は、ネットワークインタフェース607実現可能である。
(ルータ)
ルータ3は、CPU701、RAM702、フラッシュメモリ703、ネットワークインタフェース704(LAN)及びネットワークインタフェース705(WAN)を有する。CPU701は、IPアドレスの変換処理等、ルータ3全体の制御や搭載機能を実現する演算装置である。RAM702は、プログラムやデータを一時保持する揮発性の半導体メモリ(記憶装置)である。フラッシュメモリ703は、補助記憶装置の一例である。
ネットワークインタフェース704(LAN)は、ルータ3をLANに接続するインタフェースである。これにより、ルータ3は、ネットワークインタフェース704を介してPC1と接続される。
ネットワークインタフェース705(WAN)は、ルータ3をWANに接続するインタフェースである。これにより、ルータ3は、ネットワークインタフェース705を介してサーバ2と接続される。
かかる構成では、UPnP処理部33は、CPU601により実現可能である。NATテーブル32は、RAM702やフラッシュメモリ703に記憶することができる。通信制御部31は、ネットワークインタフェース704,705により実現可能である。
(サーバ)
サーバ2は、CPU801、ROMR802、RAM803、入力装置804、出力装置805、HDD806及びネットワークインタフェース807を有する。CPU801は、LAN変更処理等、サーバ2全体の制御や搭載機能を実現する演算装置である。ROM802、RAM803、入力装置804、出力装置805、HDD806は、PC1の対応する各部と同様の構成であるため、ここでは説明を省略する。
ネットワークインタフェース807は、サーバ2をWAN(またはインターネット)に接続するインタフェースである。これにより、サーバ2は、ネットワークインタフェース705を介してルータ3と接続される。
周期送信最適化サーバ7は、サーバ2と同様のハードウェア構成を有するため、ここでは説明を省略する。
かかる構成では、NAT制御部22及び周期最適化部25は、CPU801により実現可能である。LAN情報テーブル24は及び周期送信管理テーブル27は、RAM803やHDD806に記憶することができる。通信制御部21、26は、ネットワークインタフェース807により実現可能である。
なお、PC1、サーバ2及び周期送信最適化サーバ7は、外部装置とのインタフェースである図示しない外部I/Fを有してもよい。外部装置には、記録媒体などがある。PC1、サーバ2及び周期送信最適化サーバ7は、外部I/Fを介して記録媒体に記憶されたNATエントリ更新処理、NAT更新周期最適化処理、LAN変更処理を実行するためのプログラムの読み取り及び/又は書き込みを行うことができる。記録媒体には、CD(Compact Disk)、及びDVD(Digital Versatile Disk)、ならびに、SDメモリカード(SD Memory card)やUSBメモリ(Universal Serial Bus memory)等がある。
以上、通信装置、サーバ、通信システム及び通信方法を上記実施形態により説明したが、本発明は上記実施形態に限定されるものではなく、本発明の範囲内で種々の変形及び改良が可能である。上記第1〜第3の実施形態は、矛盾しない範囲で組み合わせることができる。
例えば、上記実施形態では、サーバ2と周期送信最適化サーバ7とは、別体の装置で構成されたが、周期送信最適化サーバ7の機能をサーバ2に含めて、サーバ2で周期送信最適化を実行する装置構成としてもよい。
1:PC
2:サーバ
3:ルータ
7:周期送信最適化サーバ
10:通信システム
11:LAN
13:インターネット
14:UI部14
15:LAN登録部
16:LAN構成判定部
17:UPnP取得部
18:通信制御部(PC側)
21:通信制御部(サーバ側)
22:NAT制御部
23:記憶部
24:LAN情報テーブル
25:周期最適化部
26:通信制御部(周期送信最適化サーバ側)
28:LAN変更検出部
29:重複管理テーブル
31:通信制御部(ルータ側)
32:NATテーブル
33:UPnP処理部

Claims (5)

  1. LANのルータでNAT越えを行い、外部ネットワークを介してサーバと接続されるLAN上の通信装置であって、
    前記LANのルータの構成を判定するLAN構成判定部と、
    前記LANのルータの構成が二段以上と判定された場合、前記サーバに登録されている前記NAT越えを行うルータへ、一定時間無通信であってもNATエントリは消去されない間隔でNAT更新要求パケットを送信するように要求する通信装置側の通信制御部と、
    を有する通信装置。
  2. 前記通信装置側の通信制御部は、
    前記間隔を変えて送信されるテスト用パケットに応じて応答パケットを送信し、応答時間以内の前記応答パケットの受信の有無により前記間隔を決定させ、決定させた前記間隔で前記サーバからNAT更新要求パケットを送信させる、
    請求項1に記載の通信装置。
  3. LANのルータでNAT越えを行い、外部ネットワークを介してLAN上の通信装置と接続されるサーバであって、
    前記サーバがLAN上の通信装置と接続したときの通信装置の識別情報及びLANの識別情報を記憶する記憶部と、
    前記記憶した通信装置の識別情報及びLANの識別情報に基づき、前記通信装置が接続されるLANの変更を検出するLAN変更検出部と、
    前記サーバに登録されている前記NAT越えを行うルータへ、一定時間無通信であってもNATエントリは消去されない間隔でNAT更新要求パケットを送信する要求に応じて、前記NAT更新要求パケットを前記検出した変更後のLANに送信する前記サーバ側の通信制御部と、
    を有するサーバ。
  4. LANのルータでNAT越えを行い、外部ネットワークを介してサーバとLAN上の通信装置とが接続される通信システムであって、
    前記通信装置は、
    前記LANのルータの構成を判定するLAN構成判定部と、
    前記LANのルータの構成が二段以上と判定された場合、前記サーバに登録されている前記NAT越えを行うルータへ、一定時間無通信であってもNATエントリは消去されない間隔でNAT更新要求パケットを送信するように要求する通信装置側の通信制御部と、を有し、
    前記サーバは、
    前記NAT更新要求パケットの送信要求に応じて、前記間隔で前記NAT更新要求パケットを前記NAT越えを行うルータへ送信するサーバ側の通信制御部を有する、
    通信システム。
  5. LANのルータでNAT越えを行い、外部ネットワークを介してサーバと接続されるLAN上の通信装置の通信方法であって、
    前記LANのルータの構成を判定し、
    前記LANのルータの構成が二段以上と判定された場合、前記サーバに登録されている前記NAT越えを行うルータへ、一定時間無通信であってもNATエントリは消去されない間隔でNAT更新要求パケットを送信するように要求する、
    処理をコンピュータが実行する通信方法。
JP2016514623A 2014-04-23 2014-04-23 通信装置、サーバ、通信システム及び通信方法 Expired - Fee Related JP6308295B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2014/061477 WO2015162735A1 (ja) 2014-04-23 2014-04-23 通信装置、サーバ、通信システム及び通信方法

Publications (2)

Publication Number Publication Date
JPWO2015162735A1 JPWO2015162735A1 (ja) 2017-04-13
JP6308295B2 true JP6308295B2 (ja) 2018-04-11

Family

ID=54331924

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016514623A Expired - Fee Related JP6308295B2 (ja) 2014-04-23 2014-04-23 通信装置、サーバ、通信システム及び通信方法

Country Status (3)

Country Link
US (1) US10044523B2 (ja)
JP (1) JP6308295B2 (ja)
WO (1) WO2015162735A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112333019B (zh) * 2020-10-30 2022-08-16 展讯半导体(成都)有限公司 路由器的配置、测试方法及系统和可读存储介质

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200408242A (en) 2002-09-06 2004-05-16 Matsushita Electric Ind Co Ltd Home terminal apparatus and communication system
JP3640664B2 (ja) 2002-09-06 2005-04-20 松下電器産業株式会社 宅内端末装置及び通信システム
US7694343B2 (en) * 2002-11-27 2010-04-06 Symantec Corporation Client compliancy in a NAT environment
JP4327852B2 (ja) * 2004-06-30 2009-09-09 パナソニック株式会社 通信装置、通信設定方法、通信設定プログラム及び通信設定プログラムを記録した記録媒体
JP2005130453A (ja) 2004-08-03 2005-05-19 Matsushita Electric Ind Co Ltd 宅内端末装置及び通信システム
JP4740683B2 (ja) * 2005-08-02 2011-08-03 パナソニック株式会社 Ip通信装置及びそれを備えた構内ネットワークシステム並びにip通信装置の制御方法
JP2008085470A (ja) * 2006-09-26 2008-04-10 Fujitsu Ltd Ipアプリケーションサービス提供システム
JP4411332B2 (ja) * 2007-03-20 2010-02-10 パナソニック株式会社 Ip通信装置及びip通信システム並びにこれらのip通信方法
US9369302B1 (en) * 2008-06-24 2016-06-14 Amazon Technologies, Inc. Managing communications between computing nodes
KR20130052240A (ko) * 2011-11-11 2013-05-22 삼성전자주식회사 네트워크 주소 변환기 통과 기법을 프로비저닝하기 위한 방법 및 장치

Also Published As

Publication number Publication date
JPWO2015162735A1 (ja) 2017-04-13
WO2015162735A1 (ja) 2015-10-29
US20170019270A1 (en) 2017-01-19
US10044523B2 (en) 2018-08-07

Similar Documents

Publication Publication Date Title
US20150009830A1 (en) Methods of operating load balancing switches and controllers using matching patterns with unrestricted characters
JPWO2008152807A1 (ja) Macアドレスの重複解消方法、ネットワーク機器管理システム、サーバーおよび情報機器
JP2004362594A (ja) 外部ネットワークデバイスを自動的に発見および構成する方法
US20220377048A1 (en) Methods, systems, and media for dynamically separating internet of things devices in a network
US9866448B2 (en) Electronic device and method for DNS processing
JP2009194752A (ja) フレーム伝送装置およびループ判定方法
US7839807B2 (en) Communication apparatus, method executed by communication apparatus, and storage medium storing software for executing method
JP6290053B2 (ja) 通信装置、通信システムおよび通信方法
JP2008510413A (ja) ユニバーサルプラグアンドプレイ通信方法及び装置
WO2006013811A1 (ja) 情報処理システム、情報処理装置、サーバ装置、情報処理方法及びプログラム
JP6458512B2 (ja) 通信機器
JP6308295B2 (ja) 通信装置、サーバ、通信システム及び通信方法
JP2009517938A (ja) ネットワークアドレス変換を自動的に実行するローカルネットワークで実行するアプリケーションを検出する装置及び方法
JP3960321B2 (ja) 電子機器
JP6411262B2 (ja) 制御装置およびシステム
JP4085394B2 (ja) 通信端末装置及び通信方法
JP6119187B2 (ja) 管理装置、アドレス情報管理プログラム及びアドレス情報管理システム
JP5588894B2 (ja) レイヤ2アドレスキャッシュ更新制御方法、装置及びプログラム
JP4721782B2 (ja) 通信管理装置および通信システム
JP6256471B2 (ja) 通信装置、通信方法、及びプログラム
JP2006238107A (ja) 情報処理システム、情報処理装置、サーバ装置、及び情報処理方法
US10742445B2 (en) System for detecting loops in a pseudo-bridge
JP2018019172A (ja) 制御装置、通信装置、および、設定方法
JP6433240B2 (ja) 通信装置、通信装置の制御方法、コンピュータプログラム
JP2017005446A (ja) 中継装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170718

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170915

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180213

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180226

R150 Certificate of patent or registration of utility model

Ref document number: 6308295

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees