JP2014050090A - パケット中継装置及び方法 - Google Patents
パケット中継装置及び方法 Download PDFInfo
- Publication number
- JP2014050090A JP2014050090A JP2012194336A JP2012194336A JP2014050090A JP 2014050090 A JP2014050090 A JP 2014050090A JP 2012194336 A JP2012194336 A JP 2012194336A JP 2012194336 A JP2012194336 A JP 2012194336A JP 2014050090 A JP2014050090 A JP 2014050090A
- Authority
- JP
- Japan
- Prior art keywords
- packet
- server
- network
- address
- delay time
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 12
- 230000005540 biological transmission Effects 0.000 claims abstract description 125
- 230000004044 response Effects 0.000 claims abstract description 92
- 238000012790 confirmation Methods 0.000 claims abstract description 45
- 238000000605 extraction Methods 0.000 claims description 45
- 238000005259 measurement Methods 0.000 claims description 28
- 239000000284 extract Substances 0.000 claims description 10
- 238000012545 processing Methods 0.000 description 93
- 238000012546 transfer Methods 0.000 description 20
- 238000010586 diagram Methods 0.000 description 7
- 238000012544 monitoring process Methods 0.000 description 4
- 238000005520 cutting process Methods 0.000 description 2
- 230000009118 appropriate response Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
【課題】サーバ毎のアプリケーションサービスに対するレスポンスを適切に測定してサーバの負荷分散を行うことができるパケット中継装置及びその制御方法を提供する。
【解決手段】複数のサーバに対してセッション確立用パケットを生成し、ネットワークを介して送信する送信手段と、セッション確立用パケットに対する第1の確認応答パケットをサーバから受信しそれを廃棄する受信手段を備える。送信手段は第1の確認応答パケットの受信に応じて第2の確認応答パケットを対応するサーバに向けて送信し、サーバ毎にセッション確立用パケットの送信時刻と第2の確認応答パケットの送信時刻との差を遅延時間として算出してサーバとの対応関係を作成する。対応関係において遅延時間が小さいサーバの順に優先度を高く設定し、クライアントからパケットを受信したとき受信パケットが示す優先度に対応したサーバに向けて受信パケットをネットワークを介して送信する。
【選択図】図1
【解決手段】複数のサーバに対してセッション確立用パケットを生成し、ネットワークを介して送信する送信手段と、セッション確立用パケットに対する第1の確認応答パケットをサーバから受信しそれを廃棄する受信手段を備える。送信手段は第1の確認応答パケットの受信に応じて第2の確認応答パケットを対応するサーバに向けて送信し、サーバ毎にセッション確立用パケットの送信時刻と第2の確認応答パケットの送信時刻との差を遅延時間として算出してサーバとの対応関係を作成する。対応関係において遅延時間が小さいサーバの順に優先度を高く設定し、クライアントからパケットを受信したとき受信パケットが示す優先度に対応したサーバに向けて受信パケットをネットワークを介して送信する。
【選択図】図1
Description
本発明は、ネットワーク内に存在するクライアントとサーバと間でパケットの中継を行うパケット中継装置及び方法に関する。
複数のクライアント及び複数のサーバが存在するネットワークにおいて、多数のクライアントからの要求によってサービス処理が特定のサーバに短時間に集中すると、そのサーバへの負荷が増大し、これによりレスポンス低下を招く結果となる。このような特定のサーバへの負荷集中を回避する負荷分散技術が既に知られている。
従来のIPパケット中継装置では、負荷分散技術としてPingパケット(ICMP echo request/replyパケット)を使用してサーバのレスポンスを監視する方法が取られている(特許文献1参照)。
特許文献1に示されたIPパケット中継装置では、定期的にPing要求パケットを作成して各サーバに向けて送信し、サーバ毎のパケット送信時間を記録し、Ping要求パケットに対してサーバから送信されたPing応答パケットを受信し、サーバ毎のパケット受信時間を記録し、サーバ毎の送信時間と受信時間との差である遅延時間をレスポンスとして算出し、遅延時間の小さいサーバの順にパケットの優先度を1,2,3,...の如く設定することが行われる。これにより、パケット中継動作において受信したパケットのうちの優先度が高いパケットほど遅延時間の小さいサーバ宛に送信される。
かかる従来のIPパケット中継装置においては、Pingパケットを使用してIPネットワークの負荷状態を含むサーバのレスポンスを測定することが行われているので、レイヤ1〜3の如き低レイヤに対するサーバのレスポンスが測定されるだけである。一方、実際に利用するアプリケーションサービスではレイヤ4以上の高レイヤが用いられるので、Pingパケットを使用して測定されたレスポンスが必ずしもサーバ毎の適正なレスポンスを表していないという問題があった。
また、IPネットワーク及びサーバにおいてPingパケットの優先度が高く設定されている場合があり、このような場合には、IPネットワーク及びサーバにおいてPingパケットが他のパケットよりも優先的に転送されてしまう可能性もあり、アプリケーションサービスを担うパケットに対するレスポンスとはかけ離れて良好なレスポンスとなってしまう。よって、Pingパケットを使用してサーバのレスポンスを測定しても実際のアプリケーションサービスにおけるレスポンスを必ずしも正確に測定することができないという問題があった。
そこで、本発明の目的は、サーバ毎のアプリケーションサービスに対するレスポンスを適切に測定してサーバの負荷分散を行うことができるパケット中継装置及び方法を提供することである。
本発明のパケット中継装置は、ネットワーク内の複数のサーバとクライアントの間でパケットの中継を行うパケット中継装置であって、前記複数のサーバ各々についてセッション確立用パケットを生成してそれを対応するサーバに向けて前記ネットワークを介して送信する送信手段と、前記セッション確立用パケットに対する前記複数のサーバの各々からの本パケット中継装置宛の第1の確認応答パケットを前記ネットワークを介して受信してそれを廃棄する受信手段と、を備え、前記送信手段は、前記第1の確認応答パケットの受信に応じて第2の確認応答パケットを対応するサーバに向けて前記ネットワークを介して送信し、前記サーバ毎に前記セッション確立用パケットの送信時刻と前記第2の確認応答パケットの送信時刻と差を遅延時間として算出して前記サーバと前記遅延時間との対応関係を作成し、前記対応関係において前記遅延時間が小さいサーバの順に前記複数のサーバに優先度を高く設定し、前記ネットワークを介して前記クライアントから中継すべきパケットを受信したとき当該受信パケットが示す優先度に対応したサーバに向けて前記受信パケットを前記ネットワークを介して送信することを特徴としている。
本発明のパケット中継方法は、ネットワーク内の複数のサーバとクライアントの間でパケットの中継を行うパケット中継装置の中継方法であって、前記複数のサーバ各々についてセッション確立用パケットを生成してそれを対応するサーバに向けて前記ネットワークを介して送信するステップと、前記セッション確立用パケットに対する前記複数のサーバの各々からの第1の確認応答パケットを前記ネットワークを介して受信してそれを廃棄するステップと、前記第1の確認応答パケットの受信に応じて第2の確認応答パケットを対応するサーバに向けて前記ネットワークを介して送信するステップと、前記サーバ毎に前記セッション確立用パケットの送信時刻と前記第2の確認応答パケットの送信時刻と差を遅延時間として算出して前記サーバと前記遅延時間との対応関係を作成するステップと、前記対応関係において前記遅延時間が小さいサーバの順に前記複数のサーバに優先度を高く設定するステップと、前記ネットワークを介して前記クライアントから中継すべきパケットを受信したとき当該受信パケットが示す優先度に対応したサーバに向けて前記受信パケットを前記ネットワークを介して送信するステップと、を含むことを特徴としている。
本発明のパケット中継装置及び方法においては、サーバとのセッション確立までの時間をサーバの遅延時間として測定することで、PingパケットやEthernet OAMのLoop backパケットのように低レイヤの監視のみを行うのではなく、実際に利用するアプリケーションサービスと同一レイヤにてサーバのレスポンスを監視することが可能となる。よって、サーバ毎のアプリケーションサービスに対するレスポンスを適切に測定してサーバの負荷分散を行うことができる。
以下、本発明の実施例を、図面を参照しつつ詳細に説明する。
図1は本発明の実施例1のIPパケット中継装置10を含むIPネットワークシステムを示している。このIPネットワークシステムは、IPパケット中継装置10の他に、複数のクライアント211〜21M(Mは2以上の整数)及び複数のサーバ221〜22N(Nは2以上の整数)を備えている。IPパケット中継装置10、クライアント211〜21M、及びサーバ221〜22NはIPネットワーク23に各々接続されている。このネットワーク23との接続は有線及び無線のいずれであっても良い。
クライアント211〜21Mはパーソナルコンピュータ、ノートパソコン、スマートホン等の端末装置である。
サーバ221〜22Nはサーバコンピュータからなり、サービスを提供することができるウェブサーバ、メールサーバ、SIPサーバ等のサーバである。
IPパケット中継装置10は複数の回線処理部111〜11S(Sは2以上の整数)及びスイッチ部12を有している。図1には回線処理部111の構成のみを示しているが、回線処理部111〜11Sは同一構成を有している。
回線処理部111は、レイヤ1・2受信処理部31、TCP(Transmission Control Protocol)応答抽出部32、受信パケットバッファ33、優先度及び宛先判定部34、TCPシーケンス管理部35、TCP要求生成部36、時刻管理部37、遅延時間判定部38、送信パケットバッファ39、TCP要求送信確認部40、及びレイヤ1・2送信処理部41を備えている。
レイヤ1・2受信処理部31、TCP応答抽出部32、及び受信パケットバッファ33は受信手段を構成している。また、TCPシーケンス管理部35、TCP要求生成部36、遅延時間判定部38、送信パケットバッファ39、TCP要求送信確認部40、及びレイヤ1・2送信処理部41は送信手段を構成している。
レイヤ1・2受信処理部31はIPネットワーク23から入力されたパケットを受信してそのパケットに対して物理層及びデータリンク層の終端処理を行う。レイヤ1・2受信処理部31の出力にはTCP応答抽出部32が接続されており、レイヤ1・2受信処理部31で終端処理されたパケットはTCP応答抽出部32に供給される。
TCP応答抽出部32は、サーバの応答を確認するために受信パケットから、TCPのセッション確立動作中にSYN ACKパケットを抽出し、また、セッション切断動作中にACKパケット及びFINパケットを抽出する。これらのパケットはいずれも自身のIPパケット中継装置10に割り当てられたIPアドレスを宛先とし、サーバ221〜22NのいずれかのIPアドレスを送信元とするパケットである。TCP応答抽出部32の出力には受信パケットバッファ33が接続されており、TCP応答抽出部32で抽出されるパケット以外のTCPパケット及びその他のパケットはTCP応答抽出部32から受信パケットバッファ33に転送される。
受信パケットバッファ33はTCP応答抽出部32から転送されたパケットを保存する。また、受信パケットバッファ33は優先度及び宛先判定部34に接続されている。
優先度及び宛先判定部34は、受信パケットバッファ33からパケットを取り出し、そのパケットの優先度で定まるサーバn(サーバ221〜22Nのうちの1つ)のIPアドレス及び回線番号を示す装置ヘッダをパケットに付加し、その後、パケットをスイッチ部12に転送する。
優先度及び宛先判定部34は、図2に示すように、優先度、サーバ番号、遅延時間、回線番号、及び宛先IPアドレスについての対応関係を示す優先度テーブルを内部メモリに保存している。この優先度テーブルを用いてパケットの宛先IPアドレスの書き換え及び上記した装置ヘッダを作成してそのパケットに付与する。回線番号はサーバ毎に定められ、回線処理部111〜11Sのいずれか1つに対応している。
スイッチ部12は、回線処理部111〜11S各々の優先度及び宛先判定部34と送信パケットバッファ39とに接続されている。スイッチ部12は、優先度及び宛先判定部34から転送されたパケットをそのパケットの装置ヘッダに示された回線番号に対応する回線処理部(回線処理部111〜11Sのうちの1つ)の送信パケットバッファ39に供給する。
送信パケットバッファ39はスイッチ部12、TCP要求生成部36及びTCP要求送信確認部40の各々に接続されており、スイッチ部12からパケットが転送されると、それを保存する。
TCP要求生成部36は、サーバ221〜22N各々の負荷状態を確認するため、本IPパケット中継装置10に割り当てられたIPアドレスを送信元、サーバ221〜22N各々のIPアドレスを宛先として、定期的に、TCPのセッション確立動作中にSYNパケットと、ACKパケットとを生成し、また、同様に、セッション切断動作中にFINパケットと、ACKパケットとを生成する。これらのパケットは遅延時間測定用のパケットであり、生成されると送信パケットバッファ39に供給され、そこに保存される。
TCP要求送信確認部40は、送信パケットバッファ39とレイヤ1・2送信処理部41との間に配置されており、送信パケットバッファ39に保存されたパケットを保存された順にレイヤ1・2送信処理部41に供給する。また、TCP要求送信確認部40は、TCP要求生成部36で生成されたセッション確立動作中にSYNパケット及びACKパケットの各々をレイヤ1・2送信処理部41に供給する際には、それらのパケットが本TCP要求送信確認部40を通過する時刻を遅延時間判定部38に通知する。
レイヤ1・2送信処理部41はTCP要求送信確認部40から供給されたパケットについて物理層及びデータリンク層の終端処理を行い、当該パケットをIPネットワーク23に送出する。
TCPシーケンス管理部35は、TCP応答抽出部32及びTCP要求生成部36に接続されており、TCP要求生成部36における上記の遅延時間測定用のパケット(セッション確立動作中のSYN ACKパケット、並びにセッション切断動作中のFINパケット及びACKパケット)の生成を管理する。具体的には、セッション確立動作においては、遅延時間測定用のSYNパケットを生成する時刻が来た場合に、TCP要求生成部36へセッション確立用のSYNパケットを生成する命令を送る。それに対してTCP要求生成部36からSYNパケットの生成完了の通知を受け、その後、TCP応答抽出部32からSYN ACKパケット受信の通知を受けると、TCP要求生成部36に対してACKパケットの生成を命令する。また、TCP要求生成部36からACKパケットの生成完了の通知を受ける。セッション切断においては、TCP要求生成部36へセッション切断用のFINパケットを生成する命令を送る。それに対してTCP要求生成部36からFINパケットの生成完了の通知を受ける。その後、TCP応答抽出部32からACKパケット受信の通知、更にFINパケット受信の通知を受けると、TCP要求生成部36に対してACKパケットの生成を命令する。また、TCP要求生成部36からACKパケットの生成完了の通知を受ける。
時刻管理部37は時刻を計数するカウンタを有し、TCP応答抽出部32、TCP要求生成部36及びTCP要求送信確認部40に現在の時刻情報を供給する。TCP要求送信確認部40はこの時刻情報を参照してパケットの通過時刻を遅延時間判定部38に提供する。
遅延時間判定部38は、TCP要求送信確認部40から供給されるセッション確立動作中にSYNパケットが通過した時刻とACKパケットが通過した時刻とに応じてサーバn(221〜22Nのうちの1つ)に対する遅延時間を算出し、優先度及び宛先判定部34に通知する。遅延時間はサーバ221〜22N全てについて算出され、各々優先度及び宛先判定部34に通知される。
優先度及び宛先判定部34は、優先度テーブルを図示しないメモリに保存して有しており、これらのサーバ各々の遅延時間の最小値のサーバを上記した優先度テーブルの優先度1に対応させ、優先度テーブルの優先度1についてのサーバ番号、遅延時間、回線番号、及び宛先IPアドレスをそれまでの内容から書き換える。更に、その遅延時間がその次に小さいサーバを優先度テーブルの優先度2に対応させ、優先度テーブルの優先度2についてのサーバ番号、遅延時間、回線番号、及び宛先IPアドレスをそれまでの内容から書き換える。このように遅延時間が小さい順に優先度を1,2,3,・・・のように定めて優先度テーブルの各項目を更新することが行われる。なお、遅延時間として今回算出された遅延時間をそのまま用いて優先度に対応したサーバを決定しているが、過去T(min)内に測定された遅延時間の平均値、最小値、又は最大値を用いて、或いは考慮して優先度に対応したサーバを決定しても良い。
次に、IPパケット中継装置10の動作モードが遅延時間測定モードとなった時におけるIPパケット中継装置10とサーバnとの間におけるパケットの送受信を図3のTCPシーケンス図を用いて説明する。この遅延時間測定モードのシーケンスは、全てのサーバ221〜22Nについて時間Tiの間隔で繰り返される。
先ず、IPパケット中継装置10のサーバnに対応した回線処理部S(回線処理部111〜11Sのうちの1つ)のTCP要求生成部36が本IPパケット中継装置10に割り当てられたIPアドレスを送信元IPアドレスとし、サーバnのIPアドレスを宛先IPアドレスとして、TCPのセッション確立動作中にSYNパケット(セッション確立用パケット)を生成する(ステップS1)。このTCP要求生成部36で生成されたSYNパケットは送信パケットバッファ39に保存された後、そこから取り出されてTCP要求送信確認部40を通過してレイヤ1・2送信処理部41からIPネットワーク23を介してサーバnに対して送信される(ステップS2)。このSYNパケットがTCP要求送信確認部40を通過する時刻taが遅延時間判定部38に遅延時間測定のために通知される。
サーバnはSYNパケットを受信すると、それに対する応答としてSYN ACKパケット(第1の確認応答パケット)を生成し(ステップS3)、そのSYN ACKパケットをIPネットワーク23を介してIPパケット中継装置10に対して送信する(ステップS4)。SYN ACKパケットの送信元IPアドレスはサーバnに割り当てられたIPアドレスであり、宛先IPアドレスはIPパケット中継装置10に割り当てられたIPアドレスである。
SYN ACKパケットはIPパケット中継装置10のサーバnに対応した回線処理部Sで受信される。回線処理部SのTCP応答抽出部32は、そのSYN ACKパケットがIPパケット中継装置10宛に送信されたSYN ACKパケットであることを判断し、それを受信パケットバッファ33には転送せず、再び、IPネットワーク23に送出されないように廃棄する(ステップS5)。TCP応答抽出部32によるSYN ACKパケットの抽出はTCPシーケンス管理部35に通知される。
その後、回線処理部SのTCP要求生成部36がTCPシーケンス管理部35の命令に応じて、本IPパケット中継装置10に割り当てられたIPアドレスを送信元IPアドレスとし、サーバnのIPアドレスを宛先IPアドレスとして、TCPのセッション確立動作中にACKパケット(第2の確認応答パケット)を生成する(ステップS6)。このTCP要求生成部36で生成されたACKパケットは送信パケットバッファ39に保存された後、そこから取り出されてTCP要求送信確認部40を通過してレイヤ1・2送信処理部41からIPネットワーク23を介してサーバnに対して送信される(ステップS7)。このACKパケットがTCP要求送信確認部40を通過する時刻tbは遅延時間判定部38に遅延時間測定のために通知される。
このACKパケットがサーバnで受信されることにより、本IPパケット中継装置10とサーバnとの間のTCPセッションが確立される。
遅延時間判定部38では、SYNパケットが通過した時刻taとACKパケットが通過した時刻tbとに応じてサーバnに対する遅延時間tb−taが算出され、その遅延時間は優先度及び宛先判定部34に通知される。優先度及び宛先判定部34ではサーバ221〜22N各々の遅延時間に応じて上記したように遅延時間が小さい順に優先度を1,2,3,・・・のように定めて優先度テーブルの各項目を更新することが行われる。
そして、TCPセッション確立によるIPネットワーク23の帯域を無駄に消費することを回避するために、直ちにTCPシーケンス管理部35の命令に応じてTCP要求生成部36は本IPパケット中継装置10に割り当てられたIPアドレスを送信元IPアドレスとし、サーバnのIPアドレスを宛先IPアドレスとして、TCPのセッション切断用のFINパケット(第1のセッション切断用パケット)を生成する(ステップS8)。このTCP要求生成部36で生成されたFINパケットは送信パケットバッファ39に保存された後、そこから取り出されてTCP要求送信確認部40を通過してレイヤ1・2送信処理部41からIPネットワーク23を介してサーバnに対して送信される(ステップS9)。
サーバnはFINパケットを受信すると、それに対する応答としてACKパケットを生成し(ステップS10)、そのACKパケット(第3の確認応答パケット)をIPネットワーク23を介してIPパケット中継装置10に対して送信する(ステップS11)。このACKパケットの送信元IPアドレスはサーバnに割り当てられたIPアドレスであり、宛先IPアドレスはIPパケット中継装置10に割り当てられたIPアドレスである。
ACKパケットはIPパケット中継装置10のサーバnに対応した回線処理部Sで受信される。回線処理部SのTCP応答抽出部32は、そのACKパケットがIPパケット中継装置10宛に送信されたACKパケットであることを判断し、それを受信パケットバッファ33には転送せず、再び、IPネットワーク23に送出されないように廃棄する(ステップS12)。
また、サーバnはステップS11のACKパケットの送信後、FINパケット(第2のセッション切断用パケット)を生成し(ステップS13)、そのFINパケットをIPネットワーク23を介してIPパケット中継装置10に対して送信する(ステップS14)。このFINパケットの送信元IPアドレスはサーバnに割り当てられたIPアドレスであり、宛先IPアドレスはIPパケット中継装置10に割り当てられたIPアドレスである。
ステップS14で送信されたFINパケットはIPパケット中継装置10のサーバnに対応した回線処理部Sで受信される。回線処理部SのTCP応答抽出部32は、そのFINパケットがIPパケット中継装置10宛に送信されたFINパケットであることを判断し、それを受信パケットバッファ33には転送せず、再び、IPネットワーク23に送出されないように廃棄する(ステップS15)。
また、回線処理部SのTCP要求生成部36がTCPシーケンス管理部35の命令に応じて、FINパケットに応答するために本IPパケット中継装置10に割り当てられたIPアドレスを送信元IPアドレスとし、サーバnのIPアドレスを宛先IPアドレスとして、ACKパケット(第4の確認応答パケット)を生成する(ステップS16)。このTCP要求生成部36で生成されたACKパケットは送信パケットバッファ39に保存された後、そこから取り出されてTCP要求送信確認部40を通過してレイヤ1・2送信処理部41からIPネットワーク23を介してサーバnに対して送信される(ステップS17)。
このACKパケットがサーバnで受信されることにより、本IPパケット中継装置10とサーバnとの間のTCPセッションが切断され、IPパケット中継装置10では遅延時間測定モードが終了し、通常運用モードとなる。
次いで、IPパケット中継装置10の動作モードが通常運用モードとなった時におけるIPパケット中継装置10と、クライアントm(クライアント211〜21Mのうちの1つ)及びサーバn(サーバ221〜22Nのうちの1つ)との間におけるパケットの送受信を図4のTCPシーケンス図を用いて説明する。
クライアントmからサーバnに対してTCPのセッション確立の要求がある場合には、クライアントmではSYNパケットはクライアントmのIPアドレスを送信元IPアドレスとし、サーバnのIPアドレスを宛先IPアドレスとしてIPネットワーク23に送出される(ステップS21)。IPパケット中継装置10では、そのSYNパケットがレイヤ1・2受信処理部31で受信されると、IPパケット中継装置10宛のパケットではないためTCP応答抽出部32にて廃棄せずに、受信パケットバッファ33へ転送されて、そこに一時的に保存される。優先度及び宛先判定部34によって受信パケットバッファ33からそのSYNパケットが取り出され、優先度テーブルを用いてそのSYNパケットの優先度で定まるサーバnのIPアドレスを示す装置ヘッダをパケットに付加し、その後、SYNパケットをスイッチ部12に転送することが行われる。優先度及び宛先判定部34からスイッチ部12に転送されたSYNパケットはスイッチ部12によってそのパケットの装置ヘッダに示された回線番号に対応する回線処理部(回線処理部111〜11Sのうちの1つ)の送信パケットバッファ39に供給され、そこに一時的に保存される。送信パケットバッファ39に保存されたSYNパケットは保存された順にTCP要求送信確認部40によって取り出されてレイヤ1・2送信処理部41に供給され、レイヤ1・2送信処理部41によってサーバnに向けてIPネットワーク23に送出される(ステップS22)。
サーバnはSYNパケットを受信すると、それに応答するために、サーバnのIPアドレスを送信元IPアドレスとし、クライアントmのIPアドレスを宛先IPアドレスとしてSYN ACKパケットをIPネットワーク23に送出する(ステップS23)。IPパケット中継装置10では、そのSYN ACKパケットがレイヤ1・2受信処理部31で受信されると、IPパケット中継装置10宛のパケットではないため、SYN ACKパケットはSYNパケットの場合と同様に廃棄されることなく処理されてレイヤ1・2送信処理部41によってクライアントmに向けてIPネットワーク23に送出される(ステップS24)。
クライアントmはSYN ACKパケットを受信すると、それに応答するために、クライアントmのIPアドレスを送信元IPアドレスとし、サーバnのIPアドレスを宛先IPアドレスとしてACKパケットをIPネットワーク23に送出する(ステップS25)。IPパケット中継装置10では、そのACKパケットがレイヤ1・2受信処理部31で受信されると、IPパケット中継装置10宛のパケットではないため、ACKパケットはSYNパケットやSYN ACKパケットの場合と同様に廃棄されることなく処理されてレイヤ1・2送信処理部41によってサーバnに向けてIPネットワーク23に送出される(ステップS26)。
このACKパケットがサーバnで受信されることにより、本IPパケット中継装置10を介したクライアントmとサーバnとの間のTCPセッションが確立される。よって、パケットによる画像データや音声データ等のデータ転送が実行される(ステップS27)。
データ転送が終了すると、クライアントmからFINパケットが本IPパケット中継装置10を介してサーバnに送出され(ステップS28,S29)、それに応答してサーバnからACKパケットが本IPパケット中継装置10を介してクライアントmに送出される(ステップS30,S31)。更に、サーバnからFINパケットが本IPパケット中継装置10を介してクライアントmに送出される(ステップS32,S33)。それに応答してクライアントmからACKパケットが本IPパケット中継装置10を介してサーバnに送出される(ステップS34,S35)。このACKパケットがサーバnで受信されることにより、本IPパケット中継装置10を介したクライアントmとサーバnとの間のTCPセッションが切断される。これらのFINパケット及びACKパケットについてはIPパケット中継装置10宛のパケットではないため、TCPセッション確立のためのパケットと同様にIPパケット中継装置10で廃棄されることなくクライアントmとサーバnとの間で転送される。
このように実施例1においては、TCPのセッション確立までの時間をサーバの遅延時間として測定することで、Ping(ICMPのecho request/reply)パケットやEthernet OAMのLoop backパケットのように低レイヤの監視のみを行うのではなく、実際に利用するアプリケーションサービスと同一レイヤにてサーバのレスポンスを監視することが可能となる。
また、遅延時間測定後、確立されているTCPセッションを直ちに切断するので、TCPセッション確立によるIPネットワークの無駄な帯域消費を防ぐことができる。
図5は本発明の実施例2のIPパケット中継装置10A,10Bを含むIPネットワークシステムを示している。このIPネットワークシステムは、呼制御プロトコルの1つであるSIP(Session Initiation Protocol)を利用し、クライアント211〜21MはSIPクライアントであり、サーバ221〜22NはSIPサーバである。
SIPによるパケットの送受信にはデフォルトのプロトコルとしてUDP(User Datagram Protocol)が用いられ、IPパケット中継装置10、クライアント211〜21M及びサーバ221〜22NではUDPパケット、TCPパケットを含む制御パケットの送受信が可能にされている。
IPパケット中継装置10A,10Bは同一の構成を有し、複数の回線処理部111〜11S(Sは2以上の整数)及びスイッチ部12を有している。図5にはIPパケット中継装置10Aの回線処理部111の構成のみを示しているが、回線処理部111〜11Sは同一構成を有している。また、図5の回線処理部111において図1の実施例1と同一部分は同一符号を用いて示している。
回線処理部111は、レイヤ1・2受信処理部31、SIP応答抽出部51、受信パケットバッファ33、優先度及び宛先判定部34、SIPシーケンス管理部52、SIP要求生成部53、時刻管理部37、遅延時間判定部38、送信パケットバッファ39、SIP要求送信確認部54、及びレイヤ1・2送信処理部41を備えている。
SIP要求生成部53は自身のIPパケット中継装置10A(10B)に割り当てられたSIP URI(Uniform Resource Identifier)を、IPパケット中継装置10A(10B)に割り当てられたIPアドレスを送信元アドレスとし、サーバn(サーバ221〜22Nのうちの1つ)のIPアドレスを宛先として、SIP URI登録時のREGISTERパケットを生成する。
また、SIP要求生成部53はサーバの負荷状態としての遅延時間を測定する遅延時間測定モードでは、自身のIPパケット中継装置10A(10B)に割り当てられたIPアドレス/SIP URIを送信元IPアドレス/SIP URIとし、サーバnのIPアドレスを宛先IPアドレスとし、対向のIPパケット中継装置10BのSIP URIを宛先SIP URIとし、SIPのセッション確立動作中にINVITEパケット及びACKパケットを各々生成し、更に、セッション切断動作中にBYEパケットを生成する。遅延時間測定モードはSIPシーケンス管理部52の命令に応じて定期的に実行される。また、遅延時間測定モードにおいてINVITEパケット及びACKパケットは遅延時間測定用に生成され、BYEパケットは遅延時間測定のSIPのセッションを切断するために生成される。
SIP要求送信確認部54は、SIP要求生成部53で生成した遅延時間測定用INVITEパケット及びACKパケットの各々が本SIP要求送信確認部54を通過する時刻を遅延時間判定部38に通知する。
遅延時間判定部38は、遅延時間測定モードにおいてSIP要求送信確認部54から供給されるINVITEパケットの通過した時刻と、ACKパケットの通過した時刻とに応じて遅延時間を算出する。
SIP応答抽出部51は、サーバの応答を確認するため、SIPのURI登録時の200 OKパケット、並びに遅延時間測定モードにおける100 Tryingパケット、180 Ringingパケット、及び200 OKパケットを抽出する。またクライアント側エラーの300番台パケット、サーバ側エラーの400番台パケットも抽出する。URI登録時を除いて、いずれの抽出パケットは自身のIPパケット中継装置10Aに割り当てられたIPアドレス/ SIP URIを宛先IPアドレス/ SIP URIとし、サーバnのIPアドレスを送信元IPアドレスとし、対向のIPパケット中継装置10BのSIP URIを送信元SIP URIとするパケットであり、これ以外のSIPパケット、及びその他のパケットについては受信パケットバッファ33に転送する。URI登録時に抽出するパケットはIPパケット中継装置10Aに割り当てられたIPアドレスを宛先IPアドレスとし、サーバnのIPアドレスを送信元IPアドレスとするパケットであり、これ以外のREGISTERパケット、及びその他のパケットについては受信パケットバッファ33に転送する。
SIPシーケンス管理部52は、SIP応答抽出部51及びSIP要求生成部53に接続されており、遅延時間測定モードにおけるSIP要求生成部53におけるパケット(セッション確立動作中のINVITEパケット及びACKパケット、並びにセッション切断動作中のBYEパケット)の生成を管理する。具体的には、セッション確立動作においては、遅延時間測定用のINVITEパケットを生成する時刻が来た場合に、SIP要求生成部53へセッション確立用のINVITEパケットを生成する命令を送る。それに対してSIP要求生成部53からINVITEパケットの生成完了の通知を受け、その後、SIP応答抽出部51から100 Tryingパケット、180 Ringingパケット、そして200 OKパケット受信の通知を順に受けると、SIP要求生成部53に対してACKパケットの生成を命令する。また、SIP要求生成部53からACKパケットの生成完了の通知を受ける。セッション切断においては、SIP要求生成部53へセッション切断用のBYEパケットを生成する命令を送る。それに対してSIP要求生成部36からBYEパケットの生成完了の通知を受ける。その後、SIP応答抽出部51から200 OKパケット受信の通知を受けると、遅延時間測定モードを終了する。
また、SIPシーケンス管理部52は、遅延時間測定モードにおいて、IPパケット中継装置10A自身宛のクライアント側エラー300番台パケット、若しくはサーバ側エラー400番台パケットを受信したことがSIP応答抽出部51から通知された場合には、パケット再送が設定されているならば直前のINVITEパケット又はBYEパケットの再送をSIP要求生成部53に命令する。パケット再送が設定されていない場合は、間隔Tiだけ待って次の周期にINVITEパケットの送信から再度開始の命令を行うか、又はセッション確立中ならばBYEパケットの生成をSIP要求生成部53に命令してセッションを切断する。
その他の実施例2の構成については実施例1と同様であるので、ここでの更なる説明は省略される。
次に、IPパケット中継装置10A,10Bの動作モードがURI登録モードとなった時におけるIPパケット中継装置10A,10Bとサーバn(サーバ221〜22Nのうちのいずれか1つ)との間におけるパケットの送受信を図6のシーケンス図を用いて説明する。このURI登録モードではIPパケット中継装置10A,10B各々のSIP URIを全てのサーバ221〜22Nに登録することが行われる。
IPパケット中継装置10Aにおいては動作モードがURI登録モードになると、SIPシーケンス管理部52がSIP要求生成部53に対してURI登録の命令が通知される。この命令に応じてSIP要求生成部53ではIPパケット中継装置10Aに割り当てられたIPアドレスを送信元IPアドレスとし、サーバnのIPアドレスを宛先IPアドレスとし、更にIPパケット中継装置10Aに割り当てられたSIP URIを登録情報としたREGISTERパケットを生成する(ステップS51)。このSIP要求生成部53で生成されたREGISTERパケットは送信パケットバッファ39に保存された後、そこから取り出されてSIP要求送信確認部54を通過してレイヤ1・2送信処理部41からIPネットワーク23を介してサーバnに対して送信される(ステップS52)。
サーバnはREGISTERパケットを受信すると、そのREGISTERパケットに応じてSIP URIを登録し(ステップS53)、その応答として200 OKパケットを生成し(ステップS54)、その200 OKパケットをIPパケット中継装置10Aに向けてIPネットワーク23に送出する(ステップS55)。
200 OKパケットはIPパケット中継装置10Aのサーバnに対応した回線処理部Sで受信される。回線処理部SのSIP応答抽出部51は、その200 OKパケットがIPパケット中継装置10A宛に送信されたパケットであることを判断し、それを受信パケットバッファ33には転送せず、再び、IPネットワーク23に送出されないように廃棄する(ステップS56)。
IPパケット中継装置10Bとサーバnとの間においてもステップS61〜S66で示すように同様にREGISTERパケット及び200 OKパケットの送受信が行われ、IPパケット中継装置10Bに割り当てられたSIP URIがサーバnに登録される。
次いで、IPパケット中継装置10Aの動作モードが遅延時間測定モードとなった時におけるIPパケット中継装置10A,10B各々とサーバnとの間におけるパケットの送受信を図7のシーケンス図を用いて説明する。この遅延時間測定モードのシーケンスは、全てのサーバ221〜22Nについて時間Tiの間隔で繰り返される。
先ず、IPパケット中継装置10Aのサーバnに対応した回線処理部S(回線処理部111〜11Sのうちの1つ)のSIP要求生成部53が本IPパケット中継装置10Aに割り当てられたIPアドレス及びSIP URIを送信元IPアドレス及び送信元SIP URIとし、サーバnのIPアドレスを宛先IPアドレスとし、IPパケット中継装置10BのSIP URIを宛先SIP URIとして、SIPのセッション確立のためにINVITEパケット(セッション確立用パケット)を生成する(ステップS71)。このSIP要求生成部53で生成されたINVITEパケットは送信パケットバッファ39に保存された後、そこから取り出されてSIP要求送信確認部54を通過してレイヤ1・2送信処理部41からIPネットワーク23を介してサーバnに対して送信される(ステップS72)。このINVITEパケットがSIP要求送信確認部54を通過する時刻taが遅延時間判定部38に遅延時間測定のために通知される。
サーバnはINVITEパケットを受信すると、INVITEパケットの宛先SIP URIであるIPパケット中継装置10BにINVITEパケットを転送するためにそれをIPネットワーク23に送出する(ステップS73)。ステップS73のINVITEパケットの送信元IPアドレスはサーバnのIPアドレスであり、宛先IPアドレスはIPパケット中継装置10BのIPアドレスであり、送信元SIP URIはIPパケット中継装置10AのSIP URIであり、宛先SIP URIはIPパケット中継装置10BのSIP URIである。また、サーバnはIPパケット中継装置10AからINVITEパケットを受信してそれを処理していることをIPパケット中継装置10Aに知らせるために100 Tryingパケットを生成し(ステップS74)、それをIPネットワーク23に送出する(ステップS75)。100 Tryingパケットの送信元IPアドレスはサーバnのIPアドレスであり、宛先IPアドレスはIPパケット中継装置10AのIPアドレスであり、送信元SIP URIはIPパケット中継装置10BのSIP URIであり、宛先SIP URIはIPパケット中継装置10AのSIP URIである。
100 TryingパケットはIPパケット中継装置10Aのサーバnに対応した回線処理部Sで受信される。回線処理部SのSIP応答抽出部51は、その100 TryingパケットがIPパケット中継装置10A宛に送信されたパケットであることを判断し、それを受信パケットバッファ33には転送せず、再び、IPネットワーク23に送出されないように廃棄する(ステップS76)。SIP応答抽出部51による100 Tryingパケットの抽出はSIPシーケンス管理部52に通知される。
IPパケット中継装置10Bでは、INVITEパケットはIPパケット中継装置10Bのサーバnに対応した回線処理部Sで受信される。回線処理部SのSIP応答抽出部51は、そのINVITEパケットがIPパケット中継装置10B宛に送信されたINVITEパケットであることを判断し、それを受信パケットバッファ33には転送せず、再び、IPネットワーク23に送出されないように廃棄する(ステップS77)。そのINVITEパケットの受信は当該回線処理部SのSIPシーケンス管理部52に通知されるので、SIP要求生成部53がSIPシーケンス管理部52の命令に応じて、180 Ringingパケットを生成し(ステップS78)、更に200 OKパケットを生成する(ステップS82)。このSIP要求生成部53で生成された180 Ringingパケット及び200 OKパケット各々は送信パケットバッファ39に保存された後、そこから取り出されてSIP要求送信確認部54を通過してレイヤ1・2送信処理部41からIPネットワーク23を介してサーバnに対して送信される(ステップS79,S83)。180 Ringingパケット及び200 OKパケット各々は、当該SIP要求生成部53において、IPパケット中継装置10Bに割り当てられたIPアドレスを送信元IPアドレスとし、サーバnのIPアドレスを宛先IPアドレスとし、IPパケット中継装置10BのSIP URIを送信元SIP URIとし、IPパケット中継装置10AのSIP URIを宛先SIP URIとして生成される。
サーバnは180 Ringingパケット及び200 OKパケットを個別に受信する毎に、パケットの宛先SIP URIであるIPパケット中継装置10Aに180 Ringingパケット及び200 OKパケット(第1の確認応答パケット)を転送するためにそれをIPネットワーク23に送出する(ステップS80,S84)。この180 Ringingパケット及び200 OKパケット各々の送信元IPアドレスはサーバnのIPアドレスであり、宛先IPアドレスはIPパケット中継装置10AのIPアドレスであり、送信元SIP URIはIPパケット中継装置10BのSIP URIであり、宛先SIP URIはIPパケット中継装置10AのSIP URIである。
サーバnからの180 Ringingパケット及び200 OKパケットはIPパケット中継装置10Aのサーバnに対応した回線処理部Sで受信される。回線処理部SのSIP応答抽出部51は、その180 Ringingパケット及び200 OKパケットがIPパケット中継装置10A宛に送信されたパケットであることを判断し、それを受信パケットバッファ33には転送せず、再び、IPネットワーク23に送出されないように廃棄する(ステップS81,S85)。SIP応答抽出部51による180 Ringingパケット及び200 OKパケット各々の抽出はSIPシーケンス管理部52に通知される。
その後、回線処理部SのSIP要求生成部53がSIPシーケンス管理部52の命令に応じて、IPパケット中継装置10Aに割り当てられたIPアドレス及びSIP URIを送信元IPアドレス及び送信元SIP URIとし、サーバnのIPアドレスを宛先IPアドレスとし、IPパケット中継装置10Bに割り当てられたSIP URIを宛先SIP URIとして、ACKパケット(第2の確認応答パケット)を生成する(ステップS86)。このSIP要求生成部53で生成されたACKパケットは送信パケットバッファ39に保存された後、そこから取り出されてSIP要求送信確認部54を通過してレイヤ1・2送信処理部41からIPネットワーク23を介してサーバnに対して送信される(ステップS87)。このACKパケットがSIP要求送信確認部54を通過する時刻tbは遅延時間判定部38に遅延時間測定のために通知される。
サーバnはACKパケットを受信すると、ACKパケットの宛先SIP URIであるIPパケット中継装置10BにACKパケットを転送するためにそれをIPネットワーク23に送出する(ステップS88)。ステップS88のACKパケットの送信元IPアドレスはサーバnのIPアドレスであり、宛先IPアドレスはIPパケット中継装置10BのIPアドレスであり、送信元SIP URIはIPパケット中継装置10AのSIP URIであり、宛先SIP URIはIPパケット中継装置10BのSIP URIである。
IPパケット中継装置10Bでは、ACKパケットはIPパケット中継装置10Bのサーバnに対応した回線処理部Sで受信される。当該回線処理部SのSIP応答抽出部51は、そのACKパケットがIPパケット中継装置10B宛に送信されたACKパケットであることを判断し、それを受信パケットバッファ33には転送せず、再び、IPネットワーク23に送出されないように廃棄する(ステップS89)。このACKパケットがIPパケット中継装置10Bで受信されることにより、本IPパケット中継装置10A,10Bの間のSIPのセッションが確立される。
遅延時間判定部38では、INVITEパケットが通過した時刻taとACKパケットが通過した時刻tbとに応じてサーバnに対する遅延時間tb−taが算出され、その遅延時間は優先度及び宛先判定部34に通知される。優先度及び宛先判定部34ではサーバ221〜22N各々の遅延時間に応じて上記したように遅延時間が小さい順に優先度を1,2,3,・・・のように定めて優先度テーブルの各項目を更新することが行われる。
そして、SIPのセッション確立によるIPネットワーク23の帯域を無駄に消費することを回避するために、直ちに、SIPパケット中継装置10AのSIPシーケンス管理部52の命令に応じてSIP要求生成部53は本IPパケット中継装置10Aに割り当てられたIPアドレス及びSIP URIを送信元IPアドレス及びSIP URIとし、サーバnのIPアドレスを宛先IPアドレスとし、IPパケット中継装置10Bに割り当てられたSIP URIを宛先SIP URIとして、SIPのセッション切断用のBYEパケット(第1のセッション切断用パケット)を生成する(ステップS90)。このSIP要求生成部53で生成されたBYEパケットは送信パケットバッファ39に保存された後、そこから取り出されてSIP要求送信確認部54を通過してレイヤ1・2送信処理部41からIPネットワーク23を介してサーバnに対して送信される(ステップS91)。
サーバnはBYEパケットを受信すると、BYEパケットの宛先SIP URIであるIPパケット中継装置10BにBYEパケットを転送するためにそれをIPネットワーク23に送出する(ステップS92)。ステップS92のBYEパケットの送信元IPアドレスはサーバnのIPアドレスであり、宛先IPアドレスはIPパケット中継装置10BのIPアドレスであり、送信元SIP URIはIPパケット中継装置10AのSIP URIであり、宛先SIP URIはIPパケット中継装置10BのSIP URIである。
IPパケット中継装置10Bは、BYEパケットを受信すると、BYEパケットはIPパケット中継装置10Bのサーバnに対応した回線処理部Sで受信される。回線処理部SのSIP応答抽出部51は、そのBYEパケットがIPパケット中継装置10B宛に送信されたBYEパケットであることを判断し、それを受信パケットバッファ33には転送せず、再び、IPネットワーク23に送出されないように廃棄する(ステップS93)。そのBYEパケットの受信は回線処理部SのSIPシーケンス管理部52に通知されるので、SIP要求生成部53がSIPシーケンス管理部52の命令に応じて、200 OKパケットを生成する(ステップS94)。このSIP要求生成部53で生成された200 OKパケットは送信パケットバッファ39に保存された後、そこから取り出されてSIP要求送信確認部54を通過してレイヤ1・2送信処理部41からIPネットワーク23を介してサーバnに対して送信される(ステップS95)。200 OKパケットは、当該SIP要求生成部53において、IPパケット中継装置10Bに割り当てられたIPアドレスを送信元IPアドレスとし、サーバnのIPアドレスを宛先IPアドレスとし、IPパケット中継装置10BのSIP URIを送信元SIP URIとし、IPパケット中継装置10AのSIP URIを宛先SIP URIとして生成される。
サーバnは200 OKパケットを受信すると、そのパケットの宛先SIP URIであるIPパケット中継装置10Aに200 OKパケット(第3の確認応答パケット)を転送するためにそれをIPネットワーク23に送出する(ステップS96)。この200 OKパケットの送信元IPアドレスはサーバnのIPアドレスであり、宛先IPアドレスはIPパケット中継装置10AのIPアドレスであり、送信元SIP URIはIPパケット中継装置10BのSIP URIであり、宛先SIP URIはIPパケット中継装置10AのSIP URIである。
サーバnからの200 OKパケットはIPパケット中継装置10Aのサーバnに対応した回線処理部Sで受信される。当該回線処理部SのSIP応答抽出部51は、その200 OKパケットがIPパケット中継装置10A宛に送信されたパケットであることを判断し、それを受信パケットバッファ33には転送せず、再び、IPネットワーク23に送出されないように廃棄する(ステップS97)。SIP応答抽出部51による200 OKパケットの抽出はSIPシーケンス管理部52に通知される。
この200 OKパケットがIPパケット中継装置10Aで受信されることにより、IPパケット中継装置10A,10B間のサーバnを介したセッションが切断され、IPパケット中継装置10Aでは遅延時間測定モードが終了し、通常運用モードとなる。
次いで、IPパケット中継装置10Aの動作モードが通常運用モードとなった時においてクライアントm1(クライアント211〜21Mのうちの1つ)の発呼によりクライアントm1がIPパケット中継装置10A、サーバn、IPパケット中継装置10Bを介したクライアントm2(クライアント211〜21Mのうちの別の1つ)とのパケット通信を図8のSIPシーケンス図を用いて説明する。
クライアントm1からサーバnに対してSIPのセッション確立の要求がある場合には、クライアントm1ではINVITEパケットはクライアントm1のIPアドレスを送信元IPアドレスとし、サーバnのIPアドレスを宛先IPアドレスとし、クライアントm1のSIP URIを送信元SIP URIとし、クライアントm2のSIP URIを宛先SIP URIとして、IPネットワーク23に送出される(ステップS101)。IPパケット中継装置10Aでは、そのINVITEパケットはレイヤ1・2受信処理部31で受信されると、IPパケット中継装置10A宛のパケットではないためSIP応答抽出部51にて廃棄せずに、受信パケットバッファ33へ転送されて、そこに一時的に保存される。優先度及び宛先判定部34によって受信パケットバッファ33からそのINVITEパケットが取り出され、優先度テーブルを用いてそのINVITEパケットの優先度で定まるサーバn(サーバ221〜22Nのうちの1つ)のIPアドレスを示す装置ヘッダをパケットに付加し、その後、INVITEパケットをスイッチ部12に転送することが行われる。優先度及び宛先判定部34からスイッチ部12に転送されたINVITEパケットはスイッチ部12によってそのパケットの装置ヘッダに示された回線番号に対応する回線処理部(回線処理部111〜11Sのうちの1つ)の送信パケットバッファ39に供給され、そこに一時的に保存される。送信パケットバッファ39に保存されたINVITEパケットは保存された順にSIP要求送信確認部54によって取り出されてレイヤ1・2送信処理部41に供給され、レイヤ1・2送信処理部41によってサーバnに向けてIPネットワーク23に送出される(ステップS102)。
サーバnはINVITEパケットを受信すると、それに対して、サーバnのIPアドレスを送信元IPアドレスとし、クライアントm2のIPアドレスを宛先IPアドレスとし、クライアントm1のSIP URIを送信元のSIP URIとし、クライアントm2のSIP URIを宛先SIP URIとしてINVITEパケットをIPネットワーク23に送出する(ステップS103)。
IPパケット中継装置10Bでは、サーバnからのINVITEパケットはレイヤ1・2受信処理部31で受信されると、IPパケット中継装置10B宛のパケットではないためSIP応答抽出部51にて廃棄せずに、受信パケットバッファ33へ転送されて、そこに一時的に保存される。優先度及び宛先判定部34によって受信パケットバッファ33からそのINVITEパケットが取り出され、優先度テーブルを用いてそのINVITEパケットの優先度で定まるサーバn(サーバ221〜22Nのうちの1つ)のIPアドレスを示す装置ヘッダをパケットに付加し、その後、INVITEパケットをスイッチ部12に転送することが行われる。優先度及び宛先判定部34からスイッチ部12に転送されたINVITEパケットはスイッチ部12によってそのパケットの装置ヘッダに示された回線番号に対応する回線処理部(回線処理部111〜11Sのうちの1つ)の送信パケットバッファ39に供給され、そこに一時的に保存される。送信パケットバッファ39に保存されたINVITEパケットは保存された順にSIP要求送信確認部54によって取り出されてレイヤ1・2送信処理部41に供給され、レイヤ1・2送信処理部41によってクライアントm2に向けてIPネットワーク23に送出される(ステップS104)。
サーバnはクライアントm1からINVITEパケットを受信してそれを処理していることをクライアントm1に知らせるために100 TryingパケットをIPネットワーク23に送出する(ステップS105)。100 Tryingパケットの送信元IPアドレスはサーバnのIPアドレスであり、宛先IPアドレスはクライアントm1のIPアドレスであり、送信元SIP URIはクライアントm2のSIP URIであり、宛先SIP URIはクライアントm1のSIP URIである。
100 TryingパケットはIPパケット中継装置10Aのサーバnに対応した回線処理部Sで受信され、IPパケット中継装置10A宛のパケットではないためSIP応答抽出部51にて廃棄せずに、受信パケットバッファ33へ転送されて、そこに一時的に保存される。優先度及び宛先判定部34によって受信パケットバッファ33からその100 Tryingパケットが取り出され、優先度テーブルを用いてその100 Tryingパケットの優先度で定まるサーバn(サーバ221〜22Nのうちの1つ)のIPアドレスを示す装置ヘッダをパケットに付加し、その後、100 Tryingパケットをスイッチ部12に転送することが行われる。優先度及び宛先判定部34からスイッチ部12に転送された100 Tryingパケットはスイッチ部12によってそのパケットの装置ヘッダに示された回線番号に対応する回線処理部(回線処理部111〜11Sのうちの1つ)の送信パケットバッファ39に供給され、そこに一時的に保存される。送信パケットバッファ39に保存された100 Tryingパケットは保存された順にSIP要求送信確認部54によって取り出されてレイヤ1・2送信処理部41に供給され、レイヤ1・2送信処理部41によってクライアントm1に向けてIPネットワーク23に送出される(ステップS104)。
クライアントm2では、INVITEパケットの受信に応じて、180 Ringingパケットを送出し(ステップS107)、更に200 OKパケットを送出する(ステップS111)。これらの180 Ringingパケット及び200 OKパケット各々は、クライアントm2のIPアドレスを送信元IPアドレスとし、サーバnのIPアドレスを宛先IPアドレスとし、クライアントm2のSIP URIを送信元SIP URIとし、クライアントm1のSIP URIを宛先SIP URIとして生成される。180 Ringingパケット及び200 OKパケット各々はIPパケット中継装置10Bによって中継されてサーバnに向けてIPネットワーク23に送出される(ステップS108,S112)。
サーバnは、180 Ringingパケット及び200 OKパケットを個別に受信する毎に、180 Ringingパケット及び200 OKパケットを転送するためにそれをIPネットワーク23に送出する(ステップS109,S113)。この180 Ringingパケット及び200 OKパケット各々の送信元IPアドレスはサーバnのIPアドレスであり、宛先IPアドレスはクライアントm1のIPアドレスであり、送信元SIP URIはクライアントm2のSIP URIであり、宛先SIP URIはクライアントm1のSIP URIである。サーバnからの180 Ringingパケット及び200 OKパケット各々はIPパケット中継装置10Aによって中継されてクライアントm1に向けてIPネットワーク23に送出される(ステップS110,S114)。
クライアントm1は180 Ringingパケット及び200 OKパケット各々を受信すると、それに応答するためにACKパケットをIPネットワーク23に送出する(ステップS115)。このACKパケットの送信元IPアドレスはクライアントm1のIPアドレスであり、宛先IPアドレスはサーバnのIPアドレスであり、送信元SIP URIはクライアントm1のSIP URIであり、宛先SIP URIはクライアントm2のSIP URIである。
クライアントm1から送出されたACKパケットは、更に、IPパケット中継装置10Aによって中継されてサーバnに向けてIPネットワーク23に送出される(ステップS116)。サーバnはACKパケットを受信すると、そのACKパケットをクライアントm2に転送するためにそれをIPネットワーク23に送出する(ステップS117)。サーバnから送出されたACKパケットの送信元IPアドレスはサーバnのIPアドレスであり、宛先IPアドレスはクライアントm2のIPアドレスであり、送信元SIP URIはクライアントm1のSIP URIであり、宛先SIP URIはクライアントm2のSIP URIである。そのACKパケットは、更に、IPパケット中継装置10Bによって中継されてクライアントm2に向けてIPネットワーク23に送出される(ステップS118)。
ACKパケットがクライアントm2で受信されると、クライアントm1,m2の間のSIPのセッションが確立される。よって、クライアントトm1,m2の間で音声データ、映像データ等のメディアデータの送受信が行われる(ステップS119)。
クライアントm1は、メディアデータの送受信が終了すると、SIPのセッション切断のためにBYEパケットをIPネットワーク23に送出する(ステップS120)。このBYEパケットの送信元IPアドレスはクライアントm1のIPアドレスであり、宛先IPアドレスはサーバnのIPアドレスであり、送信元SIP URIはクライアントm1のSIP URIであり、宛先SIP URIはクライアントm2のSIP URIである。
BYEパケットはACKパケットの転送と同様に、ステップS121〜S123の如くIPパケット中継装置10A、サーバn、そしてIPパケット中継装置10Bを介してクライアントm2に転送される。クライアントm2はそれに応答して200 OKパケットをIPネットワーク23に送出する(ステップS124)。この200 OKパケットの送信元IPアドレスはクライアントm2のIPアドレスであり、宛先IPアドレスはサーバnのIPアドレスであり、送信元SIP URIはクライアントm2のSIP URIであり、宛先SIP URIはクライアントm1のSIP URIである。
200 OKパケットはステップS124〜S127の如くIPパケット中継装置10B、サーバn、そしてIPパケット中継装置10Aを介してクライアントm1に転送される。これは上記したステップS111〜S114の200 OKパケットと同様である。
この200 OKパケットがクライアントm1で受信されることにより、クライアントm1,m2間のIPパケット中継装置10A、サーバn、及びIPパケット中継装置10Bを介したセッションが切断される。
このように実施例2においては、SIPのセッション確立までの時間をサーバの遅延時間として測定することで、Ping(ICMPのecho request/reply)パケットやEthernet OAMのLoop backパケットのように低レイヤの監視のみを行うのではなく、実際に利用するアプリケーションサービスと同一レイヤにてサーバのレスポンスを監視することが可能となる。
また、遅延時間測定後、確立されているSIPのセッションを直ちに切断するので、SIPのセッション確立によるIPネットワークの無駄な帯域消費を防ぐことができる。
更に、IPパケット中継装置のURIをサーバに予め登録するので、収容しているクライアントに誤ったリンギング(呼出音)が生じることを回避することができる。
上記した実施例では、サーバの遅延時間測定としてTCPパケット及びSIPパケットを使用した例を説明したが、他にアプリケーションサービスを提供する上位レイヤのプロトコルを使用してサーバの遅延時間を測定しても良い。
また、各サーバ、各クライアント及びIPパケット中継装置はネットワークに有線及び無線のいずれで接続されても良い。
10,10A,10B IPパケット中継装置
111〜11S 回線処理部
12 スイッチ部
211〜21M,m,m1,m2 クライアント
221〜22N,n サーバ
23 IPネットワーク
32 TCP応答抽出部
35 TCPシーケンス管理部
36 TCP要求生成部
38 遅延時間判定部
40 TCP要求送信確認部
51 SIP応答抽出部
52 SIPシーケンス管理部
53 SIP要求生成部
54 SIP要求送信確認部
111〜11S 回線処理部
12 スイッチ部
211〜21M,m,m1,m2 クライアント
221〜22N,n サーバ
23 IPネットワーク
32 TCP応答抽出部
35 TCPシーケンス管理部
36 TCP要求生成部
38 遅延時間判定部
40 TCP要求送信確認部
51 SIP応答抽出部
52 SIPシーケンス管理部
53 SIP要求生成部
54 SIP要求送信確認部
Claims (10)
- ネットワーク内の複数のサーバとクライアントの間でパケットの中継を行うパケット中継装置であって、
前記複数のサーバの各々についてセッション確立用パケットを生成してそれを対応するサーバに向けて前記ネットワークを介して送信する送信手段と、
前記セッション確立用パケットに対する前記複数のサーバの各々からの本パケット中継装置宛の第1の確認応答パケットを前記ネットワークを介して受信してそれを廃棄する受信手段と、を備え、
前記送信手段は、
前記第1の確認応答パケットの受信に応じて第2の確認応答パケットを対応するサーバに向けて前記ネットワークを介して送信し、
前記サーバ毎に前記セッション確立用パケットの送信時刻と前記第2の確認応答パケットの送信時刻と差を遅延時間として算出して前記サーバと前記遅延時間との対応関係を作成し、
前記対応関係において前記遅延時間が小さいサーバの順に前記複数のサーバに優先度を高く設定し、
前記ネットワークを介して前記クライアントから中継すべきパケットを受信したとき当該受信パケットが示す優先度に対応したサーバに向けて前記受信パケットを前記ネットワークを介して送信することを特徴とするパケット中継装置。 - 前記送信手段は、前記複数のサーバ各々の前記遅延時間の測定後、前記サーバ毎に第1のセッション切断用パケットを生成してそれを対応するサーバに向けて前記ネットワークを介して送信し、
前記受信手段は、前記第1のセッション切断用パケットに対する前記複数のサーバの各々からの前記第3の確認応答パケットを前記ネットワークを介して受信してそれを廃棄することを特徴とする請求項1記載のパケット中継装置。 - 前記受信手段は、前記第1のセッション切断用パケットに対する前記複数のサーバの各々からの本パケット中継装置宛の第2のセッション切断用パケットを前記ネットワークを介して受信してそれを廃棄し、
前記送信手段は、前記第2のセッション切断用パケットの受信に応じて第4の確認応答パケットを対応するサーバに向けて前記ネットワークを介して送信することを特徴とする請求項2記載のパケット中継装置。 - 前記受信手段は、受信したパケットのうちから本パケット中継装置宛のパケットを抽出して破棄する応答抽出部を有することを特徴とする請求項2記載のパケット中継装置。
- 前記送信手段は、前記セッション確立用パケットの送信時刻及び前記第2の確認応答パケットの送信時刻を検出する要求送信確認部と、
前記セッション確立用パケットの送信時刻と前記第2の確認応答パケットの送信時刻とに応じて前記遅延時間を算出する遅延時間判定部と、を含むことを特徴とする請求項1ないし3のいずれか1記載のパケット中継装置。 - 前記送信手段は、前記セッション確立用パケット、前記第2の確認応答パケット、前記第1のセッション切断用パケット、及び前記第4の確認応答パケットを各々生成する要求生成部と、
遅延時間測定モードが開始されたとき前記セッション確立用パケットの生成を前記要求生成部に命令し、前記応答抽出部が前記第1の確認応答パケットを抽出したとき前記第2の確認応答パケットの生成を前記要求生成部に命令し、その後、前記第1のセッション切断用パケットの生成を前記要求生成部に命令し、前記応答抽出部が前記第2のセッション切断用パケットを抽出したとき前記第4の確認応答パケットの生成を前記要求生成部に命令するシーケンス管理部と、を有することを特徴とする請求項3記載のパケット中継装置。 - 前記パケットはTCPパケットであることを特徴とする請求項1ないし6のいずれか1記載のパケット中継装置。
- 前記パケットはSIPパケットであることを特徴とする請求項1,2,4ないし6のいずれか1記載のパケット中継装置。
- 前記送信手段は、前記遅延時間の測定前に、前記複数のサーバの各々に対してSIP URIを登録する手段を有することを特徴とする請求項8記載のパケット中継装置。
- ネットワーク内の複数のサーバとクライアントの間でパケットの中継を行うパケット中継装置の中継方法であって、
前記複数のサーバの各々についてセッション確立用パケットを生成してそれを対応するサーバに向けて前記ネットワークを介して送信するステップと、
前記セッション確立用パケットに対する前記複数のサーバの各々からの第1の確認応答パケットを前記ネットワークを介して受信してそれを廃棄するステップと、
前記第1の確認応答パケットの受信に応じて第2の確認応答パケットを対応するサーバに向けて前記ネットワークを介して送信するステップと、
前記サーバ毎に前記セッション確立用パケットの送信時刻と前記第2の確認応答パケットの送信時刻と差を遅延時間として算出して前記サーバと前記遅延時間との対応関係を作成するステップと、
前記対応関係において前記遅延時間が小さいサーバの順に前記複数のサーバに優先度を高く設定するステップと、
前記ネットワークを介してクライアントから中継すべきパケットを受信したとき当該受信パケットが示す優先度に対応したサーバに向けて前記受信パケットを前記ネットワークを介して送信するステップと、を含むことを特徴とする中継方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2012194336A JP2014050090A (ja) | 2012-09-04 | 2012-09-04 | パケット中継装置及び方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2012194336A JP2014050090A (ja) | 2012-09-04 | 2012-09-04 | パケット中継装置及び方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2014050090A true JP2014050090A (ja) | 2014-03-17 |
Family
ID=50609297
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2012194336A Pending JP2014050090A (ja) | 2012-09-04 | 2012-09-04 | パケット中継装置及び方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2014050090A (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2017199952A (ja) * | 2016-04-25 | 2017-11-02 | Necプラットフォームズ株式会社 | 通信装置、通信方法、及び、プログラム |
| JPWO2022091259A1 (ja) * | 2020-10-28 | 2022-05-05 |
-
2012
- 2012-09-04 JP JP2012194336A patent/JP2014050090A/ja active Pending
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2017199952A (ja) * | 2016-04-25 | 2017-11-02 | Necプラットフォームズ株式会社 | 通信装置、通信方法、及び、プログラム |
| JPWO2022091259A1 (ja) * | 2020-10-28 | 2022-05-05 | ||
| JP7510083B2 (ja) | 2020-10-28 | 2024-07-03 | 日本電信電話株式会社 | 受理判断装置及び受理判断方法 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN107070689B (zh) | 减少使用网络保活消息时的错误警告的方法及装置 | |
| CN107743698B (zh) | 用于多路径媒体传递的方法和装置 | |
| JP5518954B2 (ja) | セッション接続の持続 | |
| CN101410820B (zh) | 无应用接收端参与的在发送端使用预订协议促进应用同步 | |
| CN101123588B (zh) | 控制冗余数据包传输的方法、媒体网关及系统 | |
| CN112436924B (zh) | 一种数据传输方法及电子设备 | |
| JP2005287045A (ja) | Ipネットワークに接続された装置の発見の方法、及び、この方法を実行する装置 | |
| CN106612284B (zh) | 一种流数据的传输方法和装置 | |
| US10666769B2 (en) | Network system and method for establishing data link by using relay node | |
| CN102014416A (zh) | 一种对连接进行双向检测的方法及系统 | |
| CN115002023B (zh) | 一种链路聚合方法、链路聚合装置、电子设备及存储介质 | |
| WO2014037760A1 (zh) | 增加数据流传输的方法和系统 | |
| CN101252528B (zh) | 一种故障检测方法及设备 | |
| KR20230041727A (ko) | 터널 bfd 세션 설립 방법 및 장치 | |
| CN102984784B (zh) | 通过多个网络发送数据 | |
| CN101729312B (zh) | 基于arp协议的链路检测方法和系统 | |
| JP6576099B2 (ja) | 通信装置、通信装置の制御方法、プログラム、および、通信システム | |
| JP2014050090A (ja) | パケット中継装置及び方法 | |
| WO2013053252A1 (zh) | 网络过载的处理方法及装置 | |
| US20170142748A1 (en) | Method and Apparatus for Managing Uplink Traffic from a Client Device in a Communication Network | |
| JP5662779B2 (ja) | 通信システム及びノード装置 | |
| JP5532641B2 (ja) | 通信システム、サーバ装置、端末装置及びプログラム | |
| CN109983734B (zh) | 具有中继设备的远程计算设备的子组 | |
| CN114765621B (zh) | 检测bgp会话的状态的方法、装置和网络设备 | |
| JP6200870B2 (ja) | データ転送制御装置、方法及びプログラム |