JP3725144B2 - パケットスイッチ及びパケット交換方法 - Google Patents

パケットスイッチ及びパケット交換方法 Download PDF

Info

Publication number
JP3725144B2
JP3725144B2 JP2004025807A JP2004025807A JP3725144B2 JP 3725144 B2 JP3725144 B2 JP 3725144B2 JP 2004025807 A JP2004025807 A JP 2004025807A JP 2004025807 A JP2004025807 A JP 2004025807A JP 3725144 B2 JP3725144 B2 JP 3725144B2
Authority
JP
Japan
Prior art keywords
packet
switch
packets
request
input
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
Application number
JP2004025807A
Other languages
English (en)
Other versions
JP2004129313A (ja
Inventor
英明 中北
義満 下條
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2004025807A priority Critical patent/JP3725144B2/ja
Publication of JP2004129313A publication Critical patent/JP2004129313A/ja
Application granted granted Critical
Publication of JP3725144B2 publication Critical patent/JP3725144B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、パケットをスイッチングするパケットスイッチ及びパケット交換方法に関する。
近年、インターネット(Internet)の利用が普及するにつれて、インターネット・トラフィックの伸びが目覚ましくなってきている。
このトラフィックは、ルータやレイヤ3スイッチなどによって、スイッチングされる(以下、ルータやレイヤ3スイッチなどのようなパケットをスイッチングする装置を総称してパケットスイッチと呼ぶこととする)。このため、パケットスイッチに対するスループット拡張の要求が高まっている。この要求に対し、単位スイッチを多段に接続して規模を拡張できる多段接続構成のパケットスイッチが、1つの解として知られている。例えば、図9は、4×4単位スイッチ1001を用いて3段クロス網で構成した、16×16のパケットスイッチである。
インターネットトラフィックの特徴は、経路上の帯域を予約しないベストエフォート性にある。このベストエフォートの性質のために、パケットスイッチでは、その内部において、複数のパケットが衝突する。この現象は従来からよく知られており、この衝突の際の競合で負けるパケットが発生する。ここで負けたパケットは、バッファを持たないスイッチでは廃棄されてしまう。一方、バッファを有するスイッチでは、バッファ量にまだ余裕があれば、そのようなパケットは一時的に保存された後に宛先の出力ポートを目指すが、すでに余裕がなければやはり廃棄されることになる。
このような廃棄は望ましくないため、単位スイッチ間でフロー制御を働かせてスイッチ内部で廃棄が起きないように入力を抑制する方法や、廃棄されたパケットが宛先の出力ポートに届くまで再送制御をスイッチ内部で働かせる方法などが、これまでに考えられている。
しかしながら、フロー制御を利用する方法は、制御遅延の大きさや制御情報量などがネックとなって、図9に例示したような単位スイッチを多段接続して構成した大規模なスイッチにはあまり適さない。したがって、大規模なスイッチでは、再送制御機能が要求される場合が多い。この再送制御では、パケットが廃棄されたときは、もう一度入力ポートから再送する。この再送により、スイッチの入力ポートに到着したパケットは、宛先の出力ポートに必ず届けられることが保証される。
通常、スイッチの出力ポートでは、同じフローに属するパケットは、このフローの入力ポートにおける順序を守らなければならない。しかしながら、上述のような再送によって、宛先の出力ポートには順序が逆転して到着する可能性がある。例えば、同じフローの前のパケットが廃棄されたことを知らずに、後続のパケットを宛先の出力ポートへと送出して、その後続のパケットの方が先に到着してしまう。また、別の例では、スイッチ内部において、入力ポートと出力ポートの任意の対に対して、複数の経路(マルチパス)が設定できるケースがある。このケースでは、それぞれの経路が互いに同じ遅延時間を持たないと、パケットの順番が逆転する可能性がある。これらの場合には、入力ポートでの順序を、シーケンス番号として、パケットのヘッダに埋め込むなどの方法をとって、宛先の出力ポートへ伝え、正しく並べ替える機能が必要とされる。このようなシーケンス番号は、再送だけでなく、誤配送などによって、出力ポートで発生し得るパケットの重複を処理するためにも、利用できる。
こうした中、この衝突の発生確率をできるだけ下げて、廃棄や再送を減らし、スイッチの転送効率を高める方法について、検討が進められている。
例えば、スイッチのポートが、複数の物理的な通信路を有している、単位スイッチが知られている。このようなポートは、その通信路の数だけ、パケットを転送させることが可能なため、衝突の確率を減らすことができる。なお、このようなアイディアは、例えば、下記非特許文献1“The Performance of Multistage Interconnection Networks for Multiprocessors”(Clyde.P.Kruskal,IEEE Trans. Comput. Vol.C−32, no.12,pp.1091−1098, Dec.1983)や、下記非特許文献2“Designof a broadcast packet network”(Jonathan.S.Turner, IEEE INFOCOM’86,pp.667−675,1986)などに見られる。
図10に示した単位スイッチ1003は、155Mbpsのリンク(通信路)1005を物理的に32本持つものとする。図10のように、もし、4本のリンクを1つのポート1007にグルーピングすると、ポート数8のスイッチを構成することができる。このとき、どの出力ポートへも、同時に最大4個のパケットを、衝突なく転送することが可能である。また、このグルーピングによって、8本のリンクをまとめる場合はポート数4のスイッチができ、さらに、16本のリンクをまとめる場合はポート数2のスイッチができる。これらの場合、それぞれ、最大8個もしくは最大16個のパケットを、衝突なく、同時に転送することが可能である。
しかしながら、この単位スイッチが用いている方法は、柔軟性という面から、以下に述べるような問題点を抱えている。すなわち、1本のポートが有することのできる通信路の数は、高々リンクの本数に制限される。つまり、この通信路の数は、物理的に用意されたリンクの本数を上回ることができない。
"The Performance of Multistage Interconnection Networks for Multiprocessors"(Clyde.P.Kruskal,IEEE Trans. Comput. Vol.C−32, no.12,pp.1091−1098, Dec.1983) "Designof a broadcast packet network"(Jonathan.S.Turner, IEEE INFOCOM’86,pp.667−675,1986)
上述したように、1本のポートに物理的な複数の通信路を設定して、スイッチ内部での衝突確率を低減する、という既存の方式において、通信路を柔軟に設定することができないという問題点が存在する。
本発明は、上記事情を考慮してなされたもので、通信路の設定を、物理的な制約を受けることなく、柔軟に行うことができるようにすることによって、スイッチ内部での衝突をより回避しやすくするとともに、スイッチのスループットをより向上させることを可能とするパケットスイッチ及びパケット交換方法を提供することを目的とする。
本発明は、複数の入側の物理リンクと複数の出側の物理リンクとの間でパケットを交換するパケットスイッチであって、接続された入側の物理リンクから、複数のパケットがパケット長より短い所定の単位に細分化されたデータの状態で且つそれら細分化されたデータがサイクリックな順番で転送されてきたところを受信する、複数の受信手段と、前記受信手段において受信された前記細分化されたデータを、該細分化されたデータの属するパケットに対する転送先に転送する交換手段と、前記交換手段により転送されてきた前記細分化されたデータを、接続された出側の物理リンクに送信する、複数の送信手段とを備えたことを特徴とする。好ましくは、1つの入側の物理リンクから同一の機会に転送されてくるパケットの数をn個とし、前記交換手段は、同一の機会に同一の送信手段に対して、n個のパケットを上限として転送するようにしてもよい。また、好ましくは、前記交換手段は、同一の機会に同一の送信手段に対してn個を越えるパケットを転送すべき場合には、n個を越えた分のパケットを廃棄するようにしてもよい。
本発明によれば、スイッチの1つの物理的なポートを複数の論理的な通信路に分割し、この複数の論理的な通信路を用いて複数のパケットを並行して送受信することができる。この結果、スイッチ内部でのパケットの衝突確率を低減し、スイッチのスループットを向上させることができる。
本発明は、入側の物理リンクを複数束ねた物理リンク・グループを複数持つとともに、出側の物理リンクを複数束ねた物理リンク・グループを複数持ち、複数の入側の物理リンク・グループと複数の出側の物理リンク・グループとの間でパケットを交換するパケットスイッチであって、接続された入側の物理リンクから、複数のパケットがパケット長より短い所定の単位に細分化されたデータの状態で且つそれら細分化されたデータがサイクリックな順番で転送されてきたところを受信する、複数の受信手段と、前記受信手段において受信された前記細分化されたデータを、該データの属するパケットを転送すべき出側の物理リンク・グループに属する複数の物理リンクから選択された一つに向けて転送する交換手段と、前記交換手段により転送されてきた前記細分化されたデータを、接続された出側の物理リンクに送信する、複数の送信手段とを備えたことを特徴とする。好ましくは、1つの入側の物理リンクから同一の機会に転送されてくるパケットの数をn個、1つの物理リンク・グループに属する物理リンクの数をm個とし、前記交換手段は、同一の機会に同一の送信手段に対して、n×m個のパケットを上限として転送するようにしてもよい。また、好ましくは、前記交換手段は、同一の機会に同一の送信手段に対してn×m個を越えるパケットを転送すべき場合には、n×m個を越えた分のパケットを廃棄するようにしてもよい。
本発明によれば、スイッチの複数の物理的なポートを束ねて1本の太いポートとして扱うとともに、この太いポートを複数の論理的な通信路に分割し、この複数の論理的な通信路を用いて複数のパケットを並行して送受信することができる。この結果、パケット転送サイクルの延びを防ぎまたは抑えつつ、スイッチ内部でのパケットの衝突確率を低減し、スイッチのスループットを向上させることができる。
本発明は、上記パケットスイッチを単位スイッチとして多段接続したスイッチ網と、前記スイッチ網の前段に前記入側の物理リンクごとに接続された入力バッファ手段と、前記スイッチ網の後段に前記出側の物理リンクごとに接続された出力バッファ手段と、パケットを転送するに先だって、該パケットの転送元となる前記入力バッファ手段から該パケットの転送先となる出力バッファ手段へ前記スイッチ網を経由して、リクエストを伝える手段と、前記出力バッファ手段へ前記リクエストが到達した場合に、該リクエストが前記スイッチ網中を通過した経路を前記パケットの転送のために確保する手段と、前記転送先となる出力バッファ手段へ到着した前記リクエストに対するレスポンスを、前記転送元となる前記入力バッファ手段へ伝える手段とを備えたことを特徴とする。好ましくは、各入力バッファ手段から送り出される複数のパケットに対応する複数のリクエストは、前記所定の単位に細分化された状態で且つ前記サイクリックな順番に対応した順番で送り出されるようにしてもよい。
本発明によれば、リクエスト・レスポンス制御方式のスイッチにおいて、スイッチの1つの物理的なポートもしくは複数の物理的なポートを束ねた1本の太いポートを複数の論理的な通信路に分割し、この複数の論理的な通信路を用いて複数のパケットを並行して送受信することができる。この結果、スイッチ内部でのリクエストの衝突確率を低減させ(これによって同時に送信できるパケット数が増加する)、スイッチのスループットを向上させることができる。
本発明は、上記パケットスイッチを単位スイッチとして多段接続したスイッチ網と、前記スイッチ網の前段に前記入側の物理リンクごとに接続された入力バッファ手段と、前記スイッチ網の後段に前記出側の物理リンクごとに接続された出力バッファ手段とを備えたパケットスイッチにおけるパケット交換方法であって、パケットを転送するに先だって、該パケットの転送元となる前記入力バッファ手段から該パケットの転送先となる出力バッファ手段へ前記スイッチ網を経由して、リクエストを伝え、前記出力バッファ手段へ前記リクエストが到達した場合に、該リクエストが前記スイッチ網中を通過した経路を前記パケットの転送のために確保するとともに、前記転送先となる出力バッファ手段へ到着した前記リクエストに対するレスポンスを、前記転送元となる前記入力バッファ手段へ伝えることを特徴とする。
なお、装置に係る本発明は方法に係る発明としても成立し、方法に係る本発明は装置に係る発明としても成立する。
本発明によれば、各物理リンクについて複数のパケットをインタリーブしてスイッチ処理するようにしたので、スイッチ内部での衝突をより柔軟に回避し、また、スイッチのスループットを向上させることができる。
以下、図面を参照しながら発明の実施の形態を説明する。
図1に、本発明の一実施形態に係る単位スイッチの例を示す。
図1の単位スイッチ1は、複数の入側の物理的なリンク(通信路)に受信部11で接続されるとともに、複数の出側の物理的なリンク(通信路)に送信部12で接続され、1つの物理的なリンクを1つのポートとして、入力ポートと出力ポートとの間をスイッチングするものである。入出力ポート数は任意であるが、図1では2入力ポート×2出力ポートの場合を例示している。
ここで、図1を参照しながら、本実施形態の基本的な原理について説明する。
本実施形態の特徴は、図1に示すようなインタリーブの手法を用いて、物理的に1本のポートにおいて、複数のパケットを同時に転送できるようにする方法を、パケットスイッチへ導入することである。すなわち、複数の固定長パケットを、所定の単位にインタリーブして、1本のポートへ多重し、パケットスイッチは、1周期において各パケットの所定の単位に細分化されたデータをスイッチングするものである。
ここで、インタリーブを行う単位すなわち該所定の単位は、ビットごと、あるいはバイトごとなど、基本的には任意の値をとることが可能である。一つの極端な例として、インタリーブの単位をパケット単位として本発明を実施することもできる。この場合は、パケットの分割数が1個となり、インタリーブという語も適当ではないが、以降の説明の単純な延長線上にあり、本発明の有効性もそのまま適用できる。また、1本のポートへ多重するパケット数も、基本的には任意の値をとることが可能である。
図1では、4個の固定長パケットをインタリーブして、1本のポートへ多重する例を示している。第1の入力ポートについては、4個のパケットA,B,C,Dを、例えばビットごとのデータに分割し、この順番で、A1,B1,C1,D1,A2,B2,C2,D2,…、というようにサイクリックにならべて、転送する。同様に、第2の入力ポートについては、4個のパケットE,F,G,Hを、例えばビットごとのデータに分割し、この順番で、E1,F1,G1,H1,E2,F2,G2,H2,…、というようにサイクリックにならべて、転送する。
ここで、一例として、パケットA,C,F,Gの宛先が第1の出力ポート、パケットB,D,E,Hの宛先が第2の出力ポートとすると、単位スイッチ1は、ビットやバイトなどの単位に細分化されたデータA1,C1,F1,G1を第1の出力ポートへスイッチングし、細分化されたデータB1,D1,E1,H1を第2の出力ポートへスイッチングする。以降のサイクルも同様に行われる。
そして、第1の出力ポートからはインタリーブされたパケットA,F,C,Gが出力され、第2の出力ポートからはインタリーブされたパケットE,B,H,Dが出力される。ただし、図1の各サイクル内における各パケットの細分化されたデータを出力する順番は一例であり、この他の順番で出力するようにすることも可能である。
一つのフローに属する複数のパケットが、インタリーブされて同時にスイッチの一つの入力ポートに到着する可能性がある。この場合、スイッチの入力ポートにおけるサイクル内の入力順序が逆転しないようにスイッチの各出力ポートのサイクル内の出力順序を決定することにより、同一フローのパケットがスイッチを経由することによって転送順序が逆転することを防止できる。
このような方法によって、1本の物理的なポートを、複数の仮想的な(論理的な)通信路とみなしてスイッチ処理することが可能である。
以下では、このような仮想的な通信路を、「パーティション」と呼ぶこととする。つまり、本実施形態の方法は、1本の物理的なポートを複数のパーティションに分割し、それぞれのパーティションへパケットを分配することによって、複数のパケットを同時に並行して転送できるようにする、というものである。
次に、図2、図3を参照しながら、パーティションを設けた場合について、パーティションを設けない場合と比較しつつ説明する。
図2のパイプ形状の図形は1本のポートを、矩形はパケットを示しており、(a)はパーティションを設定していない場合を、(b)は本実施形態のパーティションを設定している場合をそれぞれ示している。また、図2の矩形の面積がそのパケットのデータ量、矩形の横の長さがそのパケットの転送に要する時間を表しており、(a)の矩形の面積と(b)の矩形の面積は同じで、(b)の矩形の横の長さは(a)の矩形の横の長さの4倍であるものとする。
ここで、図2のポートに4個のパケットを同時に転送したい場合を仮定する。もし、図2(a)のように、パーティションが設定されていない場合には、同時には1パケットしか転送できない(このとき、残りの3パケットは廃棄されてしまう可能性がある)。
一方、図2(b)のように、4本のパーティションが設定されている場合には、この4本のパーティションへパケットを分配することによって、4個のパケットを同時に転送することができる。なお、図2(b)の細長い矩形を4個積んだ状態は4個のパケットがインタリーブされている様子すなわち4本のパーティションが設定されている様子を表している(この表記の仕方は後に示す各図についても同様である)。
このように、パーティションが設定されている場合の方が、設定されていない場合に比べて、同時に到着したパケットを同時に“パーティションの本数”倍(この例の場合、4倍)まで転送する能力があり、廃棄確率を下げることができる。
図3は、2入力ポート×2出力ポートのバッファを持たないスイッチ(バッファレススイッチ)を示しており、(a)はパーティションを設定していない場合を、(b)は本実施形態のパーティションを設定している場合をそれぞれ示している。また、(b)の場合において、パーティション数=4とする。
図3(a)のようにパーティションなしのスイッチの場合は、ポート0とポート1へ向かうパケットが、入力ポート0と入力ポート1から、パケット単位でスイッチに送られてくる。ここでは、入力ポート0からは、宛先出力ポート0,1,0,1の順番で4つのパケットが入力し、入力ポート1からは、宛先出力ポート1,0,0,1の順番で4つのパケットが入力するものとする。このとき、3番目のパケット周期では、ポート0行きの2つのパケットがスイッチ内で衝突して、敗れた方が廃棄されてしまう。同様に、4番目のパケット周期では、ポート1行きの2つのパケットが衝突して、敗れた方が廃棄されてしまう。
一方、図3(b)のようにパーティションありのスイッチの場合は、同時にインタリーブされた4個のパケットがスイッチへ転送されてくる。なお、図3(b)において、ハッチングされたパケットがポート0行き、ハッチングされていないパケットがポート1行きを表すものとする。これらのパケットはそれぞれの宛先の出力ポートにスイッチングされる。そして、出力ポートでも4本のパーティションが設定されているので、この場合には同一の出力ポートに同時に(インタリーブされた状態で)最大4個のパケットを転送することができる。この例のように、ポート0行きとポート1行きがともに4パケットずつの場合には、何の廃棄もなく、すべてのパケットを同時にスイッチングすることができる。
ところで、上記のようにパーティションが設定されていても、同一の出力ポートを宛先とするパケットの個数がパーティション設定数を越える場合には、それらのパケットすべてを同時に転送することはできない。例えば、図2(b)や図3(b)の例の場合には、パーティション設定数が4であるので、5個以上のパケットが1つの出力ポートに集中したときには、それら全てのパケットを同時に転送することはできない。すなわち、同時転送の際に選ばれなかったパケット(パーティション設定数を越える分のパケット;この例の場合、1個のパケット)は、バッファを持つスイッチの場合にはバッファにとどめておかれる(またはその可能性がある)が、図3のようにバッファを持たないスイッチの場合には廃棄されてしまうことになる。そこで、パケットの廃棄確率を下げるためには、パーティション設定数を大きな数に設定すればよいことになる。
一方、物理的なポートの情報転送速度が一定の場合、パーティション設定数を大きくすると、インタリーブによって、1パケットの転送時間(パケット転送サイクル)が延びる。例えば、図1のように、もともとのパケット転送サイクルがTの場合に、パーティション数を4に設定すると、パケット転送サイクルは4倍に延びて4Tになる。
したがって、物理的なポートの情報転送速度が一定の場合、パケットの廃棄確率と1パケットの転送時間とはトレード・オフの関係になる。
ここで、パケット長を100バイトとして、ポートの速度を変化させて、パケット転送サイクルを比較してみると次のようになる。
・ポート速度が10Mbpsの場合、パーティションを導入しないときは約80μsで、パーティション数4のときは約320μsかかる。
・ポート速度が622Mbpsの場合、パーティションを導入しないときは約1.3μsで、パーティション数4のときは約5.2μsである。
このように、ポートの速度が速くなるにつれ、パケット転送サイクルの延び、およびそれに応じた固定遅延時間の延びは小さくなる。したがって、一般的に、ポートの速度が速くなるにつれ、パーティション設定数は大きく設定することが可能である、といえる。
以上から、パーティション数は、廃棄確率とパケット転送サイクルとの兼ね合いで、柔軟に設定できることが望ましい。もし、固定的にしか設定できなければ、廃棄確率を下げることができなかったり、パケット転送サイクルが長すぎてアプリケーションの品質に悪影響が出たりしてしまう。この点、本実施形態の方法によれば、インタリーブ手法により、自由にパーティション数を設定できるので、所望の廃棄確率やパケット転送サイクルを得ることが可能である。
以上、2×2単位スイッチを例にとって本実施形態の基本的な構成について説明したが、以下では上記の基本的な構成を応用した種々のバリエーションについて説明する。
まず、図1では物理的なポートに対してインタリーブ手法を適用する例を示したが、図4のように、物理的に複数のポートを1束にまとめ、1本の太いポート(スーパーポートと呼ぶこととする)として扱い、スーパーポートに対してインタリーブ手法を適用し、複数本のパーティションを設定することも可能である。
図4では、2ポートを一束にして(スーパーポート化して)、通常の2倍の速度を収容できるようにした4×4のスイッチにおいて、このスーパーポートの単位でパーティション数を8に設定した場合を示している(各ポートについてはパーティション数=4)。ポート0とポート1をまとめてスーパーポートAとし、ポート2とポート3をまとめてスーパーポートBとする。2ポートを一束にしたスーパーポートA,Bはそれぞれ通常のポートの2倍の速度をインタフェースすることが可能である。
ここで、図4において、ハッチングされたパケットが出側スーパーポートA行き、ハッチングされていないパケットが出側スーパーポートB行きを表すものとする。すなわち、入側スーパーポートAには、出側スーパーポートA行きのパケットが5つ、出側スーパーポートB行きのパケットが3つ入力され、入側スーパーポートBには、出側スーパーポートA行きのパケットが3つ、出側スーパーポートB行きのパケットが5つ入力されている。
この場合、出側スーパーポートA行きのパケットは合計8つ、出側スーパーポートB行きのパケットは合計8つとなり、16個すべてのパケットが転送可能となる。
なお、入側スーパーポートAを宛先とするパケットは、出力ポート0に転送されても出力ポート1に転送されても構わない。したがって、図4の例の場合、入側スーパーポートAを宛先とする8つのパケットについては、所定の基準で、出力ポート0と出力ポート1に4つずつ振り分ければよい。入側スーパーポートBを宛先とするパケットについても、同様に、出力ポート2に転送されても出力ポート3に転送されても構わない。したがって、図4の例の場合、入側スーパーポートBを宛先とする8つのパケットについては、所定の基準で、出力ポート2と出力ポート3に4つずつ振り分ければよい。
もちろん、同一のスーパーポートを宛先とするパケットが、スーパーポートについてのパーティション設定数を越える場合には、それらのパケットすべてを同時に転送することはできない点は、前述と同様である。
このように、スーパーポートの単位でパーティションを導入することによって、パーティション設定数を仮想的に大きくし、且つパケット転送サイクルの延びを防ぐまたは抑えることができる。
次に、図5は、8×8のスイッチの各ポートにおいて、図1のようなパーティション数4のインタリーブ手法を採り入れた、単位スイッチの例を示す。
この単位スイッチ31は、インタリーブ手法の結果、図9に示した単位スイッチと、同数(32本)のポートを有するものと考えてよい。このような本実施形態のインタリーブ手法を採り入れた単位スイッチを用いて、デルタ網やクロス網やバンヤン網などの多段接続構成により、多ポートのスイッチを作れば、単位スイッチ間の配線数を削減できるという実装上のメリットがある。具体的には、図9のような単位スイッチを用いた場合に比べ、“パーティション数”分の1(この例の場合、4分の1)の配線数で済むことになる。
次に、図6に、本実施形態のインタリーブ手法を採り入れた単位スイッチを多段結合して構成したパケットスイッチの例を示す。
図6では、図1や図4のようにインタリーブ手法を採り入れた8×8単位スイッチ41を用いて3段クロス網接続によってスイッチ網45を構成した64×64スイッチの例を示している(図6において単位スイッチ間の接続の記述は一部省略している)。各単位スイッチ41でのパーティション設定数は同一にするとともに、この設定数は前述したように廃棄確率とパケット転送サイクルとの兼ね合いを考慮に入れて決定する。
また、このパケットスイッチでは、各入力ポート毎に入力バッファ43が設けられ、各出力ポート毎に出力バッファ47が設けられている。各入出力バッファ43,47はプロトコル変換やプロトコル処理などを行う。例えば、IPプロトコルの可変長パケットが入力される場合、入力バッファ43では、IPプロトコルの可変長パケットをスイッチ固有の固定長のパケットにセグメンテーションし、当該複数の固定長のパケットをインタリーブしたりするとともに、出力バッファ47では、その逆のアセンブリを行うなどして、IPプロトコルの可変長パケットとして出力する。この入出力バッファ43,47には、また、後述のように、リクエスト・レスポンス制御の機能が実装されることもある。
さて、これまではパケットに対して制御を行う例を説明してきたが、以下では、リクエスト・レスポンス制御方式を用いたスイッチにインタリーブ手法を適用した例について説明する。
図7は、図6のような多段接続構成のスイッチに、リクエスト・レスポンス制御方式を導入した場合を模式的に示したものである。
図7において、53は入力バッファ、55はスイッチ網、57は出力バッファを示す。なお、スイッチ網55内部の単位スイッチは省略している。
リクエスト・レスポンス制御方式では、パケットの転送の前に次のような基本手順を踏む。
・送信元の入力バッファはパケットに対応する「リクエスト」をスイッチング網を使って宛先の出力バッファへ送る。
・「リクエスト」を受け取った出力バッファはこの「リクエスト」に対する「レスポンス」を送信元の入力バッファに返す。
・この「レスポンス」を受け取った入力バッファは該当するパケットを転送する。
本実施形態の場合、より詳しくは次のようになる。
インタリーブ手法を適用した本実施形態のスイッチでは、パケットに対してだけではなく、リクエストやレスポンスに対しても、パーティションを設定することができる。すなわち、本実施形態では、リクエストにもインタリーブが適用され、リクエストは、対応するパケットを転送すべきパーティションと同じパーティションによって転送される。
その際、インタリーブ手法の効果によってスイッチ網内におけるリクエスト同士の衝突確率が従来よりも低減され、この結果、リクエストの出力バッファへの到達確率が従来よりも高くなる。
リクエストが入力バッファから出力バッファへ到達した場合には、スイッチ網内において、当該リクエストが実際に経由した経路を、当該入力ポート且つ当該パーティションで転送すべきパケットのために確保する。本実施形態では、リクエストが経由した経路として、入力ポートとパーティションの組が、各単位スイッチの入口と出口とで保持されるものとする。
レスポンスは、スイッチ網を使って(例えば、リクエストの経由した経路を逆方向にたどって)、送信元の入力ポートへと返される。例えば、1組の入力ポートと出力ポートが1つのモジュールとして実装される場合には、リクエストを受け取った出力ポートと同じモジュールに実装される入力ポートから、スイッチ網を介し、リクエストを送り出した入力ポートと同じモジュールに実装される出力ポートへの経路で、レスポンスが返されるようにしてもよい。このレスポンスの経路は、リクエストが宛先の出力ポートに到達したときに、同時に確保されているものとする。なお、レスポンスは、スイッチ網を使わずに、別線を用いて返すようにしてもよい。
入力バッファがレスポンスを受け取ると、さきほどスイッチ網内に保持された(リクエストが経由した)ポートとパーティションの組で構成された経路に従って、該当するパケットが転送される。これによって、該パケットは途中で他のパケットと衝突することなく安全に出力バッファへ到達することになる。
なお、リクエスト・レスポンス制御方式はバッファレスの単位スイッチによって構成される多段接続のスイッチに適用され、構成要素である単位スイッチがバッファを持たないので基本手順に要する時間は容易に予測できる。
リクエストは、宛先の出力ポートに届く前に、途中で発生した衝突によって競合に負け、スイッチ網内で廃棄される可能性がある。しかし、もし廃棄されたとしても、リクエスト・レスポンスの基本手順に要する時間は、上述のように予測できるので、簡単に検出できる。そして、廃棄が検出された場合には、次の機会にリクエストを宛先の出力ポートへ再送する(レスポンスが得られるまで再送を繰り返す)。
このように、リクエスト・レスポンスという手順を順に踏むことによって、パケットの経路を確保してからパケットを送るので、レスポンスを受け取ったならば必ず宛先に届けられることが保証される。いわば、リクエスト・レスポンス制御方式は、パケット毎に経路を設定している、といえる。
さらに、送出可能リクエスト数と送出可能パケット数とを、入力バッファでフロー毎に正確に管理しており、入力バッファにエンキューされたパケットは、宛先の出力バッファへ必ず届けられるように制御される。送出可能なリクエスト数は、パケットが入力バッファにエンキューされたときと、リクエストの廃棄が検出されたときには、1つ増やされる。逆に、リクエストを送出したときには1つ減らされる。一方、送出可能なパケット数は、レスポンスを受信したときに1つ増やされ、パケットを送出したときに1つ減らされる。このようにすると、送信元の入力バッファにエンキューされたパケット数と、宛先の出力ポートに届けられるパケット数とは、必ず等しくなるようにすることが可能である。
また、送出可能パケット数のように個数だけを管理していることと、レスポンスを受信してからパケットを送信することから、必ず順番どおりに宛先の出力ポートへパケットを転送することが可能であるので、出力ポートでのパケットの並べ替え制御を不要にすることができる。
ここで、リクエスト・レスポンス制御方式のスイッチに、本発明のインタリーブ手法を採り入れると、次のような利点がある。すなわち、複数のパーティションを設定すると、これと同数のリクエストを同時に流すことが可能なため、リクエストがスイッチ網内部で衝突して廃棄される確率は減少する。リクエストの衝突確率が減少すると、結果として、同時に送信できるパケット数が増加する。これらのパケットは経路が確保されているので、絶対に廃棄されない。また、入力バッファにおいて、同時に送信できるパケット数が増加すると、これらのパケットが占有していたメモリ領域は、送信とともに解放可能なため、増加する。このように、リクエスト・レスポンス制御方式のスイッチに、ポートを複数の通信路(パーティション)に見せることが可能な本発明を組み合わせると、スイッチの効率をさらに上昇させることができる。
次に、上述の基本手順において、リクエストに優先度を示す情報を付与し、リクエストが衝突した場合には、リクエストに付与された優先度に基づいていずれのパケットを廃棄させるかを決定する制御をさらに行うことが考えられる。
優先度の決定手順としては、例えば、図7に示すように、レスポンスに出力ポート(バッファ)の輻輳情報を付加して入力ポートに返し、当該入力ポートでは、以降に当該出力ポートを宛先とするパケットに対応するリクエストに付与する優先度を、該輻輳情報に基づいて求める。
輻輳情報としては、例えば輻輳状況に関する所定の測定値、具体的には、単位時間に到着したパケットの個数もしくはバイト数、パケットキューのキュー長(パケット数もしくはバイト数)、パケットキューから廃棄されたパケット数もしくはバイト数など)など、あるいは輻輳のレベルを示す値、あるいは輻輳状態であるか否かを示すビットデータなどが考えられる。
優先度の設定については、基本的な考え方としては、例えば、輻輳情報が高い輻輳度を示しているほど優先度を低く設定し、低い輻輳度を示しているほど優先度を高く設定する。
単位スイッチにおけるリクエストの選択については、基本的な考え方としては、例えば、衝突したリクエストのうち最も高い優先度を持つリクエストから順に選択するというものである。
さて、前述のようにしてリクエストが宛先の出力ポートに到着すると、この出力ポートでは、バッファの状況に応じて、輻輳状態であるか否かを判断する。図7に示したように、この判断にもとづき決定された輻輳情報をレスポンスに含ませる。このレスポンスは、前述のように例えばスイッチ網を使って送信元の入力ポートへと返される。
送信元の入力ポートは、レスポンスを受けると、前述のようにパケットを送信する。このパケット自体は、例えば先程のリクエストが確保した経路を通って、宛先の出力ポートに必ず到達する。一方、この送信元の入力ポートでは、レスポンスから、出力ポートの輻輳情報を取り出し、この情報に基づいて、この出力ポートへ向かう次のパケットの優先度を決定する。次のパケットは、この優先度が付与されたリクエストによって、経路を確保しようとする。確保に成功した場合には、そのリクエストと同じ経路をたどって、宛先の出力ポートに届けられる。
このような制御方式を用いれば、例えば、輻輳状態に陥っている出力ポートの影響で、他の出力ポート行きのパケットの特性、特に遅延特性が劣化しないので、ベストエフォート性の高いトラフィックを収容するパケットスイッチの場合には特に有効と考えられる。
ここで、優先度によるスイッチ内パケット転送制御のいくつかの例について説明する。
まず、最も代表的な制御、すなわち輻輳状態に応じて行う優先度制御について説明する。例えば、輻輳している到達先(輻輳ポートとする)行きのパケットに対するリクエストは優先度を低くする。優先度の高いリクエストはスイッチ網内部で衝突しても優先されるため、優先度の高いリクエストにとって輻輳しているポート行きの優先度の低いリクエストは存在しないのと同じことになる。言い換えると、優先度の高いパケットにとって輻輳しているポート行きの優先度の低いパケットは存在しないのと同じことになる。
これによって、輻輳していないポート行きのパケットの流れが輻輳ポート行きのパケットの流れによって乱されることが非常に少なくなるという効果がある。輻輳ポート行きのパケットにとっても、優先度が変化させられるだけで、その転送速度は抑制されていないため、優先度の高いパケットの転送のすき間を利用して出力ポートへ転送する試みを継続することができる。そのため、輻輳ポートへもスイッチ網の転送能力の限りパケットを転送し続けることができる。
次に、再送に対する優先度制御について説明する。
スイッチ網内部の衝突で廃棄されたリクエストを入力バッファが再送する方式のパケットスイッチでは、同じリクエストが連続して廃棄されてしまうと、そのリクエストに対応するパケットの後で転送を待っているパケット全体の流れが悪くなってしまうおそれがある。
これを解決する方法として、スイッチ網の内部でリクエストが廃棄された場合に、図7に示すように、その再送リクエストの優先度をもとのリクエストの優先度よりも高くするようにしてもよい。このような制御によって、再送リクエストが再び廃棄されることが少なくなる利点がある。もし再送リクエストが再び廃棄された場合には、それに対する再送リクエストの優先度を更に高くするようにしてもよい。これによって、何度も再送され続けている不運のリクエストを優先して転送することが可能となる。
ところで、インタリーブの手法を用いた本実施形態の方法では、インタリーブされた複数のパケットに付与された各種の制御信号は、時間的にほぼ同じ位置に存在する、という特徴を利用することが可能である。
例えば、パケット同期をとるための信号(情報)を全パーティション間で共用することができる。このようにすれば、パケット同期のための信号を、各パーティションごとに用意する場合に比べ、“パーティション数”分の1に減らすことが可能である。
もちろん、上記のような或る情報の全パーティション間での共用については、伝送路誤りを検出するための符号(例えば、パリティ符号)などにも適用することができる。すなわち、パケット毎にパリティ符号を付けるのではなく、インタリーブされた複数のパケットを単位として、パリティ符号を付与することが可能である。このようにすれば、パリティ符号によるオーバーヘッドを削減することができる。
図8は、単位スイッチのパーティション設定数が4で、このリクエスト・レスポンス制御方式を利用したとき、単位スイッチ間で交わされるフォーマットの一例である。図8の例の場合、同期用信号、リクエスト、レスポンス、パケット本体、パリティ符号を、同時転送することができる。図8は、一見すると、同期用信号やパリティ符号は、パケット(パーティション)ごとに用意されているように見えるが、上述のように、同じ位相に位置しているために、一つに連結して4つのパーティションで共用することによって、使用する情報量を削減することが可能である(もちろん、同期用信号やパリティ符号をパケット(パーティション)ごとに用意することも可能である)。
なお、図8のフォーマットは、図3(b)や図4のような実施形態において、採用することが可能な一例であって、同期用信号やパリティ符号などの位置を入れ換えたフォーマット、他の情報が加わったフォーマット、一部が他の情報と入れ替わったフォーマットなどでも、全パーティション間での共用はもちろん可能である。
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
本発明の一実施形態に係るパケットスイッチの構成例を示す図 パーティションがある場合についてパーティションがない場合と比較して説明するための図 パーティションがあるパケットスイッチについてパーティションがないパケットスイッチと比較して説明するための図 スーパーポートにパーティションを設定したパケットスイッチの例を示す図 パーティション設定可能な単位スイッチの例を示す図 パーティション設定可能な単位スイッチによる多段接続スイッチの一例を示す図 リクエスト・レスポンス制御方式を適用したパーティション設定可能な単位スイッチによる多段接続スイッチの例を示す図 パーティション設定とリクエスト・レスポンス制御方式を適用したパケットスイッチの内部データフォーマットの例を示す図 従来のスイッチの一例を説明するための図 従来のスイッチの他の例を説明するための図
符号の説明
1,21,31,41…単位スイッチ、11…受信部、12…送信部、43,53…入力バッファ、45,55…スイッチ網、47,57…出力バッファ

