JP4072315B2 - パケットスイッチ - Google Patents
パケットスイッチ Download PDFInfo
- Publication number
- JP4072315B2 JP4072315B2 JP2000395741A JP2000395741A JP4072315B2 JP 4072315 B2 JP4072315 B2 JP 4072315B2 JP 2000395741 A JP2000395741 A JP 2000395741A JP 2000395741 A JP2000395741 A JP 2000395741A JP 4072315 B2 JP4072315 B2 JP 4072315B2
- Authority
- JP
- Japan
- Prior art keywords
- scheduling
- scheduler
- packet
- input
- unit
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/28—Flow control; Congestion control in relation to timing considerations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/52—Queue scheduling by attributing bandwidth to queues
- H04L47/521—Static queue service slot or fixed bandwidth allocation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
- H04L47/622—Queue service order
- H04L47/6225—Fixed service order, e.g. Round Robin
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
- H04L49/3018—Input queuing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/50—Overload detection or protection within a single switching element
- H04L49/501—Overload detection
- H04L49/503—Policing
Description
【発明の属する技術分野】
本発明は、入力回線を介して入力されたパケットを複数の出力回線に振り分けて出力するパケットスイッチに関する。
【0002】
【従来の技術】
一般家庭におけるインターネットユーザの増加やインターネットビジネスの成長を背景として、インターネットバックボンネットワークの大容量化および高品質化が求められている。現在のインターネットは、品質保証のないベストエフォート型通信が主流であるが、次世代のインターネットでは、ベストエフォート型通信に加えて、音声やビデオ等のリアルタイムデータ通信の提供が期待されている。このため、ネットワークノードは、様々なトラヒックを柔軟に収容可能なテラビットクラスのスイッチング容量を有し、様々な通信サービスに適したサービス品質QoS(Quality of Service)を提供する必要がある。現在、テラビットクラスのスイッチング容量を有するノードを実現する手段としては、メモリアクセス速度の高速化が可能な入力バッファ型パケットスイッチが有望であると考えられている。
【0003】
ところで、入力バッファ型パケットスイッチにおけるスケジューリングアルゴリズムは、従来から様々なものが提案されている。これらをスケジューリング機能の配備方法に着目して整理すると、インタフェースカード等にスケジューリング機能を分散して配備する方法と、専用のカード等にスケジューリング機能を集中して配備する方法とに大別することができる。
【0004】
図22および図23は、従来の入力バッファ型パケットスイッチにおけるスケジューリング機能の配備状態を示す図である。図22にはスケジューリング機能を分散して配備したパケットスイッチの構成が示されている。図23にはスケジューリング機能を集中して配備したパケットスイッチの構成が示されている。
【0005】
図22に示すように、スケジューリング機能を分散配備した入力バッファ型パケットスイッチには、入力バッファ(BUF)とともにスケジューラが備わったインタフェースカード100が入力回線の数だけ設けられている。隣接するインタフェースカード100内のスケジューラ同士を相互接続することにより、各スケジューラ間でスケジューリング情報の送受信(未確定回線の通知)が可能になり、全ての入力回線のスケジューリングが実施される。入力回線数が増減した場合には、入力回線数に合わせてインタフェースカード100の数も増減させればよいため、図22に示した構成を有する入力バッファ型パケットスイッチは、拡張性に優れるという利点を有する。
【0006】
一方、図23に示すように、スケジューリング機能を集中配備した入力バッファ型パケットスイッチは、全ての入力回線のスケジューラ機能部(SCH)を一つのスケジューラカード110に集約しており、これによって全ての入力回線のスケジューリングが実施される。各スケジューラ機能部間を接続する配線の距離が短いため、この配線により生じる遅延が少なく、信号の遅延時間に起因する実装時の制約が少ないという利点がある。
【0007】
【発明が解決しようとする課題】
ところで、スケジューリング機能を分散配備した従来の入力バッファ型パケットスイッチは、実装された各インタフェースカード100に備わったスケジューラ間を相互接続する必要があるため、接続線の配線長による遅延量が多くなり、高速なパケットスイッチでは、実装時の制約が多いという問題があった。
【0008】
また、スケジューリング機能部を集中配備した従来の入力バッファ型パケットスイッチは、実際に収容される入力回線数が少ない場合であっても、スケジューラカード110には、常に最大数のスケジューラ機能部を備えておく必要があり、しかも実装後はその数が固定であるため、無駄が多いとともに拡張性に欠けるという問題があった。
【0009】
本発明は、このような点に鑑みて創作されたものであり、その目的は、実装時の制約が少なく、無駄な構成を低減でき、しかも拡張性を有するパケットスイッチを提供することにある。
【0010】
【課題を解決するための手段】
上述した課題を解決するために、本発明のパケットスイッチは、N個の入力バッファ部とα個のスケジューラ部とスイッチ部とを備えている。N個の入力バッファ部は、N本の入力回線のそれぞれに対応して設けられ、対応する入力回線を介して入力されるパケットを格納する。α個のスケジューラ部は、それぞれが独立したスケジューリング処理を行うことにより、N個の入力バッファ部のそれぞれに格納されたパケットの送出先となるM本の出力回線のいずれかを決定する。スイッチ部は、N個の入力バッファ部のそれぞれから出力されるパケットを、スケジューラ部によって決定された送出先となる出力回線に出力する。上述したN個の入力バッファ部においてα個のスケジューラ部によるスケジューリング処理の結果を巡回的に使用する。複数のスケジューラ部は互いに独立してスケジューリング処理を行っているため、これらの間の競合制御等を行う必要がなく、このための信号線による信号の遅延等の問題もないことから、実装時の制約が大幅に緩和される。また、スケジューラ部は必要な数だけ用意すればよいため無駄な構成がなく、しかも後に追加することも可能であるため、拡張性に富んだパケットスイッチを実現することができる。
【0011】
特に、上述したスケジューラ部によるスケジューリング処理は、N個の入力バッファ部から送られてくるスケジューリング要求通知に対応して行われており、N個の入力バッファ部のそれぞれは、スケジューリング要求通知の送出先となるスケジューラ部を分散させることが望ましい。スケジューリング要求通知の送出先となるスケジューラ部を分散させることにより、処理の負担がスケジューラ部間で偏ることを防止することができる。
【0012】
また、上述した入力バッファ部は、M本の出力回線のそれぞれを送出先とするパケットを格納するM個のキューを有しており、これらM個のキューのそれぞれ毎にスケジューリング要求通知の送出先となるスケジューラ部を巡回させることが望ましい。スケジューリング要求通知の送出先となるスケジューラ部をキュー毎に巡回させることにより、各スケジューラ部に対するスケジューリング要求通知を分散させることができる。
【0013】
また、上述した入力バッファ部は、入力回線毎にスケジューリング要求通知の送出先となるスケジューラ部を巡回させることが望ましい。スケジューリング要求通知の送出先となるスケジューラ部を入力回線毎に巡回させることにより、各スケジューラ部に対するスケジューリング要求通知を分散させることができる。
【0014】
上述した入力バッファ部は、単位時間毎にスケジューリング要求通知の送出先となるスケジューラ部を巡回させることが望ましい。スケジューリング要求通知の送出先となるスケジューラ部を単位時間毎に巡回させることにより、各スケジューラ部に対するスケジューリング要求通知を分散させることができる。
【0015】
また、上述した入力バッファ部は、α個のスケジューラ部のそれぞれについて未処理のスケジューリング要求通知の数を調べ、この数が少ないスケジューラ部に次のスケジューリング要求通知を送ることが望ましい。実際に送出されたスケジューリング要求通知の数が少ないスケジューラ部に優先的にスケジューリング要求通知を送ることにより、各スケジューラ部に対するスケジューリング要求通知を均等に分散させることができる。
【0016】
また、上述した入力バッファ部は、α個のスケジューラ部のそれぞれに送出したスケジューリング要求通知の数を管理しており、この数が所定数に達したスケジューラ部に対するスケジューリング要求通知の送出動作を、この数が所定数より少なくなるまで遅らせることが望ましい。入力バッファ部にスケジューリング要求通知の数を管理する機能を分散させることにより、各スケジューラ部の処理負担を軽減することができる。
【0017】
また、上述したスケジューラ部がスケジューリング処理に要する時間が、パケットの最小送出間隔のL倍であるときに、スケジューラ部の数αは、倍数L以上の値に設定されていることが望ましい。スケジューラ部の数αを倍数L以上に設定することにより、α個のスケジューラ部全体として遅延なくスケジューリング処理を行うことができる。
【0018】
また、L−αが1以上に設定されており(すなわち、L個より多いスケジューラが備わっており)、N個の入力バッファ部においてα個のスケジューラ部の全てのスケジューリング処理の結果を巡回的に使用することが望ましい。処理の遅延を来さないために必要な数よりも多い数のスケジューラ部を備えることにより、その一部に障害が発生した場合であっても、残りのスケジューラ部によって正常にスケジューリング処理を継続することができる。
【0019】
また、L−αが1以上に設定されている場合に、α−L個のスケジューラ部を冗長系として用いるとともに、この冗長系以外のスケジューラ部に障害が発生したときに、代わりに冗長系のスケジューラ部を用いることが望ましい。障害発生時に冗長系のスケジューラ部を用いてスケジューリング処理を行うことにより、遅延を来すことなく正常なスケジューリング処理を継続することができる。
【0020】
また、入力回線の数Nと出力回線の数Mに応じて、スケジューラ部の数αおよびスケジューリング処理の時間を可変に設定することが望ましい。回線数が少ない場合にはスケジューラ部の数や処理時間を少なく設定し、反対に回線数が多い場合にはスケジューラ部の数や処理時間を多く設定すればよいため、スイッチ部に収容する回線数等に応じて無駄のない最適な構成を実現することができる。
【0021】
また、上述したスケジューラ部は、未使用回線を含むスケジューリング処理を行っており、実際に使用している入力回線および出力回線と未使用回線との間の読み替え処理を行うことにより、1回のスケジューリング処理によって複数のスケジューリング処理結果を得ることが望ましい。スケジューラ部の数や処理時間を変更することなく、回線数の変更に対応することができ、拡張性に富んだパケットスイッチを実現することができる。
【0022】
【発明の実施の形態】
以下、本発明を適用した一実施形態のパケットスイッチについて詳細に説明する。
図1は、本発明を適用した一実施形態のパケットスイッチの構成を示す図である。図1に示すように、本実施形態のパケットスイッチ100は、スイッチ部(SW)10、N個の入力バッファ部20、α個のスケジューラ部30を含んで構成されている。
【0023】
スイッチ部10は、N本の入力回線のいずれかから入力されたパケットをM本の出力回線のいずれかに出力する。本実施形態では、このスイッチ部10は、内部にパケットを保持することができないバッファレスタイプのものが用いられている。N個の入力バッファ部20のそれぞれは、スイッチ部10に収容されたN本の入力回線のそれぞれに対応して設けられている。各入力バッファ部20は、スイッチ部10に収容されたM本の出力回線に対応したM個の論理キューVOQ(Virtual Output Queue)を有しており、1対1に対応する入力回線を介して入力された到着パケットを、出力先となる出力回線に対応する論理キューVOQに蓄積するとともに、いずれかのスケジューラ部30から出力許可を示すグラント通知が送られてきたときに、このグラント通知で指定された論理キューVOQの先頭パケットを読み出す。α個のスケジューラ部30のそれぞれは、各入力回線を介して入力されたパケットの送出先となる出力回線を決定するスケジューリング処理を行う。このようにしてα個のスケジューラ部30のそれぞれにおいてスケジューリング処理を並行して行うことにより、各スケジューラ部30による処理負担を軽減することができる。本明細書では、このようにして複数のスケジューラ部30によって並行して行うスケジューリング処理を「負荷分散スケジューリング処理」と称する。
【0024】
図2は、入力バッファ部20の詳細構成を示す図である。図2に示すように、入力バッファ部20は、上述したM個の論理キューVOQを含むパケットバッファ22の他に、要求振り分け部24および読み出し指示部26を有している。要求振り分け部24は、パケットバッファ22内の各論理キューVOQに蓄積されたパケットに対応するスケジューリング要求通知であるリクエスト通知を、α個のスケジューラ部30のそれぞれに均等に分散させて送出する。読み出し指示部26は、α個のスケジューラ部30から送られてくるグラント通知の内容にしたがって、パケットの送出タイミングが到来したパケットバッファ22内の論理キューVOQに読み出し指示を与える。
【0025】
図3は、スケジューラ部30の詳細構成を示す図である。図3に示すように、スケジューラ部30は、要求数管理部32およびスケジューリング制御部34を有している。要求数管理部32は、入力回線と論理キューVOQの組合せに対応するリクエスト通知が送られてきたときに、この組合せに対応するリクエスト数をインクリメントし、このリクエスト数をスケジューリング確定時にデクリメントする。スケジューリング制御部34は、所定のスケジューリングアルゴリズムにしたがって、ある時刻Tに送出する各入力回線毎のパケットの出力先回線を決定する。具体的には、スケジューリング制御部34は、入力回線のそれぞれについて、要求数管理部32によってカウントされているリクエスト数が1以上の出力回線の中からいずれかを選択する。
【0026】
本実施形態では、α個のスケジューラ部30によって並列にスケジューリング処理が行われるため、1個のスケジューラ部によってスケジューリング処理を行う場合に比べて、各スケジューラ部30は、α倍の時間をかけてスケジューリング処理を行うことができる。例えば、各入力回線を介して入力されたパケットを、対応する出力回線に送出するために必要な時間を「1パケット時間」とすると、各スケジューラ部30は、N本の入力回線のそれぞれを介して入力されたパケットの送出先となる出力回線を決定するスケジューリング処理をαパケット時間以内に行えばよい。
【0027】
本実施形態のパケットスイッチ100はこのような構成を有しており、次にその動作をスケジューリング処理に着目して説明する。
(1)入力バッファ部20の動作
(1a)対応する入力回線を介してパケットが入力された場合に、パケットバッファ22は、このパケットの送出先となる出力回線に対応する論理キューVOQにこのパケットを格納する。
【0028】
(1b)パケットバッファ22内のいずれかの論理キューVOQにパケットが格納されると、要求振り分け部24は、このパケットに対応するスケジューリング処理を要求するリクエスト通知をいずれかのスケジューラ部30に送る。このとき、リクエスト通知の送信先となるスケジューラ部30を分散させる。
【0029】
(1c)いずれかのスケジューラ部30から送信許可を示すグラント通知が送られてくると、読み出し指示部26は、このグラント通知によって指定された論理キューVOQの先頭のパケットを、この論理キューVOQに1対1に対応する出力回線に向けて出力する動作をパケットバッファ22に指示する。
【0030】
(2)スケジューラ部30の動作
α個のスケジューラ部30の動作は互いに独立であり、各入力バッファ部20から送られてくるリクエスト通知の数(リクエスト数)を論理キューVOQ毎に管理する。したがって、各スケジューラ部30は、自分宛てに送られてきたリクエスト通知の有無を基に、スケジューリング処理を実施する。また、スケジューリングアルゴリズムは、従来から用いられている各種の手法を採用することができる。以下では、ラウンドロビンを用いて、各出力回線毎に一つの論理キューVOQを選択する場合の動作を説明する。
【0031】
(2a)各入力バッファ部20からリクエスト通知が送られてくると、要求数管理部32は、リクエスト通知の内容を調べ、入力回線と論理キューVOQの組合せ毎にリクエスト数をカウントする。
(2b)スケジューリング制御部34は、一の入力回線に着目し、送られてきたリクエスト通知によって指定されており、しかもそれまでのスケジューリング処理によって選択されていない(未確定の)論理キューVOQの中から一つを選択する。この入力回線毎に論理キューVOQを選択する処理は、全ての入力回線について一巡するまで順番に行われる。これにより、全ての入力回線のそれぞれに入力されたパケットの出力先となる出力回線が決定される。
【0032】
(2c)スケジューリング制御部34は、入力回線毎に選択した論理キューVOQを指定したグラント通知を、各入力バッファ部20内の読み出し指示部26に送る。
具体例1
図4は、負荷分散スケジューリング処理の具体例を示す図である。同図には、説明を簡略化するために、入力回線数、出力回線数、スケジューラ部30の数αが全て2の場合に対応したスケジューリング処理の具体例が示されている。以下の説明および図4においては、2本の入力回線、2本の出力回線、各出力回線に対応した論理キューVOQのそれぞれに通し番号#0、#1が付されており、これらの識別が行われている。また、2つのスケジューラ部30の一方をスケジューラ部#0(SCH#0)、他方をスケジューラ部#1(SCH#1)とする。同様に、入力回線#0、#1のそれぞれに対応する2つの入力バッファ部20の一方を入力バッファ部#0、他方を入力バッファ部#1とする。また、これらに含まれる各構成についても、「#0」あるいは「#1」を名称の後に付して、対応する入力回線を区別するものとする。
【0033】
入力バッファ部の動作
一方の入力バッファ部#0には、入力回線#0を介して4つのパケット(1)、(2)、(3)、(4)が順番に入力される。この中で、第1、第2、第3パケット(1)、(2)、(3)は送出先として出力回線#0が指定されており、第4パケット(4)のみが送出先として出力回線#1が指定されているものとする。したがって、入力バッファ部#0内のパケットバッファ#0は、第1、第2、第3パケット(1)、(2)、(3)を論理キューVOQ#0に格納し、第4パケット(4)を論理キューVOQ#1に格納する。要求振り分け部#0は、第1、第3、第4のパケット(1)、(3)、(4)が到着したときに、一方のスケジューラ部#0にリクエスト通知を送るとともに、第2のパケット(2)が到着したときに、他方のスケジューラ部#1にリクエスト通知を送る。このリクエスト通知には、入力回線番号、出力回線番号(論理キューVOQの番号)、イネーブル等が含まれている。
【0034】
また、他方の入力バッファ部#1には、入力回線#1を介して第5、第6のパケット(5)、(6)が順番に入力される。これら2つのパケット(5)、(6)は、両方とも送出先として出力回線#1が指定されているものとする。したがって、入力バッファ部#1内のパケットバッファ#1は、これら第5および第6のパケット(5)、(6)を論理キューVOQ#1に格納する。要求振り分け部#1は、第5のパケット(5)が到着したときに、一方のスケジューラ部#0にリクエスト通知を送るとともに、第6のパケット(6)が到着したときに、他方のスケジューラ#1にリクエスト通知を送る。
【0035】
スケジューラ部の動作
スケジューラ部#0、#1は、独立して動作しており、それぞれに含まれる要求数管理部#0、#1によって、受信したリクエスト通知の数を論理キューVOQ毎に管理する。また、スケジューラ部#0、#1は、それぞれの要求管理部#0、#1によって管理されるリクエスト数に基づいて、以下に示す負荷分散スケジューリング処理を実施する。なお、ラウンドロビンを用いたスケジューリング処理が、入力回線#1、入力回線#0の順番で行われるものとする。
【0036】
例えば、スケジューラ部#1内のスケジューリング制御部#1は、まず入力回線#1に対応する全ての論理キューVOQについてリクエスト通知の有無を判定し、リクエスト通知が存在し、かつパケットの送出先が未確定の論理キューVOQの中から、ラウンドロビンを用いて一つを選択する。図4に示した例では、入力回線#1(i#1)については論理キューVOQ#1のみに対応するリクエスト通知が存在し、しかもこの論理キューVOQ#1は未確定状態にあるため、論理キューVOQ#1が選択される。
【0037】
次に、スケジューラ部#1内のスケジューリング制御部#1は、上述した処理によって選択された論理キューVOQ#1を確定済みとし、入力回線番号を変えて次の入力回線#0について同様のスケジューリング処理を実施する。図4に示した例では、入力回線#0については論理キューVOQ#0、#1のそれぞれに対応するリクエスト通知が存在し、この中で論理キューVOQ#1は確定済みであるため、論理キューVOQ#0が選択される。
【0038】
このようにして、スケジューラ部#1内のスケジューリング制御部#1は、α(=2)パケット時間内で、全ての入力回線分のスケジューリング処理を行う。同様にして、スケジューラ部#0内のスケジューリング制御部#0においても、αパケット時間内で、全ての入力回線分のスケジューリング処理が行われる。その結果、ある周期Aにおけるスケジューラ#0、#1のスケジューリング結果が以下のように決定される。
【0039】
これらのα個(2個)の各スケジューラ部#0、#1の各スケジューリング結果は、全ての入力バッファ部#0、#1に対してグラント通知として送られる。入力バッファ部#0、#1内の読み出し指示部#0、#1は、1パケット時間毎に異なるスケジューラ部#0、#1のスケジューリング結果を巡回的に使用し、パケットの送出先として指定された出力回線に対応する論理キューVOQの先頭からパケットを読み出す指示をパケットバッファ#0、#1に送る。
【0040】
図4に示した例では、上述したスケジューリング処理が行われた周期Aの次の周期Bにおいて、最初の1パケット時間(T=a)では、スケジューラ部#0のスケジューリング結果が使用される。すなわち、入力バッファ部#0内の論理キューVOQ#1の先頭パケット(第4のパケット(4))が出力回線#1に向けて送出される。
【0041】
また、周期Bに含まれる次の1パケット時間(T=a+1)では、スケジューラ部#1のスケジューリング結果が使用される。すなわち、入力バッファ部#0内の論理キューVOQ#0の先頭パケット(第1のパケット(1))が出力回線#0に向けて送出されるとともに、入力バッファ部#1内の論理キューVOQ#1の先頭パケット(第5のパケット(5))が出力回線#1に向けて送出される。
【0042】
ここで、各入力バッファ部#0、#1から送られるリクエスト通知と、実際に送出されるパケットとの関係に着目すると、1対1になっていないことがわかる。例えば、入力バッファ部#0に第1のパケット(1)が到着して論理キューVOQ#0に格納された際にリクエスト通知(1)がスケジューラ部#0に送られるが、この第1のパケット(1)が実際に出力回線#0に向けて送出されるのは、周期Bに含まれる後半の1パケット時間(T=a+1)のタイミングであり、しかもスケジューラ部#1によるスケジューリング結果に基づいて送出される。これは、リクエスト通知を各スケジューラ部#0、#1に分散させたことによる同一論理キューVOQ内でのパケットの追い越しの発生や、HOL(Head Of Line)ブロッキング等の影響を回避するために、リクエスト通知とグラント通知との対応を考えず、送られてきたグラント通知に対して常に論理キューVOQの先頭のパケットを読み出すようにしているためである。
【0043】
具体例2
図5は、負荷分散スケジューリング処理の他の具体例を示す図である。例えば、入力回線数、出力回線数、スケジューラ部30の数αが全て4の場合に対応したスケジューリング処理の具体例が示されている。また、図5において、SCH#0〜SCH#3は4つのスケジューラ部30(スケジューラ部#0〜#3)のそれぞれを示している。また、「Scheduling → Result#0-1」は、スケジューリング処理によって「#0−1」で特定されるスケジューリング結果が得られたことを示している。
【0044】
図5に示す具体例では、4つのスケジューラ部#0〜#3が独立にスケジューリング処理を行っており、4パケット時間に相当する第1の周期(T=0〜3)の最後に4つのスケジューリング結果(Result#0-1〜#3-1)が得られる。これらのスケジューリング結果に基づいて、次の4パケット時間に相当する第2の周期(T=4〜7)におけるパケット送出が行われる。
【0045】
具体的には、第2の周期の最初の1パケット時間(T=4)において、スケジューラ部#0(SCH#0)によるスケジューリング結果「Result#0-1」が用いられる。この結果、以下に示す内容でパケットの送出が実施される。なお、左の項は、パケットが入力される入力回線を示しており、右の項は、スケジューリング結果に基づいてこのパケットがどの出力回線に送出されたかを示している。
【0046】
・入力回線#0(i#0) → 出力回線#2(o#2)
・入力回線#1(i#1) → 出力回線#0(o#0)
・入力回線#2(i#2) → 出力回線#3(o#3)
・入力回線#3(i#3) → 出力回線#1(o#1)
また、第2の周期の次の1パケット時間(T=5)において、スケジューラ部#1(SCH#1)によるスケジューリング結果「Result#1-1」が用いられる。この結果、以下に示す内容でパケットの送出が実施される。
【0047】
・入力回線#0(i#0) → 出力回線#2(o#2)
・入力回線#1(i#1) → (未送出)
・入力回線#2(i#2) → 出力回線#0(o#0)
・入力回線#3(i#3) → 出力回線#3(o#3)
第2の周期の次の1パケット時間(T=6)において、スケジューラ部#2(SCH#2)によるスケジューリング結果「Result#2-1」が用いられる。この結果、以下に示す内容でパケットの送出が実施される。
【0048】
・入力回線#0(i#0) → (未送出)
・入力回線#1(i#1) → 出力回線#1(o#1)
・入力回線#2(i#2) → 出力回線#0(o#0)
・入力回線#3(i#3) → 出力回線#2(o#2)
第2の周期の最後の1パケット時間(T=7)において、スケジューラ部#3(SCH#3)によるスケジューリング結果「Result#3-1」が用いられる。この結果、以下に示す内容でパケットの送出が実施される。
【0049】
・入力回線#0(i#0) → 出力回線#0(o#0)
・入力回線#1(i#1) → 出力回線#2(o#2)
・入力回線#2(i#2) → 出力回線#1(o#1)
・入力回線#3(i#3) → 出力回線#3(o#3)
このように、4つのスケジューラ部#0〜#3のそれぞれが独立にスケジューリング処理を行うことにより、互いに競合する内容のスケジューリング結果が得られても、各スケジューラ部#0〜#3によるスケジューリング結果が用いられるタイミングが異なるため、特に不都合は生じない。このため、各スケジューラ部#0〜#3間の競合制御を行う接続線等が不要であり、この接続線によって生じる信号の遅延がなくなるため、実装時の制約が大幅に緩和される。また、スケジューラ部は必要な数だけ用意すればよいため無駄な構成がなく、しかも後に追加することも可能であるため、拡張性に富んだパケットスイッチ100を実現することができる。
【0050】
なお、上述した説明では、α個のスケジューラ部#0、…、#α−1のそれぞれにおいて得られたスケジューリング結果を各入力バッファ部に同時に送り、各入力バッファ部において、1パケット時間毎に異なるスケジューラ部によるスケジューリング結果を巡回的に用いるようにしたが、スケジューラ部からスケジューリング結果を送るタイミングを各スケジューラ部毎に1パケット時間ずらして順番に各入力バッファ部に送るようにしてもよい。
【0051】
リクエスト通知の分散
ところで、上述したようにα個のスケジューラ部30を用いて負荷分散スケジューリング処理を行うためには、各入力バッファ部20から送出するリクエスト通知を全てのスケジューラ部30に均等に分散させることが望ましい。
【0052】
次に、入力バッファ部20からスケジューラ部30に送るリクエスト通知の分散方法について説明する。
論理キューVOQ毎にリクエスト通知を分散させる場合
図6は、入力バッファ部20内の論理キューVOQ毎にリクエスト通知を分散させる場合の具体例を示す図である。なお、図6および以下に示す図7〜図9においては、4つの入力バッファ部20(#0〜#3)および4つのスケジューラ部30(#0〜#3)が備わっているものとする。
【0053】
各入力バッファ部#0〜#3内の要求振り分け部#0〜#3は、論理キューVOQ毎の振り分けポインタを有しており、入力回線を介してパケットが到着したときに、この振り分けポインタの値が示すスケジューラ部に対してリクエスト通知を送る。図6では入力バッファ部#0、#3内の丸付き数字によってポインタ値が示されている。
【0054】
以下では、入力回線#0に対応する入力バッファ部#0内の要求振り分け部#0に着目して具体的な動作を説明する。なお、初期状態において、入力回線#0に対応する4つの論理キュー#0〜#3の各振り分けポインタの値が0、1、3、1に設定されているものとする。
【0055】
T=0において、送出先として出力回線#3(o#3)が指定されたパケット(0_1)が到着すると、パケットバッファ#0は、論理キューVOQ#3にこのパケットを格納する。また、要求振り分け部#0は、論理キューVOQ#3に対応する振り分けポインタの値「1」を参照することにより、この値に対応するスケジューラ部#1にリクエスト通知を送る。リクエスト通知送出後、論理キューVOQ#3に対応する振り分けポインタの値が更新されて「2」になる。
【0056】
T=1において、送出先として出力回線#0(o#0)が指定されたパケット(0_2)が到着すると、パケットバッファ#0は、論理キューVOQ#0にこのパケットを格納する。また、要求振り分け部#0は、論理キューVOQ#0に対応する振り分けポインタの値「0」を参照することにより、この値に対応するスケジューラ部#0にリクエスト通知を送る。リクエスト通知送出後、論理キューVOQ#0に対応する振り分けポインタの値が更新されて「1」になる。
【0057】
T=2において、送出先として出力回線#3(o#3)が指定されたパケット(0_3)が到着すると、パケットバッファ#0は、論理キューVOQ#3にこのパケットを格納する。また、要求振り分け部#0は、T=0において更新された論理キューVOQ#3の振り分けポインタの値「2」を参照することにより、この値に対応するスケジューラ部#2にリクエスト通知を送る。リクエスト通知送出後、論理キューVOQ#3に対応する振り分けポインタの値が更新されて「3」になる。
【0058】
T=4において、送出先として出力回線#0(o#0)が指定されたパケット(0_4)が到着すると、パケットバッファ#0は、論理キューVOQ#0にこのパケットを格納する。また、要求振り分け部#0は、T=1において更新された論理キューVOQ#0の振り分けポインタの値「1」を参照することにより、この値に対応するスケジューラ部#1にリクエスト通知を送る。リクエスト通知送出後、論理キューVOQ#0に対応する振り分けポインタの値が更新されて「2」になる。
【0059】
このように、各入力バッファ部#0〜#3において、一つの論理キューVOQに対応して生成されるリクエスト通知の送出先をα個のスケジューラ部#0〜#α−1に均等に分散させることにより、各入力バッファ部#0〜#N−1から送出されるリクエスト通知の送出先をスケジューラ部#0〜#α−1のそれぞれに分散させることができる。
【0060】
入力回線毎にリクエスト通知を分散させる場合
図7は、入力回線毎にリクエスト通知を分散させる場合の具体例を示す図である。
各入力バッファ部#0〜#3内の要求振り分け部#0〜#3は、全ての論理キューVOQに共通の振り分けポインタを有しており、入力回線を介してパケットが到着したときに、この振り分けポインタが示すスケジューラ部#0〜#3に対してリクエスト通知を送る。図7では入力バッファ部#0、#3内の丸付き数字によってポインタ値が示されている。
【0061】
以下では、入力回線#0に対応する入力バッファ部#0内の要求振り分け部#0に着目して具体的な動作を説明する。なお、初期状態において、入力回線#0に対応する振り分けポインタの値が「0」に設定されているものとする。
T=0において、送出先として出力回線#3(o#3)が指定されたパケット(0_1)が到着すると、パケットバッファ#0は、論理キューVOQ#3にこのパケットを格納する。また、要求振り分け部#0は、共通の振り分けポインタの値「0」を参照することにより、この値に対応するスケジューラ部#0にリクエスト通知を送る。リクエスト通知送出後、振り分けポインタの値が更新されて「1」になる。
【0062】
T=1において、送出先として出力回線#0(o#0)が指定されたパケット(0_2)が到着すると、パケットバッファ#0は、論理キューVOQ#0にこのパケットを格納する。また、要求振り分け部#0は、T=0において更新された振り分けポインタの値「1」を参照することにより、この値に対応するスケジューラ部#1にリクエスト通知を送る。リクエスト通知送出後、振り分けポインタの値がさらに更新されて「2」になる。
【0063】
T=2以後についても同様であり、パケットが到着していずれかの論理キューVOQに格納されると、共通の振り分けポインタの値が参照されてリクエスト通知の送出先となるスケジューラ部#0〜#3が決定される。
このように、各入力バッファ部#0〜#3において、各論理キューVOQに対応して生成されるリクエスト通知の送出先を共通の振り分けポインタを用いてα個のスケジューラ部#0〜#α−1に均等に分散させることにより、各入力バッファ部#0〜#N−1から送出されるリクエスト通知の送出先をスケジューラ部#0〜#α−1に分散させることができる。
【0064】
単位時間ごとにリクエスト通知を分散させる場合
図8は、単位時間毎にリクエスト通知を分散させる場合の具体例を示す図である。
各入力バッファ部#0〜#3内の要求振り分け部#0〜#3は、単位時間T毎(1パケット時間毎)に更新される振り分けポインタを有しており、入力回線を介してパケットが到着したときに、この振り分けポインタが示すスケジューラ部に対してリクエスト通知を送る。図8では入力バッファ部#0、#3内の丸付き数字によってポインタ値が示されている。
【0065】
以下では、入力回線#0に対応する入力バッファ部#0内の要求振り分け部#0に着目して具体的な動作を説明する。なお、T=0に対応して振り分けポインタの値が「0」に設定されているものとする。
T=0において、送信先として出力回線#3(o#3)が指定されたパケット(0_1)が到着すると、パケットバッファ#0は、論理キューVOQ#3にこのパケットを格納する。また、要求振り分け部#0は、T=0に対応する振り分けポインタの値「0」に基づいてスケジューラ部#0にリクエスト通知を送る。
【0066】
T=1において、送出先として出力回線#0(o#0)が指定されたパケット(0_2)が到着すると、パケットバッファ#0は、論理キューVOQ#0にこのパケットを格納する。また、要求振り分け部#0は、T=1に対応する振り分けポインタの値「1」に基づいてスケジューラ部30#1にリクエスト通知を送る。
【0067】
このようにして時間Tが経過する毎に振り分けポインタの値が巡回的に更新され、その値に対応するスケジューラ部#0〜#3のいずれかにリクエスト通知が送られる。したがって、T=3において到着するパケットがない場合には、T=3に対応する振り分けポインタの値「3」に基づいてスケジューラ部#3にリクエスト通知が送られずに、次のT=4において到着するパケット(0_4)に対応するリクエスト通知は、T=4に対応する振り分けポインタの値「0」に基づいてスケジューラ部#0に送られる。
【0068】
このように、各入力バッファ部#0〜#3において、各論理キューVOQに対応して生成されるリクエスト通知の送出先を、パケットの到着時間Tに対応して更新される振り分けポインタを用いてα個のスケジューラ部#0〜#α−1に均等に分散させることにより、各入力バッファ部#0〜#N−1から送出されるリクエスト通知の送出先を各スケジューラ部#0〜#α−1に分散させることができる。
【0069】
各スケジューラ部で管理しているリクエスト数を参照してリクエスト通知を分散させる場合
図9は、各スケジューラ部で管理しているリクエスト数を入力バッファ部20が参照してリクエスト通知を分散させる場合の具体例を示す図である。
【0070】
各入力バッファ部#0〜#3内の要求振り分け部#0〜#3は、パケットが到着したときに、このパケットと同じ入力回線および出力回線(論理キューVOQ)の組合せに対応するリクエスト通知がスケジューラ部#0〜#3のそれぞれにいくつあるかを参照し、最もリクエスト数が少ないスケジューラ部をこの到着パケットに対応するリクエスト通知の送出先として決定する。図9に示した4つのスケジューラ部#0〜#3の右側には、入力回線#0と論理キューVOQとの組合せに対応するリクエスト数が示されている。以下では、入力バッファ部#0内の要求振り分け部#0に着目して具体的な動作を説明する。
【0071】
T=0において、送信先として出力回線#3(o#3)が指定されたパケット(0_1)が到着すると、パケットバッファ#0は、論理キューVOQ#3にこのパケットを格納する。また、要求振り分け部#0は、4つのスケジューラ部#0〜#3内の要求数管理部#0〜#3が保持している情報を取得することにより、入力回線#0と送出先の出力回線#3(論理キューVOQ#3)が同じリクエスト数がいくつあるかを調べ、このリクエスト数が最も少ないスケジューラ部30を選択してリクエスト通知を送る。
【0072】
T=1以降についても同様であり、対応するリクエスト通知の数がその時点で最も少ないスケジューラ部#0〜#3を選択してリクエスト通知を送出する。
このように、各入力バッファ部#0〜#N−1において、全てのスケジューラ部#0〜#α−1で管理しているリクエスト数を取得し、最もリクエスト数が少ないスケジューラ部にリクエスト通知を送ることにより、各入力バッファ部#0〜#N−1から送出されるリクエスト通知をα個のスケジューラ部#0〜#α−1に均等に分散させることができる。
【0073】
リクエスト数の管理機能の分散配備
次に、各スケジューラ部30のみにおいてリクエスト数を管理するのではなく、スケジューラ部30と入力バッファ部20の両方にリクエスト数の管理機能を分散配備した場合のリクエスト振り分け方法について説明する。前提として、各スケジューラ部30内の要求数管理部32は、最低限必要な数だけリクエスト数を管理することができる要求管理機能を有しているものとする。また、各入力バッファ部20内の要求振り分け部24は、論理キューVOQ毎に各スケジューラ部30に送出されたリクエスト数を管理する機能(サブリクエストカウンタによって実現する)と、リクエスト未通知数を管理する機能(リクエストカウンタによって実現する)とを有しているものとする。
【0074】
例えば、各スケジューラ部30内の要求数管理部32が、各論理キューVOQ毎に2個のリクエスト通知を管理することができる機能を有するものとすると、入力バッファ部20内の要求振り分け部24からいずれかのスケジューラ部30にリクエスト通知を送出する場合に、対応する論理キューVOQのリクエスト数が2個未満のスケジューラ部30を選択するようにする。全てのスケジューラ部30がこの論理キューVOQについて2個のリクエスト通知を有している場合には、入力バッファ部20は、リクエスト通知の送出は行わずに、この論理キューVOQに対応するリクエストカウンタをインクリメントし、リクエスト数が2未満になったときにリクエスト通知を送出する。
【0075】
図10〜図14は、リクエスト数の管理機能を入力バッファ部20とスケジューラ部30に分散配備した場合の具体例を示す図である。これらの図では、説明を簡略化するために、入力回線#0(i#0)に対応する入力バッファ部#0において一つの論理キューVOQ#aに着目した場合の具体例が示されている。なお、スケジューラ部30の数を4とし、スケジューラ部30側における要求管理数の最大値を2とする。
【0076】
例えば、図10に示すように、T=aにおける初期状態として、スケジューラ部#0(SCH#0)には入力回線#0、論理キューVOQ#aに対応する1個のリクエスト通知が存在し、他のスケジューラ部#1〜#3(SCH#1〜SCH#3)にはそれぞれ2個のリクエスト通知が存在するものとする。
【0077】
この状態において、新たにパケットが到着すると、要求振り分け部#0は、リクエスト数が2未満であり、かつ最もリクエスト数が少ないスケジューラ部#0(SCH#0)にリクエスト通知を送るとともに、スケジューラ部#0に対応するサブリクエストカウンタの値を「2」に更新する。この結果、図11に示すように、T=a’において、全てのスケジューラ部#0〜#3に2個ずつのリクエスト通知が存在することになる。
【0078】
次に、T=a+1において新たにパケットが到着しても、この時点で全てのスケジューラ部#0〜#3に2個ずつのリクエスト通知があるため、要求振り分け部#0は、新たなリクエスト通知を送出することはせずに、未通知のリクエスト数を管理するために設けられているリクエストカウンタの値をインクリメントする(図12)。
【0079】
その後、スケジューラ部#2から入力バッファ部#0に対してグラント通知が送られてきて、入力バッファ部#0内の論理キュー#aからパケットが読み出されて出力回線#aに送出されると、要求振り分け部#0は、スケジューラ部#2に対応するサブリクエストカウンタの値をデクリメントする。この結果、図13に示すように、T=a+1’において、このサブリクエストカウンタの値が「1」に変更される。
【0080】
次に、要求振り分け部#0は、リクエストカウンタの値が1以上であり、しかもスケジューラ部#2に対応するサブリクエストカウンタの値が2未満になったことを検出し、このスケジューラ部#2に対してリクエスト通知を送る。また、リクエスト通知後(T=a+1”)、図14に示すように、要求振り分け部#0は、このスケジューラ部#2に対応するサブリクエストカウンタの値を「2」にインクリメントするとともに、リクエストカウンタの値を「0」にデクリメントする。
【0081】
このように、各入力バッファ部#0〜#3においてリクエスト数の管理を行うことにより、スケジューラ部#0〜#3のそれぞれでは少ないリクエスト数を管理するだけでスケジューリング処理を行うことができ、スケジューラ部#0〜#3における処理の負担を軽減することができる。
【0082】
スケジューラ部の冗長構成
次に、必要数以上の数のスケジューラ部30を備えた場合の冗長構成について説明する。
図15は、冗長系のスケジューラ部30を非固定にした場合の具体例を示す図である。例えば、各周期が4パケット時間に対応しており、スケジューラ部30の数を「5」とした場合の具体例が示されている。
【0083】
5つのスケジューラ部#0〜#4(SCH#0〜SCH#4)が正常に動作している場合には、それぞれにおいて独立にスケジューリング処理が行われ、全てのスケジューラ部#0〜#4のスケジューリング結果が巡回的に使用される。スケジューラ部#0〜#4のそれぞれは、4パケット時間で1回のスケジューリング処理を行うことが可能であるが、図15に示した例では、5パケット時間毎に各スケジューラ部#0〜#4のスケジューリング結果が使用されることになる。
【0084】
その後、周期Cにおいてスケジューラ部#1(SCH#1)に障害が発生すると、各入力バッファ部20では、次の周期Dからはこの障害が発生したスケジューラ部#1によるスケジューリング結果は使用せずに、他の4つのスケジューラ部#0、#2〜#4のスケジューリング結果のみを巡回的に使用する。
【0085】
また、周期Eにおいてスケジューラ部#1の障害が復旧した場合には、各入力バッファ部20は、次の周期Fからは再び全てのスケジューラ部#0〜#4のスケジューリング結果を巡回的に使用する。
図16は、冗長系のスケジューラ部30を固定にした場合の動作例を示す図である。例えば、スケジューラ部#4(SCH#4)は、冗長系(予備系)として備わったものであり、障害等が発生した場合にのみ使用される。
【0086】
4つのスケジューラ部#0〜#3が正常に動作している場合には、それぞれにおいて独立にスケジューリング処理が行われ、4つのスケジューラ部#0〜#3のそれぞれのスケジューリング結果が巡回的に利移用される。この場合の動作は、冗長系のスケジューラ部#4を有しない場合の動作と同じである。
【0087】
次に、周期Cにおいてスケジューラ部#1(SCH#1)に障害が発生すると、このスケジューラ部#1の代わりに冗長系のスケジューラ部#4が使用される。同じ機能を有するスケジューラ部#1とスケジューラ部#4とを入れ替えただけであるため、障害発生前と同様のスケジューリング処理を継続することができる。
【0088】
また、周期Eにおいてスケジューラ部#1の障害が復旧した場合には、再び冗長系のスケジューラ部#4が待機状態になり、スケジューラ部#1が使用されてスケジューリング処理が継続される。
このように、1つのスケジューラ部30がスケジューリング処理に要するパケット時間数よりも多くのスケジューラ部30を備えた冗長構成を採用することにより、障害が発生した場合であっても、この冗長分(図15、図16に示す例では1個)のスケジューラ部30に代わりの処理を行わせることが可能になるため、遅延を来すことなくスケジューリング処理を継続することができる。
【0089】
スケジューラ部の拡張性
次に、本実施形態のパケットスイッチ100に収容される入力回線の数や出力回線の数に応じてスケジューラ部30の数を変更する場合の拡張性について説明する。なお、以下では説明を簡略化するために、最大のスイッチ規模を4×4(入力回線数×出力回線数)とし、そのときのスケジューラ部30の数を4、各スケジューラ部30がスケジューリング処理に要する時間を4パケット時間(=4Tp)とする。また、このようなスケジューラ部30を用いてスイッチ規模が2×2のパケットスイッチのスケジューリング処理を行う場合を考えるものとする。
【0090】
図17は、最大規模4×4のパケットスイッチを構成した場合のスケジューリング処理の概要を示す図である。例えば、4個のスケジューラ部の中の一つに着目し、ラウンドロビンを用いてスケジューリング処理を行う場合の具体例が示されている。
【0091】
最初の周期#0において、入力回線#0、#1、#2、#3の順にスケジューリング処理が行われる。スケジューラ部#0〜#3のそれぞれがスケジューリング処理に必要な時間は4パケット時間(1τ)であるため、4パケット時間毎に各スケジューラ部によって1つのスケジューリング結果が得られる。図17に示した例では、周期#0において、以下に示すスケジューリング結果が得られる。
【0092】
・入力回線#0(i#0) → 出力回線#0(o#0)
・入力回線#1(i#1) → 出力回線#1(o#1)
・入力回線#2(i#2) → 出力回線#2(o#2)
・入力回線#3(i#3) → 出力回線#3(o#3)
また、次の周期#1において、入力回線#1、#2、#3、#0の順にスケジューリング処理が行われ、以下に示すスケジューリング結果が得られる。
【0093】
・入力回線#1(i#1) → 出力回線#1(o#1)
・入力回線#2(i#2) → 出力回線#3(o#3)
・入力回線#3(i#3) → 出力回線#2(o#2)
・入力回線#0(i#0) → 出力回線#0(o#0)
周期#2以降についても同様であり、スケジューリング処理の対象となる入力回線の処理順番を巡回させながら、各入力回線に対応する出力回線が各周期毎に決定される。
【0094】
このように、パケットスイッチ全体では、4つのスケジューラ部#0〜#3によって4パケット時間毎に4つのスケジューリング結果が得られる。平均すると、1パケット時間毎に1つのスケジューリング結果が得られることになり、スループットの劣化がないことがわかる。
【0095】
図18は、2×2の小規模のパケットスイッチを構成した場合のスケジューリング処理の概要を示す図である。図18には、図17に示した最大構成時と同じスケジューラ部を2つ用いた場合の具体例が示されている。
最初の周期#0において、入力回線#0、#1の順にスケジューリング処理が行われる。2つのスケジューラ部#0、#1のそれぞれは、4本の入力回線のそれぞれに対応する出力回線を決定する処理能力を有するが、図18に示す例では、処理対象となる入力回線は2本であるため、4パケット時間(1τ)毎にこれら2本の入力回線に対するスケジューリング処理が実施され、以下に示すスケジューリング結果が得られる。
【0096】
・入力回線#0(i#0) → 出力回線#0(o#0)
・入力回線#1(i#1) → 出力回線#1(o#1)
また、周期#1において、入力回線#1、#0の順にスケジューリング処理が行われ、以下に示すスケジューリング結果が得られる。
【0097】
・入力回線#1(i#1) → 出力回線#1(o#1)
・入力回線#0(i#0) → 出力回線#0(o#0)
周期#2以降についても同様であり、スケジューリング処理の対象となる入力回線の処理順番を巡回させながら、各入力回線に対応する出力回線が各周期毎に決定される。
【0098】
このように、入力回線数や出力回線数を減少させたことに伴ってスケジューラ部の数を減らしただけではスループットの低下を招くことになる。すなわち、2つのスケジューラ部#0、#1のそれぞれにおいてスケジューリング処理を行うために必要な時間は4パケット時間であることに変わりはなく、パケットスイッチ#0、#1の全体では、4パケット時間毎に2つのスケジューリング結果が得られることになる。したがって、4パケット時間の内の半分については、スケジューラ部#0、#1から入力バッファ部#0、#1のそれぞれに対してパケットの送出指示を行うことができず、スループットが半分に低下する。
【0099】
図19は、スループットの低下を防止した小規模のパケットスイッチにおけるスケジューリング処理の概要を示す図である。2×2のパケットスイッチにおいて2個のスケジューラ部によってスループットを低下させることなくスケジューリング処理を行うためには、図19に示すように、スケジューラ部#0、#1のそれぞれにおけるスケジューリング処理の所要時間を2パケット時間に設定する。処理対象となる入力回線数や出力回線数のそれぞれが半分になっているため、この所要時間の変更は可能である。
【0100】
最初の周期#0の前半において、入力回線#0、#1の順にスケジューリング処理が行われ、以下に示すスケジューリング結果が得られる。
・入力回線#0(i#0) → 出力回線#0(o#0)
・入力回線#1(i#1) → 出力回線#1(o#1)
また、この周期#0の後半において、入力回線#1、#0の順にスケジューリング処理が行われ、以下に示すスケジューリング結果が得られる。
【0101】
・入力回線#1(i#1) → 出力回線#1(o#1)
・入力回線#0(i#0) → 出力回線#0(o#0)
周期#1以降についても同様であり、前半と後半のそれぞれにおいて別々にスケジューリング処理が行われる。これにより、パケットスイッチ全体では、2パケット時間毎に2つのスケジューリング結果が得られる。平均すると、1パケット時間毎に1つのスケジューリング結果が得られることになり、スループットの劣化がないことがわかる。
【0102】
図20は、スループットの低下を防止した小規模のパケットスイッチにおけるスケジューリング処理の概要を示す図である。例えば、2個のスケジューラ部のそれれぞのスケジューリング時間は4パケット時間のままで、スループットを低下させることなくスケジューリング処理を行う場合の動作手順が示されている。
【0103】
具体的には、スケジューリング時間を変えない代わりに、各周期の中で複数のスケジューリング結果を導く方法が採用されている。すなわち、2×2の小規模スイッチの場合には、入力回線#2、#3と出力回線#2、#3に対するスケジューリング処理は行われないので、これらの未使用回線分の処理時間を利用して、1回のスケジューリング周期(1τ、4パケット時間)の中で2個のスケジューリング結果を導き出す。
【0104】
図20において、下線が付された入力回線#0、#1(i#0、i#1)は、それぞれ入力回線#2、#3の変わりにスケジューリング処理が行われることを示している。また、出力回線#0、#1(o#0、o#1)は、スケジューリング結果としてパケットの初出先として出力回線#2、#3が得られた場合に、それぞれを入力回線#0、#1に置き換えたものであることを示している。
【0105】
最初の周期#0において、入力回線#0、#1、#2、#3の順にスケジューリング処理が行われる。スケジューラ部#0、#1のそれぞれがスケジューリング処理に必要な時間は4パケット時間(1τ)であるため、4パケット時間毎に各スケジューラ部によって4本の入力回線#0〜#3に対応する1つのスケジューリング結果が得られる。ところで、上述したように、入力回線#2、#3は実際に存在せず、これらの代わりに入力回線#0、#1についてスケジューリング処理が行われるため、結果的に、スケジューラ部#0、#1のそれぞれは、4パケット時間毎に2つのスケジューリング結果を導き出すことになる。図20に示した例では、周期#0において、以下に示すスケジューリング結果が得られる。
【0106】
結果1:入力回線#0(i#0) → 出力回線#0(o#0)
結果1:入力回線#1(i#1) → 出力回線#1(o#1)
結果2:入力回線#0(i#0) → 出力回線#0(o#0)
結果2:入力回線#1(i#1) → 出力回線#1(o#1)
また、次の周期#1において、入力回線#1、#2、#3、#0の順にスケジューリング処理が行われ、以下に示すスケジューリング結果が得られる。
【0107】
結果1:入力回線#1(i#1) → 出力回線#1(o#1)
結果2:入力回線#0(i#0) → 出力回線#1(o#1)
結果2:入力回線#1(i#1) → 出力回線#0(o#0)
結果1:入力回線#0(i#0) → 出力回線#1(o#1)
このように、2つのスケジューラ部#0、#1のそれぞれは、4パケット時間の1周期の中で2つのスケジューリング結果を導き出しており、パケットスイッチ全体では、4パケット時間毎に2つのスケジューラ部#0、#1によって合計で4つのスケジューリング結果を得ることができる。平均すると、1パケット時間毎に1つのスケジューリング結果が得られることになり、スループットの劣化がないことがわかる。
【0108】
このように、本実施形態のパケットスイッチ100では、入力回線数や出力回線数に応じたスケジューラ部の数を設定するとともに、各スケジューラ部におけるスケジューリング処理の所要時間を変更することにより、スループットの低下を招くことなく、最適なスケジューリング処理を行うことができる。したがって、無駄な構成を低減するとともに拡張性に優れたパケットスイッチを実現することができる。
【0109】
次に、各スケジューラ部によるスケジューリング所要時間に対応する1周期の中で、複数のスケジューリング結果を導き出すスケジューリング処理の具体例を説明する。
図21は、1周期の中で複数のスケジューリング結果を導き出すスケジューリング処理の具体例を示す図であり、図20に示した周期#0におけるスケジューリング処理の内容が模式的に示されている。スケジューラ部#0、#1のそれぞれは、入力回線と論理キューVOQの組み合わせに対応するリクエスト通知の有無を管理している。例えば、入力回線#0については、出力回線#0と出力回線#1の両方に対するリクエスト通知が存在していることがわかる。この例では、2×2の小規模スイッチを想定しているため、入力回線#2、#3および出力回線#2、#3は使用されていない。このため、入力回線#0、#1のいずれかから出力回線#2、#3のいずれかにパケットを送出する旨の内容のリクエスト通知は存在しない。
【0110】
各スケジューラ部は、1周期の中で複数のスケジューリング結果を導き出すために、未使用回線に対応するスケジューリング処理を実施する。具体的には、入力回線#2に対応する処理を行うブロックに入力回線#0のリクエスト通知の内容をセットする。このとき、入力回線#0と出力回線#0とを組み合わせたリクエスト通知に対しては、入力回線#2と出力回線#2の組み合わせに変更した情報が代わりにセットされる。入力回線#0と出力回線#1とを組み合わせたリクエスト通知に対しては、入力回線#2と出力回線#3の組み合わせに変更した情報が代わりにセットされる。以下に、組合せを変更する場合の具体的な関係を示す。
【0111】
i#2−o#0 要求有無情報 ← i#0−o#2 要求有無情報
i#2−o#1 要求有無情報 ← i#0−o#3 要求有無情報
i#2−o#2 要求有無情報 ← i#0−o#0 要求有無情報
i#2−o#3 要求有無情報 ← i#0−o#1 要求有無情報
i#3−o#0 要求有無情報 ← i#1−o#2 要求有無情報
i#3−o#1 要求有無情報 ← i#1−o#3 要求有無情報
i#3−o#2 要求有無情報 ← i#1−o#0 要求有無情報
i#3−o#3 要求有無情報 ← i#1−o#1 要求有無情報
ここで、i#2等は入力回線番号を、o#0等は出力回線番号を、要求有無情報はリクエスト要求の有無を示す情報をそれぞれ示している。
【0112】
次に、図21を参照しながら具体的なスケジューリング処理の手順を説明する。
第1のスケジューリング対象は入力回線#0であり、これに対するスケジューリング処理は、未確定でしかもリクエスト通知が存在する出力回線の中から一つを選択することにより行われる。図21に示した例では、出力回線#0が選択される。このようにして選択された出力回線#0は、確定済みとなって未確定情報に反映され、次のスケジューリング対象に対するスケジューリング処理に受け渡される。
【0113】
第2のスケジューリング対象は入力回線#1であり、これに対するスケジューリング処理も、未確定でしかもリクエスト通知が存在する出力回線の中から一つを選択することにより行われる。図21に示した例では、既に出力回線#0が確定済みとなっており、出力回線#1が選択される。このようにして選択された出力回線#1は、確定済みとなって未確定情報に反映され、次のスケジューリング対象に対するスケジューリング処理に受け渡される。
【0114】
第3のスケジューリング対象は入力回線#2である。上述したように、この入力回線#2に対応して設定されている要求有無情報は、入力回線#0に対応するものであるため、実際には入力回線#0についてスケジューリング処理を行うことになる。入力回線#2に対するスケジューリング処理も、未確定でしかもリクエスト通知が存在する出力回線の中から一つを選択することにより行われる。図21に示した例では、この段階で、未確定でしかもリクエスト通知が存在する出力回線は、出力回線#2と出力回線#3であり、ここでは出力回線#2が選択される。このようにして選択された出力回線#2は、確定済みとなって未確定情報に反映され、次のスケジューリング対象に対するスケジューリング処理に反映される。
【0115】
なお、出力回線#2は実際には未使用であり、このような未使用回線に対するスケジューリング処理においては、その結果選択された出力回線番号をそのまま入力バッファ部20側に通知するのではなく、読み替え処理を行った後の出力回線番号が通知される。すなわち、入力回線#2は入力回線#0に、出力回線#2は出力回線#0に読み替えて通知が行われる。以下に、読み替え処理が行われる入力回線と出力回線の関係を示す。
【0116】
i#2−o#2 → i#0−o#0
i#2−o#3 → i#0−o#1
i#3−o#2 → i#1−o#0
i#3−o#3 → i#1−o#1
同様にして、第4のスケジューリング対象である入力回線#3についてもスケジューリング処理が行われ、その結果出力回線#3が選択される。入力回線#3、出力回線#3はともに未使用回線であるため、実際には、それぞれが入力回線#1、出力回線#1に読み替えられて入力バッファ部20に通知される。
【0117】
このように、未使用回線を利用してスケジューリング処理を行うことにより、スケジューリング処理の1周期の中で複数の結果を得ることができる。
(付記1)N本の入力回線のそれぞれに対応して設けられ、対応する前記入力回線を介して入力されるパケットを格納するN個の入力バッファ部と、
それぞれが独立したスケジューリング処理を行うことにより、前記N個の入力バッファ部のそれぞれに格納された前記パケットの送出先となるM本の出力回線のいずれかを決定するα個のスケジューラ部と、
前記N個の入力バッファ部のそれぞれから出力される前記パケットを、前記スケジューラ部によって決定された送出先となる前記出力回線に出力するスイッチ部と、
を備え、前記N個の入力バッファ部において前記α個のスケジューラ部によるスケジューリング処理の結果を巡回的に使用することを特徴とするパケットスイッチ。
(付記2)付記1において、
前記スケジューラ部によるスケジューリング処理は、前記N個の入力バッファ部から送られてくるスケジューリング要求通知に対応して行われており、
前記N個の入力バッファ部のそれぞれは、前記スケジューリング要求通知の送出先となる前記スケジューラ部を分散させることを特徴とするパケットスイッチ。
(付記3)付記2において、
前記入力バッファ部は、前記M本の出力回線のそれぞれを送出先とするパケットを格納するM個のキューを有しており、これらM個のキューのそれぞれ毎に前記スケジューリング要求通知の送出先となる前記スケジューラ部を巡回させることを特徴とするパケットスイッチ。
(付記4)付記2において、
前記入力バッファ部は、前記入力回線毎に前記スケジューリング要求通知の送出先となる前記スケジューラ部を巡回させることを特徴とするパケットスイッチ。
(付記5)付記2において、
前記入力バッファ部は、単位時間毎に前記スケジューリング要求通知の送出先となる前記スケジューラ部を巡回させることを特徴とするパケットスイッチ。
(付記6)付記2において、
前記入力バッファ部は、前記α個のスケジューラ部のそれぞれについて未処理の前記スケジューリング要求通知の数を調べ、この数が少ない前記スケジューラ部に次の前記スケジューリング要求通知を送ることを特徴とするパケットスイッチ。
(付記7)付記2において、
前記入力バッファ部は、前記α個のスケジューラ部のそれぞれに送出した前記スケジューリング要求通知の数を管理しており、この数が所定数に達した前記スケジューラ部に対する前記スケジューリング要求通知の送出動作を、この数が前記所定数より少なくなるまで遅らせることを特徴とするパケットスイッチ。
(付記8)付記1〜7のいずれかにおいて、
前記スケジューラ部が前記スケジューリング処理に要する時間が、前記パケットの最小送出間隔のL倍であるときに、
前記スケジューラ部の数αは、前記倍数L以上の値に設定されていることを特徴とするパケットスイッチ。
(付記9)付記8において、
L−αが1以上に設定されており、
前記N個の入力バッファ部において前記α個のスケジューラ部の全てのスケジューリング処理の結果を巡回的に使用することを特徴とするパケットスイッチ。
(付記10)付記8において、
L−αが1以上に設定されており、
L−α個の前記スケジューラ部を冗長系として用いるとともに、この冗長系以外の前記スケジューラ部に障害が発生したときに、代わりに冗長系の前記スケジューラ部を用いることを特徴とするパケットスイッチ。
(付記11)付記1〜10のいずれかにおいて、
前記入力回線の数Nと前記出力回線の数Mに応じて、前記スケジューラ部の数αおよび前記スケジューリング処理の時間を可変に設定することを特徴とするパケットスイッチ。
(付記12)付記1〜10のいずれかにおいて、
前記スケジューラ部は、未使用回線を含む前記スケジューリング処理を行っており、実際に使用している前記入力回線および前記出力回線と前記未使用回線との間の読み替え処理を行うことにより、1回の前記スケジューリング処理によって複数のスケジューリング処理結果を得ることを特徴とするパケットスイッチ。
【0118】
【発明の効果】
上述したように、本発明によれば、複数のスケジューラ部は互いに独立してスケジューリング処理を行っているため、これらの間の競合制御等を行う必要がなく、このための信号線による信号の遅延等の問題もないことから、実装時の制約が大幅に緩和される。また、スケジューラ部は必要な数だけ用意すればよいため無駄な構成がなく、しかも後に追加することも可能であるため、拡張性に富んだパケットスイッチを実現することができる。
【図面の簡単な説明】
【図1】一実施形態のパケットスイッチの構成図である。
【図2】入力バッファ部の詳細構成を示す図である。
【図3】スケジューラ部の詳細構成を示す図である。
【図4】負荷分散スケジューリング処理の具体例を示す図である。
【図5】負荷分散スケジューリング処理の他の具体例を示す図である。
【図6】論理キュー毎にリクエスト通知を分散させる場合の具体例を示す図である。
【図7】入力回線毎にリクエスト通知を分散させる場合の具体例を示す図である。
【図8】単位時間毎にリクエスト通知を分散させる場合の具体例を示す図である。
【図9】各スケジューラ部で管理しているリクエスト数を入力バッファ部が参照してリクエスト通知を分散させる場合の具体例を示す図である。
【図10】リクエスト数の管理機能を入力バッファ部とスケジューラ部に分散配備した場合の具体例を示す図である。
【図11】リクエスト数の管理機能を入力バッファ部とスケジューラ部に分散配備した場合の具体例を示す図である。
【図12】リクエスト数の管理機能を入力バッファ部とスケジューラ部に分散配備した場合の具体例を示す図である。
【図13】リクエスト数の管理機能を入力バッファ部とスケジューラ部に分散配備した場合の具体例を示す図である。
【図14】リクエスト数の管理機能を入力バッファ部とスケジューラ部に分散配備した場合の具体例を示す図である。
【図15】冗長系のスケジューラ部を非固定にした場合の具体例を示す図である。
【図16】冗長系のスケジューラ部を固定にした場合の具体例を示す図である。
【図17】最大規模4×4のパケットスイッチを構成した場合のスケジューリング処理の概要を示す図である。
【図18】2×2の小規模のパケットスイッチを構成した場合のスケジューリング処理の概要を示す図である。
【図19】スループットの低下を防止した小規模のパケットスイッチにおけるスケジューリング処理の概要を示す図である。
【図20】スループットの低下を防止した小規模のパケットスイッチにおけるスケジューリング処理の概要を示す図である。
【図21】1周期の中で複数のスケジューリング結果を導き出すスケジューリング処理の具体例を示す図である。
【図22】スケジューリング機能を分散して配備した従来のパケットスイッチの構成図である。
【図23】スケジューリング機能を集中して配備した従来のパケットスイッチの構成図である。
【符号の説明】
10 スイッチ部(SW)
20 入力バッファ部
22 パケットバッファ
24 要求振り分け部
26 読み出し指示部
30 スケジューラ部
32 要求数管理部
34 スケジューリング制御部
100 パケットスイッチ
Claims (3)
- N本の入力回線のそれぞれに対応して設けられ、対応する前記入力回線を介して入力されるパケットを格納するN個の入力バッファ部と、
それぞれが他のスケジューリング結果を用いずに別々の時刻に対応するスケジューリング処理を行うことにより、前記N個の入力バッファ部のそれぞれに格納された前記パケットの送出先となるM本の出力回線のいずれかを決定するα個のスケジューラ部と、
前記N個の入力バッファ部のそれぞれから出力される前記パケットを、前記スケジューラ部によって決定された送出先となる前記出力回線に出力するスイッチ部と、を備え、
前記N個の入力バッファ部において前記α個のスケジューラ部によるスケジューリング処理の結果を所定の順番で使用し、
前記スケジューラ部によるスケジューリング処理は、前記N個の入力バッファ部から送られてくるスケジューリング要求通知に対応して行われており、
前記N個の入力バッファ部のそれぞれは、前記スケジューリング要求通知の送出先となる前記スケジューラ部を分散させるとともに、前記α個のスケジューラ部のそれぞれに送出した前記スケジューリング要求通知の内の未処理の数を管理しており、この数が所定数に達した前記スケジューラ部に対する前記スケジューリング要求通知の送出動作を、この数が前記所定数より少なくなるまで遅らせることを特徴とするパケットスイッチ。 - 請求項1において、
前記スケジューラ部が前記スケジューリング処理に要する時間が、前記パケットの最小送出間隔のL倍であるときに、
L−αが1以上に設定されており、
前記N個の入力バッファ部において前記α個のスケジューラ部の全てのスケジューリング処理の結果を所定の順番で使用することを特徴とするパケットスイッチ。 - 請求項1または2において、
前記スケジューラ部は、未使用回線を含む前記スケジューリング処理を行っており、実際に使用している前記入力回線および前記出力回線と前記未使用回線との間の読み替え処理を行うことにより、1回の前記スケジューリング処理によって複数のスケジューリング処理結果を得ることを特徴とするパケットスイッチ。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000395741A JP4072315B2 (ja) | 2000-12-26 | 2000-12-26 | パケットスイッチ |
DE60110538T DE60110538T2 (de) | 2000-12-26 | 2001-08-28 | Paketvermittlungsstelle |
EP01119759A EP1220497B1 (en) | 2000-12-26 | 2001-08-28 | Packet switch |
US09/942,979 US7023865B2 (en) | 2000-12-26 | 2001-08-30 | Packet switch |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000395741A JP4072315B2 (ja) | 2000-12-26 | 2000-12-26 | パケットスイッチ |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002198993A JP2002198993A (ja) | 2002-07-12 |
JP4072315B2 true JP4072315B2 (ja) | 2008-04-09 |
Family
ID=18861150
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000395741A Expired - Fee Related JP4072315B2 (ja) | 2000-12-26 | 2000-12-26 | パケットスイッチ |
Country Status (4)
Country | Link |
---|---|
US (1) | US7023865B2 (ja) |
EP (1) | EP1220497B1 (ja) |
JP (1) | JP4072315B2 (ja) |
DE (1) | DE60110538T2 (ja) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7274697B2 (en) * | 2000-11-16 | 2007-09-25 | Tensilica, Inc. | Fast IP route lookup with 16/K and 16/Kc compressed data structures |
US6980513B2 (en) * | 2001-09-24 | 2005-12-27 | Transwitch Corporation | Methods and apparatus for the fair allocation of bandwidth among MCR and best effort service connections in an ATM switch |
US7586909B1 (en) * | 2002-03-06 | 2009-09-08 | Agere Systems Inc. | Striping algorithm for switching fabric |
EP1484939B1 (en) * | 2003-06-06 | 2006-05-24 | Alcatel | Scheduling unit with optimized jitter and queue occupancy |
US7742401B2 (en) * | 2003-08-11 | 2010-06-22 | Netapp, Inc. | Network having switchover with no data loss |
US7486687B2 (en) * | 2004-02-27 | 2009-02-03 | International Business Machines Corporation | Method and allocation device for allocating pending requests for data packet transmission at a number of inputs to a number of outputs of a packet switching device in successive time slots |
US7542473B2 (en) * | 2004-12-02 | 2009-06-02 | Nortel Networks Limited | High-speed scheduling apparatus for a switching node |
JP2007259073A (ja) * | 2006-03-23 | 2007-10-04 | Nec Corp | パケットスイッチにおけるスケジューリング装置 |
US7961630B2 (en) * | 2007-09-27 | 2011-06-14 | Agilent Technologies, Inc. | Methods and apparatus for stimulating packet-based systems |
JP5416168B2 (ja) * | 2011-05-19 | 2014-02-12 | 富士通テレコムネットワークス株式会社 | 通信装置 |
JP5615764B2 (ja) * | 2011-06-15 | 2014-10-29 | 日本電信電話株式会社 | パケットスイッチ及びパケットスケジューリング方法 |
US10033616B1 (en) | 2014-03-27 | 2018-07-24 | Juniper Networks, Inc. | State synchronization for global control in a distributed security system |
US20220029936A1 (en) * | 2021-06-01 | 2022-01-27 | Fujitsu Limited | Packet transmission device and packet transmission method |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2994832B2 (ja) * | 1992-01-10 | 1999-12-27 | 富士通株式会社 | Upc回路の故障診断方式 |
US5255265A (en) * | 1992-05-05 | 1993-10-19 | At&T Bell Laboratories | Controller for input-queued packet switch |
JPH0697965A (ja) | 1992-09-14 | 1994-04-08 | Hitachi Ltd | ルータにおける中継制御方式 |
JPH10173677A (ja) * | 1996-12-16 | 1998-06-26 | Toshiba Corp | パケット通信における物理ポートの流量制御方法及びその装置 |
CA2245367A1 (en) * | 1998-08-19 | 2000-02-19 | Newbridge Networks Corporation | Two-component bandwidth scheduler having application in multi-class digital communication systems |
JP2000138687A (ja) | 1998-10-30 | 2000-05-16 | Toshiba Corp | 中継装置 |
US6747971B1 (en) * | 1999-04-20 | 2004-06-08 | Cisco Technology, Inc. | Crosspoint switch with independent schedulers |
JP3732989B2 (ja) * | 2000-01-12 | 2006-01-11 | 富士通株式会社 | パケットスイッチ装置及びスケジューリング制御方法 |
US6813274B1 (en) * | 2000-03-21 | 2004-11-02 | Cisco Technology, Inc. | Network switch and method for data switching using a crossbar switch fabric with output port groups operating concurrently and independently |
JP3567878B2 (ja) * | 2000-10-02 | 2004-09-22 | 日本電気株式会社 | パケット交換装置 |
-
2000
- 2000-12-26 JP JP2000395741A patent/JP4072315B2/ja not_active Expired - Fee Related
-
2001
- 2001-08-28 DE DE60110538T patent/DE60110538T2/de not_active Expired - Lifetime
- 2001-08-28 EP EP01119759A patent/EP1220497B1/en not_active Expired - Lifetime
- 2001-08-30 US US09/942,979 patent/US7023865B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US7023865B2 (en) | 2006-04-04 |
US20020080796A1 (en) | 2002-06-27 |
DE60110538D1 (de) | 2005-06-09 |
EP1220497A2 (en) | 2002-07-03 |
US20030147398A9 (en) | 2003-08-07 |
DE60110538T2 (de) | 2006-05-04 |
EP1220497A3 (en) | 2004-01-21 |
EP1220497B1 (en) | 2005-05-04 |
JP2002198993A (ja) | 2002-07-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7848341B2 (en) | Switching arrangement and method with separated output buffers | |
US8576867B2 (en) | Pipeline scheduler with fairness and minimum bandwidth guarantee | |
EP1078498B1 (en) | Method and apparatus for supplying requests to a scheduler in an input-buffered multiport switch | |
EP0981878B1 (en) | Fair and efficient scheduling of variable-size data packets in an input-buffered multipoint switch | |
JP4006205B2 (ja) | 別々の出力バッファを備えたスイッチング構成および方法 | |
KR100334922B1 (ko) | 효율적인출력요구패킷스위치와방법 | |
JP4879382B2 (ja) | パケットスイッチ、スケジューリング装置、廃棄制御回路、マルチキャスト制御回路、およびQoS制御装置 | |
US6795442B1 (en) | System and method for scheduling message transmission and processing in a digital data network | |
JP4489308B2 (ja) | パケットスイッチ | |
JP2002512460A (ja) | デジタルデータネットワークにおけるメッセージフローを調整するシステムおよび方法 | |
JP4072315B2 (ja) | パケットスイッチ | |
US6345040B1 (en) | Scalable scheduled cell switch and method for switching | |
GB2365665A (en) | Switching arrangement for data packets | |
EP1198098B1 (en) | Switching arrangement and method with separated output buffers | |
JP3903840B2 (ja) | パケット転送システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060222 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070926 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20071009 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071205 |
|
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: 20080115 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080121 |
|
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: 20110125 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110125 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120125 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130125 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130125 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140125 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |