通信プロトコル
通信プロトコル(つうしんプロトコル、Communication protocol)は、通信に関する規格のことである。「通信規約」や「通信手順」ともいう。
通信を行うためには、通信に参加するもの同士の間で、あらかじめ通信に関する規格を定めなければならない。
たとえば、江戸時代においては、旗振り通信により、米相場を各地に伝達していたが、旗を振る向きや回数の意味について、事前に打ち合わせて決めておかなければ意味を成さない(上げ相場は左横上で二振、下げ相場は右横下で二振、など)。
プロトコルを定め、それに従うことは、通信を成立させるための基本原理と言える。プロトコルが異なる機器同士で通信を行いたい場合は、プロトコルコンバータのような機器を使用する。
一つの通信でも、役割の異なる複数のプロトコルから成り立っていることも多く、それらをまとめたものは「プロトコルスタック」、「プロトコル・ファミリー」、「プロトコル・スイート」などと呼ぶ。これは、ネットワーク・プロトコルが階層的に定義されているのに対応して、それを実装するソフトウェアも階層的に構築されるためである。また、このことからプロトコルや、プロトコル・スタックは、しばしばそれらのソフトウェアでの実装を指すこともある。
現在広く普及しているプロトコル・スイートとしては、インターネット・プロトコル・スイート(TCP/IP)が挙げられる。インターネットの通信に関するプロトコルは、コンピュータ上で動くソフトウェアに関する取り決めを中心に、伝送路などのハードウェアについての取り決めも含まれ、そのほとんどは、IETFによって定められ、その他のものについてはIEEEやISOなどの組織によって定められている。ITU-Tは電気通信に関するプロトコルの策定を行う。
通信プロトコルは、伝送路の物理条件、伝達、相手の特定、情報表現の4つの基本要素より成り立っている。
有線通信の場合は、ケーブルとコネクタの形状と電気特性や光学波長、変調方式を規定する。無線通信の場合は、周波数帯や変調方式を規定する。例えば、IEEE 802.11, Bluetooth, ZigBeeなどがある。
伝達に関する要素として、通信プロトコルの中核をなす多くの決まりごとが規定されている。この中には信号にどのように「1」と「0」を割り当てるのかといった「符号化コード」から始まって、「同期」、「アクセス制御」、「誤り制御」、「フロー制御」などの各方式の規定が含まれている。
1対1の通信路に関するプロトコルでは例外的に規定の必要がないが、複数の端末が接続されるネットワーク上では送信先を特定する必要がある場合が多い。個別の「アドレス」によって特定できるが、1つの端末には、MACアドレスやIPアドレスのように用途によって複数種類のアドレスが割り振られることが多く、それらの間での変換ルールに関しての複雑な取り決めが規定されている。
ビットの羅列を有効な情報として通信するために、情報の表現ルールを相互に取り決める必要がある。ビットの区切り単位として古くは6ビットや7ビットで1つの文字を表現していたが、今では多くが8ビットで区切られたASCIIコードを文字コードとして使っていることが多く、日本ではシフトJIS等も使用される。また、いくつかの文字の組み合わせでコマンドとする取り決めや、送信する内容、つまりデータそのものの表現方法も取り決めておかなくてはならない。こういった情報の配置と構成に関する表現ルールがパケット・フォーマットやフレーム・フォーマットといった形で、詳細な取り決めが規定される。
以下は各種の通信プロトコルについて、OSI参照モデルの7層のうち最も近い層に分類したものになっている。
ISDN Integrated Services Digital Network
RCR STD-28 (PHS)
10Base-T、100BASE-TX、1000BASE-T(イーサネットで使用される物理層の仕様)
PDH Plesiochronous Digital Hierarchy、SDH統一前の地域別同期網
T-carrier (T1, T3 など)、ISDNの多重化
RS-232C、EIA-574、シリアル・インタフェースで、当初はモデムやコンピュータ端末の接続のために開発された
SDH Synchronous Digital Hierarchy、PDH後続の国際統一同期網
SONET Synchronous Optical NETworking、SDHへと標準化前の規格
ARP Address Resolution Protocol
FDDI Fiber Distributed Data Interface
LAP (Link Access Procedure) 、X.25用
HDLC High Level Data Link Control
LAPB (Link Access Procedure, Balanced) 、LAPのHDLC互換版
LAPD (Link Access Procedure on the D-channel) 、LAPBのISDN Dチャネル版
LAPDC (Link Access Procedure for Digital Cordress) 、RCR STD-28 (PHS) 用
LAPM (Link Access Procedure for Modem) 、アナログモデム用
LAPF (Link Access procedure for Frame-Relay) 、フレームリレー用
PPP Point-to-point protocol
フレームリレー X.25を単純化したもの
ATM Asynchronous Transfer Mode
MPLS Multi-protocol label switching
ICMP Internet Control Message Protocol
IP Internet Protocol そのもの
IPv4 Internet Protocol version 4、現在の標準
IPv6 Internet Protocol version 6、現在広がりつつある
IPX Internetwork Packet Exchange
ルーティング・プロトコル:
自律システム(AS)間のルーティング
EGP Exterior gateway protocol (現在使われていない)
BGP Border gateway protocol
独立の自律システム(AS)内におけるルーティング
EIGRP Enhanced interior gateway routing protocol
IGRP Interior gateway routing protocol
RIP Routing information protocol
OSPF Open shortest path first
X.25PLP (Packet Level Protocol) 、X.25用
XNS Xerox network services
SPX Sequenced Packet Exchange
TCP Transmission Control Protocol
UDP User Datagram Protocol
SSL Secure Sockets Layer
TLS Transport Layer Security
IPSec IP Security Protocol
SIP Session Initiation Protocol
H.323 Packet-based multimedia communications systems
HTTP HyperText Transfer Protocol、 World Wide Webで利用されている
SMTP Simple Mail Transfer Protocol
File Transfer Protocol
POP3 Post Office Protocol Version 3
Telnet 遠隔端末アクセスプロトコル
IMAP Internet Message Access Protocol
HTTP over TLS(HTTPSなどで使われる)やSMTP over SSL、STARTTLSなど、上記のプロトコルにおけるセキュリティ上の欠点を補ったものもある。
SDP Session Description Protocol
AFP Apple Filing Protocol
NFS Network File System
SNMP Simple Network Management Protocol
Gnutella ピア・ツー・ピアのファイル交換プロトコル
DNS Domain Name System
SSH Secure SHell
NTP Network Time Protocol
Gopher World wideな文書共有システム
Finger 登録ユーザのプロファイル情報の取得
NNTP News Network Transfer Protocol
LDAP Lightweight Directory Access Protocol
DHCP Dynamic Host Configuration Protocol
IRC Internet Relay Chat
WebDAV Web Distributed Authoring and Versioning
DICT Dictionary protocol
通信に関して最初にProtocol(プロトコル)という用語が使われたのは、1968年に稼動を開始したARPANET(アーパネット)である。ARPANETは世界最初のコンピュータ・ネットワークとして、また、現在のインターネットの母体となったネットワークとして知られている。
その後、ARPANETを手本にさらに良いネットワークを構築するために生み出されたX.25という通信手順の登場で、プロトコルという用語が広まり定着した。
CAN(Controller Area Network),LIN(Local Interconnect Network), FlexRayのような車載機器の通信規格がある。
Echonet, ECHONET Liteのような家電用通信規格がある。
ARCNET(Attached Resource Computer NETwork)のような機器間の通信規約がある。
SpaceWireのような航空宇宙用の通信規約がある。
暗号通貨は多種多様に現存していて、トークンの特異性かつ暗号通貨間のチャネリング(交信)を指すことがある。
メーカー独自の通信プロトコル(ベンダーロックイン)が多いが、スマートファクトリー・インダストリー4.0といった取り組みより、異なる製造元の装置が通信できる規格もある。OLE for Process Controlのような通信規格がある。
BACnet, LonTalk, X10, ZigBeeのような通信規格がある。
ASN.1 Abstract Syntax Notation One
ABNF Augmented BNF (Backus-Naur Form)
井上直也、村山公保、竹下隆史、荒井透、苅田幸雄:「マスタリングTCP/IP―入門編―(第6版)」、オーム社、ISBN 978-4-274-22447-8(2019年12月)。