JP2018101917A - 通信装置、制御方法、および、プログラム - Google Patents
通信装置、制御方法、および、プログラム Download PDFInfo
- Publication number
- JP2018101917A JP2018101917A JP2016247188A JP2016247188A JP2018101917A JP 2018101917 A JP2018101917 A JP 2018101917A JP 2016247188 A JP2016247188 A JP 2016247188A JP 2016247188 A JP2016247188 A JP 2016247188A JP 2018101917 A JP2018101917 A JP 2018101917A
- Authority
- JP
- Japan
- Prior art keywords
- delay time
- communication
- communication device
- node
- 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
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
【課題】省電力機能を有効にするか否かに応じた遅延時間を計算する通信装置、制御方法及びプログラムを提供する。【解決手段】通信装置は、第1の他の通信装置から、データ転送に係る第1の遅延時間を示す情報を受信する受信手段と、前記通信装置が第2の他の通信装置との間に係る通信において、所定の省電力機能を有効にするか否かを判定する判定手段と、前記判定手段による判定の結果に基づいて、前記通信装置が前記第1の他の通信装置から受信したデータを前記第2の他の通信装置に転送するために要する第2の遅延時間を計算する計算手段と、前記計算手段により計算した前記第2の遅延時間と、前記第1の遅延時間とを加算した第3の遅延時間の情報を前記第2の他の通信装置に送信する送信手段と、を有する。【選択図】図1
Description
本発明は、省電力機能を有し、受信したデータを他の装置へ転送するのに要する遅延時間を計算する通信装置に関する。
Ethernetを使用し、Audio/Video等のストリームデータ(以下、AVデータ)をリアルタイムに伝送し、他の通信装置との同期再生を可能とするEthernet AVBというプロトコル規格がある(特許文献1)。AVBとはAudio Video Bridgingの略である。
Ethernet AVBでは、送信装置に対して既定の遅延時間内に通信可能かつ、時刻同期可能な複数の受信装置のグループであるAVBドメインを形成する。ここで、各受信装置が、送信装置に対して既定の遅延時間内に通信可能であるかを確認するために、送信装置は、各受信装置に対して累積遅延時間を確認させる。なお、累積遅延時間は以下のように計算される。即ち、送信装置から各受信装置までデータを中継する1以上の中継装置の各々が、送信装置から中継装置までデータを送信するのに要する遅延時間を取得し、当該遅延時間に、当該中継装置がデータを中継するのに要する遅延時間を加算する。なお、この遅延時間を算出するための計算式の例がIEEE802.1BAに開示されている。
そして、加算後の遅延時間を、次の装置へ送信する。これを各受信装置に到達するまで行うことにより、各受信装置は、送信装置から受信装置へデータが到達するまでの累積遅延時間を取得することができる。そして各受信装置は、累積遅延時間に基づき、送信装置に対して既定の遅延時間内に通信可能かを確認する。
このようにして、送信装置に対して既定の遅延時間内に通信可能かつ、時刻同期可能な複数の受信装置によりAVBドメインが形成される。また、Ethernet AVBでは、IEEE802.3AZで規定されているLPI(Low Power Idle)を使用することができる旨、定められている。
IEEE802.1BAが提示している遅延時間の計算式の例では、装置内部の遅延や通信リンク速度等が考慮されている。しかし、この計算式にはLPIが有効である場合の遅延時間が考慮されていない。即ち、LPIが有効である場合には、無効である場合と比べ、通信部が省電力状態から復帰するための復帰時間を更に要するが、上記の計算式には復帰時間が考慮されていない。そのため、LPIが有効の場合、この算出式で得られる遅延時間よりも多くの遅延時間を必要とするケースが発生する。その結果、送信ノードと受信ノード間の実際の遅延量が、システムを形成するときの判断として使用する閾値を超えてしまう可能性がある。その場合、エンドノード間の遅延時間を保証できなくなってしまうという課題があった。
上記課題を鑑み、省電力機能を有効にするか否かに応じた遅延時間を計算できるようにすることを目的とする。
本発明の通信装置は、第1の他の通信装置から、データ転送に係る第1の遅延時間を示す情報を受信する受信手段と、前記通信装置が第2の他の通信装置との間に係る通信において、所定の省電力機能を有効にするか否かを判定する判定手段と、前記判定手段による判定の結果に基づいて、前記通信装置が前記第1の他の通信装置から受信したデータを前記第2の他の通信装置に転送するために要する第2の遅延時間を計算する計算手段と、前記計算手段により計算した前記第2の遅延時間と、前記第1の遅延時間とを加算した第3の遅延時間の情報を前記第2の他の通信装置に送信する送信手段と、を有する。
本発明によれば、省電力機能を有効にするか否かに応じた遅延時間を計算できる。
<実施形態1>
図1に、本実施形態における通信システムの構成図を示す。本通信システムは、送信ノード101、中継ノードA102、中継ノードX103、および、受信ノード104から構成される。図1では、受信ノードとして、受信ノード104の1台を図示しているが、これに限らず、受信ノードが複数ある構成でもよい。各ノード101〜104は、100MbE(100M bit Ethernet)以上の通信リンク速度で接続する。
図1に、本実施形態における通信システムの構成図を示す。本通信システムは、送信ノード101、中継ノードA102、中継ノードX103、および、受信ノード104から構成される。図1では、受信ノードとして、受信ノード104の1台を図示しているが、これに限らず、受信ノードが複数ある構成でもよい。各ノード101〜104は、100MbE(100M bit Ethernet)以上の通信リンク速度で接続する。
ここで、送信ノード101は、Ethernet AVB(Audio Video Bridging)に規定されるTalker(トーカー)として動作する送信装置である。送信ノード101は、例えば、ビデオカメラやPC等であり、映像情報を送信する。
また、受信ノード104は、Ethernet AVBに規定されるListener(リスナ)として動作する受信装置である。受信ノード104は、例えば、プロジェクタや液晶ディスプレイ等であり、映像情報を受信して表示する。
なお、これに限らず、送信ノード101と受信ノード104が、工場等で使用される装置であり、映像情報に代えて、もしくは、加えて制御情報等のリアルタイム・同期通信が求められる情報をやり取りしてもよい。
また、図1に示している各ノード101〜104は、IEEE802.3AZで規定される省電力機能であるLPI(Low Power Idle)に対応している。なお、LPIは有線通信のための省電力機能である。LPIを利用する場合、コネクション確立時にノード間で、LPIに対応しているか否かの情報、および、LPIに対応している場合にはLPIを有効にするか無効にするかの情報を交換する。そして、互いにLPIに対応し、かつ、LPIを有効に設定されている場合に、当該ノード間でLPIを有効に設定して通信する。そうでない場合には、当該ノード間ではLPIを利用せず通信する。
各ノード101〜104は、LPIを有効に設定して通信することで消費電力を抑えて通信することができる。なお、LPIに対応していないノードが通信システムに含まれていてもよい。なお、LPIに対応していないノードと通信するノードは、LPIに対応していないノードとの通信においてLPIを利用することはできず、LPIを無効に設定して通信することになる。
また、図1では、中継ノードとして、中継ノードA102と中継ノードX103の2台を図示しているが、これに限らず、中継ノードは1台以上あればよい。なお、送信ノード101がEthernet AVBに規定される通信ドメインであるAVBドメインを形成する際、所定の台数以上の中継ノードを介して接続された受信ノードとはAVBドメインを形成しないようにしてもよい。例えば、7台以上の中継ノードを介して接続された受信ノードとはAVBドメインを形成しないようにしてもよい。ここで、AVBドメインとは、送信ノードに対して所定の遅延時間内(例えば2msや500μs等)で通信可能かつ、各々時刻同期可能な1以上の受信ノードのグループのことである。
Ethernet AVBでは、終端端末間(図1における送信ノード101と受信ノード104の間)において時刻同期を行う機能と、所定の遅延時間内にデータ伝送を行うためのQoS(Quality of Service)機能が規定されている。
また、所定の遅延時間内にデータ伝送を行うために、送信ノードは、各受信ノードに対して累積遅延時間を確認させることがEthernet AVBで規定されている。具体的に、累積遅延時間は以下のように計算される。即ち、送信ノードから各受信ノードまでデータを中継する1以上の中継ノードの各々が、送信ノードから自ノードまでデータが受信されるまでに要する遅延時間(データ転送時間)を取得する。そして、当該遅延時間に、当該中継ノード(自ノード)がデータを中継するのに要する遅延時間を加算して、次のノードへ通知する。なお、この遅延時間を算出するための計算式の例がIEEE802.1BAに開示されている。
これを各受信ノードに到達するまで行うことにより、各受信ノードは、送信ノードから受信ノードへデータが到達するまでの累積遅延時間を取得することができる。そして各受信ノードは、累積遅延時間に基づき、送信ノードに対して既定の遅延時間内に通信可能かを確認し、確認結果を送信ノードにフィードバックする。そして、送信ノードは、フィードバックされた各受信ノードの確認結果に基づいて、所定の遅延時間内にデータ伝送を行うことができる受信ノードとAVBドメインを形成して、リアルタイムデータ伝送を開始する。
これらの機能により、データ再生時刻が設定されたデータをリアルタイムに伝送し、データ送信から所定時間内に、受信ノードで同期してデータを再生することが可能となる。
図2に中継ノードA102のハードウェアブロック図を示す。なお、中継ノードX103も同様のハードウェアブロック構成を有する。
中継ノードA102は、通信部201とバス202とCPU203とメモリ204とを備えており、それぞれの機能ブロックはバス202を介して接続されている。
通信部201は、更にLPI制御部205と通信インターフェース206とを備える。LPI制御部205は、通信部201内の不図示のサブCPUの指示により、通信インターフェース206のLPIの有効/無効の制御を行う。なお、不図示のサブCPUに代えてCPU203がLPI制御部205に指示してもよい。また、LPIが有効に設定されている場合、LPI制御部205は、省電力状態へ移行するLPIのアサート処理や、省電力状態から通常状態へ復帰するLPIデアサート処理も行う。なお、通常状態とは、省電力状態と比べて中継ノードA102の消費電力が高く、通信処理についての制限が少ない状態である。
通信インターフェース206は、ネットワークと接続するためのインターフェースである。通信インターフェース206は、ネットワークから受け取ったパケットに対して、外部装置(例えば、送信ノード101や中継ノードX103)へ中継伝送する転送処理や、CPU203により動作するアプリケーションに渡す受信処理などを行う。
なお、中継ノードA102は、共に2つの外部装置とネットワークを介して接続しているので、少なくとも2つの通信インターフェース206を備えているものとする。通信インターフェース206の数だけ中継ノードA102は外部装置と接続することが可能である。
通信インターフェース206がパケットを中継伝送するための内部処理を高速に行うために、通信部201内に不図示のサブCPUを含むようなサブシステム構成になっていてもよいし、転送処理専用のハードウェアを含んでいてもよい。本実施形態では、通信部201には受信したパケットを処理するために、内部に不図示のサブCPUを有するものとし、サブCPUの指示により通信部201内にある不図示の各ハードウェアが動作するものとする。
CPU203は、中継ノードA102全体の制御を行う。さらに外部装置から指示に応じて、通信部201へLPIを無効にする命令を発行する。通信部201はLPI無効の命令を受けると、通信インターフェース206のLPI機能をOFFにする。通信部201は通信インターフェース206ごとにLPIを制御できる構成とするが、複数ある通信インターフェース206を1つとしてまとめて制御する構成でもよい。
メモリ204は中継ノードA102のシステムプログラムや中継ノードA102の処理を行うためのバッファ領域を備える。
図3に受信ノード104のハードウェアブロック図を示す。
映像出力部301は、映像処理部302から受け取る映像情報を出力する。映像出力部301は、例えばディスプレイ(液晶、プラズマ、有機EL等)やプロジェクタの投影部である。映像出力部301は映像処理部302と直接接続する構成としているが、バス303を介して映像処理部302と接続する構成でもよい。
また、CPU304とメモリ305と通信部306とはバス303を介して接続されている。さらに、映像処理部302は外部装置と接続するインターフェース(例えば、HDMI(登録商標)やDisplay Port等)と接続することで、映像情報を外部装置に出力する構成であってもよい。
映像処理部302は、中継ノードを経由して受信した送信ノード101からの映像情報を、通信部306からバス経由で受け取り、映像出力部301の必要とするフォーマットに変換を行う。映像情報が圧縮されている場合、映像処理部302が展開処理を行う。映像情報には映像を再生する時間が含まれており、その時間になるまで映像処理部302内にあるバッファで一時格納する構成でもよいし、メモリ305で一時格納する構成でも構わない。また、指定された再生時間に再生できるように、通信部306と映像処理部302間でバス経由の接続ではなく、専用パスで接続する構成でもよい。
CPU304は受信ノード104全体の制御を行う。CPU304は、自身の通信部306のLPI制御部307へ命令を発行し、通信インターフェース308のLPIの有効/無効の制御を行う。また、CPU304は、外部装置(中継ノードA102、中継ノードX103等)に対して、LPIを無効にする命令を発行することも可能である。
メモリ305、通信部306は、各々、中継ノードA102のメモリ204、通信部201と同様の構成なので、ここでは説明を省略する。
図4は、中継ノードA102が他のノード(送信ノード101等)からAVBドメイン形成要求を受信した際に、中継ノードA102が実現するフローチャートである。このフローチャートは、中継ノードA102のメモリ204に記憶されたプログラムをCPU203が読み出して実行することで実現される。なお、図4のフローチャートに示すステップの一部または全部を、通信部201やASIC等のハードウェアで実現する構成としても良い。
また、中継ノードA102は、当該フローチャートに従った処理を、独立して複数、並行して行うことができる。例えば、第1のAVBドメイン形成要求を受信して、図4に示すフローチャートを実行中に、第2のAVBドメイン形成要求を受信した場合、実行中のフローチャートの処理を継続しつつ、図4に示すフローチャートを新たに開始することができる。また、中継ノードX103においても同様のフローチャートを実現する。
S401では、中継ノードA102はAVBドメイン形成要求を受信する。この要求には送信ノード101から中継ノードA102までの累積遅延時間、AVBで使用するストリームID、VLAN ID、および、許容される遅延時間の情報が含まれる。なお、VLANとは、Virtual Local Area Networkの略である。
S402では、中継ノードA102は遅延算出式決定処理を行う。この処理では、遅延時間の算出式として式Aと式Bのうち、どちらを使用するかを決定する。ここで、式AとはIEEE802.1BAの6.5章に記載されている最大遅延時間を算出する式を指している。この式では、最大遅延時間(MaxLatency)を計算するために、通信インターフェースにある送信キューにたまっているパケットを出力するのにかかる最大時間を加味している。即ち、式Aには、次のようにtMaxPacketSize+IPG(第二項)と(tAllStreams−tStreamPacket+IPG)×Rate/MaxAllocBand(第三項)が式に加えられている。
MaxLatency=
tDevice+
tMaxPacketSize+IPG+
(tAllStreams−tStreamPacket+IPG)×Rate/MaxAllocBand+tStreamPacket
ここで、tDeviceは、デバイスの内部遅延時間を示しており、中継ノードA102が受信したデータを、中継ノードA102が有する不図示の送信キューに入れるまでにかかる時間である。また、tMaxPacketSize+IPGは、受信した非AVBパケットの転送が完了するのに要する最大の時間(最大転送時間)である。
tDevice+
tMaxPacketSize+IPG+
(tAllStreams−tStreamPacket+IPG)×Rate/MaxAllocBand+tStreamPacket
ここで、tDeviceは、デバイスの内部遅延時間を示しており、中継ノードA102が受信したデータを、中継ノードA102が有する不図示の送信キューに入れるまでにかかる時間である。また、tMaxPacketSize+IPGは、受信した非AVBパケットの転送が完了するのに要する最大の時間(最大転送時間)である。
また、(tAllStreams−tStreamPacket+IPG)×Rate/MaxAllocBandは、中継ノードA102が有する不図示の送信キューに入っている全てのAVBパケットの送信が完了するまでにかかる最大時間である。即ち、送信キューが格納できる最大サイズのデータ量のAVBパケットが送信キューに格納されている場合に、全てのAVBパケットを送信し終えるまでにかかる時間を示す。
また、tStreamPacketは、最大フレームサイズのAVBパケットを、装置間で転送するためにかかる時間(転送時間)である。
一方、式Bは以下の定義である。
MaxLatency=
tDevice+
tWakeUp+
tStreamPacket
式BのtDevice(第一項)は式AのtDevice(第一項)、式BのtStreamPacket(第三項)は式AのtStreamPacket(第四項)と各々、同一の変数である。式Bでは、式Aの第二項と第三項の代わりにtWakeUpが追加されている。tWakeUpはLPIの低電力アイドル状態から通常状態に復帰して、送信開始できるようになるまでにかかる切替時間を表している。つまり、式Bは通信インターフェース206の送信キューに何もない状態(すなわち低電力アイドル状態)からパケットを送信するまでにかかる遅延時間を算出している。式Aでは送信キューにパケットが積まれている状態であり、IEEE802.1BAに記載されているLPIの使用条件を考慮すると、低電力アイドル状態から復帰するまでにかかる時間を考慮する必要がないため、tWakeUpは含まれていない。LPIの規格においてtWakeUpは最大で30usを許容しており、式BにおけるtWakeUpが式Aの第二項と第三項の合計値を超えることがあれば、式Bを使用する必要がある。そのため、本実施形態ではIEEE802.1BAに掲載されている式Aとは別に式Bを定義している。
tDevice+
tWakeUp+
tStreamPacket
式BのtDevice(第一項)は式AのtDevice(第一項)、式BのtStreamPacket(第三項)は式AのtStreamPacket(第四項)と各々、同一の変数である。式Bでは、式Aの第二項と第三項の代わりにtWakeUpが追加されている。tWakeUpはLPIの低電力アイドル状態から通常状態に復帰して、送信開始できるようになるまでにかかる切替時間を表している。つまり、式Bは通信インターフェース206の送信キューに何もない状態(すなわち低電力アイドル状態)からパケットを送信するまでにかかる遅延時間を算出している。式Aでは送信キューにパケットが積まれている状態であり、IEEE802.1BAに記載されているLPIの使用条件を考慮すると、低電力アイドル状態から復帰するまでにかかる時間を考慮する必要がないため、tWakeUpは含まれていない。LPIの規格においてtWakeUpは最大で30usを許容しており、式BにおけるtWakeUpが式Aの第二項と第三項の合計値を超えることがあれば、式Bを使用する必要がある。そのため、本実施形態ではIEEE802.1BAに掲載されている式Aとは別に式Bを定義している。
S402における処理(遅延算出式決定処理)については後述する。本処理が終了後、S403へ進む。
S403では、中継ノードA102はS402で決定した式に基づいて、中継ノードA102における遅延時間を計算し、当該計算結果を、受信したドメイン形成要求の所定フィールドに加算し、転送する。所定フィールドとは、累積遅延時間の領域を指す。本処理が終了後、S404へ進む。
S404では、中継ノードA102は、差分時間の要求を受信したかどうかを判定する。なお、差分時間とは、式Aに基づいて計算された遅延時間と、式Bに基づいて計算された遅延時間との差分である。差分時間の要求を受信した場合、S405へ進み、そうでない場合はS410へ進む。差分時間の使用用途については後述する。なお、差分時間の要求が利用する通信プロトコルについては特に指定や制約はないが、本実施形態ではTCP/IPの通信プロトコルを利用する。TCP/IPによれば、差分時間の要求パケットが消失してしまうリスクを低減することができる。
S405では、中継ノードA102は、自ノードのLPI設定において、LPIが有効であり、かつ、S402で決定した式が式Bかを確認する。LPIが有効であり、かつ、決定した式が式Bであった場合はS407へ進み、そうでない場合はS406へ進む。ここで、LPIが有効とは、Ethernet AVBの規格が定めるLPI使用条件を満たしたときに、中継ノードA102の通信インターフェース206において低電力アイドル状態に移行する一連の処理の機能が有効であることを意味している。
S406では、S404で受け取った差分時間の要求に対して、中継ノードA102は差分時間が0として応答する。本処理が終了後、S408へ進む。一方、S407では、S404で受け取った差分時間の要求に対して、中継ノードA102は2つの式(式Aと式B)の各々に基づく遅延時間の差分を計算し、その計算結果を差分時間として応答する。処理終了後、S408へ進む。
S408では、中継ノードA102は、外部装置(送信ノード101等)からLPI無効の要求を受信したか否かを判定する。受信した場合はS409へ進み、そうでない場合はS411へ進む。なお、LPI無効の要求が利用する通信プロトコルについては特に指定や制約はないが、本実施形態ではTCP/IPの通信プロトコルを利用する。TCP/IPによれば、LPI無効の要求パケットが消失してしまうリスクを低減することができる。
S409では、中継ノードA102は、自ノードのLPIを無効化する。ここでは、少なくともS403で転送するときに使用した通信インターフェース206のLPIを無効化する。なお、中継ノードA102が備える全ての通信インターフェース206のLPIの機能を無効化にしてもよいし、ドメイン形成要求を受信した通信インターフェース206側のLPIも無効化してもよい。ここで言うLPIの無効化とは、LPIの規格で定義される低電力アイドル状態にならなくなることを意味している。本処理が終了後、S411へ進む。
S410では、中継ノードA102は、ドメイン形成要求の応答を検知したか否かを判定する。検知した場合はS412へ進み本フローを終了し、検知していない場合は404へ戻る。また、検知した応答パケットはドメイン形成要求の要求元へ転送する。応答パケットには、受信ノード104が設定したドメイン形成OKかNGかを示す情報が含まれており、この情報によりAVBドメインの形成可否が判断される。
S411は、S410と同様にドメイン形成要求の応答を検知したか否かを判定する。検知した場合はS412へ進み本フローを終了し、検知していない場合は408へ戻る。
次に、S402における処理(遅延算出式決定処理)の詳細を、図5を用いて説明する。本フローはS402に到達したときに開始される(S501)。S502では、中継ノードA102は、S401で受信したドメイン形成要求を転送する際に使用する通信インターフェース206のLPIが有効か否かを確認する。有効であればS503に進み、そうでない場合はS504へ進む。
S503では、中継ノードA102は、下記の式を満たすかどうかを判定する。
tMaxPacketSize+IPG+(tAllStreams−tStreamPacket+IPG)×
Rate/MaxAllocBand<tWakeUp
この式は式Aの第二項と第三項の合計値と式Bの第二項を比較するものである。即ち、受信した非AVBパケットを転送するのに要する最大転送時間と、送信キューに入っているAVBパケットを全て送信し終えるまでにかかる最大時間との合計時間と、LPIの低電力アイドル状態から通常状態に復帰するまでにかかる時間とを比較する。
Rate/MaxAllocBand<tWakeUp
この式は式Aの第二項と第三項の合計値と式Bの第二項を比較するものである。即ち、受信した非AVBパケットを転送するのに要する最大転送時間と、送信キューに入っているAVBパケットを全て送信し終えるまでにかかる最大時間との合計時間と、LPIの低電力アイドル状態から通常状態に復帰するまでにかかる時間とを比較する。
式Aと式Bにおいて他の部分は共通であるため、上記の項目だけを比較すれば、式Aと式Bの各々で計算した場合の遅延時間の大小を比較することができる。つまり、式Aの第二項と第三項の合計値が、式Bの第二項よりも小されば、式Aで計算した遅延時間の方が小さいことがわかる。なお、上述の式に代えて、中継ノードA102は、「式Aで計算した遅延時間<式Bで計算した遅延時間」を満たすかどうかを判定するようにしてもよい。
上記を満たす場合はS505へ進み、満たさない場合はS504へ進む。
S504では、中継ノードA102は、遅延時間を算出する式に式Aを決定する。決定後S506へ進み本フローは終了する。S505では、中継ノードA102は、遅延時間を算出する式に式Bを決定する。決定後S506へ進み本フローは終了する。
式Aの各項目の値はドメイン形成要求の内容によって、毎回異なる可能性があるため、一意の値とはならない。一方で、式Bの第二項(tWakeUp)の値は基本的にそのノードにおいて一意となるため、あらかじめプログラム上に与えることが可能である。もちろん、任意のタイミングでノードがtWakeUpの時間を計測し、その値を式Bへ反映させてもよい。
図6は、受信ノード104が他のノード(中継ノードX103等)からAVBドメイン形成要求を受信した際に、受信ノード104が実現するフローチャートである。このフローチャートは、受信ノード104のメモリ305に記憶されたプログラムをCPU304が読み出して実行することで実現される。なお、図6のフローチャートに示すステップの一部または全部を、通信部306やASIC等のハードウェアで実現する構成としても良い。
また、受信ノード104は、当該フローチャートに従った処理を、独立して複数、並行して行うことができる。例えば、第1のAVBドメイン形成要求を受信して、図6に示すフローチャートを実行中に、第2のAVBドメイン形成要求を受信した場合、実行中のフローチャートの処理を継続しつつ、図6に示すフローチャートを新たに開始することができる。
S601では、受信ノード104はAVBドメイン形成要求を、他のノード(中継ノードX103等)から受信する。S602では、受信ノード104はS601で受信したドメイン形成要求の累積遅延時間が、許容される遅延時間よりも大きいか否かを判定する。なお、ドメイン形成要求に含まれる累積遅延時間、更に受信ノード104での最大遅延時間の計算結果を加算した値が、許容される遅延時間よりも大きいか否かを判定してもよい。
累積遅延時間が、許容される遅延時間(許容時間)よりも大きい場合S603へ進み、そうでない場合はS607へ進む。なお、許容時間は、ドメイン形成要求に含まれる情報に基づいて判定される。例えば、ドメイン形成要求にEterhnet AVBで規定されるクラスAのAVBドメインを形成する旨の情報が含まれていれば、受信ノード104は、許容時間2msであると判定する。
S607では、ドメイン形成OKの応答を送信ノードに対して送信する。送信後S610へ進み、本フローは終了する。
一方、S603では、受信ノード104は、S601で受信したドメイン形成要求を転送した全ての中継ノード(本実施形態では102と103)に対して差分時間を要求する。この処理の必要性について説明する。S602の処理により、規定値よりも遅延時間が大きい場合、通常はドメイン形成不可の応答を送信ノード101へ送信する。しかし、今回のケースのように中継ノード(102と103)がLPIに対応している場合、中継ノード(102と103)が自身の最大遅延時間を計算する際に、LPIからの復帰時間を加味した式(式B)で計算している場合がある。式Bを選択している場合、式Bの計算結果は式Aの計算結果よりも最大遅延時間が大きいものとなっている。したがって、中継ノード(102と103)がLPIを無効にした場合、送信ノード101と受信ノード104間の累積遅延時間がLPIを有効にしている状態よりも小さくなる。そこで、S601で受信したドメイン形成要求を転送した全ての中継ノードに対して、中継ノードが自身の最大遅延時間を計算したときの計算結果から短縮できる遅延時間を要求し、受信ノード104にてドメイン形成可否の再計算を行う。
S604では、受信ノード104はS603で送信した差分時間の要求に対して、全ての中継ノードから応答を受信したかを確認する。全ての中継ノードから応答を受信すると、S605へ進む。なお、受信ノード104は、1以上の所定の中継ノードのみから応答を受信したことに応じてS605へ進むようにしてもよい。所定の中継ノードとは、例えば、差分時間を計算可能なノードである。このようなノードであるか否かは例えば、ノードのMACアドレスを参照することにより判定することができる。
また、所定時間、中継ノードからの応答を待ち受けても全ての中継ノードから応答を受信できなかった場合にも、S605に進むようにしてもよい。
S605では、受信ノード104は、受信した差分時間の1つ以上をS602の判断で使用した累積遅延時間から差し引けば、許容時間内に収まるかを判定する。許容時間内に収まる場合はS606へ進み、そうでない場合はS608へ進む。
S606では、受信ノード104は、S605で使用した差分時間の送信元である中継ノードに対してLPI無効を要求する。この要求を受け取った中継ノードは自身のLPIを無効にするので、この中継ノードの最大遅延時間は式Aの計算結果となり、結果として送信ノード101と受信ノード104間の累積遅延時間が短縮されることになる。
その後、S609では、受信ノード104は、メイン形成OKの応答を送信ノードに対して送信する。送信後S610へ進み、本フローは終了する。
S608では、ドメイン形成NGの応答を送信ノードに対して送信する。全ての中継ノードから受け取った差分時間を差し引いても規定値よりも大きい場合、送信ノード101と受信ノード104間の累積遅延時間を規定値よりも短くすることができないので、ドメイン形成NGの応答を送信する。送信後S610へ進み、本フローは終了する。
以上により、送信ノード101と受信ノード104間で正しい最大遅延時間を利用した累積遅延時間を使用することでドメイン形成の可否判断が可能となる。
<実施形態2>
実施形態1では、中継ノード(102と103)は受信ノード104から差分時間の要求を受信してから差分時間の計算結果を受信ノード104へ送信している。実施形態2では、受信ノード104からの要求を受信せずに中継ノード(102と103)が能動的に差分時間を送信する例について説明する。なお、送信ノード101と中継ノード(102と103)と受信ノード104のブロック構成は同一であるため説明を省略する。
実施形態1では、中継ノード(102と103)は受信ノード104から差分時間の要求を受信してから差分時間の計算結果を受信ノード104へ送信している。実施形態2では、受信ノード104からの要求を受信せずに中継ノード(102と103)が能動的に差分時間を送信する例について説明する。なお、送信ノード101と中継ノード(102と103)と受信ノード104のブロック構成は同一であるため説明を省略する。
図7に実施形態2における中継ノードA102における処理フローを説明する。なお、中継ノードX103も、同様の処理フローを実現する。本フローを実現する方法、および、開始条件は図4のフローと同様なので説明を省略する。
S702とS703の処理内容は、各々S402とS403と同様なので説明を省略する。S704では、中継ノードA102は、S702で決定した遅延算出式が式Bであるか否かを判定する。式Bである場合、S706へ進み、そうでない場合、S705へ進む。
S705では、中継ノードA102は、ドメイン形成要求とは別のパケットを使用して、差分時間が0であることを受信ノード104へ通知する。
S706では、中継ノードA102は、式Bで得られる最大遅延時間と式Aで得られる最大遅延時間の差分時間を計算する。そして、受信ノード104は、その差分時間の情報をドメイン形成要求とは別のパケットを使用して受信ノード104へ通知する。
S707とS708とS709の処理は、各々S408とS409とS411と同じ処理であるため説明を省略する。
なお、S705、706において、ドメイン形成要求パケットに差分時間の情報を含めて受信ノード104へ通知するようにしてもよい。また、受信ノード104への通知は、中継ノードX103等を介して行われる。
以上により、中継ノードA102と中継ノードX103は受信ノード104からの差分時間の要求を受け取る前に差分時間を送信する。
図8に実施形態2における受信ノード104における処理フローを説明する。本フローを実現する方法、および、開始条件は図5と同様なので説明を省略する。
S802はS502と同様なので説明を省略する。
S803では、受信ノード104は、全ての中継ノードから差分時間の情報を受信したか否かを判定する。なお、受信ノード104は、1以上の所定の中継ノードのみから差分時間の情報を受信したかを判定するようにしてもよい。所定の中継ノードについては実施形態1と同様なので、説明を省略する。全ての中継ノードから差分時間の情報を受信した場合、S804へ進む。
また、所定の時間、各中継ノードから差分時間の受信を待ち受けても、全ての中継ノードから差分時間の情報を受信できなかった場合は、受信ノード104は、差分時間の情報を受信できなかった中継ノードに対して、差分時間を要求するようにしてもよい。当該要求により、最終的に全ての中継ノードから差分時間の情報を受信できた場合、S804へ進む。また、所定時間、中継ノードからの通知や応答を待ち受けても全ての中継ノードから差分時間の情報を受信できなかった場合にも、S805に進むようにしてもよい。
これに続くS804からS808の処理は、各々S605からS609までの処理と同様なので説明を省略する。
以上により、受信ノード104は自身が指示を出すことなく中継ノードから差分時間を把握することができ、ドメインの形成の可否判断を行うことが可能となる。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
101 送信ノード
102 中継ノードA
103 中継ノードX
104 受信ノード
201 通信部
202 バス
203 CPU
204 メモリ
205 LPI制御部
206 通信インターフェース
301 映像出力部
302 映像処理部
303 バス
304 CPU
305 メモリ
306 通信部
307 LPI制御部
308 通信インターフェース
102 中継ノードA
103 中継ノードX
104 受信ノード
201 通信部
202 バス
203 CPU
204 メモリ
205 LPI制御部
206 通信インターフェース
301 映像出力部
302 映像処理部
303 バス
304 CPU
305 メモリ
306 通信部
307 LPI制御部
308 通信インターフェース
Claims (13)
- 通信装置であって、
第1の他の通信装置から、データ転送に係る第1の遅延時間を示す情報を受信する受信手段と、
前記通信装置が第2の他の通信装置との間に係る通信において、所定の省電力機能を有効にするか否かを判定する判定手段と、
前記判定手段による判定の結果に基づいて、前記通信装置が前記第1の他の通信装置から受信したデータを前記第2の他の通信装置に転送するために要する第2の遅延時間を計算する計算手段と、
前記計算手段により計算した前記第2の遅延時間と、前記第1の遅延時間とを加算した第3の遅延時間の情報を前記第2の他の通信装置に送信する送信手段と、
を有することを特徴とする通信装置。 - 少なくとも、前記通信装置、前記第1の他の通信装置、および、前記第2の他の通信装置を含み、終端端末間の遅延時間を規定する所定の通信ドメインを形成する際に、前記計算手段は前記第3の遅延時間を計算することを特徴とする請求項1に記載の通信装置。
- 前記所定の通信ドメインは、Ethernet AVB(Audio Video Bridging)ドメインであることを特徴とする請求項2に記載の通信装置。
- 前記所定の省電力機能は、LPI(Low Power Idle)であることを特徴とする請求項1から3のいずれか1項に記載の通信装置。
- 前記通信装置が送信するデータを記憶する送信キューを更に有し、
前記所定の省電力機能を有効にしない場合、前記計算手段は、前記送信キューに記憶されたパケットの送信が完了するまでにかかる最大時間に基づいて、前記第2の遅延時間を計算し、
前記所定の省電力機能を有効にする場合、前記計算手段は、前記所定の省電力機能による省電力状態から前記送信キューに記憶されたデータを送信開始できる状態への切替時間に基づいて、前記第2の遅延時間を計算することを特徴とする請求項1から4のいずれか1項に記載の通信装置。 - 前記最大時間と、前記切替時間との差分時間を外部装置に通知する通知手段を更に有することを特徴とする請求項5に記載の通信装置。
- 前記外部装置は、Ethernet AVB(Audio Video Bridging)のTalkerであることを特徴とする請求項6に記載の通信装置。
- 前記通知手段は、前記外部装置からの要求に応じて、前記差分時間を前記外部装置に通知することを特徴とする請求項6または7に記載の通信装置。
- 前記外部装置は、終端端末間の遅延時間が所定時間を超える場合、前記差分時間を通知させるための要求を行うことを特徴とする請求項8に記載の通信装置。
- 前記通知手段は、前記送信手段が前記第2の遅延時間の情報を前記第2の他の通信装置に送信した後に、前記差分時間を前記外部装置に通知することを特徴とする請求項6から9のいずれか1項に記載の通信装置。
- 前記外部装置からの要求に応じて、前記所定の省電力機能を無効にする制御手段を更に有することを特徴とする請求項6から10のいずれか1項に記載の通信装置。
- 通信装置の制御方法であって、
第1の他の通信装置から、データ転送に係る第1の遅延時間を示す情報を受信する受信工程と、
前記通信装置が第2の他の通信装置との間に係る通信において、所定の省電力機能を有効にするか否かを判定する判定工程と、
前記判定工程における判定の結果に基づいて、前記通信装置が前記第1の他の通信装置から受信したデータを前記第2の他の通信装置に転送するために要する第2の遅延時間を計算する計算工程と、
前記計算工程において計算された前記第2の遅延時間と、前記第1の遅延時間とを加算した第3の遅延時間の情報を前記第2の他の通信装置に送信する送信工程と、
を有することを特徴とする制御方法。 - コンピュータを請求項1から11のいずれか1項に記載の通信装置として動作させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016247188A JP2018101917A (ja) | 2016-12-20 | 2016-12-20 | 通信装置、制御方法、および、プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016247188A JP2018101917A (ja) | 2016-12-20 | 2016-12-20 | 通信装置、制御方法、および、プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2018101917A true JP2018101917A (ja) | 2018-06-28 |
Family
ID=62715602
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016247188A Pending JP2018101917A (ja) | 2016-12-20 | 2016-12-20 | 通信装置、制御方法、および、プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2018101917A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220009381A (ko) * | 2019-05-20 | 2022-01-24 | 아날로그 디바이시즈 인터내셔널 언리미티드 컴퍼니 | 저 전력 유휴 phy 링크 동기화 |
JP2022544796A (ja) * | 2019-08-16 | 2022-10-21 | グーグル エルエルシー | オンチップ動作の明示的なスケジューリング |
-
2016
- 2016-12-20 JP JP2016247188A patent/JP2018101917A/ja active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220009381A (ko) * | 2019-05-20 | 2022-01-24 | 아날로그 디바이시즈 인터내셔널 언리미티드 컴퍼니 | 저 전력 유휴 phy 링크 동기화 |
JP2022537888A (ja) * | 2019-05-20 | 2022-08-31 | アナログ・ディヴァイシス・インターナショナル・アンリミテッド・カンパニー | 低電力アイドルphyリンク同期 |
KR102582858B1 (ko) | 2019-05-20 | 2023-09-25 | 아날로그 디바이시즈 인터내셔널 언리미티드 컴퍼니 | 저 전력 유휴 phy 링크 동기화 |
JP2022544796A (ja) * | 2019-08-16 | 2022-10-21 | グーグル エルエルシー | オンチップ動作の明示的なスケジューリング |
JP7342247B2 (ja) | 2019-08-16 | 2023-09-11 | グーグル エルエルシー | オンチップ動作の明示的なスケジューリング |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9164535B2 (en) | Multi-protocol I/O interconnect time synchronization | |
US11570119B2 (en) | Traffic scheduling method, device, and system | |
EP2798506B1 (en) | Multi-protocol i/o interconnect time synchronization | |
US8661277B2 (en) | Communication apparatus and method of controlling the same | |
JP2018101917A (ja) | 通信装置、制御方法、および、プログラム | |
US10090952B2 (en) | Master/slave negotiation associated with a synchronous ethernet network | |
JP2011040895A (ja) | 情報処理装置、その制御方法及びプログラム | |
CN116032731B (zh) | RapidIO网络系统热备份的实现方法和装置 | |
US9509559B2 (en) | Bandwidth control apparatus, bandwidth control method, and bandwidth control program | |
TW488136B (en) | Power saving for ethernet mac control logic | |
JP2014533031A (ja) | ネットワーク内の遅延を正確に推定するためのサービス、システムおよび方法 | |
JP2020101995A (ja) | 制御システム、および制御装置 | |
JP7027145B2 (ja) | 通信装置、通信装置の制御方法およびプログラム | |
WO2022268205A1 (zh) | 一种信息传输方法及其相关设备 | |
JP5432666B2 (ja) | 設備制御向け中継システム | |
JP2018132844A (ja) | 通信装置 | |
JP5533132B2 (ja) | 通信機器及び通信方法 | |
JP2015192358A (ja) | 停電時給電制御機能を有する通信システム | |
JP2016201696A (ja) | パケット受信処理装置及びパケット受信処理方法 | |
JP2014143566A (ja) | データ通信装置、データ通信方法、及びそのプログラム | |
JP2021106328A (ja) | 同期制御装置および方法 | |
JP2017195545A (ja) | 通信装置、情報処理方法及びプログラム | |
JP4642194B2 (ja) | オブジェクト制御装置、オブジェクト制御方法およびその記録媒体 | |
JP2013110586A (ja) | 通信システム、通信装置及び通信方法 | |
CN115695323A (zh) | 确定报文发送周期的方法、装置以及系统 |