レイヤ3 ネットワーク層の役割は、ルーティングとネットワークアドレッシングです。
1. ルーティング
ルーティングとは宛先ネットワークまでの最適なルートを決めることを言います。

ここで言う最適ルートとは単に近いからというわけではなく、近さ、回線速度の速さ、遅延などの中から選ぶ最適なルートのことを指します。
この最適ルートを決定するとき、何を優先するかはルーティングプロトコルによって決められています。
(例えばRIPだと近さ)
ルーティングプロトコルについては後の章で説明します。
2. ネットワークアドレッシング
ネットワーク層ではIPアドレス(住所のようなもの)を使い、IPアドレッシングを行います。
IPアドレスで宛先ネットワークまでIPというプロトコルを使ってパケットを運びます。
このようにIPアドレスを使って宛先ネットワークまで届けます。後はレイヤ2 データリンク層(MACアドレス)を見て宛先まで届けます。
IPパケットを運ぶIPプロトコルはネットワーク層では不可欠のプロトコルです。
このIPは複数のプロトコルから成り立っており、このIPの欠かせない機能としてICMPというプロトコルがあります。
IP通信では送信したパケットが相手に届かないことがあり、
その原因は通信経路の途中にあるルータがパケットを処理しきれずに捨てているかもしれないし、あるいは宛先まで届いていたのだが、
宛先ポート番号を間違えていたために、届かなかったなど様々な原因が考えられます。
こんな時、エラーが起きたことを送信元に知らせなければいけません。
この役割をもつのがICMPプロトコルです。
以下に代表的なICMPメッセージを示します。
・Destination Unreachable(宛先到達不能)
なんらかの理由で宛先まで届かなかった場合に出るメッセージです。
・Buffer Full(バッファ不足)
ルータがデータを受信するためのメモリバッファが一杯になると出るメッセージです。
・ホップ数
ホップ数とは通過できるルータの数を示します。もしデータが宛先に到達する前にホップ数が限界になった時は
ルータはこのデータを破棄します。そうなった場合に出るメッセージです。
・エコー要求・エコー応対
代表的な通信の確認コマンドであるPingコマンドのエコー要求とエコー応対もICMPメッセージになります。