Transmission Control Protocol (TCP) i Korisnički Datagram Protocol (UDP) su dva standardna transportna sloja korištena s internetskim protokolom (IP) .
I TDP i UDP koriste zaglavlja kao dio podataka paketa za prijenos podataka preko mrežnih veza. TCP zaglavlja i UDP zaglavlja sadrže skup parametara nazvanih polja definiranih tehničkim specifikacijama protokola.
TCP oblik zaglavlja
Svako TCP zaglavlje ima deset obaveznih polja veličine od 20 bajta (160 bita ). Oni također mogu opcionalno sadržavati dodatni odjeljak podataka veličine do 40 bajta.
Ovo je izgled TCP zaglavlja:
- Izvor TCP port broj (2 bajta)
- Odredišni TCP port broj (2 bajta)
- Broj slijeda (4 bajta)
- Broj priznanja (4 bajta)
- TCP podatkovni offset (4 bita)
- Rezervirani podaci (3 bita)
- Kontrolne zastavice (do 9 bita)
- Veličina prozora (2 bajta)
- TCP kontrolni zbroj (2 bajta)
- Hitni pokazivač (2 bajta)
- TCP opcionalni podaci (0-40 bajtova)
TCP umetne polja zaglavlja u tok poruke u gore navedenom redoslijedu.
- Izvorni i odredišni TCP portovi brojevi su komunikacijske krajnje točke za slanje i primanje uređaja.
- Pošiljatelji poruka koriste brojeve redoslijeda kako bi označili poredak skupine poruka. Oba pošiljatelja i prijemnici koriste polje za priznavanje brojeva za komuniciranje slijednih brojeva poruka koje su nedavno primljene ili se očekuje da će biti poslane.
- Polje za prebacivanje podataka pohranjuje ukupnu veličinu TCP zaglavlja u više boca od četiri bajta. Zaglavlje koje ne koristi opcionalno TCP polje ima podatkovni offset od 5 (predstavlja 20 bajta), dok zaglavlje koje koristi opcionalno polje s maksimalnom veličinom ima podatkovni offset od 15 (što predstavlja 60 bajta).
- Rezervirani podaci u TCP zaglavljima uvijek imaju vrijednost nula. Ovo polje služi svrsi usklađivanja ukupne veličine zaglavlja kao višekratnika od četiri bajta (što je važno za učinkovitost obrade računalnih podataka).
- TCP koristi skup od šest standardnih i tri proširene kontrolne zastavice (svaki pojedini bit koji predstavlja ili isključuje ) za upravljanje protokom podataka u određenim situacijama. Jedna zastava, na primjer, inicira logiku resetiranja TCP veze. Detaljni rad tih polja ide dalje od opsega ovog članka.
- TCP pošiljatelji koriste broj koji se naziva veličina prozora kako bi regulirali količinu podataka koje šalju u prijemnik prije nego što zauzvrat zahtijevaju potvrdu. Ako veličina prozora postane premalena, mrežni prijenos podataka bit će nepotrebno spor, a ako veličina prozora postane prevelika, mrežna veza može postati zasićena (neupotrebljiva za bilo koju drugu aplikaciju) ili prijemnik neće moći brzo obraditi dolazne podatke dovoljno (što također rezultira sporom izvedbom). Windowing algoritmi ugrađeni u protokol dinamički izračunavaju veličinu vrijednosti i koriste ovo polje TCP zaglavlja za koordiniranje promjena između pošiljatelja i prijemnika.
- Vrijednost checksuma unutar TCP zaglavlja generira protokol pošiljatelja kao matematičku tehniku kako bi pomogla prijemniku da otkrije poruke koje su oštećene ili neovlaštene.
- Hitno polje pokazivača često je postavljeno na nulu i zanemareno, ali u kombinaciji s jednim od kontrolnih zastavica, može se koristiti kao podatkovni offset za označavanje podskupa poruke kao da zahtijeva prvenstvenu obradu.
- Uporaba opcionalnih TCP podataka prelazi opseg ovog članka, ali uključuje podršku za posebne algoritme priznavanja i skaliranja prozora.
UDP Header Format
Budući da je UDP znatno ograničen u mogućnosti nego TCP, njegova zaglavlja su mnogo manja. UDP zaglavlje sadrži 8 bajta, podijeljeno na sljedeća četiri obavezna polja:
- Broj ulaznog izvora (2 bajta)
- Broj porta za odredište (2 bajta)
- Duljina podataka (2 bajta)
- UDP kontrolni zbroj (2 bajta)
UDP umetava polja zaglavlja u njegovu stream poruku u gore navedenom redoslijedu.
- Izvorni i odredišni UDP portovi brojevi su komunikacijske krajnje točke za slanje i primanje uređaja.
- Polje duljine u UDP predstavlja ukupnu veličinu svakog datagrama uključujući i zaglavlje i podatke. Polje se kreće u rasponu od najmanje 8 bajta (potrebna veličina zaglavlja) do veličine iznad 65.000 bajta.
- Slično TCP-u, UDP kontrolni zbroj omogućuje prijemnicima da unakrsno provjeravaju dolazne podatke za bilo kakve oštećene bitove poruke.