Zkratka TCP znamená protokol kontroly přenosu . Jedná se o protokol transportní vrstvy, který usnadňuje přenos paketů ze zdroje do cíle. Jedná se o protokol orientovaný na spojení, což znamená, že naváže spojení před komunikací, ke které dochází mezi počítačovými zařízeními v síti. Tento protokol se používá s protokolem IP, takže společně se označují jako TCP/IP.
Hlavní funkcí TCP je přebírat data z aplikační vrstvy. Poté rozdělí data do několika paketů, tyto pakety očísluje a nakonec tyto pakety odešle do cíle. TCP na druhé straně pakety znovu sestaví a přenese je do aplikační vrstvy. Protože víme, že TCP je protokol orientovaný na spojení, spojení zůstane navázáno, dokud není komunikace mezi odesílatelem a příjemcem dokončena.
funkce java8
Vlastnosti protokolu TCP
Níže jsou uvedeny vlastnosti protokolu TCP:
TCP je protokol transportní vrstvy, protože se používá při přenosu dat od odesílatele k přijímači.
TCP je spolehlivý protokol, protože se řídí mechanismem řízení toku a chyb. Podporuje také potvrzovací mechanismus, který kontroluje stav a správný příchod dat. V potvrzovacím mechanismu příjemce posílá buď kladné nebo záporné potvrzení odesílateli, takže odesílatel může zjistit, zda datový paket byl přijat nebo zda potřebuje znovu odeslat.
Tento protokol zajišťuje, že data dorazí k zamýšlenému příjemci ve stejném pořadí, v jakém jsou odesílána. Uspořádá a očísluje každý segment, aby je vrstva TCP na cílové straně mohla znovu sestavit na základě jejich uspořádání.
Jedná se o službu orientovanou na spojení, což znamená, že k výměně dat dochází až po navázání spojení. Po dokončení přenosu dat bude připojení ukončeno.
Jedná se o plně duplexní, což znamená, že data se mohou přenášet oběma směry současně.
TCP je proudově orientovaný protokol, protože umožňuje odesílateli odesílat data ve formě proudu bajtů a také umožňuje příjemci přijímat data ve formě proudu bajtů. TCP vytváří prostředí, ve kterém jsou odesílatel i přijímač propojeny pomyslnou trubicí známou jako virtuální okruh. Tento virtuální okruh přenáší proud bajtů přes internet.
Need for Transport Control Protocol
Ve vrstvené architektuře síťového modelu je celá úloha rozdělena na menší úlohy. Každý úkol je přiřazen k určité vrstvě, která úkol zpracovává. V TCP/IP model , pět vrstev je aplikační vrstva , transportní vrstva , síťová vrstva , vrstva datového spojení a fyzická vrstva. Transportní vrstva má kritickou roli při poskytování end-to-end komunikace přímo aplikačním procesům. Vytváří 65 000 portů, aby bylo možné přistupovat k více aplikacím současně. Přebírá data z horní vrstvy a rozděluje data do menších paketů a poté je přenáší do síťové vrstvy.
typ v jazyce Java
Práce s TCP
V TCP je spojení navázáno pomocí třícestného handshakingu. Klient odešle segment s jeho pořadovým číslem. Server na oplátku odešle svůj segment se svým vlastním pořadovým číslem a také potvrzovací sekvencí, která je o jedno větší než pořadové číslo klienta. Když klient obdrží potvrzení svého segmentu, odešle potvrzení na server. Tímto způsobem je navázáno spojení mezi klientem a serverem.
Výhody TCP
- Poskytuje spolehlivou službu orientovanou na připojení, což znamená, že zaručuje doručení datových paketů. Pokud dojde ke ztrátě datového paketu v síti, TCP znovu odešle ztracené pakety.
- Poskytuje mechanismus řízení toku pomocí protokolu posuvného okna.
- Poskytuje detekci chyb pomocí kontrolního součtu a kontrolu chyb pomocí protokolu Go Back nebo ARP.
- Odstraňuje zahlcení pomocí algoritmu pro zamezení zahlcení sítě, který zahrnuje různá schémata, jako je aditivní zvýšení/multiplikativní snížení (AIMD), pomalý start a okno zahlcení.
Nevýhoda TCP
Zvyšuje velké množství režie, protože každý segment získává svou vlastní hlavičku TCP, takže fragmentace směrovačem zvyšuje režii.
Formát záhlaví TCP
Existuje šest řídicích bitů nebo příznaků:
Jedná se o 16bitové pole. Obsahuje velikost dat, kterou může přijímač přijmout. Toto pole se používá pro řízení toku mezi odesílatelem a přijímačem a také určuje množství vyrovnávací paměti přidělené přijímačem pro segment. Hodnotu tohoto pole určuje přijímač.
Jedná se o 16bitové pole. Toto pole je v UDP volitelné, ale v případě TCP/IP je toto pole povinné.
Je to ukazatel, který ukazuje na urgentní datový bajt, pokud je příznak URG nastaven na 1. Definuje hodnotu, která bude přidána k pořadovému číslu, aby se získalo pořadové číslo posledního urgentního bajtu.
Poskytuje další možnosti. Nepovinné pole je reprezentováno 32 bity. Pokud toto pole obsahuje data menší než 32 bitů, je k získání zbývajících bitů vyžadováno vyplnění.