プロトコル
二者が通信するときの取り決め。メッセージの形式、順序、エラー処理、状態遷移を定める。TCP、HTTP、SMTP、BGP、OAuthはいずれもプロトコルである。
インターネットのプロトコルはIETFがRFC(Request For Comments)として標準化している。通信はOSI参照モデルの7層、またはTCP/IPの4層という階層で抽象化され、各プロトコルは自分の層だけを気にすればよい。アプリケーション層にHTTP・SMTP・MQTT、トランスポート層にTCP/UDP、ネットワーク層にIP、リンク層にEthernet/Wi-Fiが並ぶ。仕様の記述にはステートマシンが最もよく使われる。Googleの Protocol Buffers は名前こそ似ているが、通信の規約ではなくデータの契約である。