(57)【要約】【課題】全てのキューの総容量を抑制しつつ、バースト耐性と最低限のフレーム蓄積性能とを、両立させることのできる中継装置を提供する。【解決手段】中継装置１は、ポートＰ０Ｔ〜Ｐ７Ｔと、対応するポートから送信される予定のフレーム（以下、送信予定フレーム）が格納される複数のキューＱ０，Ｑ１と、共用記憶領域１１と、各キューＱ１，Ｑ０へのフレーム格納を制御する格納制御部９と、を備える。各キューＱ０，Ｑ１は、容量が可変であると共に、容量の最小保証値が設定されている。共用記憶領域１１は各キューＱ０，Ｑ１として使用される。格納制御部９は、送信予定フレームを格納しようとするキューの使用容量が最小保証値を超えなければ、フレームの格納を行い、上記使用容量が最小保証値を超えても、共用記憶領域１１に送信予定フレームを格納可能な空き領域があれば、当該空き領域を格納先キューとして用いて、フレームの格納を行う。【選択図】図１
2020150298.tif 000002
【特許請求の範囲】
【請求項１】
中継装置であって、
複数のポート（Ｐ０Ｔ〜Ｐ７Ｔ）と、
前記複数の各ポートに対して少なくとも１つずつ設けられ、対応するポートから送信される予定のフレームである送信予定フレームが格納されるキューであって、容量が可変であると共に、容量の最小保証値が設定されているキュー（Ｑ０，Ｑ１）と、
前記各キューとして使用される、所定容量を有した共用記憶領域（１１）と、
前記各キューへの前記送信予定フレームの格納を制御するように構成された格納制御部（９）と、を備え、
前記格納制御部は、
前記キューのうち、前記送信予定フレームを格納しようとするキューである格納先キューの使用容量が当該格納先キューの前記最小保証値を超えなければ、前記送信予定フレームの前記格納先キューへの格納を行い、前記格納先キューの使用容量が当該格納先キューの前記最小保証値を超えても、前記共用記憶領域に前記送信予定フレームを格納可能な空き領域があれば、当該空き領域を前記格納先キューとして用いて、前記送信予定フレームの前記格納先キューへの格納を行うように構成されている、
中継装置。
【請求項２】
請求項１に記載の中継装置であって、
前記各キューには容量の最大許容値が設定され、
前記格納制御部は、
前記格納先キューの使用容量が前記格納先キューの前記最大許容値を超えない範囲で、前記送信予定フレームの前記格納先キューへの格納を行うように構成されている、
中継装置。
【請求項３】
請求項２に記載の中継装置であって、
前記各キューの前記最大許容値の合計値は、前記キューが使用可能なトータル容量よりも大きい、
中継装置。
【請求項４】
請求項１ないし請求項３の何れか１項に記載の中継装置であって、
前記共用記憶領域は、前記各キューの前記最小保証値の容量を含む全ての容量として使用される記憶領域であり、
前記格納制御部は、
前記格納先キューの使用容量が当該格納先キューの前記最小保証値を超えず、且つ、前記共用記憶領域に前記送信予定フレームを格納可能な空き領域がない場合、使用容量が当該キューの前記最小保証値を超えているキューに格納されているフレームを破棄することにより、前記共用記憶領域に前記送信予定フレームを格納可能な空き領域を発生させ、当該空き領域の少なくとも一部を前記格納先キューとして用いて、前記送信予定フレームの前記格納先キューへの格納を行うように構成されている、
中継装置。
【請求項５】
請求項１ないし請求項４の何れか１項に記載の中継装置であって、
前記各キューの前記最小保証値が、当該中継装置の外部の装置（３）によって書き込まれるように構成された保証値記憶部（１３）、を更に備え、
前記各キューの前記最小保証値は、前記保証値記憶部に書き込まれた値に設定されるように構成されている、
中継装置。
【請求項６】
請求項２又は請求項３に記載の中継装置であって、
前記各キューの前記最大許容値が、当該中継装置の外部の装置（３）によって書き込まれるように構成された許容値記憶部（１４）、を更に備え、
前記各キューの前記最大許容値は、前記許容値記憶部に書き込まれた値に設定されるように構成されている、
中継装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、中継装置に関する。
【背景技術】
【０００２】
スター型トポロジのネットワークを構成する中継装置として、例えばイーサネットのスイッチがある。尚、イーサネットは、登録商標である。スイッチは、複数のポートの何れかから受信されたフレームを、複数のポートのうち、そのフレームの宛先の装置がつながっているポートから送信することにより、フレームの中継を行う。
【０００３】
また例えば、下記の特許文献１には、複数の送信回路毎に、その送信回路から送信する予定のパケットが蓄積されるパケット蓄積ＦＩＦＯを備え、このパケット蓄積ＦＩＦＯに蓄積されたパケットを送信回路から送信するように構成された中継装置、が記載されている。そして、イーサネットのスイッチにおいても、複数の各ポートに対して、送信予定のフレームが格納されるキューが設けられ、各キューに格納されたフレームが、当該キューに対応するポートから送信される。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００１−３２６６８８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
複数の各ポートに対して送信予定のフレームが格納されるキューを備える中継装置に関して、発明者の詳細な検討の結果、下記の課題が見出された。
複数のポートから特定のポートにフレームが集中するなどの原因により、特定のポートにつながる通信経路の帯域が一時的に増加した場合、即ち、バーストトラフィックが発生した場合には、その特定のポートに対応するキューに、送信待ちの複数のフレームが蓄積される。そして、キューがオーバフローすると、フレームをキューに蓄積することができなくなりフレームロスに至る。ここで言うフレームロスとは、送信予定のフレーム（即ち、中継対象フレーム）が失われてしまうことである。このようなバーストトラフィックによるフレームロスの抑制性能（以下、バースト耐性）を向上させるためには、各キューの容量を予め十分大きく設定しておくことが考えられる。しかし、バーストトラフィックが発生していない通常時、あるいは、バーストトラフィックが発生していないポートについては、キューの大きな容量が無駄になる。逆に、各キューの容量を通常時に必要な最小限の容量に設定したのでは、バースト耐性が得られない。
【０００６】
そこで、本開示の１つの局面は、全てのキューの総容量を抑制しつつ、バースト耐性と最低限のフレーム蓄積性能とを、両立させることのできる中継装置を提供する。
【課題を解決するための手段】
【０００７】
本開示の１つの態様による中継装置は、複数のポート（Ｐ０Ｔ〜Ｐ７Ｔ）と、複数の各ポートに対して少なくとも１つずつ設けられ、対応するポートから送信される予定のフレームである送信予定フレームが格納されるキュー（Ｑ０，Ｑ１）と、所定容量を有した共用記憶領域（１１）と、格納制御部（９）と、を備える。各キューは、容量が可変であると共に、容量の最小保証値が設定されている。共用記憶領域は、各キューとして使用される記憶領域である。格納制御部は、各キューへの送信予定フレームの格納を制御する。
【０００８】
そして、格納制御部は、キューのうち、送信予定フレームを格納しようとするキューである格納先キューの使用容量が当該格納先キューの最小保証値を超えなければ、送信予定フレームの格納先キューへの格納を行う。また、格納制御部は、納先キューの使用容量が当該格納先キューの最小保証値を超えても、共用記憶領域に送信予定フレームを格納可能な空き領域があれば、この空き領域を格納先キューとして用いて、送信予定フレームの格納先キューへの格納を行う。
【０００９】
このような構成によれば、各キューには、送信予定フレームが、少なくとも当該キューの最小保証値の分だけは格納可能である。よって、各キューについて最低限のフレーム蓄積性能が保証され、換言すれば、各ポートについて最低限のフレーム転送性能が保証される。
【００１０】
また、格納先キューの使用容量が最小保証値を超えたとしても、共用記憶領域に送信予定フレームを格納可能な空き領域があれば、この空き領域が格納先キューとして用いられる。そして、この空き領域による格納先キューに送信予定フレームが格納される。このため、各ポートに対して少なくとも１つずつ設けられるキューのうちの特定のキューに送信予定フレームが集中する場合には、その特定のキューに、最小保証値を超える量及び数の送信予定フレームが格納可能となり、前述のバースト耐性を実現することができる。
【００１１】
よって、本開示の１つの態様による中継装置によれば、各キューの容量を予め十分大きく設定しておく構成と比較して、全てのキューの総容量を抑制しつつ、バースト耐性と最低限のフレーム蓄積性能とを、両立させることができる。
【図面の簡単な説明】
【００１２】
【図１】実施形態の中継装置の構成を示すブロック図である。
【図２】キューの容量の最小保証値の一例を表す説明図である。
【図３】キューの容量の最大許容値の一例を表す説明図である。
【図４】格納制御処理のフローチャートである。
【図５】作用例を説明する第１の説明図である。
【図６】作用例を説明する第２の説明図である。
【発明を実施するための形態】
【００１３】
以下、図面を参照しながら、本開示の実施形態を説明する。
［１．構成］
図１に示す実施形態の中継装置１は、例えば、車両に搭載されるＥＣＵ２に備えられる。そして、中継装置１は、車両に搭載された他のＥＣＵ間の通信を中継する。ＥＣＵは、「Electronic Control Unit」の略であり、即ち、電子制御装置の略である。また、ＥＣＵ２には、当該ＥＣＵ２の動作を司るための各処理を行う処理部として、マイクロコンピュータ（以下、マイコン）３も備えられている。
【００１４】
中継装置１は、フレームを送受信するためのポートを、例えば８つ備える。以下では、８つの各ポートにおいて、フレームを受信するためのハードウェア（例えば、受信回路）の部分を、受信ポートＰ０Ｒ〜Ｐ７Ｒと言い、フレームを送信するためのハードウェア（例えば、送信回路）の部分を、送信ポートＰ０Ｔ〜Ｐ７Ｔと言う。また、受信ポートＰ０Ｒ〜Ｐ７Ｒと送信ポートＰ０Ｔ〜Ｐ７Ｔを、特に区別せずに総称する場合には、ポートＰ０〜Ｐ７と言う。尚、ポートの数は８以外であっても良い。
【００１５】
ポートＰ０〜Ｐ７の各々には、ＥＣＵ２とは別の複数のＥＣＵの何れかが、当該中継装置１と同じ構成を有する中継装置を介して、あるいは、中継装置を介さずに、接続される。
【００１６】
中継装置１は、受信ポートＰ０Ｒ〜Ｐ７Ｒの何れかで受信されたフレームを、送信ポートＰ０Ｔ〜Ｐ７Ｔのうち、当該フレームの宛先のＥＣＵが接続されている送信ポートから送信する。本実施形態において、フレームは、イーサネットの規格に基づくフレーム（即ち、イーサネットフレーム）である。
【００１７】
中継装置１は、更に、入力処理部５と、送信ポートＰ０Ｔ〜Ｐ７Ｔの各々に対応したバッファ部Ｂ０〜Ｂ７と、を備える。そして、バッファ部Ｂ０〜Ｂ７の各々は、第１のキューＱ０と、第２のキューＱ１と、スケジューラ７と、を備える。
【００１８】
キューＱ０，Ｑ１の各々には、当該キューＱ０，Ｑ１に対応する送信ポートから送信される予定のフレーム（即ち、送信予定フレーム）であって、詳しくは、当該キューＱ０，Ｑ１が備えられたバッファ部に対応する送信ポートから送信される予定のフレームが、格納される。また、中継装置１によって中継されるフレームには、少なくとも２段階の優先度が設定されている。そして、例えば、優先度が低い方のフレームは、第１のキューＱ０に格納され、優先度が高い方のフレームは、第２のキューＱ１に格納される。
【００１９】
受信ポートＰ０Ｒ〜Ｐ７Ｒから受信されたフレームの転送先ポートの決定、即ち、どの送信ポートＰ０Ｔ〜Ｐ７Ｔから送信するかの決定と、転送先の送信ポートに対応するキューＱ０，Ｑ１の何れか一方へのフレームの格納は、入力処理部５によって行われる。そして、入力処理部５は、キューＱ０，Ｑ１へのフレームの格納を制御する機能部分として、格納制御部９を備える。また、キューＱ０，Ｑ１に格納されたフレームの送信ポートからの送信は、スケジューラ７によって行われる。
【００２０】
尚、入力処理部５とスケジューラ７は、例えば、デジタル回路又はアナログ回路、あるいはこれらの組合せによって実現されて良い。また、入力処理部５とスケジューラ７は、マイコンを用いて実現されても良い。この場合、入力処理部５とスケジューラ７の機能は、ＣＰＵが非遷移的実体的記録媒体に格納されたプログラムを実行することにより実現されて良い。
【００２１】
［２．キューの説明］
以下の説明において、各キューＱ０，Ｑ１とは、送信ポートＰ０Ｔ〜Ｐ７Ｔ毎のキューＱ０，Ｑ１の各々を意味する。また、全キューＱ０，Ｑ１とは、送信ポートＰ０Ｔ〜Ｐ７Ｔ毎のキューＱ０，Ｑ１の全てを意味する。
【００２２】
各キューＱ０，Ｑ１は、容量が可変である。そして、各キューＱ０，Ｑ１には、容量について、最小保証値と最大許容値とが設定される。最小保証値は、使用できることが保証された容量値であり、換言すれば、容量の最低保証値である。最大許容値は、所定の条件が成立していれば使用することが許される最大の容量値である。
【００２３】
中継装置１には、各キューＱ０，Ｑ１として使用される共用記憶領域１１が備えられている。共用記憶領域１１は、例えばメモリの記憶領域で良い。メモリとしては、例えばＲＡＭ又は書き換え可能な不揮発性メモリ等で良い。
【００２４】
各キューＱ０，Ｑ１の容量のうち、最小保証値の分は固定の記憶領域とされ、最小保証値を超える分は共用記憶領域１１が用いられる、という構成でも良いが、本実施形態において、共用記憶領域１１は、各キューＱ０，Ｑ１の最小保証値の分を含む全ての容量として使用される。
【００２５】
そして、各キューＱ０，Ｑ１として使用可能な共用記憶領域１１の容量を、トータル容量と称することにすると、各キューＱ０，Ｑ１の最小保証値は、合計（即ち、各キューＱ０，Ｑ１の最小保証値の合計）がトータル容量を下回るように設定される。また、各キューＱ０，Ｑ１の最大許容値は、合計（即ち、各キューＱ０，Ｑ１の最大許容値の合計）がトータル容量を超えて設定することができる。
【００２６】
例えば、トータル容量が１２８ＫＢであるとすると、各キューＱ０，Ｑ１の最小保証値は、図２に例示するように、送信ポートＰ０Ｔ，Ｐ１Ｔ，Ｐ３Ｔ，Ｐ４Ｔ，Ｐ６Ｔ，Ｐ７Ｔの各キューＱ０，Ｑ１、送信ポートＰ２ＴのキューＱ０並びに送信ポートＰ５ＴのキューＱ１が４ＫＢに設定され、送信ポートＰ２ＴのキューＱ１並びに送信ポートＰ５ＴのキューＱ０が１６ＫＢに設定されて良い。また、各キューＱ０，Ｑ１の最大許容値は、図３に例示するように、送信ポートＰ０Ｔ〜Ｐ７Ｔの各キューＱ０，Ｑ１が１６ＫＢに設定されて良い。尚、図２及び図３において、記載された数字の値は容量値であり、この容量値の単位は「ＫＢ」である。「ＫＢ」は「キロバイト」を意味する。数値は一例であり、限定されるものではない。
【００２７】
図１に示すように、中継装置１には、各キューＱ０，Ｑ１の最小保証値が書き込まれる保証値記憶部１３と、各キューＱ０，Ｑ１の最大許容値が書き込まれる許容値記憶部１４とが、備えられている。
【００２８】
保証値記憶部１３と許容値記憶部１４には、例えばマイコン３によって各キューＱ０，Ｑ１の最小保証値又は最大許容値が書き込まれる。マイコン３は、中継装置１の外部の装置に相当する。そして、中継装置１において、各キューＱ０，Ｑ１の最小保証値は、そのキューについて保証値記憶部１３に書き込まれた値に設定される。同様に、各キューＱ０，Ｑ１の最大許容値は、そのキューについて許容値記憶部１４に書き込まれた値に設定される。
【００２９】
中継装置１において、格納制御部９は、共用記憶領域１１におけるどの領域をどのキューとして使用しているかと、どの領域が空いているかとを、少なくとも管理及び記憶することにより、共用記憶領域１１を各キューＱ０，Ｑ１として使用する。
【００３０】
そして、格納制御部９は、格納先キューについて、下記〈１〉〜〈４〉の処理を行う。
尚、格納先キューは、各キューＱ０，Ｑ１のうち、送信予定フレームが格納されようとするキューである。送信予定フレームは、受信ポートＰ０Ｒ〜Ｐ７Ｒの何れかで受信されたフレーム（即ち、受信フレーム）である。格納先キューは、詳しくは、受信フレームの宛先のＥＣＵが接続されている送信ポートに対応する２つのキューＱ０，Ｑ１のうち、受信フレームの優先度に対応する方である。
【００３１】
〈１〉格納先キューの使用容量が当該キューの最小保証値を超えないのであれば、送信予定フレームの格納先キューへの格納を行う。具体的には、共用記憶領域１１において空いている領域のうち、送信予定フレームのデータ量と同じ分の領域を、格納先キューとして使用する領域とし、この領域に送信予定フレームを格納する。
【００３２】
但し、送信予定フレームの格納により全キューＱ０，Ｑ１の合計の使用容量がトータル容量を超えてしまうのであれば、つまり、現在の共用記憶領域１１に送信予定フレームを格納可能な空き領域がなければ、下記〈２〉の処理を行う。
【００３３】
〈２〉格納先キュー以外のキューのうち、使用容量が当該キューの最小保証値を超えているキューに格納されているフレームを破棄（即ち、消去）することにより、共用記憶領域１１に送信予定フレームを格納可能な空き領域を発生させる。この場合、該当のキューに格納されているフレームのうち、例えば、先に格納されたものを優先して破棄する。そして、フレームの破棄により発生させた空き領域を格納先キューとして用いて、送信予定フレームの格納先キューへの格納を行う。つまり、空き領域のうち、送信予定フレームのデータ量と同じ分の領域を、格納先キューとして使用する領域とし、この領域に送信予定フレームを格納する。
【００３４】
〈３〉格納先キューの使用容量が当該キューの最小保証値を超えても、格納先キューの使用容量が当該キューの最大許容値を超えず、且つ、共用記憶領域１１に送信予定フレームを格納可能な空き領域があれば、その空き領域を格納先キューとして用いて、送信予定フレームの格納先キューへの格納を行う。
【００３５】
〈４〉格納先キューの使用容量が当該キューの最小保証値を超え、更に、格納先キューの使用容量が当該キューの最大許容値も超えるか、あるいは、共用記憶領域１１に送信予定フレームを格納可能な空き領域がなければ、送信予定フレームを格納せずに破棄する。
【００３６】
［３．格納制御部が行う処理］
次に、格納制御部９が行う格納制御処理について、図４のフローチャートを用いて説明する。
【００３７】
格納制御部９は、受信ポートＰ０Ｒ〜Ｐ７Ｒの何れかでフレームが受信され、この受信フレームを格納すべきキュー（即ち、格納先キュー）が、入力処理部５にて決定されると、図４の格納制御処理を行う。尚、図４に関する説明において、受信フレームとは、格納先キューに格納されるフレームであり、上記〈１〉〜〈４〉の処理の説明における送信予定フレームに該当する。
【００３８】
図４に示すように、格納制御部９は、格納制御処理では、Ｓ１１０にて、格納先キューの使用容量と受信フレームサイズとの合計値である予想使用容量が、格納先キューの最小保証値以下であるか否かを判定する。受信フレームサイズは、受信フレームのデータ量である。
【００３９】
格納制御部９は、このＳ１１０にて、格納先キューの予想使用容量が最小保証値以下であると判定した場合には、受信フレームを格納しても格納先キューの使用容量は最小保証値を超えないと判断して、Ｓ１２０に進む。
【００４０】
そして、格納制御部９は、Ｓ１２０では、全キューＱ０，Ｑ１の合計の使用容量と受信フレームサイズとの合計値である全キュー予想使用容量が、トータル容量以下であるか否かを判定する。
【００４１】
格納制御部９は、このＳ１２０にて、全キュー予想使用容量がトータル容量以下であると判定した場合には、受信フレームを格納しても全キューＱ０，Ｑ１の合計の使用容量はトータル容量を超えない、即ち、共用記憶領域１１に受信フレームを格納可能な空き領域がある、と判断して、Ｓ１３０に進む。
【００４２】
そして、格納制御部９は、Ｓ１３０にて、受信フレームの格納先キューへの格納を行う。具体的には、前述したように、共用記憶領域１１において空いている領域のうち、受信フレームサイズと同じ分の領域を、格納先キューとして使用する領域とし、この領域に受信フレームを格納する。その後、当該格納制御処理を終了する。
【００４３】
また、格納制御部９は、上記Ｓ１２０にて、全キュー予想使用容量がトータル容量以下ではないと判定した場合には、共用記憶領域１１に受信フレームを格納可能な空き領域がないと判断して、Ｓ１４０に進む。
【００４４】
そして、格納制御部９は、Ｓ１４０では、上記〈２〉の処理のうち、共用記憶領域１１に空き領域を発生させる処理を行う。即ち、格納先キュー以外のキューのうち、使用容量が当該キューの最小保証値を超えているキューに格納されているフレームを破棄することにより、共用記憶領域１１に受信フレームを格納可能な空き領域を発生させる。
【００４５】
その後、格納制御部９は、Ｓ１３０に進み、Ｓ１４０の処理で発生させた空き領域を格納先キューとして用いて、受信フレームの格納先キューへの格納を行う。具体的には、前述したように、Ｓ１４０の処理で発生した空き領域のうち、受信フレームのデータ量と同じ分の領域を、格納先キューとして使用する領域とし、この領域に受信フレームを格納する。そして、その後、当該格納制御処理を終了する。
【００４６】
また、格納制御部９は、上記Ｓ１１０にて、格納先キューの予想使用容量が最小保証値以下でないと判定した場合には、受信フレームの格納により格納先キューの使用容量が最小保証値を超えると判断して、Ｓ１５０に進む。
【００４７】
格納制御部９は、Ｓ１５０では、格納先キューの予想使用容量が、格納先キューの最大許容値以下であるか否かを判定する。
格納制御部９は、このＳ１５０にて、格納先キューの予想使用容量が最大許容値以下であると判定した場合には、受信フレームを格納しても格納先キューの使用容量は最大許容値を超えないと判断して、Ｓ１６０に進む。
【００４８】
格納制御部９は、Ｓ１６０では、Ｓ１２０と同様に、全キュー予想使用容量がトータル容量以下であるか否かを判定し、全キュー予想使用容量がトータル容量以下であると判定した場合には、Ｓ１３０に進む。そして、このＳ１３０にて、受信フレームの格納先キューへの格納を行った後、当該格納制御処理を終了する。
【００４９】
また、格納制御部９は、上記Ｓ１５０と上記Ｓ１６０との何れかで「Ｎ０」と判定した場合、即ち、受信フレームの格納により格納先キューの使用容量が最大許容値を超えるか、あるいは、共用記憶領域１１に受信フレームを格納可能な空き領域がない場合には、Ｓ１７０に進む。
【００５０】
そして、格納制御部９は、Ｓ１７０では、受信フレームを格納せずに破棄し、その後、当該格納制御処理を終了する。
図４の格納制御処理では、Ｓ１１０で「ＹＥＳ」と判定してＳ１３０へ進む場合の処理が、上記〈１〉の処理に該当する。
【００５１】
そして、Ｓ１１０で「ＹＥＳ」と判定し、且つ、Ｓ１２０で「ＮＯ」と判定して、Ｓ１４０の処理を行った後、Ｓ１３０へ進む場合の処理が、上記〈２〉の処理に該当する。
また、Ｓ１１０で「ＮＯ」と判定して、Ｓ１５０で「ＹＥＳ」と判定し、且つ、Ｓ１６０で「ＹＥＳ」と判定して、Ｓ１３０へ進む場合の処理が、上記〈３〉の処理に該当する。
【００５２】
また、Ｓ１１０で「ＮＯ」と判定して、Ｓ１５０で「ＮＯ」と判定するか、あるいは、Ｓ１６０で「ＮＯ」と判定して、Ｓ１７０へ進む場合の処理が、上記〈４〉の処理に該当する。
【００５３】
［４．作用例］
例えば、図５に示すように、トータル容量が１２８ＫＢで、各キューＱ０，Ｑ１の最大許容値も１２８ＫＢに設定されているとする。
【００５４】
そして、送信ポートＰ０Ｔに接続されたＥＣＵを宛先とするフレームであって、第１のキューＱ０と第２のキューＱ１のうち、第２のキューＱ１に格納されるべき優先度のフレームが、連続して受信されたとする。
【００５５】
この場合、受信された各フレームは、図５における斜線ハッチングの部分に示すように、送信ポートＰ０Ｔに対応するバッファ部Ｂ０のキューＱ１に、当該キューＱ１の使用容量が最大許容値を超えない範囲で格納される。そして、当該キューＱ１の使用容量が最大許容値を超えるのであれば、受信フレームは格納されずに破棄される。
【００５６】
また、他のキューに既にフレームが格納されていて、バッファ部Ｂ０のキューＱ１の使用容量が最小保証値を超えてから最大許容値に達する前に、共用記憶領域１１に受信フレームを格納可能な空き領域がなくなると、その時点からの受信フレームは格納されずに破棄される。
【００５７】
このように、格納先のキューには、当該キューの使用容量が最小保証値を超えても、共用記憶領域１１に受信フレームを格納可能な空き領域があり、且つ、当該キューの使用容量が最大許容値を超えないのであれば、受信フレームが格納される。
【００５８】
一方、図６に示す例においても、トータル容量が１２８ＫＢで、各キューＱ０，Ｑ１の最大許容値が１２８ＫＢに設定されている。
そして、全キューＱ０，Ｑ１のうち、バッファ部Ｂ０のキューＱ１の使用容量は最小保証値を超えているが、他のキューの使用容量は最小保証値未満で例えば０であり、且つ、共用記憶領域１１には、もはや追加のフレームを格納可能な空き領域はないとする。
【００５９】
この状態において、例えば、バッファ部Ｂ１のキューＱ０に格納されるべきフレームが受信され、仮に、この受信フレームが格納されても、バッファ部Ｂ１のキューＱ０の使用容量は最小保証値を超えないとする。
【００６０】
この場合、図６における（１）及びクロスハッチングの部分に示すように、バッファ部Ｂ０のキューＱ１に格納されているフレームが破棄（即ち、消去）されることにより、共用記憶領域１１に、受信フレームを格納可能な空き領域が作られる。そして、この空き領域がバッファ部Ｂ１のキューＱ０として用いられて、図６における（２）に示すように受信フレームがバッファ部Ｂ１のキューに格納される。
【００６１】
このように、格納先のキューの使用容量が最小保証値を超えない限り、そのキューへの受信フレームの格納は実施される。
［５．効果］
以上詳述した実施形態によれば、以下の効果を奏する。
【００６２】
（１）各キューＱ０，Ｑ１には、容量の最小保証値が設定される。そして、各キューＱ０，Ｑ１には、送信予定フレーム（即ち、受信フレーム）が、少なくとも当該キューの最小保証値の分だけは格納可能である。よって、各キューについて最低限のフレーム蓄積性能が保証され、換言すれば、各ポートＰ０Ｔ〜Ｐ７Ｔについて最低限のフレーム転送性能が保証される。
【００６３】
比較例として、各キューＱ０，Ｑ１として共用記憶領域１１が使用されるが、各キューＱ０，Ｑ１の最小保証値は設定されない、という構成が考えられる。この比較例の構成では、ある１つ以上のキューの使用容量が大きくなった場合に、他のキューの容量が全く確保できなくなる可能性があり、即ち、フレームを１つも格納できないキューが生じる可能性がある。すると、フレームの転送が実施できない送信ポートが生じることになり、延いては、フレームの中継機能が損なわれる。しかし、本実施形態によれば、この比較例の問題が回避される。
【００６４】
また、本実施形態では、格納先キューの使用容量が最小保証値を超えたとしても、共用記憶領域１１に送信予定フレームを格納可能な空き領域があれば、この空き領域が格納先キューとして用いられて、送信予定フレームの格納が実施される。このため、あるキューに送信予定フレームが集中する場合には、そのキューに最小保証値を超える量及び数の送信予定フレームが格納可能となり、前述のバースト耐性を実現することができる。
【００６５】
よって、本実施形態によれば、全キューＱ０，Ｑ１の総容量を抑制しつつ、バースト耐性と最低限のフレーム蓄積性能とを、両立させることができる。
（２）各キューＱ０，Ｑ１には、容量の最大許容値も設定される。そして、各キューＱ０，Ｑ１には、当該キューの使用容量が最大許容値を超えない範囲で、送信予定フレームが格納される。このため、特定のキューの使用容量が大きくなり過ぎることを抑制し易い。
【００６６】
（３）各キューＱ０，Ｑ１の最大許容値の合計値は、全キューＱ０，Ｑ１が使用可能なトータル容量よりも大きい値になっている。このため、各キューＱ０，Ｑ１の使用容量が抑制され過ぎることを回避することができる。言い換えると、複数の送信ポートＰ０Ｔ〜Ｐ７Ｔのうち、バーストトラフィックが発生した送信ポートのキューについて、より多くの容量が使用されるようにすることができる。
【００６７】
（４）格納先キューの使用容量が最小保証値を超えず、且つ、共用記憶領域１１に送信予定フレームを格納可能な空き領域がない場合、上記〈２〉の処理が行われる。
このため、格納先のキューの使用容量が最小保証値を超えない限り、そのキューへの受信フレームの格納が実施されるようにすることができる。つまり、各キューＱ０，Ｑ１の容量の最小保証を、確実に実現することができる。
【００６８】
（５）各キューＱ０，Ｑ１の最小保証値は、マイコン３によって保証値記憶部１３に書き込まれた値に設定される。各キューＱ０，Ｑ１の最大許容値は、マイコン３によって許容値記憶部１４に書き込まれた値に設定される。
【００６９】
このため、各キューＱ０，Ｑ１の最小保証値と最大許容値を、任意の値に設定することができる。また、各キューＱ０，Ｑ１の最小保証値と最大許容値を、状況に応じて変更することも可能である。
【００７０】
［６．他の実施形態］
以上、本開示の実施形態について説明したが、本開示は上述の実施形態に限定されることなく、種々変形して実施することができる。
【００７１】
前述したように、各キューＱ０，Ｑ１の容量のうち、最小保証値の分は、共用記憶領域１１とは別の固定の記憶領域とされ、最小保証値を超える分として共用記憶領域１１が用いられる、という構成でも良い。この場合、図４の格納制御処理は、下記（Ａ），（Ｂ）のように変形されて良い。
【００７２】
（Ａ）Ｓ１２０，Ｓ１４０が削除され、Ｓ１１０で「ＹＥＳ」と判定されたならＳ１３０の処理が行われる。
（Ｂ）Ｓ１６０では、最小保証値を超える分としての共用記憶領域１１に受信フレームを格納可能な空き領域があるか否かが判定される。
また、ポート毎のキューの数は、２に限らず、１であっても、３以上であっても良い。
【００７３】
また、本開示に記載の中継装置１及びその手法は、コンピュータプログラムにより具体化された一つ乃至は複数の機能を実行するようにプログラムされたプロセッサ及びメモリを構成することによって提供された専用コンピュータにより、実現されてもよい。あるいは、本開示に記載の中継装置１及びその手法は、一つ以上の専用ハードウェア論理回路によってプロセッサを構成することによって提供された専用コンピュータにより、実現されてもよい。もしくは、本開示に記載の中継装置１及びその手法は、一つ乃至は複数の機能を実行するようにプログラムされたプロセッサ及びメモリと一つ以上のハードウェア論理回路によって構成されたプロセッサとの組み合わせにより構成された一つ以上の専用コンピュータにより、実現されてもよい。また、コンピュータプログラムは、コンピュータにより実行されるインストラクションとして、コンピュータ読み取り可能な非遷移有形記録媒体に記憶されてもよい。中継装置１に含まれる各部の機能を実現する手法には、必ずしもソフトウェアが含まれている必要はなく、その全部の機能が、一つあるいは複数のハードウェアを用いて実現されてもよい。
【００７４】
また、上記実施形態における１つの構成要素が有する複数の機能を、複数の構成要素によって実現したり、１つの構成要素が有する１つの機能を、複数の構成要素によって実現したりしてもよい。また、複数の構成要素が有する複数の機能を、１つの構成要素によって実現したり、複数の構成要素によって実現される１つの機能を、１つの構成要素によって実現したりしてもよい。また、上記実施形態の構成の一部を省略してもよい。
【００７５】
また、上述した中継装置１の他、当該中継装置１を構成要素とするシステム、当該中継装置１としてコンピュータを機能させるためのプログラム、このプログラムを記録した半導体メモリ等の非遷移的実態的記録媒体、中継装置１におけるフレームのバッファリング方法など、種々の形態で本開示を実現することもできる。
【符号の説明】
【００７６】
１…中継装置、９…格納制御部、１１…共用記憶領域、Ｐ０Ｔ〜Ｐ７Ｔ…送信ポート、Ｑ０，Ｑ１…キュー
【図１】
2020150298.tif 000003
【図２】
2020150298.tif 000004
【図３】
2020150298.tif 000005
【図４】
2020150298.tif 000006
【図５】
2020150298.tif 000007
【図６】
2020150298.tif 000008