JP4910542B2 - Sipメッセージ引渡プログラム - Google Patents

Sipメッセージ引渡プログラム Download PDF

Info

Publication number
JP4910542B2
JP4910542B2 JP2006205297A JP2006205297A JP4910542B2 JP 4910542 B2 JP4910542 B2 JP 4910542B2 JP 2006205297 A JP2006205297 A JP 2006205297A JP 2006205297 A JP2006205297 A JP 2006205297A JP 4910542 B2 JP4910542 B2 JP 4910542B2
Authority
JP
Japan
Prior art keywords
sip message
sip
location information
record
component
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
JP2006205297A
Other languages
English (en)
Other versions
JP2008033558A (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
Priority to JP2006205297A priority Critical patent/JP4910542B2/ja
Priority to US11/821,606 priority patent/US20080028082A1/en
Publication of JP2008033558A publication Critical patent/JP2008033558A/ja
Application granted granted Critical
Publication of JP4910542B2 publication Critical patent/JP4910542B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1021Server selection for load balancing based on client or server locations
    • 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1014Server selection for load balancing based on the content of a request

Landscapes

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

Description

本発明は、SIP[Session Initiation Protocol]サーバにSIPメッセージを引き渡す装置としてコンピュータを動作させるためのSIPメッセージ引渡プログラムに、関する。
一般に、ホストとは、ネットワーク上の他のコンピュータにサービスや処理能力を提供する機能が導入されたコンピュータを言う。通常の運用形態では、そのような機能は、一台のコンピュータに対し、一つだけ導入されることが多い。しかし、近年では、そのような機能を一台のコンピュータ上で複数動作させる技術が、開発されつつある。この技術は、仮想ホスティングと称されている。この仮想ホスティングによれば、物理的にコンピュータの台数を増やすことなく、同種の機能を仮想ホストとして増やすことができるようになる。
この仮想ホスティングにより同一のコンピュータ上に実現された複数の仮想ホストは、何れも同種の機能を提供するものであり、互いに同一のIP[Internet Protocol]アドレスを利用しつつ、互いに同一の通信プロトコルに従ってネットワーク上の他のコンピュータと通信を行う。このため、仮想ホスティングでは、ネットワーク上の他のコンピュータからデータが送られてきた際、そのデータが適切な仮想ホストに引き渡されるようにしておく必要がある。
ここで、各仮想ホストがSIPサーバである場合、各仮想ホストは、ネットワーク上の他のSIPサーバやSIPクライアントからSIPメッセージを受信する。SIPメッセージは、図4に示すように、スタートライン,ヘッダ,及び、ボディからなる。従来、複数のSIPサーバが仮想ホストとして同一コンピュータ上に実現される場合、SIPメッセージを受信するインターフェースエンジンにその宛先を判別する機能が組み込まれた。すなわち、そのインターフェースエンジンは、SIPメッセージ内の所定の構成要素の内容から、そのSIPメッセージの適切な受け取り先となる仮想ホストを判別し、判別した仮想ホストにSIPメッセージを引き渡すようになっている。
例えば、コンピュータに四つのSIPサーバが仮想ホストとして実現されている場合において、インターフェースエンジンは、SIPメッセージの「Route」ヘッダフィールドの値が例えば「sss.co.jp」というドメイン名だったときには、そのSIPメッセージを一つ目のSIPサーバに引き渡し、SIPメッセージのスタートライン内のURI[Uniform Resource Identifier]が例えば「sip:[email protected]」というURIだったときには、そのSIPメッセージを二つ目のSIPサーバに引き渡し、SIPメッセージの「From」ヘッダフィールドの値が「sip:[email protected]」というURIだったときには、そのSIPメッセージを三つ目のSIPサーバに引き渡し、SIPメッセージの「To」ヘッダフィールドの値が例えば「sip:[email protected]」というURIだったときには、そのSIPメッセージを四つ目のSIPサーバに引き渡す。
インターフェースエンジンは、各SIPサーバのSIPメッセージの受け取り条件を、テーブル上にて管理しており、SIPメッセージを受け取るたびにそのテーブルを検索することにより、適切なSIPサーバを判別する。
特開2006−099207号公報(段落0038)
ところが、何れかのSIPサーバ宛のSIPメッセージに、前述した従来のインターフェースエンジンがテーブルに規定している受け取り条件が、幾つか含まれていると、そのSIPメッセージを引き渡すべき仮想ホストが、複数抽出され、複数の仮想ホストにSIPメッセージが引き渡されてしまうという問題がある。
前述した例で言えば、SIPメッセージが、「Route」ヘッダフィールドに「sss.co.jp」を含むとともに、「From」ヘッダフィールドに「sip:[email protected]」を含んでいるときには、従来のインターフェースエンジンは、そのSIPメッセージを、一つ目のSIPサーバに引き渡すべきか、三つ目のSIPサーバに引き渡すべきか、判別つかなくなってしまう。
本発明は、前述した従来の事情に鑑みてなされたものであり、その課題は、仮想ホストとして複数のSIPサーバが実現されているコンピュータ上において、何れかのSIPサーバ宛に送られてきたSIPメッセージを、一つの適切なSIPサーバに引き渡せるようにすることにある。
上記の課題を解決するために案出されたSIPメッセージ引渡プログラムは、SIPサーバである複数の仮想ホストのうちの何れかの仮想ホスト宛に送られてきたSIPメッセージを、適切な仮想ホストに引き渡すためのSIPメッセージ引渡プログラムであって、コンピュータを、SIPメッセージの構成要素のうち、所在情報を含み得る幾つかの構成要素のそれぞれについて、その構成要素に所定の所在情報が含まれていることをSIPメッセージを受け取る条件としている仮想ホストを識別するための仮想ホスト識別情報と、その受け取り条件の内容となる所定の所在情報とを対応付けたレコードを、記憶装置内のテーブルに記憶する記憶手段,ネットワーク上のSIPサーバからSIPメッセージを受信する受信手段,前記各構成要素について、所定の順に、その構成要素での受け取り条件が前記受信手段が受信したSIPメッセージにおける対応する構成要素内の所在情報と一致するレコードを前記テーブルから検索する処理を、行う検索手段,及び、前記検索手段が前記各構成要素について順に前記検索処理を行うことにより、何れかの検索処理でレコードが検出されると、その検出されたレコードに含まれる仮想ホスト識別情報により示される仮想ホストに、前記受信手段が受信したSIPメッセージを引き渡す引渡手段として機能させることを、特徴としている。
このような構成によれば、このSIPメッセージ引渡プログラムが動作するコンピュータは、ネットワーク上の何れかのSIPサーバから受信したSIPメッセージに幾つかの仮想ホストの受け取り条件が含まれていたとしても、SIPメッセージにおける所在情報を含む幾つかの構成要素について一つずつ順に検索処理を行うことにより、何れか一つの受け取り条件が必ず先に検出されることとなる。従って、その検索処理が行われる構成要素の順番が、適宜設定されていれば、その優先順に従って、適切な仮想ホストが唯一決定され、その唯一の仮想ホストにSIPメッセージを引き渡すことができることとなる。
なお、本発明のSIPメッセージ引渡プログラムでは、ネットワーク上のSIPサーバから通信装置を介して受信するSIPメッセージに対し、各検索処理が行われるようになっているが、何れかの仮想ホストから発せられるSIPメッセージに対しても、各検索処理が行われるようになっていてもよい。後者のようにすることで、或る仮想ホストから別の仮想ホストへSIPメッセージが送信される際、そのSIPメッセージが通信装置を介してネットワークへ流出することなく、コンピュータ内部で折り返すように転送されることとなる。
また、本発明のSIPメッセージ引渡プログラムでは、検索処理が行われるSIPメッセージの各構成要素は、所在情報が含まれるものであるなら何でもよく、例えば、メソッドの指定先の所在を特定する所在情報が含まれるスタートライン,中継装置の所在を特定する所在情報が格納される「Route」ヘッダフィールド,送信元の所在を特定する所在情報が格納される「From」ヘッダフィールド,及び、着信先の所在を特定する所在情報が格納される「To」ヘッダフィールドは、検索処理対象の構成要素として利用することができる。
以上に説明したように、本発明によれば、仮想ホストとして複数のSIPサーバが実現されているコンピュータ上において、何れかのSIPサーバ宛に送られてきたSIPメッセージが、一つの適切なSIPサーバに引き渡されるようになる。
以下、添付図面を参照しながら、本発明を実施するための一つの形態について、説明する。
図1は、本実施形態のホスト装置10の構成図である。
ホスト装置10は、仮想ホストとしてSIP[Session Initiation Protocol]サーバが五つ実現されたコンピュータである。コンピュータは、周知のように、ストレージ10a,CPU[Central Processing Unit]10b,DRAM[Dynamic Random Access Memory]10c,及び、通信アダプタ10d等のハードウエアを、内蔵している。ストレージ10aは、各種のプログラムやデータが記録された記憶装置である。CPU10bは、ストレージ10aに記録されているプログラムに従って各種の処理を行う制御装置である。DRAM10cは、CPU10bが各種の処理を行う際に作業領域が展開される記憶装置である。通信アダプタ10dは、ネットワーク上のコンピュータや中継装置とデータの遣り取りを行うための通信装置である。
そして、このホスト装置10のストレージ10aは、図示していないが、通信アダプタ10dにおけるデータの入出力の管理,並びに、ストレージ10aやDRAM10cの記憶領域の管理といった基本的な機能を多くのアプリケーションソフトウエアに提供するための基本ソフトウエアを、記憶している。また、このストレージ10aは、五つのSIPサーバ11〜15を実現するためのソフトウエア群を、記憶している。また、このストレージ10aは、後述のインターフェースエンジン16を実現するためのソフトウエア群を、記憶している。さらに、このストレージ10aは、本発明に係るホスト判別モジュール17を実現するためのソフトウエア群,及び、そのホスト判別モジュール17が利用する判別テーブル18を、記憶している。
SIPサーバ11〜15は、図示していないが、何れも、SIPサーバとしての機能を実現するためのプロキシサーバ,リダイレクトサーバ,レジスタサーバを少なくとも含んでいる。このうち、プロキシサーバは、ユーザエージェント(SIPクライアント)の代理としてセッション相手のユーザエージェントの場所を特定してそのセッション相手のユーザエージェントサーバを呼び出す機能である。リダイレクトサーバは、図示せぬロケーションサーバからセッション相手のアドレスを聞き出してセッションの要求元のユーザエージェントクライアントに通知する機能である。レジスタサーバは、ユーザエージェント(SIPクライアント)からの要求に基づいて、図示せぬロケーションサーバに対するそのユーザエージェントに係る情報の登録、変更、削除を行う機能である。これらプロキシサーバ,リダイレクトサーバ,レジスタサーバは、周知の技術であるので、ここではこれ以上説明しない。SIPサーバ11〜15は、何れも、SIPに従って、ユーザエージェント(SIPクライアント)とSIPメッセージを遣り取りすることによって、ユーザエージェント間のシグナリングを行い、ユーザエージェント間のセッションの投入及び切断を管理する。
インターフェースエンジン16は、ネットワーク上のSIPサーバ又はユーザエージェントからのSIPメッセージの受信,及び、ネットワーク上のSIPサーバ又はユーザエージェントへのSIPメッセージの送信を行うための機能である。このインターフェースエンジン16は、ネットワーク上のSIPサーバ若しくはユーザエージェント,又は、SIPサーバ11〜15の何れかから、SIPメッセージを受信すると、後述のホスト判別モジュール17のプロセスを生成して、そのSIPメッセージがSIPサーバ11〜15の何れかを宛先とするものであるかをそのプロセスに判断させるようになっている。そして、このインターフェースエンジン16は、その判断の結果、SIPサーバ11〜15の何れもSIPメッセージの宛先でなかった場合、SIPに従い、そのSIPメッセージを、ネットワーク上のSIPサーバ若しくはユーザエージェントに送信する。逆に、その判断の結果、SIPサーバ11〜15の何れかがSIPメッセージの宛先であった場合、このインターフェースエンジン16は、その宛先となるSIPサーバへSIPメッセージを引き渡す機能のスレッドを立てて、そのスレッドに対し、該当するSIPサーバへそのSIPメッセージを引き渡させる。
従って、このインターフェースエンジン16は、前述した受信手段に相当することになる。
ホスト判別モジュール17は、インターフェースエンジン16からの指示を受けて、インターフェースエンジン16が受信したSIPメッセージの宛先を判断する機能である。このホスト判別モジュール17(に従ったCPU10b)が行う処理の内容については、後述する。
判別テーブル18は、ホスト判別モジュール17がSIPメッセージの宛先を判別するときに利用するテーブルである。図2は、判別テーブル18のデータ構造の一例を示す図である。図2に示すように、判別テーブル18は、SIPサーバ11〜15と同数のレコードを、有している。各レコードは、「仮想ホスト」,「第一条件」,「第二条件」,「第三条件」及び「第四条件」のフィールドを、有している。このうち、「仮想ホスト」フィールドには、仮想ホストであるSIPサーバ11〜15の中から各SIPサーバを個別に識別するための情報である仮想ホスト識別情報が、格納される。また、「第一条件」,「第二条件」,「第三条件」及び「第四条件」の各フィールドには、そのSIPサーバ11〜15が受け取り先となるSIPメッセージの条件として、URI[Uniform Resource Identifier]という所在情報が格納され、又は、何も格納されない。
後述するように、「第一条件」フィールドに定義されているURIが、インターフェースエンジン16が受信したSIPメッセージの「Route」ヘッダフィールド(図4参照)に含まれていた場合、そのURIを含むレコードに対応するSIPサーバ11〜15は、そのSIPメッセージの受け取り先とされる。「第一条件」フィールドが空欄である場合、SIPサーバ11〜15は、「Route」ヘッダフィールドの値がどんなものであっても、SIPメッセージの受け取り先とされることはない。この「第一条件」フィールドと同様に、「第二条件」フィールドに定義されているURIが、SIPメッセージのスタートライン(図4参照)に含まれていると、対応するSIPサーバ11〜15は、SIPメッセージの受け取り先とされる。また、「第三条件」のフィールドに定義されているURIが、SIPメッセージの「To」ヘッダフィールド(図4参照)に含まれていると、対応するSIPサーバ11〜15は、SIPメッセージの受け取り先とされる。また、「第四条件」のフィールドに定義されているURIが、SIPメッセージの「From」ヘッダフィールド(図4参照)に含まれていると、対応するSIPサーバ11〜15は、SIPメッセージの受け取り先とされる。
従って、この判別テーブル18をストレージ10aに記憶するホスト装置10は、前述した記憶手段に相当することになる。
次に、以上のように構成されるホスト装置10において、ホスト判別モジュール17が行う処理の内容について、説明する。
前述したように、ホスト判別モジュール17は、インターフェースエンジン16が、ネットワーク上のSIPサーバ若しくはユーザエージェント,又は、SIPサーバ11〜15の何れかから、SIPメッセージを受信すると、起動される。
図3は、このホスト判別処理の流れを示す図である。
ホスト判別処理の開始後、最初のステップS101では、ホスト判別モジュール17(に従ったCPU10b)は、インターフェースエンジン16から、そのインターフェースエンジン16が受信したSIPメッセージを、受け取る処理を行う。
次のステップS102では、ホスト判別モジュール17は、ストレージ10aから図2の判別テーブル18を読み出す処理を行う。
次のステップS103では、ホスト判別モジュール17は、ステップS101でインターフェースエンジン16から受け取ったSIPメッセージの「Route」ヘッダフィールドからURIを読み、図2の判別テーブル18において、そのURIと同じURIを「第一条件」フィールドに含むレコードを、検索する処理を行う。
次のステップS104では、ホスト判別モジュール17は、SIPメッセージの「Route」ヘッダフィールド内のURIと同じURIを「第一条件」フィールドに含むレコードが検出できたか否かを、判別する。そして、ホスト判別モジュール17は、当該レコードが検出できた場合、ステップS104からステップS112へ処理を分岐させ、当該レコードが検出できなかった場合、ステップS105へ処理を進める。
ステップS105では、ホスト判別モジュール17は、ステップS101でインターフェースエンジン16から受け取ったSIPメッセージのスタートラインからURIを読み、図2の判別テーブル18において、そのURIと同じURIを「第二条件」フィールドに含むレコードを、検索する処理を行う。
次のステップS106では、ホスト判別モジュール17は、SIPメッセージのスタートライン内のURIと同じURIを「第二条件」フィールドに含むレコードが検出できたか否かを、判別する。そして、ホスト判別モジュール17は、当該レコードが検出できた場合、ステップS106からステップS112へ処理を分岐させ、当該レコードが検出できなかった場合、ステップS107へ処理を進める。
次のステップS107では、ホスト判別モジュール17は、ステップS101でインターフェースエンジン16から受け取ったSIPメッセージの「To」ヘッダフィールドからURIを読み、図2の判別テーブル18において、そのURIと同じURIを「第三条件」フィールドに含むレコードを、検索する処理を行う。
次のステップS108では、ホスト判別モジュール17は、SIPメッセージの「To」ヘッダフィールド内のURIと同じURIを「第三条件」フィールドに含むレコードが検出できたか否かを、判別する。そして、ホスト判別モジュール17は、当該レコードが検出できた場合、ステップS108からステップS112へ処理を分岐させ、当該レコードが検出できなかった場合、ステップS109へ処理を進める。
次のステップS109では、ホスト判別モジュール17は、ステップS101でインターフェースエンジン16から受け取ったSIPメッセージの「From」ヘッダフィールドからURIを読み、図2の判別テーブル18において、そのURIと同じURIを「第四条件」フィールドに含むレコードを、検索する処理を行う。
次のステップS110では、ホスト判別モジュール17は、SIPメッセージの「From」ヘッダフィールド内のURIと同じURIを「第四条件」フィールドに含むレコードが検出できたか否かを、判別する。そして、ホスト判別モジュール17は、当該レコードが検出できた場合、ステップS110からステップS112へ処理を分岐させ、当該レコードが検出できなかった場合、ステップS111へ処理を進める。
ステップS111では、ホスト判別モジュール17は、仮想ホスト識別情報を含むレコードが図2の判別テーブル18から検出できなかったことから、仮想ホスト識別情報が検出できなかった旨を示す情報を、戻り値としてインターフェースエンジン16に引き渡す処理を行う。その後、ホスト判別モジュール17は、図3に係るホスト判別処理を終了する。
一方、ステップS112では、ホスト判別モジュール17は、仮想ホスト識別情報を含むレコードが図2の判別テーブル18から検出できたことから、そのレコードに含まれる仮想ホスト識別情報を、戻り値として、インターフェースエンジン16に引き渡す処理を行う。その後、ホスト判別モジュール17は、図3に係るホスト判別処理を終了する。
従って、ステップS103,S105,S107,S109を実行するCPU10bは、前述した検索手段に相当することになり、ステップS111,S112を実行するCPU10bは、前述した引渡手段に相当していることになる。
なお、インターフェースエンジン16は、仮想ホスト識別情報が検出できなかった旨を示す情報をホスト判別モジュール17から受け取ると、SIPに従って、SIPメッセージを、宛先が無い旨とともに、送信元に送り返す処理を行う。また、インターフェースエンジン16は、仮想ホスト識別情報をホスト判別モジュール17から受け取ると、前述したように、仮想ホスト(SIPサーバ)へSIPメッセージを引き渡すモジュールのスレッドを立てて、そのスレッドに仮想ホスト識別情報とSIPメッセージとを引き渡す。そのスレッドは、インターフェースエンジン16から受け取った仮想ホスト識別情報により示される仮想ホスト(SIPサーバ)へ、SIPメッセージを引き渡す処理を行う。
次に、本実施形態のホスト装置10の作用及び効果について説明する。
例えば、本実施形態のホスト装置10のインターフェースエンジン16が、図4に示すようなSIPメッセージをネットワーク上のSIPサーバから受信したとする。なお、図4に示すSIPメッセージは、その「Route」ヘッダフィールドに、図2の判別テーブル18におけるSIPサーバ11のレコードの「第一条件」フィールドの値と同じURI(sip:fujitsu.com)を含むとともに、そのスタートラインに、図2の判別テーブル18におけるSIPサーバ12のレコードの「第二条件」フィールドの値と同じURI(sip:[email protected])を含んでいる。
インターフェースエンジン16は、このようなSIPメッセージを受信すると、ホスト判別モジュール17のプロセスを生成する。ホスト判別モジュール17は、SIPメッセージの各構成要素のうち、「Route」ヘッダフィールド内のURIを検索キーに、そのURIと同じURIを「第一条件」フィールドに持つレコードを検索する(ステップS103)。その検索の結果、SIPサーバ11のレコードが検出されるので、ホスト判別モジュール17は、そのSIPサーバ11の仮想ホスト識別情報(0001)をインターフェースエンジン16に引き渡す(ステップS104;YES,S112)。
このとき、前述したように、SIPメッセージは、そのスタートラインに、図2の判別テーブル18におけるSIPサーバ12のレコードの「第二条件」フィールドの値と同じURI(sip:[email protected])を含んでいるものの、スタートライン内のURIを検索キーとした検索(ステップS105)は行われないので(ステップS104;YES)、そのSIPサーバ12の仮想ホスト識別情報(0002)が戻り値としてインターフェースエンジン16に引き渡されることはない。従って、SIPメッセージは、必ず、一つの仮想ホスト(SIPサーバ)に引き渡されることになる。
このように、本実施形態のホスト装置10によれば、仮想ホストであるSIPサーバ11〜15のうちの何れか宛のSIPメッセージに、各SIPサーバ11〜15がそれぞれSIPメッセージの受け取り条件としているもののうちの幾つかが含まれていたとしても、そのSIPメッセージを引き渡すべき仮想ホストが、必ず一つだけ抽出され、その抽出された一つの仮想ホストにSIPメッセージが引き渡されるようになる。
また、本実施形態のホスト装置10によれば、仮想ホストであるSIPサーバ11〜15のうちの何れかがSIPメッセージを発する際でも、インターフェースエンジン16は、そのSIPメッセージについて、ホスト判別モジュール17のプロセスを生成して、図3のホスト判別処理を行わせる。
これにより、ホスト装置10の内部でSIPメッセージが転送される場合、すなわち、SIPサーバ11〜15の何れかから、SIPサーバ11〜15の何れかに、SIPメッセージが送信される場合には、インターフェースエンジン16は、ホスト判別モジュール17からそのSIPメッセージの適切な受け取り先の仮想ホスト識別情報を一つ知らされるため、SIPメッセージは、コンピュータ内部で折り返されように、送信元とは別のSIPサーバへ転送され、その結果として、通信装置を介してネットワークへ流出することがない。
(付記1)
SIPサーバである複数の仮想ホストのうちの何れかの仮想ホスト宛に送られてきたSIPメッセージを、適切な仮想ホストに引き渡すためのSIPメッセージ引渡プログラムであって、
コンピュータを、
SIPメッセージの構成要素のうち、所在情報を含み得る幾つかの構成要素のそれぞれについて、その構成要素に所定の所在情報が含まれていることをSIPメッセージを受け取る条件としている仮想ホストを識別するための仮想ホスト識別情報と、その受け取り条件の内容となる所定の所在情報とを対応付けたレコードを、記憶装置内のテーブルに記憶する記憶手段,
ネットワーク上のSIPサーバからSIPメッセージを受信する受信手段,
前記各構成要素について、所定の順に、その構成要素での受け取り条件が前記受信手段が受信したSIPメッセージにおける対応する構成要素内の所在情報と一致するレコードを前記テーブルから検索する処理を、行う検索手段,及び、
前記検索手段が前記各構成要素について順に前記検索処理を行うことにより、何れかの検索処理でレコードが検出されると、その検出されたレコードに含まれる仮想ホスト識別情報により示される仮想ホストに、前記受信手段が受信したSIPメッセージを引き渡す引渡手段
として機能させる
ことを特徴とするSIPメッセージ引渡プログラム。
(付記2)
前記受信手段は、前記何れかの仮想ホストからもSIPメッセージを受信するものである
ことを特徴とする付記1記載のSIPメッセージ引渡プログラム。
(付記3)
前記引渡手段は、前記検索手段が前記各構成要素について順に前記検索処理を行うことにより、何れの検索所においてもレコードが検出されなかった場合には、前記受信手段が受信したSIPメッセージの受け取り先が無い旨を示す情報を、送信元のSIPサーバに引き渡す
ことを特徴とする付記1又は2記載のSIPメッセージ引渡プログラム。
(付記4)
前記記憶手段は、SIPメッセージの各構成要素のうち、スタートライン,中継装置の所在を特定する所在情報が格納されるフィールド,発信元の所在を特定する所在情報が格納されるフィールド,及び、着信先の所在を特定する所在情報が格納されるフィールドの各構成要素について、仮想ホスト識別情報と受け取り条件とを対応付けたレコードを、記憶装置内のテーブルに記憶する
ことを特徴とする付記1,2又は3記載のSIPメッセージ引渡プログラム。
(付記5)
前記検索手段は、中継装置の所在を特定する所在情報が格納されるフィールド,スタートライン,着信先の所在を特定する所在情報が格納されるフィールド,及び、送信元の所在を特定する所在情報が格納されるフィールドの順に、前記検索処理を行う
ことを特徴とする付記4記載のSIPメッセージ引渡プログラム。
(付記6)
SIPサーバである複数の仮想ホストのうちの何れかの仮想ホスト宛に送られてきたSIPメッセージを、適切な仮想ホストに引き渡すためのSIPメッセージ引渡プログラムであって、
コンピュータを、
SIPメッセージの構成要素のうち、所在情報を含み得る幾つかの構成要素のそれぞれについて、その構成要素に所定の所在情報が含まれていることをSIPメッセージを受け取る条件としている仮想ホストを識別するための仮想ホスト識別情報と、その受け取り条件の内容となる所定の所在情報とを対応付けたレコードを、記憶装置内のテーブルに記憶する記憶手段,
ネットワーク上のSIPサーバからSIPメッセージを受信する受信手段,
前記各構成要素について、所定の順に、その構成要素での受け取り条件が前記受信手段が受信したSIPメッセージにおける対応する構成要素内の所在情報と一致するレコードを前記テーブルから検索する処理を、行う検索手段,及び、
前記検索手段が前記各構成要素について順に前記検索処理を行うことにより、何れかの検索処理でレコードが検出されると、その検出されたレコードに含まれる仮想ホスト識別情報により示される仮想ホストに、前記受信手段が受信したSIPメッセージを引き渡す引渡手段
として機能させるSIPメッセージ引渡プログラム
を格納したことを特徴とするコンピュータ可読媒体。
(付記7)
前記受信手段は、前記何れかの仮想ホストからもSIPメッセージを受信するものである
ことを特徴とする付記6記載のコンピュータ可読媒体。
(付記8)
前記引渡手段は、前記検索手段が前記各構成要素について順に前記検索処理を行うことにより、何れの検索所においてもレコードが検出されなかった場合には、前記受信手段が受信したSIPメッセージの受け取り先が無い旨を示す情報を、送信元のSIPサーバに引き渡す
ことを特徴とする付記6又は7記載のコンピュータ可読媒体。
(付記9)
前記記憶手段は、SIPメッセージの各構成要素のうち、スタートライン,中継装置の所在を特定する所在情報が格納されるフィールド,発信元の所在を特定する所在情報が格納されるフィールド,及び、着信先の所在を特定する所在情報が格納されるフィールドの各構成要素について、仮想ホスト識別情報と受け取り条件とを対応付けたレコードを、記憶装置内のテーブルに記憶する
ことを特徴とする付記6,7又は8記載のコンピュータ可読媒体。
(付記10)
前記検索手段は、中継装置の所在を特定する所在情報が格納されるフィールド,スタートライン,着信先の所在を特定する所在情報が格納されるフィールド,及び、送信元の所在を特定する所在情報が格納されるフィールドの順に、前記検索処理を行う
ことを特徴とする付記9記載のコンピュータ可読媒体。
(付記11)
SIPサーバである複数の仮想ホストのうちの何れかの仮想ホスト宛に送られてきたSIPメッセージを、適切な仮想ホストに引き渡すためのSIPメッセージ引渡装置であって、
SIPメッセージの構成要素のうち、所在情報を含み得る幾つかの構成要素のそれぞれについて、その構成要素に所定の所在情報が含まれていることをSIPメッセージを受け取る条件としている仮想ホストを識別するための仮想ホスト識別情報と、その受け取り条件の内容となる所定の所在情報とを対応付けたレコードを、テーブルに記憶する記憶部,
ネットワーク上のSIPサーバからSIPメッセージを受信する受信部,
前記各構成要素について、所定の順に、その構成要素での受け取り条件が前記受信部が受信したSIPメッセージにおける対応する構成要素内の所在情報と一致するレコードを前記テーブルから検索する処理を、行う検索部,及び、
前記検索部が前記各構成要素について順に前記検索処理を行うことにより、何れかの検索処理でレコードが検出されると、その検出されたレコードに含まれる仮想ホスト識別情報により示される仮想ホストに、前記受信部が受信したSIPメッセージを引き渡す引渡部
を備えることを特徴とするSIPメッセージ引渡装置。
(付記12)
前記受信部は、前記何れかの仮想ホストからもSIPメッセージを受信するものである
ことを特徴とする付記11記載のSIPメッセージ引渡装置。
(付記13)
前記引渡部は、前記検索部が前記各構成要素について順に前記検索処理を行うことにより、何れの検索所においてもレコードが検出されなかった場合には、前記受信部が受信したSIPメッセージの受け取り先が無い旨を示す情報を、送信元のSIPサーバに引き渡す
ことを特徴とする付記11又は12記載のSIPメッセージ引渡装置。
(付記14)
前記記憶部は、SIPメッセージの各構成要素のうち、スタートライン,中継装置の所在を特定する所在情報が格納されるフィールド,発信元の所在を特定する所在情報が格納されるフィールド,及び、着信先の所在を特定する所在情報が格納されるフィールドの各構成要素について、仮想ホスト識別情報と受け取り条件とを対応付けたレコードを、テーブルに記憶する
ことを特徴とする付記11,12又は13記載のSIPメッセージ引渡装置。
(付記15)
前記検索部は、中継装置の所在を特定する所在情報が格納されるフィールド,スタートライン,着信先の所在を特定する所在情報が格納されるフィールド,及び、送信元の所在を特定する所在情報が格納されるフィールドの順に、前記検索処理を行う
ことを特徴とする付記14記載のSIPメッセージ引渡装置。
(付記16)
SIPサーバである複数の仮想ホストのうちの何れかの仮想ホスト宛に送られてきたSIPメッセージを、適切な仮想ホストに引き渡すためのSIPメッセージ引渡方法であって、
コンピュータが、
SIPメッセージの構成要素のうち、所在情報を含み得る幾つかの構成要素のそれぞれについて、その構成要素に所定の所在情報が含まれていることをSIPメッセージを受け取る条件としている仮想ホストを識別するための仮想ホスト識別情報と、その受け取り条件の内容となる所定の所在情報とを対応付けたレコードを、記憶装置内のテーブルに記憶する記憶手順,
ネットワーク上のSIPサーバからSIPメッセージを受信する受信手順,
前記各構成要素について、所定の順に、その構成要素での受け取り条件が前記受信手順で受信したSIPメッセージにおける対応する構成要素内の所在情報と一致するレコードを前記テーブルから検索する処理を、行う検索手順,及び、
前記検索手順において前記各構成要素について順に前記検索処理を行うことにより、何れかの検索処理でレコードが検出されると、その検出されたレコードに含まれる仮想ホスト識別情報により示される仮想ホストに、前記受信手順で受信したSIPメッセージを引き渡す引渡手順
を実行する
ことを特徴とするSIPメッセージ引渡方法。
(付記17)
前記受信手順は、前記何れかの仮想ホストからもSIPメッセージを受信するものである
ことを特徴とする付記16記載のSIPメッセージ引渡方法。
(付記18)
前記引渡手順は、前記検索手順において前記各構成要素について順に前記検索処理を行うことにより、何れの検索所においてもレコードが検出されなかった場合には、前記受信手順で受信したSIPメッセージの受け取り先が無い旨を示す情報を、送信元のSIPサーバに引き渡す
ことを特徴とする付記16又は17記載のSIPメッセージ引渡方法。
(付記19)
前記記憶手順は、SIPメッセージの各構成要素のうち、スタートライン,中継装置の所在を特定する所在情報が格納されるフィールド,発信元の所在を特定する所在情報が格納されるフィールド,及び、着信先の所在を特定する所在情報が格納されるフィールドの各構成要素について、仮想ホスト識別情報と受け取り条件とを対応付けたレコードを、記憶装置内のテーブルに記憶する
ことを特徴とする付記16,17又は18記載のSIPメッセージ引渡方法。
(付記20)
前記検索手順は、中継装置の所在を特定する所在情報が格納されるフィールド,スタートライン,着信先の所在を特定する所在情報が格納されるフィールド,及び、送信元の所在を特定する所在情報が格納されるフィールドの順に、前記検索処理を行う
ことを特徴とする付記19記載のSIPメッセージ引渡方法。
本実施形態のホスト装置の構成図 判別テーブルのデータ構造の一例を示す図 ホスト判別処理の流れを示す図 SIPメッセージの一例を示す図
符号の説明
10 ホスト装置
10a ストレージ
10b CPU
10c DRAM
10d 通信アダプタ
11〜15 SIPサーバ(仮想ホスト)
16 インターフェースエンジン
17 ホスト判別モジュール
18 判別テーブル

Claims (5)

  1. SIPサーバである複数の仮想ホストのうちの何れかの仮想ホスト宛に送られてきたSIPメッセージを、適切な仮想ホストに引き渡すためのSIPメッセージ引渡プログラムであって、
    コンピュータを、
    SIPメッセージの構成要素のうち、所在情報を含み得る複数の構成要素のそれぞれについて、その構成要素に所定の所在情報が含まれていることをSIPメッセージの受け取り条件としている仮想ホストを識別するための仮想ホスト識別情報と、その受け取り条件の内容となる所定の所在情報とを対応付けたレコードを、記憶装置内のテーブルに記憶する記憶手段,
    ネットワーク上のSIPサーバからSIPメッセージを受信する受信手段,
    前記各構成要素について、前記各構成要素について設定された優先順に、前記受信手段が受信したSIPメッセージにおける対応する前記構成要素内の所在情報が前記構成要素についての前記受け取り条件と一致するレコードを前記テーブルから検索する処理を、行う検索手段,及び、
    前記検索手段が前記各構成要素について設定された優先順に前記検索処理を行うことにより、何れかの検索処理でレコードが検出されると、その検出されたレコードに含まれる仮想ホスト識別情報により示される仮想ホストに、前記受信手段が受信したSIPメッセージを引き渡す引渡手段
    として機能させる
    ことを特徴とするSIPメッセージ引渡プログラム。
  2. 前記受信手段は、前記何れかの仮想ホストからもSIPメッセージを受信するものである
    ことを特徴とする請求項1記載のSIPメッセージ引渡プログラム。
  3. 前記引渡手段は、前記検索手段が前記各構成要素について設定された優先順に前記検索処理を行うことにより、何れの検索処理においてもレコードが検出されなかった場合には、前記受信手段が受信したSIPメッセージの受け取り先が無い旨を示す情報を、送信元のSIPサーバに引き渡す
    ことを特徴とする請求項1又は2記載のSIPメッセージ引渡プログラム。
  4. 前記記憶手段は、SIPメッセージの各構成要素のうち、スタートライン,中継装置の所在を特定する所在情報が格納されるフィールド,発信元の所在を特定する所在情報が格納されるフィールド,及び、着信先の所在を特定する所在情報が格納されるフィールドの各構成要素について、仮想ホスト識別情報と受け取り条件とを対応付けたレコードを、記憶装置内のテーブルに記憶する
    ことを特徴とする請求項1,2又は3記載のSIPメッセージ引渡プログラム。
  5. 前記検索手段は、前記各構成要素について設定された優先順について、中継装置の所在を特定する所在情報が格納されるフィールド,スタートライン,着信先の所在を特定する所在情報が格納されるフィールド,及び、送信元の所在を特定する所在情報が格納されるフィールドの順に、前記検索処理を行う
    ことを特徴とする請求項4記載のSIPメッセージ引渡プログラム。
JP2006205297A 2006-07-27 2006-07-27 Sipメッセージ引渡プログラム Expired - Fee Related JP4910542B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006205297A JP4910542B2 (ja) 2006-07-27 2006-07-27 Sipメッセージ引渡プログラム
US11/821,606 US20080028082A1 (en) 2006-07-27 2007-06-25 Sip message delivery program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006205297A JP4910542B2 (ja) 2006-07-27 2006-07-27 Sipメッセージ引渡プログラム

Publications (2)

Publication Number Publication Date
JP2008033558A JP2008033558A (ja) 2008-02-14
JP4910542B2 true JP4910542B2 (ja) 2012-04-04

Family

ID=38987710

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006205297A Expired - Fee Related JP4910542B2 (ja) 2006-07-27 2006-07-27 Sipメッセージ引渡プログラム

Country Status (2)

Country Link
US (1) US20080028082A1 (ja)
JP (1) JP4910542B2 (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 キヤノン株式会社 通信端末、通信端末の制御方法及びプログラム
EP2822237A4 (en) 2012-03-02 2015-10-07 Ntt Docomo Inc MOBILE COMMUNICATION SYSTEM, COMMUNICATION SYSTEM, NODE, FLOW CONTROL NETWORK, AND COMMUNICATION CONTROL METHOD
CN106301983A (zh) * 2015-05-29 2017-01-04 阿里巴巴集团控股有限公司 一种基于虚拟主机的网站检测方法和装置
CN106534140A (zh) * 2016-11-25 2017-03-22 西安烽火电子科技有限责任公司 一种sip消息的传递***及方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6438555B1 (en) * 1999-11-02 2002-08-20 Nortel Networks Limited Method and apparatus for accessing an ordered array structure
US7743149B1 (en) * 1999-12-22 2010-06-22 Nortel Networks Limited SIP messages carrying executable computer software code
JP2003288200A (ja) * 2002-03-28 2003-10-10 Canon Inc 印刷システム
GB0322880D0 (en) * 2003-09-30 2003-10-29 British Telecomm Purchasing scheme
JP4028853B2 (ja) * 2004-03-30 2007-12-26 株式会社日立製作所 情報サービス通信ネットワークシステムおよびセッション管理サーバ
US8024476B2 (en) * 2004-05-21 2011-09-20 Microsoft Corporation Efficient message routing when using server pools
JP2006099207A (ja) * 2004-09-28 2006-04-13 Oki Electric Ind Co Ltd Sip−apサーバシステム
US20060149845A1 (en) * 2004-12-30 2006-07-06 Xinnia Technology, Llc Managed quality of service for users and applications over shared networks
JP4241660B2 (ja) * 2005-04-25 2009-03-18 株式会社日立製作所 負荷分散装置
US9258259B2 (en) * 2005-09-30 2016-02-09 Nokia Technologies Oy Retrieval of offline instant messages
EP1989892B1 (en) * 2006-02-28 2011-04-27 Telecom Italia S.p.A. Communication server with a service logic execution environment
EP2005714B1 (en) * 2006-04-03 2018-02-14 British Telecommunications public limited company Fast handover using sip

Also Published As

Publication number Publication date
US20080028082A1 (en) 2008-01-31
JP2008033558A (ja) 2008-02-14

Similar Documents

Publication Publication Date Title
JP6564937B2 (ja) コンテンツ指向ネットワーキング(ccn)ネットワークにおいてデータをプッシュするための方法および装置
US7453865B2 (en) Communication channels in a storage network
JP4758362B2 (ja) 中継装置、プログラム及び中継方法
US20060265465A1 (en) Method, apparatus and system for processing message bundles on a network
CN112769837B (zh) 基于WebSocket的通信传输方法、装置、设备、***及存储介质
CN105653198A (zh) 数据处理方法及装置
CN107864101A (zh) 负载均衡方法和装置
US8914436B2 (en) Data processing device and data retriever
JP4910542B2 (ja) Sipメッセージ引渡プログラム
CN113507475A (zh) 跨域访问方法和装置
CN110311855B (zh) 用户消息处理方法、装置、电子设备及存储介质
CN109286684B (zh) 一种通信连接的处理方法、装置、代理服务器及存储介质
CN109039687A (zh) 请求的负载均衡方法、装置、***、设备以及存储介质
JPH11252158A (ja) 電子メール情報管理方法及び装置並びに電子メール情報管理処理プログラムを記録した記録媒体
US20060090007A1 (en) Message delivery apparatus, method thereof, system thereof, and program thereof
JP4988307B2 (ja) コンテキスト・ベースのナビゲーション
CN106534140A (zh) 一种sip消息的传递***及方法
CN109688204B (zh) 基于ndn网络的文件下载方法、节点、终端
US20070130355A1 (en) System and Method for Determining a Preferred Mirrored Service in a Network by Evaluating a Border Gateway Protocol
JP3136380U (ja) 情報共有化システム
JP5280148B2 (ja) メールシステム
JP2009003744A (ja) 事例検索システムおよび事例検索方法
CN106470245A (zh) 页面推送方法及装置
CN117093382A (zh) 触客消息的处理方法及装置、设备及存储介质
CN115361443A (zh) 一种报文处理方法及***

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20071116

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20071210

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090409

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110427

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110510

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110711

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110906

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111107

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: 20111220

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: 20120102

R150 Certificate of patent or registration of utility model

Ref document number: 4910542

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20150127

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees