VTAM概説

【2010/05/07 original author TAKAO】

SNA

VTAMについて語る前に、IBMが作った通信プロトコルSNAについて語る必要がある。
Systems Network Architecture(SNA)は、1970年代にIBMのコンピュータを通信させるために考えられたアーキテクチャである。アーキテクチャ上、重要な点はレイヤーという概念を持ったことと、ホストコンピュータが中心であるという考え方にある。レイヤーについては後世、標準化として出されたOSIに踏襲され、図のような関係とされる。

ホストコンピュータは、数万台の端末を制御するために専用のコンピュータ、すなわち通信制御装置をI/O装置として必要とする。通信制御装置は、NCP(NetWork Control Program)と呼ばれる制御プログラムと端末の構成情報を内蔵した。具体的には、通信制御装置は接続された回線、端末に向かいポーリング(呼びかけ信号)をかける。データ転送を要求した端末に向かってデータを受信、もしくは送信する。
このアーキテクチャは時代を下って、TCP/IPのような、知らないアドレスへのルーティング可能な通信アーキテクチャとの整合性が取れなくなった。

VTAM

VTAM(Virtual Telecommunications Access Method)もしくはACF/VTAMは、IBMのSNAを具現化した通信プログラムである。VTAMはNCPと同様の回線、端末属性を知り、通信を制御した。ユーザーから見ると通信の流れはおよそ次のような形である。

  1. ユーザーが文字を入力し、Enterキーをたたく。
  2. 文字は端末コントローラ(もっとも有名な製品はIBM 3174)に送られる
  3. 端末コントローラは通信制御装置のポーリングに応じ、データを送出
  4. 通信制御装置にバッファされたデータはチャネルをとおして、ホスト内に転送
  5. ホストのVTAMはデータをアプリケーション(TSO,CICS,IMSなど)に渡す
  6. もし、受信確認(ACK)が必要ならば、逆の順序でデータ送出

VTAMはSNA上で定義されたSystems Services Control Point(SSCP)という自分の管理している世界(ドメインという)の資源管理をする。なお、ドメイン同士の接続は可能であり、マルチドメインといい。SNIというSSCP同士の会話でネットワークを構成する。

SNAネットワークを構成する要素として、SSCPの他、Logical Unit(LU)とPhysical Unit(PU)がある。PUとLUの定義そのものは深淵な議論がなされるため、以下で具体的な定義をあげる。いずれもタイプと呼ばれる番号で特性が定義されている。

PUタイプ

  • 2. クラスターコントローラ
  • 3. インテリジェントコントローラ(3174,3274,3276)
  • 4. 通信制御装置 (3270,3745,3725,3705)
  • 5. SSCPをもったホストノード (308x, 9370,3090,4300)

通信回線はSDLCであり、LANはトークンリング接続のLLCが使われた。

LUタイプ

  • 0. SNAではないもの(IMS、CICS、JES、3270BSC)
  • 1. プリンター、SCSデータストリームを使うもの
  • 2. ディスプレイ、3270データストリームを使うもの (3270ディスプレイ)
  • 3. プリンター、3270データストリームを使うもの (3274経由3287プリンタ)
  • 4. ひとつもしくは複数のディスプレイセッション、SNAチャラクターストリーム(CICS/VS 6670)
  • 6.1 アプリケーションサブシステム(CICS/VS、IMS/VS)
  • 6.2 アプリケーション間通信、(APPC、AS/400、CICS)
  • 7. ホストとミッドレンジのプロセッサ間 (3090とs/38)

LUの中で特筆するべきなものは、LU6.2である。これはAdvanced Program-to-Program Communication(APPC)という対等な通信を許すAPIとして作られた。これを利用して、NetBIOSなどがメインフレーム上で実現された。

VTAMとTCP/IP

Windows, AIXなどにおいてTCP/IPは標準であったが、SNAの通信は複雑である。そのため、最初は、SNAサーバーfor AIXやSNAサーバー for WindowsNTという製品が作られ、3174制御装置の代わりにおかれPC上で端末エミュレータを動作させることとなった。
現在のメインフレーム上ではすでにTCP/IPを動作させることが可能である。パケット交換のために3172(パススルーモード)という装置をつければ外部とTCP/IPで通信可能である。
端末用の3270データストリームを変換してターミナルエミュレータ、プリンターに表示するTN3270というプロトコルがあり、変換ゲートウェイがある。TN3270についてはこれはRFC(1041,1576,1646,1647)上で定義されている。またVTAMのプリンターLU用のデータをTCP/IPベースのプリンターデータに変換するソフトウェアもある。

参考:
http://www.francome.com/sna.html
(2020年3月現在、既にリンク切れ)

【2010/05/07 original author TAKAO】