JP4635095B2 - 通信システムとそのサーバ装置 - Google Patents

通信システムとそのサーバ装置 Download PDF

Info

Publication number
JP4635095B2
JP4635095B2 JP2009155999A JP2009155999A JP4635095B2 JP 4635095 B2 JP4635095 B2 JP 4635095B2 JP 2009155999 A JP2009155999 A JP 2009155999A JP 2009155999 A JP2009155999 A JP 2009155999A JP 4635095 B2 JP4635095 B2 JP 4635095B2
Authority
JP
Japan
Prior art keywords
identification information
terminal
sip
address
register message
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
JP2009155999A
Other languages
English (en)
Other versions
JP2011015065A (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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2009155999A priority Critical patent/JP4635095B2/ja
Priority to US12/721,401 priority patent/US20100329271A1/en
Publication of JP2011015065A publication Critical patent/JP2011015065A/ja
Application granted granted Critical
Publication of JP4635095B2 publication Critical patent/JP4635095B2/ja
Priority to US13/233,980 priority patent/US20120002674A1/en
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
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1073Registration or de-registration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • H04L65/1104Session initiation protocol [SIP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Telephonic Communication Services (AREA)

Description

この発明は、IP(Internet Protocol)ネットワークを介して端末間でメディアデータを授受することの可能な通信システムと、このシステムにおいて用いられるサーバ装置に関する。
IP化された近年の通信システムにおいて、端末間にエンド・ツウ・エンドのセッションを形成するのにSIP(Session Initiation Protocol)、H.323、Megaco(Media gateway control)などのプロトコルが知られている。近年ではSIPを用いるのが主流になってきている。
SIPの基本仕様は、IETF(Internet Engineering Task Force)において策定されたRFC3261に記述される。このほかSIPの拡張版や他の関連する種々の仕様が策定されており、例えばRFC2663にはアドレス変換プロトコルであるNAPT(Network Address Port Translation)の仕様が記述されている。
SIPを用いて様々な通信サービスを実現するには、ネットワークに参加するSIP端末をSIPサーバに登録する手順が必要である。その手順においてSIP端末は、SIPサーバに登録要求メッセージ(REGISTER)を送信する。SIPサーバは、受信したREGISTERメッセージに含まれる登録対象のSIP−URI(SIP - Uniform Resource Identifier)と、Contactヘッダで通知される要求元のSIP端末のアドレスとをバインディングし、データベースに記録する。ここで、登録対象のSIP−URIはAoR(Address of Record)と呼ばれる論理的なアドレスであり、SIP端末の実際のアドレスはコンタクトアドレスと称される。
この処理が終わると、AoR宛に送信されたSIPメッセージはSIPサーバからこのバインディングされたコンタクトアドレスに転送されるようになる。このような理由から、AoRを使用している端末を識別するには、通常、コンタクトアドレスを使用することになる。
ところで、AoRを使用している端末をコンタクトアドレスで識別するケースでは、先に触れたNAPT、あるいはNAT(Network Address Translation)を備えるネットワークで問題が生じる。すなわちNAT機能を持つ通信装置(例えばNATルータとする)をSIPメッセージが通過する際、そのメッセージに記されるコンタクトアドレスがNATルータのグローバルアドレスに置き換えられてしまう。つまりNATルータの配下のプライベートネットワークに属するSIP端末のコンタクトアドレスは全て同じIPアドレスになってしまうので、REGISTER発行元の端末そのものを区別することができなくなる。
このことは次のような不具合も生む。例えばSIPサービスを有料で提供するケースではユーザを認証するためにパスワードによる認証を行うが、そもそもシステムが個々の端末を識別できないという脆弱性があるので、悪意あるユーザがパスワードを漏洩すれば本来許されないユーザもサービスを受けることができてしまう。
不正なユーザの利用を防止するために特許文献1の技術が知られている。特許文献1ではユーザを特定する情報をREGISTERメッセージに追加することで、個々のSIP端末のユーザを特定可能としているのでSIP端末に独自の改変を加える必要がある。特に、HUBから取得した位置情報を用いてユーザを識別するようにしているので利用できるSIP端末が制限され、汎用性に欠ける。基本仕様であるRFC3261の規定内で上記不具合を解決可能な手法が求められる。
特開2008−78766号公報
以上述べたように既存の技術では、NATデバイスの配下のプライベートネットワークに属するSIP端末をSIPサーバが識別できない。このため課金上の不具合などが生じ、何らかの対策が求められる。
この発明は上記事情によりなされたもので、その目的は、プライベートネットワークに属する複数の端末を個々に識別できるようにした通信システムとそのサーバ装置を提供することにある。
上記目的を達成するためにこの発明の一態様によれば、プライベートアドレスを用いるプライベートネットワークとグローバルアドレスを用いるグローバルネットワークとを相互に接続するルータと、前記プライベートネットワークに属する端末と、前記グローバルネットワークに設けられ、前記端末から前記ルータを経由して送出されるSIP(Session Initiation Protocol)メッセージに基づく処理を行うサーバ装置とを具備する通信システムにおいて、前記サーバ装置は、前記端末から前記ルータを含む経路を介して受信したREGISTERメッセージの、当該経路におけるデバイスにより順次追記されるViaヘッダの全てに記載されるIP(Internet Protocol)アドレスから、当該REGISTERメッセージの送出元端末に対応付けられる識別情報を生成する識別情報生成手段と、前記プライベートネットワークに属する端末ごとに、前記識別情報、および当該端末が使用可能なURI(Uniform Resource Identifier)数を含む所定の登録条件とを対応付けた管理テーブルと、この管理テーブルにおいて管理される識別情報と前記登録条件とを照合して、その結果に基づいて前記REGISTERメッセージによる登録要求元の端末の登録の可否を判定する登録判定手段とを備えることを特徴とする通信システムが提供される。
このような手段を講じることにより、REGISTERメッセージがサーバ装置に到達すると、全てのViaヘッダに記載されるIPアドレスに基づいて識別情報が生成される。Viaヘッダにおける識別情報はREGISTERメッセージの伝送ルートを一意に反映するものであるので、上記識別情報を用いれば各伝送ルート、ひいてはREGISTERメッセージの送出元SIP端末を一意に識別することが可能になる。
この発明によれば、プライベートネットワークに属する複数の端末を個々に識別できるようにした通信システムとそのサーバ装置を提供することができる。
この発明に係わる通信システムの実施の形態を示すシステム図。 図1のSIPサーバ200の一実施の形態を示す機能ブロック図。 図2のSIPサーバ200に備わるソフトウェア間の関係を示すブロック図。 REGISTERメッセージの一例を示す図。 図2、図3に示すロケーションテーブル24aの一例を示す図。 登録判定部23bにより実施される、登録の可否を判定するための処理手順を示すフローチャート。 第2の実施形態における識別情報の生成手順につき説明するための図。 ロケーションサーバを設けたケースにおけるソフトウェア構成を示す図。
図1は、この発明に係わる通信システムの実施の形態を示すシステム図である。この通信システムは、基幹ネットワーク100としてのIPネットワークと、この基幹ネットワークに接続されるSIPサーバ200とを中核として形成される。SIPサーバ200は、SIPメッセージの中継を行うプロキシサーバとしての機能と、SIP端末のロケーション情報を管理するレジストラサーバとしての機能とを備える。
基幹ネットワーク100にはルータ300、400が接続される。ルータ300はプライベートネットワークであるネットワークAを、基幹ネットワーク100に接続する。ルータ400はプライベートネットワークであるネットワークBを、基幹ネットワーク100に接続する。
基幹ネットワーク100はグローバルアドレスを用いるネットワークであり、例えば公衆網として利用されるIPネットワークである。プライベートネットワークA,Bはプライベートアドレスを用いるネットワークであり、基幹ネットワーク100とは異なる管理体系で割り当てられるIPアドレスを使用するネットワークである。
そこで、ルータ300、400のいずれも、NAT機能と、このNAT機能の元でのSIPメッセージの伝送を保証するNAT解決機能とを備える。NAT機能は、プライベートネットワーク内で使用されるプライベートアドレスと各ルータのグローバルアドレスとを相互に変換する機能であり、現状のIPv4におけるアドレス不足を解消するために必要な機能である。ルータにNAT機能を設けることで、グローバルネットワークとプライベートネットワークにおけるIPアドレスの管理体系の差異を吸収し、アドレス重複などの不具合無くシステムを運用することが可能になる。しかしNAT機能は基本的にIPパケットのヘッダにおけるIPアドレスを変換するものであるので、SIPメッセージに埋め込まれたIPアドレスを変換することはできない。そこで、SIPを用いるシステムではNAT解決機能が必要になる。
NAT解決機能としては例えばALG(Application Level Gateway)がある。ALGとはNAT/NAPTルータにおいて通過するSIPメッセージの中身を解読し、SIPメッセージ内に埋め込まれたプライベートアドレスをNAT/NAPTルータのグローバルアドレスに置き換える方法である。SIPメッセージ内のIPアドレスがルータにおいて置換されるので、SIP端末側にはALG向けの機能を実装する必要が無い。
すなわちルータ300,400のいずれも、NATルータの機能とALGサーバの機能とを兼ね備える。ルータ300のグローバルアドレスは “172.16.38.20” であり、ルータ400のグローバルアドレスは “172.16.38.30” である。
なおNAT解決機能にはALGのほか、STUN(Simple Traversal of UDP through NAT)、あるいはTURN(Traversal Using Relay NAT)と称する機能もある。STUNはRFC3489に規定され次のような手順を踏むプロトコルである。すなわちSIP端末は自らのIPアドレス、ポート番号を含むパケットをグローバルネットワークに置かれたSTUNサーバに送信する。STUNサーバはこれを受けてパケットのヘッダの情報とデータ部の情報とを比較し、NAT処理の前後におけるSIP端末のIPアドレスとポート番号とを知る。これらの情報はSTUNサーバから送信元のSIP端末に通知され、SIP端末はグローバルネットワーク側のアドレス情報を知ることが可能になる。これをもとにSIP端末はSIPメッセージに、グローバルネットワーク使用されるグローバルアドレスを記載することが可能になり、NAT解決を実現できる。
TURNでは、メディアを中継(リレー)するための装置(TURNサーバ)をグローバルネットワーク側に配置する。そして、プライベートネットワークとグローバルネットワークとの間で授受されるパケットを一旦TURNサーバを経由させることで、NATルータを経由するパケットの送受信を可能とするプロトコルである。
プライベートネットワークAにはSIP端末10,20が属し、プライベートネットワークBにはSIP端末30が属する。いずれのSIP端末も固体毎に設定されたURIを備え、基本的にはこのURI(プライマリURIと称する)を用いてSIPサービスが行われる。例えばプライベートネットワークAにおけるSIP端末10のIPアドレスは “192.168.1.10” であり、SIP端末20のIPアドレスは “192.168.1.20” である。これらのIPアドレスに基づき各端末のURIが設定される。プライベートネットワークBにおけるSIP端末30のIPアドレスは “192.168.1.10” であり、SIP端末10のIPアドレスと同じであるが、これはルータ400のNAT機能により隠蔽される。なおAoRに関しては、原則として一つのAoRを複数のSIP端末が同時に使用することは無いものとする。
1台のSIP端末で複数のURIを使用する場合に、プライマリURI以外のURIはセカンダリURIと称され、プライマリURIに関連付けて管理される。なお、プライマリURI、セカンダリURIは以下の説明において本願発明の特徴を理解しやすくするための概念である。
図1においてSIPサーバ200は、SIP端末10,20,30にとってはレジストラサーバおよびプロキシサーバとして機能する。よってSIP端末10はサービスの開始にあたりREGISTERメッセージをSIPサーバ200に送信し、登録を要求する。
図2は、図1のSIPサーバ200の一実施の形態を示す機能ブロック図である。SIPサーバ200はインタフェース部21、入出力部22、主制御部23、およびデータベース部24を備える。インタフェース部21は基幹ネットワーク100に接続され、IPパケットの授受に係わるインタフェース処理を行う。入出力部22は種々の設定データおよび運用情報の入力などに用いられる。
主制御部23は、この実施形態に係わる処理機能としてSIP制御部23a、登録判定部23b、識別情報生成部23cを備える。SIP制御部23aは、各SIP端末からルータ300,400を介して受信したSIPメッセージを解読し、その記載内容に沿って呼接続処理などの制御を行う。登録判定部23bは、REGISTERメッセージにより登録を要求した端末の登録の可否を、データベース部24に記憶されるロケーションテーブル24aを参照して判定する。識別情報生成部23cは、各SIP端末からルータ300,400を介して受信したREGISTERメッセージの全てのViaヘッダに記載されるIPアドレスから、各SIP端末を識別するための識別情報を生成する。さらに、データベース部24は使用可能URI数管理テーブル24bを記憶する。このテーブルはURIのエンティティ、および、1台のSIP端末において使用可能なURIの数を設定したテーブルである。
図3は、図2のSIPサーバに備わるソフトウェア間の関係を示すブロック図である。REGISTERメッセージによる登録要求を受信すると、SIP制御部23aは登録判定部23bにその登録の可否の判定を要求する。登録判定部23bはロケーションテーブル24aを参照し、登録の可否を判定する。登録判定部23bは識別情報生成部23cに、各SIP端末を識別するための識別情報の生成を要求する。識別情報生成部23cはこの要求に応じ、受信したREGISTERメッセージの全てのViaヘッダに記載されるIPアドレスから、このREGISTERメッセージの送出元端末に対応付けられる識別情報を生成する。
図3において、SIPサーバ200に達したSIPメッセージはまずSIP制御部23aで処理される。このSIPメッセージがREGISTERメッセージであれば、登録判定部23bにメッセージが通知される。登録判定部23bはこのREGISTERメッセージの送出元のSIP端末の登録の可否の判定を判定する。登録が許可されれば、登録判定部23bはこのREGISTERメッセージで通知されたAoRとコンタクトアドレスとの関連付け(バインディング)を行う。
登録判定部23bは、REGISTERメッセージの送信元端末を識別するための情報を生成するため、識別情報生成部23cに識別情報生成要求を送信する。この識別情報生成要求には受信したREGISTERメッセージに含まれる全てのViaヘッダがセットされる。
識別情報生成部23cは、識別情報生成要求で通知されたViaヘッダからIPアドレスのみを抽出する。全てのViaヘッダから取り出したIPアドレスは連結され1行の文字列とし、この文字列から識別情報を生成する。生成した識別情報は識別情報生成結果として要求元の登録判定部23bに返送される。生成された識別情報はロケーションテーブル24aに登録される。また、ロケーションテーブル24aには、AoRとコンタクトアドレスの関連も併せて管理される。
図4は、REGISTERメッセージの一例を示す図である。このメッセージはRFC3261に規定される基本的なフォーマットを持つ。SIPの規定によれば、REGISTERメッセージ内のContactヘッダ、およびViaヘッダに、登録要求元であるSIP端末10のIPアドレス “192.168.1.10” がセットされる。このREGISTERメッセージがSIP端末10から送出されたのちルータ300を経由する際、ルータ300のこれはルータ300のALGとしての機能によりその記載の一部が修正される。すなわちREGISTERメッセージ内のContactヘッダのコンタクトアドレスは “172.16.38.20” に書き換えられる。
この実施形態ではメッセージの上から3行目、4行目に記載されるViaヘッダに着目する。周知のようにViaヘッダはSIPメッセージの通過した経路(ルート)を示す情報で、その通過ルートにおけるデバイス(SIP−Proxy)のIPアドレスが順次追加して記録されるフィールドである。図4においては、4行目のViaヘッダにIPアドレス”192.168.1.10”が記載され、3行目のViaヘッダにIPアドレス“172.16.38.20”が記載されている。これは、このREGISTERメッセージがSIP端末10から送出され、ルータ300を介してSIPサーバ200に達したことを示す。
識別情報生成部23cは、これらのIPアドレスを組み合わせてSIP端末を識別するための識別情報を生成する。識別情報を生成するには先に述べたように単純加算によるチェックサム、あるいはMD5/SHAのようなハッシュ関数を利用できる。例えばチェックサムを利用する例では、各IPアドレスの数字を連結して” 172.16.38.20192.168.1.10 ”という文字列を生成し、これを単純加算することでチェックサムを用いた識別情報を作成することができる。具体的には、連結した文字列“ 172.16.38.20192.168.1.10 ”を0x31+0x37+0x32+…0x31+0x30のように単純加算することで、識別情報=0X4AFが生成される。
すなわち文字列はアスキー(ASCII)コードで表現され、例えばSIPメッセージで通知されるIPアドレス” 172.16.38.20 ”をバイナリコードで表現すると“0x31,0x37,0x32,0x2E,0x31,0x36,0x2E,0x33,0x38,0x2E,0x32,0x30”となる。このバイナリデータをそのまま加算することで高速にチェックサムを生成することができる。また、文字コードを変換するといった処理も不要であり、その分、処理を高速化することができる。
図5は、図2、図3に示すロケーションテーブル24aの一例を示す図である。ロケーションテーブル24aには登録対象となるSIP端末AoRをキー情報として、REGISTER送出元のSIP端末へのコンタクトアドレス、q値、保持期間といった、RFC3261で定義されるバインディングのために必要となる情報が登録される。これに加えてこの実施形態では、SIP端末のプライマリURI、および、上記生成された識別情報が登録される。次に、上記構成における作用を説明する。
図6は、登録判定部23bにより実施される、登録の可否を判定するための処理手順を示すフローチャートである。登録判定部23bは、システムへの登録を要求するSIP端末からのREGISTERを受信すると、このメッセージに記載されるAoRが使用可能であるか否かをチェックし(ブロックB1)、使用不可能であれば登録を拒否する(ブロックB2)。
次に登録判定部23bは、上記記載されるAoRがロケーションテーブル24aに登録されているものか否かをチェックする(ブロックB3)。ロケーションテーブル24aに、判定対象のAoRが存在していれば、登録判定部23bはREGISTERメッセージの受信を受けて識別情報生成部23cにより生成された識別情報と、ロケーションテーブル内の識別情報とが同じであるか否かを判定する(ブロックB4)。二つの識別情報が一致すればバインディングのリフレッシュと判断し(ブロックB5)、登録判定部23bはロケーションテーブル24aの該当レコード中の保持期間を更新するとともに、処理が正常終了したことをSIP制御部23aに通知する。二つの識別情報が一致しなければ登録判定部23bは不正な登録要求と判断し、登録を拒否する。
ブロックB3でNo、すなわち通知されたAoRが未登録であれば初回登録としての処理が開始される。すなわち登録判定部23bは受信したREGISTERメッセージ中のAoRがプライマリURIであるか否かを、使用可能URI数管理テーブル24bを参照して判定する(ブロックB6)。プライマリURIであれば、ロケーションテーブル24aに同じ識別情報を持つレコードが存在するか否かを確認する(ブロックB10)。同じ識別情報を持つレコードが存在していれば、登録判定部23bは登録を拒否する(ブロックB11)。この手順により、1台の端末で使用できるプライマリURIを一つだけに限定して動作させることができる。なおシステム要求によっては複数のプライマリURIを使用する事も想定される。
ブロックB10で同じ識別情報を持つレコードが存在しなければ、登録判定部23bはプライマリURIの初回登録と判断し、通知された情報や識別情報をロケーションテーブル24aに登録し、AoRとコンタクトアドレスとのバインディングを行う(ブロックB12)。通知されたAoRがセカンダリURIであれば、登録判定部23bは使用可能URI数テーブルB13を更新し、セカンダリURIとしての登録処理を行う(ブロックB13)。以上の手順により、URIを使用するSIP端末を物理的に識別して特定することが可能になる。
以上説明したようにこの実施形態では、NAT機能を持つルータ経由でREGISTERメッセージがSIPサーバ200に達すると、SIPサーバ200の識別情報生成部23cは、受信したREGISTERメッセージの全てのViaヘッダから、それぞれIPアドレスを抽出する。識別情報生成部23cはこれらのIPアドレスの文字列を連結し、得られた数字列を単純加算して生成したチェックサムを識別情報としてロケーションテーブル24aに登録する。識別情報は、抽出したIPアドレスを連結したままのデータを用いても良いし、あるいは各IPアドレスからハッシュ関数を用いて生成したハッシュ値を用いても良い。また、各IPアドレスを単純に連結した文字列情報を識別情報としても良い。さらには、IPアドレスを含めてViaヘッダを部分的に切り出した情報を用いても良い。要するに全てのViaヘッダのIPアドレスから、一意に識別可能な情報を生成できれば良い。
登録可否判定部23bは、生成された識別情報と既に登録済みURIの情報とが蓄積されているロケーションテーブル24a、および、各SIP端末が使用できるURI数が設定されている使用可能URI数管理テーブル24bとを参照して、REGISTER送出元のSIP端末の登録の可否を判定する。
Viaヘッダに記載されるIPアドレスはREGISTERメッセージの経由したルートを一意に示すものであるので、全てのIPアドレスから生成した識別情報により、SIP端末のそれぞれを物理的に識別することが可能になる。従ってこの識別情報と各SIP端末とを一意に対応付けることができ、当該識別情報に基づいて、プライベートネットワークに属する複数のSIP端末を個々に識別することが可能になる。
従って、一つのURIを1台のSIP端末と確実に関連付け、関連付けの無いSIP端末では当該URIを同時に使用できないようにすることができる。これによりURIを単位として課金されるシステムにおいて、URIの不正利用を防止することができる。さらには、同じSIP端末からの一定数以上のREGISTERを制限して、SIPサーバ200の過負荷対策を促すことなどが可能となる。
また上記の手順によればSIP端末に独自の機能を追加する必要が無いのに加え、少ない比較処理で1台のSIP端末で使用できるURI数、あるいは一つのURIを同時に使用できるSIP端末数を確実に制御することが可能になる。
またこの実施形態では、SIP−Proxyを中継する度に付加されるViaヘッダの全てを参照するようにしている。これによりNAT超えを要するプライベートネットワークが複数存在するケースにも対処することが可能である。つまり図1のSIP端末10,30のように、複数のSIP端末が重複するプライベートアドレスを持つケースがある。そこで、全てのViaヘッダのIPアドレスを参照することでプライベートネットワークの区別も含めて、個々のSIP端末を物理的に識別することが可能になる。
さらに、多段のSIP−Proxyを経由するとその都度Viaヘッダが付加されるので、識別情報生成のためのデータ量も増大する。この実施形態では連結したIPアドレスから生成したチェックサムを識別情報として用いるようにしているので、データ量を削減でき、処理メモリに要する容量を削減して、ひいてはシステムのコストアップを防止することも可能になる。このほか、ハッシュ関数によるハッシュ値を用いても同様の効果を得られる。
[第2の実施形態]
第1の実施形態では、各ルータ300,400におけるNAT機能がALGにより解決されるケースを想定した。このケースではREGISTERメッセージの要求元ラインにおけるIPアドレスがセグメント(プライベートネットワーク)ごとに異なるので、REGISTERメッセージ中のViaヘッダのみを用いて、各SIP端末を特定するための識別情報を生成することができる。これに対し先に触れたSTUN、あるいはTURNによりNAT解決がなされるケースではViaヘッダの要求元ラインのIPアドレスが同じのセグメントの全てで同じになる。以下ではこのようなケースを想定した実施の形態につき説明する。
図7は、この実施形態における識別情報の生成手順につき説明するための図である。すなわちこの実施形態では、REGISTERメッセージ内のViaヘッダに記されるIPアドレスに加えて、このREGISTERメッセージを伝送したIPパケットに記されるIPヘッダ、およびUDP/TCPヘッダをも利用する。
図7に示されるように、SIPメッセージを伝送するIPパケットにはIPヘッダにその送信元および宛先のIPアドレスが記載される。TCPまたはUDPヘッダには、送信元および宛先のポート番号が記載される。図7によればSIPメッセージの3行目のViaヘッダに、IPアドレス“172.16.38.20”が記載され、4行目のViaヘッダにIPアドレス”192.168.1.10”が記載されている。さらに、TCP/UDPヘッダの送信元ポート番号には”1000”が記載され、IPヘッダの送信元IPアドレスには “172.16.38.20 ”が記載されている。
そこでこの実施形態では、これらのIPアドレスおよびポート番号を組み合わせ、“172.16.38.20192.168.1.10172.16.38.201000 ” という文字列を生成し、これを単純加算することでチェックサムを作成する。すなわち第2の実施形態では第1の実施形態で用いた手法を拡張し、ViaヘッダのIPアドレスに加え、REGISTERメッセージを伝播したIPパケットのIPヘッダにおける送信元IPアドレス、および、UDP/TCPヘッダに含まれる送信元ポート番号も使用してチェックサムを生成するようにしている。このチェックサムを識別情報として用いることにより、ALG以外の手法(例えばSTUN、TURN)でNAT問題が解決されるシステムにおいても、REGISTER送出元のSIP端末を個別に識別することが可能となる。
なお、この発明は上記実施の形態に限定されるものではない。例えばSIP端末のロケーションを管理するためのロケーションサーバを用いても良い。
図8はロケーションサーバを設けたケースにおけるソフトウェア構成を示す図である。ロケーションサーバ500はSIPサーバ200とは独立して設けられ、データベース24を備えてロケーションテーブル24aと使用可能URI数テーブル24bとを記憶する。このような構成にする事により、SIPサーバが複数存在する場合において、各SIPサーバが参照するロケーション情報の完全性を向上させることが可能になる。つまり複数のSIPサーバにロケーションテーブルを記憶させると、それらの同期を取る必要がある。図8に示すようにデータベースを単一化することで、データベース間の同期処理の必要がなくなるので、登録判定部23bが参照すべきデータを統一化することが可能になる。
さらに、この発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
100…基幹ネットワーク、200…SIPサーバ、300,400…ルータ、A,B…プライベートネットワーク、10,20,30…SIP端末、21…インタフェース部、22…入出力部、23…主制御部、23a…SIP制御部、23b…登録判定部、23c…識別情報生成部、24…データベース部、24a…ロケーションテーブル、24b…使用可能URI数管理テーブル

Claims (8)

  1. プライベートアドレスを用いるプライベートネットワークとグローバルアドレスを用いるグローバルネットワークとを相互に接続するルータと、
    前記プライベートネットワークに属する端末と、
    前記グローバルネットワークに設けられ、前記端末から前記ルータを経由して送出されるSIP(Session Initiation Protocol)メッセージに基づく処理を行うサーバ装置とを具備する通信システムにおいて、
    前記サーバ装置は、
    前記端末から前記ルータを含む経路を介して受信したREGISTERメッセージの、当該経路におけるデバイスにより順次追記されるViaヘッダの全てに記載されるIP(Internet Protocol)アドレスから、当該REGISTERメッセージの送出元端末に対応付けられる識別情報を生成する識別情報生成手段と、
    前記プライベートネットワークに属する端末ごとに、前記識別情報、および当該端末が使用可能なURI(Uniform Resource Identifier)数を含む所定の登録条件とを対応付けた管理テーブルと、
    この管理テーブルにおいて管理される識別情報と前記登録条件とを照合して、その結果に基づいて前記REGISTERメッセージによる登録要求元の端末の登録の可否を判定する登録判定手段とを備えることを特徴とする通信システム。
  2. 前記識別情報生成手段は、前記REGISTERメッセージの全てのViaヘッダに記載されるIPアドレスを連結した文字情報から生成したチェックサムを前記識別情報とすることを特徴とする請求項1に記載の通信システム。
  3. 前記識別情報生成手段は、前記REGISTERメッセージの全てのViaヘッダに記載されるIPアドレスからハッシュ関数を用いて生成したハッシュ値を前記識別情報とすることを特徴とする請求項1に記載の通信システム。
  4. 前記識別情報生成手段は、さらに、前記受信したREGISTERメッセージを伝送したIPパケットのIPヘッダに記載される送信元IPアドレスと、当該IPパケットのTCP/UDPヘッダに記載される送信元ポート番号とを、前記全てのViaヘッダに記載されるIPアドレスに組み合わせて前記識別情報を生成することを特徴とする請求項1に記載の通信システム。
  5. プライベートアドレスを用いるプライベートネットワークとグローバルアドレスを用いるグローバルネットワークとを相互に接続するルータと、前記プライベートネットワークに属する端末とを具備する通信システムの前記グローバルネットワークに設けられるサーバ装置において、
    前記端末から前記ルータを経由して送出されるSIP(Session Initiation Protocol)メッセージに基づく処理を行うSIP制御手段と、
    前記端末から前記ルータを含む経路を介して受信したREGISTERメッセージの、当該経路におけるデバイスにより順次追記されるViaヘッダの全てに記載されるIP(Internet Protocol)アドレスから、当該REGISTERメッセージの送出元端末に対応付けられる識別情報を生成する識別情報生成手段と、
    前記プライベートネットワークに属する端末ごとに、前記識別情報、および当該端末が使用可能なURI(Uniform Resource Identifier)数を含む所定の登録条件とを対応付けた管理テーブルと、
    この管理テーブルにおいて管理される識別情報と前記登録条件とを照合して、その結果に基づいて前記REGISTERメッセージによる登録要求元の端末の登録の可否を判定する登録判定手段とを備えることを特徴とするサーバ装置。
  6. 前記識別情報生成手段は、前記REGISTERメッセージの全てのViaヘッダに記載されるIPアドレスを連結した文字情報から生成したチェックサムを前記識別情報とすることを特徴とする請求項5に記載のサーバ装置。
  7. 前記識別情報生成手段は、前記REGISTERメッセージの全てのViaヘッダに記載されるIPアドレスからハッシュ関数を用いて生成したハッシュ値を前記識別情報とすることを特徴とする請求項5に記載のサーバ装置。
  8. 前記識別情報生成手段は、さらに、前記受信したREGISTERメッセージを伝送したIPパケットのIPヘッダに記載される送信元IPアドレスと、当該IPパケットのTCP/UDPヘッダに記載される送信元ポート番号とを、前記全てのViaヘッダに記載されるIPアドレスに組み合わせて前記識別情報を生成することを特徴とする請求項5に記載のサーバ装置。
JP2009155999A 2009-06-30 2009-06-30 通信システムとそのサーバ装置 Expired - Fee Related JP4635095B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2009155999A JP4635095B2 (ja) 2009-06-30 2009-06-30 通信システムとそのサーバ装置
US12/721,401 US20100329271A1 (en) 2009-06-30 2010-03-10 Communication System and Server Unit Thereof
US13/233,980 US20120002674A1 (en) 2009-06-30 2011-09-15 Communication System and Server Unit Thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009155999A JP4635095B2 (ja) 2009-06-30 2009-06-30 通信システムとそのサーバ装置

Publications (2)

Publication Number Publication Date
JP2011015065A JP2011015065A (ja) 2011-01-20
JP4635095B2 true JP4635095B2 (ja) 2011-02-16

Family

ID=43380675

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009155999A Expired - Fee Related JP4635095B2 (ja) 2009-06-30 2009-06-30 通信システムとそのサーバ装置

Country Status (2)

Country Link
US (2) US20100329271A1 (ja)
JP (1) JP4635095B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5693065B2 (ja) * 2010-07-06 2015-04-01 キヤノン株式会社 通信端末、通信端末の制御方法及びプログラム
TWI535247B (zh) * 2012-04-10 2016-05-21 財團法人資訊工業策進會 用於網路位址轉換穿透的傳輸系統及傳輸方法
US8825814B1 (en) 2013-05-23 2014-09-02 Vonage Network Llc Method and apparatus for minimizing application delay by pushing application notifications
CN116506407B (zh) * 2023-06-20 2023-11-14 阿里巴巴(中国)有限公司 语音通信方法、系统、存储介质及电子设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09261265A (ja) * 1996-01-17 1997-10-03 Toshiba Corp 通信制御方法、中継装置およびデータパケット処理装置
JP2004363790A (ja) * 2003-06-03 2004-12-24 Nec Infrontia Corp ボタン電話システム、その主装置、及びその着信方法
JP2005204216A (ja) * 2004-01-19 2005-07-28 Nippon Telegr & Teleph Corp <Ntt> 複数nat/fw装置接続に対応したsip−algの呼関連リソース管理方法及びそのsip−alg
JP2006074565A (ja) * 2004-09-03 2006-03-16 Nec Infrontia Corp 構内電話システム及びその内線電話機収容方法
JP2008078766A (ja) * 2006-09-19 2008-04-03 Nec Infrontia Corp ボタン電話システム

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2369746A (en) * 2000-11-30 2002-06-05 Ridgeway Systems & Software Lt Communications system with network address translation
JP4349766B2 (ja) * 2001-12-07 2009-10-21 株式会社日立製作所 アドレス変換装置
US6985479B2 (en) * 2002-03-04 2006-01-10 Qualcomm Incorporated Method and apparatus for processing internet protocol transmissions
JP3972733B2 (ja) * 2002-05-30 2007-09-05 株式会社日立製作所 アドレス変換装置、アドレス変換システム、及びsipサーバ
US7421732B2 (en) * 2003-05-05 2008-09-02 Nokia Corporation System, apparatus, and method for providing generic internet protocol authentication
US7346059B1 (en) * 2003-09-08 2008-03-18 Cisco Technology, Inc. Header range check hash circuit
JP4276568B2 (ja) * 2004-03-26 2009-06-10 株式会社日立コミュニケーションテクノロジー ルータ及びsipサーバ
JP2006180295A (ja) * 2004-12-22 2006-07-06 Matsushita Electric Ind Co Ltd アドレス変換装置およびアドレス変換方法
JP4154615B2 (ja) * 2005-12-08 2008-09-24 日本電気株式会社 Sipサーバ共有モジュール装置、sipメッセージ中継方法、及びプログラム
KR100765325B1 (ko) * 2006-02-13 2007-10-09 삼성전자주식회사 Stun을 이용한 대칭형 네트워크 주소 변환 시스템 및그 방법
WO2008035578A1 (fr) * 2006-09-22 2008-03-27 Panasonic Corporation Appareil de communication, procédé de communication et système de communication
US20080080532A1 (en) * 2006-09-29 2008-04-03 O'sullivan Mark Methods and apparatus for managing internet communications using a dynamic STUN infrastructure configuration
US20090013078A1 (en) * 2007-07-03 2009-01-08 4Dk Technologies, Inc. Optimized Signaling Protocol, Including Session Initiation Protocol (SIP), in a Communications Environment
US8321592B2 (en) * 2008-12-12 2012-11-27 Tekelec, Inc. Methods, systems, and computer readable media for generating and using statelessly reversible representations of session initiation protocol (SIP) information by SIP cluster entities
US7945663B2 (en) * 2008-12-29 2011-05-17 Genband Inc. Systems, methods, and computer program products for adaptively adjusting a registration interval of an endpoint
WO2010088774A1 (en) * 2009-02-06 2010-08-12 Sagem-Interstar, Inc. Scalable nat traversal

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09261265A (ja) * 1996-01-17 1997-10-03 Toshiba Corp 通信制御方法、中継装置およびデータパケット処理装置
JP2004363790A (ja) * 2003-06-03 2004-12-24 Nec Infrontia Corp ボタン電話システム、その主装置、及びその着信方法
JP2005204216A (ja) * 2004-01-19 2005-07-28 Nippon Telegr & Teleph Corp <Ntt> 複数nat/fw装置接続に対応したsip−algの呼関連リソース管理方法及びそのsip−alg
JP2006074565A (ja) * 2004-09-03 2006-03-16 Nec Infrontia Corp 構内電話システム及びその内線電話機収容方法
JP2008078766A (ja) * 2006-09-19 2008-04-03 Nec Infrontia Corp ボタン電話システム

Also Published As

Publication number Publication date
US20100329271A1 (en) 2010-12-30
US20120002674A1 (en) 2012-01-05
JP2011015065A (ja) 2011-01-20

Similar Documents

Publication Publication Date Title
US8451845B2 (en) Method of receiving a data packet in an IPv6 domain, an associated device and an associated home gateway
US9019965B2 (en) Methods and devices for routing data packets between IPv4 and IPv6 networks
JP4951676B2 (ja) マルチメディア・ネットワークにおいてサービス要求を処理するための方法及び装置
US8737396B2 (en) Communication method and communication system
JP2009531921A (ja) セッションイニシエーションプロトコルにおいて信頼性のあるネットワーク供給のアクセスネットワーク情報を搬送するためのシステム及び方法
JP4394701B2 (ja) ネットワークトポロジーを隠蔽する方法および装置
JP2007164387A (ja) データ通信方法およびシステム
JP2010532591A (ja) Ipマルチメディアサブシステムサービスへのグループアクセス
Petit-Huguenin et al. Session traversal utilities for NAT (STUN)
CN115943603B (zh) 区块链增强路由授权
JP4635095B2 (ja) 通信システムとそのサーバ装置
US8775683B2 (en) Exchanging control codes between SIP/IMS and UPnP network elements
US8437254B2 (en) Dynamic configuration of VoIP trunks
KR100772537B1 (ko) IPv4 네트워크 환경에서 IPv6 패킷이 IPv4로터널링되도록 하는 IPv6 전환 장치 및 방법
KR101666594B1 (ko) Sip 서비스 시스템 및 그 제어방법
JP2007049262A (ja) 端末、通信装置、通信確立方法および認証方法
KR20070061377A (ko) 사설망과 공인망 간의 sip 트랜잭션 교환을 위한네트워크 주소 변환 장치 및 그 주소 변환 방법
JP2007043751A (ja) アドレス変換装置、メッセージ処理方法および装置
Jennings et al. A SIP usage for resource location and discovery (RELOAD)
Camarillo et al. Hip bone: host identity protocol (hip) based overlay networking environment (bone)
WO2018173099A1 (ja) ゲートウェイ及び中継方法
Ginoza Request for Comments Summary RFC Numbers 3500-3599
JP2009207207A (ja) アドレス変換装置、メッセージ処理方法および装置
JP2006197360A (ja) アクセス制御システム、アクセス制御方法、およびアクセス制御プログラム
Hunek NAT64/DNS64 in the Networks with DNSSEC

Legal Events

Date Code Title Description
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: 20101026

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101119

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

Free format text: PAYMENT UNTIL: 20131126

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees