Die Kommunikation zwischen zwei Rechnern über IPv4 läuft in der Regel wie folgt ab:
1. Ein Sender-Rechner will Daten an einen Empfänger-Rechner senden und erstellt eine Anfrage bzw. ein Datenpaket.
2. Der Sender-Rechner prüft, ob der Empfänger-Rechner im selben Netzwerk ist und somit direkt erreichbar ist. Ist dies nicht der Fall, wird die Anfrage an den nächsten Router weitergeleitet, bis der Empfänger-Rechner erreicht ist.
3. Der Sender-Rechner gibt das Datenpaket an die unterste Schicht des OSI-Modells, das so genannte “Physical Layer” weiter, welches das Paket in Bits und Bytes umwandelt und über das Netzwerk-Interface an den Empfänger-Rechner sendet.
4. Der Empfänger-Rechner empfängt das Paket und prüft die Ziel-Adresse des Pakets. Stimmt die Ziel-Adresse mit seiner eigenen Adresse überein, ist das Paket für ihn bestimmt und er leitet es zur weiteren Verarbeitung an den höheren Netzwerk-Schichten weiter.
5. Der Empfänger-Rechner prüft, ob das Datenpaket korrekt übertragen wurde, indem er das Prüfsummenfeld im Header des Pakets überprüft.
6. Anschließend wird das Paket auf den höheren Schichten des OSI-Modells weiterverarbeitet und den Anwendungen auf dem Empfänger-Rechner zur Verfügung gestellt.
7. Wenn der Empfänger-Rechner eine Antwort auf die Anfrage bzw. das Datenpaket senden muss, wird dieser Vorgang umgekehrt. Der Empfänger-Rechner erstellt eine Anfrage bzw. ein Datenpaket und sendet es an den Sender-Rechner auf demselben Weg zurück.