(57)【要約】【課題】  送信端末から送信されるデータを受信し、受信端末と接続された受信側通信装置に送信する通信装置において、受信側通信装置のバッファを有効に使用する。【解決手段】  データ量計測手段１ｂは、データが通信装置１と受信側通信装置２との間を往復するのに要する時間あたりの、受信側通信装置２に送信されるデータ量を計測する。カウンタ手段１ｃは、受信側通信装置２から、データを一時的に保持するバッファ２ａが上限値に達した旨の通知を受けて、受信側通信装置２に送信されるデータを、データ量計測手段１ｂのデータ量の値から、バッファ２ａが上限値からさらにデータを保持できる領域の値までカウントする。そして、カウンタ手段１ｃは、送信端末３に対しデータの送信停止要求を行う。【選択図】  図１
2006352557.tif 000002
【特許請求の範囲】
【請求項１】
送信端末から送信されるデータを受信し、受信端末と接続された受信側通信装置に送信する通信装置において、
前記データが当該通信装置と前記受信側通信装置との間を往復するのに要する時間あたりの、前記受信側通信装置に送信されるデータ量を計測するデータ量計測手段と、
前記受信側通信装置から、前記データを一時的に保持するバッファが上限値に達した旨の通知を受けて、前記受信側通信装置に送信される前記データを、前記データ量の値から、前記バッファの前記上限値からさらに前記データを保持できる領域の値までカウントし、前記送信端末に対し前記データの送信停止要求を行うカウンタ手段と、
を有することを特徴とする通信装置。
【請求項２】
前記カウンタ手段は、前記受信側通信装置からの前記上限値に達した旨の通知とともに、前記領域の値を受信することを特徴とする請求項１記載の通信装置。
【請求項３】
前記バッファが前記上限値に達した旨の通知は、ポーズフレームを用いて行われることを特徴とする請求項１記載の通信装置。
【請求項４】
前記データ量計測手段は、フレーム単位で前記データ量を計測し、前記カウンタ手段は、フレーム単位で前記受信側通信装置に送信される前記データをカウントすることを特徴とする請求項１記載の通信装置。
【請求項５】
前記データ量計測手段は、バイト単位で前記データ量を計測し、前記カウンタ手段は、バイト単位で前記受信側通信装置に送信される前記データをカウントすることを特徴とする請求項１記載の通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は通信装置に関し、特に送信端末から送信されるデータを受信し、受信端末と接続された受信側通信装置に送信する通信装置に関する。
【背景技術】
【０００２】
イーサネット（登録商標）に準拠したフレームをカプセリング化（例えば、ＰＰＰ（Point-to-Point Protocol），ＧＦＰ（Generic Framing Procedure）に変換）し、ＳＤＨ（Synchronous Digital Hierarchy）やＳＯＮＥＴ（Synchronous Optical Network）を用いて遠隔地に伝送するネットワークシステムがある。
【０００３】
図１０は、ネットワークシステムを示す図である。図に示すように送信端末１０１は、送信側中継機１０２と接続されている。受信端末１０４は、受信側中継機１０３と接続されている。送信側中継機１０２と受信側中継機１０３は接続され、送信端末１０１と受信端末１０４のフレームの授受を中継している。送信側中継機１０２は、送信端末１０１から送信されてくるフレームを一時的に保持するバッファ１０２ａを有し、受信側中継機１０３は、送信側中継機１０２から送信されてくるフレームを一時的に保持するバッファ１０３ａを有している。
【０００４】
図に示すネットワークシステムは、フレームの転送帯域およびバッファの状況によって、例えば、以下の４つの例に示すような制御を行っている。まず、その１について説明する。送信側中継機１０２と受信側中継機１０３の間の転送帯域を、例えば、１Ｇｂｐｓであるとする。送信端末１０１と送信側中継機１０２の間の転送帯域および受信端末１０４と受信側中継機１０３の間の転送帯域を、例えば、１００Ｍｂｐｓであるとする。この場合、送信側中継機１０２のバッファ１０２ａは、送信端末１０１がフレームを常時１００％送信（連続的に送信）しても、１００Ｍｂｐｓから１Ｇｂｐｓのフレーム転送のため、オーバーフローすることはない。しかし、受信側中継機１０３のバッファ１０３ａにおいては、受信端末１０４がフレームを受信できないためにポーズフレームＰを送信すると、フレームがたまっていく。そのため、バッファ１０３ａは、保持できなくなったフレームを廃棄する。
【０００５】
その２について説明する。受信側中継機１０３のバッファ１０３ａは、フレームがオーバーフローしそうになると、ポーズフレームＰを送信端末１０１に送信する。送信端末１０１は、受信側中継機１０３からのポーズフレームＰによって、フレームの出力を停止する。これによって、バッファ１０３ａのオーバーフローを防止することができる。
【０００６】
その３について説明する。送信側中継機１０２と受信側中継機１０３の間の転送帯域を、例えば、５０Ｍｂｐｓであるとする。送信端末１０１と送信側中継機１０２の間の転送帯域および受信端末１０４と受信側中継機１０３の間の転送帯域を、例えば、１００Ｍｂｐｓであるとする。この場合、送信端末１０１が常時１００％のフレームを送信すると、送信側中継機１０２のバッファ１０２ａはオーバーフローする。そのため、バッファ１０２ａは、保持できなくなったフレームを廃棄する。
【０００７】
その４について説明する。送信側中継機１０２のバッファ１０２ａは、フレームがオーバーフローしそうになると、ポーズフレームＰを送信端末１０１に送信する。送信端末１０１は、送信側中継機１０２からのポーズフレームＰによって、フレームの出力を停止する。これによって、バッファ１０２ａのオーバーフローを防止することができる。
【０００８】
ところで、その２に示した制御では、受信側中継機１０３からのポーズフレームＰが、送信端末１０１に到達するまでの間、送信端末１０１は、いくつかのフレームを送信している場合がある。受信側中継機１０３のバッファ１０３ａは、この送信されるフレームも一時的に保持できるように、容量を確保する必要がある。
【０００９】
図１１は、フレームが１００％流れている場合の受信側中継機のバッファ状況を説明する図である。図に示すバッファ１０３ａａ〜１０３ａｃは、受信側中継機１０３のバッファ１０３ａの、フレームの保持状況を示している。また、図中上側の１〜２０のフレームは、送信側中継機１０２から出力されるフレーム、下側の１〜２０のフレームは、受信側中継機１０３が受信するフレームを示している。
【００１０】
バッファ１０３ａａに示すように、保持するフレームが上限値１１１に達すると（線Ｌ１０１は、フレームが上限値１１１に達したタイミングを示す）、受信側中継機１０３は、ポーズフレームＰを送信端末１０１に出力する。線Ｌ１０１のタイミング経過後、送信側中継機１０２から伝送路にすでに送出されていた上側の１〜１０のフレームは、下側の１〜１０のフレームに示すように受信側中継機１０３に順次到達する。これによって、バッファ１０３ａｂの領域１１２に、１〜１０のフレームが保持されることになる。
【００１１】
一方、送信端末１０１は、受信側中継機１０３からポーズフレームＰが出力されても、このポーズフレームＰが到達するまでは（線Ｌ１０２は、ポーズフレームＰが送信端末１０１に到達するタイミングを示す）、上側の１１〜２０のフレームを送信し続ける。従って、受信側中継機１０３には、下側に示すフレーム１１〜２０が順次到着し、バッファ１０３ａｃの領域１１３に保持される。
【００１２】
このように、フレームが上限値１１１に達した後でも、フレームが送信され続けるので、領域１１２，１１３に示すようにバッファ１０３ａの容量を確保する必要がある。なお、確保する容量は、送信端末１０１からフレームが１００％出力されてもオーバーフローしないように、決める必要がある。
【００１３】
次に、フレームが５０％流れる場合（フレームが連続的に流れる場合に対し、半分の量で流れる場合）のバッファ状況について説明する。
図１２は、フレームが５０％流れている場合の受信側中継機のバッファ状況を説明する図である。図１２において図１１と同じものには同じ符号を付し、その説明を省略する。
【００１４】
図に示すようにフレームは５０％で送信されているとする。この場合、フレームが保持されるバッファ１０３ａｂの領域１２１は、図１１のバッファ１０３ａｂの領域１１２より小さくなる。また、フレームが保持されるバッファ１０３ａｃの領域１２２は、図１１のバッファ１０３ａｃの領域１１３より小さくなる。従って、バッファ１０３ａｃには、空き領域１２３が生じる。なお、領域１２１，１２２の大きさは、領域１１２，１１３の半分となる。
【００１５】
なお、フロー制御に関し、受信装置から送信装置に対し、バッファの空き容量を通知するフロー制御回路がある（例えば、特許文献１参照）。また、パケット記憶量が停止閾値より多くなったとき、上流の通信装置にフローの停止を通知し、実際にフローが停止するまでの遅延時間を停止遅延時間として考慮する通信方法がある（例えば、特許文献２参照）。
【特許文献１】特開２００１−２０３７０５号公報
【特許文献２】特開２０００−２４４５２１号公報
【発明の開示】
【発明が解決しようとする課題】
【００１６】
このように、受信側中継機のバッファの容量は、ポーズフレームの送信後、連続的に送信されてくるフレームを考慮して、確保する必要がある。
しかし、連続的にフレームが送信されない場合、図１２で説明したようにバッファに空き領域が発生し、バッファが有効に使用されない場合があるという問題点があった。
【００１７】
本発明はこのような点に鑑みてなされたものであり、連続的にフレームが送信されない場合でも、バッファを有効に使用することができる通信装置を提供することを目的とする。
【課題を解決するための手段】
【００１８】
本発明では上記問題を解決するために、図１に示すような送信端末３から送信されるデータを受信し、受信端末４と接続された受信側通信装置２に送信する通信装置１において、データが通信装置１と受信側通信装置２との間を往復するのに要する時間あたりの、受信側通信装置２に送信されるデータ量を計測するデータ量計測手段１ｂと、受信側通信装置２から、データを一時的に保持するバッファ２ａが上限値に達した旨の通知を受けて、受信側通信装置２に送信されるデータを、データ量の値から、バッファ２ａの上限値からさらにデータを保持できる領域の値までカウントし、送信端末３に対しデータの送信停止要求を行うカウンタ手段１ｃと、を有することを特徴とする通信装置１が提供される。
【００１９】
このような通信装置１によれば、受信側通信装置２のバッファ２ａが上限値に達すると、カウンタ手段１ｃが、バッファ２ａの上限値からさらにデータを保持できる領域に保持されるデータをカウントしていく。そして、送信端末３に対しデータの送信停止要求を行う。これにより、データが連続して送信されない場合でも、受信側通信装置２のバッファ２ａの空き容量を低減できる。
【発明の効果】
【００２０】
本発明の通信装置では、受信側通信装置のバッファが上限値に達すると、カウンタ手段が、バッファの上限値からさらにデータを保持できる領域に保持されるデータをカウントし、送信端末に対しデータの送信停止要求を行うようにした。これにより、データが連続して送信されない場合でも、バッファを有効に使用することが可能となる。
【発明を実施するための最良の形態】
【００２１】
以下、本発明の原理を図面を参照して詳細に説明する。
図１は、通信装置の概要を示した図である。図に示すように通信装置１は、送信端末３と接続されている。受信側通信装置２は、受信端末４と接続されている。通信装置１は、受信側通信装置２と接続されており、送信端末３から送信されるデータを受信して、受信側通信装置２に送信する。通信装置１は、バッファ１ａ、データ量計測手段１ｂ、およびカウンタ手段１ｃを有し、受信側通信装置２は、バッファ２ａおよびバッファ監視手段２ｂを有している。
【００２２】
受信側通信装置２のバッファ２ａは、通信装置１から送信されてくるデータを一時的に保持し、受信端末４に送信する。
バッファ監視手段２ｂは、バッファ２ａのデータの保持状況を監視している。バッファ２ａは上限値を有しており、バッファ監視手段２ｂは、バッファ２ａのデータ保持が上限値に達すると、通信装置１に対し、その旨を通知する。なお、バッファ２ａは、上限値からさらにデータを保持できる領域を有している。例えば、上限値から２０フレームを保持できる領域を有している。
【００２３】
通信装置１のバッファ１ａは、送信端末３から送信されてくるデータを一時的に保持し、受信側通信装置２に送信する。
データ量計測手段１ｂは、データが通信装置１と受信側通信装置２との間を往復するのに要する時間あたりの、バッファ１ａから受信側通信装置２に送信されるデータ量を計測する。
【００２４】
カウンタ手段１ｃは、受信側通信装置２のバッファ監視手段２ｂから、バッファ２ａが上限値に達した旨の通知を受けると、受信側通信装置２に送信されるデータを、データ量計測手段１ｂのデータ量の値から、バッファ２ａのデータをさらに保持できる領域の値（例えば、前述した例では２０となる）までカウントし、送信端末３に対しデータの送信停止要求を行う。送信端末３は、通信装置１からの送信停止要求を受けて、データの送信を停止する。
【００２５】
ところで、受信側通信装置２のバッファ監視手段２ｂが、バッファ２ａが上限値に達した旨の通知を行ったとき、通信装置１と受信側通信装置２との間には、データが通信装置１と受信側通信装置２との間（片道）を要する時間前に送出された送信データが存在している。さらに、上限値に達した旨の通知がカウンタ手段１ｃに到達するまでの間（データの片道に要する時間の間）にも、通信装置１から受信側通信装置２にデータが送信される。これらの送信されたデータ量は、データ量計測手段１ｂによって計測される、データが通信装置１と受信側通信装置２との間を往復するのに要する時間あたりの、バッファ１ａから受信側通信装置２に送信されるデータ量に等しい。
【００２６】
そこで、カウンタ手段１ｃによって、データが通信装置１と受信側通信装置２との間を往復するのに要する時間あたりの、バッファ１ａから受信側通信装置２に送信されるデータ量から、バッファ２ａの上限値からさらにデータを保持できる領域の値まで、受信側通信装置２に送信されるデータをカウントすることにより、バッファ２ａを有効に使用することができる。
【００２７】
このように、受信側通信装置２のバッファ２ａが上限値に達すると、カウンタ手段１ｃが、バッファ２ａの上限値からさらにデータを保持できる領域に保持されるデータをカウントし、送信端末３に対しデータの送信停止要求を行うようにした。これにより、受信側通信装置２のバッファ２ａの無駄な空き容量を低減し、バッファを有効に使用することが可能となる。
【００２８】
次に、本発明による通信装置の実施の形態を、送信側中継機に適用した場合を例に図面を参照して詳細に説明する。
図２は、第１の実施の形態に係るネットワークシステムを示す図である。図に示すように送信端末３０は、送信側中継機１０と接続されている。受信端末４０は、受信側中継機２０と接続されている。送信側中継機１０と受信側中継機２０は接続され、送信端末３０と受信端末４０のフレームの送受信を中継している。各装置は、例えば、イーサネットに準拠したフレームをカプセリング化（例えば、ＰＰＰ，ＧＦＰに変換）し、ＳＤＨまたはＳＯＮＥＴにおいて遠隔地に伝送する。なお、送信側中継機１０と受信側中継機２０の間には、複数の中継機が存在していてもよい。
【００２９】
まず、受信側中継機２０について説明し、その後、送信側中継機１０について説明する。受信側中継機２０は、バッファ２１およびバッファ監視部２２を有している。バッファ２１は、送信側中継機１０から送信されてくるフレームを一時的に保持する。そして、保持された順番にフレームを取り出して、受信端末４０に送信する。また、バッファ２１は、受信端末４０からポーズフレームＰが送信されると、フレームの受信端末４０への送信を中止する。
【００３０】
バッファ監視部２２は、バッファ２１のフレームの保持状況に応じて、上下限フレームＵを送信側中継機１０に送信する。バッファ２１は、上限値を有しており、バッファ監視部２２は、バッファ２１のフレーム保持が上限値に達すると、フレームの保持が上限値に達した旨を示す上下限フレームＵを送信する。また、バッファ２１は、上限値以下の値の下限値を有しており、バッファ監視部２２は、フレームの保持が上限値に達した後、下限値を下回ると、フレームの保持が下限値を下回った旨を示す上下限フレームＵを送信する。
【００３１】
なお、バッファ２１は、上限値からさらにフレームを保持できるよう、所定の容量（以下、予備容量と呼ぶ）を有している。バッファ監視部２２は、バッファ２１のフレームがオーバーフローしそうになると（フレームが上限値に達すると）、その旨の上下限フレームＵを送信側中継機１０に送信するが、上下限フレームＵが送信側中継機１０に到達して、送信側中継機１０がフレームの送信を停止するまでの間、送信側中継機１０は、いくつかのフレームを送信している場合がある。バッファ２１は、このように送信されるフレームも一時的に保持できるように、予備容量を有している。
【００３２】
上下限フレームＵについて詳細に説明する。
図３は、上下限フレームのデータフォーマットを示す図である。図に示すように上下限フレームＵは、ＤＡ、ＳＡ、ｔｙｐｅ／Ｌｅｎｇｔｈ、Ｄａｔａ、およびＦＣＳの領域を有している。Ｄａｔａ領域は、さらに、ＦＬＡＧ、予備容量の値／下限の値、およびＲｅｓｅｒｖｅｄの領域を有している。
【００３３】
図４は、図３の上下限フレームのデータフォーマットを説明する図である。図３に示した上下限フレームＵのＤＡ（Ｄｅｓｔｉｎａｔｉｏｎ  Ａｄｄｒｅｓｓ）領域には、図４に示すように上下限フレームＵの送信先（送信側中継機１０）のＭＡＣアドレスが格納される。ＳＡ（Ｓｏｕｒｃｅ  Ａｄｄｒｅｓｓ）領域には、上下限フレームＵの送信元（受信側中継機２０）のＭＡＣアドレスが格納される。Ｔｙｐｅ／Ｌｅｎｇｔｈ領域には、Ｄａｔａ領域のプロトコルの指定およびデータ長が格納される。
【００３４】
Ｄａｔａ領域のＦＬＡＧ領域には、上下限フレームＵが上限値に達したために送信されたフレームであるのか、下限値に達したために送信されたフレームであるのかを示す値が格納される。ＦＬＡＧ領域の値が００で上限値に達したために送信されたフレーム、０１で下限値に達したために送信されたフレームであることを示す。
【００３５】
Ｄａｔａ領域の予備容量の値／下限の値領域には、上下限フレームＵを送信する中継機（受信側中継機２０）のバッファの、予備容量の値および下限値の一方が格納される。ＦＬＡＧ領域の値が００のとき、予備容量の値／下限の値領域には、予備容量の値が格納される。ＦＬＡＧ領域の値が０１のとき、予備容量の値／下限の値領域には、下限値が格納される。
【００３６】
Ｄａｔａ領域のＲｅｓｅｒｖｅｄ領域は、予約領域である。ＦＣＳ領域は、フレームチェックシーケンスを示し、エラーチェックのためのコードが格納される。
図２に戻り、送信側中継機１０について説明する。送信側中継機１０は、バッファ１１、データ量監視部１２、カウンタ１３、およびポーズ制御部１４を有している。送信側中継機１０のバッファ１１は、送信端末３０から送信されてくるフレームを一時的に保持する。そして、保持された順番にフレームを取り出して、受信側中継機２０に送信する。
【００３７】
データ量監視部１２は、フレームが送信側中継機１０と受信側中継機２０との間を往復するのに要する時間（往復時間）あたりの、バッファ１１から受信側中継機２０に送信されるフレーム量をカウントする。データ量監視部１２は、カウントしたフレームの送出量をカウンタ１３に通知する。なお、フレームが送信側中継機１０と受信側中継機２０との間を往復するのに要する時間は、送信側中継機１０と受信側中継機２０の間の距離およびフレームの伝達する速さから予め知ることができる。
【００３８】
カウンタ１３は、データ量監視部１２からフレームの送出量の通知を受け、また、受信側中継機２０から上下限フレームＵを受信する。カウンタ１３は、受信側中継機２０から上限値に達した旨の上下限フレームＵを受信すると、カウントすることができる上限値（カウント上限値）に、上下限フレームＵに含まれている予備容量の値をセットし、データ量監視部１２から受けているフレームの送出量の値から予備容量をセットしたカウント上限値まで、バッファ１１から送出されるフレームの数のカウントを開始する。つまり、カウンタ１３は、データ量監視部１２のフレームの送出量の値から、セットした予備容量の値まで、カウント値をカウントアップする。カウンタ１３は、フレームの送出量からカウントを開始して、カウント値がカウント上限値に達すると、ポーズ制御部１４に対し、ポーズ要求通知を行う。
【００３９】
また、カウンタ１３は、受信側中継機２０から下限値に達した旨の上下限フレームＵを受信すると、カウントを停止し、カウント値をリセットする。また、ポーズ制御部１４に対し、ポーズ解除要求通知を行う。
【００４０】
ポーズ制御部１４は、カウンタ１３から、ポーズ要求通知を受けると、送信端末３０にポーズフレームＰを送信する。ポーズ制御部１４は、カウンタ１３から、ポーズ解除要求通知を受けるまでは、ポーズフレームのタイムアウト前に、自動的にポーズフレームを送信し続ける。カウンタ１３から、ポーズ解除要求通知を受けると、ポーズフレームの送信を停止する。
【００４１】
ポーズフレームについて詳細に説明する。
図５は、ポーズフレームのデータフォーマットを示す図である。図に示すようにポーズフレームＰは、ＤＡ、ＳＡ、ｔｙｐｅ／Ｌｅｎｇｔｈ、Ｏｐｃｏｄｅ、Ｐａｕｓｅ  Ｔｉｍｅ、Ｒｅｓｅｒｖｅｄ、およびＦＣＳの領域を有している。
【００４２】
図６は、図５のポーズフレームのデータフォーマットを説明する図である。図５に示したポーズフレームＰのＤＡ（Ｄｅｓｔｉｎａｔｉｏｎ  Ａｄｄｒｅｓｓ）領域には、図６に示すように０１−８０−Ｃ２−００−００−０１が格納される。ポーズフレームＰのＤＡは、ＩＥＥＥ８０２．３に規定されており、上記値に固定されている。ＳＡ（Ｓｏｕｒｃｅ  Ａｄｄｒｅｓｓ）領域には、ポーズフレームＰの送信元（受信側中継機２０）のＭＡＣアドレスが格納される。Ｔｙｐｅ／Ｌｅｎｇｔｈ領域には、Ｄａｔａ領域のプロトコルの指定およびデータ長が格納される。なお、Ｔｙｐｅ／Ｌｅｎｇｔｈには、８８−０８が格納される。Ｏｐｃｏｄｅ領域には、Ｔｙｐｅ種別によって、必要に応じて不可させるオペレーションコードが格納される。なお、Ｏｐｃｐｄｅ領域には、００−０１が格納される。Ｐａｕｓｅ  Ｔｉｍｅ領域には、ポーズフレームＰの送信先に対し、フレームの送信を中止させる時間が格納される。フレームの送信を中止させる時間は、００−００からＦＦ−ＦＦの値で指定する。Ｒｅｓｅｒｖｅｄ領域は、予約領域である。ＦＣＳ領域は、フレームチェックシーケンスを示し、エラーチェックのためのコードが格納される。
【００４３】
データ量監視部１２の動作について詳細に説明する。
図７は、データ量監視部の動作を説明する図である。図には、フレームが中継機−中継機間（送信側中継機１０−受信側中継機２０間）を往復するのに要する時間において、送信側中継機１０−受信側中継機２０間を流れるフレーム数が示してある。図７の例では、フレーム数は、１４秒前から０秒前（現時点）までの１秒ごとに、送信側中継機１０−受信側中継機２０間を流れたフレーム数が示してある。
【００４４】
なお、図７の例では、フレームが送信側中継機１０−受信側中継機２０間を往復する時間は１０秒である。また、データ量監視部の欄には、１秒ごとのデータ量監視部１２のカウント値が示してあり、備考の欄には、１秒あたりに送信されたフレーム数が示してある。また、図中の×は、送信側中継機１０から受信側中継機２０にフレームが送信されなかったことを示している。
【００４５】
図に示すように、１４秒前は、送信側中継機１０から受信側中継機２０にフレームが送信されておらず、往復時間における送信側中継機１０−受信側中継機２０間に送出されたフレーム数は０である。よって、データ量監視部１２のカウント値は０となる。
【００４６】
１３秒前は、送信側中継機１０から受信側中継機２０に２フレーム送信され、往復時間における送信側中継機１０−受信側中継機２０間に送出されたフレーム数は２である。これにより、データ量監視部１２のカウント値は２となる。
【００４７】
１２秒前は、送信側中継機１０から受信側中継機２０に５フレーム送信され、往復時間における送信側中継機１０−受信側中継機２０間に送出されたフレーム数は、１３秒前の２フレームを加算して７となる。よって、データ量監視部１２のカウント値は７となる。
【００４８】
１１秒前は、送信側中継機１０から受信側中継機２０に３フレーム送信され、往復時間における送信側中継機１０−受信側中継機２０間に送出されたフレーム数は１３秒前の２フレームと、１２秒前の５フレームを加算して１０となる。よって、データ量監視部１２のカウント値は１０となる。
【００４９】
１４秒前からフレームの往復時間である１０秒が経過した４秒前までは、９秒前に１フレーム、８秒前に４フレーム、７秒前に２フレーム、６秒前に１フレーム、５秒前に４フレーム送信され、往復時間における送信側中継機１０−受信側中継機２０間に送出されたフレーム数は上記と同様に加算して２２となる。よって、データ量監視部１２のカウント値は２２となる。
【００５０】
１３秒前からフレームの往復時間１０秒を経過した３秒前では、送信側中継機１０から受信側中継機２０に５フレーム送信されている。よって、データ量監視部１２のカウント値は２７となる。しかし、１３秒前に送信側中継機１０から受信側中継機２０に送信された２フレームの値は、フレームの往復時間である１０秒を経過した値であるので、データ量監視部１２のカウント値は、２７から２を減算した２５となる。つまり、３秒前では、フレームの往復時間の１０秒間に、送信側中継機１０−受信側中継機２０間に送出されたフレーム数は２５となる。
【００５１】
以下同様に、２秒前では、送信側中継機１０から送信されたフレームは０である。２秒前から１０秒前にあたる１２秒前の５フレームが減算され、データ量監視部１２のカウント値は２０となる。
【００５２】
１秒前では、送信側中継機１０から送信されたフレームは１である。データ量監視部１２のカウント値は２１となるが、１秒前から１０秒前にあたる１１秒前の３フレームが減算され１８となる。
【００５３】
現時点では、送信側中継機１０から送信されたフレームは０であり、０秒前から１０秒にあたる１０秒前のフレームは、送信されていない。よって、データ量監視部１２のカウント値は１秒前と同様の１８となる。
【００５４】
このようにして、データ量監視部１２は、往復時間あたりの、バッファ１１から受信側中継機２０に送信されるフレーム量をカウントする。
以下、図２の動作について説明する。
【００５５】
１．送信端末３０から受信端末４０にフレームを送信する。
２．送信側中継機１０−受信側中継機２０間の帯域より、受信側中継機２０−受信端末４０間の帯域が小さい場合、または、受信端末４０がポーズフレームＰを送信している場合、受信側中継機２０のバッファ２１にフレームが蓄積され始める。
【００５６】
３．フレームがバッファ２１の上限値に達すると、バッファ監視部２２は、送信側中継機１０に対し、フレームが上限値に達した旨の上下限フレームＵを送信する。
４．送信側中継機１０のカウンタ１３は、受信側中継機２０からの上下限フレームＵを受信すると、上下限フレームＵに含まれるバッファ２１の予備容量を、カウント上限値にセットし、データ量監視部１２がカウントしていたフレームの往復時間あたりの、送出量の値から、予備容量をセットしたカウント上限値までバッファ１１から送出されるフレーム数のカウントを開始する。
【００５７】
５．カウンタ１３は、カウント上限値までカウントすると、ポーズ制御部１４に対し、ポーズ要求通知を行う。
６．ポーズ制御部１４は、カウンタ１３からのポーズ要求通知を受け、送信端末３０にポーズフレームＰを送信する。ポーズ制御部１４は、カウンタ１３から、ポーズ解除要求通知を受けるまでは、ポーズフレームのタイムアウト前に、自動的にポーズフレームを送信し続ける。
【００５８】
７．受信側中継機２０のバッファ２１は、送信端末３０がフレームの送信を停止している間に、保持しているフレームを受信端末４０に送信する。バッファ監視部２２は、フレームがバッファ２１の下限値に達すると、送信側中継機１０に対し、フレームが下限値に達した旨を示す上下限フレームＵを送信する。
【００５９】
８．送信側中継機１０のカウンタ１３は、受信側中継機２０のバッファ監視部２２から下限値に達した旨の上下限フレームＵを受信すると、カウントを停止し、カウント値をリセットする。また、ポーズ制御部１４に対し、ポーズ解除要求通知を行う。ポーズ制御部１４は、ポーズ解除要求通知を受け、ポーズフレームＰの送信を中止する。これにより、送信端末３０へのポーズフレームＰによるタイムアウトを待って、フレームの送信が再開される。このようにして、バッファ２１を有効に使用できるようにする。
【００６０】
次に、フレームが５０％流れている場合の受信側中継機２０のバッファ状況を説明する。
図８は、フレームが５０％流れている場合の受信側中継機のバッファ状況を説明する図である。図に示すバッファ２１ａ〜２１ｅは、受信側中継機２０のバッファ２１の、フレームの保持状況を示している。また、図中上側の１〜２０のフレームは、送信側中継機１０から出力されるフレーム、下側の１〜２０のフレームは、受信側中継機２０が受信するフレームを示している。
【００６１】
バッファ２１ａに示すように、保持するフレームが上限値５１に達すると（線Ｌ１は、フレームが上限値５１に達したタイミングを示す）、受信側中継機２０は、フレームが上限値５１に達した旨の上下限フレームＵを送信側中継機１０に出力する。線Ｌ１のタイミング経過後、送信側中継機１０からすでに出力されていた上側の１〜５のフレーム（伝送路の片道分の時間前に出力されたフレーム）は、下側の１〜５のフレームに示すように受信側中継機２０に順次到達する。これによって、バッファ２１ｂの領域５２には、１〜５のフレームが保持されることになる。
【００６２】
一方、送信側中継機１０は、受信側中継機２０から上下限フレームＵが出力されても、この上下限フレームＵが到達するまでは（線Ｌ２は、上下限フレームＵが送信側中継機１０に到達するタイミングを示す）、上側の６〜１０のフレームを送信し続ける。従って、受信側中継機２０には、下側のフレーム６〜１０が順次到着し、バッファ２１ｃの領域５３に保持される。
【００６３】
また、送信側中継機１０は、カウンタ１３がカウント上限値（図８の例では、カウント上限値を２０とする）をカウントするまで、フレームを送信続ける。図８の例では、線Ｌ２におけるフレーム送出量は１０であり、カウンタ１３は、１０からカウント上限値２０までカウントし続けることになる。
【００６４】
カウンタ１３によってカウントされる上側の１１から２０までのフレームは、バッファ２１ｄ，２１ｅに示す領域５４に保持されることになる。なお、線Ｌ３のタイミング（カウンタ１３がカウント上限値２０までカウントし、ポーズ制御部１４に対し、ポーズ要求通知を行うタイミング）では、下側の１１〜１５のフレームが受信側中継機２０に到達し、バッファ２１ｄの領域５４ａに保持されることになる。また、線Ｌ３のタイミングからフレームの片道に要する時間経過後には、下側の１６〜２０のフレームが受信側中継機２０に到達し、バッファ２１ｅの領域５４ｂに保持されることになる。
【００６５】
このように、受信側中継機２０のバッファ２１が上限値に達すると、カウンタ１３が、バッファ２１の上限値からさらにデータを保持できる予備容量に保持されるデータをカウントし、送信端末３０に対しポーズフレームを送信するようにした。これにより、フレームが連続的に送信されない場合でも、受信側中継機２０のバッファ２１を有効に使用することが可能となる。
【００６６】
また、バッファ２１の予備容量を上下限フレームＵに含めて送信することにより、カウンタ１３のカウント上限値を、送信側中継機１０の製造の度に、受信側中継機２０のバッファ２１に合わせて設定する必要がなく、容易に製造することができる。
【００６７】
なお、上下限フレームＵに、バッファ２１の予備容量を含めずに送信することもできる。この場合、カウンタ１３のカウント上限値は固定となり、接続する受信側中継機２０のバッファ２１の予備容量に合わせて、予め設定しておく必要がある。その他については、カウンタ１３は、上記で説明したのと同様の機能を有し、上限値に達した旨の上下限フレームＵを受信すると、データ量監視部１２のカウントしている値から、固定のカウント上限値までカウントを行い、ポーズ制御部１４に対し、ポーズ要求通知を行う。
【００６８】
また、図３で説明した、予備容量の値／下限の値領域の、下限の値は、必ずしも必要ではない。下限の値を上下限フレームＵで送信側中継機１０に通知した場合には、送信側中継機１０が、受信側中継機２０のバッファ２１の現在データを保持している容量を認識することができる。
【００６９】
また、上記では、送信端末３０のポーズ解除方法として、ポーズフレームＰによるタイムアウトを待って、ポーズ解除を行っているが、ポーズ制御部１４が、カウンタ１３からのポーズ解除要求の通知を受けて、送信端末３０に対し、ポーズを解除するためのポーズ解除フレームを送信するようにしてもよい。これにより、ポーズのタイムアウトを待たずに、ポーズ解除ができるので、その分のフレーム転送効率を向上させることができる。もちろん、送信端末３０は、ポーズ解除フレームを受信すると、フレームの送信を再開するようにする必要がある。
【００７０】
さらに、上記では、送信側中継機１０の送信データおよび受信側中継機２０の受信データをフレーム単位で管理しているが、バイト単位で管理することもできる。この場合、データ量監視部１２は、バイト単位で、バッファ１１から送出されるデータ量をカウントする。また、カウンタ１３は、バイト単位で受信側中継機２０に送信されるデータをカウントする。なお、バッファ２１の予備容量は、バイト単位で表される。これにより、フレーム単位では、フレームごとにデータ長が異なるので（一般的に６４バイト〜９６００バイト）、フレームで管理した場合は、受信側中継機２０のバッファ２１に空きができてしまう場合が生じるが、フレームより小さなバイト単位で管理することで、受信側中継機のバッファをより有効に使用することができる。
【００７１】
次に、本発明の第２の実施の形態を図面を参照して詳細に説明する。
図９は、第２の実施の形態に係るネットワークシステムを示す図である。図９において、図２と同じものには同じ符号を付し、その説明を省略する。
【００７２】
第１の実施の形態で説明したように、カウンタ１３のカウント上限値を受信側中継機２０のバッファ２１の予備容量に合わせて固定とする場合、上下限フレームＵにバッファ２１の予備容量を含めて、送信側中継機１０に送信する必要はない。そこで、第２の実施の形態では、バッファ監視部６２は、ＩＥＥＥ８０２．３に規定されるポーズフレームＰを送信側中継機１０に送信する。
【００７３】
送信側中継機１０のカウンタ６１は、カウント上限値が受信側中継機２０のバッファ２１の予備容量に合わせて、固定となっている。カウンタ６１は、受信側中継機２０のバッファ監視部６２からポーズフレームＰを受信すると、第１の実施の形態と同様に、データ量監視部１２がカウントしているフレームの送出量の値から、固定のカウント上限値までカウントを開始する。そして、カウント値が固定のカウント上限値に達すると、ポーズ制御部１４にポーズ要求通知を行う。なお、受信側中継機２０からのポーズフレームＰの送信が停止されると、カウンタ６１は、ポーズ制御部１４に対し、ポーズ解除要求の通知を行い、カウント値をリセットする。
【００７４】
このように、受信側中継機２０からポーズフレームＰを受けると、カウンタ６１が、バッファ２１の上限値からさらにデータを保持できる予備容量に保持されるデータをカウントする。そして、送信端末３０に対しポーズフレームを送信するようにした。これにより、フレームが連続的に送信されない場合でも、受信側中継機２０のバッファ２１を有効に使用できるとともに、受信側中継機２０に従来の装置を適用することができる。
【００７５】
なお、上記では、送信端末３０のポーズ解除方法として、ポーズフレームＰによるタイムアウトを待って、ポーズ解除を行っているが、ポーズ制御部１４が、カウンタ１３からのポーズ解除要求の通知を受けて、送信端末３０に対し、ポーズを解除するためのポーズ解除フレームを送信するようにしてもよい。これにより、ポーズのタイムアウトを待たずに、ポーズ解除ができるので、その分のフレーム転送効率を向上させることができる。もちろん、送信端末３０は、ポーズ解除フレームを受信すると、フレームの送信を再開するようにする必要がある。
【００７６】
また、上記では、送信側中継機１０の送信データおよび受信側中継機２０の受信データをフレーム単位で管理しているが、バイト単位で管理することもできる。この場合、データ量監視部１２は、バイト単位で、バッファ１１から送出されるデータ量をカウントする。また、カウンタ６１は、バイト単位で受信側中継機２０に送信されるデータをカウントする。なお、バッファ２１の予備容量は、バイト単位で表される。これにより、フレーム単位では、フレームごとにデータ長が異なるので（一般的に６４バイト〜９６００バイト）、フレームで管理した場合は、受信側中継機２０のバッファ２１に空きができてしまう場合が生じるが、フレームより小さなバイト単位で管理することで、受信側中継機のバッファをより有効に使用することができる。
【００７７】
（付記１）  送信端末から送信されるデータを受信し、受信端末と接続された受信側通信装置に送信する通信装置において、
前記データが当該通信装置と前記受信側通信装置との間を往復するのに要する時間あたりの、前記受信側通信装置に送信されるデータ量を計測するデータ量計測手段と、
前記受信側通信装置から、前記データを一時的に保持するバッファが上限値に達した旨の通知を受けて、前記受信側通信装置に送信される前記データを、前記データ量の値から、前記バッファの前記上限値からさらに前記データを保持できる領域の値までカウントし、前記送信端末に対し前記データの送信停止要求を行うカウンタ手段と、
を有することを特徴とする通信装置。
【００７８】
（付記２）  前記カウンタ手段は、前記受信側通信装置からの前記上限値に達した旨の通知とともに、前記領域の値を受信することを特徴とする付記１記載の通信装置。
（付記３）  前記バッファが前記上限値に達した旨の通知は、ポーズフレームを用いて行われることを特徴とする付記１記載の通信装置。
【００７９】
（付記４）  前記カウンタ手段は、設置される前記受信側通信装置の前記バッファに合わせて前記領域の値が予め設定されていることを特徴とする付記１記載の通信装置。
（付記５）  前記カウンタ手段から前記送信停止要求を受けて、前記送信端末にポーズフレームを送信するポーズ制御手段を有することを特徴とする付記１記載の通信装置。
【００８０】
（付記６）  前記カウンタ手段は、前記受信側通信装置から、前記バッファの前記データの保持が下限値に達した旨の通知を受けて、前記送信端末に対し前記データの送信再開要求を行うことを特徴とする付記１記載の通信装置。
【００８１】
（付記７）  前記カウンタ手段から前記送信再開要求を受けて、前記送信端末にポーズ解除フレームを送信するポーズ制御手段を有することを特徴とする付記６記載の通信装置。
【００８２】
（付記８）  前記データ量計測手段は、フレーム単位で前記データ量を計測し、前記カウンタ手段は、フレーム単位で前記受信側通信装置に送信される前記データをカウントすることを特徴とする付記１記載の通信装置。
【００８３】
（付記９）  前記データ量計測手段は、バイト単位で前記データ量を計測し、前記カウンタ手段は、バイト単位で前記受信側通信装置に送信される前記データをカウントすることを特徴とする付記１記載の通信装置。
【００８４】
（付記１０）  送信端末から送信されるデータを受信し、受信端末と接続された受信側通信装置に送信する通信装置の通信制御方法において、
データ量計測手段によって、前記データが当該通信装置と前記受信側通信装置との間を往復するのに要する時間あたりの、前記受信側通信装置に送信されるデータ量を計測し、
カウンタ手段によって、前記受信側通信装置から、前記データを一時的に保持するバッファが上限値に達した旨の通知を受けて、前記受信側通信装置に送信される前記データを、前記データ量の値から、前記バッファの前記上限値からさらに前記データを保持できる領域の値までカウントし、前記送信端末に対し前記データの送信停止要求を行う、
ことを特徴とする通信制御方法。
【図面の簡単な説明】
【００８５】
【図１】通信装置の概要を示した図である。
【図２】第１の実施の形態に係るネットワークシステムを示す図である。
【図３】上下限フレームのデータフォーマットを示す図である。
【図４】図３の上下限フレームのデータフォーマットを説明する図である。
【図５】ポーズフレームのデータフォーマットを示す図である。
【図６】図５のポーズフレームのデータフォーマットを説明する図である。
【図７】データ量監視部の動作を説明する図である。
【図８】フレームが５０％流れている場合の受信側中継機のバッファ状況を説明する図である。
【図９】第２の実施の形態に係るネットワークシステムを示す図である。
【図１０】ネットワークシステムを示す図である。
【図１１】フレームが１００％流れている場合の受信側中継機のバッファ状況を説明する図である。
【図１２】フレームが５０％流れている場合の受信側中継機のバッファ状況を説明する図である。
【符号の説明】
【００８６】
１  通信装置
１ａ，２ａ  バッファ
１ｂ  データ量計測手段
１ｃ  カウンタ手段
２  受信側通信装置
２ｂ  バッファ監視手段
３  送信端末
４  受信端末
【図１】
2006352557.tif 000003
【図２】
2006352557.tif 000004
【図３】
2006352557.tif 000005
【図４】
2006352557.tif 000006
【図５】
2006352557.tif 000007
【図６】
2006352557.tif 000008
【図７】
2006352557.tif 000009
【図８】
2006352557.tif 000010
【図９】
2006352557.tif 000011
【図１０】
2006352557.tif 000012
【図１１】
2006352557.tif 000013
【図１２】
2006352557.tif 000014