呼制御装置及び呼制御方法
【課題】同一の着信先に対して大量の呼が集中した際の負荷増大を抑制でき、故意の攻撃や転送呼ループが形成されても適切に転送を中断して交換機能を維持できるようにすること。
【解決手段】VoIP網10上のソフトスイッチ13−1において発信側と着信側とを接続するための呼処理を行う場合、受信INVITEからToヘッダ34のユーザパート35を取り出して着信先毎にカウントする。ソフトスイッチ13−1の呼規制手段23が受信INVITEに指定された着信先についてカウント値が上限値に達しているか否か判定し、カウント値が上限値に達していれば当該INVITEによる入り呼の転送動作を規制する。
【解決手段】VoIP網10上のソフトスイッチ13−1において発信側と着信側とを接続するための呼処理を行う場合、受信INVITEからToヘッダ34のユーザパート35を取り出して着信先毎にカウントする。ソフトスイッチ13−1の呼規制手段23が受信INVITEに指定された着信先についてカウント値が上限値に達しているか否か判定し、カウント値が上限値に達していれば当該INVITEによる入り呼の転送動作を規制する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、VoIP(Voice over Internet Protocol)網において発信側と着信側との間に呼を接続するための処理を行う呼制御装置及び呼制御方法に関する。
【背景技術】
【0002】
図11は、公衆電話網(PSTN)とVoIP網とをゲートウェイ装置を介して接続したネットワーク構成図である。公衆電話網はPBXや局交換機等の回線交換機1で構成され、VoIP網は局交換機に相当するソフトスイッチ2で構成されている。回線交換機1及びソフトスイッチ2は複数のユーザ端末をそれぞれ収容している。例えば、ソフトスイッチ2に収容された発ユーザ端末4から回線交換機1に収容された着信先5へ発呼する場合、ソフトスイッチ2が発ユーザ端末4から受け取った通話要求に関するリクエストを、公衆電話網の回線交換機1へ送信する。公衆電話網の回線交換機1は収容端末に対する入り呼を受信すると、該当する着信先5へ着信させる。このとき、VoIP網から公衆電話網へ入る際にゲートウェイ装置6でVoIPプロトコルから公衆電話網のプロトコルに対応した信号形態に変換している。また、回線交換機1及びソフトスイッチ2には転送機能を搭載することもできる。例えば、ソフトスイッチ2の収容端末4に対する呼を、回線交換機1の収容端末へ転送するように設定することができる。その逆に回線交換機1の収容端末に対する呼を、ソフトスイッチ2の収容端末へ転送するように設定することもできる。ある発信端末からソフトスイッチ2の収容端末4に対する入り呼が発生すると、ソフトスイッチ2は収容端末4へ着信させずに、回線交換機1に対して当該入り呼を転送して収容端末5に着信させることができる。
【0003】
ところで、上記回線交換機1の収容端末5を着信先とした呼を、ソフトスイッチ2の収容端末4へ転送するように設定がされていた場合、ソフトスイッチ2から回線交換機1に対して送出した呼が、再び戻ってくることになる。ソフトスイッチ2は上記転送設定にしたがって再び回線交換機1の収容端末5へ転送するので、ソフトスイッチ2と回線交換機1との間で呼がループする現象が生じる。また、上記回線交換機1に収容端末5に対する呼を、ソフトスイッチ2以外の収容端末へ転送するように設定されていた場合であっても、他のソフトスイッチ又は回線交換機を経由してソフトスイッチ2に戻ってくる可能性がある。
【0004】
このように、VoIP網のソフトスイッチ2と公衆電話網の回線交換機1との間でループが形成されて呼の転送が繰り返されると、ゲートウェイ装置6の収容回線を順次消費していき使用回線数が収容回線数の最大値に達したところで処理不能になるといった問題がある。また、ソフトスイッチ2及び回線交換機1において本来不要な呼処理(ループ)に関する負荷が大幅に増大して通信不能に陥る危険性がある。
【0005】
SIP対応のソフトスイッチの場合、ダイアログIDのユニーク特性又はMax-Forwards ヘッダを使用することにより、呼の転送によって形成されるループを防ぐことができる。SIP対応のソフトスイッチは、転送呼に対してReferred-Byヘッダ等を用いて転送元情報を付与する。そこで、入り呼に付与されているReferred-Byヘッダから転送回数を検出して、例えば5回目以降は転送しないようにすることができる。また、Max-Forwards のデクリメント値が下限に達した時点で転送処理を中断すれば、呼のループを防止することができる。
【0006】
なお、ATM(Asynchronous Transfer Mode)交換システム又はフレームリレー交換システムのように通信データメッセージを所定データ長のセグメントデータにセグメント化して伝送することにより、コネクションレスで交換処理を行う交換システムにおいて、輻輳等の障害の発生により伝送中のメッセージ情報の廃棄を行うにあたり、メッセージ情報を無差別的でなく積極的に選択して廃棄して、伝送中のメッセージのうちの一部のメッセージを選択的に確実に伝送し、システムの実質的な伝送効率を高めることが提案されている(例えば、特許文献1参照)。
【特許文献1】特開平9−116558号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
しかしながら、上記従来技術のダイアログIDのユニーク特性又はMax-Forwards ヘッダを利用したループ防止機能は、PSTNプロトコルとVoIPプロトコルを変換するゲートウェイ装置やB2BUA(Back To Back User Agent)タイプのエンティティが間にあった場合には、ダイアログIDが毎回変化し、Max-Forwardsのデクリメント値もクリアされてしまうため使用できない。また、上記ループ防止機能はソフトスイッチが転送呼に対してReferred-Byヘッダを付与することを前提とするが、通信事業者によっては転送呼であってもReferred-Byヘッダを付与しないことがあるので、必ずしもループ防止機能が機能するとは限らないといった問題がある。
また、SIP−PSTN間のゲートウェイ装置に限らず、MGCP
(Media Gateway Control Protocol)-SIP間やH.323-SIP間のトランキングを行うゲートウェイ装置、また、SIP-SIP間でも音声を扱う装置(例えば、SBC(Session Boarder
Controller))が間にあるケースでも同様にループによる呼の転送が繰り返されて資源(収容回線)が枯渇する問題が発生する。
【0008】
また、ソフトスイッチ又は回線交換機に収容された特定の着信先に対して故意に大量の呼を集中させてソフトスイッチ又は回線交換機に過大な負荷を与え、交換機能を停滞させる攻撃事例も報告されている。しかしながら、上記ループ防止機能を含めて現状の防御機能ではこれらの攻撃を十分に防ぐことができなかった。
【0009】
本発明は、以上のような実情に鑑みてなされたもので、一方ではループ形成の有無に拘わらず同一のユーザに着信する数を制限可能でソフトスイッチの過負荷を防止でき、他方でループ回避することができて、それによる資源(収容回線)の枯渇防止及び回線交換機やソフトスイッチの過負荷防止を図る呼制御装置及び呼制御方法を提供することを目的とする。
【課題を解決するための手段】
【0010】
本発明の呼制御装置は、VoIP網上で発信側と着信側との間に呼を接続するための処理を行う呼処理手段と、前記呼処理手段が受信した通話要求に関するリクエストから当該リクエストの着信先情報を取り出して着信先毎にカウントするカウント手段と、前記呼処理手段が受信したリクエストに指定された着信先について前記カウント値が上限値に達している場合、当該リクエストの転送動作を規制する呼規制手段とを具備したことを特徴とする。
【0011】
このように構成された呼制御装置によれば、同一の着信先を指定したリクエストが大量に発生した場合に、当該着信先についてカウント値が上限値に達して転送動作されなくなるので、同一の着信先に対して大量の呼が集中することを防止でき、ソフトスイッチの過負荷防止を図ることができる。また、リクエストの着信先情報は転送を繰り返しても変化しないので、異プロトコル上の呼処理サーバとの間で転送呼がループするようなことがあっても着信先についてカウント値が上限値に達して転送動作されなくなり、異プロトコル上の呼処理サーバとの間に配置されたゲートウェイ装置等において資源(収容回線)が枯渇するといった不具合を防止することができる。
【0012】
また、本発明は、上記呼制御装置において、高速アクセス可能な内部メモリに対して前記カウント値の書込み及び読出しを行うことを特徴とする。
【0013】
このように、高速アクセス可能な内部メモリに対してカウント値の書込み及び読出しを行うことにより、メモリアクセス時の待ち時間を短縮できるので、内部メモリに対して頻繁にアクセスが発生したとしても、リクエストに指定された着信先についてカウンタ値が上限値に達しているか否かの判断に要する処理負担を軽減できる。
【0014】
また、本発明は、上記呼制御装置において、前記各カウント値にスイープインターバルを設定し、スイープインターバル期間内に変化しなかったカウント値を0クリアすることを特徴とする。
【0015】
これにより、スイープインターバル期間に変化しなかったカウント値を0クリアするので、短時間に呼が集中している着信先以外についてはカウント値を整理することができる。
【0016】
上記呼制御装置において、前記呼処理手段はSIP(Session Initiation Protocol)に基づいて呼処理を行い、前記カウント手段はINVITEリクエストのToヘッダから着信先情報を取得するものとする。
【0017】
また、上記呼制御装置において、前記呼処理手段はH.323に基づいて呼処理を行い、前記カウント手段はSetupリクエストのCalled Party Numberから着信先情報を取得するものとする。
【0018】
また、本発明の呼制御方法は、VoIP網上で発信側と着信側とを接続するための呼処理を行う呼制御方法において、受信した通話要求に関するリクエストから当該リクエストの着信先情報を取り出して着信先毎にカウントする工程と、受信したリクエストに指定された着信先について前記カウント値が上限値に達しているか否か判定する工程と、前記判定の結果、前記カウント値が上限値に達していた場合に当該リクエストの転送動作を規制する工程とを具備したことを特徴とする。
【0019】
このように構成された呼制御方法によれば、同一の着信先を指定したリクエストが大量に発生した場合に、当該着信先についてカウント値が上限値に達して転送動作されなくなるので、同一の着信先に対して大量の呼が集中することを防止でき、呼処理の負荷増大による通信不能状態を回避することができる。
【発明の効果】
【0020】
本発明によれば、ループ形成の有無に拘わらず同一のユーザに着信する数を制限可能でソフトスイッチの過負荷を防止できる一方、ループ回避することができて資源(収容回線)の枯渇防止及び回線交換機やソフトスイッチの過負荷防止を図ることができる。
【発明を実施するための最良の形態】
【0021】
以下、本発明の一実施の形態に係る呼制御装置としてSIP対応のソフトスイッチを説明するが、本発明はSIP対応のソフトスイッチに限定されるものではない。
図1は本実施の形態に係るソフトスイッチを備えたVoIP網及びゲートウェイ装置を介して接続された異プロトコル網からなるネットワーク構成図である。VoIP網10はSIPに基づいて呼処理する複数のソフトスイッチ13−1〜13−nで構成されており、異プロトコル網11は1つ又は複数の呼処理サーバで構成されている。図1に示す異プロトコル網11では1つの呼処理サーバを例示している。VoIP網10と異プロトコル網11とは互いのプロトコルを変換するゲートウェイ装置12を介して接続されている。ソフトスイッチ13−1、13−2等は、それぞれ加入者端末となるユーザ端末15−1〜15−n、16−1〜16−nを収容しており、加入者毎に転送先などの設定をできるように構成されている。呼処理サーバ14は加入者端末となるユーザ端末17−1〜17−nを収容しており、加入者毎に転送先などの設定をできるように構成されている。
【0022】
図2はソフトスイッチ13−1の概念図である。ソフトスイッチ13−1は、SIPに基づいてVoIP網上で発信側と着信側との間に呼を接続するための処理を行う呼処理手段20を備える。さらに、ソフトスイッチ13−1は、INVITEリクエストから着信先情報を取り出して着信先毎にカウントするカウント手段21と、着信先毎にカウントされるカウント値を記録するための着ユーザカウント用メモリ22と、同一の着信先に対して集中する呼を規制する呼規制手段23と、着ユーザカウント用メモリ22においてスイープインターバル期間内に変化しなかった着信先情報(少なくともカウント値を含む)を0クリアするクリア手段24とを備える。カウント手段21は、他のソフトスイッチ又は回線交換機から受信したINVITEリクエストのToヘッダからユーザパートを取り出して、ユーザパートにセットされた着信先毎にカウントする。図4はINVITEリクエストの概念図である。SIPで用いられるINVITEリクエストは、主にスタートライン31、ヘッダフィールド32、空行及びボディ33で構成されている。ヘッダフィールド32におけるToヘッダ34には、リクエストの着信先を示すユーザパート35が設けられている。図4に示すリクエストに設定された各パラメータは転送される度に各部が書き換えられるが、Toヘッダ34のユーザパート35は転送されても変化しない。本実施の形態は、Toヘッダ34のユーザパート35が転送されても変化しないことに着目して、同一呼のリクエストを繰り返し転送していることを検出すると共に、特定の着信先に呼が集中していることを検出するようにした。
【0023】
その他のソフトスイッチ13−2〜13−nは、上記ソフトスイッチ13−1と同様に構成されているものとする。
【0024】
図3は、着ユーザカウント用メモリ22に書き込まれる書込み情報の概念図である。着ユーザカウント用メモリ22には、着信先の加入者番号25、同一の着信先のカウント値26及びカウント値26の最新更新時間27が書き込まれる。呼規制手段23はカウント値26が所定時間内に所定値に到達したら当該リクエストの転送を中断する。
【0025】
次に、以上のように構成された本実施の形態の動作について説明する。
図5はソフトスイッチ13−1において呼の転送を規制する際のフロー図である。ソフトスイッチ13−1は、VoIP網10の他のソフトスイッチ13−2〜13−nからINVITEリクエストを受信し、又は異プロトコル網11の呼処理サーバ14からゲートウェイ装置12経由でINVITEリクエストを受信する。
【0026】
ソフトスイッチ13−1の呼処理手段20がINVITEを受信すると(ステップS1)、他のソフトスイッチ又は他の呼処理サーバへ転送を要する呼の場合には、カウント手段21が当該INVITEのToヘッダ34からユーザパート35を取得する(ステップS2)。今回取得したユーザパート35が示す「着信先」と同一の着信先(加入者番号25)が着ユーザカウント用メモリ22に存在するか否か判断する(ステップS3)。着ユーザカウント用メモリ22に同一の着信先が登録されていない場合は、着ユーザカウント用メモリ22に今回取得した「着信先」として加入者番号25を追加登録し(ステップS4)、さらにカウント値26に1を設定する(ステップS5)。本実施の形態では、カウント値のゼロクリア契機を得るために更新時間27も同時に登録している。
【0027】
一方、ステップS3の判定で同一の着信先が着ユーザカウント用メモリ22に登録されていた場合は、当該着信先のカウント値26を着ユーザカウント用メモリ22から読み込んで予め設定されている上限値に到達しているか否か判断する(ステップS6)。カウント値26が上限値に到達していなければ、当該着信先のカウント値26を1つアップさせる(ステップS7)。
【0028】
以上のように、着ユーザカウント用メモリ22に今回取得した「着信先」と同一の着信先が登録されていなかった場合(ステップS3、S4,S5)、並びに当該着信先のカウント値26が上限値に到達していなかった場合(ステップS6、S7)は、呼処理手段20に転送許可を与えて他のソフトスイッチ又は他の呼処理サーバへ転送させる(ステップS8)。これにより、特定の着信先に対して呼が集中していない場合には、従来通り転送処理を実施することができる。
【0029】
一方、上記ステップS6の判定で着信先のカウント値26が上限値に到達していた場合は、INVITE送信元に対して403レスポンスを返送して、転送動作は行わない(ステップS9)。このように、同一の着信先のカウント値が所定時間内に予め設定した上限値に到達した場合には、当該着信先のカウント値26がゼロクリアされるまで、当該ソフトスイッチ13−1を経由して当該着信先を収容する他のソフトスイッチ又は回線交換機へ呼を転送できないことになる。例えば、ソフトスイッチ13−2に収容されたユーザ端末16−1を着信先としたINVITEが短時間に集中した場合、ソフトスイッチ13−2にINVITEを転送する周囲のソフトスイッチ13−1等において上記した転送制限が掛かりソフトスイッチ13−2の負荷増大を防止することができる。
【0030】
次に、着ユーザカウント用メモリ22に着信先毎に蓄積しているカウント値26をゼロクリアする契機について説明する。
【0031】
図6は着ユーザカウント用メモリ22のカウント値をゼロクリアする動作を示すフロー図である。本実施の形態では、発側へのファイナルレスポンス送信時(ステップS20)、及びスイープインターバル経過時(ステップS21)にカウント値をゼロクリアする。カウンタ手段21は、呼処理手段20が発側へファイナルレスポンスを送信する際に(ステップS20)、当該リクエストのToヘッダ34からユーザパート35を取得し(ステップS22)、着ユーザカウント用メモリ22に取得したユーザパート35と同一の着信先(加入者番号25)が登録されているか否か判断する(ステップS23)。同一の着信先が登録されていた場合は、クリア手段24に指示して着ユーザカウント用メモリ22の当該着信先のカウント値26を0クリアする(ステップS24)。
【0032】
また、クリア手段24は、着ユーザカウント用メモリ22に登録された着信先について、最新の更新時刻25から予め設定したスイープインターバルを経過している着信先を検出する(ステップS21)。スイープインターバルを経過しているカウント値26があれば、それを0クリアする(ステップS24)。
【0033】
なお、ステップS24では、カウント値26だけでなく、着信先情報(加入者番号25、カウント値26及び更新時間27)を全て削除しても良い。
【0034】
このように、発側へのファイナルレスポンス送信時(ステップS20)及びスイープインターバル経過時(ステップS21)にカウント値をゼロクリアするので、特定の収容端末に所定時間(短時間)のうちに呼が集中する場合にだけ、当該着信先が指定されたINVITEの転送を制限することができる。また、スイープインターバル経過時(ステップS21)にカウント値をゼロクリアするので、ファイナルレスポンスがなされない等の0クリア契機を失った場合にカウント値が整理されずに残ってしまう不都合を防止できる。
【0035】
次に、2つのソフトスイッチ間で呼転送が繰り返されるループが形成される設定になっていた場合に、呼転送を中断する動作について具体例に基づいて説明する。
【0036】
図7は、呼転送のループが形成されるように転送設定されたソフトスイッチA及びソフトスイッチBのシーケンス図である。ソフトスイッチA及びソフトスイッチBは、上記ソフトスイッチ13−1と同様の構成を有しているものとする。
【0037】
図7には、発信端末(加入者番号=0312345678)からソフトスイッチAに収容されているユーザ端末(加入者番号=05011110001)に対して発信し、ソフトスイッチAがユーザ端末(05011110001)の設定に基づいて他のソフトスイッチBに収容されたユーザ端末(加入者番号=09011110001)へ呼を転送し、ソフトスイッチBがユーザ端末(09011110001)の設定に基づいてソフトスイッチAに収容されたユーザ端末(05011110001)へ呼を転送する場合を例示している。
【0038】
回線交換機に収容された発信端末からソフトスイッチAの収容端末(05011110001)に対して発呼があると、ソフトスイッチAは図8(a)に示すINVITEを受信する。ソフトスイッチAは、受信INVITEのリクエストURIから自己が収容しているユーザ端末(05011110001)が着信先であると判断する。ユーザ端末(05011110001)には上記転送先が設定されているので、転送先のユーザ端末(09011110001)を着信先(Toヘッダ)に設定したINVITEを生成して当該入り呼を着信先のユーザ端末(09011110001)を収容しているソフトスイッチBへ送信する。図8(b)はソフトスイッチAからソフトスイッチBへ呼を転送するINVITEのヘッダ構成を示している。Toヘッダのユーザパートに着信先を示す"09011110001" <sip:09011110001@172.17.19.25:5060>が設定されている。また、ユーザ端末(05011110001)からの転送呼であることを示すReferred-By:
<sip:05011110001@172.17.19.25>が付加されている。
【0039】
ソフトスイッチBでは、図8(b)に示すINVITEを受信する。ソフトスイッチBは、受信INVITEのリクエスト行から当該クエストの宛先は自己が収容しているユーザ端末(09011110001)であると判断する。ユーザ端末(09011110001)には上記転送先が設定されているので、転送先のユーザ端末(05011110001)を着信先(Toヘッダ)に設定したINVITEを生成して当該入り呼を着信先のユーザ端末(05011110001)を収容しているソフトスイッチAへ転送する。図9(a)はソフトスイッチBからソフトスイッチAへ呼を転送した際のINVITEのヘッダ構成を示している。Toヘッダのユーザパートに着信先を示す"09011110001" <sip:09011110001@172.17.19.25:5060>が設定されている。すなわち、転送呼であってもToヘッダのユーザパートは変化していない。また、ソフトスイッチBは、呼を転送してもReferred-Byヘッダを追加する設定となっておらず、Referred-Byヘッダが削除されている。Max-Forwardsヘッダのデクリメント値も初期化されている。したがって、このINVITEを受信したソフトスイッチAは、Referred-Byヘッダ及びMax-Forwardsヘッダを使用してもループを防止することはできない。
【0040】
本実施の形態は、上記した通りToヘッダのユーザパート("09011110001" <sip:09011110001@172.17.19.25:5060>)を取り出して、着信先毎に同一呼のINVITEを何回受信したかをカウントしている。図7に示すシーケンスでは転送1回目であるので、着信先("09011110001" <sip:09011110001@172.17.19.25:5060>)に対するカウント値は1となる。
【0041】
図7に示すように、ソフトスイッチAからソフトスイッチBへ再び同一呼のINVITEが転送され、当該INVITEを受けたソフトスイッチBがソフトスイッチAに対して同一呼のINVITEを再び転送する。図9(b)はソフトスイッチBからソフトスイッチAに対しての2回目転送時のINVITEのヘッダ構成を示している。Toヘッダのユーザパートに着信先を示す"09011110001" <sip:09011110001@172.17.19.25:5060>が設定されている。転送2回目であるので、同一の着信先("09011110001" <sip:09011110001@172.17.19.25:5060>)に対するカウント値は1つインクリメントして2となる。
【0042】
ソフトスイッチAにおいて着ユーザカウント値の上限値を5に設定しておけば、ソフトスイッチAからはToヘッダのユーザパートに"09011110001" <sip:09011110001@172.17.19.25:5060>が設定されている呼について5回目以降は転送を中断することとなる。
【0043】
以上のようにして、各ソフトスイッチではReferred-Byヘッダ及びMax-Forwardsヘッダを使用することなく、確実にループを防止することができる。
【0044】
本実施の形態では、ソフトスイッチにおいて呼規制手段23が着信先毎のカウント値を記録するために高速アクセス可能な内部記憶媒体として着ユーザカウント用メモリ22を用いている。このため、ソフトスイッチの負荷を増大させること無く入り呼の制限が可能である。
【0045】
但し、着ユーザカウント用メモリ22に代えてハードディスクで構成されるデータベースを用いても、同一ユーザに着信する着信数の制限及びループ回避は可能である。データベースに着信先毎のカウント値を記録する場合、着ユーザカウント用メモリ22に比べてアクセス速度は低下することになるが、アクセス速度の低下が問題にならないのであれば、データベースを利用することもできる。
【0046】
本発明は、SIP対応のソフトスイッチに限定されるものではなく、SIP以外のVoIPプロトコル(例えば、H.323)に基づいて動作する呼制御装置にも同様に適用することができる。
【0047】
図10は、H.323網上のゲートキーパとSIP網上のソフトスイッチとの間にループが形成された状態を示すシーケンス図である。H.323に基づいて動作する呼制御装置としてゲートキーパ31が示されている。また、SIP網上の呼制御装置としてソフトスイッチ32、H.323網とSIP網との間にプロトコル変換を行う装置としてゲートウェイ装置33が示されている。H.323網においては通話要求に関するリクエストとしてSetupリクエストが用いられる。
【0048】
H.323網において発信端末からSetupリクエストを受け取ったゲートキーパ31は、着信先が異プロトコルのソフトスイッチ32に収容された端末の場合には、Called Party Numberに当該着信先の加入者番号を設定したSetupリクエストをゲートウェイ装置33経由でソフトスイッチ32へ送信する。Setupリクエストはゲートウェイ装置33でINVITEリクエストに変換されるが、Called Party Numberの書き換えは行われない。
【0049】
ソフトスイッチ32が収容する着信先の設定内容が、当該端末に対する呼をゲートキーパ31が収容する端末へ転送することとなっているものとする。この場合、図10に示すようにゲートキーパ31が収容する端末を宛先としたINVITEリクエストによって呼が転送される。このとき、上記した通り、Toヘッダの着信先情報はそのまま変化せずに維持される。このようにして、SIP網側においてループが発生する。
【0050】
ゲートキーパ31においても、SIP網側からINVITEリクエストを変換したSetupリクエストを受信するが、当該着信先に対する転送設定は変わっていないので、再びソフトスイッチ32が収容する同一端末を宛先としたSetupリクエストを生成してゲートウェイ装置33経由でソフトスイッチ32へ送信する。このとき、Setupリクエスト上で着信先を指定しているCalled Party Numberは書き換えられずに維持される。このようにして、H.323網側においてもループが発生する。
【0051】
本発明では、ゲートキーパ31及びソフトスイッチ32の双方において、図2に示す構成及び図5に示す処理内容に基づいて、ゲートキーパ31では受信したSetupリクエストのCalled Party Numberから同一着信先をカウントして上限値に達した時点で転送を制限する。ソフトスイッチ32では受信したINVITEリクエストのToヘッダから同一着信先をカウントして上限値に達した時点で転送を制限する。
【0052】
このように、H.323網上の呼処理サーバであるゲートキーパ31においても他の異プロトコルの呼処理サーバとの間で呼の転送が繰り返されるループが発生した場合に、ゲートウェイ装置33で資源が枯渇する不具合を未然に防止できる。
【0053】
以上の説明では、主に呼処理サーバ間で呼の転送が繰り返されるループ発生のケースを例に説明したが、本発明はこのようなループ回避目的に限定されるものではない。本発明は、VoIP網上の通話要求に関するリクエストの着信先情報(INVITEリクエストのToヘッダ、SetupリクエストのCalled Party Number)をチェックしてカウントする機能を搭載したことにより、ループ回避機能の他に、ループの有無に拘わらず同一ユーザに着信する着信数を制限することができる。したがって、呼処理サーバ間でループ形成される設定となっていない場合であっても、同一ユーザに着信する着信数を制限するという機能を発揮でき、従来技術では簡易な方法で防御が困難であった特定の着信先に対して故意に大量の呼を集中させる攻撃に対しても、上気した通りの簡易な構成で確実に防御することができる。
【図面の簡単な説明】
【0054】
【図1】本発明の一実施の形態に係るソフトスイッチを備えたVoIP網及び公衆電話網からなるネットワーク構成図
【図2】上記一実施の形態におけるソフトスイッチの概念図
【図3】上記一実施の形態において着ユーザカウント用メモリに書き込まれる書込み情報の概念図
【図4】SIPリクエストの構成例を示す図
【図5】上記一実施の形態のソフトスイッチにおいて呼の転送を規制する際のフロー図
【図6】上記一実施の形態のソフトスイッチにおいてカウント値を0クリアするフロー図
【図7】発信端末からリクエストを受けた際のソフトスイッチ間のシーケンス図
【図8】(a)発信端末からソフトスイッチAへ送信されたINVITEの構成図、(b)ソフトスイッチAからソフトスイッチBへ1回目の転送で送信されたINVITEの構成図
【図9】(a)ソフトスイッチBからソフトスイッチAへ1回目の転送で送信されたINVITEの構成図、(b)ソフトスイッチBからソフトスイッチAへ2回目の転送で送信されたINVITEの構成図
【図10】H.323網上のゲートキーパとSIP網上のソフトスイッチとの間にループが形成された状態を示すシーケンス図
【図11】公衆電話網とVoIP網とをゲートウェイ装置を介して接続したネットワーク構成図
【符号の説明】
【0055】
10…VoIP網
11…公衆電話網
12…ゲートウェイ装置
13−1〜13−n…ソフトスイッチ
14…回線交換機
15−1〜15−n、16−1〜16−n、17−1〜17−n…ユーザ端末
20…呼処理手段
21…カウント手段
22…着ユーザカウント用メモリ
23…呼規制手段
24…クリア手段
25…加入者番号
26…カウント値
27…更新時間
【技術分野】
【0001】
本発明は、VoIP(Voice over Internet Protocol)網において発信側と着信側との間に呼を接続するための処理を行う呼制御装置及び呼制御方法に関する。
【背景技術】
【0002】
図11は、公衆電話網(PSTN)とVoIP網とをゲートウェイ装置を介して接続したネットワーク構成図である。公衆電話網はPBXや局交換機等の回線交換機1で構成され、VoIP網は局交換機に相当するソフトスイッチ2で構成されている。回線交換機1及びソフトスイッチ2は複数のユーザ端末をそれぞれ収容している。例えば、ソフトスイッチ2に収容された発ユーザ端末4から回線交換機1に収容された着信先5へ発呼する場合、ソフトスイッチ2が発ユーザ端末4から受け取った通話要求に関するリクエストを、公衆電話網の回線交換機1へ送信する。公衆電話網の回線交換機1は収容端末に対する入り呼を受信すると、該当する着信先5へ着信させる。このとき、VoIP網から公衆電話網へ入る際にゲートウェイ装置6でVoIPプロトコルから公衆電話網のプロトコルに対応した信号形態に変換している。また、回線交換機1及びソフトスイッチ2には転送機能を搭載することもできる。例えば、ソフトスイッチ2の収容端末4に対する呼を、回線交換機1の収容端末へ転送するように設定することができる。その逆に回線交換機1の収容端末に対する呼を、ソフトスイッチ2の収容端末へ転送するように設定することもできる。ある発信端末からソフトスイッチ2の収容端末4に対する入り呼が発生すると、ソフトスイッチ2は収容端末4へ着信させずに、回線交換機1に対して当該入り呼を転送して収容端末5に着信させることができる。
【0003】
ところで、上記回線交換機1の収容端末5を着信先とした呼を、ソフトスイッチ2の収容端末4へ転送するように設定がされていた場合、ソフトスイッチ2から回線交換機1に対して送出した呼が、再び戻ってくることになる。ソフトスイッチ2は上記転送設定にしたがって再び回線交換機1の収容端末5へ転送するので、ソフトスイッチ2と回線交換機1との間で呼がループする現象が生じる。また、上記回線交換機1に収容端末5に対する呼を、ソフトスイッチ2以外の収容端末へ転送するように設定されていた場合であっても、他のソフトスイッチ又は回線交換機を経由してソフトスイッチ2に戻ってくる可能性がある。
【0004】
このように、VoIP網のソフトスイッチ2と公衆電話網の回線交換機1との間でループが形成されて呼の転送が繰り返されると、ゲートウェイ装置6の収容回線を順次消費していき使用回線数が収容回線数の最大値に達したところで処理不能になるといった問題がある。また、ソフトスイッチ2及び回線交換機1において本来不要な呼処理(ループ)に関する負荷が大幅に増大して通信不能に陥る危険性がある。
【0005】
SIP対応のソフトスイッチの場合、ダイアログIDのユニーク特性又はMax-Forwards ヘッダを使用することにより、呼の転送によって形成されるループを防ぐことができる。SIP対応のソフトスイッチは、転送呼に対してReferred-Byヘッダ等を用いて転送元情報を付与する。そこで、入り呼に付与されているReferred-Byヘッダから転送回数を検出して、例えば5回目以降は転送しないようにすることができる。また、Max-Forwards のデクリメント値が下限に達した時点で転送処理を中断すれば、呼のループを防止することができる。
【0006】
なお、ATM(Asynchronous Transfer Mode)交換システム又はフレームリレー交換システムのように通信データメッセージを所定データ長のセグメントデータにセグメント化して伝送することにより、コネクションレスで交換処理を行う交換システムにおいて、輻輳等の障害の発生により伝送中のメッセージ情報の廃棄を行うにあたり、メッセージ情報を無差別的でなく積極的に選択して廃棄して、伝送中のメッセージのうちの一部のメッセージを選択的に確実に伝送し、システムの実質的な伝送効率を高めることが提案されている(例えば、特許文献1参照)。
【特許文献1】特開平9−116558号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
しかしながら、上記従来技術のダイアログIDのユニーク特性又はMax-Forwards ヘッダを利用したループ防止機能は、PSTNプロトコルとVoIPプロトコルを変換するゲートウェイ装置やB2BUA(Back To Back User Agent)タイプのエンティティが間にあった場合には、ダイアログIDが毎回変化し、Max-Forwardsのデクリメント値もクリアされてしまうため使用できない。また、上記ループ防止機能はソフトスイッチが転送呼に対してReferred-Byヘッダを付与することを前提とするが、通信事業者によっては転送呼であってもReferred-Byヘッダを付与しないことがあるので、必ずしもループ防止機能が機能するとは限らないといった問題がある。
また、SIP−PSTN間のゲートウェイ装置に限らず、MGCP
(Media Gateway Control Protocol)-SIP間やH.323-SIP間のトランキングを行うゲートウェイ装置、また、SIP-SIP間でも音声を扱う装置(例えば、SBC(Session Boarder
Controller))が間にあるケースでも同様にループによる呼の転送が繰り返されて資源(収容回線)が枯渇する問題が発生する。
【0008】
また、ソフトスイッチ又は回線交換機に収容された特定の着信先に対して故意に大量の呼を集中させてソフトスイッチ又は回線交換機に過大な負荷を与え、交換機能を停滞させる攻撃事例も報告されている。しかしながら、上記ループ防止機能を含めて現状の防御機能ではこれらの攻撃を十分に防ぐことができなかった。
【0009】
本発明は、以上のような実情に鑑みてなされたもので、一方ではループ形成の有無に拘わらず同一のユーザに着信する数を制限可能でソフトスイッチの過負荷を防止でき、他方でループ回避することができて、それによる資源(収容回線)の枯渇防止及び回線交換機やソフトスイッチの過負荷防止を図る呼制御装置及び呼制御方法を提供することを目的とする。
【課題を解決するための手段】
【0010】
本発明の呼制御装置は、VoIP網上で発信側と着信側との間に呼を接続するための処理を行う呼処理手段と、前記呼処理手段が受信した通話要求に関するリクエストから当該リクエストの着信先情報を取り出して着信先毎にカウントするカウント手段と、前記呼処理手段が受信したリクエストに指定された着信先について前記カウント値が上限値に達している場合、当該リクエストの転送動作を規制する呼規制手段とを具備したことを特徴とする。
【0011】
このように構成された呼制御装置によれば、同一の着信先を指定したリクエストが大量に発生した場合に、当該着信先についてカウント値が上限値に達して転送動作されなくなるので、同一の着信先に対して大量の呼が集中することを防止でき、ソフトスイッチの過負荷防止を図ることができる。また、リクエストの着信先情報は転送を繰り返しても変化しないので、異プロトコル上の呼処理サーバとの間で転送呼がループするようなことがあっても着信先についてカウント値が上限値に達して転送動作されなくなり、異プロトコル上の呼処理サーバとの間に配置されたゲートウェイ装置等において資源(収容回線)が枯渇するといった不具合を防止することができる。
【0012】
また、本発明は、上記呼制御装置において、高速アクセス可能な内部メモリに対して前記カウント値の書込み及び読出しを行うことを特徴とする。
【0013】
このように、高速アクセス可能な内部メモリに対してカウント値の書込み及び読出しを行うことにより、メモリアクセス時の待ち時間を短縮できるので、内部メモリに対して頻繁にアクセスが発生したとしても、リクエストに指定された着信先についてカウンタ値が上限値に達しているか否かの判断に要する処理負担を軽減できる。
【0014】
また、本発明は、上記呼制御装置において、前記各カウント値にスイープインターバルを設定し、スイープインターバル期間内に変化しなかったカウント値を0クリアすることを特徴とする。
【0015】
これにより、スイープインターバル期間に変化しなかったカウント値を0クリアするので、短時間に呼が集中している着信先以外についてはカウント値を整理することができる。
【0016】
上記呼制御装置において、前記呼処理手段はSIP(Session Initiation Protocol)に基づいて呼処理を行い、前記カウント手段はINVITEリクエストのToヘッダから着信先情報を取得するものとする。
【0017】
また、上記呼制御装置において、前記呼処理手段はH.323に基づいて呼処理を行い、前記カウント手段はSetupリクエストのCalled Party Numberから着信先情報を取得するものとする。
【0018】
また、本発明の呼制御方法は、VoIP網上で発信側と着信側とを接続するための呼処理を行う呼制御方法において、受信した通話要求に関するリクエストから当該リクエストの着信先情報を取り出して着信先毎にカウントする工程と、受信したリクエストに指定された着信先について前記カウント値が上限値に達しているか否か判定する工程と、前記判定の結果、前記カウント値が上限値に達していた場合に当該リクエストの転送動作を規制する工程とを具備したことを特徴とする。
【0019】
このように構成された呼制御方法によれば、同一の着信先を指定したリクエストが大量に発生した場合に、当該着信先についてカウント値が上限値に達して転送動作されなくなるので、同一の着信先に対して大量の呼が集中することを防止でき、呼処理の負荷増大による通信不能状態を回避することができる。
【発明の効果】
【0020】
本発明によれば、ループ形成の有無に拘わらず同一のユーザに着信する数を制限可能でソフトスイッチの過負荷を防止できる一方、ループ回避することができて資源(収容回線)の枯渇防止及び回線交換機やソフトスイッチの過負荷防止を図ることができる。
【発明を実施するための最良の形態】
【0021】
以下、本発明の一実施の形態に係る呼制御装置としてSIP対応のソフトスイッチを説明するが、本発明はSIP対応のソフトスイッチに限定されるものではない。
図1は本実施の形態に係るソフトスイッチを備えたVoIP網及びゲートウェイ装置を介して接続された異プロトコル網からなるネットワーク構成図である。VoIP網10はSIPに基づいて呼処理する複数のソフトスイッチ13−1〜13−nで構成されており、異プロトコル網11は1つ又は複数の呼処理サーバで構成されている。図1に示す異プロトコル網11では1つの呼処理サーバを例示している。VoIP網10と異プロトコル網11とは互いのプロトコルを変換するゲートウェイ装置12を介して接続されている。ソフトスイッチ13−1、13−2等は、それぞれ加入者端末となるユーザ端末15−1〜15−n、16−1〜16−nを収容しており、加入者毎に転送先などの設定をできるように構成されている。呼処理サーバ14は加入者端末となるユーザ端末17−1〜17−nを収容しており、加入者毎に転送先などの設定をできるように構成されている。
【0022】
図2はソフトスイッチ13−1の概念図である。ソフトスイッチ13−1は、SIPに基づいてVoIP網上で発信側と着信側との間に呼を接続するための処理を行う呼処理手段20を備える。さらに、ソフトスイッチ13−1は、INVITEリクエストから着信先情報を取り出して着信先毎にカウントするカウント手段21と、着信先毎にカウントされるカウント値を記録するための着ユーザカウント用メモリ22と、同一の着信先に対して集中する呼を規制する呼規制手段23と、着ユーザカウント用メモリ22においてスイープインターバル期間内に変化しなかった着信先情報(少なくともカウント値を含む)を0クリアするクリア手段24とを備える。カウント手段21は、他のソフトスイッチ又は回線交換機から受信したINVITEリクエストのToヘッダからユーザパートを取り出して、ユーザパートにセットされた着信先毎にカウントする。図4はINVITEリクエストの概念図である。SIPで用いられるINVITEリクエストは、主にスタートライン31、ヘッダフィールド32、空行及びボディ33で構成されている。ヘッダフィールド32におけるToヘッダ34には、リクエストの着信先を示すユーザパート35が設けられている。図4に示すリクエストに設定された各パラメータは転送される度に各部が書き換えられるが、Toヘッダ34のユーザパート35は転送されても変化しない。本実施の形態は、Toヘッダ34のユーザパート35が転送されても変化しないことに着目して、同一呼のリクエストを繰り返し転送していることを検出すると共に、特定の着信先に呼が集中していることを検出するようにした。
【0023】
その他のソフトスイッチ13−2〜13−nは、上記ソフトスイッチ13−1と同様に構成されているものとする。
【0024】
図3は、着ユーザカウント用メモリ22に書き込まれる書込み情報の概念図である。着ユーザカウント用メモリ22には、着信先の加入者番号25、同一の着信先のカウント値26及びカウント値26の最新更新時間27が書き込まれる。呼規制手段23はカウント値26が所定時間内に所定値に到達したら当該リクエストの転送を中断する。
【0025】
次に、以上のように構成された本実施の形態の動作について説明する。
図5はソフトスイッチ13−1において呼の転送を規制する際のフロー図である。ソフトスイッチ13−1は、VoIP網10の他のソフトスイッチ13−2〜13−nからINVITEリクエストを受信し、又は異プロトコル網11の呼処理サーバ14からゲートウェイ装置12経由でINVITEリクエストを受信する。
【0026】
ソフトスイッチ13−1の呼処理手段20がINVITEを受信すると(ステップS1)、他のソフトスイッチ又は他の呼処理サーバへ転送を要する呼の場合には、カウント手段21が当該INVITEのToヘッダ34からユーザパート35を取得する(ステップS2)。今回取得したユーザパート35が示す「着信先」と同一の着信先(加入者番号25)が着ユーザカウント用メモリ22に存在するか否か判断する(ステップS3)。着ユーザカウント用メモリ22に同一の着信先が登録されていない場合は、着ユーザカウント用メモリ22に今回取得した「着信先」として加入者番号25を追加登録し(ステップS4)、さらにカウント値26に1を設定する(ステップS5)。本実施の形態では、カウント値のゼロクリア契機を得るために更新時間27も同時に登録している。
【0027】
一方、ステップS3の判定で同一の着信先が着ユーザカウント用メモリ22に登録されていた場合は、当該着信先のカウント値26を着ユーザカウント用メモリ22から読み込んで予め設定されている上限値に到達しているか否か判断する(ステップS6)。カウント値26が上限値に到達していなければ、当該着信先のカウント値26を1つアップさせる(ステップS7)。
【0028】
以上のように、着ユーザカウント用メモリ22に今回取得した「着信先」と同一の着信先が登録されていなかった場合(ステップS3、S4,S5)、並びに当該着信先のカウント値26が上限値に到達していなかった場合(ステップS6、S7)は、呼処理手段20に転送許可を与えて他のソフトスイッチ又は他の呼処理サーバへ転送させる(ステップS8)。これにより、特定の着信先に対して呼が集中していない場合には、従来通り転送処理を実施することができる。
【0029】
一方、上記ステップS6の判定で着信先のカウント値26が上限値に到達していた場合は、INVITE送信元に対して403レスポンスを返送して、転送動作は行わない(ステップS9)。このように、同一の着信先のカウント値が所定時間内に予め設定した上限値に到達した場合には、当該着信先のカウント値26がゼロクリアされるまで、当該ソフトスイッチ13−1を経由して当該着信先を収容する他のソフトスイッチ又は回線交換機へ呼を転送できないことになる。例えば、ソフトスイッチ13−2に収容されたユーザ端末16−1を着信先としたINVITEが短時間に集中した場合、ソフトスイッチ13−2にINVITEを転送する周囲のソフトスイッチ13−1等において上記した転送制限が掛かりソフトスイッチ13−2の負荷増大を防止することができる。
【0030】
次に、着ユーザカウント用メモリ22に着信先毎に蓄積しているカウント値26をゼロクリアする契機について説明する。
【0031】
図6は着ユーザカウント用メモリ22のカウント値をゼロクリアする動作を示すフロー図である。本実施の形態では、発側へのファイナルレスポンス送信時(ステップS20)、及びスイープインターバル経過時(ステップS21)にカウント値をゼロクリアする。カウンタ手段21は、呼処理手段20が発側へファイナルレスポンスを送信する際に(ステップS20)、当該リクエストのToヘッダ34からユーザパート35を取得し(ステップS22)、着ユーザカウント用メモリ22に取得したユーザパート35と同一の着信先(加入者番号25)が登録されているか否か判断する(ステップS23)。同一の着信先が登録されていた場合は、クリア手段24に指示して着ユーザカウント用メモリ22の当該着信先のカウント値26を0クリアする(ステップS24)。
【0032】
また、クリア手段24は、着ユーザカウント用メモリ22に登録された着信先について、最新の更新時刻25から予め設定したスイープインターバルを経過している着信先を検出する(ステップS21)。スイープインターバルを経過しているカウント値26があれば、それを0クリアする(ステップS24)。
【0033】
なお、ステップS24では、カウント値26だけでなく、着信先情報(加入者番号25、カウント値26及び更新時間27)を全て削除しても良い。
【0034】
このように、発側へのファイナルレスポンス送信時(ステップS20)及びスイープインターバル経過時(ステップS21)にカウント値をゼロクリアするので、特定の収容端末に所定時間(短時間)のうちに呼が集中する場合にだけ、当該着信先が指定されたINVITEの転送を制限することができる。また、スイープインターバル経過時(ステップS21)にカウント値をゼロクリアするので、ファイナルレスポンスがなされない等の0クリア契機を失った場合にカウント値が整理されずに残ってしまう不都合を防止できる。
【0035】
次に、2つのソフトスイッチ間で呼転送が繰り返されるループが形成される設定になっていた場合に、呼転送を中断する動作について具体例に基づいて説明する。
【0036】
図7は、呼転送のループが形成されるように転送設定されたソフトスイッチA及びソフトスイッチBのシーケンス図である。ソフトスイッチA及びソフトスイッチBは、上記ソフトスイッチ13−1と同様の構成を有しているものとする。
【0037】
図7には、発信端末(加入者番号=0312345678)からソフトスイッチAに収容されているユーザ端末(加入者番号=05011110001)に対して発信し、ソフトスイッチAがユーザ端末(05011110001)の設定に基づいて他のソフトスイッチBに収容されたユーザ端末(加入者番号=09011110001)へ呼を転送し、ソフトスイッチBがユーザ端末(09011110001)の設定に基づいてソフトスイッチAに収容されたユーザ端末(05011110001)へ呼を転送する場合を例示している。
【0038】
回線交換機に収容された発信端末からソフトスイッチAの収容端末(05011110001)に対して発呼があると、ソフトスイッチAは図8(a)に示すINVITEを受信する。ソフトスイッチAは、受信INVITEのリクエストURIから自己が収容しているユーザ端末(05011110001)が着信先であると判断する。ユーザ端末(05011110001)には上記転送先が設定されているので、転送先のユーザ端末(09011110001)を着信先(Toヘッダ)に設定したINVITEを生成して当該入り呼を着信先のユーザ端末(09011110001)を収容しているソフトスイッチBへ送信する。図8(b)はソフトスイッチAからソフトスイッチBへ呼を転送するINVITEのヘッダ構成を示している。Toヘッダのユーザパートに着信先を示す"09011110001" <sip:09011110001@172.17.19.25:5060>が設定されている。また、ユーザ端末(05011110001)からの転送呼であることを示すReferred-By:
<sip:05011110001@172.17.19.25>が付加されている。
【0039】
ソフトスイッチBでは、図8(b)に示すINVITEを受信する。ソフトスイッチBは、受信INVITEのリクエスト行から当該クエストの宛先は自己が収容しているユーザ端末(09011110001)であると判断する。ユーザ端末(09011110001)には上記転送先が設定されているので、転送先のユーザ端末(05011110001)を着信先(Toヘッダ)に設定したINVITEを生成して当該入り呼を着信先のユーザ端末(05011110001)を収容しているソフトスイッチAへ転送する。図9(a)はソフトスイッチBからソフトスイッチAへ呼を転送した際のINVITEのヘッダ構成を示している。Toヘッダのユーザパートに着信先を示す"09011110001" <sip:09011110001@172.17.19.25:5060>が設定されている。すなわち、転送呼であってもToヘッダのユーザパートは変化していない。また、ソフトスイッチBは、呼を転送してもReferred-Byヘッダを追加する設定となっておらず、Referred-Byヘッダが削除されている。Max-Forwardsヘッダのデクリメント値も初期化されている。したがって、このINVITEを受信したソフトスイッチAは、Referred-Byヘッダ及びMax-Forwardsヘッダを使用してもループを防止することはできない。
【0040】
本実施の形態は、上記した通りToヘッダのユーザパート("09011110001" <sip:09011110001@172.17.19.25:5060>)を取り出して、着信先毎に同一呼のINVITEを何回受信したかをカウントしている。図7に示すシーケンスでは転送1回目であるので、着信先("09011110001" <sip:09011110001@172.17.19.25:5060>)に対するカウント値は1となる。
【0041】
図7に示すように、ソフトスイッチAからソフトスイッチBへ再び同一呼のINVITEが転送され、当該INVITEを受けたソフトスイッチBがソフトスイッチAに対して同一呼のINVITEを再び転送する。図9(b)はソフトスイッチBからソフトスイッチAに対しての2回目転送時のINVITEのヘッダ構成を示している。Toヘッダのユーザパートに着信先を示す"09011110001" <sip:09011110001@172.17.19.25:5060>が設定されている。転送2回目であるので、同一の着信先("09011110001" <sip:09011110001@172.17.19.25:5060>)に対するカウント値は1つインクリメントして2となる。
【0042】
ソフトスイッチAにおいて着ユーザカウント値の上限値を5に設定しておけば、ソフトスイッチAからはToヘッダのユーザパートに"09011110001" <sip:09011110001@172.17.19.25:5060>が設定されている呼について5回目以降は転送を中断することとなる。
【0043】
以上のようにして、各ソフトスイッチではReferred-Byヘッダ及びMax-Forwardsヘッダを使用することなく、確実にループを防止することができる。
【0044】
本実施の形態では、ソフトスイッチにおいて呼規制手段23が着信先毎のカウント値を記録するために高速アクセス可能な内部記憶媒体として着ユーザカウント用メモリ22を用いている。このため、ソフトスイッチの負荷を増大させること無く入り呼の制限が可能である。
【0045】
但し、着ユーザカウント用メモリ22に代えてハードディスクで構成されるデータベースを用いても、同一ユーザに着信する着信数の制限及びループ回避は可能である。データベースに着信先毎のカウント値を記録する場合、着ユーザカウント用メモリ22に比べてアクセス速度は低下することになるが、アクセス速度の低下が問題にならないのであれば、データベースを利用することもできる。
【0046】
本発明は、SIP対応のソフトスイッチに限定されるものではなく、SIP以外のVoIPプロトコル(例えば、H.323)に基づいて動作する呼制御装置にも同様に適用することができる。
【0047】
図10は、H.323網上のゲートキーパとSIP網上のソフトスイッチとの間にループが形成された状態を示すシーケンス図である。H.323に基づいて動作する呼制御装置としてゲートキーパ31が示されている。また、SIP網上の呼制御装置としてソフトスイッチ32、H.323網とSIP網との間にプロトコル変換を行う装置としてゲートウェイ装置33が示されている。H.323網においては通話要求に関するリクエストとしてSetupリクエストが用いられる。
【0048】
H.323網において発信端末からSetupリクエストを受け取ったゲートキーパ31は、着信先が異プロトコルのソフトスイッチ32に収容された端末の場合には、Called Party Numberに当該着信先の加入者番号を設定したSetupリクエストをゲートウェイ装置33経由でソフトスイッチ32へ送信する。Setupリクエストはゲートウェイ装置33でINVITEリクエストに変換されるが、Called Party Numberの書き換えは行われない。
【0049】
ソフトスイッチ32が収容する着信先の設定内容が、当該端末に対する呼をゲートキーパ31が収容する端末へ転送することとなっているものとする。この場合、図10に示すようにゲートキーパ31が収容する端末を宛先としたINVITEリクエストによって呼が転送される。このとき、上記した通り、Toヘッダの着信先情報はそのまま変化せずに維持される。このようにして、SIP網側においてループが発生する。
【0050】
ゲートキーパ31においても、SIP網側からINVITEリクエストを変換したSetupリクエストを受信するが、当該着信先に対する転送設定は変わっていないので、再びソフトスイッチ32が収容する同一端末を宛先としたSetupリクエストを生成してゲートウェイ装置33経由でソフトスイッチ32へ送信する。このとき、Setupリクエスト上で着信先を指定しているCalled Party Numberは書き換えられずに維持される。このようにして、H.323網側においてもループが発生する。
【0051】
本発明では、ゲートキーパ31及びソフトスイッチ32の双方において、図2に示す構成及び図5に示す処理内容に基づいて、ゲートキーパ31では受信したSetupリクエストのCalled Party Numberから同一着信先をカウントして上限値に達した時点で転送を制限する。ソフトスイッチ32では受信したINVITEリクエストのToヘッダから同一着信先をカウントして上限値に達した時点で転送を制限する。
【0052】
このように、H.323網上の呼処理サーバであるゲートキーパ31においても他の異プロトコルの呼処理サーバとの間で呼の転送が繰り返されるループが発生した場合に、ゲートウェイ装置33で資源が枯渇する不具合を未然に防止できる。
【0053】
以上の説明では、主に呼処理サーバ間で呼の転送が繰り返されるループ発生のケースを例に説明したが、本発明はこのようなループ回避目的に限定されるものではない。本発明は、VoIP網上の通話要求に関するリクエストの着信先情報(INVITEリクエストのToヘッダ、SetupリクエストのCalled Party Number)をチェックしてカウントする機能を搭載したことにより、ループ回避機能の他に、ループの有無に拘わらず同一ユーザに着信する着信数を制限することができる。したがって、呼処理サーバ間でループ形成される設定となっていない場合であっても、同一ユーザに着信する着信数を制限するという機能を発揮でき、従来技術では簡易な方法で防御が困難であった特定の着信先に対して故意に大量の呼を集中させる攻撃に対しても、上気した通りの簡易な構成で確実に防御することができる。
【図面の簡単な説明】
【0054】
【図1】本発明の一実施の形態に係るソフトスイッチを備えたVoIP網及び公衆電話網からなるネットワーク構成図
【図2】上記一実施の形態におけるソフトスイッチの概念図
【図3】上記一実施の形態において着ユーザカウント用メモリに書き込まれる書込み情報の概念図
【図4】SIPリクエストの構成例を示す図
【図5】上記一実施の形態のソフトスイッチにおいて呼の転送を規制する際のフロー図
【図6】上記一実施の形態のソフトスイッチにおいてカウント値を0クリアするフロー図
【図7】発信端末からリクエストを受けた際のソフトスイッチ間のシーケンス図
【図8】(a)発信端末からソフトスイッチAへ送信されたINVITEの構成図、(b)ソフトスイッチAからソフトスイッチBへ1回目の転送で送信されたINVITEの構成図
【図9】(a)ソフトスイッチBからソフトスイッチAへ1回目の転送で送信されたINVITEの構成図、(b)ソフトスイッチBからソフトスイッチAへ2回目の転送で送信されたINVITEの構成図
【図10】H.323網上のゲートキーパとSIP網上のソフトスイッチとの間にループが形成された状態を示すシーケンス図
【図11】公衆電話網とVoIP網とをゲートウェイ装置を介して接続したネットワーク構成図
【符号の説明】
【0055】
10…VoIP網
11…公衆電話網
12…ゲートウェイ装置
13−1〜13−n…ソフトスイッチ
14…回線交換機
15−1〜15−n、16−1〜16−n、17−1〜17−n…ユーザ端末
20…呼処理手段
21…カウント手段
22…着ユーザカウント用メモリ
23…呼規制手段
24…クリア手段
25…加入者番号
26…カウント値
27…更新時間
【特許請求の範囲】
【請求項1】
VoIP網上で発信側と着信側との間に呼を接続するための処理を行う呼処理手段と、
前記呼処理手段が受信した通話要求に関するリクエストから当該リクエストの着信先情報を取り出して着信先毎にカウントするカウント手段と、
前記呼処理手段が受信したリクエストに指定された着信先について前記カウント値が上限値に達している場合、当該リクエストの転送動作を規制する呼規制手段と、
を具備したことを特徴とする呼制御装置。
【請求項2】
高速アクセス可能な内部メモリに対して前記カウント値の書込み及び読出しを行うことを特徴とする請求項1記載の呼制御装置。
【請求項3】
前記各カウント値にスイープインターバルを設定し、スイープインターバル期間内に変化しなかったカウント値を0クリアすることを特徴とする請求項1又は請求項2記載の呼制御装置。
【請求項4】
前記呼処理手段はSIP(Session Initiation Protocol)に基づいて呼処理を行い、前記カウント手段はINVITEリクエストのToヘッダから着信先情報を取得することを特徴とする請求項1から請求項3の何れかに記載の呼制御装置。
【請求項5】
前記呼処理手段はH.323に基づいて呼処理を行い、前記カウント手段はSetupリクエストのCalled Party Numberから着信先情報を取得することを特徴とする請求項1から請求項3の何れかに記載の呼制御装置。
【請求項6】
VoIP網上で発信側と着信側との間に呼を接続するための処理を行う呼制御方法において、
受信した通話要求に関するリクエストから当該リクエストの着信先情報を取り出して着信先毎にカウントする工程と、
受信したリクエストに指定された着信先について前記カウント値が上限値に達しているか否か判定する工程と、
前記判定の結果、前記カウント値が上限値に達していた場合に当該リクエストの転送動作を規制する工程と、
を具備したことを特徴とする呼制御方法。
【請求項1】
VoIP網上で発信側と着信側との間に呼を接続するための処理を行う呼処理手段と、
前記呼処理手段が受信した通話要求に関するリクエストから当該リクエストの着信先情報を取り出して着信先毎にカウントするカウント手段と、
前記呼処理手段が受信したリクエストに指定された着信先について前記カウント値が上限値に達している場合、当該リクエストの転送動作を規制する呼規制手段と、
を具備したことを特徴とする呼制御装置。
【請求項2】
高速アクセス可能な内部メモリに対して前記カウント値の書込み及び読出しを行うことを特徴とする請求項1記載の呼制御装置。
【請求項3】
前記各カウント値にスイープインターバルを設定し、スイープインターバル期間内に変化しなかったカウント値を0クリアすることを特徴とする請求項1又は請求項2記載の呼制御装置。
【請求項4】
前記呼処理手段はSIP(Session Initiation Protocol)に基づいて呼処理を行い、前記カウント手段はINVITEリクエストのToヘッダから着信先情報を取得することを特徴とする請求項1から請求項3の何れかに記載の呼制御装置。
【請求項5】
前記呼処理手段はH.323に基づいて呼処理を行い、前記カウント手段はSetupリクエストのCalled Party Numberから着信先情報を取得することを特徴とする請求項1から請求項3の何れかに記載の呼制御装置。
【請求項6】
VoIP網上で発信側と着信側との間に呼を接続するための処理を行う呼制御方法において、
受信した通話要求に関するリクエストから当該リクエストの着信先情報を取り出して着信先毎にカウントする工程と、
受信したリクエストに指定された着信先について前記カウント値が上限値に達しているか否か判定する工程と、
前記判定の結果、前記カウント値が上限値に達していた場合に当該リクエストの転送動作を規制する工程と、
を具備したことを特徴とする呼制御方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2008−311722(P2008−311722A)
【公開日】平成20年12月25日(2008.12.25)
【国際特許分類】
【出願番号】特願2007−155089(P2007−155089)
【出願日】平成19年6月12日(2007.6.12)
【出願人】(303067478)株式会社 ネクストジェン (12)
【Fターム(参考)】
【公開日】平成20年12月25日(2008.12.25)
【国際特許分類】
【出願日】平成19年6月12日(2007.6.12)
【出願人】(303067478)株式会社 ネクストジェン (12)
【Fターム(参考)】
[ Back to top ]