Pārraides vadības protokols (TCP) un lietotāja datagrammu protokols (UDP) ir divi standarta transporta slāņi, kurus izmanto ar interneta protokolu (IP) .
Gan TDP, gan UDP izmanto galvenes kā daļu no iepakojuma ziņojumu datiem, lai tos pārsūtītu pa tīkla savienojumiem. Katru TCP galvenes un UDP galvenes satur parametru kopumu, ko sauc par laukiem, kas definēti protokola tehniskajās specifikācijās.
TCP galvenes formāts
Katram TCP galvenē ir desmit obligātie lauki, kuru kopējais apjoms ir 20 baiti (160 biti ). Viņi arī pēc izvēles var iekļaut papildu datu sadaļu ar lielumu līdz 40 baitiem.
Šis ir TCP galvenes izkārtojums:
- Avota TCP porta numurs (2 baiti)
- Galamērķa TCP porta numurs (2 baiti)
- Sērijas numurs (4 baiti)
- Apstiprinājuma numurs (4 baiti)
- TCP datu nobīde (4 biti)
- Rezervētie dati (3 biti)
- Kontroles karodziņi (līdz 9 bitiem)
- Loga lielums (2 baiti)
- TCP kontrolsumma (2 baiti)
- Steidzams rādītājs (2 baiti)
- TCP izvēles dati (0-40 baiti)
TCP ievada galvenes laukus ziņu straumē iepriekš norādītajā secībā.
- Avota un gala TCP portu numuri ir sakaru galapunkti ierīču nosūtīšanai un saņemšanai.
- Ziņu sūtītāji izmanto kārtas numurus, lai atzīmētu ziņu grupas pasūtīšanu. Gan sūtītāji, gan uztvērēji izmanto lauku apstiprinājuma numurus, lai paziņotu to nesēju saņemto vai sagaidāmo sūtīto ziņojumu kārtas numurus.
- Datu nobīde laukā saglabā kopējo TCP galvenes lielumu četru baitu kopainā. Noklusētā TCP lauka neizmantojot galveni, datu nobīde ir 5 (kas pārstāv 20 baiti), bet galvenē, kurā tiek izmantots maksimālā lieluma izvēles lauks, datu nobīde ir 15 (tas ir 60 baiti).
- Rezervētajiem datiem TCP galvenēs vienmēr ir nulle. Šis lauks ir paredzēts, lai kopējais galvenes lielums tiktu koriģēts kā četru baitu kopija (svarīga datu apstrādes efektivitātei).
- TCP izmanto virkni sešu standarta un trīs paplašinātu kontroles karodziņus (katrs atsevišķs bits, kas pārstāv vai izslēdz ), lai pārvaldītu datu plūsmu konkrētās situācijās. Piemēram, viena kvadrāta karodziņš sāk TCP savienojuma atiestatīšanas loģiku. Detalizēta šo jomu darbība pārsniedz šī panta darbības jomu.
- TCP sūtītāji izmanto numuru, ko sauc par loga izmēru, lai regulētu, cik daudz datu viņi nosūta uztvērēju, pirms pieprasīt apstiprinājumu pretī. Ja loga izmērs kļūs pārāk mazs, tīkla datu pārraide nevajadzīgi palēnināsies, bet, ja loga izmērs kļūs pārāk liels, tīkla saite var kļūt piesātināta (nav piemērota citām lietojumprogrammām) vai arī uztvērējs, iespējams, nespēs ātri apstrādāt ienākošos datus pietiekami (tas arī rada lēnu veiktspēju). Protokolā iebūvētie logrīki tiek dinamiski aprēķināti lieluma vērtības un izmanto šo TCP virknes lauku, lai koordinētu izmaiņas starp sūtītājiem un uztvērējiem.
- Kontroljavas vērtība TCP galvenē tiek ģenerēta kā protokola sūtītājs kā matemātiska tehnika, lai palīdzētu uztvērējam atklāt ziņojumus, kas ir bojāti vai ietekmēti.
- Neatliekamās rādītāju lauks bieži vien tiek iestatīts uz nulli un tiek ignorēts, bet kopā ar vienu no kontrolvārdiem to var izmantot kā datu nobīdi, lai ziņu apakškopu atzīmētu kā prioritāru apstrādi.
- Izvēles TCP datu izmantošana pārsniedz šī raksta darbības jomu, bet ietver atbalstu īpašiem apstiprinājuma un loga mērogošanas algoritmiem.
UDP galvenes formāts
Tā kā UDP ir daudz ierobežotāks nekā TCP, tā galvenes ir daudz mazākas. UDP galvenē ir 8 baiti, kas sadalīti šādos četros obligātajos laukos:
- Avota porta numurs (2 baiti)
- Galamērķa porta numurs (2 baiti)
- Datu garums (2 baiti)
- UDP kontrolsumma (2 baiti)
UDP ievieto galvenes laukus savā ziņu straumē iepriekš norādītajā secībā.
- Avota un gala UDP portu numuri ir sakaru galapunkti ierīču nosūtīšanai un saņemšanai.
- UDP garuma lauks ir katra datagrammas kopējais lielums, ieskaitot gan virsrakstus, gan datus. Šis laukums svārstās no vismaz 8 baitiem (vajadzīgā galvenes lieluma) līdz lielumiem virs 65 000 baitiem.
- Līdzīga TCP, UDP kontrolsumma ļauj uztvērējiem savstarpēji pārbaudīt ienākošos datus par visiem ziņojuma bojātajiem bitiem.