Poprzedni rozdział wyjaśnia w jaki sposób tworzone są jednostki danych protokołu (PDU - and. Protocol Data Unit) i przechodząć przez kolejne warstwy, aż do ich wysłania poprzez medium. Na hoście docelowym proces ten przebiega odwrotnie i dane z medium transmisyjnego przekazywane są do aplikacji.

Niektóre aplikacje transmitują duże ilości danych - w niektórych przypadkach, wiele gigabajtów. Wysyłanie takiej ilości w jednym kawałku byłoby bardzo niepraktyczne. Transmisja takiego wielkiego kawałka zatrzymałaby inne transmisje w sieci na długi czas. Mogłoby okazać się nawet, że taka transmisja trwałaby kilka godzin lub dni. Dodatkowo, gdyby podczas transmisji zdarzył się jakiś błąd, całość danych musiałaby zostać retransmitowana. Urządzenia sieciowe nie mają zwykle zbyt dużych buforów, by mogły obsługiwać większe porcje danych. Limit ten zwykle określany jest przez używaną technologię sieciową, związaną bezpośrednio z wykorzystywanym medium.

Dzielenie danych aplikacji na segmenty umożliwia transmitowane ich z limitami określonymi przez medium, a także to, że dane z różnych aplikacji mogą być multipleksowane.

Różnice w segmentacji TCP i UDP

Jak przedstawiono na rysunku, każdy nagłówek segmentu TCP zawiera numer sekwencyjny, pozwalający na złożenie wiadomości u źródła w kolejności ich wysłania. Aplikacja docelowa otrzymuje dane dokładnie w takiej kolejności, w jakiej zostały wysłane.

Pomimo tego, że UDP także rozróżnia konwersacje pomiędzy aplikacjami, nie interesuje się kolejnością datagramów, czy ustanawianiem połączenia. W nagłówku UDP nie ma pola z numerem sekwencyjnym. UDP jest prostszym protokołem, generuje mniejszy narzut niż TCP, dzięki czemu dane przesyłane są szybciej.

Informacja może dotrzeć do celu w innej kolejności niż została wysłana, gdyż pakiety mogą biec różnymi drogami. Aplikacja używająca UDP musi tolerować fakt, że dane mogą nie docierać w kolejności w jakiej były wysłane.