【僕の学習ノート】主要な通信プロトコル12選
こんにちは、なおやです。
今日は、Courseraというプラットフォームで、Metaの社員さんたちから授業を受けました。
そこで得た学びが、下記のツイートです。
#今日学んだこと 主要なプロトコル
TCP:確実で遅いデータ転送
IP:インターネット形成
UDP:荒く早いデータ転送
HTTP:Web閲覧
DHCP:IPアドレス振り当て
DNS:ドメインをIPアドレスに変換
IMAP:メール参照
SMTP:メール送信
POP:メール取得
FTP:ファイル転送
安全版→SFTP
SSH:安全な遠隔操作— Naoya (@kaigaiblog63) October 5, 2022
今回は、これを掘り下げて解説していきます。
この記事の信憑性
この記事は、Courseの授業を受けて、学び、理解したことを基に、僕なりの言葉と解釈で分かりやすく解説しています。まあ簡単にいうと、僕が学んだことのアウトプットノートです。※ 注意:僕はまだ日々学習している段階です。解説していることに間違いがある可能性も否定できません。何か間違いを見つけて下さった方は、このWebサイトの向上のと僕の学習の為に、教えてください🙏
» Courseraという素晴らしいプラットフォームはこちら (授業は全て英語です)
【僕の学習ノート】主要な通信プロトコル12選
今回は、主要な通信プロトコルを12個まとめました。
この記事の目次
- 1. TCP (The Transmission Control Protocol)
- 2. IP (Internet Protocol)
- 3. UDP (User Datagram Protocol)
- 4. HTTP (Hypertext Transfer Protocol)
- 5. DHCP (Dynamic Host Configuration Protocol)
- 6. DNS (Domain Name System Protocol)
- 7. IMAP (Internet Message Access Protocol)
- 8. SMTP (Simple Mail Transfer Protocol)
- 9. POP (Post Office Protocol)
- 10. FTP (File Transfer Protocol)
- 11. SSH (Secure Shell Protocol)
- 12. SFTP (SSH File Transfer Protocol)
TCP (The Transmission Control Protocol) とは?
TCPとは、インターネット上で、あるネットワークから別のネットワークにデータを転送する際に用いられる通信プロトコルのことです。
データの順序や内容を保証し、確実なデータ転送を可能にしますが、その分データを転送するスピードが遅くなるという特徴があります。
IP (Internet Protocol) とは?
IPとは、複数のネットワークを相互に接続し、データを中継・伝送して一つの大きなネットワーク (インターネット) にしてくれる通信プロトコルのことです。
» 詳しくはこちら
UDP (User Datagram Protocol) とは?
UDPとは、インターネット上で、あるネットワークから別のネットワークにデータを転送する際に用いられる通信プロトコルのことです。
またUDPは、データの破損だけしか防がないことから確実なデータ転送は不可能ですが、その分データを転送するスピードが早いという特徴があります。
HTTP (Hypertext Transfer Protocol) とは?
HTTPとは、私たちがWebを閲覧する際に使用する通信プロトコルのことで、WebブラウザとWebサーバーの間で通信する際に使われます。
» 詳しくはこちら
DHCP (Dynamic Host Configuration Protocol) とは?
DHCPサーバが使用している通信プロトコルをDHCPといいます。
DHCPとは、インターネットに新たに接続した機器に、IPアドレスなどの通信に必要な設定情報を自動的に割り当てる通信プロトコルのことです。
つまりDHCPサーバーは、この通信プロトコルを使うことで、利用者のコンピューターにIPアドレスなどを自動的に割り当てています。
DNS (Domain Name System Protocol) とは?
DNSサーバーが使用している通信プロトコルをDNSといいます。
DNSとは、ドメイン名をIPアドレスに変換してくれる通信プロトコルのことです。
つまり、私たちがURLを入力する度に、このDNSがそのURLのドメイン名をIPアドレスに変換してコンピューターがそのWebサイトにアクセスできるようにしてくれます。
IMAP (Internet Message Access Protocol) とは?
IMAPとは、私たちユーザーがメールをそれぞれの端末にダウンロードしなくても、それぞれの端末からメール受信サーバーにアクセスすることで、メールの閲覧を可能にさせてくれる通信プロトコルのことです。
SMTP (Simple Mail Transfer Protocol) とは?
SMTPとは、電子メールクライアント (Email Client:Gmailなどのメールソフトのこと) からSMTPサーバーを介して電子メールを送信することを可能してくれる通信プロトコルのことです。
また、電子メールを送るだけではなく、受け取ることもできますが、基本的にIMAPがよく使われます。
POP (Post Office Protocol) とは?
POPとは、昔よく使われていた通信プロトコルのことで、メール受信サーバーから電子メールクライアントにメールをダウンロードする際に使われます。
IMAPとの違いは、端末にダウンロードするとサーバーから「そのメール」が削除される点です。
もう一般的にはあまり使われることは少ないですが、IMAPよりも簡単である為、デベロッパーが電子メールの自動化を実装する際によく使います。
FTP (File Transfer Protocol) とは?
FTPとは、サーバーとクライアントの間でファイル転送を行う際に使われる通信プロトコルのことです。
またFTPを使用するには、使っているサーバにFTPサーバーをインストールし、クライアント側のデバイスではFTPクライアントをインストールしている必要があります。
SSH (Secure Shell Protocol) とは?
SSHとは、ネットワークを通じて遠隔地にあるサーバーなどを安全に操作するための通信プロトコルのことです。
またSSHを使用するには、クライアントのデバイスではSSHクライアントを、操作したいサーバーではSSHサーバーをインストールしておく必要があり、これをすることでサーバーに命令をすることが出来るようになります。
さらに、この2者間の通信は暗号化されており、第三者が覗き見て情報を盗みとられる心配はありません。
SFTP (SSH File Transfer Protocol) とは?
先ほど紹介したFTPでは、暗号化されておらず第三者に情報を盗まれる可能性があります。そこで、SSHという通信プロトコルを使ってファイル転送を行うことを可能にしたのがSFTPという通信プロトコルです。
また、ほとんどのFTPクライアントでSFTPプロトコルを使うことが出来ます。
以上!