TCP ryšyje vėliavėlės naudojamos tam tikrai ryšio būsenai nurodyti arba papildomai naudingai informacijai pateikti, pvz., trikčių šalinimo tikslais arba konkretaus ryšio valdymui. Dažniausiai naudojamos vėliavos SYN, ACK ir FIN . Kiekviena vėliavėlė atitinka 1 bito informaciją.
Vėliavos tipai:
- Sinchronizavimas (SYN) – jis naudojamas pirmame ryšio užmezgimo etape arba 3 krypčių rankų paspaudimo tarp dviejų kompiuterių procese. Ši vėliavėlė turėtų būti nustatyta tik pirmame siuntėjo ir gavėjo pakete. Tai naudojama sinchronizuoti eilės numerį, ty pasakyti kitam galui, kurį eilės numerį jie turėtų priimti. Patvirtinimas (ACK) – naudojamas patvirtinti paketus, kuriuos sėkmingai gavo pagrindinis kompiuteris. Vėliava nustatoma, jei patvirtinimo numerio lauke yra galiojantis patvirtinimo numeris.
Žemiau pateiktoje diagramoje imtuvas siunčia ACK = 1, taip pat SYN = 1 antrajame ryšio užmezgimo etape, kad praneštų siuntėjui, kad jis gavo pradinį paketą.
Baigti (FIN) – naudojamas prašyti nutraukti ryšį, t. y. kai nebėra siuntėjo duomenų, jis prašo nutraukti ryšį. Tai paskutinis siuntėjo išsiųstas paketas. Tai atlaisvina rezervuotus išteklius ir maloniai nutraukia ryšį.
Atstatyti (RST) – naudojamas ryšiui nutraukti, jei RST siuntėjas mano, kad kažkas negerai su TCP ryšiu arba pokalbio neturėtų būti. Jis gali būti išsiųstas iš gavėjo pusės, kai paketas siunčiamas tam tikram kompiuteriui, kuris to nesitikėjo. Skubus (URG) – naudojamas nurodyti, kad pakete esantys duomenys turi būti teikiami pirmenybė ir imtuvas turi būti skubiai tvarkomas. Ši vėliavėlė naudojama kartu su lauku Skubus rodyklė, kad būtų galima nustatyti skubių duomenų vietą pakete. Push (PSH) – naudojama prašyti nedelsiant pateikti duomenis priimančiajam prieglobos kompiuteriui, nelaukiant, kol siuntėjo pusėje bus saugomi papildomi duomenys. Ši vėliavėlė dažniausiai naudojama tokiose programose kaip garso ar vaizdo transliavimas realiuoju laiku. Langas (WND) – naudojamas gavimo lango dydžiui pranešti siuntėjui. Lango dydis yra duomenų kiekis, kurį priimantis kompiuteris gali priimti bet kuriuo metu. Siuntėjas turėtų apriboti siunčiamų duomenų kiekį, atsižvelgdamas į gavėjo reklamuojamo lango dydį. Kontrolinė suma (CHK) – naudojama patikrinti TCP segmento vientisumą perdavimo metu. Kontrolinė suma apskaičiuojama visame segmente, įskaitant antraštę ir duomenų laukus, ir perskaičiuojama kiekvieno šuolio metu tinklo kelyje. Sekos numeris (SEQ) – tai unikalus numeris, kurį siuntėjas priskiria kiekvienam segmentui, kad būtų nustatyta tvarka, kuria gavėjas turėtų gauti paketus. Eilės numeris naudojamas kartu su patvirtinimo numeriu, kad būtų užtikrintas patikimas duomenų perdavimas ir būtų išvengta pasikartojančių paketų. Patvirtinimo numeris (ACK) – naudojamas patvirtinti TCP segmento gavimą ir perduoti siuntėjui kitą numatomą eilės numerį. Patvirtinimo numerio lauke yra kito laukiamo segmento eilės numeris, o ne paskutinio gauto segmento numeris.
Finish (FIN) v/s Reset (RST) –

- Push (PSH) – pagal numatytuosius nustatymus transporto sluoksnis laukia tam tikrą laiką, kol programos sluoksnis išsiųs pakankamai duomenų, atitinkančių maksimalų segmento dydį, kad tinkle perduodamų paketų skaičius būtų kuo mažesnis, o to nepageidautina kai kurios programos, pvz., interaktyvios programos (pokalbiai). Panašiai siuntimo sluoksnis imtuvo gale buferuoja paketus ir perduoda į taikomąjį sluoksnį, jei atitinka tam tikrus kriterijus.
Ši problema išspręsta naudojant PSH. Transporto sluoksnis nustato PSH = 1 ir iš karto siunčia segmentą į tinklo sluoksnį, kai tik gauna signalą iš taikomojo sluoksnio. Imtuvo transportavimo sluoksnis, pamatęs PSH = 1, iš karto persiunčia duomenis į programos sluoksnį.
Paprastai tai liepia imtuvui apdoroti šiuos paketus, kai jie gaunami, o ne juos buferizuoti.
Skubus (URG) – duomenys segmente, kurio vėliavėlė URG = 1, nedelsiant persiunčiami į taikymo sluoksnį, net jei taikomosios programos sluoksniui reikia pateikti daugiau duomenų. Jis naudojamas informuoti gavėją, kad jis apdorotų skubius paketus prieš apdorojant visus kitus paketus. Gavėjas bus informuotas, kai bus gauti visi žinomi skubūs duomenys.
Push (PSH) v/s skubus (URG) –
