JP6993689B2 - 中継装置、通信システム、制御方法、及び、プログラム - Google Patents

中継装置、通信システム、制御方法、及び、プログラム Download PDF

Info

Publication number
JP6993689B2
JP6993689B2 JP2018105207A JP2018105207A JP6993689B2 JP 6993689 B2 JP6993689 B2 JP 6993689B2 JP 2018105207 A JP2018105207 A JP 2018105207A JP 2018105207 A JP2018105207 A JP 2018105207A JP 6993689 B2 JP6993689 B2 JP 6993689B2
Authority
JP
Japan
Prior art keywords
packet
relay device
packets
series
transfer
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
Application number
JP2018105207A
Other languages
English (en)
Other versions
JP2019212984A (ja
Inventor
昌之 水迫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Silex Technology Inc
Original Assignee
Silex Technology Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Silex Technology Inc filed Critical Silex Technology Inc
Priority to JP2018105207A priority Critical patent/JP6993689B2/ja
Publication of JP2019212984A publication Critical patent/JP2019212984A/ja
Application granted granted Critical
Publication of JP6993689B2 publication Critical patent/JP6993689B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Maintenance And Management Of Digital Transmission (AREA)

Description

本発明は、中継装置、通信システム、制御方法、及び、プログラムに関する。
インターネットのような広域ネットワークを介した会議システムが利用されている。このような会議システムでは、広域ネットワークを介した複数の拠点に配置された端末の間で音声データ及び映像データなどを含むデータパケット(単にパケットともいう)を相互に送受信することで、拠点間で音声及び映像を共有する。
ネットワークでは、データパケットのロスが生じ得る。会議システムで利用されるネットワークにおいてパケットのロスが生ずると、音声及び映像に遅延又は欠落が発生し、会議システムを用いた会議に支障を来す。
従来、ネットワークを介して送信端末及び受信端末が配置されるシステムにおいて、送信端末が計測する送信パケット数と、受信端末が計測するパケットロス数とに基づいて、パケットロスの原因がネットワークにあるのか、ルータによる転送にあるのかを切り分ける技術が開示されている(特許文献1)。
特開2010-233192号公報
しかしながら、ネットワークにおいてパケットの重複が発生し得る場合、送信パケット数及びパケットロス数の計測だけではロスの発生個所の特定ができないという問題がある。
本発明は、上記問題を解決するためになされたものであり、パケットの重複が発生し得るネットワークを介した通信において、パケットロスの発生個所の特定精度を向上させる中継装置などを提供することを目的とする。
上記課題を解決するために、本発明の一態様に係る中継装置は、第一通信インタフェースと、第二通信インタフェースと、前記第一通信インタフェースが受信したパケットを前記第二通信インタフェースへ転送する転送部と、所定の通信に係る一連のパケットそれぞれが前記転送部によって転送されたか否かを示す転送情報を記憶している記憶部と、前記第一通信インタフェースによって回収用パケットを受信した場合に、受信した前記回収用パケット内の複数のフィールドのそれぞれに、前記一連のパケットそれぞれについての前記転送情報を1対1に対応付けて格納して、前記第二通信インタフェースにより送信する送信制御部とを備える。
これによれば、中継装置は、一連のパケットを転送したか否かを、パケットごとに示す情報を回収用パケットによって出力する。回収用パケットを受信した通信装置は、一連のパケットが中継装置によって転送されたか否かを、パケットごとに知ることができる。仮にネットワークにおいてパケットの重複が発生すると、送信者が送信した1つのパケットを、内容が同一である2つのパケットとして受信者が受信することになる。本発明の一態様に係る中継装置が出力する情報によれば、回収用パケットを受信した通信装置は、重複によって発生した2つのパケットを1つのパケットとして認識することができるので、パケットの重複が発生した場合であってもパケットロスの計数及び発生個所の特定の精度を向上することができる。このように、中継装置は、パケットの重複が発生し得るネットワークを介した通信において、パケットロスの発生個所の特定精度を向上させることができる。
また、前記所定の通信は、前記一連のパケットに含められるシーケンス番号による順序制御がなされる通信であり、前記転送情報は、前記一連のパケットそれぞれが前記転送部によって転送されたか否かを、当該パケットに含まれるシーケンス番号に対応付けて示し、前記複数のフィールドは、前記一連のパケットのシーケンス番号それぞれに1対1に対応付けられた、前記回収用パケット内の一連のビットであってもよい。
これによれば、中継装置は、シーケンス番号によって一連のパケットそれぞれを識別し、各パケットについての転送の情報を回収用パケットの各ビットに格納する。これにより、一連のパケットそれぞれを容易に識別し、また、転送情報を回収用パケットに効率よく格納できる。このように、中継装置は、パケットの特定に係る処理を容易にし、また、回収用パケットに必要なデータサイズを抑制しながら、パケットロスの発生個所の特定精度を向上させることができる。
また、前記転送部は、前記所定の通信に係るパケットを前記第二通信インタフェースへ転送した場合に、当該パケットを転送したことを示す情報を、当該パケットのシーケンス番号に対応付けて前記転送情報に追加することで、前記転送情報を更新してもよい。
これによれば、中継装置は、パケットを転送するごとに新たな転送情報を生成することによって、継続的に、パケットロスの発生個所の特定精度を向上させることができる。
また、前記所定の通信は、所定のTCP(Transmission Control Protocol)ポート番号を有するTCPパケットを用いた通信であり、前記シーケンス番号は、TCPシーケンス番号であり、前記転送情報は、前記所定のTCPポート番号である、すべてのTCPポート番号のうちのいずれかを有する一連のパケットそれぞれが前記転送部によって転送されたか否かを示しており、前記回収用パケットには、回収用TCPポート番号が格納されており、前記送信制御部は、前記転送情報のうち、前記回収用TCPポート番号に係る転送情報を参照して、前記回収用TCPポート番号を有する前記一連のパケットそれぞれが前記転送部によって転送されたか否かを示す情報を前記回収用パケットに格納して、前記第二通信インタフェースにより送信してもよい。
これによれば、中継装置は、すべてのTCPポート番号のデータについての転送情報を保有しておき、回収用ポートとして指定された転送情報のみを提示できる。ユーザは、転送情報を取得する範囲を予め定める必要がなく、回収用パケットにより回収用ポートを指定することで、所望のTCPポートの転送情報を得ることができる。
また、前記送信制御部は、受信した前記回収用パケット内に、前記一連のパケットそれぞれが他の中継装置の転送部によって転送されたか否かを示す転送情報である第一情報が格納されている場合には、格納されている前記第一情報の後ろに、前記記憶部に記憶されている前記転送情報を格納してもよい。
これによれば、中継装置は、受信した回収用パケットに含まれている第一情報を残したまま、自装置の転送情報に基づく第二情報を含める。よって、回収用パケットを受信した通信装置は、1以上の中継装置がネットワークに含まれている場合に、中継装置それぞれの前後でパケットがロスしたか否かを知ることができる。
また、前記送信制御部は、受信した前記回収用パケット内に、前記一連のパケットそれぞれが他の中継装置の転送部によって転送されたか否かを示す転送情報である第一情報が2つ格納されている場合には、格納されている先頭から2つ目の前記第一情報を、前記記憶部に記憶されている前記転送情報に上書きしてもよい。
これによれば、中継装置は、受信した回収用パケットに含まれている2つの第一情報のうち、先頭の第一情報を残し、先頭から2つ目の第一情報を削除して、自装置の転送情報に基づく第二情報を含める。よって、回収用パケットを受信した通信装置は、2以上の中継装置がネットワークに含まれている場合に、最初の中継装置と、最後の中継装置とのそれぞれの前後でパケットがロスしたか否かを知ることができる。
また、上記課題を解決するために、本発明の一態様に係る通信システムは、上述したいずれかの中継装置である第一中継装置と、上述したいずれかの中継装置である第二中継装置と、前記第一中継装置の第一通信インタフェースに接続された第一端末と、前記第二中継装置の第二通信インタフェースに接続された第二端末とを備え、前記第二中継装置の第一通信インタフェースは、前記第一中継装置の第二通信インタフェースに接続されており、前記第一端末は、前記回収用パケットを前記第一中継装置に送信し、前記第二端末は、前記第一端末が送信した前記回収用パケットを、前記第一中継装置及び前記第二中継装置を経て受信し、受信した前記回収用パケットに格納された前記転送情報に基づいて、前記第一端末から第一中継装置までの第一区間、第一中継装置から第二中継装置までの第二区間、及び、第二中継装置から第二端末までの第三区間を含む区間ごとに、複数のデータパケットそれぞれが転送されたか否かを示す情報を提示する。
これによれば、上記中継装置と同様の効果を奏し、回収用パケットを受信した第二端末によってパケットロスの発生個所の特定精度を向上させることができる。
また、上記課題を解決するために、本発明の一態様に係る制御方法は、第一通信インタフェースと第二通信インタフェースとを備える中継装置の制御方法であって、前記第一通信インタフェースが受信したパケットを前記第二通信インタフェースへ転送する転送ステップと、前記第一通信インタフェースによって回収用パケットを受信した場合に、所定の通信に係る一連のパケットそれぞれが前記転送ステップによって転送されたか否かを示す転送情報を参照して、受信した前記回収用パケット内の複数のフィールドのそれぞれに、前記一連のパケットそれぞれが前記転送ステップによって転送されたか否かを示す情報を1対1に対応付けて格納して、前記第二通信インタフェースにより送信する格納ステップとを含む。
これによれば、上記中継装置と同様の効果を奏する。
また、上記課題を解決するために、本発明の一態様に係るプログラムは、上述した制御方法をコンピュータに実行させる。
これによれば、上記中継装置と同様の効果を奏する。
なお、本発明は、装置として実現できるだけでなく、その装置を構成する処理手段をステップとする方法として実現したり、それらステップをコンピュータに実行させるプログラムとして実現したり、そのプログラムを記録したコンピュータ読み取り可能なCD-ROMなどの記録媒体として実現したり、そのプログラムを示す情報、データ又は信号として実現したりすることもできる。そして、それらプログラム、情報、データ及び信号は、インターネット等の通信ネットワークを介して配信してもよい。
本発明により、通信装置は、パケットロスの発生個所の特定精度を向上させる。
図1は、実施の形態に係る通信システムの構成を示す模式図である。 図2は、実施の形態に係る中継装置の構成を示すブロック図である。 図3は、データパケットのフィールドを示す説明図である。 図4は、実施の形態に係る記憶部が記憶している転送情報の説明図である。 図5は、実施の形態に係る回収用パケットの転送を示す説明図である。 図6は、実施の形態に係る回収用パケットの構造を示す説明図である。 図7は、実施の形態に係る通信システムにおけるパケットロスの発生個所を示す画像の一例を示す説明図である。 図8は、実施の形態に係る中継装置によるパケット転送処理と、転送情報の格納処理とを示すフロー図である。 図9は、実施の形態の変形例に係る通信システムの構成を示す模式図である。 図10は、実施の形態の変形例に係る転送情報の合成処理を示す説明図である。
以下、実施の形態について、図面を参照しながら具体的に説明する。
以下で説明する実施の形態は、いずれも本発明の好ましい一具体例を示すものである。以下の実施の形態で示される数値、形状、材料、構成要素、構成要素の配置位置及び接続形態、ステップ、ステップの順序などは、一例であり、本発明を限定する主旨ではない。また、以下の実施の形態における構成要素のうち、本発明の最上位概念を示す独立請求項に記載されていない構成要素については、より好ましい形態を構成する任意の構成要素として説明される。なお、同一の構成要素には同一の符号を付し、説明を省略する場合がある。
(実施の形態)
本実施の形態において、パケットロスの発生個所の特定精度を向上させる中継装置等について説明する。
図1は、本実施の形態に係る通信システム1の構成を示す模式図である。図1に示される通信システム1は、2つの拠点であるキャンパスA及びキャンパスBをネットワークNを介して接続する通信システムである。ここでは、キャンパスAの音声又は映像をキャンパスBに送信する場合を例として説明するが、キャンパスBからキャンパスAへの音声又は映像の送信も同時並行的になされ得る。
キャンパスAには、中継装置R1と端末T1とが配置されている。端末T1は、例えば、キャンパスAにおける音声又は映像を取得し、音声データ又は映像データをデータパケットとして、TCP(Transmission Control Protocol)又は、RTP((Real-Time Transport Protocol))などの通信によって送信する会議端末である。中継装置R1は、キャンパスAのゲートウェイとして機能する装置である。
キャンパスBには、中継装置R2と端末T2とが配置されている。端末T2は、端末T1が送信する音声データ又は映像データを受信して再生する会議端末である。中継装置R2は、キャンパスBのゲートウェイとして機能する装置である。
通信システム1において、端末T1から端末T2にデータパケットを送信する場合、端末T1から中継装置R1までの区間、中継装置R1から中継装置R2までの区間、中継装置R2から端末T2までの区間においてパケットロスが発生し得る。
通信システム1では、端末T1及びT2、並びに、中継装置R1及びR2による処理により、上記のいずれの区間でパケットロスが発生したかをパケットごとに特定することで、パケットロスの発生個所の特定精度を向上させる。パケットロスの特定方法について、以下で詳細に説明する。
図2は、本実施の形態に係る中継装置R1の構成を示すブロック図である。
図2に示されるように、中継装置R1は、通信IF11及び12と、転送部13と、記憶部14と、送信制御部15とを備える。中継装置R1は、例えば、ルータ、無線基地局又はファイアウォール装置などである。
通信IF11は、通信によってデータを送受信する通信インタフェースである。通信IF11は、端末T1の通信IF(不図示)と通信可能に接続されている。通信IF11は、端末T1から、データパケット、及び、回収用パケット(詳細は後述)を受信する。通信IF11が受信するデータパケットは、例えば音声データ又は映像データであるが、これに限られず、テキストデータなどを含む一般のデータであってもよい。通信IF11は、IEEE802.11a、b、g、n規格等に適合する無線LAN、又は、IEEE802.3規格等に適合する有線LANの通信インタフェースである。特に、中継装置R1が無線基地局である場合には、通信IF11は、無線通信をする通信インタフェースである。
通信IF12は、通信によってデータを送受信する通信インタフェースである。通信IF12は、中継装置R2の通信IF(不図示)と通信可能に接続されている。通信IF12は、IEEE802.11a、b、g、n規格等に適合する無線LAN、又は、IEEE802.3規格等に適合する有線LANの通信インタフェースである。
転送部13は、通信IF11が受信したパケットを通信IF12へ転送する。転送部13は、通信IF11が端末T1からパケットを受信した場合に、受信したパケットに含まれている宛先アドレスと、管理している経路表等とを参照して、その宛先アドレスに向けてパケットを送信できる通信IFにパケットを転送する。ここでは、宛先アドレスに向けてパケットを送信できる通信IFが通信IF12である場合を説明している。転送部13は、プロセッサがプログラムを実行することで実現されてもよいし、専用ハードウェアによって実現されてもよい。
なお、転送部13による転送は、例えば、パケット内に格納されたIP(Internet Protocol)アドレスに基づく転送であるIPルーティングであってもよいし、パケット内に格納されたMAC(Media Access Control)アドレスに基づく転送であるブリッジングであってもよいし、その他の転送であってもよい。
また、転送部13は、通信IF11で受信したパケットが回収用パケットであるか否かを判定する。具体的には、転送部13は、回収用パケットが満たすべき条件(例えば、予め定められたTCPポート番号、UDPポート番号、又は、IPヘッダ内のプロトコル番号に一致するか否か)をもとに、通信IF11で受信したパケットが回収用パケットであるか否かを判定する。当該条件は、工場出荷時に予め設定されていてもよいし、ユーザにより、例えば設定ツールによって設定されてもよい。
また、転送部13は、転送したパケットを示す転送情報17を生成して記憶部14に格納し、また、転送情報17を更新する。転送情報17は、所定の通信に係る一連のパケットそれぞれが転送部13によって転送されたか否かを、当該パケットのシーケンス番号に対応付けて示す情報である。そして、転送部13は、所定のTCPポート番号を有するパケットを通信IF12へ転送した場合に、当該パケットを転送したことを示す情報を、当該パケットのシーケンス番号に対応付けて転送情報に追加することで、転送情報を更新する。
なお、所定の通信は、一例として、当該一連のパケットに含められるシーケンス番号による順序制御がなされる通信である。所定の通信の具体例は、TCPであり、この場合、TCPヘッダに含まれるシーケンス番号(TCPシーケンス番号ともいう)による順序制御がなされる。また、所定の通信の別の具体例は、RTPであり、この場合、RTPヘッダに含まれるシーケンス番号による順序制御がなされる。以降では、所定の通信がTCPによる通信である場合を例として説明する。
記憶部14は、転送情報17が記憶される記憶装置である。記憶部14には、転送部13によって転送情報17が格納及び更新される。また、記憶部14に格納された転送情報17は、送信制御部15により読み出される。
送信制御部15は、転送情報17に基づく情報を回収用パケットに格納する。具体的には、送信制御部15は、通信IF11によって回収用パケットを受信した場合に、受信した回収用パケット内の複数のフィールドのそれぞれに、一連のパケットそれぞれについての転送情報17を1対1に対応付けて格納して、通信IF12により送信する。ここで、複数のフィールドは、上記一連のパケットのシーケンス番号それぞれに1対1に対応付けられた、回収用パケット内の一連のビットである。なお、送信制御部15は、回収用パケット内の既存のフィールドの後ろに転送情報17を格納する場合と、既存のフィールドの一部を上書きして転送情報17を格納する場合とがある。これらについては、後で詳しく説明する。送信制御部15は、プロセッサがプログラムを実行することで実現されてもよいし、専用ハードウェアによって実現されてもよい。
なお、記憶部14が記憶している転送情報17についての「所定のTCPポート番号」は、すべてのTCPポート番号を指すものとしてもよい。この場合、回収用パケットに格納されるポート番号(回収用ポート番号ともいう)に係る転送情報が回収用パケットに含められる。言い換えれば、転送情報17は、所定のTCPポート番号である、すべてのTCPポート番号のうちのいずれかを有する一連のパケットそれぞれが転送部13によって転送されたか否かを示していてもよい。その場合、回収用パケットには、回収用TCPポート番号が格納されている。そして、送信制御部15は、転送情報17のうち、回収用TCPポート番号に係る転送情報を参照して、回収用TCPポート番号を有する一連のパケットそれぞれが転送部13によって転送されたか否かを示す情報を回収用パケットに格納して、通信IF12により送信する。以降では、この場合を例として説明する。
なお、回収用パケットは、端末T1が端末T2を宛先として送信するパケットであり、言い換えれば、中継装置R1を宛先としたパケットではない。そのため、端末T1は、パケットを送信するに際して、中継装置R1のアドレスを知る必要がない。
また、回収用パケットは、TCPパケット、RTPパケット又はその他のIPパケットである。回収用パケットは、予め定められたTCPポート番号、UDPポート番号、又は、IPヘッダ内のプロトコル番号を有しており、送信制御部15は、通信IF11が受信したパケットが回収用パケットであるか否かを判定できるとする。なお、UDPでは、シーケンス番号による順序制御はなされないが、RTPでは、RTPヘッダ内に含められるシーケンス番号による順序制御がなされ得る。
なお、回収用パケットは、例えば、端末T1を使用しているユーザが、端末T2との通信品質の良否を判断したいと考えたときに、ユーザが端末T1を操作することで、端末T1から送信され得る。
以降において、転送部13の処理について詳細に説明する。
図3は、データパケット30のフィールドを示す説明図である。図3に示されるデータパケット30は、公知のTCPパケットである。データパケット30は、端末T1が端末T2を宛先として送信するデータパケットである。
図3に示されるように、データパケット30は、IPヘッダ31と、TCPヘッダ32と、データ33とを有する。
IPヘッダ31は、送信元IPアドレス(SIP)35と、宛先IPアドレス(DIP)36とを有する。送信元IPアドレス35が端末T1のIPアドレスであり、宛先IPアドレス36が端末T2のIPアドレスである。なお、IPヘッダ31は、上記の他にもフィールドを有するが、説明を省略する。
TCPヘッダ32は、送信元ポート番号(SPort)37と、宛先ポート番号(DPort)38と、シーケンス番号39とを有する。送信元ポート番号37と宛先ポート番号38とは、TCPセッションの開始時に端末T1及びT2により決定され、同一TCPセッションには同一の送信元ポート番号37と宛先ポート番号38との組が使用される。シーケンス番号39は、一連のTCPパケットに付けられる連番である。なお、TCPヘッダ32は、上記の他にもフィールドを有するが、説明を省略する。
データ33は、TCPペーロードに含まれるデータであり、このデータパケット30によって運ばれるデータ(例えば音声データ又は映像データ)である。
図4は、本実施の形態に係る記憶部14が記憶している転送情報40の説明図である。
図4に示されるように、転送情報40は、1以上のポート番号について、当該ポート番号を有する一連のパケットのそれぞれが転送部13によって転送されたか否かを示している。なお、「ポート番号を有するパケット」という場合、送信元ポート番号として有する場合、宛先ポート番号として有する場合、又は、送信元ポート番号と宛先ポート番号との組として有する場合のいずれであってもよい。
ここで、一連のパケットのそれぞれは、シーケンス番号により一意に特定され得る。また、パケットが転送部13によって転送されたことが「1」で示され、転送されていないことが「0」で示されている。
例えば、転送情報40内の1行目は、ポート番号が80である一連のパケットについて、シーケンス番号が101、102、104及び105であるパケットを転送部13が転送したこと、及び、シーケンス番号が103であるパケットを転送部13が転送していないことを示している。
また、転送情報40内の2行目は、ポート番号が443である一連のパケットについて、シーケンス番号が101~104であるパケットを転送部13が転送したこと、及び、シーケンス番号が105であるパケットを転送部13が転送していないことを示している。
なお、ポート番号として、送信元ポート番号と宛先ポート番号との組を用いる場合、転送情報40のポート番号の欄に、送信元ポート番号と宛先ポート番号との組(例えば、送信元ポート番号が50000、宛先ポート番号が80)が用いられる。
図5は、本実施の形態に係る通信システム1による回収用パケット50等の転送を示す説明図である。図6は、本実施の形態に係る回収用パケット50Bの構造を示す説明図である。
図5に示されるように、回収用パケット50は、端末T1によって生成及び送信される。回収用パケット50は、端末T1が端末T2を宛先として送信するパケットであって、ポート番号が80であるパケットの転送情報を中継装置R1及びR2から回収するためのパケットである。回収用パケット50は、ヘッダ51及び管理情報52を有する。
回収用パケット50は、端末T1によって送信された後、中継装置R1によって転送情報フィールドFAが付加されて回収用パケット50Aとして送信される。
さらに、回収用パケット50Aは、中継装置R2によって転送情報フィールドFBが付加されて回収用パケット50Bとして送信され、端末T2に受信される。このように、送信制御部15は、受信した回収用パケット内に、一連のパケットそれぞれが他の中継装置(中継装置R1)の転送部13によって転送されたか否かを示す転送情報である第一情報が格納されている場合には、格納されている第一情報の後ろに記憶部14に記憶されている転送情報17を格納する。
なお、端末T1と端末T2とを結ぶ通信経路上に、3以上の中継装置が存在する場合には、転送情報を上記のように追加してもよいし、3つ目以降の中継装置が、先頭から2つ目の転送情報を上書きするようにしてもよい。言い換えれば、送信制御部15は、受信した回収用パケット内に、一連のパケットそれぞれが他の中継装置の転送部13によって転送されたか否かを示す転送情報である第一情報が2つ格納されている場合には、格納されている先頭から2つ目の第一情報を、記憶部14に記憶されている転送情報17に上書きする。
次に、図6を参照しながら回収用パケット50等の構造を説明する。図6には、回収用パケット50Bの構造が示されているが、図6における転送情報フィールドFBが存在しないものが回収用パケット50Aに相当し、図6における転送情報フィールドFA及びFBが存在しないものが回収用パケット50に相当する。
図6に示されるように回収用パケット50は、ヘッダ51と、管理情報52と、転送情報フィールドFA及びFBとを有する。
ヘッダ51は、回収用パケット50の送信元及び宛先などを示すヘッダであり、IPヘッダを含む。また、ヘッダ51は、TCPヘッダを含んでもよいし、UDPヘッダとRTPヘッダとを含んでもよい。
ヘッダ51の送信元IPアドレス(SIP)56は、端末T1のアドレスであり、宛先IPアドレス(DIP)57は、端末T2のアドレスである。
管理情報52には、回収用ポート58が含まれる。回収用ポート58は、ポート番号である80が格納される。
転送情報フィールドFAは、中継装置R1の転送情報が格納されている。転送情報フィールドFA内のビットA1、A2、・・・、Anには、ポート番号が80である一連のパケットが中継装置R1により転送されたか否かを示す転送情報が格納されている。ここで、各ビットは、一連のパケットのシーケンス番号に1対1に対応付けられている。具体的には、上記の各ビットの先頭から末尾に、順に、一連のn個のパケットの先頭から末尾のそれぞれに対応するパケットの転送情報が格納されている。より具体的には、転送情報フィールドFA内の先頭のビットA1には、一連のパケットうちの最初のパケットのシーケンス番号が対応付けられており、先頭から2番目のビットA2には、一連のパケットうちの先頭から2番目のパケットのシーケンス番号が対応付けられている。以降のビット及びシーケンス番号についても同様である。
転送情報フィールドFBは、中継装置R2の転送情報が格納されたフィールドである。転送情報フィールドFB内のビットB1、B2、・・・、Bnには、ポート番号が80である一連のパケットが中継装置R2により転送されたか否かを示す転送情報が格納されている。各ビットに含められる転送情報は、転送情報フィールドFAと同様であるので詳細な説明を省略する。
図7は、本実施の形態に係る通信システム1におけるパケットロスの発生個所を示す画像の一例である画像60を示す説明図である。画像60は、回収用パケット50Bを受信した端末T2がパケットロスの発生個所を特定して生成する画像の一例である。この画像は、例えば、端末2が有する表示装置(例えば液晶パネル)(不図示)に表示され得る。
端末T2は、回収用パケット50Bを受信すると、回収用パケット50Bに含まれる転送情報フィールドFA及びFBと、端末T2がパケットを受信したか否かとに基づいて、パケットそれぞれについてのパケットロスの発生個所を特定する。パケットロスの発生個所は、端末T1から中継装置R1までの第一区間、中継装置R1から中継装置R2までの第二区間、及び、中継装置R2から端末T2までの第三区間のいずれかに特定され得る。
具体的には、中継装置R1により転送されていない(つまり転送情報フィールドFAにおいて「0」で示される)パケットは、第一区間でロスしたと特定される。
また、中継装置R1により転送された(つまり転送情報フィールドFAにおいて「1」で示される)パケットであって、中継装置R2により転送されていない(つまり転送情報フィールドFBにおいて「0」で示される)パケットは、第二区間でロスしたと特定される。
また、中継装置R2により転送された(つまり転送情報フィールドFBにおいて「1」で示される)パケットであって、端末T2が受信していないパケットは、第三区間でロスしたと特定される。
端末T2は、このようにパケットロスが生じた区間を特定し、そのパケットロスの区間を示す画像60を生成する。
画像60において、端末T1、中継装置R1及びR2、及び、端末T2を模擬した画像が、左から右へ並んで配置されている。そして、端末T1を模擬した図形の下に、端末T1が送信したパケットを示す図形61がそのシーケンス番号とともに表示されている。また、ロスしたパケットについては、ロスした区間に「×」印の図形62が表示されており、端末T2に到達したパケットについては、端末T2に到達したことを示す図形63が、端末T2を模擬した図形の下に表示されている。
例えば、図7には、シーケンス番号が101及び102であるパケットが端末T2に到達し、シーケンス番号が103であるパケットが第一区間でロスし、シーケンス番号が104であるパケットが第二区間でロスし、シーケンス番号が105であるパケットが第三区間でロスしたことが示されている。
なお、図7では、回収用パケット50Bを受信した端末T2の表示装置に表示される画像60を示しているが、画像60は、端末T2が送信した回収用パケットを取得した端末T1の表示装置(不図示)に表示されてもよい。
図8は、本実施の形態に係る中継装置R1によるパケット転送処理と、転送情報の格納処理とを示すフロー図である。
ステップS101において、通信IF11がパケットを受信したか否かを判定する。通信IF11がパケットを受信したと判定した場合(ステップS101でYes)には、ステップS102に進み、そうでない場合(ステップS101でNo)には、ステップS101を再び実行する。つまり、通信IF11は、パケットを受信するまでステップS101で待機する。
ステップS102において、転送部13は、ステップS101で受信したパケットが回収用パケットであるか否かを判定する。回収用パケットであるか否かの判定は、回収用パケットが満たすべき条件、例えば、予め定められたTCPポート番号、UDPポート番号、又は、IPヘッダ内のプロトコル番号に一致するか否かによりなされる。上記パケットが回収用パケットであると判定した場合(ステップS102でYes)には、ステップS103に進み、そうでない場合(ステップS102でNo)には、ステップS111に進む。
ステップS103において、送信制御部15は、ステップS101で受信した回収用パケットに転送情報17を格納する。
ステップS104において、送信制御部15は、ステップS103で転送情報17を格納した回収用パケットを通信IF12へ転送し、通信IF12により送信させる。ステップS104を終えたら、再びステップS101を実行する。
ステップS111において、転送部13は、ステップS101で受信したパケットを、受信したパケットに含まれている宛先アドレスに向けて送信できる通信IF12に転送し、その通信IF12により送信させる。
ステップS112において、転送部13は、ステップS111で転送したパケットを転送したことを示す情報を、そのパケットのシーケンス番号に対応付けて転送情報17に追加することで、転送情報17を更新する。ステップS112を終えたら、再びステップS101を実行する。
以上の一連の処理により、中継装置R1は、端末T1から受信したパケットを端末T2に向けて転送し、また、端末T1から受信した回収用パケットに転送情報を格納して端末T2に向けて転送する。
また、中継装置R2も図8に示された一連の処理を実行する。これにより、中継装置R2は、端末T1から中継装置R1を経て受信したパケットを端末T2に向けて転送し、また、端末T1から中継装置R1を経て受信した回収用パケットに転送情報を格納して端末T2に向けて転送する。
端末T2は、端末T1が送信したパケットを中継装置R1及びR2を経て受信する。端末T1が送信したデータに音声データ又は映像データが含まれている場合には、端末T2は、音声データ又は映像データに基づいて音声又は映像を再生する。
また、端末T2は、中継装置R1及びR2の転送情報が格納された回収用パケットを受信し、一連のパケットのパケットロスの位置を示す情報(例えば図7の画像60)を提示する。具体的には、端末T2は、端末T1が送信した回収用パケットを、中継装置R1及びR2を経て受信し、受信した回収用パケットに格納された転送情報に基づいて、第一区間、第二区間、及び、第三区間を含む区間ごとに、複数のパケットそれぞれが転送されたか否かを示す情報を提示する。
(変形例)
図9は、本変形例に係る通信システム2の構成を示す模式図である。図9に示される通信システム2は、2つの拠点であるキャンパスA及びキャンパスBをネットワークNを介して接続する通信システムである。
キャンパスAは、実施の形態におけるものと同じである。
キャンパスBには、中継装置R2及びR3と端末T2とが配置されている。中継装置が2台配置される点で、実施の形態におけるキャンパスBと異なる。
通信システム2に2台の中継装置R2及びR3が配置される場合、端末T1が送信したパケットは、中継装置R2を経由して端末T2に受信される場合と、中継装置R3を経由して端末T2に受信される場合とがある。さらに、ネットワークNなどにおいてパケットの重複が発生することを考慮すれば、端末T1が送信したパケットが重複によって2個になり、一方が中継装置R2を経由して端末T2に受信され、他方が中継装置R3を経由して端末T2に受信される場合がある。この場合には、端末T1による1個のパケットの送信が、端末T2による2個のパケットの受信を引き起こす。そのため、単に、端末T1の送信パケット数と、端末T2の受信パケット数とを比較しただけでは、パケットロスを正確に判定することができない。
中継装置R1などは、パケット数だけに基づくのではなく、一連のパケットそれぞれを転送したか否かに基づいて転送情報17を管理している。そして、端末T2は、その転送情報17を用いてシーケンス番号に基づいてパケットロスを特定するので、たとえパケットがネットワークNにおいて重複した場合であっても、パケットロス数を適切に計数することができる。
図10は、実施の形態の変形例に係る転送情報の合成処理を示す説明図である。
図10の(a)は、端末T1が送信し、中継装置R1及びR2を経て端末T2に受信された回収用パケット50Cを示している。回収用パケット50Cには、転送情報フィールドFA及びFCが含まれている。転送情報フィールドFCは、図6における転送情報フィールドFBと同様に、シーケンス番号が101であるパケットからn個分のパケットの転送情報がビットC1、C2、・・・、Cnに格納されている。
図10の(b)は、端末T1が送信し、中継装置R1及びR3を経て端末T2に受信された回収用パケット50Dを示している。回収用パケット50Dには、転送情報フィールドFA及びFDが含まれている。転送情報フィールドFDは、図6における転送情報フィールドFBと同様に、シーケンス番号が101であるパケットからn個分のパケットの転送情報がビットD1、D2、・・・、Dnに格納されている。
そして、図10の(c)に示されるように、端末T2は、回収用パケット50Cと50Dとを受信し、回収用パケット50Cと50Dとに含まれている転送情報フィールドFC及びFDに基づいて一連のパケットそれぞれが中継装置R2又はR3の少なくとも一方により転送されたか、そうでないかを示す転送情報フィールドFEを得る。このとき、端末T2は、転送情報フィールドFC及びFDのOR演算をすることで、転送情報フィールドFEのビットE1、E2、・・・、Enを得ることができる。これにより、重複したパケットが二重にカウントされることがない利点がある。
以上のように、本実施の形態及び変形例に係る中継装置は、一連のパケットを転送したか否かを、パケットごとに示す情報を回収用パケットによって出力する。回収用パケットを受信した通信装置は、一連のパケットが中継装置によって転送されたか否かを、パケットごとに知ることができる。仮にネットワークにおいてパケットの重複が発生すると、送信者が送信した1つのパケットを、内容が同一である2つのパケットとして受信者が受信することになる。本発明の一態様に係る中継装置が出力する情報によれば、回収用パケットを受信した通信装置は、重複によって発生した2つのパケットを1つのパケットとして認識することができるので、パケットの重複が発生した場合であってもパケットロスの計数及び発生個所の特定の精度を向上することができる。このように、中継装置は、パケットの重複が発生し得るネットワークを介した通信において、パケットロスの発生個所の特定精度を向上させることができる。
また、中継装置は、シーケンス番号によって一連のパケットそれぞれを識別し、各パケットについての転送の情報を回収用パケットの各ビットに格納する。これにより、一連のパケットそれぞれを容易に識別し、また、転送情報を回収用パケットに効率よく格納できる。このように、中継装置は、パケットの特定に係る処理を容易にし、また、回収用パケットに必要なデータサイズを抑制しながら、パケットロスの発生個所の特定精度を向上させることができる。
また、中継装置は、パケットを転送するごとに新たな転送情報を生成することによって、継続的に、パケットロスの発生個所の特定精度を向上させることができる。
また、中継装置は、すべてのTCPポート番号のデータについての転送情報を保有しておき、回収用ポートとして指定された転送情報のみを提示できる。ユーザは、転送情報を取得する範囲を予め定める必要がなく、回収用パケットにより回収用ポートを指定することで、所望のTCPポートの転送情報を得ることができる。
また、中継装置は、受信した回収用パケットに含まれている第一情報を残したまま、自装置の転送情報に基づく第二情報を含める。よって、回収用パケットを受信した通信装置は、1以上の中継装置がネットワークに含まれている場合に、中継装置それぞれの前後でパケットがロスしたか否かを知ることができる。
また、中継装置は、受信した回収用パケットに含まれている2つの第一情報のうち、先頭の第一情報を残し、先頭から2つ目の第一情報を削除して、自装置の転送情報に基づく第二情報を含める。よって、回収用パケットを受信した通信装置は、2以上の中継装置がネットワークに含まれている場合に、最初の中継装置と、最後の中継装置とのそれぞれの前後でパケットがロスしたか否かを知ることができる。
また、通信システムは、上記中継装置と同様の効果を奏し、回収用パケットを受信した第二端末によってパケットロスの発生個所の特定精度を向上させることができる。
なお、本発明は、装置として実現できるだけでなく、その装置を構成する処理手段をステップとする方法として実現したり、それらステップをコンピュータに実行させるプログラムとして実現したり、そのプログラムを記録したコンピュータ読み取り可能なCD-ROMなどの記録媒体として実現したり、そのプログラムを示す情報、データ又は信号として実現したりすることもできる。そして、それらプログラム、情報、データ及び信号は、インターネット等の通信ネットワークを介して配信してもよい。
以上、本発明の中継装置等について、実施の形態に基づいて説明したが、本発明は、この実施の形態に限定されるものではない。本発明の趣旨を逸脱しない限り、当業者が思いつく各種変形を本実施の形態に施したものや、異なる実施の形態における構成要素を組み合わせて構築される形態も、本発明の範囲内に含まれる。
本発明は、パケットロスの発生個所の特定精度を向上させる課題解決する中継装置に適用され得る。具体的には、ルータ、無線基地局又はファイアウォール装置等に適用され得る。
1、2 通信システム
11、12 通信IF
13 転送部
14 記憶部
15 送信制御部
17、40 転送情報
30 データパケット
31 IPヘッダ
32 TCPヘッダ
33 データ
35、56 SIP
36、57 DIP
37 Sport
38 Dport
39 シーケンス番号
50、50A、50B、50C、50D 回収用パケット
51 ヘッダ
52 管理情報
58 回収用ポート
60 画像
61、62、63 図形
A1~A5、An、B1~B5、Bn、C1~C5、Cn、D1~D5、Dn、E1~E5、En ビット
FA、FB、FC、FD、FE 転送情報フィールド
N ネットワーク
R1、R2、R3 中継装置
T1、T2 端末

Claims (9)

  1. 第一通信インタフェースと、
    第二通信インタフェースと、
    前記第一通信インタフェースが受信したパケットを前記第二通信インタフェースへ転送する転送部と、
    所定の通信に係る一連のパケットそれぞれが前記転送部によって転送されたか否かを示す転送情報を記憶している記憶部と、
    前記第一通信インタフェースによって回収用パケットを受信した場合に、受信した前記回収用パケット内の複数のフィールドのそれぞれに、前記一連のパケットそれぞれについての前記転送情報を1対1に対応付けて格納して、前記第二通信インタフェースにより送信する送信制御部とを備え
    前記回収用パケットは、前記一連のパケットの送信元端末が、前記一連のパケットの受信端末を宛先として送信したパケットである
    中継装置。
  2. 前記所定の通信は、前記一連のパケットに含められるシーケンス番号による順序制御がなされる通信であり、
    前記転送情報は、前記一連のパケットそれぞれが前記転送部によって転送されたか否かを、当該パケットに含まれるシーケンス番号に対応付けて示し、
    前記複数のフィールドは、前記一連のパケットのシーケンス番号それぞれに1対1に対応付けられた、前記回収用パケット内の一連のビットである
    請求項1に記載の中継装置。
  3. 前記転送部は、前記所定の通信に係るパケットを前記第二通信インタフェースへ転送した場合に、当該パケットを転送したことを示す情報を、当該パケットのシーケンス番号に対応付けて前記転送情報に追加することで、前記転送情報を更新する
    請求項1に記載の中継装置。
  4. 前記所定の通信は、所定のTCP(Transmission Control Protocol)ポート番号を有するTCPパケットを用いた通信であり、
    前記シーケンス番号は、TCPシーケンス番号であり、
    前記転送情報は、前記所定のTCPポート番号である、すべてのTCPポート番号のうちのいずれかを有する一連のパケットそれぞれが前記転送部によって転送されたか否かを示しており、
    前記回収用パケットには、回収用TCPポート番号が格納されており、
    前記送信制御部は、前記転送情報のうち、前記回収用TCPポート番号に係る転送情報を参照して、前記回収用TCPポート番号を有する前記一連のパケットそれぞれが前記転送部によって転送されたか否かを示す情報を前記回収用パケットに格納して、前記第二通信インタフェースにより送信する
    請求項2に記載の中継装置。
  5. 前記送信制御部は、受信した前記回収用パケット内に、前記一連のパケットそれぞれが他の中継装置の転送部によって転送されたか否かを示す転送情報である第一情報が格納されている場合には、格納されている前記第一情報の後ろに、前記記憶部に記憶されている前記転送情報を格納する
    請求項1~4のいずれか1項に記載の中継装置。
  6. 前記送信制御部は、受信した前記回収用パケット内に、前記一連のパケットそれぞれが他の中継装置の転送部によって転送されたか否かを示す転送情報である第一情報が2つ格納されている場合には、格納されている先頭から2つ目の前記第一情報を、前記記憶部に記憶されている前記転送情報に上書きする
    請求項1~4のいずれか1項に記載の中継装置。
  7. 請求項1~6のいずれか1項に記載の中継装置である第一中継装置と、
    請求項1~6のいずれか1項に記載の中継装置である第二中継装置と、
    前記第一中継装置の第一通信インタフェースに接続された第一端末と、
    前記第二中継装置の第二通信インタフェースに接続された第二端末とを備え、
    前記第二中継装置の第一通信インタフェースは、前記第一中継装置の第二通信インタフェースに接続されており、
    前記第一端末は、前記回収用パケットを前記第一中継装置に送信し、
    前記第二端末は、前記第一端末が送信した前記回収用パケットを、前記第一中継装置及び前記第二中継装置を経て受信し、受信した前記回収用パケットに格納された前記転送情報に基づいて、前記第一端末から第一中継装置までの第一区間、第一中継装置から第二中継装置までの第二区間、及び、第二中継装置から第二端末までの第三区間を含む区間ごとに、複数のデータパケットそれぞれが転送されたか否かを示す情報を提示する
    通信システム。
  8. 第一通信インタフェースと第二通信インタフェースとを備える中継装置の制御方法であって、
    前記第一通信インタフェースが受信したパケットを前記第二通信インタフェースへ転送する転送ステップと、
    前記第一通信インタフェースによって回収用パケットを受信した場合に、所定の通信に係る一連のパケットそれぞれが前記転送ステップによって転送されたか否かを示す転送情報を参照して、受信した前記回収用パケット内の複数のフィールドのそれぞれに、前記一連のパケットそれぞれが前記転送ステップによって転送されたか否かを示す情報を1対1に対応付けて格納して、前記第二通信インタフェースにより送信する格納ステップとを含み、
    前記回収用パケットは、前記一連のパケットの送信元端末が、前記一連のパケットの受信端末を宛先として送信したパケットである
    制御方法。
  9. 請求項8に記載の制御方法をコンピュータに実行させるためのプログラム。
JP2018105207A 2018-05-31 2018-05-31 中継装置、通信システム、制御方法、及び、プログラム Active JP6993689B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018105207A JP6993689B2 (ja) 2018-05-31 2018-05-31 中継装置、通信システム、制御方法、及び、プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018105207A JP6993689B2 (ja) 2018-05-31 2018-05-31 中継装置、通信システム、制御方法、及び、プログラム

Publications (2)

Publication Number Publication Date
JP2019212984A JP2019212984A (ja) 2019-12-12
JP6993689B2 true JP6993689B2 (ja) 2022-01-13

Family

ID=68846971

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018105207A Active JP6993689B2 (ja) 2018-05-31 2018-05-31 中継装置、通信システム、制御方法、及び、プログラム

Country Status (1)

Country Link
JP (1) JP6993689B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113763995B (zh) * 2021-09-07 2023-04-18 中科计算技术西部研究院 一种自动配存流水线

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007028305A (ja) 2005-07-19 2007-02-01 Nec Corp 通信品質監視システム、通信品質監視装置、通信品質劣化箇所特定装置、その装置における方法及びプログラム
WO2010070749A1 (ja) 2008-12-17 2010-06-24 富士通株式会社 パケット送信装置、パケット受信装置、通信システム及びパケット通信方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007028305A (ja) 2005-07-19 2007-02-01 Nec Corp 通信品質監視システム、通信品質監視装置、通信品質劣化箇所特定装置、その装置における方法及びプログラム
WO2010070749A1 (ja) 2008-12-17 2010-06-24 富士通株式会社 パケット送信装置、パケット受信装置、通信システム及びパケット通信方法

Also Published As

Publication number Publication date
JP2019212984A (ja) 2019-12-12

Similar Documents

Publication Publication Date Title
US20200382406A1 (en) Routing table creation method, electronic device, and network
KR100916288B1 (ko) 네트워크 토폴로지의 결정을 위한 장치 및 방법
US20090013324A1 (en) Communication system, information processing system, connection server, processing server, information processing apparatus, information processing method and program
JP7488921B2 (ja) インサイチュフロー検出方法及び電子デバイス
US10021729B2 (en) Uninterrupted transmission of internet protocol transmissions during endpoint changes
US20090043889A1 (en) Communication system, data processing apparatus, server, data processing method, program that executes the data processing method, and recording medium to record the program
CN106850568B (zh) 多通道协议的会话老化方法及装置
JP2017135449A (ja) パケット中継方法およびパケット中継プログラム
JP6993689B2 (ja) 中継装置、通信システム、制御方法、及び、プログラム
KR101039550B1 (ko) 데이터 전송률 계산 방법 및 이를 이용한 대역폭 설정 방법
US7706279B2 (en) Communication performance measurement method
US20230327983A1 (en) Performance measurement in a segment routing network
JP4623317B2 (ja) 通信装置、ルーティング方法及びプログラム
WO2003101048A1 (fr) Systeme de traitement d'information
JP2023016993A5 (ja)
EP3267665A2 (en) Communication apparatus, control method, program and computer-readable storage medium
JP2004135065A (ja) 送信端末、受信端末及びデータ伝送システム
US20080212587A1 (en) Relay apparatus and packet relay method
JP2008085455A (ja) 無線lanクライアント
JP2005012672A (ja) パケット転送システム、パケット監視方法、呼制御装置、パケット転送装置、およびモニタ装置
KR102142708B1 (ko) 네트워크 시스템 및 이의 운용 방법
KR101841643B1 (ko) 중앙 서버 및 이에 의한 네트워크 검사 방법, 및 레이어-7 장비 및 이에 의한 검증 패킷 전달 방법
KR101589616B1 (ko) 네트워크 터널을 구성하는 제1터널 장비 및 제2터널 장비,및 이에 의한 검증 패킷 전달 방법
JP3499791B2 (ja) パケットルーチング方法及びパケットルーチング装置
US20230269151A1 (en) Performance Measurement Method and Apparatus, and System

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210416

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20210416

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20210420

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210720

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210917

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211203

R150 Certificate of patent or registration of utility model

Ref document number: 6993689

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150