Paket označuje v informatice blok dat přenášený v počítačových sítích založených na přepojování paketů, kde je možné přenášet data i při výpadcích některých spojů. Některé typy síťových spojů přenos paketů nepodporují (například tradiční telekomunikační linky typu bod-bod, anglicky point-to-point) a data se v nich přenášejí jako proud bajtů, znaků nebo bitů.
Ve starší češtině se germanismus paket (německy das Paket) užíval pro balík, balíček.[1] Paket je též slisovaný odpadový materiál vycházející z paketovacího lisu.[2]
Paket se skládá z řídících dat (metadat) a z uživatelských dat (užitečné zatížení, anglicky payload). Řídící data poskytují síti potřebná data k doručení paketu, například adresu zdroje a cíle, kódy pro detekci chyb – kontrolní součty a informace o pořadí. Obvykle se řídící data nalézají v hlavičkách paketů a na jejich konci, přičemž uživatelská data jsou mezi nimi.
Různé komunikační protokoly používají různé konvence pro rozlišování mezi řídícími prvky a daty. V binárních synchronních přenosech používají pakety 8bitové skupiny (bajty) a k vymezení jednotlivých prvků jsou použity speciální znaky. Další protokoly (například Ethernet), definují začátek hlavičky a datových prvků jako pozici vzhledem k začátku paketu. Některé protokoly formátují informace na úrovni bitů místo použití bajtové úrovně.
Dobrý způsob jak pochopit paket je představit si ho jako dopis: hlavička je jako obálka a oblast dat je cokoliv, co se dá dovnitř obálky. Rozdíl je však v tom, že některé sítě mohou rozdělit větší pakety na menší, pokud je to nutné (menší části zůstávají ve formátu paketů) – viz fragmentace IP datagramů.
Sítě využívající pakety mohou využít dvě základní výhody: detekci chyb a adresaci více cílů doručení.
Je efektivnější a spolehlivější vypočítat kontrolní součet nebo kontrolní cyklický kód z obsahu paketu než kontrolovat chyby pomocí paritního bitu. Přílohy paketů často obsahují data k detekci chyb, které se vyskytnou během přenosu.
Moderní sítě obvykle spojují tři nebo více počítačů. V takovém případě hlavička paketu obsahuje adresovací informace tak, že paket je přijat správným cílovým počítačem. Ve složitějších sítích postavených na redundantních spojích a spojovacích uzlech (jako byl ARPANET a je moderní Internet) může série paketů poslaných z jednoho počítače do druhého využít k dosažení stejného cíle různé cesty. Tato technologie se nazývá přepojování paketů.
Termín paket označuje jakoukoliv zprávu naformátovanou jako paket, zatímco termín datagram označuje pakety služby nespolehlivého přenosu dat. Rozdíl mezi spolehlivým a nespolehlivým přenosem dat je ten, že v prvním případě odesílatel zprávy dostane při chybě přenosu zprávu značící selhání, zatímco v druhém případě nikoliv.
Například IP poskytuje nespolehlivé služby. TCP využívá IP ke spolehlivému přenosu dat. UDP využívá IP k nespolehlivému přenosu. Všechny tyto protokoly používají pakety, ale UDP pakety jsou nazývány datagramy.
Když Arpanet prorazil s paketově spínanými doménami, poskytl spolehlivé doručování paketů pomocí připojení počítače přes rozhraní 1822. Vysílající počítač jednoduše uspořádal data v paketu ve správném formátu, vložil adresu cílového počítače, a poslal zprávu přes rozhraní jeho IMP připojením. Jakmile byla zpráva doručena na cílový počítač, bylo potvrzení o doručení odesláno na vysílající počítač. Pokud by se zpráva nemohla po síti doručit, bylo odesláno chybové hlášení zpět na vysílající počítač.
Mezitím, vývojáři z Kyklady a ALOHAnet*** prokázali, že je možné vybudovat efektivní počítačovou síť bez poskytování zaručeného přenosu paketů. Toto později využili návrháři Ethernetu.
Pokud je k odesíláni využita síť s nezaručeným přenosem, pak se stává odesílatel odpovědným za zajištění spolehlivosti detekce a přenesení ztracených paketů. Následné zkušenosti Arpanetu uvádějí, že síť sama o sobě nemůže spolehlivě odhalit všechny chyby paketů a to klade důraz na detekci chyb při každém přenosu. To vedlo k vývoji Principu konec-konec*** (anglicky end-to-end principle), který je jedním ze základních internetových principů.
IP pakety se skládají z hlavičky a vlastních dat. Hlavička paketu IP obsahuje:
Mnoho sítí neposkytuje zaručený přenos, nezfalšování paketů nebo nepoškození doručených paketů, jako například internetový protokol UDP. Je však možné nastavit transportní protokol na vrch služeb paketů, který může poskytnout takovou ochranu. TCP a UDP jsou nejlepšími příklady vrstvy 4, Transportní vrstvy, ze sedmi vrstev OSI modelu.
Záhlaví paketu určuje datový typ, číslo paketu, celkový počet paketů, a IP adresy odesílatele a příjemce.