二項対立の構図は、よく議論の的になる。集中か分散か。IntelligentかStupidか。知性か感性か。保守か革新か。管理か自由か....。しかし、多くの場合現実は、そのどちらでもなかったり、両者を組み合わせたり、視点を変えたり、次元を増やしたりする必要があったりする。
PacketかCircuitか、というのも、2つの対極的な概念と言える。電話網に代表される回線(Circuit)交換網では、一旦つながると、切断するまではその回線は占有される。しかし、ad hocにバッファを介してデータを送出するコンピュータ通信には適さない、ということと、軍用のため、システムのいずれかの箇所に障害が生じたときも到達性は失わないような堅牢性が求められた、ということを背景に、パケット通信が開発された。
Packetにより可能になったことは大きい。統計多重によるコスト削減、宛て先アドレスさえわかればつながるというUbiquitous性、堅牢性の向上。つないでいる時間に依らない課金モデル。
しかし、PacketとCircuitの関係は、ほとんどの場合、二項対立ではなく、相互補完的である。物理レイヤまでPacketの使用を規定しているのはIEEE802くらいなもので、T1(ANSI)、ISDN(TTC)、SONET/SDH、xDSL等、ほとんどの物理レイヤがCircuitである。そのため、PacketはCircuitの上で動作することが多い。古くはX.25 over ISDN (INS-P)、最近(でもないか)はPacket over SONETなど。
一方、Packetインフラ上で、Circuitを実現する、というのもある。古くは、X.25 VC(Virtual Circuit)やFrame Relay , ATM VCなど、最近はPseudo Wireである。(ところで、"Virtual"と"Pseudo"は、両者とも実際とは異なることを表す言葉であるけれども、微妙な違いがありそうだ。"Virtual"は、実際とは異なるが本質的なものを表すことが多い。一方、"Pseudo"は似て非なるもの。)そのため、Circuit over Packet over Circuit、とか、Packet over Circuit over Packet over Circuitなど、錯綜的というか再帰的という事態が発生する。
最近は、”NGN”という、「電話会社によるIPインフラを使用した次世代網への取り組み」が盛んである。High End Routerにもいろいろなご要望を戴く機会が多いが、どうもご要望のほとんどは、要するに「Circuit(的なもの)が欲しい」というものだ。VCやPseudo Wireへのご要望は勿論のこと、「あるトラフィックがどのパスを通るのかを明示的にしたい。」「障害時のパスもあらかじめ指定したい。」「ある地点からある地点の帯域保証をしたい。」「マルチキャストにおいても、Multicast Treeのパスを明示指定したい。」...。これらCircuit的な機能は、管理性、明示性、品質保証という面でのメリットがあるが、一方Ubiquitos性とかResiliencyとかRobustnessを損なう面がある。Simple性やScalabilityについては、きちんとパラメータを定義しないと単なる宗教論争になるが、例えば対地点の数をNとし、隣接数をnとすると、必要コネクションの数は、Circuitの場合O(N^2)、Packetの場合O(n)となるので、Circuit的なものが先にScalability Neckになることが多い。
ルータは、いまや最高速のPacket Switchであるから、これらCircuit的要望にもきちんと応えなくてはならないのだろう。しかし、技術的に理に適っているかどうかはおいておくとしても、文化的思想的背景の違いが壁となることもある。少なくとも、常に固定観念には囚われないよう、自戒する必要がある。
コメント