Claims (6)

  1. 複数の入側の物理リンクと複数の出側の物理リンクとの間でパケットを交換するパケットスイッチであって、接続された入側の物理リンクから、複数のパケットがパケット長より短い所定の単位に細分化されたデータの状態で且つそれら細分化されたデータがサイクリックな順番で転送されてきたところを受信する、複数の受信手段、前記受信手段において受信された前記細分化されたデータを、該細分化されたデータの属するパケットに対する転送先に転送する交換手段、前記交換手段により転送されてきた前記細分化されたデータを、接続された出側の物理リンクに送信する、複数の送信手段を備えたパケットスイッチを単位スイッチとして多段接続したスイッチ網と、
    前記スイッチ網の前段に前記入側の物理リンクごとに接続された入力バッファ手段と、
    前記スイッチ網の後段に前記出側の物理リンクごとに接続された出力バッファ手段と、
    各パケットを転送するに先だって、該パケットの転送元となる前記入力バッファ手段から該パケットの転送先となる出力バッファ手段へ前記スイッチ網を経由して、リクエストを伝える手段と、
    前記出力バッファ手段へ前記リクエストが到達した場合に、該リクエストが前記スイッチ網中を通過した経路を前記パケットの転送のために確保する手段と、
    前記出力バッファ手段の輻輳情報を求める手段と、
    前記転送先となる出力バッファ手段へ到着した前記リクエストに対するレスポンスを、前記輻輳情報とともに前記転送元となる前記入力バッファ手段へ伝える手段と、
    前記入力バッファ手段へ伝えられた輻輳情報に基づいて、次回のリクエストに優先度を付与する優先度付与手段と、
    前記次回のリクエストのパケットを前記優先度に応じて破棄する手段と
    を備えたことを特徴とするパケットスイッチ。
  2. 各入力バッファ手段から送り出される複数のパケットに対応する複数のリクエストは、前記所定の単位に細分化された状態で且つ前記サイクリックな順番に対応した順番で送り出されることを特徴とする請求項1に記載のパケットスイッチ。
  3. 1つの入側の物理リンクから同一の機会に転送されてくるパケットの数をn個とした場合、同一の機会に同一の送信手段に対してn個のパケットを上限として転送するときの、前記n個を越えるパケットを一時的に記憶するバッファをさらに備えることを特徴とする請求項1に記載のパケットスイッチ。
  4. 1つの入側の物理リンクから同一の機会に転送されてくるパケットの数をn個とした場合、前記交換手段は、同一の機会に同一の送信手段に対してn個のパケットを上限として転送するときの、前記n個を越えた分のパケットを廃棄することを特徴とする請求項1に記載のパケットスイッチ。
  5. 前記優先度付与手段は、前記輻輳情報がより高い輻輳度を示しているほど前記優先度をより低く設定し、前記輻輳情報がより低い輻輳度を示しているほど前記優先度をより高く設定することを特徴とする請求項1乃至4に記載のパケットスイッチ。
  6. 複数の入側の物理リンクと複数の出側の物理リンクとの間でパケットを交換するパケットスイッチであって、接続された入側の物理リンクから、複数のパケットがパケット長より短い所定の単位に細分化されたデータの状態で且つそれら細分化されたデータがサイクリックな順番で転送されてきたところを受信する、複数の受信手段、前記受信手段において受信された前記細分化されたデータを、該細分化されたデータの属するパケットに対する転送先に転送する交換手段、前記交換手段により転送されてきた前記細分化されたデータを、接続された出側の物理リンクに送信する、複数の送信手段を備えたパケットスイッチを単位スイッチとして多段接続したスイッチ網と、前記スイッチ網の前段に前記入側の物理リンクごとに接続された入力バッファ手段と、前記スイッチ網の後段に前記出側の物理リンクごとに接続された出力バッファ手段とを備えたパケットスイッチにおけるパケット交換方法であって、
    パケットを転送するに先だって、該パケットの転送元となる前記入力バッファ手段から該パケットの転送先となる出力バッファ手段へ前記スイッチ網を経由して、リクエストを伝え、前記出力バッファ手段へ前記リクエストが到達した場合に、該リクエストが前記スイッチ網中を通過した経路を前記パケットの転送のために確保するとともに、前記出力バッファ手段の輻輳情報を求め、前記転送先となる出力バッファ手段へ到着した前記リクエストに対するレスポンスを、前記輻輳情報とともに前記転送元となる前記入力バッファ手段へ伝え、前記入力バッファ手段へ伝えられた輻輳情報に基づいて、次回のリクエストに優先度を付与し、前記次回のリクエストのパケットを前記優先度に応じて破棄することを特徴とするパケット交換方法。
