通信プロトコル(communication protocol)の概要をまとめました。
通信プロトコルとは
通信プロトコルは、通信に関する規格を規定したものです。どういったルールで通信を行うか、ということを定めている概念だといえます。
通信プロトコルはIETF(Internet Engineering Task Force)が主に規格を定め、IETF以外にはIEEEやISOといった組織も規格を定めている。
代表的な通信プロトコル
エンジニアとして稼働する際に頻繁に目にするプロトコルの例は以下です。
通信プロトコル | ポート番号 | RFC |
IP | ||
SSH | 22 (tcp) | RFC 4250 |
echo | 7 (tcp/udp) | RFC 862 |
http | 80 | |
domain | 53 | |
ftp | 21 |
ポート番号と通信プロトコル
通信プロトコルは「通信の手順を定義して示したもの」で、ポート番号は「TCP/IP通信でコンピュータが通信に使用するプログラムを識別するための番号」という違いがある。
ポート番号は16ビットの整数で構成されるため、2^16(2の16乗、つまり2を2×2×2…と続けて16回かけた数)=65535まで存在する。ポート番号は0番もあるので、0番~65535番まで存在している。
通信プロトコルごとにポート番号は異なり、ポート番号0番から1023番までがウェルノウンポート番号(well-known、つまりよく知られているという意味の単語が使われているポート番号)で、ポート番号を割り当てるときは1024以降の番号を割り当てて通信を行うよう設定する。ポート番号は重複しないように設定しなければ通信に不具合が発生することがある。
TCPとUDP
TCPは3ウェイハンドシェイクという方法を使い接続を確立する方法で通信を行い、UDPは3ウェイハンドシェイクも行わず、一方的に送信者からデータを送信する、コネクションレスの通信を行います。
TCPとUDPの違いについては別の記事でまとめます。
TCPもUDPもそれぞれ通信プロトコルの一つです。
TCP/IP
ネットワークの勉強をしているとよく見かける「TCP/IP」という単語ですが、これはTCPとIPの通信プロトコルのことです。TCP/IPはTCPとIPのことを指しています。ややこしいですが、TCP/IPにはUDPのことも含まれています。
TCP/IPとは,TCPとIPという二つのプロトコルを指すだけでなく,TCP,IP,UDPといったTCP/IPプロトコル群全体を指す総称として使われる。
TCP/IPはなぜ二つがセットで呼ばれるのか?TCP/IPという用語はTCP(transmission control protocol)とIP(internet protocol)という二つのプロトコルを組み合わせたものだ。しかし,なぜこの二つを組で呼ぶだろうか。今回は,TCP/IP...
TCPはOSI参照モデルのL4(トランスポート層)で使用する通信プロトコルです。
IPはOSI参照モデルのL3(ネットワーク層)で使用するプロトコルです。
以下の質問と回答も参考になると思います。
