(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2022-01-26
(54)【発明の名称】信号中継局(STP)のメッセージプロセッサ間でSIGTRAN接続を分散させる方法、システム、および読み取り可能な媒体
(51)【国際特許分類】
H04L 47/125 20220101AFI20220119BHJP
【FI】
H04L12/803
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2021531038
(86)(22)【出願日】2019-02-21
(85)【翻訳文提出日】2021-07-07
(86)【国際出願番号】 US2019018992
(87)【国際公開番号】W WO2020112154
(87)【国際公開日】2020-06-04
(32)【優先日】2018-11-30
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】502303739
【氏名又は名称】オラクル・インターナショナル・コーポレイション
(74)【代理人】
【識別番号】110001195
【氏名又は名称】特許業務法人深見特許事務所
(72)【発明者】
【氏名】クマール,ビピン
(72)【発明者】
【氏名】ゴエル,イェシュ
【テーマコード(参考)】
5K030
【Fターム(参考)】
5K030GA17
5K030HB20
5K030LB02
5K030LB06
5K030LE03
(57)【要約】
信号中継局(STP)のメッセージプロセッサ間でSigtran接続を分散させる方法であって、STPの複数のメッセージプロセッサへのフロントエンドとして接続負荷分散装置を提供するステップを含む。この方法は、さらに、接続負荷分散装置が、IP(Internet Protocol)アドレスをSS7ピアに公開するステップを含む。方法は、さらに、接続負荷分散装置が公開したIPアドレスで接続を待つようにSTPのメッセージプロセッサを初期化するステップを含む。方法は、さらに、IPアドレスにアドレス指定されたSigtranメッセージを、接続負荷分散装置において受信するステップを含む。方法は、さらに、SigtranメッセージがSigtran接続の最初のメッセージであるかSigtran接続の後続メッセージであるか、およびメッセージプロセッサのうちの1つに当該Sigtran接続が割り当てられているかどうかを接続負荷分散装置が判断するステップを含む。方法は、さらに、メッセージが最初のメッセージであるか後続メッセージであるかに基づいて、および、メッセージプロセッサのうちの1つに接続が割り当てられているかどうかに基づいて、メッセージを削除するまたはメッセージプロセッサのうちの1つに転送するステップを含む。
【特許請求の範囲】
【請求項1】
信号中継局(STP)のメッセージプロセッサ間でSigtran接続を分散させる方法であって、
STPの複数のメッセージプロセッサへのフロントエンドとして接続負荷分散装置を提供するステップと、
前記接続負荷分散装置が、IP(Internet Protocol)アドレスをSS7ピアに公開するステップと、
前記接続負荷分散装置が公開した前記IPアドレスで接続を待つように前記STPのメッセージプロセッサを初期化するステップと、
前記IPアドレスにアドレス指定されたSigtranメッセージを、前記接続負荷分散装置において受信するステップと、
前記SigtranメッセージがSigtran接続の最初のメッセージであるか後続メッセージであるかを、前記接続負荷分散装置が判断するステップと、
前記Sigtranメッセージが、前記メッセージプロセッサのうちの1つが割り当てられたSigtran接続についてのメッセージであるかどうかを、前記接続負荷分散装置が判断するステップと、
前記メッセージが最初のメッセージであるか後続メッセージであるか、および、前記Sigtranメッセージが、前記メッセージプロセッサのうちの1つが割り当てられたSigtran接続についてのメッセージであるかどうかに基づいて、前記メッセージを削除するまたは前記メッセージプロセッサのうちの1つに転送するステップとを含む、方法。
【請求項2】
前記メッセージプロセッサは、物理STPの物理メッセージプロセッサから構成される、請求項1に記載の方法。
【請求項3】
前記メッセージプロセッサは、仮想STPの仮想メッセージプロセッサから構成される、請求項1または2に記載の方法。
【請求項4】
前記IPアドレスを前記メッセージプロセッサのループバックインターフェースに対応付けるステップを含む、先行する請求項のいずれか1項に記載の方法。
【請求項5】
前記IPアドレスを前記SS7ピアに公開するステップは、前記IPアドレスを前記接続負荷分散装置の媒体アクセス制御(MAC)アドレスに対応付けるGratuitousARP(Address Resolution Protocol)メッセージまたはICMPv6(Internet Control Management Protocol version 6)近隣探索メッセージを前記接続負荷分散装置が同報通信するステップを含む、先行する請求項のいずれか1項に記載の方法。
【請求項6】
前記Sigtranメッセージは、前記メッセージプロセッサのうちの1つが割り当てられていないSigtran接続の最初のメッセージであり、前記方法は、さらに、負荷分散アルゴリズムを用いて、前記最初のメッセージが確立を開始するつもりの前記Sigtran接続に前記メッセージプロセッサのうちの1つを割り当てるステップを含む、先行する請求項のいずれか1項に記載の方法。
【請求項7】
負荷分散アルゴリズムを用いて前記メッセージプロセッサのうちの1つを前記Sigtran接続に割り当てるステップは、各メッセージプロセッサに割り当てられたSigtran接続の数を示すグループカウントを前記メッセージプロセッサごとに保持するステップと、メッセージプロセッサごとに、前記メッセージプロセッサのグループカウントと、前記複数のメッセージプロセッサのグループカウントのうち最も低いグループカウントとのグループカウント差を算出するステップと、リンク分散しきい値未満のグループカウント差を有するメッセージプロセッサを接続分散候補として含めるステップとを含む、請求項6に記載の方法。
【請求項8】
前記メッセージプロセッサのうちの1つの故障および再接続を検出するステップと、これに応じてSigtran接続分散の候補として前記再接続されたメッセージプロセッサを用いるステップとを含む、先行する請求項のいずれか1項に記載の方法。
【請求項9】
前記メッセージが最初のメッセージであるか後続メッセージであるかは、前記メッセージがSigtran接続に対応付けられた後続メッセージであると判断するステップを含み、前記メッセージプロセッサのうちの1つが前記接続に割り当てられているかどうかを判断するステップは、前記メッセージプロセッサのうちの1つが前記接続に割り当てられていると判断するステップを含み、前記メッセージを転送または削除するステップは、前記接続に割り当てられた前記メッセージプロセッサに前記メッセージを転送するステップを含む、先行する請求項のいずれか1項に記載の方法。
【請求項10】
前記STPのメッセージプロセッサからの出力トラフィックを、前記接続負荷分散装置をバイパスして前記SS7ピアに転送するステップを含む、先行する請求項のいずれか1項に記載の方法。
【請求項11】
信号中継局(STP)のメッセージプロセッサ間でSigtran接続を分散させるシステムであって、
Sigtran接続で受信したSigtranメッセージをルーティングするための複数のメッセージプロセッサを含む信号中継局(STP)と、
前記STPのメッセージプロセッサへのフロントエンドとして動作する接続負荷分散装置とを備え、
前記接続負荷分散装置は、IP(Internet Protocol)アドレスをSS7ピアに公開するように構成され、
前記メッセージプロセッサは、前記接続負荷分散装置が公開した前記IPアドレスで接続を待つように初期化され、
前記接続負荷分散装置は、前記IPアドレスにアドレス指定されたSigtranメッセージを受信し、前記SigtranメッセージがSigtran接続の最初のメッセージであるか後続メッセージであるかを判断し、前記Sigtranメッセージが、前記メッセージプロセッサのうちの1つが割り当てられたSigtran接続についてのメッセージであるかどうかを判断し、前記メッセージが最初のメッセージであるか後続メッセージであるか、および、前記Sigtranメッセージが、前記メッセージプロセッサのうちの1つが割り当てられたSigtran接続についてのメッセージであるかどうかに基づいて、前記メッセージを削除するまたは前記メッセージプロセッサのうちの1つに転送するように構成される、システム。
【請求項12】
前記メッセージプロセッサは、物理STPの物理メッセージプロセッサから構成される、請求項11に記載のシステム。
【請求項13】
前記メッセージプロセッサは、仮想STPの仮想メッセージプロセッサから構成される、請求項11または12に記載のシステム。
【請求項14】
前記IPアドレスは、前記メッセージプロセッサのループバックインターフェースに対応付けられる、請求項11~13のいずれか1項に記載のシステム。
【請求項15】
前記接続負荷分散装置は、前記IPアドレスを前記接続負荷分散装置の媒体アクセス制御(MAC)アドレスに対応付けるGratuitousARP(Address Resolution Protocol)メッセージまたはICMPv6(Internet Control Management Protocol version 6)近隣探索メッセージを同報通信するように構成される、請求項11~14のいずれか1項に記載のシステム。
【請求項16】
前記接続負荷分散装置は、前記Sigtranメッセージが、前記メッセージプロセッサのうちの1つが割り当てられていないSigtran接続の最初のメッセージであると判断し、負荷分散アルゴリズムを用いて、前記最初のメッセージが確立を開始するつもりの前記Sigtran接続に前記メッセージプロセッサのうちの1つを割り当てる、請求項11~15のいずれか1項に記載のシステム。
【請求項17】
前記接続負荷分散装置は、各メッセージプロセッサに割り当てられたSigtran接続の数を示すグループカウントを前記メッセージプロセッサごとに保持するように構成され、前記接続負荷分散装置は、さらに、メッセージプロセッサごとに、前記メッセージプロセッサのグループカウントと、前記複数のメッセージプロセッサのグループカウントのうち最も低いグループカウントとのグループカウント差を算出し、リンク分散しきい値未満のグループカウント差を有するメッセージプロセッサを接続分散候補として含めるように構成される、請求項6に記載の方法。
【請求項18】
前記接続負荷分散装置は、前記メッセージプロセッサのうちの1つの故障および再接続を検出し、これに応じてSigtran接続分散の候補として前記再接続されたメッセージプロセッサを用いるように構成される、請求項11~16のいずれか1項に記載のシステム。
【請求項19】
前記メッセージプロセッサは、前記STPからの出力トラフィックを、前記接続負荷分散装置をバイパスして前記SS7ピアに転送するように構成される、請求項11~16のいずれか1項または請求項18に記載のシステム。
【請求項20】
実行可能な命令を格納した非一時的なコンピュータ読み取り可能な媒体であって、前記命令は、コンピュータのプロセッサによって実行されると、前記コンピュータにステップ実行させ、前記ステップは、
STPの複数のメッセージプロセッサへのフロントエンドとして接続負荷分散装置を提供するステップと、
前記接続負荷分散装置が、IP(Internet Protocol)アドレスをSS7ピアに公開するステップと、
前記接続負荷分散装置が公開した前記IPアドレスで接続を待つように前記STPのメッセージプロセッサを初期化するステップと、
前記IPアドレスにアドレス指定されたSigtranメッセージを、前記接続負荷分散装置において受信するステップと、
前記SigtranメッセージがSigtran接続の最初のメッセージであるか後続メッセージであるかを、前記接続負荷分散装置が判断するステップと、
前記Sigtranメッセージが、前記メッセージプロセッサのうちの1つが割り当てられたSigtran接続についてのメッセージであるかどうかを、前記接続負荷分散装置が判断するステップと、
前記メッセージが最初のメッセージであるか後続メッセージであるか、および、前記Sigtranメッセージが、前記メッセージプロセッサのうちの1つが割り当てられたSigtran接続についてのメッセージであるかどうかに基づいて、前記メッセージを削除するまたは前記メッセージプロセッサのうちの1つに転送するステップとを含む、非一時的なコンピュータ読み取り可能な媒体。
【発明の詳細な説明】
【技術分野】
【0001】
優先権の主張
本願は、2018年11月30日に出願された米国特許出願第16/206,592号の優先権の利益を主張するものであり、そのすべての開示内容を引用により本明細書に援用する。
【0002】
技術分野
本明細書において説明する主題は、IP(Internet Protocol)ネットワークにおけるSS7メッセージのルーティングに関する。より詳細には、本明細書において説明する主題は、信号中継局のメッセージプロセッサ間でSigtran接続を分散させる方法、システム、およびコンピュータ読み取り可能な媒体に関する。
【背景技術】
【0003】
背景
Sigtranとは、IPネットワークにおけるSS7メッセージの転送を可能にするIETF(Internet Engineering Task Force)が公開するプロトコルファミリーである。これらのプロトコロルの本来の標準化において、SS7メッセージは、IPベースでないSS7のMTP(Message Transfer Part)層1~3で転送されるように設計されていた。SS7メッセージのSigtran転送によって、MTP層のうち1つ以上の層がIP転送に置き換わることになった。IP転送をSS7メッセージに用いることによって、SS7メッセージを転送するために用いられるIPおよびEthernet(登録商標)ハードウェアのコストが下がり、リンク帯域幅の共有が容易になる。
【0004】
SS7ネットワークでは、信号中継局とは、SS7メッセージをその宛先にルーティングするルーティングノードである。信号中継局は、ポイントコードと称されるSS7メッセージパラメータに基づいてSS7メッセージをルーティングする。SS7ネットワークにおいて信号中継局が排他的にルーティングサービスを提供しているので、信号中継局は、SS7ネットワークにおいて重要な機能であり、SS7メッセージをルーティングするのに必要な処理によって過負荷になり得る。したがって、信号中継局の処理リソースを適切に管理することが望ましい。
【発明の概要】
【発明が解決しようとする課題】
【0005】
Sigtranが広く使われるようになると、SS7 STPリソースが変化するため、構成に柔軟性が求められる。たとえば、STPリソースが仮想化されるクラウドベース展開では、仮想STPリソースを増減させる必要があるであろう。STPリソースを増やすには、SS7リンクおよびリンクセットを実装するSTPへのIPベース接続を追加または削除する必要があるであろう。SS7ネットワークでは、リンクまたはシグナリングリンクは、隣接するノード間の接続である。リンクセットは、シグナリングリンクを論理的にグループ化したものである。リンクおよびリンクセットを追加および削除するには、当該リンクおよびリンクセットに対応付けられたIPアドレスおよびポート番号を手作業で再構成する必要があり得る。このような構成を手作業で行うことは、非常に手間がかかり、リソースの再構成が柔軟に行われる必要があるクラウドベースのSTP展開には適さない。STPリソースのベアメタルまたはオンプレミス展開においても、再構成について同様の問題が生じる可能性がある。
【0006】
したがって、これらの問題を鑑みて、STPのメッセージプロセッサ間でSigtran接続を分散させる改良された方法、システム、およびコンピュータ読み取り可能な媒体が必要とされている。
【課題を解決するための手段】
【0007】
概要
本明細書において説明する主題は、STPのメッセージプロセッサ間でSigtran接続を分散させる方法、システム、およびコンピュータ読み取り可能な媒体を含む。STPのメッセージプロセッサ間でSigtran接続を分散させる1つの方法は、STPの複数のメッセージプロセッサへのフロントエンドとして接続負荷分散装置を提供するステップを含む。この方法は、さらに、接続負荷分散装置が、IP(Internet Protocol)アドレスをSS7ピアに公開するステップを含む。方法は、さらに、接続負荷分散装置が公開したIPアドレスで接続を待つようにSTPのメッセージプロセッサを初期化するステップを含む。方法は、さらに、IPアドレスにアドレス指定されたSigtranメッセージを、接続負荷分散装置において受信するステップを含む。方法は、さらに、SigtranメッセージがSigtran接続の最初のメッセージであるかSigtran接続上の後続メッセージであるか、およびSigtranメッセージが、メッセージプロセッサのうちの1つが割り当てられたSigtran接続についてのメッセージであるかどうかを、接続負荷分散装置が判断するステップを含む。方法は、さらに、メッセージが最初のメッセージであるか後続メッセージであるかに基づいて、および、Sigtranメッセージが、メッセージプロセッサのうちの1つが割り当てられたSigtran接続についてのメッセージであるかどうかに基づいて、メッセージを削除するまたはメッセージプロセッサのうちの1つに転送するステップを含む。
【0008】
本明細書において説明する主題の一態様によると、メッセージプロセッサは、物理STPの物理メッセージプロセッサから構成される。このようなSTPは、電気通信ネットワーク事業者のネットワークにおいて、オンプレミス展開されてもよい。
【0009】
本明細書において説明する主題の別の態様によると、メッセージプロセッサは、仮想STPの仮想メッセージプロセッサから構成される。このようなSTPおよびそのメッセージプロセッサは、クラウドネットワークにおいて展開されてもよく、基盤となるハードウェアへのアクセスを仮想化するハイパーバイザ層上で動作する仮想処理リソースを含んでもよい。
【0010】
本明細書において説明する主題のさらに別の態様によると、接続負荷分散装置が公開したIPアドレスをメッセージプロセッサのループバックインターフェースに対応付けてもよい。IPアドレスをメッセージプロセッサのループバックアドレスに対応付けることによって、メッセージプロセッサは、IPアドレスを含んだARP(Address Resolution Protocol)メッセージまたはICMPv6(Internet Control Management Protocol version 6)近隣探索メッセージを同報通信することなく、エイリアスとしてIPアドレスを利用することが可能になる。
【0011】
本明細書において説明する主題のさらに別の態様によると、Sigtran接続の負荷を分散させる方法は、IPアドレスを接続負荷分散装置の媒体アクセス制御(MAC)アドレスに対応付けるGratuitousARP(Address Resolution Protocol)メッセージまたはICMPv6近隣探索メッセージを接続負荷分散装置が同報通信するステップを含む。
【0012】
本明細書において説明する主題のさらに別の態様によると、メッセージは、STPのメッセージプロセッサのうちの1つが割り当てられていないSigtran接続の最初のメッセージである。メッセージが最初のメッセージであると判断され、メッセージプロセッサのうちの1つに接続が割り当てられていない場合、負荷分散アルゴリズムを用いて、最初のメッセージが確立を開始するつもりのSigtran接続にメッセージプロセッサのうちの1つが割り当てられる。次に、Sigtran接続に割り当てられたメッセージプロセッサにSigtranメッセージが転送される。
【0013】
本明細書において説明する主題のさらに別の態様によると、負荷分散アルゴリズムを用いてメッセージプロセッサのうちの1つをSigtran接続に割り当てるステップは、各メッセージプロセッサに割り当てられたSigtran接続の数を示すグループカウントをメッセージプロセッサごとに保持するステップを含む。メッセージプロセッサごとに、メッセージプロセッサのグループカウントと、複数のメッセージプロセッサのグループカウントのうち最も低いグループカウントとのグループカウント差を算出する。リンク分散しきい値未満のグループカウント差を有するメッセージプロセッサは、接続分散候補として含められる。リンク分散しきい値以上のグループカウント差を有するメッセージプロセッサは、接続分散候補から除外される。
【0014】
本明細書において説明する主題のさらに別の態様によると、Sigtran接続の負荷を分散させる方法は、メッセージプロセッサのうちの1つの故障および再接続を検出するステップと、これに応じてSigtran接続分散の候補として再接続されたメッセージプロセッサを用いるステップとを含む。
【0015】
本明細書において説明する主題のさらに別の態様によると、メッセージがSigtran接続に対応付けられた最初のメッセージであるか後続メッセージであるかを判断するステップは、メッセージが後続メッセージであると判断するステップを含んでもよい。後続メッセージに対応付けられたSigtran接続がメッセージプロセッサのうちの1つに割り当てられているかどうかを判断するステップは、Sigtran接続がメッセージプロセッサのうちの1つに割り当てられていると判断するステップを含んでもよい。Sigtran接続がメッセージプロセッサのうちの1つに割り当てられている後続メッセージであるとメッセージが判断された場合、割り当てられたメッセージプロセッサにメッセージを転送してもよい。
【0016】
本明細書において説明する主題のさらに別の態様によると、Sigtran接続の負荷を分散させる方法は、STPのメッセージプロセッサからの出力トラフィックを、接続負荷分散装置をバイパスしてSS7ピアに転送するステップを含む。
【0017】
本明細書において説明する主題のさらに別の態様によると、信号中継局(STP)のプロセッサ間でSigtran接続を分散させるシステムを提供する。システムは、Sigtran接続で受信したSigtranメッセージをルーティングするための複数のメッセージプロセッサを含む信号中継局(STP)を備える。システムは、さらに、STPのメッセージプロセッサへのフロントエンドとして動作する接続負荷分散装置を備える。接続負荷分散装置は、IP(Internet Protocol)アドレスをSS7ピアに公開するように構成される。メッセージプロセッサは、接続負荷分散装置が公開したIPアドレスで接続を待つように初期化される。接続負荷分散装置は、IPアドレスにアドレス指定されたSigtranメッセージを受信し、SigtranメッセージがSigtran接続の最初のメッセージであるかSigtran接続の後続メッセージであるか、および、Sigtranメッセージが、メッセージプロセッサのうちの1つが割り当てられたSigtran接続についてのメッセージであるかどうかを判断するように構成される。接続負荷分散装置は、判断するステップの結果に基づいて、メッセージプロセッサのうちの1つにSigtranメッセージを転送するように構成される。
【0018】
本明細書において説明する主題のさらに別の態様によると、接続負荷分散装置は、IPアドレスを接続負荷分散装置のMACアドレスに対応付けるGratuitousARPメッセージまたはICMPv6近隣探索メッセージを同報通信するように構成される。
【0019】
本明細書において説明する主題のさらに別の態様によると、接続負荷分散装置は、メッセージが、メッセージプロセッサのうちの1つが割り当てられていないSigtran接続の最初のメッセージであると判断し、負荷分散アルゴリズムを用いて、最初のメッセージが確立を開始するつもりのSigtran接続をメッセージプロセッサのうちの1つに割り当て、Sigtran接続に割り当てられたメッセージプロセッサにSigtranメッセージを転送する。
【0020】
本明細書において説明する主題のさらに別の態様によると、接続負荷分散装置は、各メッセージプロセッサに割り当てられたSigtran接続の数を示すグループカウントをメッセージプロセッサごとに保持するように構成され、接続負荷分散装置は、さらに、メッセージプロセッサごとに、メッセージプロセッサのグループカウントと、複数のメッセージプロセッサのグループカウントのうち最も低いグループカウントとのグループカウント差を算出し、リンク分散しきい値未満のグループカウント差を有するメッセージプロセッサを接続分散候補として含めるように構成される。
【0021】
本明細書において説明する主題のさらに別の態様によると、接続負荷分散装置は、メッセージプロセッサのうちの1つの故障および再接続を検出し、これに応じてSigtran接続分散の候補として再接続されたメッセージプロセッサを用いるように構成される。
【0022】
本明細書において説明する主題のさらに別の態様によると、メッセージプロセッサは、STPからの出力トラフィックを、接続負荷分散装置をバイパスしてSS7ピアに転送するように構成される。
【0023】
本明細書において説明する主題のさらに別の態様によると、実行可能な命令を格納した非一時的なコンピュータ読み取り可能な媒体であって、命令は、コンピュータのプロセッサによって実行されると、コンピュータにステップ実行させる。これらのステップは、STPの複数のメッセージプロセッサへのフロントエンドとして接続負荷分散装置を提供するステップを含む。ステップは、さらに、接続負荷分散装置が、IP(Internet Protocol)アドレスをSS7ピアに公開するステップを含む。ステップは、さらに、接続負荷分散装置が公開したIPアドレスで接続を待つようにSTPのメッセージプロセッサを初期化するステップを含む。ステップは、さらに、IPアドレスにアドレス指定されたSigtranメッセージを、接続負荷分散装置において受信するステップを含む。ステップは、さらに、SigtranメッセージがSigtran接続の最初のメッセージであるかSigtran接続の後続メッセージであるかを、接続負荷分散装置が判断するステップを含む。ステップは、さらに、判断するステップの結果に基づいて、接続負荷分散装置が、メッセージプロセッサのうちの1つにSigtranメッセージを転送するステップを含む。
【0024】
本明細書において説明する主題は、ハードウェアおよび/またはファームウェアと組み合わせたソフトウェアで実現できる。たとえば、本明細書において説明する主題は、プロセッサによって実行されるソフトウェアで実現できる。一例示的な実施態様では、本明細書において説明する主題は、コンピュータによって実行可能な命令を格納した非一時的なコンピュータ読み取り可能な媒体を用いて実現でき、当該実行可能な命令は、コンピュータのプロセッサによって実行されると、当該コンピュータにステップを実行させる。本明細書において説明する主題を実現するのに適した例示的なコンピュータ読み取り可能な媒体として、ディスク記憶装置、チップ記憶装置、プログラム可能な論理回路、および特定用途向け集積回路など、非一時的なコンピュータ読み取り可能な媒体などが挙げられる。これに加えて、本明細書において説明する主題を実現するコンピュータ読み取り可能な媒体は、1つのデバイスまたは1つのコンピューティングプラットフォーム上に位置してもよいし、複数のデバイスまたは複数のコンピューティングプラットフォーム間で分散されてもよい。
【0025】
ここで、本明細書において説明する主題を、添付の図面を参照しながら説明する。
【図面の簡単な説明】
【0026】
【
図1】STPのメッセージプロセッサへの従来のSigtran接続の分散を示すブロック図である。
【
図2】メッセージプロセッサがダウンしたときの、STPにあるメッセージプロセッサ間での従来のSigtran接続の分散を示すネットワーク図である。
【
図3】接続負荷分散装置を用いた、STPにあるメッセージプロセッサ間でのSigtran接続の分散を示すネットワーク図である。
【
図4】接続負荷分散装置をバイパスして、STPからの出力トラフィックをルーティングする様子を示すネットワーク図である。
【
図5】接続負荷分散装置の初期化を示すメッセージフロー図である。
【
図6】STPのメッセージプロセッサの初期化を示すメッセージフロー図である。
【
図7】接続負荷分散装置を用いた、STPのメッセージプロセッサ間のSigtran接続の分散を示すメッセージフロー図である。
【
図8】接続負荷分散装置を用いた、STPにある既存のSigtran接続に対応付けられたメッセージの処理を示すメッセージフロー図である。
【
図9】故障したメッセージプロセッサを再接続した後、接続負荷分散装置を用いてメッセージをルーティングする様子を示すネットワーク図である。
【
図10】接続負荷分散装置、および複数のメッセージプロセッサを備える信号中継局のブロック図である。
【
図11】接続負荷分散装置を用いた、STPのメッセージプロセッサ間でSigtranメッセージを分散させるための例示的な処理を説明するフローチャートである。
【発明を実施するための形態】
【0027】
詳細な説明
STPプロセッサ間でSigtran接続を分散させる方法、システム、およびコンピュータ読み取り可能な媒体を開示する。
図1は、STPのメッセージプロセッサ間でSigtran接続を分散させるための従来のシステムを示す図である。
図1では、STP100からの信号転送には、複数のメッセージプロセッサ102
1~102
Nが含まれる。各メッセージプロセッサ102
1~102
Nは、SS7ピア104など外部デバイスへの専用の接続(リンクと称される)を有する。この例示では、SS7リンクには、1~Kの番号が付けられている。リンク1~Kによって、リンクセットと称される論理グループが形成される。複数のメッセージプロセッサによって1つのSS7ポイントコードが表される。メッセージプロセッサ102
1~102
Nの各々は、2つのEthernet機器106aおよび106bを有する。STP100のメッセージプロセッサとSS7ピア104のシグナリングデバイス108との間でマルチホームSCTP(Stream Control Transmission Protocol)アソシエーション110および112が確立される。マルチホームSCTPアソシエーションとは、プロセス間の接続であり、各エンドポイントのプロセスが2つ以上のIPアドレスを有する。この例示では、IPアドレスIP-STP-1-aおよびIP-STP-N-aは、マルチホームSTPアソシエーションのパス「a」の一端に対応付けられたIPアドレスである。同様に、IPアドレスIP-STP-1-bおよびIP-STP-N-bは、マルチホームSCTPアソシエーションのパス「b」の一端に対応付けられたIPアドレスである。IPアドレスIP-STP-1-a、IP-STP-N-a、IP-STP-1b、およびIP-STP-N-bは、SS7ピア104に公開されている。その結果、メッセージプロセッサ102
1-102
Nのうちの1つが故障した場合、または新しいメッセージプロセッサが追加された場合、SS7ピア104の再構成が必要になる。
【0028】
マルチホームSCTPアソシエーション110および112は、各々、STP100の2つの異なるメッセージプロセッサ上に複数のエンドポイントを有する。したがって、メッセージプロセッサ1021~102Nのうちの1つが故障した場合、マルチホーム接続またはマルチホームアソシエーションに対応付けられたその他のメッセージプロセッサにトラフィックを自動的に切り替えることができる。しかしながら、SCTPアソシエーションの残りのパスは、容量が縮小された状態で動作することになる。メッセージプロセッサが利用可能になると、故障後または増加操作中のいずれかで当該新しいメッセージプロセッサ用のIPアドレスを用いて新しいリンクを構成しなければならない。このような構成は、リモートにあるSTPピアにとって手間がかかり、プロセッサへの負荷が高くなり得る。
【0029】
図2は、メッセージプロセッサのうちの1つが故障した場合に生じる処理を示す図である。
図2では、ステップ1では、メッセージプロセッサ102
1が故障する。ステップ2では、メッセージプロセッサ102
1に接続されたリンクのすべてが落ちる。メッセージプロセッサ102
1への再接続も失敗する。STP100に接続されたリモートにあるピアノードにとって、リンクは、冗長モードに基づいて、1つのメッセージプロセッサ上にあってもよく、複数のメッセージプロセッサ間で分散されていてもよい。故障が発生した場合、SS7ピア104は、別のメッセージプロセッサの固定IPを用いて、影響を受けたリンクを再構成しようと試みる。これは、手間がかかり得る。
【0030】
図2に示したシナリオの別の課題は、最も負荷が小さいメッセージプロセッサに接続を自動的に分散することが可能でない場合があることである。たとえば、Sigtran接続によってメッセージプロセッサ102
1に不均衡に負荷がかかっている場合、負荷分散が可能でない場合がある。なぜならば、メッセージプロセッサ102
1~102
Nの相対的な負荷をSS7ピア104が知らないからである。
図2に示したシナリオの別の課題は、STPのメッセージプロセッサがダウンした場合、当該故障したメッセージプロセッサに接続されたリンクは、その他のSTPのメッセージプロセッサに自動的に分散されず、その他のSTPのメッセージプロセッサとのリンクを再構成するよう手作業の介入を行わない限り、リンクセットは、容量が減った状態で動作することになる。上述したように、マルチホームSigtran接続を利用した場合、1つのパスに対応付けられたメッセージプロセッサが故障すると、マルチホームSigtran接続に対応付けられた代替リンクでSTPにメッセージが送信されてもよい。しかしながら、
図2に示すように、1つのメッセージプロセッサが故障すると、1つのリンクセットに対応付けられたシグナリングリンクのうち半数が機能しなくなり、リンクセットの容量が減ってしまう。これらの問題に鑑みて、信号中継局にあるメッセージプロセッサ間でのSigtran接続の分散を改善する必要がある。
【0031】
図3は、接続負荷分散装置を用いた、STPにおけるSigtran接続の分散を示すネットワーク図である。
図3を参照すると、接続負荷分散装置150は、STP100のメッセージプロセッサ102
1~102
Nへのフロントエンドとして機能する。接続負荷分散装置150は、各ネットワーク上のIPアドレスをSS7ピア104に公開する。この例示では、公開されているIPアドレスは、ネットワークA用のIP-STP-a、およびネットワークB用のIP-STP-bである。これらのIPアドレスは、STP100のメッセージプロセッサ間で分散させる必要があるメッセージに対して接続負荷分散装置150が認識する公開IPアドレスである。接続負荷分散装置150は、Ethernetインターフェース152Aおよび152Bを備える。IPアドレスを公開するステップは、IPアドレスIP-STP-aおよびIP-STP-bをEthernetインターフェース152Aおよび152BのMACアドレスと対応付けるGratuitousARPメッセージをSS7ピア104に同報通信するステップを含んでもよい。ネットワークにおいてIPバージョン4が使われている場合、GratuitousARPメッセージを用いて、STPプロセッサ間の負荷分散のために接続負荷分散装置が使用するIPアドレスを公開してもよい。IPバージョン6が使われている場合、GratuitousARPメッセージを同報通信するのではなく、ICMPv6近隣探索メッセージを用いてIPアドレスおよび対応するMACアドレスをSS7ピアに同報通信してもよい。通常、IPアドレスは、接続負荷分散装置150に隣接するボーダーゲートウェイに公開され、当該ボーダーゲートウェイは、ボーダーゲートウェイプロトコル(BGP)またはその他の適したIP経路探索機構を用いてこれらのIPアドレスをその他のSS7ノードに伝達する。
【0032】
図1および
図2に示す例と同様に、メッセージプロセッサ102
1および102
NとSS7ピア104との間でマルチホームSCTPアソシエーションが確立されてもよい。M3UAなど、アダプテーション層プロトコルを用いて、マルチホームSCTPアソシエーションでSS7トラフィックをSTP100に送受信してもよい。
【0033】
図3に示す例ではメッセージプロセッサ102
1~102
NとSS7ピア104との間のマルチホームSCTPアソシエーションを示したが、本明細書において説明する主題は、このような実施態様に限定されない。接続負荷分散装置150は、SS7ピアとSTPのメッセージプロセッサとの間の、単一ホームSCTPアソシエーション間、すなわち、各エンドポイントに対応付けられた1つのIPアドレスのみを有する単一ホームSCTPアソシエーション間の接続の負荷を分散させるために用いられてもよい。
【0034】
本明細書において使用するとき、「Sigtran接続」という用語は、Sigtranトラフィックを運ぶためにIPネットワーク上で確立されるSS7エンドポイント間の接続を指すために用いられる。Sigtran接続の例として、SCTPアソシエーションがある。
【0035】
また、各メッセージプロセッサ1021~102Nは、接続負荷分散装置150が公開したIPアドレスで接続を待つようにメッセージプロセッサ102自体を構成する。たとえば、メッセージプロセッサ1021は、IPアドレスIP-STP-aおよびIP-STP-bで接続を待ってもよい。接続を待つようにメッセージプロセッサを構成するステップは、所与のIPアドレスおよびポート上でソケットに対して接続待ちコマンドを実行するステップを含んでもよい。
【0036】
接続負荷分散装置150は、上述した問題の少なくとも一部に対処する。STPのメッセージプロセッサに接続するために使われる1セットの公開IPアドレスをのみを公開し、メッセージプロセッサがサービスに含められたりサービスから外されたりするのに関わらず同じセットのIPアドレスを使い続けることによって、STPのメッセージプロセッサでの変更に対して、リンクおよびリンクセットを手作業で再構成する必要がなくなる。公開IPアドレス情報を変更することなく、STP100の規模を増減させることができる。構成における変更は、SS7ピア104にトランスペアレントである。なぜならば、新しいメッセージプロセッサは、接続負荷分散装置150が公開したIPアドレスの既存のセットからIPアドレスを使用するからである。
図3では、接続負荷分散装置150は、IPアドレスIP-STP-aおよびIP-STP-bのみをSS7ピア104に公開する。STPのメッセージプロセッサ102
1~102
Nは、各々、接続負荷分散装置150が公開したIPアドレスのセットを認識する。新しい物理メッセージプロセッサまたは仮想メッセージプロセッサは、同じセットのIPアドレスを認識するように構成される。その結果、メッセージプロセッサがサービスに追加またはサービスから削除された場合、構成におけるこのような変更は、SS7ピア104にトランスペアレントである。
【0037】
また、接続負荷分散装置150は、SS7メッセージプロセッサ1021~102N間のSigtran接続を分散させてもよい。STP100におけるメッセージ処理能力が失われたまたは減少した場合、接続負荷分散装置150は、使用可能なSS7メッセージプロセッサ間でリンクを分散し直すことによって、リモートにあるSS7ピア104とのサービス中断を回避してもよい。同様に、STP100において処理能力が追加された場合、接続負荷分散装置150は、リモートにあるSS7ピアにトランスペアレントなやり方で、使用可能なメッセージプロセッサ間でSigtran接続を分散し直してもよい。
【0038】
また、
図3は、接続負荷分散装置150を用いた、入力トラフィックのルーティングを示すために用いられ得る。
図3では、SS7ピア104上のシグナリングデバイス108からのトラフィックは、接続負荷分散装置150が公開した公開IPアドレスIP-STP-aまたはIP-STP-bにアドレス指定される。接続負荷分散装置150は、メッセージトラフィックを受信し、メッセージごとに、このメッセージがSigtran接続に対応付けられた最初のメッセージであるか、Sigtran接続に対応付けられた後続メッセージであるかを判断する。最初のメッセージは、メッセージプロセッサが割り当てられていない接続要求メッセージである。SCTPアソシエーションの場合、最初のメッセージの例として、SCTP INITメッセージがある。SCTPプロトコルでは、INITメッセージは、リモートエンドポイントとのSCTPアソシエーションの確立を開始するために使われるメッセージである。INITメッセージは、INITメッセージを送るエンドポイントに対応付けられたIPアドレスのリストを含む。
【0039】
後続メッセージとは、SCTP Cookie-Echoメッセージ、SACK(Selective Acknowledgement)、ハートビート、ハートビートACKまたはデータメッセージなど、SCTPアソシエーションの最初のメッセージの後に送られるメッセージである。メッセージが最初のメッセージであると判断された場合、接続負荷分散装置150は、負荷分散アルゴリズムを用いて、メッセージプロセッサ1021~102Nのうちの1つにこのメッセージを割り当ててもよい。メッセージがSigtran接続に対応付けられた後続メッセージであると判断された場合、接続負荷分散装置150は、Sigtran接続に予め割り当てられたメッセージプロセッサ1021~102Nにこのメッセージをルーティングする。メッセージが後続メッセージであって、Sigtran接続にメッセージプロセッサが割り当てられていない場合、接続負荷分散装置150は、このメッセージを削除してもよい。
【0040】
図4は、STP100からリモートにあるSS7ピア104までの送信メッセージトラフィックの流れを示す図である。接続負荷分散装置150周辺でトラフィックがルーティングされる機構は、RIPまたはOSPF(Open Shortest Path First)など、STP100からシグナリングデバイス108までのルーティングパスが標準のRIP(Routing Information Protocol)を用いて決定されるIPルーティングプロトコルを含む。このようなパスには、接続負荷分散装置150が含まれなくてもよい。接続負荷分散装置が用いる公開IPアドレスについてGratuitousARPメッセージまたはICMPv6近隣探索メッセージが同報通信されるので、当該公開IPアドレスにアドレス指定された受信メッセージ(すなわち、SS7ピアからSTPのメッセージプロセッサのうちの1つへのメッセージ)は、接続負荷分散装置を通過するようにルーティングされる。送信メッセージは、接続負荷分散装置の公開IPアドレスにアドレス指定されない。むしろ、宛先SS7ピアのIPアドレスにアドレス指定される。上記したように、SS7ピアまでのルートには、接続負荷分散装置150が含まれなくてもよいので、送信メッセージ(すなわち、STPのメッセージプロセッサからSCTPアソシエーションの他端にあるSS7ピアへのメッセージ)は、RIPまたはOSPFを用いて決定されるルートでルーティングされてもよい。これらのルートは、接続負荷分散装置150をバイパスするルートである。
【0041】
図5および
図6は、接続負荷分散装置の初期化を示す図である。
図5を参照すると、ステップA1では、接続負荷分散装置150が、接続負荷分散装置が存在するネットワークごとのIPアドレスをSS7ピアに公開する。例示では、SS7ピアは、ボーダーゲートウェイ156である。IPアドレスを公開するステップは、IPアドレスIP-STP-aをMACアドレスMAC-aに対応付け、IPアドレスIP-STP-bをMACアドレスMAC-bに対応付けるGratuitousARPメッセージまたはICMPv6近隣探索メッセージを同報通信することによって実現されてもよい。ステップA2では、ボーダーゲートウェイ156がそのMACまたはARPテーブルを更新して、IPアドレスをMACアドレスと対応付ける。テーブル160は、接続負荷分散装置150からGratuitousARPメッセージを受信した後のボーダーゲートウェイ156のARPテーブルの構成例を示す。
【0042】
図6は、メッセージプロセッサの初期化を示すフロー図である。
図6を参照すると、ステップB1では、メッセージプロセッサのすべてが、ループバックインターフェース上で接続負荷分散装置150が公開したIPアドレスIP-STP-aおよびIP-STP-bのエイリアスアドレスを構成する。IPアドレスについてのARPメッセージまたはICMPメッセージをメッセージプロセッサ102
1~102
Nが送信しないように、各メッセージプロセッサ102
1~102
Nのループバックインターフェース上でこれらのIPアドレスが構成される。ステップB2では、各メッセージプロセッサ102
1~102
Nが、プライマリパス用のIPアドレスIP-STP-aでの接続待ちを開始し、セカンダリパス用のIPアドレスIP-STP-bでの接続待ちを開始するマルチホームレスポンダ接続を構成する。
【0043】
初期化後、負荷分散アルゴリズムを用いて、STP100にあるプロセッサ間でSigtran接続を分散させることができる。
図7は、接続負荷分散装置150を用いた、SS7メッセージプロセッサへの新しいSigtran接続の分散を示すメッセージフロー図である。
図7を参照して、ステップC1では、リモートSS7クライアント104がリンクL1でのSigtran接続要求を送る。この接続要求の宛先IPアドレスは、IPアドレスIP-STP-aおよびIP-STP-bを含む。この例では、送信元IPアドレスは、R-IP-xおよびR-IP-yである。この接続要求の宛先ポートは、P1である。
【0044】
ステップC2では、ボーダーゲートウェイ156がそのMACテーブルを照会して、IPアドレスIP-STP-aに対応するMACアドレスについて問い合わせる。この例では、ボーダーゲートウェイ156は、接続負荷分散装置150のインターフェースに対応するアドレスMAC-aの位置を特定する。したがって、ボーダーゲートウェイ156は、接続負荷分散装置150にメッセージを転送する。
【0045】
ステップC3では、接続負荷分散装置150が接続分散アルゴリズムまたは負荷分散アルゴリズムを適用して、どのSTPのメッセージプロセッサが接続要求を受信すべきかを決定する。この例では、負荷分散アルゴリズムの結果、メッセージプロセッサ102iにメッセージが送られることを想定する。一例では、接続負荷分散装置150は、アルゴリズム含まれる次のパラメータに基づいて負荷分散を行ってもよい。メッセージプロセッサごとに、接続負荷分散装置150は、グループカウントを保持してもよい。グループカウントは、所与のメッセージプロセッサに着地するリモートピアからのリンクの数を表す。最初に、すべてのメッセージプロセッサに関して、グループカウントは、ゼロに設定される。新しいSigtran接続がメッセージプロセッサに割り当てられるたびに、グループカウントはインクリメントされる。負荷分散アルゴリズムにおいて用いられ得る別のパラメータは、リンク分散しきい値である。リンク分散しきい値は、リンクセット全体で有効である。リンク分散しきい値は、グループカウント間のしきい値差を規定するためにユーザが設定する構成可能な値であり、しきい値差を上回ると、メッセージプロセッサは、負荷分散の対象にならない。たとえば、リンク分散しきい値は、4に設定されてもよい。接続負荷分散装置150が新しいSigtran接続要求を受信すると、接続負荷分散装置150は、メッセージプロセッサ1021、102i、および102Nの各々のグループカウントを決定する。次に、接続負荷分散装置150は、グループカウントが最も小さいメッセージプロセッサを識別して、当該最も小さいグループカウントにリンク分散しきい値を加算する。最小グループカウントとリンク分散しきい値との総和よりも大きなグループカウントを有するメッセージプロセッサは、負荷分散の対象にならない。最小グループカウントとリンク分散しきい値との総和未満のグループカウントを有するメッセージプロセッサは、接続分散の候補になる。たとえば、メッセージプロセッサ1021、102i、および102Nのグループカウントがそれぞれ1、3、および4であり、リンク分散しきい値が2である場合、メッセージプロセッサ1021および102iのみが接続分散の候補になる。
【0046】
接続分散の候補の集合が識別されると、接続負荷分散装置150が、たとえばランダム選択アルゴリズムを用いて候補の中から1つを選択し、割り当てられたメッセージプロセッサに接続要求を転送してもよい(ステップC4を参照)。また、接続負荷分散装置150は、割り当てられたメッセージプロセッサにSigtran接続を対応付けるそのアソシエーションデータベースにおいて、エントリを作成してもよい。アソシエーションデータベースに格納され得るパラメータの例は、次の通りである。
【0047】
{R-IP-x,R-IP-y,R-Port-->STP-MP-i}
この例では、R-IP-xおよびR-IP-yは、接続負荷分散装置150にSCTP INITメッセージを送信するSS7ピアのIPアドレスである。1つのピアに対して2つ以上のIPアドレスが使用されてもよい。なぜならば、ピアがSCTPマルチホーミングを実装するからである。R-Portは、SCTP INITメッセージにおいて送信ノードが使用するSCTPポート番号である。STP-MP-iは、接続に割り当てられたSTPのメッセージプロセッサに対して接続負荷分散装置150が用いる識別子である。
【0048】
上述したようなレコードが接続負荷分散装置150によって作成された後、同じSCTPアソシエーションで送られたSCTPデータメッセージまたはSCTP制御メッセージなど、後続メッセージが同じSTPのメッセージプロセッサに転送される。たとえば、SCTPデータメッセージまたはSCTP制御メッセージ(「チャンク」とも称す)が接続負荷分散装置150に到着すると、接続負荷分散装置150は、メッセージに含まれる送信元IPアドレスおよびSCTPポート番号を用いて、そのアソシエーションデータベースのルックアップを実行してもよい。この例では、送信元IPアドレスはR-IP-xおよびR-IP-yであり、送信元ポートはR-Portであると想定する。したがって、接続負荷分散装置150は、上述した例から一致するエントリの位置を特定し、割り当てられたSTPのメッセージプロセッサSTP-MP-iにSCTPデータメッセージを転送する。
【0049】
なお、接続負荷分散装置150においてSCTP INITメッセージが受信され、STPのメッセージプロセッサのうちの1つとの接続が既に確立されている場合、接続負荷分散装置150は、割り当てられたSTPのメッセージプロセッサにこのメッセージを転送する。割り当てられたメッセージプロセッサ上のSCTPアソシエーションステートマシンが、接続が確立済みのINITメッセージなど、out-of-stateメッセージを処理する。上記例で引き続き説明すると、送信元IPアドレスR-IP-xおよびR-IP-y、ならびに送信元SCTPポートまたはR-Portを含んだSCTP INITメッセージが受信されると、接続負荷分散装置は、そのアソシエーションデータベースにおける一致するエントリの位置を特定し、接続負荷分散装置150は、割り当てられたメッセージプロセッサにINITメッセージを転送する。割り当てられたメッセージプロセッサは、当該INITメッセージを受信し、SCTPアソシエーションステートマシンの現在の状態に応じてINITメッセージを処理または削除してもよい。
【0050】
図7に戻ると、ステップC5では、割り当てられたメッセージプロセッサが接続を受け付けて、ボーダーゲートウェイ156を介してリモートピアに応答を直接送る。接続負荷分散装置150は、送信メッセージのパスに存在しない。
【0051】
図8は、接続負荷分散装置150による後続メッセージの処理を説明するメッセージフロー図である。上記したように、「後続メッセージ」という用語は、接続確立メッセージ以外のメッセージを指す。
図8を参照すると、ステップD1では、Sigtranメッセージがリモートクライアント104からボーダーゲートウェイ156に到着する。宛先IPアドレスIP-STP-aおよびIP-STP-b、送信元IPアドレスR-IP-xおよびR-IP-y、ならびに宛先ポートP1を含んだSigtranメッセージが、リンクL1に到着する。
【0052】
ステップD2では、メッセージに含まれるIPアドレスIP-STP-aおよびIP-STP-bを用いて、ボーダーゲートウェイ156がそのMACテーブルを照会し、接続負荷分散装置150のMACアドレスを識別する。ステップD2では、ボーダーゲートウェイ156が、接続負荷分散装置150にSigtranメッセージを転送する。
【0053】
ステップD3では、接続負荷分散装置150がそのアソシエーションデータベースを照会し、STP100のメッセージプロセッサに割り当て済みのSigtran接続に受信メッセージが対応付けられているかどうかを判断する。上記したように、アソシエーションデータベースは、STPのメッセージプロセッサへのSigtran接続(SCTPアソシエーション)の割り当て状況を常に把握するために接続負荷分散装置150が保持するデータベースである。Sigtran接続をメッセージプロセッサと対応付けるためにアソシエーションデータベースにおいて用いられるパラメータは、送信元IPアドレスと送信元ポートとを含んでもよい。この例では、ポートP1上のリモートIPアドレスR-IP-xを含んだメッセージが、STPのメッセージプロセッサSTP-MP-iと対応付けられていると判断する。ステップD4では、接続負荷分散装置150が、メッセージプロセッサSTP-MP-iにメッセージを転送する。ステップD5では、メッセージプロセッサSTP-MP-iが、データ(またはその他の後続)メッセージを受け付けて、接続負荷分散装置150を通過せずにボーダーゲートウェイを介して同じSCTPアソシエーション上でリモートピアに応答を直接送る。アソシエーションデータベースにおいて対応付けられたエントリが見つからなかった接続負荷分散装置150が受信した後続メッセージは、削除される。
【0054】
図9は、SS7メッセージプロセッサが再接続された後に接続負荷分散装置が実行する動作を示すネットワーク図である。
図9を参照すると、ステップ1では、STP100のメッセージプロセッサがダウンする。ステップ2では、故障したメッセージプロセッサに接続されたSS7リンクもダウンする。ステップ3では、リモートにあるSS7ピア104が、リンク1の再接続を試みる。この再接続は、故障したメッセージプロセッサが用いるIPアドレスと同じIPアドレスを用いて行われる。接続負荷分散装置150は、上述した接続分散アルゴリズムに基づいて、使用可能なメッセージプロセッサのうちの1つへの接続要求のルーティングをやり直す。
【0055】
図10は、接続負荷分散装置150およびSTP100ブロック図である。
図10を参照して、接続負荷分散装置150は、ネットワークAおよびB用にEthernetインターフェース152Aおよび152Bをそれぞれ備える。また、接続負荷分散装置は、少なくとも1つのプロセッサ154を備える。Sigtran接続分散部155は、プロセッサ154上で動作して、STP100のメッセージプロセッサ102
1~102
N間でSigtran接続を分散させるための本明細書に記載のステップを実行してもよい。
【0056】
STP100は、メッセージプロセッサ1021~102Nを備える。各メッセージプロセッサは、ネットワークaおよびbにそれぞれ接続されたEthernetインターフェース106Aおよび106Bを備える。また、各メッセージプロセッサ1021~102Nは、プロセッサ158と、SS7/Sigtran機能159とを含んでもよい。SS7/Sigtran機能159は、ポイントコードに基づいてメッセージをルーティングするなどのSS7機能、およびリモートピアとのマルチホームSCTPアソシエーションをセットアップするなどのSigtran機能を実行してもよい。各メッセージプロセッサ1021~102Nは、物理メッセージプロセッサであってもよく、仮想メッセージプロセッサであってもよい。物理メッセージプロセッサとして、各メッセージプロセッサ1021~102Nは、プリント配線基板であってもよく、バスまたはバックプレーンなど、通信媒体162を通してSTP100におけるその他のプリント配線基板に接続される。仮想エンティティとして、各メッセージプロセッサ1021~102Nは、クラウドコンピューティングハードウェア上のハイパーバイザ上で動作する仮想マシンを表してもよい。よって、本明細書において説明する主題は、現実STPまたは仮想STPにある現実メッセージプロセッサまたは仮想メッセージプロセッサ間で接続を分散させることを含む。
【0057】
図11は、STPのメッセージプロセッサ間でSigtran接続を分散させるための例示的な処理を示すフローチャートである。
図11を参照すると、ステップ200では、接続負荷分散装置が、そのIPアドレスをリモートピアに公開する。接続負荷分散装置は、このIPアドレスを接続の負荷分散のために用いる。このステップは、GratuitousARPメッセージを同報通信して、負荷分散のためのIPアドレスを接続負荷分散装置のMACアドレスと対応付けることによって実行されてもよい。IPv6が用いられる場合、ICMPv6近隣探索メッセージを隣接するノードに同報通信することによってステップ200が実行されてもよい。
【0058】
ステップ202では、STPのメッセージプロセッサが、ループバックインターフェース上のエイリアスとしてIPアドレス用いて構成される。また、メッセージプロセッサは、当該IPアドレスで接続を待つように構成される。ループバックインターフェースは、メッセージプロセッサがIPアドレスに関するICMPv6近隣探索メッセージまたはARPメッセージを同報通信しないよう、用いられる。
【0059】
ステップ204では、接続負荷分散装置においてSigtranメッセージが受信される。Sigtranメッセージは、SCTPコントロールチャンクまたはデータチャンクなど、SCTPメッセージであってもよい。SCTPメッセージは、SS7をM3UAペイロードに含めてもよく、その他のSS7をSigtranペイロードに含めてもよい。
【0060】
ステップ206では、このメッセージが最初のメッセージであるか、後続メッセージであるかを判断する。メッセージが最初のメッセージであるか後続メッセージであるかを判断するステップは、メッセージのSCTPチャンクタイプフィールドを調べるステップを含んでもよい。チャンクタイプフィールドは、SCTPメッセージの種類を識別するコードを含む。0x01という値は、チャンクの種類がINITまたは最初(initiation)であることを示す。0x00というチャンクの種類は、チャンクの種類がデータであること、または、メッセージがSCTP接続を用いたアプリケーションのためのデータを含んでいることを示す。その他の対象となるチャンクの種類は、0x0aを含んでもよく、SCTPアソシエーションを確立するためのハンドシェイク手順の一部であるCookie Echoメッセージを識別する。
【0061】
ステップ206においてメッセージが最初のメッセージであると判断された場合、制御は、ステップ206Aに進む。ステップ206Aでは、接続にメッセージプロセッサが割り当てられているかどうかを判断する。接続にメッセージプロセッサが割り当てられているかどうかを判断するステップは、メッセージに含まれる送信元IPアドレスおよび送信元SCTPポートを用いて、接続負荷分散装置150が保持するアソシエーションデータベースを照会するステップを含んでもよい。アソシエーションデータベースにおいて一致するレコードを特定できた場合、接続にメッセージプロセッサが割り当てられていると判断する。アソシエーションデータベースにレコードを特定できなかった場合、接続にメッセージプロセッサが割り当てられていないと判断する。
【0062】
メッセージが最初のメッセージであり、かつ、接続にメッセージプロセッサが割り当てられている場合、制御は、ステップ208に進む。ステップ208では、接続に割り当てられているメッセージプロセッサにメッセージを転送する。割り当てられたメッセージプロセッサ上のSCTPアソシエーションステートマシンは、接続が確立済みのINITメッセージなど、out-of-stateメッセージを処理する。メッセージが最初のメッセージであり、かつ、接続にメッセージプロセッサが割り当てられていない場合、制御は、ステップ210に進む。ステップ210では、最初のメッセージが確立を開始するつもりのSigtran接続をメッセージプロセッサのうちの1つに割り当て、その結果、割り当てられたメッセージプロセッサとリモートSS7ピアとの間にSCTP/Sigtran接続を確立する。SCTP接続の確立には、割り当てられたメッセージプロセッサからSS7ピアへのINIT肯定応答メッセージの送信を必要とする。SS7ピアは、その後、割り当てられたメッセージプロセッサに接続負荷分散装置を介してCOOKIE-ECHOメッセージを送る。接続負荷分散装置は、COOKIE-ECHO、データ、およびSCTPアソシエーションでSS7ピアから受信したその他の非INITメッセージを、SCTPアソシエーションの後続メッセージとして扱う。
【0063】
メッセージプロセッサのうちの1つにSigtran接続を割り当てるステップは、上述した負荷分散アルゴリズムを適用し、メッセージプロセッサへのSigtran接続の相対的な負荷を示すグループカウントに基づいて、接続分散候補を識別するステップと、その後、選択アルゴリズムを用いて接続分散候補の中から1つを選択するステップとを含んでもよい。負荷分散アルゴリズムが同様のSigtran接続負荷を有する接続分散候補を識別するので、選択アルゴリズムは、ランダム選択、ラウンドロビン選択など、任意の適した選択アルゴリズムであってもよい。メッセージプロセッサが選択されると、メッセージプロセッサにSigtran接続を割り当てることに関連する最後のステップは、接続負荷分散装置150が保持するアソシエーションデータベースに、メッセージに含まれる送信元IPアドレスおよび送信元SCTPポート番号を、割り当てられたSTPのメッセージプロセッサに対応付けるレコードを作成するステップを含む。STPのメッセージプロセッサのうちの1つに接続が割り当てられた後、制御は、ステップ210に進む。ステップ210では、割り当てられたメッセージプロセッサにメッセージを転送する。
【0064】
ステップ206に戻ると、メッセージが後続メッセージであると判断されると、制御は、ステップ206Bに進む。ステップ206Bでは、後続メッセージが対応付けられているSigtran接続にメッセージプロセッサが割り当てられているかどうかを判断する。上記したように、後続メッセージとして、SCTPデータメッセージおよびSCTP制御メッセージ(INITメッセージ以外)などが挙げられる。後続メッセージにメッセージプロセッサが割り当てられているかどうかを判断するステップは、メッセージに含まれる送信元IPアドレスおよび送信元SCTPポート番号を用いて、接続負荷分散装置150が保持するアソシエーションデータベースのルックアップを実行することを含んでもよい。データベースにおいて一致するものを特定できた場合、接続がメッセージプロセッサのうちの1つに割り当てられていると判断してもよい。アソシエーションデータベースにおいて一致するものを特定できなかった場合、接続がメッセージプロセッサのうちの1つに割り当てられていないと判断してもよい。
【0065】
メッセージが、STPのメッセージプロセッサが割り当てられていないSigtran接続の後続メッセージである場合、制御は、ステップ207Bに進む。ステップ207Bでは、メッセージを破棄する。メッセージが、メッセージプロセッサが割り当てられているSigtran接続の後続メッセージである場合、制御は、ステップ210に進む。ステップ210では、Sigtran接続に予め割り当てられているメッセージプロセッサにメッセージを転送する。
【0066】
よって、本明細書に記載のステップを用いて、新しいIPアドレスを用いてリモートノード再構成する必要なしで現実および仮想STPのメッセージプロセッサをシームレスにネットワークに追加したりネットワークから削除したりすることができる。また、接続負荷分散装置は、STPにあるメッセージプロセッサの負荷を分散させる。本明細書において説明する主題は、現実STPのメッセージプロセッサまたは仮想STPのメッセージプロセッサ間でメッセージを分散させるために用いることができる。
【0067】
今回開示した主題の様々な詳細は、今回開示した主題の範囲を逸脱することなく変更されてもよいと理解されるであろう。さらには、上記の説明はあくまで例示にすぎず、限定ではない。
【国際調査報告】