プロトコル(=protocol)とは通信手順のことである。
今やインターネットが普及して
IBM iと他のプラットフォームとの通信も多くなってきているので
情報システム部門でもプロトコルの種類は素養として知っておきたい。
オープン系の仕事も着手し始めたときにはこれからのITの世の中を
決めるのは通信だと思った。
それほど通信は重要なものである。
IBM iがいろいろな機器と接続できるとIBM iの利用価値は高まっていく。
プリンタ、ハンディ・ターミナル、スマート・フォン、LINEや工作機械に接続できれば
利用価値は広がっていくばかりである。
IBM iに付加価値をつけていくのは通信だと言って過言ではない。
これから数回に分けてプロトコルの紹介を行う。
この中で通信がいかにソフトウェアを進化させるのかを理解して頂けると思う。
–以下の説明文には弊社製品へのリンクが張ってある。いかに多くの製品に通信が生かされているか
理解して頂けると思う。
プロトコル(=protocol)とは「もしもし」と言われれば「はいもしもし」と返すのように
通信で話す語句を取り決めておくことである。
この通信の規則のことをプロトコルと呼ぶ。
例えば
SNA
(=Systems Network Architecture)
IBMがAS/400間のネットワーク通信を行うために規定した通信方法
SNADSの基本もSNAである。
SNADSはSNAによるオブジェクト配布機能である。
IBMと言えば最初のころの通信はSNA一色であったが最近は
SNA on TCP/IPからTCP/IPへと移行していてSNA色は少なくなっている。
CPI-C
(Personal Communications)
IBMがクライアント/サーバー・モデルのために規定した簡易プロトコル
ライブラリー: QSYS2 はCPI-C通信のためのライブラリーである。
弊社BI製品: Chicagoが初めて採用した通信プロトコルもCPI-Cである。
TCP/IP
ご存知インターネットの基本となっている通信方法。
以下に紹介するすべてのプロトコルのベースはTCP/IPである。
最近は脱TCPの話も出てきている。
SSL
SSL(=Secure Socket Layler)とは認証機関の証明書をかわすことによって
TCP/IP通信をする機密保護の通信手段である。
プロトコルではないがホーム・ページも現在ではHTTPではなく
SSLによるHTTPSが常識の時代になっている。
IBM i自身が証明書となるSSLは自己証明型であるが
LINEの通信では自己証明型は認められておらずやはり
第三者認証機関による有料の証明書が必要となっている。
FTP
FTP(=File Transfer Protocol)はファイル転送プロトコルであり
ファイルの転送方法として最も普及している。
HTTP
HTTP(=Hiper Text Transfer Protocol)はインターネットのHTMLコンテンツを
配信するための通信手順である。今ここでご覧になっている画面も
HTTPプロトコルによって配信されているはずである。
HTTPのコマンドはすべてテキストであるため容易に誰でも解析することができる。
AutoWebのAlaskaも独自のHTTPサーバーである。・
現在のHTTPの多くはHTTP/1.1のバージョンであるが
実はいずれ解説するがHTTP/2 や HTTP/3がもうリリースされている。
HTTP3はまだ数パーセントの普及率であるがHTTP/2は50%を超えている。
これから重要になってくるのはHTT2なので覚えていて欲しい。
SMTP
SMTP(=Simple Mail Transfer Protocol)はメール配信のためのプロトコルである。
SpoolライターVer5.0のメール配信もSMTPクライアントである。
TELNET
TELNETも対話式エミュレータのためのプロトコルである。
TELNETのPORT番号は3番で5250エミュレータのPORTも23番であるが
5250エミュレータはTELNETではない。
5250ストリーム
5250ストリームはIBM独自の対話式画面を構成するプロトコルである。
AutoWebはこの5250ストリームを対話式APIから受け取って解析している。
LPR/LPD
LPR(=Line Printer Daemon Protocol) はLINUXのプリンタ制御のためのプロトコル。
プリンタ側のデーモンがLPDでありクライアント側をLPRと呼ぶ。
LPRは初期のUNIXで作られたプロトコルなので複合機やレーザー・プリンタに対するトレイ印刷や両面印刷などの細かな指定はできない。もっぱらIBM iから
直接プリンタに印刷するだけのプロトコルである。
LPDはほとんどの市販のプリンタには導入されていて電源を上げるだけで起動される。
LPRはIBM iからの直接印刷に利用することができる。
IPP
IPP(=Internet Printing Protocol)とは LPRより進んだ印刷プロトコルで
スマホのAirPrintや複合機のトレイ指定など細かな印刷指定をすることができる。
多くの複合機はIPPもサポートしているがLPDと違ってスタートはされていないので
IPPのサーバーは明示的に開始してやる必要がある。
IPPを使うとIBM iからの直接印刷で印刷トレイや両面印刷なども指定することができる。
ただしIBM iからIPP印刷を指定することができる製品はSpoolライターVer5.0だけである。
SMB
SMB(=Server Message Block) とはMicrosoftがWindowsどうしの通信用として
開発したプロトルであり共有プリンタや共有ファイルの通信に使われている。
SMBというとIBM iユーザーは馴染みがないかも
知れないがIBM iのIFSには/QNTCという特殊なフォルダーが
あってWindowsの共有ファイルをアクセス可能にしているが
これはWindowsのファイル共有サーバーと通信していることで
可能になっている。
すなわち/QNTCはSMBクライアントである。
SMBプロトコルを使えばIBM iから5250プリンタ・セッションを使わずに直接Windowsの
プリンタ・ドライバーに目掛けて印刷を指示することができる。
SMBプロトコルでプリンタ・ドライバに印刷を指示できるのは the WINDOWSライターだけである。
MQTT
MQTT(=Message Queue Telemetry Transport)とはIoT(=Internet of Thins)に使われる
IBMが1999年に開発した通信プロトコルである。
IBM iからIoTデバイスを制御するにはMQTTプロトコルによる通信が必要である。
㈱オフィスクアトロでは既にMQTTプロトコルの通信に成功している。
おり
現在MQTTプローカーというサーバーを開発中である。
IBM i上でMQTTプローカーを確立すればいろいろな機器が直接IBM iに接続することができる。
しかも社内無線LANによる接続なのでIBM iにはハード・ウェアの追加は必要ない。
今までIBM iにプリンタなどの直接接続を手がけてきたがハードウェア機器を
直接接続できるようになるのである。
MQTTプロトコルこそIoTの要となるブロトコルであり今後注視して頂きたい。