JP2010035147A - 通信装置及びラウンドトリップ時間を求める方法 - Google Patents

通信装置及びラウンドトリップ時間を求める方法 Download PDF

Info

Publication number
JP2010035147A
JP2010035147A JP2009140383A JP2009140383A JP2010035147A JP 2010035147 A JP2010035147 A JP 2010035147A JP 2009140383 A JP2009140383 A JP 2009140383A JP 2009140383 A JP2009140383 A JP 2009140383A JP 2010035147 A JP2010035147 A JP 2010035147A
Authority
JP
Japan
Prior art keywords
data
transmission
search
time
memory
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.)
Granted
Application number
JP2009140383A
Other languages
English (en)
Other versions
JP5590825B2 (ja
Inventor
Masami Shimakura
正美 島倉
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.)
Canon Inc
Original Assignee
Canon 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 Canon Inc filed Critical Canon Inc
Priority to JP2009140383A priority Critical patent/JP5590825B2/ja
Publication of JP2010035147A publication Critical patent/JP2010035147A/ja
Application granted granted Critical
Publication of JP5590825B2 publication Critical patent/JP5590825B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • H04L43/0864Round trip delays

Landscapes

  • Engineering & Computer Science (AREA)
  • Environmental & Geological Engineering (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】ラウンドトリップ時間の短期的変動の把握や時間計測の精度向上。
【解決手段】通信装置が複数の送信データのそれぞれを特定するためのデータと、複数の送信データのそれぞれの送信時刻を示すデータとをメモリに記憶する。通信装置は、確認応答に対応する送信データを特定するためのデータを、確認応答に含まれる情報に基づいてメモリから検索する。そして、通信装置は、検索されたデータで特定される送信データの送信時刻と確認応答を受信した受信時刻とに基づいてラウンドトリップ時間を求める。
【選択図】図19

Description

本発明は、通信装置及びラウンドトリップ時間を求める方法に関する。
コネクション型のプロトコルであるTCPでは数種類のタイマを用いて通信途絶を回避している。これらのタイマに設定されるタイムアウト時間は次のようにして決定される。任意のシーケンス番号を保有するセグメントを他方のエンドに送信し、そのシーケンス番号が確認応答されるまでのラウンドトリップ時間を計測し、直前の伝送路の状況や他方のエンドの状況を反映させて決定する。特許文献1には、計測したラウンドトリップ時間に合わせて転送サイズを調整することが提案されている。
特許3476985号公報
従来では、ラウンドトリップ時間計測は、一回の計測が終了すると、次の計測を行う。したがって、従来は計測間隔が広く、結果として輻輳の発生や、他方のエンドの負荷変動などの急激な状況変化に追随できないという問題を抱える。
また、近年の10ギガビットのネットワークに代表されるように、通信メディアの広帯域化やネットワーク機器へのTOE(TCP/IP Offload Engine)組み込みなどが行われている。これにより、通信性能が向上し、ラウンドトリップ時間計測の精度向上が望まれている。
また、動画ストリームの配信やTV会議システムのようなコンテンツをリアルタイムで伝送するなどの応用例ではQoSの向上が望まれる。このQoSの向上の鍵はラウンドトリップ時間の短期的変動の把握や時間計測の精度向上にある。
本発明は、ラウンドトリップ時間計測の精度を向上させることを目的とする。
本発明は、データを送信先に送信し、該送信先からデータを受け取ったことを示す確認応答を受信する通信装置であって、
複数の送信データのそれぞれを特定するためのデータと、複数の送信データのそれぞれの送信時刻を示すデータとを記憶する記憶手段と、
確認応答に対応する送信データを特定するためのデータを、該確認応答に含まれる情報を元に前記記憶手段から検索する検索手段と、
前記検索手段により検索されたデータで特定される送信データの送信時刻と、前記確認応答を受信した受信時刻とに基づいてラウンドトリップ時間を求める手段と、
を有することを特徴とする。
本発明によれば、ラウンドトリップ時間計測の精度を向上させることができる。
本実施形態における通信装置の構成の一例を示すブロック図。 図1に示すTOEサブシステム105の内部構成の一例を示す図。 TOEサブシステムにおける複数のサブプロセッサの役割を説明する図。 本実施形態における通信タイマの構成の一例を示す図。 本実施形態におけるRTT計測処理部の構成の一例を示す図。 RTT計測処理部における検索テーブルの構成の一例と、RTT計測処理部におけるメモリの構成の一例とを示す図。 RTT計測処理部のメモリに保存される各種情報を示す図。 本実施形態における検索部を詳しく説明する図。 本実施形態におけるディスクリプタのデータ構造と、登録/参照データ・バッファの構造と、検索データとを示す図。 本実施形態におけるインターフェース部に内蔵するレジスタ・セットの構成を示す図。 本実施形態における検索ブロックを詳しく説明する図。 本実施形態における検索テーブルの構成と、1152ビット・ワードの内訳とを示す図。 本実施形態における比較器を詳しく説明する図。 本実施形態における比較器コア部を詳しく説明する図。 本実施形態における4bit全比較器1の真理値表を示す図。 本実施形態における4bit全比較器2の真理値表を示す図。 本実施形態の一致検索モードにおけるセレクタの真理値表を示す図。 本実施形態の範囲内検索モードにおけるセレクタの真理値表を示す図。 本実施形態におけるラウンドトリップ時間の計測方法を説明するためのタイムラインを示す図。 本実施形態におけるラウンドトリップ時間計測の終了時の処理を示すフローチャート。 本実施形態におけるタイムアウト時間の計算と設定を行う処理を示すフローチャート。
以下、図面を参照しながら発明を実施するための最良の形態について詳細に説明する。まず、TOEサブシステムを含む通信装置の構成を、図1及び図2を用いて説明する。尚、TOEは、TCP(Transmission Control Protocol)/IP(Internet Protocol)オフロードエンジンの略である。
図1は、本実施形態における通信装置の構成の一例を示すブロック図である。通信装置には、図1に示すように、各ユニット101、103、105〜108、110、112〜114、116、117が含まれ、それぞれがシステムバス102を介して接続されている。尚、システムバス102はクロスバースイッチ構造のオンチップバスであり、通信装置で求められる送受信データの並列転送動作が可能である。また、このオンチップバスは、AXI(Advanced eXtensible Interface)プロトコルを追加したオンチップバス規格であるAMBA3.0に準拠している。
主プロセッサ101は、電源投入時にフラッシュメモリ118内のブートプログラムを実行する。更に、各ハードウェアやサブシステムを初期化後に、HD(ハードディスク)装置111に格納されているソフトウェアを主メモリ104上にロードし、ソフトウェアに含まれるOS(オペレーティングシステム)を起動する。主メモリ制御部103は、主メモリ104へのアクセスを制御する。
TOEサブシステム105は、イーサネット(登録商標)120を介して外部のネットワークとの間で行われるデータ通信を制御する。このTOEサブシステム105の詳細な構成及び動作については、更に後述する。
割り込み制御部106は、各ハードウェアやTOEサブシステム105及び無線LANサブシステム113で割り込みイベントが発生すると、発生した割り込みイベントを予め決められた優先順位に従って主プロセッサ101に伝達する。タイマ107は、ソフトウェアなどにより起動され、時間計測やタイムアウトイベントを発生させる。表示制御部108は、アプリケーションの状態や設定内容などを表示する表示装置109を制御する。
二次記憶制御部110は、HD装置111へのアクセスを制御する。HD装置111には、通信装置の機能を実現するソフトウェアや関連データ、各サブシステム内のサブプロセッサやシーケンサで動作するマイクロコードと関連データなどが格納されている。更に、通信データや通信装置の動作履歴や通信履歴などの履歴情報も格納される。
主DMA制御部112は、主プロセッサ101と主メモリ104との間のデータ転送やメモリ間のデータ転送を制御する。
無線LANサブシステム113は、IEEE802.11a/b/g/n規格に準拠した無線LAN機能を提供する。汎用IOインタフェース114は、通信装置の動作モードの設定やIPアドレスに代表される各通信パラメータを入力するための入力キー115とのインターフェースである。汎用バスインタフェース116は、PCI(Peripheral Component Interconnect)に代表される汎用バスのインターフェースである。尚、PCIはPCI Special Interest Groupにより策定され、業界標準の汎用バスである。
メモリ制御部117は、書き換え可能な不揮発性メモリであるフラッシュメモリ118や高速な一次メモリ(キャッシュ)であるSRAM119へのアクセスを制御する。尚、このフラッシュメモリ118には、起動時に動作するブートプログラムや初期状態設定に必要なパラメータが格納される。更に、起動時に各ハードウェアを制御するためのデバイスドライバや各ハードウェア起動時の設定パラメータなどが保存される。
図2は、図1に示すTOEサブシステム105の内部構成の一例を示す図である。サブプロセッサA201〜E205、バスブリッジ206、PCB制御部210、通信タイマ212、共有メモリ213、鍵管理部214、乱数発生器215、暗号器216、データパス制御部217がサブシステムバス220に接続されている。サブシステムバス220はクロスバースイッチ接続である。
まず、サブプロセッサA201〜E205は、メイン側からオフロードされたTCP/IPプロトコル処理を実行する。サブプロセッサA201〜E205が実行するファームウェアはTOEサブシステム105の初期化時に主メモリ104上に展開され、ファームウェアを内蔵するそれぞれの命令キャッシュメモリにロードされて実行される。バスブリッジ206は、メイン側のシステムバス102とサブシステムバス220とを接続するものである。
PCB制御部210は、各ネットワークプロトコルを処理する場合に必要なコンテキスト情報やその集合体の名称であるPCBの生成と抹消、アクセス制御、保持管理を行う。PCBはプロトコル制御ブロック(Protocol Control Block)の略である。また、PCB制御部210には、サブプロセッサA201〜E205から短時間に参照又は書き換え可能とするためにPCBを一時的に保持するPCBキャッシュメモリ211が接続されている。
更に、PCB制御部210には、複数のCAM(Content Addressable Memory)207、208が接続されている。ここで、CAM207は受信フレームから取り出した情報を検索キーとしてPCBを特定するための検索に用いるメモリである。また、CAM208は所望のPCBがPCBキャッシュメモリ211上にあるか否かを判定するために使用するメモリである。即ち、CAMは、検索キーであるデータとCAMに登録されたデータが一致した場合に、そのデータが格納されているアドレス情報を検索結果として報告するメモリである。
尚、CAMの中に複数の同一データがある場合、その全てが報告されるが、本実施形態では同一データが複数あることはない。
通信タイマ212は、TCP/IPプロトコル処理に必要な時間計測及びタイムアウトイベントを発生させる。共有メモリ213は、サブプロセッサA201〜E205の間の通信と情報を共有するためのメモリである。
鍵管理部214は、暗号通信プロトコル処理のために生成した暗号鍵や乱数及び素数を機密保持する。乱数発生器215は、TCP/IPプロトコル処理及び暗号通信プロトコル処理のための乱数を発生する。暗号器216は、IPsecやSSL/TLSなどの暗号通信プロトコル処理を行う。また、AES(Advanced Encryption Standard)暗号器を含む。更に、SHA-1(Secure Hash Algorithm 1)ハッシュ関数器、MD5(Message Digest 5)ハッシュ関数器などを含む。
MAC(Media Access Control)218は、OSI参照モデルのデータリンク層(第2層)に相当するMAC層のプロトコル処理を扱うハードウェアである。PHY(PhysicalLayer Chip)219は、OSI参照モデルの第1層に相当するPHY(物理)層のプロトコル処理及び電気信号を扱うハードウェアである。
データパス制御部217は、送受信されるデータを一時的に保持するバッファメモリ、バッファメモリを制御するコントローラ、データ転送を行うDMA制御ユニット、DMA処理の最中にチェックサムを演算するチェックサム演算器を含む。
具体的には、データパス制御部217は、MAC218で処理された受信フレームを一時的に保持する受信バッファメモリを含む。更に、受信フレーム中の各階層のプロトコルヘッダをサブプロセッサA201〜E205が参照可能とする受信バッファメモリコントローラとを含む。また、データパス制御部217は、送信データを一時的に保持する送信バッファメモリと、サブプロセッサA201〜E205が各階層のプロトコルヘッダを保持された送信データに形成可能とするための送信バッファメモリコントローラを含む。データパス制御部217のDMA制御ユニットは、送受信バッファメモリと主メモリ104との間のデータ転送や送受信バッファメモリとMAC218との間のデータ転送を行う。
ここで、TOEサブシステム105におけるサブプロセッサA201〜E205の役割を、図3を用いて説明する。図3は、TOEサブシステムにおける複数のサブプロセッサの役割を説明するための図である。TOEサブシステム105の処理機能は、主にプロトコルを選択し、データの受け渡しと情報の伝達を中継する、図3に示す310の範囲をカバーする。即ち、MAC層306との間で通信データと通信情報を交換するMACドライバ305、IPプロトコルを処理するインターネット層(IP層)304、TCP及びUDPプロトコルを処理するトランスポート層(TCP/UDP層)303の機能をカバーする。また、ソケットAPI302の一部の機能もカバーする。
図3に示すように、これらの機能はサブプロセッサA201〜E205にそれぞれ分割され処理される。例えば、ソケットAPI302部分の処理をサブプロセッサA201に割り当てる。また、TCP及びUDPプロトコル処理の内、受信動作に関わる処理をサブプロセッサB202に割り当て、送信動作に関わる処理をサブプロセッサC203に割り当てる。そして、MACドライバ305及びIPプロトコル処理の内、受信動作に関わる処理をサブプロセッサD204に割り当て、送信動作に関わる処理をサブプロセッサE205に割り当てる。
尚、分割の意図は、これら一連のネットワークプロトコル処理を3つのパイプラインステージ311〜313に分割し、パイプライン動作を行わせることにある。また、送信動作と受信動作を分割することで、それぞれの機能を担当するサブプロセッサ同士が並列的に動作可能となる。
TCPでは論理チャネル形成の始まりをコネクション確立と称し、終了をコネクション解放と称す。コネクション確立及び解放の間は、エスタブリッシュ状態又はコネクション状態、或いは単にコネクションと称す。2つのネットワークデバイスの間で複数のコネクションを形成することが可能であり、他の複数のネットワークデバイスとの間でも複数のコネクションを形成することが可能である。ここで、コネクションは2つのネットワークデバイス双方のIPアドレスとTCPポート番号の4つの情報の組み合わせで表される。これらの情報の組み合わせをソケットペア情報又はソケット情報と称す。コネクション確立後に送受信される各TCPパケットのTCPヘッダにはソケット情報が含まれる。
TCPは転送データの到達保証を行う観点から、コネクション間でデータの受信側から送信側に対して確認応答と称する到達確認情報を伝達する。この確認応答処理を行うには、サブプロセッサB202とサブプロセッサC203との間で到達確認情報の伝達314が必要となる。
この情報伝達と情報共有、パイプラインステージ間の情報伝達と情報共有、パイプラインステージを構成するサブプロセッサA201〜E205と主プロセッサ101との間の情報伝達と情報共有は共有メモリ213を介して行われる。もちろん、これらの情報伝達と情報共有を、主メモリ104を使って行っても良い。
また、TCPでは上述した各タイマの他に数種類のタイマがコネクション(ソケット)毎にそれぞれ独立して稼動している。以下、これらのタイマを纏めた本実施形態における通信タイマ212の構成を、図4及び図5を用いて説明する。
図4は、本実施形態における通信タイマ212の構成の一例を示す図である。図4に示すように、通信タイマ212は、通信タイマ212全体を制御し、外部とのインターフェース(I/F)として機能するタイマ制御部401を備える。更に、タイマ及びコネクション毎に持つタイマの初期値を保持する初期値メモリ406と、その書き込み及び読み出しを行う初期値メモリ制御部402とを備える。
また、タイマ起動中の途中経過を保持する計数値メモリ407と、その書き込み及び読み出しを行う計数値メモリ制御部404を備える。更に、タイマ制御部401の指令で指定されたタイマとコネクションの初期値を初期値メモリ406から計数値メモリ407へ転送するローダ403を備える。また、一定周期で計数値メモリ407に格納されているタイマ計数値を読み出しては判定を行い、更新結果を書き戻す処理を行う計時処理部405を備える。更に、タイムアウトした際に、タイマの初期値を倍増させて更新する指数バックオフ処理部408を備える。
また、コネクション毎の往復時間計測を行い、その計測結果からタイマの初期値を更新するRTT計測処理部409を備える。ここで、タイマの初期値とは、タイマ起動時に、タイマに与えるタイムアウト時間値を指す。また、計時処理部405は、判定結果をイベント情報として内蔵するイベントFIFOに保持し、タイマ制御部401に伝達する。
ここで、図4に示すRTT計測処理部409の構成を、図5〜図7を用いて説明する。図5は、本実施形態におけるRTT計測処理部409の構成の一例を示す図である。図5に示すように、RTT計測処理部409はRTT計測制御シーケンサ503によって制御される。TCPセグメント送信時に、ラウンドトリップ時間計測を開始する。サブプロセッサA201〜E205からセグメント送信に関する情報がデータパス制御部217を介してRTT計測制御シーケンサ503に伝達される。そして、RTT計測制御シーケンサ503が伝達された情報の一部を図6に示す(a)の形式で検索テーブル501に登録し、図6に示す(b)の形式でメモリ504に登録する。
図6に示す(a)は、RTT計測処理部409における検索テーブル501の構成の一例を示す図である。601は開始情報であり、602〜605に示す情報で構成される。ここで、602は開始情報を識別するための識別子である。603はコネクション情報であるソケット番号である。604はデータ情報である送信セグメントの先頭シーケンス番号を示すシーケンス番号Aである。605はセグメントの最後尾のシーケンス番号を示すシーケンス番号Bである。このように、検索テーブル501には、ラウンドトリップ時間計測を開始する際に、伝達された情報に含まれる情報の一部が開始情報として登録される。
図6に示す(b)は、RTT計測処理部409におけるメモリ504の構成の一例を示す図である。図6に示す(b)のように、メモリ504には識別子602、ソケット番号603、タイムスタンプ702、サイズ703で構成される情報701が登録される。
その後、RTT計測制御シーケンサ503は、TCP確認応答受信時に一つのラウンドトリップ時間計測を終了するが、その時、図7に示す形式で計測値や計測値から導かれた各種の値を保存する。図7は、本実施形態におけるRTT計測処理部409のメモリ504に保存される各種情報を示す図である。ラウンドトリップ時間計測の終了時には、図6に示す(b)の識別子602、ソケット番号603、タイムスタンプ702、サイズ703以外の値が追記される。図7において、RTTpre_u_A, RTTpre_u_Bは単位サイズ当たりのラウンドトリップ時間、DEVpre_u_A, DEVpre_u_Bは単位サイズ当たりの偏差値である。これらの値の詳細は、更に後述する。
また、検索部502は、RTT計測制御シーケンサ503から与えられた確認応答のソケット番号と確認応答番号(シーケンス番号)から1を引いた値をそれぞれ検索キーとして、検索テーブル501の各開始情報601を以下の条件式(1)で検索する。ここで、確認応答番号から1を引くのは、確認応答シーケンス番号は、送信セグメントの最後尾シーケンス番号に1が加えられているからである。
ソケット番号は完全一致、且つ、シーケンス番号A≦検索キーとして与えたシーケンス番号−1≦シーケンス番号B …(1)
を満たす。
ここで、検索部502の詳細について図8乃至図18を用いて説明する。図8は、検索テーブル501を検索部502が含むように構成した例を詳しく説明する図である。検索部502は、主要機能である検索、登録、参照、削除などのコマンド処理を、図9に示すディスクリプタ1801と付属する各種データ(1901、2001)を読み出して実行する。この読み出しはインターフェース部1302に内蔵されたDMAC(ダイレクト・メモリ・アクセス・コントローラ)1309によって行われる。
インターフェース部1302はレジスタ・セット1308を含む。レジスタ・セット1308の詳細を図10に示す。レジスタ・セット1308はディスクリプタ・アドレス・レジスタ1701、ビットマップ・アドレス・レジスタ1702及び検索結果アドレス・レジスタ1703から構成されている。検索部502に対するコマンドの伝達は、外部メモリ1307に置いたディスクリプタ1801の先頭アドレスをディスクリプタ・アドレス・レジスタ1701に書き込むことで行われる。外部メモリ1307は、TOEサブシステム105における共有メモリ213である。外部メモリ1307には、サブプロセッサA201〜E205、主プロセッサ101から情報が書き込まれる。書き込まれたディスクリプタ1801の先頭アドレスはインターフェース部1302に内蔵されたFIFO(ファースト・イン・ファースト・アウト・メモリ)1310に一時的に格納される。
検索部502は、このFIFO1310からディスクリプタ1801の先頭アドレスを取り出し、この先頭アドレスを手掛かりにディスクリプタ1801と付属する各種データ(1901、2001)をDMAC1309によって読み出し、コマンドを実行する。
レジスタ・セット1308内のレジスタの選択はREG_ADDR信号によって行う。このレジスタへの書き込みデータはWRITE_DATA信号で伝達され、WRITE_REG信号でレジスタに書き込まれる。また、このレジスタからの読み出しデータはREG_ADDR信号とREAD_REG信号で選択され、READ_DATA信号で検索部502の外部に伝達される。
DMAC1309は、外部メモリ1307のアドレスを選択するDMA_ADDR信号のほか、DMA_REQ信号とDMA_RDY信号を使ってDMA動作を制御する。DMA動作中、読み書きされるデータは、DMA_WRITE_DATA信号やDMA_READ_DATA信号によって伝達される。
本実施形態において検索部502は、検索を行う32個の検索ブロック1乃至32(1303乃至1305)を内蔵する。検索ブロック1乃至32(1303乃至1305)の内部は共通で、その概略を図11に示す。各検索ブロックが内蔵するメモリ1401は複数個のメモリから構成されているが、トータルビット幅は1152ビットである。よって、各検索ブロックが内蔵するメモリ1401を全てあわせると1152ビット・ワード×1024アドレスのメモリとみなせる。本実施形態では、このメモリが検索テーブル501であり、そのイメージを図12の(a)に示す。
また、1152ビット・ワードの内訳を図12の(b)に示す。本実施形態では、任意エントリ・アドレスの1152ビット・ワードは4ビットごとの96個の領域から構成されている。ここで1152ビット・ワードのデータ2201をエントリ登録データと呼称する。
本実施形態において検索モードとは、ビット単位の比較で一致・不一致を判定する一致検索(検索モード=00)と不一致検索(検索モード=01)がある。更に、1個の領域又は隣接した複数の領域を結合した連結領域ごとに、予め設定した上限値と下限値の範囲内にあるか、範囲外にあるかを判定する範囲内検索(検索モード=10)と範囲外検索(検索モード=11)が用意されている。つまり、領域又は連結領域ごとにMODE[0:191]データ2204によって検索モードが設定される。また、隣接する領域どうしの結合はLINK[0:95]データ2205によって設定される。ここで、LINK[0:95]データ2205で96個の領域の連結状態を指定し、その値が1の場合は後段の領域との分離を、値が0の場合は後段の領域との連結を意味する。更に、DISABLE[0:95]データ2206によって未使用領域を設定する。
CONTA2202及びCONTB2203は検索モードによって働きが異なる。一致検索は標準的なターナリCAMと同様な動作で、CONTA2202に比較対象のデータを格納し、CONTB2203にターナリCAMで使用されるドントケアビットを格納する。不一致検索では、CONTA2202に比較対象のデータを格納し、CONTB2203にドントケアビットを格納する。範囲内検索と範囲外検索においては、CONTA2202に範囲の上限値、CONTB2203に範囲の下限値をそれぞれ格納する。
本実施形態においては確認応答のソケット番号が一致検索によって、また確認応答番号(シーケンス番号)が範囲内検索の対象になる。また、本実施形態では送信セグメント毎に、送信セグメントのソケット番号と先頭シーケンス番号及びセグメントの最後尾のシーケンス番号を検索テーブル501に登録する。前述のソケット番号と最後尾のシーケンス番号(シーケンス番号B)はCONTA2202に、先頭シーケンス番号(シーケンス番号A)はCONTB2203に登録される。そして、LINKデータ2205によって、CONTA2202のソケット番号が連結され、CONTAのシーケンス番号Bが連結され、CONTBのシーケンス番号Aが連結される。また、モードデータ2204によって、CONTA2202のソケット番号が一致検索の比較対象であることが指定され、CONTA2202のシーケンス番号B、CONTBのシーケンス番号Aが範囲内検索の下限値、上限値であることが指定される。
登録時の検索部502の内部動作を説明する。登録に際しては、検索テーブル501に登録するデータとコマンドなどから構成されるディスクリプタ1801を外部メモリ1307(共有メモリ213)に用意する。登録はディスクリプタ1801の先頭アドレスをFIFO1310に書き込むことで行われる。FIFO1310からディスクリプタ1801の先頭アドレスを読み出したインターフェース部1302は内蔵するDMAC1309を起動して外部メモリ1307に記されたディスクリプタ1801をインターフェース部1302内部のバッファに取り込む。コマンドを解析し、登録コマンドであると認識したインターフェース部1302は再度DMAC1309を起動して登録データを外部メモリ1307から取り込む。
取り込み先はエントリ・アドレス・フィールド1803に記載された値をCONTENTS_ADDR[0:1023]信号として各検索ブロックのメモリ1401に出力する。該当する検索ブロックのメモリ1401が選択され、DMAC1309によって取り込まれた登録データはWRITE_CONTENTS信号によって伝達され、WRITE_ENABLE信号によってメモリ1401に書き込まれる。
一方、インターフェース部1302は受領したディスクリプタが検索コマンドと判断すると、DMAC1309を起動して外部メモリ1307に置かれた検索データ2001を読み出す。DMAC1309は、この検索データ2001を、KEY[0:383]信号とGMASK[0:383]信号を介して各検索ブロック1303乃至1305の比較器1402に伝達する。その後、インターフェース部1302はSTART信号によって制御部1306に検索開始を指示する。検索開始により、制御部1306は各検索ブロック1303乃至1305のメモリ1401へS_ADDR信号によってアドレスを出力する。このアドレスは、検索ブロック1303乃至1305のそれぞれに設けられた32エントリ・アドレスを有するメモリ1401の0番地から31番地まで、動作クロック毎に1づつ増分し出力される。このメモリ・アクセスにより検索テーブル501に登録された全データが動作クロック毎に逐次読み出され、比較器1402に伝達される。
図13に比較器1402の詳細を示す。比較器1402は96個の比較器コア部1501乃至1504から構成されている。各比較器コア部にはそれぞれ4ビットのCONTA、CONTB、KEY、GMASKの各信号と、2ビットのMODE信号と、1ビットのLINK信号と入力される。更に、各比較器コア部には前段の比較器コア部からキャリー信号であるLG1On、EQ1On、SM1On、LG2On、EQ2On、SM2On、AFOnの各信号が入力される。nは0から94までの整数である。但し、初段の比較器コア部1501のキャリー入力については初期値としてLG1I0、SM1I0、LG2I0及びSM2I0は値0、EQ1I0、EQ2I0及びAFI0は値1を与える。図13の信号表記でLG1I0のIは入力を表し、LG1O0のOは出力を表す。また、LG1I0の0は96個ある比較器コア部の0番目という意味である。
次に、m番目の比較器コア部1503を例にその内部構成を図14に示す。ここでmは0から95までの整数であり、以降の本文中においても同様とする。比較器コア部1503は、4bit全比較器1(1601)、4bit全比較器2(1602)、セレクタ1603及びいくつかのロジック・ゲートから構成されている。図15に4bit全比較器1(1601)の入出力信号に関する真理値表を示す。また、図16に4bit全比較器2(1602)の入出力信号に関する真理値表を示す。これらの4bit全比較器は一般的に知られている4bitマグニチュード・コンパレータと同等な機能を有する。
セレクタ1603にはCONTB、MODE、GMASK、LINK、AFの各信号が入力される。更に、セレクタ1603には4bit全比較器1(1601)及び4bit全比較器2(1602)からそれぞれ出力されるキャリー信号であるLG1、EQ1、SM1、LG2、EQ2、SM2が入力される。
セレクタ1603はMODE[2m+0:2m+1]信号(検索モード)によって動作を変える。検索モードは前述したように一致検索(検索モード=00)、不一致検索(検索モード=01)、範囲内検索(検索モード=10)及び範囲外検索(検索モード=11)の4種類である。一致検索と範囲内検索を行うので、一致検索と範囲内検索におけるセレクタ1603の動作を説明する。
一致検索(検索モード=00)では4bit全比較器2(1602)の出力LG2、EQ2、SM2は使用されない。一致検索ではCONTB信号で伝達されるデータはターナリCAMで使用されるドントケアビットと同じ意味を持たせている。したがって、セレクタ1603からDC信号を値1で出力し、CONTB信号が4bit全比較器1(1601)の入力信号CA[0]〜CA[3]及び入力信号K[0]〜K[3]のマスク信号となるように構成している。このDC信号の扱いは不一致検索(検索モード=01)でも同様である。
以上述べた、一致検索(検索モード=00)におけるセレクタ1603の入出力の真理値表を図17に示す。ここで、GMASK信号はKEY信号とペアで入力されるがGMASK信号の意味はKEY信号のビット毎のマスク機能である。つまり、GMASK信号が値1であると、対応するKEY信号の値によらずに常に4bit全比較器1(1601)の入力信号であるK信号は1となる。同時にもう一方のCA信号も1となり、当該ビットはドントケアとなる。判定結果はHm信号に出力されて値1は検索条件に適合していることを表し、値0は検索条件との不一致を表す。尚、本文中、検索条件に適合していることをヒットしているあるいはヒットと表現する場合もある。
範囲内検索(検索モード=10)及び範囲外検索(検索モード=11)ではCONTB信号に範囲の下限値の意味を持たせる。そのため、セレクタ1603はDC信号に値0を出力し、一致検索(検索モード=00)などでビット毎のマスクの意味を持たせていたCONTB信号とGMASK信号の機能を停止する。範囲内検索(検索モード=10)及び範囲外検索(検索モード=11)では4bit全比較器1(1601)において範囲の上限値と検索キーK[0:3]が比較され、4bit全比較器2(1602)において範囲の下限値と検索キーK[0:3]が比較される。これらの比較結果であるキャリー信号LG1、EQ1、SM1、LG2、EQ2、SM2がセレクタ1603に入力される。
ここで範囲内検索(検索モード=10)におけるセレクタ1603の入出力信号の真理値表を図18に示す。真理値表に示すように、範囲内検索(検索モード=10)では判定結果であるHm信号は、比較器コア部に入力するLINK信号が値1、つまり当該比較器コア部が連結領域の境界である場合に出力される。更に、比較器コア部に入力されるLINK信号が値1で、且つGMASK信号が0xF値の場合、検索キーK[0:3]によらずセレクタ1603はHm信号に値1を出力し、検索条件に適合していることを示す。つまり連結領域単位でマスクし、ドントケアとすることができる。
本実施形態では、何れの検索モードの場合も、START信号によって検索が開始されてから32クロックで検索が終了する。開始から終了までの間に、各比較器コア部1501乃至1504から出力された検索結果H0乃至H95は対応するLINK信号とDISABLE信号によってマスクされてHIT[i]信号に集約されて制御部1306に入力される。つまり、クロック毎に検索ブロック1〜32(1303〜1305)から出力されたHIT[0:31]信号の値は各エントリ・アドレス2202に対応した1024ビット(HIT[0:31]×32)の検索結果となる。この検索結果を検索結果アドレス・ビットマップと呼称する。検索結果アドレス・ビットマップはDMAC1309によって外部メモリ1307に転送され、その先頭アドレスがビットマップ・アドレス・レジスタ1702に表示される。
本実施形態では、検索キーとして、確認応答のソケット番号と(シーケンス番号−1)が読み込まれる。そして、検索キーのソケット番号が一致し、かつ、検索キーの(シーケンス番号−1)が、範囲内検索の下限値、上限値の範囲内に入ると、検索条件に適合していることを示す判定結果が出力される。
制御部1306では検索結果アドレス・ビットマップから検索条件に適合していることを示す値1の数をカウントし、検索終了を示すDONE信号と共に、その総和をHIT_COUNT[0:9]信号でインターフェース部1302に伝達する。更に、検索結果アドレス・ビットマップからヒットしている最も若いエントリ・アドレスが検索結果アドレス・レジスタ1703に記録される。
本実施形態のように、シングルヒットの場合は検索結果アドレス(本実施例では識別子602に同じ)が検索結果アドレス・レジスタ1703に表示される。検索結果アドレス・レジスタ1703に表示された識別子602に基づきメモリ504を参照し登録済みのタイムスタンプ情報を得る。
次に、RTT計測処理部409におけるRTT計測処理を、図19〜図21を用いて説明する。ここでは、エンドA(通信装置)が相手エンドB(送信先)へTCPセグメントを送信し、確認応答セグメントを受信するまでのラウンドトリップ時間を計測する場合を例に挙げて説明する。
図19は、本実施形態におけるラウンドトリップ時間の計測方法を説明するためのタイムラインを示す図である。図19において、左側のエンドAがTCPセグメントを送信し、右側の相手エンドBがTCPセグメントを受信する。そして、左側のエンドAがTCPセグメントを送信後、右側の相手エンドBから対応する確認応答セグメントを受信するまでのラウンドトリップ時間を計測する。尚、図19に示す下方に時間が推移していくものとする。
また、この例では、多くの機器で採用されて遅延確認応答が実装されており、相手エンドBが2つのTCPセグメントを受信して1回の確認応答を返すように構成されている。つまり、相手エンドBが2つのTCPセグメントを受信し、これらをまとめて確認応答の処理を行い、確認応答セグメントを応答する。
ここで、左側のエンドAではセグメントを送信する毎に計測を開始する。図19では、図が煩雑になるので計測ポイント(送信時刻)をTS11〜TS14としているが、他のセグメントの送信時点でも計測を開始しても良い。そして、エンドAが相手エンドBから対応する確認応答セグメントを受信すると、ラウンドトリップ時間計測を終了する。つまり、計測ポイントのTS11で計測を開始した場合、受信時刻のTS16で相手エンドBからの確認応セグメントを受信すると、ラウンドトリップ時間計測を終了する。
これにより、エンドAでセグメント送信にかかる処理時間T1と、相手エンドBで確認応答処理にかかる処理時間T2と、伝送路で消費される時間T(=T3−T1−T2)を詳細に計測することができる。また、他の計測ポイントのTS13で計測を開始した場合も、上述したTS11と同様に、詳細に計測することができる。
ここで、上述したラウンドトリップ時間計測開始時の処理を説明する。尚、この処理はセグメント送信時点で開始される。また、本実施形態では、計測の指示はサブプロセッサC203〜E205によって行われる。しかし、計測の開始は、データパス制御部217が、そのセグメントの送信を開始した時点でタイマ制御部401に通知し、タイマ制御部401の指示を受けてRTT計測処理部409が計測を開始する。
まず、RTT計測制御シーケンサ503が、検索テーブル501にコネクション情報とデータ情報とを登録する。ここで、コネクション情報は、開始情報601のソケット番号603である。また、データ情報は、シーケンス番号A604とシーケンス番号B605である。そして、このコネクション情報とデータ情報とは、検索テーブル501で識別子602によって識別される。次に、RTT計測制御シーケンサ503は、メモリ504に検索テーブル501へ登録した開始情報601に関連付けるための識別子602とソケット番号603の他に、送信時点のタイムスタンプ702と送信サイズ703を登録する。
ここで、上述したラウンドトリップ時間計測を終了した時点の処理を、図20を用いて説明する。この時点は、図19に示すTS16のタイミング(相手エンドBからの確認応セグメントを受信してラウンドトリップ時間計測を終了したタイミング)に相当する。
図20は、本実施形態におけるラウンドトリップ時間計測の終了時の処理を示すフローチャートである。まずステップS1001において、RTT計測制御シーケンサ503が確認応答セグメントの受信時のタイムスタンプ情報と、シーケンス番号とソケット番号をサブプロセッサB202から受け取る。
次に、ステップS1002において、RTT計測制御シーケンサ503は受信した確認応答セグメントのシーケンス番号から1を引いた値とソケット番号を検索キーとして検索部502に与え、上述した検索条件で検索テーブル501を検索するように指示する。ここで、確認応答番号から1を引くのは、確認応答シーケンス番号は、送信セグメントの最後尾シーケンス番号に1が加えられているからである。そして、ステップS1003で、RTT計測制御シーケンサ503は検索結果の識別子602を手掛かりにメモリ504からラウンドトリップ時間計測開始時に登録したタイムスタンプ702を取り出す。
図19に示す例では、TS16の時点で返答される確認応答シーケンス番号は、TS12で送信した送信セグメントの最後尾シーケンス番号に1を加えたものが返される。よって、検索結果はTS12の時点で登録された識別子となる。ただし、受信側の受信状況によっては、TS16で返答される確認応答シーケンス番号は、TS12で送信した送信セグメントの最後尾シーケンス番号に1を加えたものとは、異なる場合がある。これが、本例で、範囲内検索を行う理由である。
尚、TS12より古いTS11の登録情報が残っているが、TS12が検索されるのは遅延確認応答の影響である。このように、検索結果より有効な古い情報がある場合には遅延確認応答の影響と考え、これらのサイズの総和やセグメントの数を遡ってカウントすることで相手エンドBが行っている遅延確認応答の実態を予測することができる。
次に、ステップS1004において、上述のタイムスタンプ情報から各推定値と偏差値を計算する。本実施形態では、以下に示す式(2)により、これらの推定値と偏差値とを求める。
DIF_A = RTTovs_A - RTTpre_A
DIF_B = RTTovs_B - RTTpre_B
DIF_C = RTTovs_C - RTTpre_C
RTT_A = RTTpre_A + g1×DIF_A
RTT_B = RTTpre_B + g2×DIF_B
RTT_C = RTTpre_C + g3×DIF_C
DEV_A = RTTpre_A + h1(|DIF_A| - DEVpre_A)
DEV_B = RTTpre_B + h2(|DIF_B| - DEVpre_B)
DEV_C = RTTpre_C + h3(|DIF_C| - DEVpre_C) …(2)
ここで、RTTovsは測定されたラウンドトリップ時間、RTTpreはそれまでのラウンドトリップ時間の推定値である。DIFはそれまでのラウンドトリップ時間の推定値と測定されたラウンドトリップ時間の差分である。DEVpre はそれまでのラウンドトリップ時間の推定値の偏差である。
また、各ラベルの最後尾の_A〜_Cは、それぞれ、エンドの送信処理時間、相手エンドの確認応答処理時間、伝送路上の経過時間に係わることを表している。更に、各処理に係わったデータサイズから単位サイズ当たりのラウンドトリップ時間RTTpre_uと単位サイズ当たりの偏差値DEVpre_uを計算する。
但し、g1は(0≦g1≦1)、g2は(0≦g2≦1)、g3は(0≦g3≦1)である。また、h1は(0≦h1≦1)、h2は(0≦h2≦1)、h3は(0≦h3≦1)である。
次に、ステップS1005において、上述の各計算値を図7に示す形式でメモリ504に保存する。また、後の処理で利用する計算途中の結果もメモリ504のワークエリアに記録する。次に、ステップS1006において、検索結果を含むそれ以前の識別子602と関連情報を検索テーブル501とメモリ504から削除する。尚、登録や削除の方法は、各情報に有効/無効を示すフラグを設けてこれをオン/オフする形式でも良い。
ここで、タイムアウト時間を計算する処理と設定する処理を、図21を用いて説明する。尚、この処理はセグメントの送信時点、例えば図19に示すTS11〜TS14の4つの時点での処理である。図21は、本実施形態におけるタイムアウト時間の計算と設定を行う処理を示すフローチャートである。
まずステップS1101において、RTT計測制御シーケンサ503がサブプロセッサC203から送信のタイミングと送信サイズを受け取る。次に、ステップS1102において、送信サイズ及び確認応答シーケンス番号の差分を得る。そして、単位サイズ当たりのラウンドトリップ時間と単位サイズ当たりの偏差値にそれぞれのサイズを掛けて推定値と偏差値を求める。このとき使用する各値はステップS1005でメモリ504(図7)に保存した最新の値を用いる。
推定値RTTpreと偏差値DEVpreは、単位サイズ当たりのラウンドトリップ時間をRTTpre_u、この期間で処理したサイズをS、単位サイズ当たりの偏差値をDEVpre_uとすると式(3)で求められる。
RTTpre = RTTpre_u×S
DEVpre = DEVpre_u×S …(3)
次に、ステップS1103において、タイムアウト時間RTOを以下の式(4)を使って求める。
RTO = (RTT_A + RTT_B + RTT_C) + 4(DEV_A + DEV_B + DEV_C)
= RTTpre_A + RTTpre_B + RTTpre_C
+g1(RTTovs_A - RTTpre_A)
+g2(RTTovs_B - RTTpre_B)
+g3(RTTovs_C - RTTpre_C)
+4(RTTpre_A + RTTpre_B + RTTpre_C)
+4×h1|RTTovs_A - RTTpre_A|
+4×h2|RTTovs_B - RTTpre_B|
+4×h3|RTTovs_C - RTTpre_C|
-(4×h1×DEVpre_A +4×h2×DEVpre_B +4×h3×DEVpre_C) …(4)
但し、g1は(0≦g1≦1)、g2は(0≦g2≦1)、g3は(0≦g3≦1)である。また、h1は(0≦h1≦1)、h2は(0≦h2≦1)、h3は(0≦h3≦1)である。尚、上記式(4)のいくつかの項はステップS1004で計算済みであり、ステップS1005でメモリ504のワークエリアに記録された値を利用できる。
そして、ステップS1104において、計算されたタイムアウト時間RTOをRTT計測制御シーケンサ503により初期値メモリ406に登録する。
上述した処理は、コネクション毎に独立に行われる。そこで、コネクションを識別するソケット番号は重要な働きする。例えば、ステップS1002の検索で、ソケット番号を検索キーとする。初期値メモリ406に登録されるタイムアウト時間RTOはソケット番号と関連付けられる。
図19では、説明を簡略化するために、同一コネクションのセグメント送受信しか示していないが、上述した処理がコネクション毎に独立に行われるため、複数のコネクションでセグメント送受信が行われている状態であっても、同様に論ずることができる。
よって、複数のコネクションでセグメントの送受信が行われている状態の場合も、検索テーブル501やメモリ504に登録される開始情報601や情報701はコネクション毎に複数個が登録される。例えば、図19に示すTS11〜TS14の計測開始ポイントで登録されていく。しかし、確認応答を受信してラウンドトリップ時間を計測した後の計算結果はコネクションに一組で良い。
本実施形態によれば、登録された複数の開始情報からコネクション毎に効率良く、所望の情報を取り出すことができる。
また、セグメント送信にかかるエンドの処理時間(図19に示すT1)、確認応答処理にかかる相手エンドの処理時間(図19に示すT2)、伝送路で消費される時間(図19に示すT3からT1及びT2を差し引いた時間)を詳細に計測することができる。これらの詳細にわたるラウンドトリップ時間により、伝送路の状況のみならず、対向となるエンドの負荷状況も的確に把握でき、この計測結果を活用することで、TCPが保有する各種のフロー制御を効率良く運用することが可能となる。また、QoSを運用する各種プロトコルに有用な情報を提供することも可能となる。
以上説明した本実施形態によれば、ラウンドトリップ時間計測を多重化して行うことにより、リソース管理の負荷やオーバーヘッドを最小限に抑えることが可能となる。また、多重化により、全体の計測間隔も大幅に短縮され、高精度の計測が可能となる。従って、適切なタイムアウト時間の運用による効率化と正確な情報に基づくプロトコルレベルでのQoS実装により、システムの性能を向上させることができる。
尚、本実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(CPU若しくはMPU)が記録媒体に格納されたプログラムコードを読出し実行する。これによっても、本発明の目的が達成される。
この場合、コンピュータ読み取り可能な記録媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現し、そのプログラムコードを記憶した記録媒体は本発明を構成する。

Claims (7)

  1. データを送信先に送信し、該送信先からデータを受け取ったことを示す確認応答を受信する通信装置であって、
    複数の送信データのそれぞれを特定するためのデータと、複数の送信データのそれぞれの送信時刻を示すデータとを記憶する記憶手段と、
    確認応答に対応する送信データを特定するためのデータを、該確認応答に含まれる情報を元に前記記憶手段から検索する検索手段と、
    前記検索手段により検索されたデータで特定される送信データの送信時刻と、前記確認応答を受信した受信時刻とに基づいてラウンドトリップ時間を求める手段と、
    を有することを特徴とする通信装置。
  2. 前記送信データを特定するためのデータは、送信データの先頭と最後尾を示すデータを含み、前記検索手段は、前記確認応答に含まれる情報に基づいて前記送信データの先頭と最後尾を対象とした範囲内検索を行うことを特徴とする請求項1記載の通信装置。
  3. 前記記憶手段は、データを送信する毎に、送信したデータを特定するためのデータと、送信時刻を示すデータとを記憶することを特徴とする請求項1記載の通信装置。
  4. データを送信先に送信し、該送信先からデータを受け取ったことを示す確認応答を受信する通信装置におけるラウンドトリップ時間を求める方法であって、
    記憶手段が、複数の送信データのそれぞれを特定するためのデータと、複数の送信データのそれぞれの送信時刻を示すデータとをメモリに記憶する記憶工程と、
    検索手段が、確認応答に対応する送信データを特定するためのデータを、該確認応答に含まれる情報を元に前記メモリから検索する検索工程と、
    求める手段が、前記検索されたデータで特定される送信データの送信時刻と、前記確認応答を受信した受信時刻とに基づいてラウンドトリップ時間を求める工程と、
    を有することを特徴とする方法。
  5. 前記送信データを特定するためのデータは、送信データの先頭と最後尾を示すデータを含み、前記確認応答に含まれる情報に基づいて前記送信データの先頭と最後尾を対象とした範囲内検索を行うことを特徴とする請求項4記載の方法。
  6. データを送信する毎に、送信したデータを特定するためのデータと、送信時刻を示すデータとをメモリに記憶することを特徴とする請求項4記載の方法。
  7. 請求項4乃至6の何れか1項記載のラウンドトリップ時間を求める方法をコンピュータに実行させるためのプログラム。
JP2009140383A 2008-06-30 2009-06-11 通信装置及びラウンドトリップ時間を求める方法 Expired - Fee Related JP5590825B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009140383A JP5590825B2 (ja) 2008-06-30 2009-06-11 通信装置及びラウンドトリップ時間を求める方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2008171232 2008-06-30
JP2008171232 2008-06-30
JP2009140383A JP5590825B2 (ja) 2008-06-30 2009-06-11 通信装置及びラウンドトリップ時間を求める方法

Publications (2)

Publication Number Publication Date
JP2010035147A true JP2010035147A (ja) 2010-02-12
JP5590825B2 JP5590825B2 (ja) 2014-09-17

Family

ID=41447284

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009140383A Expired - Fee Related JP5590825B2 (ja) 2008-06-30 2009-06-11 通信装置及びラウンドトリップ時間を求める方法

Country Status (2)

Country Link
US (1) US7889672B2 (ja)
JP (1) JP5590825B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013145031A1 (en) * 2012-03-30 2013-10-03 Fujitsu Limited Link aggregation apparatus
JP2014120819A (ja) * 2012-12-13 2014-06-30 Fujitsu Ltd 分析装置、情報処理システム、分析方法及び分析プログラム
US9608526B2 (en) 2012-04-27 2017-03-28 Mitsubishi Electric Corporation DC/DC converter, on-board unit and charging device
CN106961141A (zh) * 2017-05-04 2017-07-18 北京希格玛和芯微电子技术有限公司 无线充电接收装置及终端设备

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010211388A (ja) * 2009-03-09 2010-09-24 Canon Inc 検索装置及び検索方法
EP2360598A1 (en) * 2010-02-12 2011-08-24 Blue Wonder Communications GmbH Method and device for synchronizing data broadcasts
US9286047B1 (en) 2013-02-13 2016-03-15 Cisco Technology, Inc. Deployment and upgrade of network devices in a network environment
US10374904B2 (en) 2015-05-15 2019-08-06 Cisco Technology, Inc. Diagnostic network visualization
US9800497B2 (en) 2015-05-27 2017-10-24 Cisco Technology, Inc. Operations, administration and management (OAM) in overlay data center environments
US9967158B2 (en) 2015-06-05 2018-05-08 Cisco Technology, Inc. Interactive hierarchical network chord diagram for application dependency mapping
US10536357B2 (en) 2015-06-05 2020-01-14 Cisco Technology, Inc. Late data detection in data center
US10142353B2 (en) 2015-06-05 2018-11-27 Cisco Technology, Inc. System for monitoring and managing datacenters
US10931629B2 (en) 2016-05-27 2021-02-23 Cisco Technology, Inc. Techniques for managing software defined networking controller in-band communications in a data center network
US10171357B2 (en) 2016-05-27 2019-01-01 Cisco Technology, Inc. Techniques for managing software defined networking controller in-band communications in a data center network
US10289438B2 (en) 2016-06-16 2019-05-14 Cisco Technology, Inc. Techniques for coordination of application components deployed on distributed virtual machines
US10708183B2 (en) 2016-07-21 2020-07-07 Cisco Technology, Inc. System and method of providing segment routing as a service
US10972388B2 (en) 2016-11-22 2021-04-06 Cisco Technology, Inc. Federated microburst detection
US10708152B2 (en) 2017-03-23 2020-07-07 Cisco Technology, Inc. Predicting application and network performance
US10523512B2 (en) 2017-03-24 2019-12-31 Cisco Technology, Inc. Network agent for generating platform specific network policies
US10764141B2 (en) 2017-03-27 2020-09-01 Cisco Technology, Inc. Network agent for reporting to a network policy system
US10250446B2 (en) 2017-03-27 2019-04-02 Cisco Technology, Inc. Distributed policy store
US10594560B2 (en) 2017-03-27 2020-03-17 Cisco Technology, Inc. Intent driven network policy platform
US10873794B2 (en) 2017-03-28 2020-12-22 Cisco Technology, Inc. Flowlet resolution for application performance monitoring and management
US10680887B2 (en) 2017-07-21 2020-06-09 Cisco Technology, Inc. Remote device status audit and recovery
US10554501B2 (en) 2017-10-23 2020-02-04 Cisco Technology, Inc. Network migration assistant
US10523541B2 (en) 2017-10-25 2019-12-31 Cisco Technology, Inc. Federated network and application data analytics platform
US10594542B2 (en) 2017-10-27 2020-03-17 Cisco Technology, Inc. System and method for network root cause analysis
US11233821B2 (en) 2018-01-04 2022-01-25 Cisco Technology, Inc. Network intrusion counter-intelligence
US11765046B1 (en) 2018-01-11 2023-09-19 Cisco Technology, Inc. Endpoint cluster assignment and query generation
US10826803B2 (en) 2018-01-25 2020-11-03 Cisco Technology, Inc. Mechanism for facilitating efficient policy updates
US10873593B2 (en) 2018-01-25 2020-12-22 Cisco Technology, Inc. Mechanism for identifying differences between network snapshots
US10917438B2 (en) 2018-01-25 2021-02-09 Cisco Technology, Inc. Secure publishing for policy updates
US10999149B2 (en) 2018-01-25 2021-05-04 Cisco Technology, Inc. Automatic configuration discovery based on traffic flow data
US10798015B2 (en) 2018-01-25 2020-10-06 Cisco Technology, Inc. Discovery of middleboxes using traffic flow stitching
US10574575B2 (en) 2018-01-25 2020-02-25 Cisco Technology, Inc. Network flow stitching using middle box flow stitching
US11128700B2 (en) 2018-01-26 2021-09-21 Cisco Technology, Inc. Load balancing configuration based on traffic flow telemetry
CN113596068B (zh) * 2020-04-30 2022-06-14 北京金山云网络技术有限公司 建立tcp连接的方法、装置和服务器

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002199009A (ja) * 2000-11-20 2002-07-12 Fujitsu Ltd ズームイン/アウト方式を用いた可変速度プロービングによる利用可能帯域計測方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3476985B2 (ja) 1995-12-28 2003-12-10 株式会社東芝 パケット通信システムおよびパケット通信制御方法
US7123616B2 (en) * 2000-06-09 2006-10-17 Ixia Determining round-trip time delay
US7257087B2 (en) * 2002-10-04 2007-08-14 Agilent Technologies, Inc. System and method to calculate round trip delay for real time protocol packet streams
US7230839B2 (en) * 2003-10-21 2007-06-12 Stmicroelectronics, Inc. Magnitude content addressable memory
JP4645281B2 (ja) * 2005-04-19 2011-03-09 ソニー株式会社 情報処理装置および方法、プログラム、並びに記録媒体

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002199009A (ja) * 2000-11-20 2002-07-12 Fujitsu Ltd ズームイン/アウト方式を用いた可変速度プロービングによる利用可能帯域計測方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013145031A1 (en) * 2012-03-30 2013-10-03 Fujitsu Limited Link aggregation apparatus
US9608526B2 (en) 2012-04-27 2017-03-28 Mitsubishi Electric Corporation DC/DC converter, on-board unit and charging device
JP2014120819A (ja) * 2012-12-13 2014-06-30 Fujitsu Ltd 分析装置、情報処理システム、分析方法及び分析プログラム
CN106961141A (zh) * 2017-05-04 2017-07-18 北京希格玛和芯微电子技术有限公司 无线充电接收装置及终端设备

Also Published As

Publication number Publication date
US20090323543A1 (en) 2009-12-31
JP5590825B2 (ja) 2014-09-17
US7889672B2 (en) 2011-02-15

Similar Documents

Publication Publication Date Title
JP5590825B2 (ja) 通信装置及びラウンドトリップ時間を求める方法
JP5022691B2 (ja) 通信装置、その制御方法及びプログラム
US8413153B2 (en) Methods and systems for sharing common job information
JP5278222B2 (ja) 無線通信装置、無線通信方法および無線通信プログラム
US20080025344A1 (en) Maintaining consistency among multiple timestamp counters distributed among multiple devices
EP4300323A1 (en) Data processing method and apparatus for blockchain network, computer device, computer readable storage medium, and computer program product
EP2549377A2 (en) A scalable hardware mechanism to implement time outs for pending pop requests to blocking work queues
WO2020010999A1 (zh) 段路由中获取数据包的转发路径的信息的方法和装置
US9584637B2 (en) Guaranteed in-order packet delivery
JP5094482B2 (ja) 処理装置及びその処理方法
JP5028339B2 (ja) 通信装置及び制御方法
US11425711B2 (en) Transmission device, communication device, communication system, transmission method, and computer program product
US9438414B2 (en) Virtualized SHA computational engine
JP5967967B2 (ja) 情報処理装置およびその制御方法
US9948756B1 (en) Automated pipeline generation
US9727512B1 (en) Identical packet multicast packet ready command
JP5054716B2 (ja) 通信プロトコル処理回路、情報処理装置及び通信プロトコル処理方法
CN116599871B (zh) 一种网络时延的确定方法和相关装置
US10341246B1 (en) Update packet sequence number packet ready command
US20230254248A1 (en) L2 switch, communication control method, and communication control program
JP4891204B2 (ja) 映像処理装置、映像処理方法、映像処理プログラム及び記憶媒体
US20230176932A1 (en) Processor, information processing apparatus, and information processing method
US11811637B1 (en) Packet timestamp format manipulation
JP3362715B2 (ja) Ipフラグメント処理装置、方法及びプログラムを記憶した記憶媒体
JP6490321B2 (ja) ブリッジ装置及び設備ネットワーク

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120601

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130827

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130906

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131025

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140221

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140414

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140729

LAPS Cancellation because of no payment of annual fees