Internet Protocol
同じセグメント内のホスト同士の通信では、そのLANで使われているプロトコルを使って通信する。そのためIPの各実装では、そのLANで使われているプロトコルから完全に独立することはできない。
まず、送信先となるIPアドレスを持つホストにデータリンク層のデータとして送信するために必要な情報を収集しなければならない。例えばイーサネットであれば、送信先のIPアドレスを持つホストのインターフェースが持っているMACアドレスが対象となる。そのためにブロードキャストもしくはマルチキャストによってその特定のIPアドレスを持つホストに返答を要求する。そのIPアドレスを持っているホストはそれに対してMACアドレスを返答する。
一般にブロードキャストは負荷が高くLAN内の通信を阻害するため、こうして得られたMACアドレスは今後同じIPアドレスに送信するときには再度ブロードキャストせずに、キャッシュに控えておく。
IPの実装では、こうしたアドレス解決と実際の送受信部分だけはデータリンク層のプロトコルに依存することになる。しかしこの依存部分は、実際にそのデータリンク層のプロトコル を使うホストでのみ必要になるため、世界中に存在する各セグメントとの通信の際には問題にならない。異なるデータリンク層のプロトコル を使うセグメントに分かれたホスト同士の通信の場合は、後述するゲートウェイがこれを解決する。
IPの設計原理は、ネットワーク基盤はどのネットワーク要素や伝送媒体をとっても本質的に信頼できないと仮定しており、また、リンクやノードの可用性の面でも一定でないと仮定している。ネットワークの状態を追跡し維持する集中監視機能や性能測定機能は存在しない。ネットワークを単純化するため、知的な部分は意図的に各データ転送の端点であるノードに担わせ、これをエンドツーエンド原理と呼ぶ。転送経路の途中に位置するルーターは、宛先アドレスのルーティングプレフィックスにマッチする最も近いゲートウェイにパケットを転送するだけである。
このような設計の結果、IPはベストエフォート式配送のみを提供し、「信頼できない」と見なされている。ネットワークアーキテクチャとしては「コネクションレス」プロトコルであり、コネクション指向の転送モードとは対照的である。信頼性がないため、データが壊れたり(英語版)、パケットを消失したり、パケットが複製されたり、パケットの順序が入れ替わって受信されたりする。ルーティングはパケット毎に動的に行われ、ネットワークは以前のパケットが通った経路についても状態情報を保持しない。そのため一部のパケットが他より長い経路を通ることがあり、受信側でパケットを受信する順序がおかしくなる可能性がある。
信頼性のないIPv4で唯一確かなのは、IPパケットのヘッダには誤りがないという点である。ルーティングするノードは、パケットのチェックサムを計算する。もしチェックサムが合わない場合、そのノードはそのパケットを捨てる。
IPは、パケットのヘッダ部分に記された宛先アドレスに基づいてネットワーク内でパケットを転送することによってデータを送信する。
パケット(英: packet)はIPにおける送受信単位である。パケットはヘッダとペイロードからなり、ヘッダの情報に基づいて宛先アドレスの経路へと送られる。ヘッダ(英: header)はメタデータの集合であり、バージョン番号・送信元アドレス・宛先アドレスなど、送受信に必要な情報が含まれている。ペイロード(英: payload)はパケットのヘッダ以外の部分であり、IPで転送するコンテンツが主体で、場合によりメタデータも含んでいる。
パケットは送信元から宛先へ直接送られるのではなく、いくつものホスト (gateway) を経由する。Gatewayはヘッダの宛先アドレスを確認し、宛先への経路上にある次のGateway(あるいは宛先そのもの)へとパケットを転送する。これを繰り返すことでパケットは最終的に宛先アドレスに到達する。
経路上に転送可能サイズ上限があった場合はパケットが弾かれる可能性がある。IPではパケット長制限が無い代わりに、フラグメント化機能(パケットを小パケットへ分割する機能)を提供してこの制約を回避する。
しかしブリッジはIPより下位の層(OSI参照モデルのデータリンク層)の機器であり、IPとは関係なく動作する。
また特に、異なるプロトコルを用いるセグメント同士の間をつなぐルータはゲートウェイ(門)と呼ばれる。本来、ゲートウェイはOSI参照モデルのネットワーク層におけるブリッジに相当するルータの基本機能の一部だが、セグメントのほとんどがイーサネットになっているため、特にセグメントとWANとの間にあるルータだけがゲートウェイであることが多い。またルータが把握していないIPアドレスは(ルーティング処理の一環として)全てデフォルトゲートウェイと呼ばれる特別なゲートウェイに送られる。デフォルトゲートウェイは通常WANとの接続部分にあるため、未知のIPアドレスへのパケットは全てWAN側(外の世界)のルータにパケットを送信することになる。そしてWANのルータが送信先となるIPアドレスの存在するセグメントのゲートウェイにパケットを送信し、ゲートウェイが送信先となるIPアドレスを持つホストにパケットを送信することで世界中のホストと通信が行なわれる。