ICTシステムでのメッセージとは相手に情報を伝える手段である。すぐに必要なものもあれば、記録として後で意味を持つものもある。

 大切なのは人間の会話と同様に誤解なく伝わることだ。返事がなければ伝わったかどうかも分からない。今回は、相手との情報のやり取りの手順ややり方を決めるプロトコルについて取り上げる。

届かないメッセージもある

 ICTシステムでは、相手のコンピュータやソフトに情報を送ると、OK(ACK)かNG(NACK)かBusy(WACK)かの応答が返ってくる。問題は、応答がなかった時にどうするかだ。伝送化けやケーブルの接触不良、輻輳時のバッファーオーバーフローなどが原因で、送ったはずのメッセージが届いていなかったり相手からの応答が届いていなかったりすることがある。

 応答がない場合に再送するケースを「冗送」と呼び、メッセージは相手に届いたが応答が届かなかったと見なして次のメッセージを送るケースを「脱送」と呼ぶ。プロトコルによっては応答をもらったら完了(EOT)を通知するが、メッセージ本体だけでなく応答や完了に関する冗送や脱送の制御方法も決めておく必要がある。

 TCP/IPでは、伝送回数を管理するサイクリックカウンターを送信メッセージ(上りメッセージ)中に付与し、返信メッセージ(下りメッセージ)中ではカウンターを1増やすことでACKの意味を代行する。上りと下りが逆でも同様だ。