アプリケーション層プロトコルについてみんなが知りたいこと

[voice icon=”https://tomslifestylelab.com/wp-content/uploads/2019/05/tom0212.png” name=”この記事を書いている人” type=”l”]

ネットワークエンジニア
Tom

Tomとかいうやつが何者なのか知りたい方は下のプロフィールをご覧ください。

プロフィール

[/voice]

こんにちは、Tomです。

今回は、

「アプリケーション層プロトコル」

についてお話していきます。

といっても、アプリケーション層プロトコルについて全てを解説するわけではありません。

アプリケーション層の導入として、アプリケーション層プロトコルにはどんなものがあるのかご紹介していきたいと思います。

あなたが普段何気なく使っているインターネットには、これからご紹介するプロトコルがたくさん使われていますので、

取っつきにくかったアプリケーション層プロトコルが、少しは身近なものに感じられるかもしれません。

それでは、一緒に学んでいきましょう。

1.アプリケーション層プロトコル

アプリケーション層プロトコルには、主に以下の11個のプロトコルがあります。

この11個は主要メンバーです。この他にもたくさんありますが、まず覚えるべきものはこの11個です。

  • DNS
  • DHCP
  • HTTP
  • HTTPS
  • SMTP
  • POP3
  • FTP
  • TFTP
  • SNMP
  • TELNET
  • SSH

あなたも見たり聞いたりしたことがあるプロトコルがあるかもしれません。

一つずつ見ていきましょう。

2.DNS

DNSとは、

「Domain Name System」

の略です。

DNSがなにをするのかというと、ドメインとIPアドレスの対応を教えてくれます。

「https://www.google.com」とURLを入力して、Googleのトップページが表示されるのは、DNSのおかげです。

これは、インターネットにおいて最も重要なプロトコルといっても過言ではありません。

DNSがなければ、インターネットで検索するときに、いちいちIPアドレスを入力する羽目になります。DNSさまさまです。

3.DHCP

 DHCPは、

「Dynamic Host Configuration Protocol」

の略です。

 DHCPは、簡単に言えばIPアドレスを自動で配布するプロトコルです。

IPアドレスの数というのは世界で枯渇しています。足りないんです。

例えば、スマホならSoftbankなどの通信キャリアと契約して、インターネットを使っているわけですが、

通信キャリアは、電話番号のように契約者一人に一つのIPアドレスを与えているわけではありません。

IPアドレスは、常にそのとき使われていないものを割り当てられているだけです。

その時に、使われていないIPアドレスを自動で配布するのがDHCPです。

ちなみに、自分が今使っているIPアドレスは、

https://www.cman.jp/network/support/go_access.cgi

にアクセスすれば調べることが出来ます。

試しに今日と明日アクセスしてみてください。多分、別のIPアドレスになっていると思います。

4.HTTP

HTTPは、

「Hyper Text Transfer Protocol」

の略です。

HTTPは、Webサーバと、あなたのコンピュータの間で、データをやり取りするためのものです。

あなたが今、私のブログを見られるのもHTTPのおかげです。

URLの「https://www.〜」の「http」は、HTTPを使いますということです。

ちなみに、私のブログのURLは「https」となっています。

その違いはデータを暗号化してるか、していないかの違いです。

 HTTPSについては次をご覧ください。

5.HTTPS

HTTPSは、

「Hyper Text Transfer Protocol Secure」

の略です。

先ほども少し説明しましたが、HTTPと HTTPSの違いは、送受信するデータを暗号化しているか、していないかの違いです。

HTTPSは、送受信するデータをSSLという技術で暗号化しています。

例えば、クレジットカード情報を入れる決済画面や、個人情報を入力する画面はほぼ HTTPSを使用します。

そういうページのURLはだいたい「https://」となっています。

私はiPhoneを使っていますが、iPhoneのSafariの場合、 HTTPSを使用しているページなら、URLの前に鍵マークがついています。

もし、決済画面や個人情報入力画面のURLが「http://〜」となっていたら注意してください。暗号化されていません。

6.SMTP

SMTPは、

「Simple Mail Transfer Protocol」

の略です。

あなたのコンピュータから、メールサーバにメールを送信するためのプロトコルです。

また、メールサーバ同士でメールのやり取りをするときにも使われます。

じゃあ受信するときはどうするの?

って思いますが、受信するときは次の POP3を使います。

7.POP3

 POP3は、

「Post Office Protocol version3」

の略です。

 POP3は、メールサーバの自分のメールボックスにアクセスして、メールを受信するためのプロトコルです。

8.FTP

FTPは、

「File Transfer Protocol」

の略です。

FTPは、コンピュータ間でファイルをやり取りするためのプロトコルです。

TCPを使って信頼性の高いファイルのやり取りをします。

インターネットで、サーバからファイルをダウンロードするときに使われる、と言った方が理解しやすいかもしれません。

ファイルのダウンロードがすべてFTPで行われるわけではないですが、FTPは重要なので覚えておく必要があります。

9.TFTP

TFTPは、

「Trivial File Transfer Protocol」

の略です。

FTPでは、TCPを使って信頼性の高いファイルのやり取りをしますが、

TFTPはもうちょっと簡易的にファイルのやり取りをするためのプロトコルです。

TFTPの場合は、TCPではなくUDPを使って効率の良いファイルのやり取りを行います。

TCP、UDPについて詳しく知りたい方は、下の記事をご覧ください。

あなたも勘違いしてるかも?「TCP」と「UDP」の違いとは?

10.SNMP

SNMPは、

「Simple Network Management Protocol」

の略です。

SNMPは、ネットワークに接続されているルータなどのネットワーク機器やサーバを監視・制御するためのプロトコルです。監視・制御はネットワーク経由で行います。

11.Telnet

Telnetは、

「Teletype network」

の略です。

Telnetは、離れた場所にあるサーバなどを遠隔操作するためのプロトコルです。

Telnetを使えば、離れた建物にあるサーバやルータなどにも、TCP/IP通信により遠隔ログインして、コマンドを入力したり設定情報を見たりすることができます。

12.SSH

SSHは、

「Secure SHell」

の略です。

機能としてはTelnetと同じで、離れた場所にあるサーバなどを遠隔操作するためのプロトコルですが、

Telnetと異なる点は、遠隔地のサーバなどとの通信を暗号化するということです。

遠隔でサーバにログインするときにはパスワードなどを入力しますが、Telnetの場合は暗号化されていないため、パスワードを盗み見られる危険があります。

SSHの場合は、パスワードの入力などの通信もすべて暗号化するので、Telnetよりも安全な遠隔ログインが可能になります。

13.まとめ

いかがでしたでしょうか?

アプリケーション層プロトコルは、今回ご紹介した11個が非常に重要になります。

今回は簡単に紹介した程度でしたが、それぞれの詳しい動作などは、別に記事を書来たいと思います。

それでは、今回も最後まで読んでくださり、本当にありがとうございました。