Protokol řízení přenosu (TCP) a protokol User Datagram Protocol (UDP) jsou dvě standardní dopravní vrstvy používané s internetovým protokolem (IP) .
Obě aplikace TDP a UDP používají jako součást dat o obalech zprávy hlavičky pro přenos přes síťová připojení. TCP hlavičky a hlavičky UDP obsahují sadu parametrů nazývaných polí definovaných technickými specifikacemi protokolů.
Formát hlavičky TCP
Každá hlavička protokolu TCP má deset povinných polí o velikosti 20 bajtů (160 bitů ). Mohou také volitelně obsahovat doplňkovou datovou část o velikosti až 40 bajtů.
Toto je rozložení hlaviček TCP:
- Zdrojové číslo portu TCP (2 bajty)
- Cílové číslo portu TCP (2 bajty)
- Číslo sekvence (4 bajty)
- Číslo potvrzení (4 bajty)
- TCP odsazení dat (4 bitů)
- Vyhrazená data (3 bity)
- Kontrolní příznaky (až 9 bitů)
- Velikost okna (2 bajty)
- Kontrolní součet TCP (2 bajty)
- Naléhavý ukazatel (2 bajty)
- Volitelná data protokolu TCP (0-40 bajtů)
TCP vloží do streamu zpráv pole záhlaví v uvedeném pořadí.
- Výchozí a cílové čísla portů TCP jsou koncové body komunikace pro odesílající a přijímací zařízení.
- Odesílatel zprávy používá čísla sekvencí k označení objednávky skupiny zpráv. Jak odesílatelé, tak i přijímače používají pole potvrzovacích čísel pro sdělování pořadových čísel zpráv, které jsou buď nedávno přijaty, nebo se očekávají, že budou odeslány.
- Políčko offset dat ukládá celkovou velikost hlavičky TCP v násobcích čtyř bajtů. Hlavička, která nepoužívá volitelná pole TCP, má posun dat 5 (představuje 20 bajtů), zatímco záhlaví s volitelným poli maximální velikosti má posun dat 15 (představuje 60 bajtů).
- Rezervovaná data v hlavičkách TCP mají vždy hodnotu nula. Toto pole slouží ke sladění celkové velikosti záhlaví jako násobku čtyř bajtů (důležité pro účinnost zpracování počítačových dat).
- TCP používá sadu šesti standardních a tří rozšířených ovládacích příznaků (každý jednotlivá bitová reprezentace zapnuto nebo vypnutá ) pro správu toku dat v určitých situacích. Jeden bitový příznak například iniciuje logiku obnovení TCP spojení. Podrobné fungování těchto polí překračuje rozsah tohoto článku.
- TCP odesílatelé používají číslo, které se nazývá velikost okna, aby regulovaly, kolik dat odesílají příjemci před tím, než požadují potvrzení. Pokud je velikost okna příliš malá, přenos dat v síti bude zbytečně pomalý, zatímco v případě, že velikost okna bude příliš velká, může být síťové spojení nasycené (nepoužitelné pro jiné aplikace) nebo nemusí přijímač rychle zpracovávat příchozí data (což také vede k pomalému výkonu). Okno vkládání algoritmů zabudovaných do protokolu dynamicky vypočítá hodnoty velikosti a použije toto pole hlaviček TCP ke koordinaci změn mezi odesilatelemi a přijímači.
- Hodnota kontrolního součtu uvnitř hlavičky protokolu TCP je generována odesílatelem protokolu jako matematická technika, která pomáhá přijímači detekovat zprávy poškozené nebo poškozené.
- Pole urgentního ukazatele je často nastaveno na nulu a ignorováno, avšak ve spojení s jednou z kontrolních příznaků může být použito jako posun dat k označení podmnožiny zprávy jako vyžadující prioritní zpracování.
- Použití volitelných dat TCP přesahuje rozsah tohoto článku, ale zahrnuje podporu pro speciální algoritmy potvrzení a škálování oken.
Formát hlavičky UDP
Vzhledem k tomu, že služba UDP je mnohem více omezená než TCP, jsou její hlavičky mnohem menší. Záhlaví UDP obsahuje 8 bajtů rozdělených do následujících čtyř povinných polí:
- Číslo zdrojového portu (2 bajty)
- Číslo cílového portu (2 bajty)
- Délka dat (2 bajty)
- Kontrolní součet UDP (2 bajty)
UDP vkládá políčka hlaviček do svého streamu zpráv v uvedeném pořadí.
- Výchozí a cílové čísla portů UDP jsou komunikační koncové body pro odesílání a přijímání zařízení.
- Délka pole v UDP představuje celkovou velikost každého datagramu včetně hlavičky i dat. Toto pole se pohybuje v hodnotě od minimálně 8 bajtů (požadovaná velikost záhlaví) až po velikosti nad 65 000 bajtů.
- Podobně jako u TCP, kontrolní součet UDP umožňuje přijímačům křížově kontrolovat příchozí data pro všechny poškozené bity zprávy.