JP2004025807A 2004-02-02 2004-02-02 パケットスイッチ及びパケット交換方法 Expired - Fee Related JP3725144B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004025807A JP3725144B2 (ja) 2004-02-02 2004-02-02 パケットスイッチ及びパケット交換方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004025807A JP3725144B2 (ja) 2004-02-02 2004-02-02 パケットスイッチ及びパケット交換方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP24885799A Division JP3545653B2 (ja) 1999-09-02 1999-09-02 パケットスイッチ

Publications (2)

Publication Number Publication Date
JP2004129313A JP2004129313A (ja) 2004-04-22
JP3725144B2 true JP3725144B2 (ja) 2005-12-07

Family

ID=32291483

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004025807A Expired - Fee Related JP3725144B2 (ja) 2004-02-02 2004-02-02 パケットスイッチ及びパケット交換方法

Country Status (1)

Country Link
JP (1) JP3725144B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104285410A (zh) * 2012-04-13 2015-01-14 皮尔茨公司 用于在以自动方式受控的设施中发送过程数据的方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104285410A (zh) * 2012-04-13 2015-01-14 皮尔茨公司 用于在以自动方式受控的设施中发送过程数据的方法
CN104285410B (zh) * 2012-04-13 2017-11-10 皮尔茨公司 用于在以自动方式受控的设施中发送过程数据的方法

