Junior
Co je to protokol TCP?
sobes.tech AI
Odpověď od AI
TCP (Transmission Control Protocol) je protokol vrstvy přenosu v zásobníku protokolů TCP/IP, který zajišťuje spolehlivou, spojení orientovanou dodávku proudu bajtů mezi aplikacemi.
Hlavní vlastnosti TCP:
- Spolehlivost: Zaručuje doručení všech segmentů dat ve správném pořadí, opětovným odesláním ztracených nebo poškozených segmentů. Používá potvrzení (ACK) a časové limity.
- Spojení orientované: Před přenosem dat je navázáno logické spojení mezi odesílatelem a příjemcem (trojité handshake). Spojení je udržováno po celou relaci.
- Řízení toku: Řídí rychlost přenosu dat, aby odesílatel nepřetížil buffer příjemce. Používá okno příjmu.
- Řízení zahlcení: Předchází zahlcení sítě dynamickým upravováním rychlosti přenosu podle podmínek sítě. Používá algoritmy jako Slow Start a Congestion Avoidance.
- Stream-oriented přenos: TCP považuje data za nepřetržitý proud bajtů, nikoli za samostatné pakety. Zaručuje, že data budou doručena ve stejném pořadí, v jakém byla odeslána.
- Duplexní komunikace: Umožňuje současný přenos dat oběma směry po navázání spojení.
Použití TCP:
- HTTP/HTTPS (webový provoz)
- FTP (přenos souborů)
- SMTP (e-mail)
- SSH (vzdálené řízení)
Porovnání s UDP:
| Charakteristika | TCP | UDP |
|---|---|---|
| Spolehlivost | Vysoká (záruka doručení) | Nízká (bez záruky) |
| Spojení orientované? | Ano (navázání a udržování) | Ne (přenos bez navázání) |
| Pořadí dat | Ano (doručení ve stejném pořadí) | Ne (může dorazit mimo pořadí) |
| Řízení toku | Ano | Ne |
| Řízení zahlcení | Ano | Ne |
| Rychlost přenosu | Nižší (kvůli režii) | Vyšší |
| Příklady | HTTP, FTP, SSH, SMTP | DNS, DHCP, VoIP, online hry |