ポートとは、ネットワークでデータを通信するために必須な知識です。
扉のようなものを想像してください。もっといえば、接続口となる部分です。
メールを送る場合と受け取る場合で、扉(ポート)は異なるので、それぞれに適したポートを使うことが必要です。
ポートとは?
通信で何かを受信する際には、ネットワークを通ってきたデータが、たくさんあるポート(扉)のどれかを通ってコンピュータに入ってきます。送信するときも同様です。
このとき通信しているプロセスには「ポート番号」というものが割り振られます。
ポートは、コンピュータとネットワークの間にある扉で、ネットワークとコンピュータの間を行き来するデータが通ります。
それぞれのこのポート番号を目印にして、どのアプリケーションとどのアプリケーションが通信をとっているのかを判別することになります。
例えば、インターネットのデータは80番のポート(扉)を通ると決まっています。
ポート番号
IPアドレスはよく建物の住所に例えられます。一方で、ポート番号は「何号室か?」という例えになります。どこの建物の(IPアドレス)の何号室(ポート番号)なのかを、これで識別しているんですね。
代表的なポート番号、あとプロトコルも
ポート番号とプロトコルの代表的なものを紹介しますね。
TCP 20 : FTP (データ)
TCP 21 : FTP (制御)
TCP 22 : SSH
TCP 23 : Telnet
TCP 25 : SMTP
UDP 53 : DNS
UDP 67 : DHCP(サーバ)
UDP 68 : DHCP(クライアント)
TCP 80 : HTTP
TCP 110 : POP3
UDP 123 : NTP
TCP 443 : HTTPS
WELL KNOWN PORT NUMBERS 0~102
https://eng-entrance.com/network-port
メールだけでなく、ファイルの送受信やサーバーとのやりとりなど、通信によって細かく分けられていることがわかりますね。
TCPやUDPで通信を行うときは、コンピュータ一台という単位ではなく「プログラム単位」つまり「プロセスやスレッド単位」で通信が行われます。そのため、プロセス同士、正しく通信が行われるために、ポートが分けられているのです。
TCPなどについては、また別の記事で詳しく解説したいと思います。
ポートは扉
ポートってなんですか? と聞かれたときに、忘れないためにも、ポートはインターネットとコンピュータをつなぐ扉なんだと覚えておきましょう。そして、その扉それぞれには固有の番号が振られていることも忘れないようにしておいてください!
続きは、SUNABACOプログラミングスクールへ!