Also Published As

Publication number Publication date
JP2004129313A (ja) 2004-04-22

Similar Documents

Publication Publication Date Title
US6553030B2 (en) Technique for forwarding multi-cast data packets
US20020085567A1 (en) Metro switch and method for transporting data configured according to multiple different formats
US9215094B2 (en) Segmentation and reassembly of data frames
US20020085565A1 (en) Technique for time division multiplex forwarding of data streams
US20020085548A1 (en) Quality of service technique for a data communication network
EP1949622B1 (en) Method and system to reduce interconnect latency
Maxemchuk et al. Routing and flow control in high-speed wide-area networks
US7016365B1 (en) Switching fabric including a plurality of crossbar sections
US20020085507A1 (en) Address learning technique in a data communication network
EP1528729A2 (en) Distance-sensitive scheduling of TDM-over-packet traffic in VPLS
JPH10200567A (ja) Lanスイッチ
US7295564B2 (en) Virtual output queue (VoQ) management method and apparatus
US20020085545A1 (en) Non-blocking virtual switch architecture
US10630607B2 (en) Parallel data switch
JP3725144B2 (ja) パケットスイッチ及びパケット交換方法
US6956851B1 (en) Crossbar subsystem and method
JP3545653B2 (ja) パケットスイッチ
WO1999022496A1 (en) Stream-line data network
JP2682434B2 (ja) 出力バッファ型atmスイッチ
JP3543725B2 (ja) パケット交換装置およびパケット交換方法
US9479458B2 (en) Parallel data switch
CN115695295A (zh) 支持低延时及高吞吐量的可缩放e2e网络架构及组件

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040203

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050412

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050419

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050620

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050920

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

Free format text: PAYMENT UNTIL: 20080930

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20090930

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees