チャネルあれこれ

【2008/10/12 original author TAKAO】

370アーキテクチャからzシリーズまで基本的なI/Oの接続形態は変わっていません。

プロセッサーの筐体内部にはCPUとI/O専門プロセッサであるチャネルがあります。チャネルとコントローラが接続されます。デバイスはコントローラの後ろに「カスケード」に接続されます。CPU-CPUを繋ぐ時にはCTC接続といい、専用のチャネルカード(CTCA)か、専用装置(3088)を使用しました。

MVS/XA以降、チャネルプロセッサはI/Oについてインテリジェントな動きをします。OSはチャネルコマンドのリストを組み立てたら、処理は基本的にすべてチャネルにまかせるようになりました。MVS/ESAになると、データパス(コマンド、データの通り道)の空きを見つけることすら、チャネルが行います。当然、行きと帰りでパスが違うこともあります。次にOSが関わるのは、I/Oが成功しデータを得る時か、I/Oが失敗しリカバリーを行わねばならない時となりました。

このチャネル(上図で薄い青)とコントローラ(上図で薄いオレンジ)の間が大きく変化を遂げました。当初はBUS&TAG(バス タグ)といわれるデータ転送用ケーブルとコマンドを流すケーブル2種類をひいていました。これは3つの点で問題でした。ひとつは、物理的に大きいこと。デバイスの配置替えをする時に重く、太いケーブルを片付ける時間がないこともしばしばでした。二つ目は、到達距離が短いこと。たしかに電気信号なので距離が少しくらい長くても電位は伝わります。しかし、パラレル接続のケーブルで距離が伸びると信号の到達速度が均一にならないのです。信号の到達がバラバラだとどうしようもありません。それゆえ、あまり距離を伸ばせなかったのです。三番目の問題は2番目と同様ですが、銅線の特性上、あまり高い周波数(高速な通信)ができなかったのです。

最初に当時のIBMが解決したかったのは距離でした。そのため、当時買収した通信機器会社の技術を使い、ファイバーチャネルとそのスイッチを作りました。これがESCONといわれる技術です。ESCONは光ファイバーを利用したことで、パラレルケーブルのもつ問題をすべて解決できました。さらに、顧客にはたいへん喜ばれました。なぜならばスイッチを入れることでデータセンターの配線が大幅に減ったからです。左の図を見てください。デバイス(コントローラ)とプロセッサーの間にスイッチを入れることで、それまでは各々を直接接続する必要があったのが、なくなりました。ケーブルの本数の減少と柔軟性が達成されました。この後、FICONとなりインターフェースが業界標準のFiber Channelの形式となり速度が高速化されました。

これほど大きく形態(トポロジー)が変わっても、ソフトウェア上のチャネルプログラムは基本的に変更をする必要はなかったのです。そして驚くべきことに、いまだにBus&Tagケーブルとファイバーチャネルは共存しています。これは、単純に残っているというよりも、Bus&Tag-FICONアダプターなどにより、古いデバイスを大事に使う、ということと、スイッチによる便利さをうまく利用しているからでしょう。

【2008/10/12 original author TAKAO】