JP7067164B2 - 通信制御装置、通信制御方法、及び制御プログラム - Google Patents

通信制御装置、通信制御方法、及び制御プログラム Download PDF

Info

Publication number
JP7067164B2
JP7067164B2 JP2018052327A JP2018052327A JP7067164B2 JP 7067164 B2 JP7067164 B2 JP 7067164B2 JP 2018052327 A JP2018052327 A JP 2018052327A JP 2018052327 A JP2018052327 A JP 2018052327A JP 7067164 B2 JP7067164 B2 JP 7067164B2
Authority
JP
Japan
Prior art keywords
communication
buffer
capacity
transmission buffer
control device
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
JP2018052327A
Other languages
English (en)
Other versions
JP2019165371A (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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2018052327A priority Critical patent/JP7067164B2/ja
Publication of JP2019165371A publication Critical patent/JP2019165371A/ja
Application granted granted Critical
Publication of JP7067164B2 publication Critical patent/JP7067164B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本開示は、通信制御装置、通信制御方法、及び制御プログラムに関する。
特許文献1-4には、Ethernet(登録商標;以下同様)フレーム伝送路において、フレームのオーバーフローを抑止するフロー制御の技術が提案されている。特許文献1-4に記載のフロー制御では、送信先の受信許容量を超過するトラフィック量のデータが流入した場合、上記送信先から送信元となるレイヤ2スイッチ(L2SW)に対してPAUSEフレームを送信し、L2SWからの出力を停止又は制限している。ここでの出力の制限は、送信レートを下げることを意味する。
特開2016-066835号公報 特開2013-093761号公報 特開2002-223223号公報 特開2002-152255号公報
しかしながら、特許文献1-4に記載のフロー制御では、仮に送信バッファの拡張用と受信バッファの拡張用として使用する共有メモリを設けた場合、L2SWに対してPAUSEフレームの送信が頻発すると、送信を停止している間、共有メモリの容量を逼迫する。これにより、このフロー制御では、当該ポートのみならず、しいてはL2SWの全ポートからのEthernetフレームの送受信ができなくなる恐れがある。よって、このフロー制御では、PAUSEフレームを使用する場合、緻密な机上計算が必要となり、処理が複雑となる。
一方で、PAUSEフレームを使用しないEthernetフレーム伝送路においては、送信先の受信許容量を超過するトラフィック量のデータが流入した場合、オーバーフローしたEthernetフレームは破棄されることになる。
よって、通信制御装置において、PAUSEフレームのような出力を停止又は制限するフレームの送信を少なくし、且つ、伝送路を流れるトラフィック量を最適化する(例えばトラフィック量の増加に対応して破棄されるフレームを少なくする)ことが求められる。また、同時に、通信制御装置において、伝送路を流れるトラフィック量を最適化するために送信バッファの拡張に使用する記憶部の容量を調整する際に、上記記憶部を使用する他の処理への影響を少なくすることが求められる。上記他の処理は、例えば他のポートでの通信、つまり他の通信バッファを経由した通信などが挙げられる。
本開示の目的は、上述した課題を解決する通信制御装置、通信制御方法、及び制御プログラムを提供することにある。上記課題は、通信制御装置において、伝送路を流れるトラフィック量を最適化するに際し、出力を停止又は制限するフレームの送信を少なくし、且つ送信バッファの拡張に使用する記憶部を使用する他の処理への影響を少なくすることができない、というものである。
本開示の第1の態様に係る通信制御装置は、
送信するフレームのデータを格納する送信バッファを有し、フレームを送受信する通信部と、
前記送信バッファに格納する対象のデータを格納可能な記憶部と、
前記送信バッファを経由して送信されるデータのトラフィック量を監視し、前記トラフィック量に基づいて、前記送信バッファの拡張バッファとして前記記憶部を使用する容量である拡張容量を決定する制御部と、
を備えたものである。
本開示の第2の態様に係る通信制御方法は、
送信するフレームのデータを格納する送信バッファを有し、フレームを送受信する通信部と、前記送信バッファに格納する対象のデータを格納可能な記憶部と、を備えた通信制御装置によって実行される通信制御方法であって、
前記送信バッファを経由して送信されるデータのトラフィック量を監視するステップと、
前記トラフィック量に基づいて、前記送信バッファの拡張バッファとして前記記憶部を使用する容量である拡張容量を決定するステップと、
を有するものである。
本開示の第3の態様に係る制御プログラムは、
送信するフレームのデータを格納する送信バッファを有し、フレームを送受信する通信部と、前記送信バッファに格納する対象のデータを格納可能な記憶部と、を備えた通信制御装置に実行させるための制御プログラムであって、
前記通信制御装置に、
前記送信バッファを経由して送信されるデータのトラフィック量を監視するステップと、
前記トラフィック量に基づいて、前記送信バッファの拡張バッファとして前記記憶部を使用する容量である拡張容量を決定するステップと、
を実行させるための制御プログラムである。
本開示により、上記課題を解決する通信制御装置、通信制御方法、及び制御プログラムを提供することができる。即ち、本開示によれば、通信制御装置において、伝送路を流れるトラフィック量を最適化するに際し、出力を停止又は制限するフレームの送信を少なくし、且つ、送信バッファの拡張に使用する記憶部を使用する他の処理への影響を少なくすることができる。
実施形態1に係る通信制御装置の一構成例を示すブロック図である。 実施形態2に係る通信制御装置を備えた通信システムの一構成例を示すブロック図である。 図2の通信システムにおける制御部の一構成例を示すブロック図である。 比較例に係るL2SWにおけるPAUSEフレームを用いた通信制御を説明するためのフロー図である。 図3の制御部における通信制御方法の一例を説明するためのフロー図である。 実施形態3に係る通信制御装置における設定例について説明するための図である。 実施形態4に係る通信制御装置における制御部の一構成例を示すブロック図である。 通信制御装置のハードウェア構成の一例を示す図である。
以下、図面を参照して、実施形態について説明する。なお、実施形態において、同一又は同等の要素には、同一の符号を付し、重複する説明は省略される。
<実施形態1>
図1は、実施形態1に係る通信制御装置の一構成例を示すブロック図である。
図1に示すように、本実施形態に係る通信制御装置1は、制御部1a、通信部1b、及び記憶部1cを備える。通信制御装置1は、通信制御装置1に有線又は無線で接続された機器間による通信を中継することができる装置であり、中継装置或いは通信装置と称することもできる。
制御部1aは、例えば、CPU(Central Processing Unit)、作業用メモリ、及び制御プログラムを記憶した不揮発性の記憶装置などによって実現することができる。また、制御部1aは、例えば集積回路(Integrated Circuit)によって実現することもできる。制御部1aにおける制御については後述する。
通信部1bは、フレームを送受信する。通信部1bは、通信制御装置1に接続された機器からフレームを受信し、通信制御装置1に接続された他の機器にそのフレームを送信するように構成することができる。このフレームは、例えばEthernet規格に基づくフレームとすることができるが、これに限ったものではない。
また、通信部1bは、送信するフレームのデータ(パケットデータと称することもある)を格納する送信バッファ1dを有する。なお、送信バッファ1d等のバッファはバッファメモリと称することもできる。さらに、通信部1bは、受信するフレームのデータを格納する受信バッファ(図示せず)を有することができる。送信バッファ1dや受信バッファは、いずれも半導体メモリ等の記憶装置によって実現することができ、この記憶装置は揮発性であっても不揮発性であってもデータが一時的に格納できればよい。また、通信部1bは、送信バッファ1dを有する送信ポートと、受信バッファを有する受信ポートと、を備えることができる。なお、送信ポートの数及び受信ポートの数は問わない。
記憶部1cは、送信バッファ1dに格納する対象のデータを格納可能な装置である。記憶部1cは、例えば半導体メモリ等の記憶装置によって実現することができる。記憶部1cは、揮発性であっても不揮発性であってもデータが一時的に格納できればよい。記憶部1cは、図1に示すように通信部1bの内部に具備することができるが、通信部1bの外部に具備することもできる。また、記憶部1cは、送信バッファ1d及び受信バッファについての共有の記憶部とすること、つまり、受信バッファに格納する対象のデータを格納可能とすることもできる。また、送信バッファ1d等のバッファは、記憶部1cと別のものとして説明しているが、各バッファの記憶領域自体は元々記憶部1cの予め定められた領域とすることもできる。
制御部1aは、送信バッファ1dを経由して送信されるデータのトラフィック量(データ量)を監視する。そして、制御部1aは、そのトラフィック量に基づいて、送信バッファ1dの拡張バッファとして記憶部1cを使用する容量である拡張容量(拡張バッファの容量)を決定する。
以上、本実施形態に係る通信制御装置1では、上述したようなフロー制御を用いず(フロー制御により送信側のトラフィック量を制限することなく)、トラフィック量を監視して拡張容量を決定して、送信バッファの拡張を行っている。よって、通信制御装置1によれば、伝送路を流れるトラフィック量を最適化するに際し、出力を停止又は制限するフレームの送信を少なくし、且つ、送信バッファの拡張に使用する記憶部を使用する他の処理への影響を少なくすることができる。また、上記最適化により、適切に送信バッファの拡張を行うことができるため、トラフィック量の増加に対応することができ、破棄フレームも少なくすることができる。
ここで、上記他の処理は、例えば他のポートでの通信、つまり他の通信バッファを経由した通信などが挙げられる。上記影響について補足すると、本実施形態では、トラフィック量の調整に際し、記憶部1cの空き容量を考慮することになるため、記憶部1cを使用する可能性のある、他のポートでの通信等への影響を抑えることができるようになる。
通信制御装置1が送信ポートを有するL2SWとして機能する装置である場合を例に説明すると、本実施形態では、L2SWの送信側でトラフィック量を監視(モニタリング)して送信バッファを上記記憶部で拡張し、トラフィック量を調整する。よって、本実施形態によれば、伝送路を流れるトラフィック量を最適化するに際し、PAUSEフレームの送信を少なくし、且つ、L2SWの当該送信ポート以外への影響を抑えることができるようになる。
さらに、他の効果として、本実施形態によれば、トラフィック量を監視しているため、実運用環境でのデバッグ(例えば、L2SWの各種設定値の修正など)を容易に行うことができる。
<実施形態2>
実施形態2について、図2~図5を併せて参照しながら、実施形態1との相違点を中心に説明するが、実施形態1で説明した様々な例が適用できる。図2は、実施形態2に係る通信制御装置を備えた通信システムの一構成例を示すブロック図で、図3は、図2の通信システムにおける制御部の一構成例を示すブロック図である。
図2に示すように、本実施形態に係る通信システムは、通信制御装置10と、通信制御装置10に接続された送信元デバイスA(31)、送信元デバイスB(32)、及び送信先デバイスC(41)と、を備えることができる。この通信システムは、これらの構成要素を含みLAN(Local Area Network)を構成することができ、ネットワークシステムと称することもできる。
各デバイス31,32,41は、通信制御装置10と通信可能な装置であり、通信部を有していればよい。各デバイス31,32,41は、例えば、通信制御装置10と同様の中継装置、他の中継装置、PC(Personal Computer)、携帯電話機(スマートフォンと称されるものも含む)等の通信可能な電子機器とすることができる。
本実施形態に係る通信制御装置10は、通信部1bの一例としてのL2SW(11)と、制御部1aの一例としての制御部12と、を備える。
L2SW(11)は、フレームに宛先情報として含まれるMAC(Media Access Control)アドレスで中継先を判断し、中継動作を行う。L2SW(11)は、受信ポートA(11a)、受信ポートB(11b)、及び送信ポートC(11c)を備える。
図2に示す通信システムでは、受信ポートA(11a)、受信ポートB(11b)、及び送信ポートC(11c)が、それぞれ送信元デバイスA(31)、送信元デバイスB(32)、送信先デバイスC(41)に接続されている。この通信システムでは、このようにして通信制御装置10が各デバイス31,32,41と接続されて、Ethernetフレームの伝送路が構築されているものとする。つまり、この通信システムにおいて、送信元デバイスA(31)と送信元デバイスB(32)は、L2SW(11)を介して送信先デバイスC(41)にEthernetフレームを送信することができる。
L2SW(11)は、その内部において、受信ポートA(11a)側に受信バッファA(26)、受信ポートB(11b)側に受信バッファB(27)、送信ポートC(11c)側に送信バッファC(23)を具備する。例えば、図2に示すように、受信ポートA(11a)が受信バッファA(26)を有し、受信ポートB(11b)が受信バッファB(27)を有し、送信ポートC(11c)が送信バッファC(23)を有することができる。
受信バッファA(26)、受信バッファB(27)、及び送信バッファC(23)は、送信先デバイスC(41)に送信するEthernetフレームを、例えば送信待ちが発生した場合に一時的に格納(保管)する機能を有する。
このように、L2SW(11)は、複数の通信ポートを有することができ、このうちの1つが、送信バッファC(23)を有する送信ポートC(11c)に該当する。各通信ポートは、通信するフレームのデータを格納する通信バッファ(送信バッファ又は受信バッファ)を有することができる。なお、説明の都合上、通信ポート(接続ポート)を3つとしているが、L2SW(11)の接続ポート数に制限を設ける必要はなく、また、実際に接続されるデバイスの数にも制限を設ける必要はない。つまり、図2に示すようなネットワーク構成に基づき本実施形態を説明するが、本実施形態はこのようなネットワーク構成に限ったものではない。
また、L2SW(11)は、記憶部1cの一例としての共有メモリ21を備えることができる。共有メモリ21は、予め決められた容量のメモリである。共有メモリ21は、受信バッファA(26)、受信バッファB(27)、及び送信バッファC(23)と、格納領域をシェアすることができる。よって、図2では便宜上図示しないが、このようなシェアを行う場合、受信バッファA(26)と共有メモリ21とが接続され、受信バッファB(27)と共有メモリ21とも接続されていることになる。各バッファ23,26,27の容量は、伝送路の設計者が自由に決定でき、また可変にできるものとする。
このように、共有メモリ21は、L2SW(11)に設けられた各通信ポートに対応する通信バッファに格納する対象のデータを格納可能になっている。このように、共有メモリ21は、各通信ポートの共有とすること、つまり各通信バッファで共有される拡張用の記憶部とすることができる。
また、送信ポートC(11c)は、送信バッファC(23)の他に一般的な機能としてパケット数カウンタ24及びbit数カウンタ25を有することができる。制御部12は、これらのカウント値を読み出すことにより、送信バッファC(23)のトラフィック量を監視することができる。
さらに、制御部12は、監視により得たトラフィック量に基づいて、送信バッファC(23)を介して送信するデータの流量を制限することが好ましい。ここでデータの流量とは、一般的なトラフィック量と同様に、単位時間あたりに流れるデータ量とすることができる。
そのために、送信ポートC(11c)には、シェーピング部22が具備されている。シェーピング部22は、L2SW(11)から送信先デバイスC(41)へ送信するデータの流量(トラフィック量)を制限する機能を有する。つまり、制御部12は、算出部12aによる算出の結果から、送信バッファC(23)の容量拡張機能だけでなく、シェーピング部22によるシェーピング機能を稼働させて、L2SW(11)から送信先デバイスC(41)までの流量を制御する。これにより、通信制御装置10は、送信先デバイスC(41)の受信許容量を超過しないような制御をより適切に行うことができる。
図2に示す通信システムでは、上述のような構成により、送信元デバイスA(31)と送信元デバイスB(32)から同時に送信先デバイスC(41)へEthernetフレームを送信することができる。送信元デバイスA(31)及び送信元デバイスB(32)から同時に送信されたEthernetフレームは、それぞれ受信バッファA(26)及び受信バッファB(27)を経て、送信バッファC(23)に滞留し、順に送信先デバイスC(41)へ送信される。
このような場面における、比較例に係るL2SWでの制御について説明する。比較例に係るL2SWでは、フロー制御を行う。このフロー制御では、比較例に係るL2SWの送信ポートからのトラフィック量が増大し、送信先デバイスの受信許容量を超過すると、その送信先デバイスが比較例に係るL2SWに対して、PAUSEフレームを発行し、一時的に送信ポートCからの出力を止める。図4のフロー図を参照しながら、比較例に係るL2SWにおけるPAUSEフレームを用いた通信制御について説明する。比較例に係るL2SWは、PAUSEフレームを受信する(ステップS101)と、そのPAUSEフレーム内に格納されているPAUSE設定時間に応じて指定された時間の間、送信を停止又は送信停止の解除を行う(ステップS102)。
しかしながら、比較例ではL2SWに対してPAUSEフレームの送信が頻発すると、送信を停止している間、共有メモリ(共有メモリ21に相当)の容量を逼迫し、当該ポートだけでなく他のポートにおいてもフレームの送受信ができなくなる恐れがある。
また、PAUSEフレームを使用しない環境で使用される別の比較例に係るL2SWでは、送信先デバイス内で処理が追いつかなくなったEthernetフレームを破棄する。
これに対して、本実施形態に係る通信制御装置10では、制御部12が次のような制御を行っている。即ち、制御部12は、送信バッファC(23)を経由して送信されるデータのトラフィック量を監視し、そのトラフィック量に基づいて、送信バッファC(23)の拡張バッファとして共有メモリ21を使用する容量(拡張容量)を決定する。このような送信バッファC(23)の拡張により、破棄されるフレームを低減させることができる。
特に、本実施形態における制御部12は、トラフィック量が予め定められた閾値を超えた場合に、拡張容量を変更する。このように、拡張容量は、トラフィック量が閾値を超えたか否かに基づいて決定することができる。
また、制御部12は、トラフィック量が閾値を超えた場合に拡張容量を増やす(大きくする)ことが好ましい。これにより、破棄されるフレームを低減させるだけでなく、共有メモリ21の容量も必要な分だけ使用することができ、他のポート(受信ポートA,B)での通信を妨げることを防ぐことができる。
なお、拡張容量は、L2SW(11)の設定値として変更可能な状態で保存しておくことができる。例えば、この設定値は、図示しない制御部12内のメモリに格納しておくことができ、或いは共有メモリ21として不揮発性メモリを採用しておけば共有メモリ21に格納しておくこともできる。また、この設定値は、L2SW(11)内の別途設けたメモリに格納しておくこともできる。
より具体的な例として、制御部12は、図3に示すように算出部12aを有し、次のようなEthernetフレーム伝送制御を行うことができる。
まず、算出部12aは、定期的(例えば1秒周期)にパケット数カウンタ24及びbit数カウンタ25の少なくとも一方からカウンタの値(カウント値)を読み出し、単位時間あたりのトラフィック量を算出する。
算出部12aは、予め設定されていた閾値を上回るトラフィック量を検出した場合、読み出したパケット数カウント値12bもしくはbit数カウント値12cから単位時間あたりのトラフィック量を算出する。なお、上記閾値は、例えば、上記設定値の一部として格納しておくことができる。また、算出部12aは、このような検出時に共有メモリ21の空き容量12dを読み出す。そして、算出部12aは、算出した単位時間あたりのトラフィック量と共有メモリ21の空き容量12dとから、送信バッファC(23)のバッファ量の拡張に割り当てるメモリ量を算出する。
ここで、上記閾値は、送信先デバイスC(41)の受信許容量より小さい値に設定しておくことが好ましい。これにより、制御部12は、送信先デバイスC(41)側の受信許容量を超過する前に送信バッファC(23)の拡張を発動させることができ、適切なタイミングで送信制御が発動できる。通信制御装置10は、上記閾値を変更するユーザ操作を受け付ける操作部を備えるか、或いは、外部に接続されたPC等の機器からこのようなユーザ操作を受付可能に構成されていればよい。
また、容量拡張機能を稼働させる上記閾値と、シェーピング機能を稼働させる閾値とは、異なる値とすることもできる。
また、制御部12は、送信バッファC(23)のトラフィック量に基づいて、他の通信ポート、例えば受信ポートA(11a)についての拡張容量、或いは、受信ポートA(11a)及び受信ポートB(11b)についての拡張容量も決定するようにしてもよい。
また、制御部12は、拡張容量を共有メモリ21の空き容量以内の容量に決定することができる。但し、共有メモリ21の空き容量は受信するデータ量や図示しない他の送信バッファで送信するデータ量などによっても変動し、また、他の送受信を制限することもできる。よって、制御部12は、拡張容量を共有メモリ21の空き容量を超えた値(無論、共有メモリ21の全容量以下の値)に決定することもできる。
また、制御部12は、各通信ポート(この例ではポート11a~11c)のトラフィック量(各通信バッファを経由して通信されるデータのトラフィック量)を監視するように構成することもできる。そして、制御部12は、各通信バッファについてのトラフィック量に基づいて、送信ポートC(11c)についての拡張容量を決定するようにしてもよい。もしくは、制御部12は、各通信バッファについてのトラフィック量に基づいて、送信ポートC(11c)及び他のポートについての拡張容量を決定するようにしてもよい。図2の例における上記他のポートは、受信ポートA(11a)及び受信ポートB(11b)の少なくとも1つとすることができる。
例えば、制御部12は、L2SW(11)に含まれる全てのポートのトラフィック量を一括して監視して、それらのトラフィック量及び共有メモリ21の空き容量に基づいて各ポートの拡張バッファ量を決定することができる。また、制御部12は、共有メモリ21を拡張に使っていないポートについては、その分、他ポートへ解放するように制御することもできる。
次に、図5を併せて参照しながら、制御部12における通信制御方法の一例について説明する。図5は、制御部12における通信制御方法の一例を説明するためのフロー図である。
制御部12は、定期的に各種カウンタの値(図3の例ではパケット数カウンタ24からのカウント値12b及びbit数カウンタ25からのカウント値12c)を読み出す(ステップS1)。次いで、制御部12の算出部12aは、予め設定しておいたトラフィック量の閾値を超過していないか否かの判定(確認)を行う(ステップS2)。
算出部12aは、閾値を超過したと判定した場合(ステップS2でYESの場合)、続けて共有メモリ21の空き容量を確認する(ステップS3及びステップS4)。具体的には、算出部12aは、共有メモリ21の空き容量12dを確認し(ステップS3)、空き容量があるか否かを判定する(ステップS4)。
算出部12aは、空き容量がある場合(ステップS4でYESの場合)、送信バッファC(23)の拡張量とシェーピングを行う帯域量(単位時間あたり伝送可能な最大のデータ量)を算出し、L2SW(11)の設定値を変更する(ステップS5)。
算出部12aは、共有メモリ21の空き容量がない場合(ステップS4でNOの場合)、送信元デバイスへ帯域制限の必要性を通知する(ステップS7)。ステップS7では、例えばL2SW(11)から送信元デバイスA(31)及び送信元デバイスB(32)へPAUSEフレームを送信するなどの方法で通知を行うことができる。ステップS5,S7の処理後は開始時点(ステップS1)に戻り、処理が継続される。
このように、ステップS5においてL2SW(11)の設定値の変更によりトラフィック量を制限した後も、各種カウンタの読み出し(ステップS1)を続ける。その後、算出部12aは、トラフィック量が上記閾値以下になった場合(ステップS2でNOの場合)、送信バッファC(23)の拡張及びシェーピングを解除する(ステップS6)。つまり、閾値を超えたら送信バッファを拡張してもよいし、閾値より下がったら縮小して元に戻してもよい。このように、制御部12は、トラフィック量が上記閾値を超えた後に上記閾値以下になった場合に、拡張容量を元に(元の値に)戻すことが好ましい。
また、別の処理例として、ステップS2でNOの場合(算出部12aが閾値を超過していないと判定した場合)、制御部12は、ステップS1に戻りカウンタ読み出しを継続することもできる。
以上に説明した本実施形態に係る通信制御装置10によれば、実施形態1に係る通信制御装置1の効果と同様に、次のような効果を奏する。即ち、通信制御装置10では、L2SWの送信側でトラフィック量を監視して送信バッファC(23)を共有メモリ21で拡張し、トラフィック量を調整する。よって、本実施形態によれば、伝送路を流れるトラフィック量を最適化するに際し、PAUSEフレームの送信を少なくし、且つ、L2SW(11)の当該送信ポートC(11c)以外への影響を抑えることができるようになる。後者の効果について補足すると、本実施形態では、トラフィック量の調整に際し、共有メモリ21の空き容量を考慮することになるため、共有メモリ21を使用する可能性のある、当該送信ポートC(11c)以外への影響を抑えることができるようになる。
さらに、本実施形態に係る通信制御装置10によれば、このような効果に加えて、次のような効果も奏する。即ち、通信制御装置10では、Ethernetフレーム伝送路に配置されるL2SW(11)において、PAUSEフレームを使用する代わりに伝送路に流れるトラフィック量を監視し、事前に設けた閾値を超過した場合にバッファ量の拡張をダイナミックに行う。これにより、通信制御装置10によれば、フレームの送受信を必要以上に停止又は制限することなく、Ethernetフレーム伝送路に流れるトラフィック量を最適化することができる。また、通信制御装置10において、上記閾値を超過した場合に流量の制限(シェーピング)もダイナミックに行うことで、よりEthernetフレーム伝送路に流れるトラフィック量を最適化することができる。
また、本実施形態に係る通信制御装置10では、トラフィック量を監視しているため、トラフィック量に見合った閾値を調整することができ、拡張バッファの設定の最適化を容易に実現することができる。
このように、本実施形態に係る通信制御装置10では、トラフィック量に見合った閾値調整を行うことができる。よって、通信制御装置10によれば、Ethernetフレーム伝送路のトラフィック量が例えば、送信元デバイス、送信先デバイスの処理能力向上により、伝送できるトラフィック量が上昇するようなケースにおいても、設定の最適化が容易に行うことができる。実際、一定のトラフィック量がなく、トラフィック量が大きく変動するEthernetフレーム伝送路は多く存在するため、このような効果は大きいと言える。
<実施形態3>
実施形態3について、図6を併せて参照し、その効果も含めた実施形態2との相違点を中心に説明する。実施形態3は、実施形態1,2で説明した様々な例が適用できる。図6は、実施形態3に係る通信制御装置における設定例について説明するための図である。
図5で説明した通信制御方法の例においては1つの閾値に基づき処理を行ったが、トラフィック量に応じて何段階かの閾値を設けてもよい。本実施形態では、複数の閾値を使用したL2SW(11)の設定値を変更する処理例を、図6に示すマトリクス60を参照しながら説明する。
マトリクス60において、縦軸は複数の閾値の設定例を示している。マトリクス60では、3つの閾値1~3が設定されている例を挙げている。閾値は、この例のように、トラフィック量に応じて複数段階用意しておくことができ、各閾値の具体的な値は通信制御装置10を組み込むEthernetフレーム伝送路のトラフィック量によって決めておくことができる。
また、マトリクス60において、横軸は共有メモリ21の空き容量の大きさを示している。なお、マトリクス60では、小、中、大の3つの容量が設定されている例を挙げており、実際にはこれらの3つの容量として具体的な閾値を設定しておくことができる。
また、マトリクス60の内部に2段で示されている値は、上段がバッファ拡張量、下段がシェーピング量をそれぞれ示している。これらの値も実際には具体的な値を設定しておくことができる。これらのバッファ拡張量及びシェーピング量は、図5のステップS5における値に相当する。
このように、複数の閾値(トラフィック量の閾値)、バッファ拡張量、及びシェーピング量を設定可能にしておくことで、より緻密なトラフィック量の制御を行うことができる。
<実施形態4>
実施形態4について、図7を併せて参照し、その効果も含めた実施形態2との相違点を中心に説明する。実施形態4は、実施形態1-3で説明した様々な例が適用できる。図7は、実施形態4に係る通信制御装置における制御部の一構成例を示すブロック図である。
本実施形態に係る通信制御装置10では、制御部12に対応する制御部70が、監視により得たトラフィック量が予め定められた閾値を超えた通信ポートの数に基づいて、少なくとも送信ポートC(11c)についての拡張容量を決定する。また、制御部70は、上記数に基づいて、他の通信ポート、例えば受信ポートA(11a)についての拡張容量、或いは、受信ポートA(11a)及び受信ポートB(11b)についての拡張容量を決定するようにしてもよい。
また、本実施形態では、このような通信ポートの数以外にも拡張容量の決定に用いることができる。つまり、本実施形態における制御部70は、実施形態2で説明した送信ポートC(11c)内に具備するカウンタ以外の要素を用いてL2SW(11)の設定変更値を算出することができる。この設定変更値は、少なくとも上述したバッファ拡張量を含み、好ましくはシェーピング量を含む。
具体的に説明すると、制御部70は、算出部12aに対応する算出部71を有する。算出部71は、送信ポートC(11c)内のパケット数カウンタ24及びbit数カウンタ25からそれぞれ取得したカウント値72及びカウント値73以外の情報も、設定変更値の算出に用いる。
例えば、算出部71は、閾値を超えた通信ポートの数74、送信先デバイスC(41)の受信ポートにおけるエラー発生数、オーバーフロー発生数、パケット破棄発生数などの情報(受信ポート状態75)を、設定変更値の算出に用いることができる。また、算出部71は、送信先デバイスC(41)におけるパケット数カウンタの値(カウント値76)、及びその他の要素77を取り入れて、設定変更値の算出を行うこともできる。無論、算出部71は、これらの情報の一部を用いて設定変更値の算出を行うこともできる。
受信ポート状態75やカウント値76は、例えば、送信先デバイスC(41)から送信されたフレームに含ませるようにしておき、算出部71がそのフレームから抽出するようにすることができる。送信先デバイスC(41)の受信ポート状態75やカウント値76はリアルタイム性に欠けダイナミックな変更には不向きである場合がある。しかし、これらの値は、Ethernetフレーム伝送路のデバッグ用途としては有益であるため、算出に用いる値として組み込むことが好ましい。
<他の実施形態>
[a]
実施形態1では、図1に示す通信制御装置1の制御部1a、通信部1b、及び記憶部1cの機能について説明したが、通信制御装置1としてこれらの機能が実現できればよい。同様に、実施形態2-4では、図2及び図3に示す通信制御装置10内の各構成要素の機能について説明したが、通信制御装置としてこれらの機能が実現できればよい。
[b]
実施形態1-4に係る通信制御装置1,10は、次のようなハードウェア構成を有していてもよい。図8は、通信制御装置1,10のハードウェア構成の一例を示す図である。なお、上記他の実施形態[a]についても同様である。
図8に示す通信制御装置80は、プロセッサ81及びメモリ82を有する。実施形態1-4で説明した通信制御装置1,10における制御部1a,12,70の機能は、プロセッサ81がメモリ82に記憶された制御プログラムを読み込んで実行することにより実現される。この制御プログラムは、プロセッサ81を制御部1a又は制御部12として機能させるためのプログラムとすることができる。
上述の例において、制御プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)を含む。さらに、この例は、CD-ROM(Read Only Memory)、CD-R、CD-R/Wを含む。さらに、この例は、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(Random Access Memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
[c]
さらに、上述した実施形態において、通信制御装置における通信制御方法の手順を例示したように、本開示は、通信制御方法としての形態も採り得る。この通信制御方法は、送信するフレームのデータを格納する送信バッファを有し、フレームを送受信する通信部と、上記送信バッファに格納する対象のデータを格納可能な記憶部と、を備えた通信制御装置によって実行される方法である。そして、この通信制御方法は、次のような、監視ステップ及び決定ステップを有する。上記監視ステップは、上記送信バッファを経由して送信されるデータのトラフィック量を監視する。上記決定ステップは、上記トラフィック量に基づいて、上記送信バッファの拡張バッファとして上記記憶部を使用する容量である拡張容量を決定する。なお、その他の例については、上述した様々な実施形態で説明した通りである。また、上記制御プログラムは、通信制御装置に上述した監視ステップ及び決定ステップを実行させるためのプログラムであると言える。
なお、本開示は上記実施形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。また、本開示は、それぞれの実施形態を適宜組み合わせて実施されてもよい。
1、10、80 通信制御装置
1a、12、70 制御部
1b 通信部
1c 記憶部
1d 送信バッファ
11 L2SW
12a 算出部
12b、72 パケット数カウント値
12c、73 bit数カウント値
12d 共有メモリ空き容量
21 共有メモリ
22 シェーピング部
23 送信バッファC
24 パケット数カウンタ
25 bit数カウンタ
26 受信バッファA
27 受信バッファB
31 送信元デバイスA
32 送信元デバイスB
41 送信先デバイスC
60 マトリクス
71 算出部
74 閾値を超えたポート数
75 送信先デバイスの受信ポート状態
76 送信先デバイスのパケット数カウント値
77 その他の要素
81 プロセッサ
82 メモリ

Claims (9)

  1. 送信するフレームのデータを格納する送信バッファを有し、フレームを送受信する通信部と、
    前記送信バッファに格納する対象のデータを格納可能な記憶部と、
    前記送信バッファを経由して送信されるデータのトラフィック量を監視し、前記トラフィック量に基づいて、前記送信バッファの拡張バッファとして前記記憶部を使用する容量である拡張容量を決定する制御部と、
    を備え
    前記制御部は、前記トラフィック量が予め定められた閾値を超えた場合に、前記拡張容量を変更する、
    通信制御装置。
  2. 前記制御部は、前記トラフィック量が前記閾値を超えた場合に、前記拡張容量を大きくする、
    請求項に記載の通信制御装置。
  3. 前記制御部は、前記トラフィック量が前記閾値を超えた後に前記閾値以下になった場合に、前記拡張容量を元に戻す、
    請求項に記載の通信制御装置。
  4. 前記制御部は、前記拡張容量を、前記記憶部の空き容量以内の容量に決定する、
    請求項1~のいずれか1項に記載の通信制御装置。
  5. 前記通信部は、複数の通信ポートを有し、
    各通信ポートは、通信するフレームのデータを格納する通信バッファを有し、
    前記複数の通信ポートの1つは、前記送信バッファを有する送信ポートであり、
    前記記憶部は、各通信ポートに対応する通信バッファに格納する対象のデータを格納可能になっており、
    前記制御部は、各通信バッファを経由して通信されるデータのトラフィック量を監視して、各通信バッファについてのトラフィック量に基づいて、少なくとも前記送信ポートについての拡張容量を決定する、
    請求項1~のいずれか1項に記載の通信制御装置。
  6. 前記制御部は、前記トラフィック量が予め定められた閾値を超えた前記通信ポートの数に基づいて、少なくとも前記送信ポートについての拡張容量を決定する、
    請求項に記載の通信制御装置。
  7. 前記制御部は、前記トラフィック量に基づいて、前記送信バッファを介して送信するデータの流量を制限する、
    請求項1~のいずれか1項に記載の通信制御装置。
  8. 送信するフレームのデータを格納する送信バッファを有し、フレームを送受信する通信部と、前記送信バッファに格納する対象のデータを格納可能な記憶部と、を備えた通信制御装置によって実行される通信制御方法であって、
    前記送信バッファを経由して送信されるデータのトラフィック量を監視する第1ステップと、
    前記トラフィック量に基づいて、前記送信バッファの拡張バッファとして前記記憶部を使用する容量である拡張容量を決定する第2ステップと、
    を有
    前記第2ステップは、前記トラフィック量が予め定められた閾値を超えた場合に、前記拡張容量を変更する、
    通信制御方法。
  9. 送信するフレームのデータを格納する送信バッファを有し、フレームを送受信する通信部と、前記送信バッファに格納する対象のデータを格納可能な記憶部と、を備えた通信制御装置に、処理を実行させるための制御プログラムであって、
    前記処理は、
    前記送信バッファを経由して送信されるデータのトラフィック量を監視する第1ステップと、
    前記トラフィック量に基づいて、前記送信バッファの拡張バッファとして前記記憶部を使用する容量である拡張容量を決定する第2ステップと、
    を含み、
    前記第2ステップは、前記トラフィック量が予め定められた閾値を超えた場合に、前記拡張容量を変更する、
    制御プログラム。
JP2018052327A 2018-03-20 2018-03-20 通信制御装置、通信制御方法、及び制御プログラム Active JP7067164B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018052327A JP7067164B2 (ja) 2018-03-20 2018-03-20 通信制御装置、通信制御方法、及び制御プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018052327A JP7067164B2 (ja) 2018-03-20 2018-03-20 通信制御装置、通信制御方法、及び制御プログラム

Publications (2)

Publication Number Publication Date
JP2019165371A JP2019165371A (ja) 2019-09-26
JP7067164B2 true JP7067164B2 (ja) 2022-05-16

Family

ID=68064353

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018052327A Active JP7067164B2 (ja) 2018-03-20 2018-03-20 通信制御装置、通信制御方法、及び制御プログラム

Country Status (1)

Country Link
JP (1) JP7067164B2 (ja)

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000115224A (ja) 1998-10-02 2000-04-21 Nec Shizuoka Ltd バッファ容量制御機能付きlan間接続装置
US20070025242A1 (en) 2005-07-27 2007-02-01 Broadcom Corporation Dynamic allocation of aggregate buffer
JP2009170976A (ja) 2008-01-10 2009-07-30 Fujitsu Ltd パケット中継装置、制御方法およびパケット中継プログラム
JP2010161705A (ja) 2009-01-09 2010-07-22 Nec Corp サーバー装置における省電力方法、省電力制御プログラム及びサーバー装置
JP2011103614A (ja) 2009-11-12 2011-05-26 Hitachi Ltd パケット振り分け機能を有する装置及びパケット振り分け方式
JP2012039200A (ja) 2010-08-04 2012-02-23 Nec Engineering Ltd 光伝送装置
CN102413063A (zh) 2012-01-12 2012-04-11 盛科网络(苏州)有限公司 动态调整出口资源分配阈值的方法及系统
JP2012124871A (ja) 2010-12-10 2012-06-28 Fujitsu Ltd 輻輳制御プログラム、情報処理装置および輻輳制御方法
US20130039178A1 (en) 2011-08-12 2013-02-14 Minghua Chen Scheduling under congestion with traffic load-based scaling
JP2014233052A (ja) 2013-05-30 2014-12-11 株式会社オー・エフ・ネットワークス パケット交換装置、パケット交換方法及び帯域制御プログラム

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000115224A (ja) 1998-10-02 2000-04-21 Nec Shizuoka Ltd バッファ容量制御機能付きlan間接続装置
US20070025242A1 (en) 2005-07-27 2007-02-01 Broadcom Corporation Dynamic allocation of aggregate buffer
JP2009170976A (ja) 2008-01-10 2009-07-30 Fujitsu Ltd パケット中継装置、制御方法およびパケット中継プログラム
JP2010161705A (ja) 2009-01-09 2010-07-22 Nec Corp サーバー装置における省電力方法、省電力制御プログラム及びサーバー装置
JP2011103614A (ja) 2009-11-12 2011-05-26 Hitachi Ltd パケット振り分け機能を有する装置及びパケット振り分け方式
JP2012039200A (ja) 2010-08-04 2012-02-23 Nec Engineering Ltd 光伝送装置
JP2012124871A (ja) 2010-12-10 2012-06-28 Fujitsu Ltd 輻輳制御プログラム、情報処理装置および輻輳制御方法
US20130039178A1 (en) 2011-08-12 2013-02-14 Minghua Chen Scheduling under congestion with traffic load-based scaling
CN102413063A (zh) 2012-01-12 2012-04-11 盛科网络(苏州)有限公司 动态调整出口资源分配阈值的方法及系统
JP2014233052A (ja) 2013-05-30 2014-12-11 株式会社オー・エフ・ネットワークス パケット交換装置、パケット交換方法及び帯域制御プログラム

Also Published As

Publication number Publication date
JP2019165371A (ja) 2019-09-26

Similar Documents

Publication Publication Date Title
US10841233B2 (en) Data plane for processing function scalability
US9473408B1 (en) Shortest first longer next routing with congestion reduction
US11778692B2 (en) Data transmission method, apparatus, and device in Wi-Fi network
EP3637704B1 (en) Data transmission method and device
WO2010099718A1 (zh) 一种数据传输控制方法、装置及系统
KR20190142365A (ko) 데이터 분배 방법, 디바이스 및 시스템
JP6468193B2 (ja) 通信装置及び通信装置におけるネットワーク利用可能帯域推定方法、並びにネットワーク利用可能帯域推定プログラム
US10038652B2 (en) Self tuning buffer allocation in a shared-memory switch
EP3694164B1 (en) Data transmission method and device, and computer storage medium
JP7067164B2 (ja) 通信制御装置、通信制御方法、及び制御プログラム
KR102240712B1 (ko) 무선 통신 시스템에서 전송 계층의 속도를 제어하기 위한 장치 및 방법
KR101397299B1 (ko) Hsr 프로토콜이 적용된 링 네트워크에서 프레임 송수신 제어 방법 및 장치
US20180176817A1 (en) Data throughput control in a mobile wireless communication environment
JP2007189592A (ja) トークンバケットによるトラヒック制御装置、方法及びプログラム
JP6402576B2 (ja) 通信装置、情報処理装置、情報処理システム及び通信装置の制御方法
WO2012157565A1 (ja) 無線装置、ルータ、無線システム及び無線伝送速度最適化方法
CN112787944B (zh) 流量控制方法、设备及计算机可读存储介质
JP6763472B2 (ja) スイッチ、スイッチの制御方法及びプログラム
JP5846018B2 (ja) データ伝送装置、データ伝送システム及びデータ伝送方法
WO2018018641A1 (zh) 数据业务的数据传输方法和装置
WO2016090607A1 (zh) 回传终端、基站及无线网络流量控制方法
WO2018053896A1 (zh) 一种基于中继器的数据自动路由方法及中继器
WO2017159142A1 (ja) 監視装置、中継装置、rpl決定方法及びそのプログラムが格納された非一時的なコンピュータ可読媒体
JP2015149537A (ja) 経路制御装置及びシステム及び方法
JP7286513B2 (ja) 通信装置、通信装置の制御方法、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210204

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211008

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211207

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220113

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220411

R151 Written notification of patent or utility model registration

Ref document number: 7067164

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151