TCP a UDP jsou protokoly připojení, které se používají k vytvoření způsobu výměny dat přes internetové připojení. Pokud již víte, co znamená IP (tj. internetový protokol), pak už to víte, protože TCP i UDP byly vyvinuty navíc.
Mýlili byste se však, kdybyste si mysleli, že jsou prakticky stejné; ačkoli jak TCP, tak UDP „mají slovo“ ve způsobu, jakým jsou vaše data odesílána/přijímána na internetu, jsou ve skutečnosti velmi odlišné, az tohoto důvodu se používají pro různé účely.
Stručně řečeno, řekněme, že tyto dva protokoly neúmyslně používáte každý den, když přistupujete k internetu, což z nich činí prvořadé ve způsobu, jakým vaše zařízení komunikuje s otevřeným webem (a zařízeními k němu připojenými) a naopak.
Protože TCP i UDP jsou postaveny na internetovém protokolu, možná budete chtít porozumět více o IP, než skočíte rovnou do úvodních lekcí TCP/UDP. Víte, musíte se naučit chodit, než začnete běhat.
Table of Contents
Co je to IP adresa?
IP, což je zkratka pro Internet Protocol, je samotnou páteří, na které byl postaven Internet, jak jej známe. Jeho důležitost lze snadno zjistit podle skutečnosti, že každé zařízení má přidělenu jedinečnou IP adresu, aby mohlo přistupovat k internetu.
Adresa se dříve skládala pouze z čísel a desetinných míst. Abychom byli konkrétnější, IPv4 adresa může být vytvořena ze čtyř jednotlivých čísel, z nichž každé může mít hodnotu mezi 0 a 254. IPv4 nám poskytl celkový rozsah 4,3 miliardy unikátních IP adres.
Nevyhnutelně se internet začal dostávat do bodu, kdy nebylo možné generovat žádné nové jedinečné IP adresy, což je doba, kdy přišel systém IPv6, aby zachránil situaci. Veřejné adresy IPv6 používají hexadecimální číslice a každá obsahuje 128 bitů, což znamená, že namísto základu 10 (0 až 10) používají základ 16 (0 až 10 plus „a“ až „f“).
S pomocí systému IPv6 bychom mohli mít celkový rozsah veřejných IPv6 adres 340 undecillionů (3,4 * 10^28). Pokud to nejde zabalit, podívejte se, jak vypadají adresy IPv4 a IPv6 níže:
Příklad adresy IPv4: 10.238.126.215
Příklad adresy IPv6: fe80:0db8:0412:2001:3c5e:0000:10a9
Ačkoli konečným cílem je, aby IPv6 nahradil IPv4, v současnosti oba protokoly fungují ve spojení.
IP adresy umožňují zařízením s připojením k internetu vyhledávat, komunikovat spolu a vyměňovat si informace. Sdílení dat, streamování videa nebo odesílání e-mailů by nebylo možné bez IP adresy. Vše, co děláte online, lze přepsat do dat.
Aby byla zajištěna optimální funkčnost, IP rozděluje tato data na menší části, aby je mohla lépe spravovat. Tyto datové bloky nazýváme pakety. Tyto pakety však neobsahují pouze informace, které mají přenášet, ale také cílovou IP adresu zařízení, ke kterému se potřebují dostat. Tento cíl se nazývá hlavička.
Poté, co paket opustí vaše zařízení, zamíří k bráně, která vyhledá cílovou IP adresu vašeho paketu ve své doméně. Za zmínku stojí, že brána může vidět pouze danou sadu IP adres na internetu.
Pokud tedy brána nemůže najít adresu ve své doméně, odešle paket na jinou bránu a tato operace pokračuje, dokud paket nedosáhne brány, která dokáže detekovat cílovou IP adresu uvedenou v záhlaví a odešle do zařízení přidruženého k této adrese.
Další věc, která stojí za zmínku, je, že skutečnost, že jsou vaše data rozdělena do malých paketů, znamená, že nemusí nutně dorazit v pořádku nebo dokonce používat stejnou cestu. Ve skutečnosti se pakety obvykle pokaždé snaží najít nejrychlejší cestu, kterou mohou.
V neposlední řadě byste měli vědět, že internetový protokol není specifický pro formát, takže je ideální pro jakoukoli formu dat, ať už mluvíme o videu, obrázcích, zvuku, e-mailech, rychlých zprávách nebo dokonce hraní her.
Co je TCP?
TCP, což je zkratka pro Transmission Control Protocol, je jedním z hlavních protokolů používaných sadou internetových protokolů. Vznikl před UDP a používal se k tomu, aby umožnil programům a zařízením vyměňovat si informace po síti.
Můžete si všimnout, že se někdy spáruje s IP a označuje se jako TCP/IP, ale znamená to totéž (tj. TCP a TCP/IP jsou přesně to samé).
Jak bylo vysvětleno výše, data jsou rozdělena do malých paketů a odesílána do jiných zařízení v této fragmentované podobě, možná dokonce na různých trasách. TCP byl vynalezen pro potřebu znovu sestavit tyto pakety zpět do jejich původní podoby.
TCP čeká, až dorazí všechny pakety, spočítá je, zkontroluje je na chyby pomocí kontrolního součtu, potvrdí pakety, které se dostaly na místo určení, a požádá původní počítač, aby znovu odeslal ty, které se nedostaly napoprvé. Po přijetí všech paketů je TCP znovu sestaví do původních dat a doručí je příslušné aplikaci (např. e-mailový klient, prohlížeč obrázků, přehrávač videa).
Tento proces probíhá v dnešní době velmi rychle a zajišťuje, že data dorazí na počítač příjemce přesně tak, jak byla na odesílacím zařízení, bez jakýchkoliv pozdějších změn. Kromě toho zahrnuje neustálou komunikaci na obou koncích, protože proces lze ve skutečnosti popsat jako nepřetržité sem a tam mezi zúčastněnými zařízeními, dokud nedorazí data a nejsou 100% potvrzena.
Je samozřejmé, že tato neustálá komunikace mezi zařízeními strašně zatěžuje TCP, protože jakýkoli ztracený nebo poškozený paket může proces zastavit, dokud chybějící bit bezpečně nedorazí na místo určení. TCP však nemusí dělat všechno sám, a tak bylo krátce poté vynalezeno UDP.
Stručně řečeno, TCP:
Zajistí, aby nebyly zahozeny žádné pakety
Pokud zjistí chybějící pakety, požádá o opětovné odeslání paketů
Odesílá pakety v pořadí, aby je bylo možné snadno znovu sestavit
Nejoblíbenější internetový protokol
Pomalejší než UDP, protože potřebuje zajistit, aby každý paket dorazil
Vhodné pro webové stránky, e-maily, FTP (File Transfer Protocol), sdílení souborů P2P
Co je UDP?
UDP, zkratka pro User Datagram Protocol, je alternativou k TCP, takže je bezpečné předpokládat, že v podstatě nesou stejný úkol. Zároveň se však také výrazně liší, protože TCP je při kontrole paketových dat docela pečlivý, zatímco UDP je trochu nedbalejší.
Představte si dva zaměstnance, kteří manipulují s dopisy na třídicí stanici pošty: TCP je ten, který pečlivě zkoumá každý dopis a zadržuje veškerou komunikaci, dokud každý dopis nedorazí, zatímco UDP pouze kontroluje neporušenost dopisů a přeposílá je na místo určení, přičemž všechny dopisy, které padají. nedorazil a nepožádal o opětovné zaslání.
Dá se tedy s jistotou říci, že UDP je rychlejší, ale proč byste chtěli obětovat rychlost na úkor ztráty dat? No, v zásadě jsou některé aplikace, kde ztráta paketů není zrovna tragédie.
Pokud například používáte klienta VoIP a mluvíte s někým, můžete si všimnout občasné ztráty rámce nebo zasekávání zvuku, což je většinou snadné ignorovat, a proto není rozhodující. Totéž platí pro hraní her, kde si můžete občas všimnout zadrhávání hry nebo gumičky. Prostě pokračujete v hraní a tím to končí, protože UDP pouze zahazuje pakety, které se ztratily při přenosu.
Jinými slovy, UDP:
Je rychlejší než TCP a využívá méně prostředků
Nemusí nutně odesílat pakety v pořadí
Zahodí všechny chybějící pakety pro urychlení připojení
Odesílatel nemá jak zjistit, zda byly pakety zahozeny
Většinou se používá pro streamování videa, VoIP, hraní her a živé vysílání
TCP a UDP v použití VPN
V současné době stále více VPN začíná přijímat WireGuard nebo vytvářet svůj proprietární protokol, který má být použit, ale mnoho z nich se spoléhá na OpenVPN, protože po všech těch letech je stále spolehlivý, rychlý a bezpečný.
Co však možná nevíte, je, že OpenVPN funguje s TCP i UDP a většinou vám umožňuje vybrat si mezi těmito dvěma protokoly. I když to může znít jako velké rozhodnutí (integrita dat versus rychlost), skutečný problém leží někde jinde.
Při používání VPN nemusíte být schopni zaznamenat žádný velký rozdíl mezi TCP a UDP, pokud jde o rychlost. Pokud však vaše připojení potřebuje obejít bránu firewall, pak se věci změní, zejména proto, že tyto protokoly fungují na různých portech a některé brány firewall mohou blokovat výchozí porty pro určité typy provozu.
Proto vám poskytovatelé VPN umožňují vybrat si mezi TCP a UDP. Pokud si všimnete, že vaše připojení nefunguje na jednom protokolu, můžete přepnout na druhý a držet palce. Někteří poskytovatelé VPN vám nabízejí pokročilá nastavení, kde si také můžete vybrat vlastní port pro vaše připojení, abyste se vyhnuli firewallům.
Rozdíl mezi TCP a UDP
TCP
UDP
TCP je nejrozšířenější protokol na internetu
Všechna odeslaná data se dostanou k příjemci, bez záruky ztráty paketů
Balíčky jsou odesílány v pořadí
Vyžaduje více zdrojů, a proto je také pomalejší.
UDP se používá pro hraní her, streamování videa, VoIP, živé vysílání
Odesílatel nebude vědět, zda paket chybí (nepřijat)
Balíčky se nemusí zasílat v pořádku
Potřebuje méně zdrojů, rychleji.
TCP vs UDP: Závěr
Abychom to zakončili, TCP a UDP jsou docela podobné protokoly v tom, že zajišťují, aby se vaše data dostala na místo určení bezpečně a bez toho, aby byla někde během cesty upravována.
TCP provádí několik kontrol při přenosu dat a je obecně drastičtější, pokud jde o neztrácení paketů, což je skvělé pro webové stránky, e-maily, rychlé zprávy, obrázky a sdílení souborů.
UDP pouze zkontroluje, zda je cíl správný a zkontroluje integritu paketů, ale nepožádá odesílatele, aby znovu odeslal ztracené pakety, a místo toho je jednoduše zahodí, což znamená, že budete mít rychlejší připojení, ale můžete zahazovat pakety. cesta. UDP se většinou používá pro hraní her, VoIP, streamování videa a vysílání živého obsahu, kde by ztráta několika paketů neměla příliš ovlivnit konečný výsledek.