JP2008092018A - 通信装置および通信方法 - Google Patents

通信装置および通信方法 Download PDF

Info

Publication number
JP2008092018A
JP2008092018A JP2006267550A JP2006267550A JP2008092018A JP 2008092018 A JP2008092018 A JP 2008092018A JP 2006267550 A JP2006267550 A JP 2006267550A JP 2006267550 A JP2006267550 A JP 2006267550A JP 2008092018 A JP2008092018 A JP 2008092018A
Authority
JP
Japan
Prior art keywords
transmission
frame
frames
clock
waiting
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
JP2006267550A
Other languages
English (en)
Other versions
JP4842754B2 (ja
Inventor
Osao Touden
長生 嶌田
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2006267550A priority Critical patent/JP4842754B2/ja
Priority to US11/892,144 priority patent/US7710992B2/en
Publication of JP2008092018A publication Critical patent/JP2008092018A/ja
Application granted granted Critical
Publication of JP4842754B2 publication Critical patent/JP4842754B2/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
    • H04L49/00Packet switching elements
    • H04L49/55Prevention, detection or correction of errors
    • H04L49/552Prevention, detection or correction of errors by ensuring the integrity of packets received through redundant connections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/062Synchronisation of signals having the same nominal but fluctuating bit rates, e.g. using buffers
    • H04J3/0632Synchronisation of packets and cells, e.g. transmission of voice via a packet network, circuit emulation service [CES]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Small-Scale Networks (AREA)

Abstract

【課題】フレームを送受信する通信装置において、伝送路の利用率が高い場合でもクロック誤差が原因でバッファメモリが溢れることを防止する。
【解決手段】フレーム保持手段11は、送信待ちのフレームを保持する。送信手段13は、制御信号に基づいてフレーム保持手段11からフレームを順次取り出し伝送路4bへ出力する。送信制御手段14は、初期動作としてTクロック(T≧2)周期で制御信号を発信すると共に、N×Tクロック(N≧2)毎に待ちフレーム数を取得する。待ちフレーム数がK個(K≧1)の場合、少なくとも一部の発信間隔をTクロックより短くすることで、次のN×Tクロックの間にN+K回の制御信号を発信する。
【選択図】図1

Description

本発明は通信装置および通信方法に関し、特に伝送路を介して非同期でフレームを送受信する通信装置および通信方法に関する。
ネットワークを介して端末装置間でデータを送受信する場合、一方の端末装置が送信したデータはデータリンク層においてフレームに分割され、1つ以上の通信装置によって中継されて、相手方の端末装置へ届けられる。フレームを中継する通信装置としては、例えば、レイヤ2スイッチがある。
ここで、通信装置間のフレームの送受信は、一般に、非同期で行われる。すなわち、送信側通信装置と受信側通信装置とは、それぞれ独立のクロック信号に従って動作し、フレームを送受信するタイミングが一致しない。そのため、個々の通信装置は、フレームを一時的に格納するバッファメモリを設け、フレームの受信と送信との間のタイミングの不一致を吸収している(例えば、特許文献1参照)。非同期ネットワークの規格としては、例えば、イーサネット(登録商標)がある。
しかし、受信側通信装置の動作速度が送信側通信装置の動作速度より遅い場合、伝送路の利用率が高いと、受信側通信装置でフレームが滞留してバッファメモリが溢れる可能性がある。これを防ぐ方法として、受信側通信装置でフレームが滞留しないように、送信側通信装置がフレームの送信間隔を制御する方法がある(例えば、特許文献2参照)。すなわち、送信側通信装置が、予め受信側通信装置の動作速度を考慮し、適切な間隔を空けてフレームを送信する。このように、ネットワークの設計時に個々の通信装置の動作速度や伝送路の帯域を考慮することで、フレームが特定の通信装置で滞留することを防止できる。
特開2000−200176号公報 特開2002−271424号公報
ところで、通信装置の実際のクロック周波数は、理論上のクロック周波数と厳密には一致しない。なぜならば、理論値と厳密に一致するクロック信号を発生させることは、物理的に困難だからである。例えば、イーサネットの規格では、100ppm(Parts Per Million)、すなわち、0.01%以内のクロック誤差が許容されている。したがって、送信側通信装置と受信側通信装置との理論上の動作速度が同一であっても、両者の実際の動作速度は厳密には同一でない。
一方、従来の通信装置は、クロック誤差に関して特段の措置を行っていなかった。クロック誤差は微差(1万クロックにつき最大1クロックの差)であるため、伝送路の利用率に余裕がある限り、フレームが滞留する原因にはならないからである。しかしながら、基幹ネットワークのように、伝送路の利用率が極めて高いネットワークでは、クロック誤差が大きな問題となる。すなわち、クロック誤差が原因で、受信側通信装置の動作速度が送信側通信装置の動作速度より遅くなると、受信側通信装置で滞留するフレームが徐々に増加しメモリバッファが溢れてしまう。
そして、このようなクロック誤差によるメモリバッファの溢れは、上記特許文献2に記載の技術では防止することができない。ネットワークの設計時に、通信装置のクロック誤差を知ることは困難だからである。また、通信装置間の接続関係が変化する毎に、フレームが滞留する通信装置や滞留の程度も変化する可能性がある。さらに、フレームの滞留を解消するために特定の通信装置の動作速度を大きく変更すると、他の通信装置で滞留するフレームを増加させてしまう。
本発明はこのような点に鑑みてなされたものであり、クロック誤差が原因でバッファメモリが溢れることを動的に防止し、かつ、クロック誤差の補償による他の通信装置への影響を最小限に抑えることが可能な通信装置および通信方法を提供することを目的とする。
本発明では、上記課題を解決するために、図1に示すような通信装置が提供される。本発明に係る通信装置10は、伝送路4a,4bを介して非同期でフレームを送受信するものである。通信装置10は、フレーム保持手段11、送信手段13および送信制御手段14を有している。フレーム保持手段11は、送信待ちのフレームを保持する。送信手段13は、フレームを送信するタイミングを示す制御信号に基づいて、フレーム保持手段11からフレームを順次取り出し伝送路4bへ出力する。送信制御手段14は、初期動作としてTクロック(Tは2以上の整数)周期で制御信号を発信すると共に、N×Tクロック(Nは2以上の整数)毎に、フレーム保持手段11を参照して待ちフレーム数を取得し、待ちフレーム数がK個(Kは1以上の整数)の場合、少なくとも一部の発信間隔をTクロックより短くすることで、次のN×Tクロックの間にN+K回の制御信号を発信する。
このような通信装置10によれば、送信制御手段14により、初期動作としてTクロック周期の制御信号が発信され、送信手段13により、制御信号に基づいてフレーム保持手段11に保持されたフレームが順次送信される。また、送信制御手段14により、N×Tクロック毎にフレーム保持手段11が参照され、待ちフレーム数が取得される。待ちフレーム数がK個(Kは1以上の整数)の場合、少なくとも一部の発信間隔がTクロックより短く設定されることで、次のN×Tクロックの間にN+K回の制御信号が発信される。そして、送信手段13により、タイミングが変更された制御信号に基づいてフレームが送信される。
また、上記課題を解決するために、伝送路を介して非同期でフレームを送受信する通信装置による通信方法において、フレーム保持手段が保持する送信待ちの前記フレームを順次取り出して前記伝送路へ出力するタイミングを示す制御信号を、初期動作としてTクロック(Tは2以上の整数)周期で発信し、N×Tクロック(Nは2以上の整数)毎に、前記フレーム保持手段の待ちフレーム数を取得し、前記待ちフレーム数がK個(Kは1以上の整数)の場合、少なくとも一部の発信間隔をTクロックより短くすることで、次のN×Tクロックの間にN+K回の前記制御信号を発信する、ことを特徴とする通信方法が提供される。
このような通信方法によれば、初期動作としてTクロック周期の制御信号が発信され、制御信号に基づいてフレーム保持手段に保持されたフレームが順次送信される。また、N×Tクロック毎にフレーム保持手段11が参照され待ちフレーム数が取得される。待ちフレーム数がK個(Kは1以上の整数)の場合、少なくとも一部の発信間隔がTクロックより短く設定されることで、次のN×Tクロックの間にN+K回の制御信号が発信される。その後、タイミングが変更された制御信号に基づいてフレームが送信される。
本発明によれば、所定クロック毎に待ちフレーム数を取得し、待ちフレーム数に相当する分だけフレームの送信速度を上げるように制御信号の発信間隔を調整することとした。これにより、クロック誤差が原因で動作速度が送信側通信装置の動作速度より遅い場合でも、滞留するフレームの増加を自動的に抑止できバッファメモリが溢れることを防止できる。したがって、伝送路の利用率が高いときでもフレームの破棄が防止され、ネットワークの品質をより向上させることができる。また、クロック誤差に相当する分だけフレームの送信速度を上げるため、クロック誤差の補償による他の通信装置への影響を最小限に抑えることができる。
以下、本発明の実施の形態を図面を参照して詳細に説明する。まず、本実施の形態の概要を説明し、その後、本実施の形態の具体的な内容を説明する。
図1は、本実施の形態の概要を示す図である。本実施の形態に係る通信装置10は、通信装置2から通信装置3へ送信されるフレームを中継するものである。通信装置10は、フレーム保持手段11、受信手段12、送信手段13および送信制御手段14を有している。受信手段12は、通信装置2と伝送路4aを介して接続されている。送信手段13は、通信装置3と伝送路4bを介して接続されている。
フレーム保持手段11は、送信待ちのフレームを保持する。フレーム保持手段11は、例えば、FIFO(First In First Out)メモリで構成される。受信手段12は、伝送路4aを介して通信装置2が送信したフレームを受信し、フレーム保持手段11へ順次書き込む。送信手段13は、送信制御手段14が発信する制御信号に基づいて、フレーム保持手段11の先頭から順次フレームを取り出し、通信路4bを介して通信装置3へ送信する。
送信制御手段14は、初期動作としてTクロック(T≧2)周期で制御信号を発信する。また、送信制御手段14は、N×Tクロック(N≧2)毎に、フレーム保持手段11が保持する待ちフレームの数を取得する。待ちフレーム数がK個(K≧1)の場合、送信制御手段14は、次のN×Tクロックの間にN+K回の制御信号を発信するように発信間隔を調整する。すなわち、少なくとも一部の送信間隔をTクロックよりも短くする。
このような通信装置10によれば、受信手段12により、通信装置2が送信したフレームが取得され、フレーム保持手段11に格納される。そして、送信手段13により、送信制御手段14によって発信される制御信号に基づいて、フレーム保持手段11に保持されたフレームが順次通信装置3へ送信される。ここで、送信制御手段14により、初期動作としてTクロック周期の制御信号が発信される。また、送信制御手段14により、N×Tクロック毎にフレーム保持手段11が参照され、待ちフレーム数が取得される。待ちフレーム数がK個の場合、少なくとも一部の発信間隔がTクロックより短く設定されることで、次のN×Tクロックの間にN+K回の制御信号が発信される。
例えば、通信装置2と通信装置10とは、理論上、または仕様上はクロック周波数が同一であるが、クロック誤差があるために、通信装置10のクロック周波数の方が遅いとする。この場合、通信装置10の運用を開始すると、フレーム保持手段11が保持する待ちフレームの数が徐々に増加する。しかし、N×Tクロック経過すると、送信制御手段14により制御信号の発信間隔が調整される。これにより、待ちフレーム数の増加が停止する。
このように、クロック誤差が原因で通信装置10の動作速度が通信装置2の動作速度より遅い場合でも、滞留するフレームの増加を自動的に抑止できバッファメモリが溢れることを防止できる。したがって、伝送路4a,4bの利用率が高いときでもフレームの破棄が防止され、ネットワークの品質をより向上させることができる。また、クロック誤差に相当する分だけフレームの送信速度を上げるため、クロック誤差の補償による通信装置3への影響を最小限に抑えることができる。
なお、制御信号の発信間隔を短縮する具体的な方法として、例えば、N+K回の制御信号の発信間隔が高々1クロック差になるように、均等に発信間隔を短縮する方法がある。この方法によれば、送信先の通信装置への影響をより抑えることができる。また、通信装置の性能上、フレームの送信速度を大きく上げることができない場合でも、本実施の形態を適用できる。
また、制御信号の発信間隔を短縮する他の具体的な方法として、元のTクロック周期の制御信号のタイミングを変更せずに、制御信号間の空きタイミングをK個選択する方法がある。この方法によれば、1クロック単位の厳密な制御が不要であり、かかる機能を備える回路の実現が容易となる。
以下、本発明の実施の形態を、図面を参照して詳細に説明する。
[第1の実施の形態]
図2は、本実施の形態のシステム構成を示す図である。本実施の形態のフレーム転送システムは、端末装置間でデータの送受信を行えるように、複数のレイヤ2スイッチがデータリンク層のフレームを中継するものである。
図2に示すフレーム転送システムは、スイッチ100,200,300および端末装置21,22,23,24で構成される。スイッチ100,200,300は、レイヤ2スイッチである。端末装置21,22,23,24は、ユーザが使用する端末装置である。スイッチ100は、スイッチ200,300と接続されている。スイッチ200は、端末装置21,22と接続されている。スイッチ300は、端末装置23,24と接続されている。
スイッチ100,200,300は、フレームに含まれるMAC(Media Access Control)アドレスに従って、送信元の端末装置から宛先の端末装置まで、フレームを中継する。例えば、端末装置21が端末装置22へフレームを送信する場合、端末装置21、スイッチ200、端末装置22の順にフレームが転送される。また、端末装置21が端末装置23へフレームを送信する場合、端末装置21、スイッチ200、スイッチ100、スイッチ300、端末装置23の順にフレームが転送される。
図3は、スイッチの機能を示すブロック図である。なお、図3にはスイッチ100のブロック構成を示したが、スイッチ200,300も同様のブロック構成で実現できる。スイッチ100は、通信ポート群110、スイッチ部120、出力キュー部130および送信制御部140を有している。
通信ポート群110は、2個の通信ポート110a,110bで構成される。通信ポート110a,110bは、それぞれ1つの物理リンク(ケーブル)を介して、他のスイッチの通信ポートと接続されている。具体的には、通信ポート110aは、スイッチ200の通信ポートと接続されている。通信ポート110bは、スイッチ300の通信ポートと接続されている。通信ポート110a,110bは、最大100Mbpsの速度でフレームの送受信を行うことができる。
スイッチ部120は、通信ポート110a,110bに到来したフレームを取得する。そして、スイッチ部120は、取得したフレームの宛先MACアドレスを参照して、そのフレームを出力すべき通信ポートを決定する。具体的には、スイッチ部120は、端末装置21,22宛てのフレームの出力先を通信ポート110aに決定する。また、端末装置23,24宛てのフレームの出力先を通信ポート110bに決定する。その後、スイッチ部120は、決定した通信ポートを指定して、フレームを出力キュー部130へ送る。
出力キュー部130は、通信ポート群110を構成する通信ポートと1対1に対応する2個の出力キューを有している。具体的には、出力キュー部130は、通信ポート110aに対応する出力キュー130aと、通信ポート110bに対応する出力キュー130bとを有している。出力キュー130a,130bは、FIFOメモリによって実現される。ここで、出力キュー部130は、スイッチ部120から受け取ったフレームを、指定された通信ポートに対応する出力キューに格納する。また、出力キュー部130は、送信制御部140から指示されたタイミングで、出力キュー130a,130bからフレームを読み出し、対応する通信ポート110a,110bへ出力する。
送信制御部140は、出力キュー部130に、フレームを出力するタイミングを指示する。また、送信制御部140は、所定のクロック間隔で、出力キュー130a,130bの待ちフレーム数をそれぞれ取得する。送信制御部140は、待ちフレーム数を取得する毎に、フレームを出力するタイミングを再計算する。なお、送信制御部140は、125MHzのクロック信号に従って動作する。ただし、クロック信号には、最大で100ppmのクロック誤差がある可能性がある。
図4は、第1の実施の形態の送信制御部の機能を示すブロック図である。送信制御部140は、キュー情報取得部141、パラメータ演算部142、分周制御部143、周期調整部144およびフレーム送信管理部145を有している。
キュー情報取得部141は、100万フレーム時間毎に、出力キュー部130から出力キュー130a,130bの待ちフレーム数をそれぞれ取得する。ここで、1フレーム時間とは、1個のフレームを受信するのに要する最短のクロック数である。1フレーム時間は、以下の数式で計算することができる。
1フレーム時間(クロック)=最短フレーム長(ビット)÷物理伝送速度(bps)×クロック周波数(Hz)
例えば、物理伝送速度を100Mbps、クロック周波数を125MHz、最短フレーム長を84バイトとすると、1フレーム時間は840クロックとなる。以下、本実施の形態では、1フレーム時間を840クロックとする。
パラメータ演算部142は、キュー情報取得部141から出力キュー130a,130bの待ちフレーム数を取得し、出力キュー130a,130bそれぞれについて、フレーム出力処理を行うタイミングを再計算する。すなわち、待ちフレーム数をY個とすると、次の100万フレーム時間(=840×100万クロック)に100万+Y回フレーム出力処理を行うようにタイミングを再計算する。
具体的には、パラメータ演算部142は、839分周でフレーム出力処理を行う回数(A回)と840分周でフレーム出力処理を行う回数(B回)とを計算する。ここで、パラメータA,Bは、以下の数式で表される関係を有する。
839×A+840×B=840×1000000
A+B=1000000+Y
したがって、パラメータ演算部142は、パラメータA,Bを以下の数式によって求めることができる。
A=840×Y
B=1000000−839×Y
分周制御部143は、125MHzのクロック信号を839分周または840分周し、分周周期毎に送信周期信号を発信する。具体的には、パラメータ演算部142が計算したパラメータA,Bの値を用いて、839クロック毎の送信周期信号をA回、840クロック毎の送信周期信号をB回発信する。
周期調整部144は、分周制御部143が発信した送信周期信号を受信する毎に内部カウンタを1ずつ加算する。そして、内部カウンタがA+Bに達すると、内部カウンタを0に初期化すると共に、調整周期終了信号をパラメータ演算部142に発信する。
フレーム送信管理部145は、分周制御部143が発信した送信周期信号を受信する毎に、フレーム出力処理を行う。ここで、出力キュー130a,130bに格納されたフレームが全て固定長であれば、送信周期信号を受信する毎に1つのフレームを出力すればよい。しかし、伝送路で送受信されるフレームは、一般に可変長である。そこで、フレーム送信管理部145は、フレーム長を考慮してフレーム出力処理を行う。可変長フレームの出力処理については、後で詳細に説明する。
次に、以上のような構成のシステムにおいて実行される処理の詳細を説明する。
図5は、可変長フレームを出力するタイミングを示す図である。図5のタイミング図は、送信周期信号の周期が840クロックの場合について示したものであるが、送信周期信号の周期が839クロックの場合についても同様である。
フレーム送信管理部145は、トークンと呼ばれる整数値を保持している。トークンは、初期値が84であり、送信周期信号の受信時(フレームを送信する場合を除く)に84ずつ加算される。ここで、送信周期信号の受信時に待ちフレームがある場合、フレーム送信管理部145はトークンの正負を確認する。トークンが非負であれば、待ちフレームを1つ出力し、その後、出力したフレームのフレーム長だけトークンを減算する。トークンが負であれば、フレームを出力しない。
図5の例では、時刻t0,t1,t2,・・・が、送信周期信号の受信タイミングを示している。時刻t1と時刻t2との間に500バイトのフレームが到着し、時刻t2にそのフレームが出力されている。同様に、時刻t8と時刻t9との間に300バイトのフレームが到着し、時刻t9にそのフレームが出力されている。一方、時刻t4と時刻t5との間に100バイトのフレームが到着しているが、時刻t4でトークンが負であるため、時刻t5では出力されず時刻t6に出力されている。
このような方法で、可変長フレームの出力処理を実現することができる。ただし、本実施の形態では、可変長フレームの出力処理の方法を上記の方法に限定する必要はなく、他の方法を採用してもよい。
次に、送信制御部140によるフレームの送信制御について説明する。なお、以下の説明では、通信ポート110aに到来したフレームを通信ポート110bから出力する場合、すなわち、出力キュー130bに格納された待ちフレームを出力する場合について述べる。出力キュー130aに格納された待ちフレームを出力する場合についても、同様の処理で実現できる。
図6は、第1の実施の形態の送信制御処理の流れを示すフローチャートである。以下、図6に示す処理をステップ番号に沿って説明する。
[ステップS11]パラメータ演算部142は、周期調整部144から調整周期終了信号を受信すると、キュー情報取得部141から、出力キュー130bに格納された待ちフレームの数を取得する。
[ステップS12]パラメータ演算部142は、ステップS11で取得した待ちフレーム数を用いて、前述の数式に従って839分周の回数(A回)と840分周の回数(B回)とを計算する。
[ステップS13]パラメータ演算部142は、ステップS12で計算したパラメータA,Bの値を、分周制御部143と周期調整部144とに通知する。
[ステップS14]分周制御部143は、ステップS13でパラメータ演算部142からパラメータA,Bの値を取得した後に発信した送信周期信号の発信回数がA回未満か否か判断する。発信回数がA未満の場合には、処理がステップS15に進められる。発信回数がA以上の場合には、処理がステップS16に進められる。
[ステップS15]分周制御部143は、前回の送信周期信号から839クロック経過後に、送信周期信号を周期調整部144とフレーム送信管理部145へ発信する。
[ステップS16]分周制御部143は、前回の送信周期信号から840クロック経過後に、送信周期信号を周期調整部144とフレーム送信管理部145へ発信する。
[ステップS17]フレーム送信管理部145は、分周制御部143から送信周期信号を受信すると、前述の方法に従って可変長フレームの出力処理を行う。すなわち、フレーム送信管理部145は、トークンが非負の場合には、出力キュー部130へ出力キュー130bに格納されたフレームの送信を指示すると共に、送信したフレームのフレーム長を出力キュー部130から取得する。
[ステップS18]周期調整部144は、分周制御部143から送信周期信号を受信すると、内部カウンタを1加算する。
[ステップS19]周期調整部144は、内部カウンタが満了したか否か、すなわち、内部カウンタがステップS13で取得したパラメータA,Bの合計値(A+Bの値)に達したか否か判断する。内部カウンタが満了した場合には、処理がステップS20に進められる。内部カウンタが満了していない場合には、処理がステップS14に進められる。
[ステップS20]周期調整部144は、内部カウンタを0に初期化すると共に、調整周期終了信号をパラメータ演算部142へ発信する。
このようにして、パラメータ演算部142が、100万フレーム時間毎に待ちフレーム数を取得し、待ちフレーム数に応じて839分周および840分周の回数を計算する。次に、分周制御部143がパラメータ演算部142が計算したパラメータに従って、839分周および840分周の送信周期信号を発信する。そして、フレーム送信管理部145が、送信周期信号を受信する毎に、可変長フレームの出力処理を行う。
図7は、第1の実施の形態の送信周期信号のタイミングを示す図である。上段の(a)が待ちフレーム数に応じた調整を行わない場合のタイミングを示しており、下段の(b)が待ちフレーム数に応じた調整を行った場合のタイミングを示している。ここでは、スイッチ100のクロック周波数がスイッチ200のクロック周波数よりもYppmだけ遅いものとする。
図7に示す通り、調整を行わない場合、840クロック周期で100万回の送信周期信号が発信される。これにより、100フレーム時間で100万回のフレーム出力処理が行われる。一方、調整を行った場合、839クロック周期で840×Y回および840クロック周期で100万−839×Y回の送信周期信号が発信される。これにより、100フレーム時間で100万+Y回のフレーム出力処理が行われる。
図8は、出力キュー内の待ちフレーム数の時系列変化を示す図である。上段の(a)が待ちフレーム数に応じた調整を行わない場合の時系列変化を示しており、下段の(b)が待ちフレーム数に応じた調整を行った場合の時系列変化を示している。ここでは、スイッチ100のクロック周波数がスイッチ200のクロック周波数よりもYppmだけ遅く、出力キュー130bの記憶可能フレーム数が3.5×Y個であるとする。
図8に示す通り、調整を行わない場合、出力キュー130bの待ちフレーム数が100万フレーム時間毎に最大Y個ずつ増加する。したがって、伝送路の利用率が極めて高い状態が続くと、350万フレーム時間経過後に出力キュー130bが溢れ、フレームの破棄が発生する。一方、調整を行った場合、出力キュー130bの待ちフレーム数が100万フレーム時間経過後にY個まで増加するが、その後、フレーム出力処理の間隔が調整されることで待ちフレーム数の増加が停止する。これにより、出力キュー130bが溢れフレームが破棄されることを防止できる。
このように、第1の実施の形態で述べたスイッチによれば、クロック誤差が原因で動作速度が送信側通信装置の動作速度より遅い場合でも、滞留するフレームの増加を自動的に抑止でき出力キューが溢れることを防止できる。したがって、伝送路の利用率が高いときでもフレームの破棄が防止され、ネットワークの品質をより向上させることができる。
特に、一部のフレーム出力処理の間隔を1クロックだけ短くするようにしたので、他のスイッチへの影響を最小限に抑えることができる。また、スイッチの性能上、フレームの送信速度を大きく上げることができない場合でも本実施の形態を適用できる。
なお、スイッチ100でフレームの送信速度を上げることで、受信側であるスイッチ200,300で新たにフレームの滞留が発生する可能性がある。この場合、スイッチ200,300が上記と同様の処理を行うことでフレームの滞留を解消することができる。ここで、送信速度の調整がスイッチ間で連鎖する可能性もあるが、このような連鎖は有限回数で停止すると考えられる。なぜならば、クロック誤差は正負のあるランダムな値であり、多数のスイッチのクロック誤差を合計すると、互いに打ち消し合って0になるからである。
[第2の実施の形態]
次に、本発明の第2の実施の形態を、図面を参照して詳細に説明する。前述の第1の実施の形態との相違点を中心に説明し、同様の事項については説明を省略する。第2の実施の形態は、第1の実施の形態における送信周期信号の調整方法を、他の方法に置き換えたものである。
第2の実施の形態のシステム構成は、図2に示した第1の実施の形態のものと同様である。第2の実施の形態のスイッチのブロック構成は、図3に示した第1の実施の形態のものと同様である。ただし、第2の実施の形態では、送信制御部140の内部構成および機能が、以下に述べる送信制御部140aに置き換えられる。
図9は、第2の実施の形態の送信制御部の機能を示すブロック図である。送信制御部140aは、キュー情報取得部141a、パラメータ演算部142a、分周カウント部143a、発出制御部144aおよびフレーム送信管理部145aを有している。
キュー情報取得部141aは、100万フレーム時間毎に、出力キュー部130から出力キュー130a,130bの待ちフレーム数をそれぞれ取得する。1フレーム時間は、第1の実施の形態と同様に840クロックとする。
パラメータ演算部142aは、キュー情報取得部141aから出力キュー130a,130bの待ちフレーム数を取得し、出力キュー130a,130bそれぞれについて、フレーム出力処理を行うタイミングを再計算する。具体的には、一部のフレーム出力処理を1フレーム時間の半分である420分周で行い、残りのフレーム出力処理を1フレーム時間である840分周で行うようにする。420分周でフレーム出力処理を行う回数(A回)は、以下の数式によって求めることができる。
A=2×Y
分周カウント部143aは、125MHzのクロック信号を420分周し、420分周信号を発出制御部144aへ発信する。
発出制御部144aは、分周カウント部143aが発信した420分周信号を受信する毎に、内部カウンタを1ずつ加算する。そして、内部カウンタがAに達するまでは、420分周信号に合わせて送信周期信号を発信する。内部カウンタがAを超えると、420分周信号の奇数周期に合わせて送信周期信号を発信する。
フレーム送信管理部145aは、発出制御部144aが発信した送信周期信号を受信する毎に、フレーム出力処理を行う。フレーム出力処理の詳細は、第1の実施の形態で説明したものと同様である。
次に、以上のような構成のシステムにおいて実行される処理の詳細を説明する。なお、第1の実施の形態と同様、通信ポート110aに到来したフレームを通信ポート110bから出力する場合、すなわち、出力キュー130bに格納された待ちフレームを出力する場合について述べる。出力キュー130aに格納された待ちフレームを出力する場合についても、同様の処理で実現できる。
図10は、第2の実施の形態の送信制御処理の手順を示すフローチャートである。以下、図10に示す処理をステップ番号に沿って説明する。
[ステップS21]パラメータ演算部142aは、発出制御部144aから調整周期終了信号を受信すると、キュー情報取得部141aから、出力キュー130bに格納された待ちフレームの数を取得する。
[ステップS22]パラメータ演算部142aは、ステップS21で取得した待ちフレーム数を用いて、前述の数式に従って420分周の回数(A回)を計算する。
[ステップS23]パラメータ演算部142aは、ステップS22で計算したパラメータAの値を発出制御部144aに通知する。
[ステップS24]発出制御部144aは、分周カウント部143aから420分周信号を受信するのを待ち、その後、内部カウンタを1加算する。
[ステップS25]発出制御部144aは、内部カウンタが奇数か否か判断する。内部カウンタが奇数の場合には、処理がステップS27に進められる。内部カウンタが偶数の場合には、処理がステップS26に進められる。
[ステップS26]発出制御部144aは、内部カウンタがステップS23で取得したパラメータAの値以下か否か判断する。内部カウンタがAの値以下の場合には、処理がステップS27に進められる。内部カウンタがAの値より大きい場合には、処理がステップS29に進められる。
[ステップS27]発出制御部144aは、送信周期信号をフレーム送信管理部145aへ発信する。
[ステップS28]フレーム送信管理部145aは、発出制御部144aから送信周期信号を受信すると、前述の方法に従って可変長フレームの出力処理を行う。すなわち、フレーム送信管理部145aは、トークンが非負の場合、出力キュー部130へ出力キュー130bに格納されたフレームの送信を指示すると共に、送信したフレームのフレーム長を出力キュー部130から取得する。
[ステップS29]発出制御部144aは、内部カウンタが満了したか否か、すなわち、内部カウンタが100万に達したか否か判断する。内部カウンタが満了した場合、処理がステップS30に進められる。内部カウンタが満了していない場合、処理がステップS24に進められる。
[ステップS30]発出制御部144aは、内部カウンタを0に初期化すると共に、調整周期終了信号をパラメータ演算部142aへ発信する。
このようにして、パラメータ演算部142aが、100万フレーム時間毎に待ちフレーム数を取得し、待ちフレーム数に応じて420分周の回数を計算する。次に、発出制御部144aが、パラメータ演算部142aが計算したパラメータに従って、420分周および840分周の送信周期信号を発信する。そして、フレーム送信管理部145aが、送信周期信号を受信する毎に、可変長フレームの出力処理を行う。
図11は、第2の実施の形態の送信周期信号のタイミングを示す図である。上段の(a)が待ちフレーム数に応じた調整を行わない場合のタイミングを示しており、下段の(b)が待ちフレーム数に応じた調整を行った場合のタイミングを示している。ここでは、スイッチ100のクロック周波数がスイッチ200のクロック周波数よりもYppmだけ遅いものとする。
図11に示す通り、調整を行わない場合、420クロック周期の奇数番目、すなわち、840クロック周期で100万回の送信周期信号が発信される。これにより、100フレーム時間で100万回のフレーム出力処理が行われる。一方、調整を行った場合、420クロック周期で2×Y回および840クロック周期で2×100万−2×Y回の送信周期信号が発信される。これにより、100フレーム時間で100万+Y回のフレーム出力処理が行われる。
出力キュー130bの待ちフレーム数の時系列変化は、図8に示した第1の実施の形態のものと同様である。すなわち、調整を行うことで、出力キュー130bの待ちフレーム数の増加が100万フレーム時間経過後に停止し、出力キュー130bが溢れフレームが破棄されることを防止できる。
このように、第2の実施の形態で述べたスイッチによれば、クロック誤差が原因で動作速度が送信側通信装置の動作速度より遅い場合でも、滞留するフレームの増加を自動的に抑止でき出力キューが溢れることを防止できる。したがって、伝送路の利用率が高いときでもフレームの破棄が防止され、ネットワークの品質をより向上させることができる。
特に、元のフレーム出力処理のタイミングを変更せず、空きタイミングに送信周期信号を発信するようにしたので、1クロック単位の厳密な制御が不要であり、このような機能を備える回路の実現が容易となる。
なお、前述の第1の実施の形態および第2の実施の形態では、フレームを送受信する通信装置としてレイヤ2スイッチを用いたが、フレームを送受信する機能を有する他の種類の通信装置を用いてもよい。例えば、データリンク層より上位の階層の処理もできるルーター等を用いてもよい。この場合、フレームを受信してから出力キューに格納するまでの間に、データリンク層より上位の階層に関する処理が追加される。
以上、本発明の通信装置および通信方法を図示の実施の形態に基づいて説明したが、本発明はこれに限定されるものではなく、各部の構成は同様の機能を有する任意の構成のものに置換することができる。また、本発明に他の任意の構成物や工程が付加されていてもよい。また、本発明は、前述した実施の形態のうちの任意の2以上の構成(特徴)を組み合わせたものであってもよい。
本実施の形態の概要を示す図である。 本実施の形態のシステム構成を示す図である。 スイッチの機能を示すブロック図である。 第1の実施の形態の送信制御部の機能を示すブロック図である。 可変長フレームを出力するタイミングを示す図である。 第1の実施の形態の送信制御処理の流れを示すフローチャートである。 第1の実施の形態の送信周期信号のタイミングを示す図である。 出力キュー内の待ちフレーム数の時系列変化を示す図である。 第2の実施の形態の送信制御部の機能を示すブロック図である。 第2の実施の形態の送信制御処理の流れを示すフローチャートである。 第2の実施の形態の送信周期信号のタイミングを示す図である。
符号の説明
2,3,10 通信装置
4a,4b 伝送路
11 フレーム保持手段
12 受信手段
13 送信手段
14 送信制御手段

Claims (5)

  1. 伝送路を介して非同期でフレームを送受信する通信装置において、
    送信待ちの前記フレームを保持するフレーム保持手段と、
    前記フレームを送信するタイミングを示す制御信号に基づいて、前記フレーム保持手段から前記フレームを順次取り出し前記伝送路へ出力する送信手段と、
    初期動作としてTクロック(Tは2以上の整数)周期で前記制御信号を発信すると共に、N×Tクロック(Nは2以上の整数)毎に、前記フレーム保持手段の待ちフレーム数を取得し、前記待ちフレーム数がK個(Kは1以上の整数)の場合、少なくとも一部の発信間隔をTクロックより短くすることで、次のN×Tクロックの間にN+K回の前記制御信号を発信する送信制御手段と、
    を有することを特徴とする通信装置。
  2. 前記送信制御手段は、前記待ちフレーム数がK個の場合、N+K回の前記制御信号の発信間隔が高々1クロック差になるように発信間隔を制御する、
    ことを特徴とする請求項1記載の通信装置。
  3. 前記送信制御手段は、前記待ちフレーム数がK個の場合、Tクロック周期による前記制御信号に加えて、K個の空きタイミングを選択して前記制御信号を発信する、
    ことを特徴とする請求項1記載の通信装置。
  4. 前記送信制御手段は、T÷2クロック周期の分周信号を発信しており、初期動作として前記分周信号を2回発信する毎に前記制御信号を発信すると共に、前記待ちフレーム数がK個の場合、前記分周信号のタイミングの中からK個の空きタイミングを選択する、
    ことを特徴とする請求項3記載の通信装置。
  5. 伝送路を介して非同期でフレームを送受信する通信装置による通信方法において、
    フレーム保持手段が保持する送信待ちの前記フレームを順次取り出して前記伝送路へ出力するタイミングを示す制御信号を、初期動作としてTクロック(Tは2以上の整数)周期で発信し、
    N×Tクロック(Nは2以上の整数)毎に、前記フレーム保持手段の待ちフレーム数を取得し、
    前記待ちフレーム数がK個(Kは1以上の整数)の場合、少なくとも一部の発信間隔をTクロックより短くすることで、次のN×Tクロックの間にN+K回の前記制御信号を発信する、
    ことを特徴とする通信方法。
JP2006267550A 2006-09-29 2006-09-29 通信装置および通信方法 Expired - Fee Related JP4842754B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006267550A JP4842754B2 (ja) 2006-09-29 2006-09-29 通信装置および通信方法
US11/892,144 US7710992B2 (en) 2006-09-29 2007-08-20 Communication device and communication method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006267550A JP4842754B2 (ja) 2006-09-29 2006-09-29 通信装置および通信方法

Publications (2)

Publication Number Publication Date
JP2008092018A true JP2008092018A (ja) 2008-04-17
JP4842754B2 JP4842754B2 (ja) 2011-12-21

Family

ID=39261153

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006267550A Expired - Fee Related JP4842754B2 (ja) 2006-09-29 2006-09-29 通信装置および通信方法

Country Status (2)

Country Link
US (1) US7710992B2 (ja)
JP (1) JP4842754B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013258770A (ja) * 2009-06-08 2013-12-26 Nec Corp 携帯端末装置、携帯端末装置の制御方法、通信システム、通信装置、通信装置の制御方法
WO2016189737A1 (ja) * 2015-05-28 2016-12-01 三菱電機株式会社 空気調和システム

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8593570B2 (en) 2008-11-07 2013-11-26 Looxcie, Inc. Video recording camera headset
US8526779B2 (en) 2008-11-07 2013-09-03 Looxcie, Inc. Creating and editing video recorded by a hands-free video recording device
JP5218979B2 (ja) * 2008-12-15 2013-06-26 日本電気株式会社 データ転送装置
JP5638832B2 (ja) * 2010-04-16 2014-12-10 京セラ株式会社 通信端末、通信システム、および通信端末の動作方法
US20120304232A1 (en) * 2011-05-27 2012-11-29 Saroop Mathur Method and apparatus for adjusting encoding of audiovisual stream
US8737803B2 (en) 2011-05-27 2014-05-27 Looxcie, Inc. Method and apparatus for storing and streaming audiovisual content

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61189048A (ja) * 1985-02-15 1986-08-22 Fujitsu Ltd 通信制御過負荷調整方式
JPH02296435A (ja) * 1989-05-11 1990-12-07 Nec Corp データフロー制御方式
JP2003249948A (ja) * 2002-02-22 2003-09-05 Matsushita Electric Ind Co Ltd 転送制御装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6067408A (en) * 1993-05-27 2000-05-23 Advanced Micro Devices, Inc. Full duplex buffer management and apparatus
US6539031B1 (en) * 1997-10-14 2003-03-25 Innowave Eci Wireless Systems Ltd. Adaptive countermeasures for wireless communication of fast ethernet data packages
US7292583B2 (en) * 2002-01-04 2007-11-06 Scientific-Atlanta, Inc. Receiving streams over asynchronous networks
US7091967B2 (en) * 2003-09-01 2006-08-15 Realtek Semiconductor Corp. Apparatus and method for image frame synchronization

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61189048A (ja) * 1985-02-15 1986-08-22 Fujitsu Ltd 通信制御過負荷調整方式
JPH02296435A (ja) * 1989-05-11 1990-12-07 Nec Corp データフロー制御方式
JP2003249948A (ja) * 2002-02-22 2003-09-05 Matsushita Electric Ind Co Ltd 転送制御装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013258770A (ja) * 2009-06-08 2013-12-26 Nec Corp 携帯端末装置、携帯端末装置の制御方法、通信システム、通信装置、通信装置の制御方法
WO2016189737A1 (ja) * 2015-05-28 2016-12-01 三菱電機株式会社 空気調和システム
WO2016189974A1 (ja) * 2015-05-28 2016-12-01 三菱電機株式会社 空気調和システム
JPWO2016189974A1 (ja) * 2015-05-28 2017-08-17 三菱電機株式会社 空気調和システム

Also Published As

Publication number Publication date
US7710992B2 (en) 2010-05-04
JP4842754B2 (ja) 2011-12-21
US20080080556A1 (en) 2008-04-03

Similar Documents

Publication Publication Date Title
JP4842754B2 (ja) 通信装置および通信方法
JP4616535B2 (ja) パケットスケジューリングを用いるネットワーク交換方法
US7161907B2 (en) System and method for dynamic rate flow control
US8576850B2 (en) Band control apparatus, band control method, and storage medium
EP3032785B1 (en) Transport method in a communication network
JP4629593B2 (ja) パケット送信装置及びパケット伝送システム
JP4652314B2 (ja) イーサoamスイッチ装置
EP2323317A1 (en) Band control method and band control device for node device
US6912224B1 (en) Adaptive playout buffer and method for improved data communication
JP4577220B2 (ja) トークンバケットによるトラヒック制御装置、方法及びプログラム
JP2002077245A (ja) Ipゲートウェイ装置
EP1882224B1 (en) A system and method for transmitting data
EP1340344B1 (en) Latency management for a network
WO2011026508A1 (en) Method for distributing data traffic over radio links
JP3855822B2 (ja) Ip/wdm網におけるノード装置を有するシステム
US20230421505A1 (en) Data flow control in a network
WO2023174081A1 (zh) 一种队列调度的方法及装置
JP5617625B2 (ja) データ中継装置および通信優先制御方法
EP3389202B1 (en) Multi-frequency transmitter and associated method
JP2006246207A (ja) パケットスケジューリング装置およびパケットスケジューリング方法
JP3816834B2 (ja) ネットワーク帯域制御装置
JP2001160830A (ja) ゲートウェイおよびデータ転送方法
JP3324987B2 (ja) パケット転送方法
JP2013110665A (ja) バッファ装置、通信装置およびフレーム送信方法
JP2013062595A (ja) 伝送装置および伝送方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090611

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110215

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110308

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110426

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111006

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141014

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees