JP7074295B2 - 監視装置、監視システムおよび監視方法 - Google Patents
監視装置、監視システムおよび監視方法 Download PDFInfo
- Publication number
- JP7074295B2 JP7074295B2 JP2019116357A JP2019116357A JP7074295B2 JP 7074295 B2 JP7074295 B2 JP 7074295B2 JP 2019116357 A JP2019116357 A JP 2019116357A JP 2019116357 A JP2019116357 A JP 2019116357A JP 7074295 B2 JP7074295 B2 JP 7074295B2
- Authority
- JP
- Japan
- Prior art keywords
- communication
- monitoring
- monitoring device
- packet
- tcp
- 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.)
- Active
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Description
OSI参照モデル(Open Systems Interconnection reference model)のレイヤ4(トランスポート層)における標準的な通信仕様として、TCP(Transmission Control Protocol)が定められている。
図1は、関連するTCP通信システムの構成例を示す構成図である。TCP通信において、通信の両端に位置する装置は、それぞれクライアント20、サーバ10と呼称される。TCP通信においては、セッション制御・データ転送が行われる。
安定した通信のため、TCP通信の仕様では以下に示す3フェーズに分かれたプロセスが実行され、クライアントとサーバ間でコネクションを確立した上でデータ転送が行われる。
TCP通信の第1フェーズとして、クライアント20とサーバ10は、3ウェイハンドシェイクという手続きに従って双方向にTCP制御パケットの送受信を行い、コネクションを確立する(S1)。3ウェイハンドシェイクとは、クライアント20がサーバ10に対してSYNパケットを送り(S11)、サーバ10がクライアント20にSYN/ACKパケットを送り(S12)、クライアント20がサーバ10にACKパケットを送ることである。
データ転送が完了すると、第3フェーズとしてクライアントとサーバの間でTCP制御パケットが通信され、コネクションが切断される(S3)。具体的には、サーバ10はクライアント20にFINパケットを送り(S31)、クライアント20はサーバ10にACKパケットを送る(S32)。そして、クライアント20はサーバ10にFINパケットを送り(S33)、サーバ10はクライアント20にACKパケットを送る(S34)。
まず、パケット送受信インタフェース105は、パケットを受信する。受信したパケットがTCPパケットである場合、監視部102は、TCP通信制御を行う。受信したパケットがTCPパケットでない場合、TCP通信制御は行われない(S101)。
監視部102は、TCP制御情報に基づいて、受信パケットを廃棄するか、透過するか、または書き換えをするかを決定する(S103)。
透過と判断された場合、パケット送受信インタフェース105は、パケットを転送する。書き換えと判断された場合、パケット送受信インタフェース105は、パケットを書き換えた上で転送する(S104)。廃棄と判断された場合、パケット送受信インタフェース105は、パケットを廃棄する(S105)。
TCP通信制御機能を有する監視装置100は、パケットバッファ203に格納されたパケットのIPヘッダ、TCPヘッダ等のフィールドを参照する。監視装置100は、通信中のクライアント20とサーバ10のIPアドレス、ポート番号、シーケンス番号等のTCP関連情報を収集することで、現在通信しているTCPコネクションやシーケンス状態などの情報を、TCP制御情報204として保持する(S102)。監視部102は、TCP制御情報204に基づいて、TCP通信の監視や制御を行う(S103)。監視部102は、パケットの書き換え、廃棄または透過等のTCP通信を制御するための命令を行う。
クライアント20とサーバ10間で複数の通信経路をとりうるようなネットワーク環境において、TCP通信を監視ならびに制御する機能を有する監視装置100を用いる場合、以下に述べるような課題が存在する。
かかる場合、監視装置100が収集できるTCP通信情報は、一連のシーケンスの一部が欠落した不完全な情報となる。したがって、TCP監視やTCP制御の機能が十全に動作しない。
以上のように、クライアント20とサーバ10間で複数の通信経路をとりうるようなネットワーク環境においては、TCP制御情報の欠落によってTCP通信制御が十全に動作しない問題が存在していた。
図9は、本実施の形態にかかる監視システムの構成例を示す図である。サーバ10とクライアント20は、複数の通信経路を介して通信する。監視装置100Aは、監視経路410上の通信データを監視する。監視装置100Bは、冗長経路420上の通信データを監視する。
取得部101は、冗長経路420上での通信パケットのヘッダに含まれる通信制御情報を取得情報として取得する。通信制御情報は、通信監視に用いることが可能な情報である。監視装置100Aは、監視装置100Bから通信制御情報を取得してもよい。
監視部102は、監視経路上の通信パケットの通信フローを監視する。監視経路上で受信した通信データを破棄あるいは転送する処理を行ってもよい。監視部102は、通信データの書き換えを行っても良い。
本実施の形態は、OSI参照モデルの規定に従い、TCP通信制御機能を有するとともに、TCP通信情報制御の機能を有する監視装置100を冗長ネットワークの各経路上にそれぞれ設置し、TCP通信制御装置間でTCP通信制御情報を通知、共有するものである。
監視装置100Aは、クライアント20からサーバ10への通信経路上のレイヤ3中継装置である。監視装置100Bは、サーバ10からクライアント20への通信経路上のレイヤ3中継装置である。
監視装置100A、100Bは、TCP通信制御機能を有し、TCP通信の状態を監視するとともに、それを取得情報として保持することができる。監視装置100Aと監視装置100Bは一組で動作する。
記憶部101は、通信制御情報を取得情報として記憶しており、他の監視装置から受信した通知パケットを解析して取得情報に反映する。記憶部101は、取得部101ともいえる。複数の監視装置100間でTCP通信情報を共有管理する手段として、必要な機能である
監視部102は、取得情報に基づいて、受信した通信データの監視を行う。
取得情報更新部103は、監視装置100が配置された通信経路上の通信データからTCP通信制御情報を収集し、取得情報を更新する。
通知パケット生成部104は、取得情報更新部103が収集したTCP通信制御情報を他の監視装置100と共有するための通知パケットを生成する。複数の監視装置100間でTCP通信制御情報を共有管理する手段として、必要な機能である。
以下、監視装置100Aは監視装置100BのIPアドレスを保持しており、監視装置100Bは監視装置100AのIPアドレスを保持しているとして説明する。
シーケンス番号は、送信データの順番を示す値である。
TCP通信において、受信側は、送信データに含まれるシーケンス番号にデータサイズを加えたものを、確認応答番号として送信側に応答する。データサイズが0の場合、確認応答番号は、シーケンス番号に1を加えたものとする。
そして、送信側が次のデータを送る際のシーケンス番号は、受信した確認応答番号となる。
SYNは、接続を開始する際に使用されるフラグである。FINは、接続を終了する際に使用されるフラグである。ACKは、相手に応答するために用いられるフラグである。
図13のNo.1は、3ウェイハンドシェイクにおけるSYN ACKパケットである。監視装置100は、送信元ポートX1、宛先ポートY1のデータに対して、シーケンス番号=401、確認応答番号=301、ACK=1のACKパケットを正常な通信と判断する。
図13のNo.2は、データ通信を行っている際のパケットである。監視装置100は、送信元ポートX2、宛先ポートY2のデータに対して、シーケンス番号=501、確認応答番号=101のパケットを正常な通信と判断する。
図13のNo.3は、コネクション切断時のFIN ACKパケットである。監視装置100は、送信元ポートX3、宛先ポートY3のデータに対して、シーケンス番号=301、確認応答番号=202、FIN=0、ACK=1のACKパケットを正常な通信と判断する。
図12の環境において、クライアント20とサーバ10間でTCP通信が開始されると、図2のTCP通信シーケンスに基づいたTCPパケットの送受信が行われる。
したがって、3ウェイハンドシェイク(S1)において、監視装置100Aは、SYNパケット(S11)とACKパケット(S13)を収集する。
データ転送(S2)については、監視装置100Aは、クライアント20からサーバ10への通信パケットを収集する。
コネクション切断(S3)の際には、監視装置100Aは、ACKパケット(S32)とFIN ACKパケット(S33)を収集する。
したがって、3ウェイハンドシェイク(S1)において、監視装置100Bは、SYN ACKパケット(S12)を収集する。
データ転送(S2)については、監視装置100Bは、サーバ10からクライアント20への通信パケットを収集する。
コネクション切断(S3)の際には、監視装置100Bは、FIN ACKパケット(S31)とACKパケット(S34)を収集する。
よって、監視装置100A、100Bが、自らが監視経路上で収集できるTCPパケットは、一連のTCP通信におけるシーケンスの一部のみとなる。
以下、図16に示すアルゴリズムについて説明する。図4と重複した説明は、適宜省略する。
本アルゴリズムによると、他の監視装置100から通知パケットを受信した場合(S101)、監視装置100は、パケットを解析して(S102)、取得情報を更新する(S103)。
以上の処理が完了した場合、本アルゴリズムに従う監視装置100は、通知パケットによって通信制御情報を共有したことを示す応答通知パケットを生成し、返信する(S104)。
監視装置100Aは、クライアント20からサーバ10宛てに送信されたTCPパケットの受信を契機として、以下のTCP受信処理を行う(S101)。
まず、監視装置100Aは、受信したTCPパケットの情報を参照して取得情報を更新する(S105)。
続いて本実施形態の動作として、監視装置100Aは、TCP通信制御情報を共有するための通知パケットを生成する。通知パケットは、監視装置100Aで受信したTCPパケットのポート番号、シーケンス番号、SYN、ACK、FIN等のフラグなどの情報を含むものである。監視装置100Aは、あらかじめ保存された監視装置100BのIPアドレスを宛先として、通知パケットを送信する(S106)。
以上の動作は、監視装置100AがTCPパケットを受信するたびに実行してもよい。また、処理負荷やトラフィックを低減するため、目的とするTCP通信制御機能の用途に応じて、通知を省略する方法、複数のTCPパケットに関する情報を単一の通知パケットにまとめて送信する方法などをとることも可能である。
まず、受信された通知パケットは(S101)、通知パケット解析処理によって解析される(S102)。次に、監視装置100Aは、既に保持している通信制御情報と解析結果を照合する(S103)。したがって、監視装置100Aおよび監視装置100Bは、TCP通信制御情報を共有することが可能となる。
図17は、本実施の形態を実現するTCP通信制御におけるデータフローを示す流れ図である。図5と重複する部分の説明は、適宜省略する。
受信したパケットが、他の監視装置100が送信したTCP通信制御情報を通知する通知パケットであった場合(S101)、監視装置100は、通知パケットの解析を行い(S102)、取得情報205を更新する。監視装置100は、取得情報205を更新した後、通知パケットを生成する(S104)。
受信したパケットが、通信データである場合、パケットバッファ203に格納される。
監視装置100は、取得情報205を参照して、パケットバッファ203に格納されたデータに対する処理を決定する(S107)。パケット透過と判断された場合には、パケットの転送が行われる(S109)。
実施の形態2では、複数経路上の監視装置100間でTCP通信制御情報を共有する手段を提示した。しかし、複数の監視装置100間でTCP通信制御情報が共有されるまでには、通知パケットの送受信に要する時間差が存在するため、全ての監視装置100が、常に最新のTCP通信制御情報を保持できるわけではない。この状態でのTCPパケット制御は、不完全なTCP通信制御情報を参照したことによる不完全な動作となる可能性がある。この問題を解決するための、本実施の形態のシステム構成の例を図18に示す
監視装置100Cは、記憶部101C、監視部102C、取得情報更新部103Cおよび通知パケット生成部104Cを備える。記憶部101Cは、監視装置100Dから受信した通知パケットを解析して取得情報に反映する。通知パケット生成部104Cは、取得情報更新部103Cが収集したTCP通信制御情報を監視装置100Dと共有するための通知パケットを生成する。監視装置100Cは、監視装置100DのIPアドレスを保持している。
監視装置100Cと監視装置100Dは、一組で動作する。
図19に示すアルゴリズムでは、TCPパケットを受信して(S101)、取得情報の更新と(S102)、通知パケットの生成と送信を行った後(S103)、監視部102によるパケットの透過や廃棄を即座には実行しない。本アルゴリズムでは、通知パケットを送信した後(S103)、他の監視装置100から応答パケットを受信するまで、処理中のTCPパケットを保持したままで待機する(S104)。応答パケットを受信できた場合、本アルゴリズムは図16に示したアルゴリズムと同様に通知パケットの解析を行い(S105)、取得情報を更新する(S106)。
20 クライアント
100、100A、100B、100C、100D 監視装置
101、101A,101B、101C、101D 取得部(記憶部)
102、102A、102B、102C、102D 監視部
103、103A,103B、103C、103D 取得情報更新部
104、104A、104B、104C、104D 通知パケット生成部
105 パケット送受信インタフェース
203 パケットバッファ
204 TCP制御情報
205 取得情報
201、202 中継装置
410 監視経路
420 冗長経路
Claims (9)
- 冗長経路上の通信パケットのヘッダに含まれる通信制御情報を取得情報として取得する取得手段と、
前記取得情報に基づいて、監視経路上の通信パケットの通信フローを監視する監視手段と、
を備える監視装置であって、
前記監視装置は、クライアントからサーバへの通信経路上の中継装置であり、
前記クライアントと前記サーバの間の通信は、往復それぞれで異なる経路が選択され、
前記監視経路は、前記クライアントから前記サーバへの通信経路であり、
前記冗長経路は、前記サーバから前記クライアントへの通信経路である、
監視装置。 - 前記監視経路上の通信パケットのヘッダに含まれる通信制御情報に基づいて、前記取得情報を更新する取得情報更新手段をさらに備える、
請求項1に記載の監視装置。 - 前記監視経路上の通信パケットのヘッダに含まれる通信制御情報を、通知パケットとして前記冗長経路上の通信監視を行う他の監視装置に送信する通知パケット生成手段をさらに備える、
請求項2に記載の監視装置。 - 前記通信制御情報は、データの順番を示す値であるシーケンス番号を含む、請求項1から3のいずれか1項に記載の監視装置。
- 前記監視装置は、前記通知パケットを送信した後、前記他の監視装置から応答パケットを受信するまで待機する、請求項3に記載の監視装置。
- 第1の監視装置と第2の監視装置を備える監視システムであって、
前記第1の監視装置は、
前記第2の監視装置から冗長経路上の通信パケットのヘッダに含まれる通信制御情報
を取得情報として取得する取得部と、
前記取得情報に基づいて、監視経路上の通信パケットの通信フローを監視する監視部
と、を備え、
前記第1の監視装置は、クライアントからサーバへの通信経路上の中継装置であり、
前記第2の監視装置は、サーバからクライアントへの通信経路上の中継装置であり、
前記クライアントと前記サーバの間の通信は、往復それぞれで異なる経路が選択され、
前記監視経路は、前記クライアントから前記サーバへの通信経路であり、
前記冗長経路は、前記サーバから前記クライアントへの通信経路である、
監視システム。 - 前記第1の監視装置は、
前記監視経路上の通信パケットのヘッダに含まれる通信制御情報に基づいて、前記取得情報を更新する取得情報更新手段をさらに備える、
請求項6に記載の監視システム。 - 監視装置が、
冗長経路上の通信パケットのヘッダに含まれる通信制御情報を取得情報として取得し、
前記取得情報に基づいて、監視経路上の通信パケットの通信フローを監視する、
監視方法であって、
前記監視装置は、クライアントからサーバへの通信経路上の中継装置であり、
前記クライアントと前記サーバの間の通信は、往復それぞれで異なる経路が選択され、
前記監視経路は、前記クライアントから前記サーバへの通信経路であり、
前記冗長経路は、前記サーバから前記クライアントへの通信経路である、
監視方法。 - 前記監視経路上の通信パケットのヘッダに含まれる通信制御情報に基づいて、前記取得情報を更新する、
請求項8に記載の監視方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019116357A JP7074295B2 (ja) | 2019-06-24 | 2019-06-24 | 監視装置、監視システムおよび監視方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019116357A JP7074295B2 (ja) | 2019-06-24 | 2019-06-24 | 監視装置、監視システムおよび監視方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021002792A JP2021002792A (ja) | 2021-01-07 |
JP7074295B2 true JP7074295B2 (ja) | 2022-05-24 |
Family
ID=73995205
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019116357A Active JP7074295B2 (ja) | 2019-06-24 | 2019-06-24 | 監視装置、監視システムおよび監視方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7074295B2 (ja) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008178060A (ja) | 2006-12-20 | 2008-07-31 | Oki Electric Ind Co Ltd | 冗長化ゲートウェイシステム |
WO2008120267A1 (ja) | 2007-03-28 | 2008-10-09 | Fujitsu Limited | エッジノード冗長システム |
JP2015097349A (ja) | 2013-11-15 | 2015-05-21 | 株式会社日立製作所 | 送信装置、通信制御方法及び通信システム |
JP2019129408A (ja) | 2018-01-24 | 2019-08-01 | 富士通株式会社 | 障害検知方法、ノード装置、通信システム |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2626622B2 (ja) * | 1995-04-27 | 1997-07-02 | 日本電気株式会社 | Osi通信システム |
-
2019
- 2019-06-24 JP JP2019116357A patent/JP7074295B2/ja active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008178060A (ja) | 2006-12-20 | 2008-07-31 | Oki Electric Ind Co Ltd | 冗長化ゲートウェイシステム |
WO2008120267A1 (ja) | 2007-03-28 | 2008-10-09 | Fujitsu Limited | エッジノード冗長システム |
JP2015097349A (ja) | 2013-11-15 | 2015-05-21 | 株式会社日立製作所 | 送信装置、通信制御方法及び通信システム |
JP2019129408A (ja) | 2018-01-24 | 2019-08-01 | 富士通株式会社 | 障害検知方法、ノード装置、通信システム |
Also Published As
Publication number | Publication date |
---|---|
JP2021002792A (ja) | 2021-01-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10728094B2 (en) | Control traffic in software defined networks | |
EP1989835B1 (en) | A technique for efficiently and dynamically maintaining bidirectional forwarding detection on a bundle of links | |
US7318100B2 (en) | Cooperative proxy auto-discovery and connection interception | |
US7515525B2 (en) | Cooperative TCP / BGP window management for stateful switchover | |
US8331220B2 (en) | Edge node redundant system | |
US20080320154A1 (en) | Cooperative proxy auto-discovery and connection interception | |
US8493839B2 (en) | Method and system of teamed network adapters with offloaded connections | |
US20070274307A1 (en) | Cluster System, Cluster Member, And Program | |
WO2016106743A1 (zh) | 对聚合链路进行双向转发检测的方法、设备和系统 | |
US7864666B2 (en) | Communication control apparatus, method and program thereof | |
CN115428411B (zh) | 使用会话建立度量的会话监测 | |
US8526437B2 (en) | Communication system and communication control device | |
US7974188B2 (en) | Repeater and communication method | |
CN116319422A (zh) | 使用主动测量协议和中继机制进行网络性能监控 | |
JP2006229399A (ja) | 通信システム、中継ノード及びそれらに用いる通信方法並びにそのプログラム | |
JP2005184510A (ja) | ルータ | |
JP7074295B2 (ja) | 監視装置、監視システムおよび監視方法 | |
JP2008072521A (ja) | 通信装置、通信方法及び通信プログラム | |
US7898949B2 (en) | Brownout detection | |
JP4579746B2 (ja) | 接続管理装置、接続管理装置の制御方法および制御プログラム | |
JP2004247871A (ja) | データ中継方法、データ中継装置およびその装置を用いたデータ中継システム | |
JP4629254B2 (ja) | 通信障害箇所を迂回する方法及び通信障害箇所を迂回する迂回ルーター | |
JP2007013510A (ja) | パケット通信システムおよびパケット通信装置 | |
CN114928598A (zh) | 一种用于远程管理调试路由器的系统和方法 | |
CN115883631A (zh) | 使用路径变化建立会话 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20201005 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210630 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210706 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210903 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220201 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220328 |
|
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: 20220412 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220428 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7074295 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |