Systems Network Architecture ( SNA ) は、IBM が1974年に発表したコンピュータネットワーク・アーキテクチャであり、またそれに基づいたプロトコルスタックである。同社のメインフレームコンピューターやミドルクラスコンピューターのAS/400のネットワークで使われた。
SNAはコンピュータと端末等の資源を結ぶ完全なプロトコルスタックとPU/LUのノードの役割まで含めた通信機能の体系的な構造を定めたものである。SNAは通信プロトコルとアーキテクチャに関する規格仕様であり、それ自体はハードウェア・ソフトウェアの製品ではない。
SNAが画期的とされるのは、従来のコンピューターにおいてネットワーク仕様と機能がアプリケーション中に直接実装されていたところを、分離して通信ネットワークの仕様・アーキテクチャの構造を定め、またハードウェア・ソフトウェア製品として実装した点である。ソフトウェアでのSNA対応製品は様々な形のコミュニケーションパッケージが出ており、最も有名なものはメインフレーム環境で3745通信制御装置においてSNA通信を実現するVTAMである。
またSNAは通信機能を物理層からアプリケーション層まで階層(レイヤー)で分けたアーキテクチャを提示し、これは後のOSI参照モデルの基となった。
SNA はIBM製メインフレームコンピューターと共に政府の機関、金融機関、各種受発注システム等で広く使われ、その時代の事実上の標準となった。最新のz/OS、z/VSE、z/VMにもVTAMは含まれているが、近年ではネットワーク環境はTCP/IPに移行してきている。
SNAには次の要素が含まれる。
通信機能を7階層のアーキテクチャで体系化している。
このアーキテクチャは1983年にISOによりOSI参照モデルが制定される際にも参照された。SNAとOSI参照モデルは構成が似ているが、細部は異なる。
| SNA | OSI参照モデル | |
|---|---|---|
| 第7層 | トランザクションサービス層 | アプリケーション層 |
| 第6層 | プレゼンテーションサービス層 | プレゼンテーション層 |
| 第5層 | データフローコントロール層 | セッション層 |
| 第4層 | トランスミッションコントロール層 | トランスポート層 |
| 第3層 | 経路制御層 | ネットワーク層 |
| 第2層 | データリンクコントロール層 | データリンク層 |
| 第1層 | 物理制御層 | 物理層 |
IBMはSNAでデータリンク制御の仕組みとしてSDLCを開発した。最初のフレーム構造でバイナリデータ列を送るプロトコルで、後のIEEE802.2等にも影響を与えた。
PUとは通信機能を持つ物理的主体を指す。PUには次のタイプが存在する。
LUとはネットワークからアクセス可能なホストのサービスの論理的な主体を指す。
SNA は、様々な種類のデバイスを、各々 a Logical Unit grouping として同定する。LU0 は定義されていないデバイスまたはユーザーが自身で定義したプロトコルを意味する。LU1 はプリンターを意味する。LU2 はダム端末を意味する。LU3 は3270プロトコルを用いるプリンターを意味する。LU4 はバッチ端末を意味する。LU5 は定義されたことがない。LU6 は2つのアプリケーション間のプロトコルを意味する。LU7 は 5250 端末を用いたセッションのために用意されている。使われる最初の LU は、LU1 と LU2、そして w:LU6.2 である( LU6.2 は、アプリケーションとアプリケーションの会話のための進歩したプロトコルである)。
SNAのネットワークは当初はシリアル回線接続が主なネットワーク構成方法であった。遠隔地ではデジタル専用線を介して接続された。後に同一事業所内ではIBMが開発したトークンリングによるLANも用いられるようになった。データリンク制御でシリアル回線接続ではSDLC、トークンリングにおいてはIEEE802.2 LLCが対向装置とのデータ交換の制御に用いられており、データリンク層によるネットワーク構成が主な手法であった。
1990年代半ばから企業・団体内のネットワーキングでTCP/IPによるイントラネットが台頭すると、IPネットワークとSNAネットワークの回線統合が課題となった。これに対する解決法としてDLSw(Data-Link Swtching)(RFC 1434、RFC 1795)が提案された。これはデータリンク層で接続するSNAをイントラネットのIPネットワークでトンネリングさせるものである。Ciscoシステムズは自社のルーター製品でIBM SNA対応機能を有するIOS製品をIBM featureとして展開した。またCiscoシステムズはIBM 3745通信制御装置を置き換えるものとしてメインフレームコンピューターと光ファイバーのESCONモジュールで直結できるCisco 7500シリーズ用のCIPモジュールやCisco 7200シリーズのCPAをリリースした。この他にもWAN回線のフレームリレーで遠隔地と接続するFRAD製品がモトローラから販売された。SNAをトンネリングさせる以外の方法としては、データリンク層によるデータ伝送をIPに置き換えるゲートウェイ方式のTN3270も存在し、OpenConnect社のOpenConnect Network等の製品が存在した。
SNAの特徴として次のような点がある。
SNA はアプリケーションプログラムからリンクコントロールを除去した。その機能を、ネットワークコントロール専用のプログラムへ移した。このことは、以下に記す利点と不利点を生んだ。
SNAは1974年9月に「通信の高度化機能」(Advanced Function for Communications)の発表の一部として全世界で発表され、そのSNAのSynchronous Data Link Control(SDLC)プロトコルの実装が次の新製品に行なわれた:
これらはIBM/3704/3705通信制御装置のネットワーク・コントロール・プログラム(NCP)やシステム/360とシステム/370のVTAMやその他CICS、IMSなどのソフトウェアでサポートされている。このあと、1974年7月にIBM 3760データ・エントリー・ステーション、IBM 3790コミュニケーション・システム。IBM 3270の新しいモデルとSNAの実装は続いている。
SNAはおもに米国IBMのシステムズ開発部門(Systems Development Division)のノースカロライナ州リサーチ・トライアングル・パーク(R.T.P.)製品開発研究所のデザイン部署で行なわれ、それを実装した他の製品開発研究所(IBM 3767は藤沢研究所、のちの大和研究所;IBM 3770はR.T.P.研究所)も援助して行なわれたので、日本人も数人がSNAのデザインに参加している。詳細はのちにIBMのシステム・リファレンス・ライブラリー(SRL)マニュアル、IBM Systems Journalなどで主要部分が公開された。