学習記録#25 250702

542ページから

練習問題から

こいつをどう覚えるか、、

TCP:
信頼性の高い通信を実現するためのコネクション型のプロトコル
コネクション型:
相手に通信データが正しく届いていることを確認しながら通信するので信頼性が高くなる
TCPを利用する上位のプロトコルは、信頼性を高めるためのエラー制御などをTCPに任せてしまうことができる

TCPの代表的な機能
- 途中で消失やエラーが発生したパケットを再送
- パケットの伝送順序を整列
TCPは、FTP、Telnet、POP、SMTPといった多数の上位プロトコルで利用される
途中で消失とかエラーになったパケットの再送ってどういう原理なんだろうか、、
どっかで保持しといて、通信できたか否かでもう一回送ってる感じ?

コネクション型のプロトコルは、通信相手が確実に受け取り準備ができたことを確認した上で通信して、確実に相手に届いたかどうかも確認する

IP:
TCPやUDP、ICMPなどのデータ転送を司るコネクションレス型のプロトコル
コネクションレス型:
相手にデータが正しく届いているかどうかを確認せず一方的に送信するので信頼性は低くなるが、伝達速度は速い

IPの代表的な機能
- IPアドレスの規定
- データグラム(伝送単位)の規定
- データグラムが伝送されるネットワーク経路の制御

IPv6:
IPv4を拡張したIPプロトコル
IPv4は32ビットでアドレス部分を表すが、2011年に割り当て可能なIPアドレスが底をついた。IPv6はアドレス部分が128ビットあるので、将来に渡って問題なく運用できる
セキュリティ機能など、IPv4になかった機能も取り入れられている

UDP:
データの転送速度に重点を置いたコネクションレス型のプロトコル
相手に通信データが正しく届いているか確認する機能はない代わりに通信の処理にかかるコストが少なく済む

ICMP:
エラーメッセージや制御メッセージを伝送するコネクションレス型のプロトコル
pingコマンド、tracerouteコマンドで利用される

IPアドレス(IPv4)は、8ビットごとに.で区切って10進数で表記する

IPアドレスは、ネットワーク部とホスト部に分割できる
ネットワーク部:
ネットワークセグメントを識別する
ホスト部:
ネットワークセグメントないの機器を識別する

ネットワーク部とホスト部の境界を求めるのに必要なのが、サブネットマスク
サブネットマスクはIPアドレスとセットで使われる、32ビットで構成されて8ビットごとに区切られたもの
IPアドレスとサブネットマスクの論理積により、ネットワーク自身を表すネットワークアドレスを算出できる

ホスト部のビットを全部1にしたアドレスをブロードキャストアドレスと呼ばれる
同じネットワークに属する全てのホストに送信するための特別なアドレス
ネットワークアドレスとブロードキャストアドレスは、ネットワークデバイスに割り当てることができない。
また、ネットワークアドレスが異なるネットワークへは、ルーターを介さないと通信できない

IPアドレス:11000000.10101000.00000001.00000010 = 192.168.1.2
サブネットマスク:11111111.11111111.11111111.00000000 = 255.255.255.0
ネットワークアドレス:11000000.10101000.00000001.00000000 = 192.168.1.0
ブロードキャストアドレス:11000000.10101000.00000001.11111111 = 192.168.1.255
※論理積:積ってことは&なので、どっちも1なら1、どっちか1つでも0なら0

クラス:
IPアドレスのネットワーク部を見て、
ビット数 | クラス |
---|---|
8 | A |
16 | B |
24 | C |
のように規定されている。
上記以外のパターンでDとEもあるが、一般的にはA~Cが利用される

IPアドレスの先頭8ビットが0の場合はデフォルトルートを、127の場合はローカルループバック(自分自身を表す特殊なアドレス)になる

localhostの127.0.0.1ってローカルループバックだったのか〜
2進数に直すとこんな感じ?
01111111.00000000.00000000.00000001

クラスCでは、1ネットワークあたりのホスト数は254になる
ただし、ネットワークアドレスとブロードキャストアドレスはホストに割り当てられない
しかし、クラスによる区分を用いると、最小でも組織ごとに256個のIPアドレスが消費されてしまうため、より柔軟な運用のためにCIDRが規定された

CIDR:
ネットワークアドレス部は1ビット単位で扱える
例)
サブネットマスクを255.255.255.192(26ビット)とすると、ホスト部が2ビット減る代わりにネットワークが2ビット増え、それだけ多くの組織にIPアドレスを割り当てることができる

ホスト部が2ビット減るって何?

そもそも、255.255.255.0が24ビットになるのは、
11111111.11111111.11111111.00000000
2進数に変換した時に1の部分をネットワーク部、0の部分をホスト部とするので、ネットワーク部(1)が24個で24ビットになる。
で、255.255.255.192は、2真数にすると
11111111.11111111.11111111.11000000
こうなって、ネットワーク部が26個あるので26ビットになる
この場合、ホスト部から上位2ビットが消えるので、「ホスト部が2ビット減る」のように表現する

このネットワークは、たとえば192.168.0.0 /26のように、「/ネットワーク部のビット数」で表す