pulpul 日本の試験

データベーススペシャリスト 概念書 · ネットワーク

通信プロトコルの層と役割

要点と定義

通信プロトコルは、機器やソフトウェアが通信するときの手順やデータ形式を定めます。TCP/IPでは、層ごとに役割を分け、上位層のデータにヘッダーを付けて下位層へ渡します。パケットを運ぶときは、各層のヘッダーにある宛先情報を順にたどれます。代表的なサービスのポート番号は、トランスポート層で通信先のサービスを識別します。

データリンク層では、同じリンク上でデータを届けるためにMACアドレスを使います。ARPは、IPv4アドレスに対応するMACアドレスを調べるプロトコルです。宛先が別ネットワークにある場合、端末は通常、最初の転送先であるルーターのMACアドレスを調べます。ARPはIPアドレスの割当てや経路選択をしません。

ネットワーク層のIPは、IPアドレスを使ってネットワーク間でパケットを転送します。サブネットマスクの1のビットはネットワーク部、0のビットはホスト部を表します。アドレスを a、マスクを m とすると、ホスト部を取り出す式は a & ~m です。~m でホスト部の位置を1にし、論理積でその位置にある a のビットを残します。

トランスポート層のTCPとUDPは、ポート番号を使って通信先のアプリケーションを識別します。TCPとUDPでは通信の機能や性質が異なり、どちらを使うかはプロトコルや用途によります。たとえば、過去の出題で扱った補足として、NTPが通常UDPを使う例があります。これはシラバスに記されたアプリケーション層プロトコルの役割に関連する具体例です。

適用条件と例

端末のIPアドレスが 192.0.2.37、サブネットマスクが 255.255.255.0 の場合、マスクの最後の8ビットが0なので、ホスト部は 37 です。ビット演算では a & ~m で同じ部分を取り出せます。この計算は、マスクの1がネットワーク部、0がホスト部を示す前提です。

イーサネットでTCPのデータを送ると、宛先MACアドレスはイーサネットヘッダー、宛先IPアドレスはIPヘッダー、宛先ポート番号はTCPヘッダーに含まれます。したがって、各ヘッダーの宛先情報を送出順にたどると、MACアドレス、IPアドレス、ポート番号の順です。

DHCPでは、クライアントがDHCPサーバのアドレスを事前に設定しなくても、IPアドレスなどの設定情報を取得できます。固定アドレスの端末とDHCPを使う端末は同じLANに置けますが、固定アドレスがDHCPの割当範囲と重ならないようにします。割当てにはリース期間があるため、同じアドレスが必ず再割当てされるとは限りません。

過去の出題で扱った補足として、NAPTはIPアドレスとポート番号を使って通信を識別し、複数端末で一つのグローバルIPアドレスを共有する仕組みです。また、IMAPSはIMAPによる受信通信をTLSで保護します。これらは過去の出題で扱った具体例であり、現行細目に明記された項目とは断定しません。

誤りやすい点

ARP、ICMP、ルーティング、DHCPの役割は異なります。ARPはIPv4アドレスからMACアドレスを解決し、ICMPはIP通信の誤り通知や診断に使われ、ルーティングは経路を選び、DHCPは端末に設定情報を割り当てます。IPアドレスからMACアドレスを調べる処理を、IPアドレスの割当てや経路制御と混同しないようにします。

ここまでが冒頭部分です。ログインすると、無料でも1日2節まで全文をお読みいただけます。

アプリでこの節を読む