• Transportní protokoly - UDP. Podívejte se, co je "UDP" v jiných slovnících

    Ahoj všichni, dnes vám řeknu, jak se liší protokol TCP od UDP. Protokoly transportní vrstvy následující v hierarchii IP se používají k přenosu dat mezi aplikačními procesy implementovanými v síťových uzlech. Datový paket přijatý z jednoho počítače do druhého přes internet musí být přenesen do procesu handler, a to přesně pro konkrétní účel. Odpovědnost za to přebírá transportní vrstva. Na této úrovni jsou dva hlavní protokoly TCP a UDP.

    Co znamenají TCP a UDP

    TCP– transportní protokol pro přenos dat v sítích TCP/IP, který předběžně naváže spojení se sítí.

    UDP– transportní protokol, který přenáší datagramové zprávy bez nutnosti navazování spojení v IP síti.

    Připomínám, že oba protokoly fungují na transportní vrstvě modelu OSI nebo TCP / IP a je velmi důležité pochopit, jak se liší.

    Rozdíl mezi protokoly TCP a UDP

    Rozdíl mezi protokoly TCP a UDP je tzv. „garance doručení“. TCP vyžaduje odpověď od klienta, kterému je datový paket doručen, potvrzení doručení a k tomu potřebuje předem vytvořené spojení. Také protokol TCP je považován za spolehlivý, zatímco UDP dokonce získal název „nespolehlivý datagramový protokol. TCP eliminuje ztrátu dat, duplikaci a míchání paketů, zpoždění. UDP to vše umožňuje a ke své práci nepotřebuje připojení. Procesy, kterým jsou data odesílána přes UDP, si musí vystačit s tím, co přijímají, a to i se ztrátami. TCP řídí zahlcení spojení, UDP neřídí nic jiného než integritu přijímaných datagramů.

    Na druhou stranu díky takové neselektivitě a nedostatku kontroly dodává UDP datové pakety (datagramy) mnohem rychleji, tedy pro aplikace, které jsou určeny pro široké propustnost A rychlá výměna UDP lze považovat za optimální protokol. Patří mezi ně síťové a prohlížečové hry, ale také prohlížeče streamovaného videa a aplikace pro video komunikaci (nebo hlas): od úplné nebo částečné ztráty paketu se nic nemění, není nutné opakovat požadavek, ale stahování je mnohem rychlejší. Protokol TCP, jako spolehlivější, se úspěšně používá i v e-mailové programy, což vám umožní řídit nejen provoz, ale také délku zprávy a rychlost výměny provozu.

    Podívejme se na hlavní rozdíly mezi tcp a udp.

    1. TCP garantuje doručení datových paketů v nezměněné podobě, sekvenci a beze ztrát, UDP negarantuje nic.
    2. TCP vypočítává pakety během přenosu, ale UDP nikoli.
    3. TCP funguje v duplexní režim, v jednom paketu můžete odeslat informace a potvrdit přijetí předchozího paketu.
    4. TCP vyžaduje předem navázané spojení, UDP nevyžaduje připojení, je to jen datový tok.
    5. UDP poskytuje více vysoká rychlost přenos dat.
    6. TCP je spolehlivější a řídí proces komunikace.
    7. UDP je vhodnější pro programy, které přehrávají streamované video, videofonii a telefonování, síťové hry.
    8. UPD neobsahuje funkce pro obnovu dat

    Příklady aplikací UDP zahrnují například přenosy zóny DNS, Aktivní adresář, není potřeba spolehlivost. Velmi často rádi kladou takové otázky na pohovorech, takže je velmi důležité znát rozdíly mezi tcp a udp.

    TCP a UDP hlavičky

    Podívejme se, jak vypadají hlavičky obou transportních protokolů, protože zde jsou zásadní rozdíly.

    UDP hlavička

    • 16bitový zdrojový port > Zadání zdrojového portu pro UDP je volitelné. Pokud je toto pole použito, může příjemce odeslat odpověď na tento port.
    • 16bitový cílový port > Číslo cílového portu
    • 16bitová délka UDP > Délka zprávy včetně hlavičky a dat.
    • 16bitový kontrolní součet > Kontrolní součet záhlaví a dat ke kontrole

    TCP hlavička

    • 16bitový zdrojový port > Číslo zdrojového portu
    • 16bitový cílový port > Číslo cílového portu
    • 32bitové pořadové číslo > Pořadové číslo je generováno zdrojem a používáno v cíli k přeuspořádání paketů za účelem vytvoření původní zprávy a odeslání potvrzení zdroji.
    • 32 bitové potvrzovací číslo > Pokud je nastaven bit ACK v poli Control, toto pole obsahuje další očekávané pořadové číslo.
    • 4 bitová délka hlavičky > Informace o začátku datového paketu.
    • rezerva > Rezervováno pro budoucí použití.
    • 16bitový kontrolní součet > Kontrolní součet záhlaví a dat; určuje, zda byl paket poškozen.
    • 16bitový urgentní ukazatel > V tomto poli obdrží cílové zařízení informace o urgentní povaze dat.
    • Parametry > Volitelné hodnoty, které jsou specifikovány v případě potřeby.

    Velikost okna umožňuje šetřit provoz, zvažte, kdy je jeho hodnota 1, pak u každé odeslané odpovědi čeká odesílatel na potvrzení, což není úplně racionální.

    Při velikosti okna 3 odesílatel již odešle 3 snímky a čeká na 4, což znamená, že má všechny tři snímky +1.

    Doufám, že nyní máte představu o rozdílech mezi protokoly tcp udp.

    Protokoly TCP a UDP

    TCP – protokol pro řízení přenosu

    Spojově orientovaná komunikace může využívat spolehlivou komunikaci, pro kterou protokol vrstvy 4 zasílá potvrzení o příjmu dat a požaduje opětovné odeslání, pokud data nejsou přijata nebo poškozena. Protokol TCP používá právě takové spolehlivé spojení. V takových se používá TCP aplikační protokoly jako HTTP, FTP, SMTP a Telnet.

    Protokol TCP vyžaduje, aby bylo před odesláním zprávy navázáno spojení. Serverová aplikace musí provést tzv pasivní otevřený vytvořit spojení na známém čísle portu a místo odeslání volání do sítě server čeká na příchozí požadavky. Klientská aplikace musí aktivní otevření (aktivní otevření) odesláním serverové aplikace sekvenčního čísla synchronizace (SYN), které identifikuje připojení. Klientská aplikace může jako lokální port používat dynamické číslo portu.

    Server musí odeslat klientovi potvrzení (ACK) spolu s pořadovým číslem (SYN) serveru. Klient zase odpoví potvrzením ACK a spojení je navázáno.

    Poté může začít proces odesílání a přijímání zpráv. Když je zpráva přijata, je vždy jako odpověď odeslána zpráva ACK. Pokud vyprší časový limit dříve, než odesílatel obdrží potvrzení, je zpráva zařazena do fronty pro opětovné odeslání.

    Pole záhlaví TCP jsou uvedena v následující tabulce:

    TCP hlavička
    Pole Délka Popis
    Zdrojový port 2 bajty Číslo zdrojového portu
    Cílový přístav 2 bajty Číslo cílového portu
    Sériové číslo 4 byty Pořadové číslo je generováno zdrojem a používáno cílem k přeuspořádání paketů k vytvoření původní zprávy a odeslání potvrzení zdroji.
    Potvrzovací číslo 4 byty Pokud je nastaven bit ACK pole Control, toto pole obsahuje další očekávané pořadové číslo.
    Posun dat 4 bity Informace o začátku datového paketu.
    Rezervovat 6 bitů Rezervováno pro budoucí použití.
    Řízení 6 bitů Řídicí bity obsahují příznaky indikující, zda jsou pole potvrzení (ACK), Urgent Pointer (URG) správná, zda má být spojení resetováno (RST), zda bylo odesláno synchronizační pořadové číslo (SYN) atd.
    Velikost okna 2 bajty Toto pole určuje velikost přijímací vyrovnávací paměti. Pomocí potvrzovacích zpráv může příjemce informovat odesílatele o maximálním množství dat, které může odesílatel odeslat.
    Kontrolní součet 2 bajty Kontrolní součet záhlaví a dat; určuje, zda byl paket poškozen.
    Ukazatel naléhavosti 2 bajty V tomto poli obdrží cílové zařízení informaci o naléhavosti dat.
    Možnosti variabilní Volitelné hodnoty, které jsou specifikovány v případě potřeby.
    Přidání variabilní Do pole výplně je přidáno tolik nul, že záhlaví končí na 32bitové hranici.

    TCP je složitý, časově náročný protokol díky mechanismu navazování spojení, ale stará se o zaručené doručení paketů, aniž bychom to museli zahrnout funkčnost k aplikačnímu protokolu.

    Protokol TCP má vestavěnou schopnost spolehlivého doručení. Pokud zpráva není odeslána správně, obdržíme chybovou zprávu. Protokol TCP je definován v RFC 793.

    UDP - User Datagram Protocol

    Na rozdíl od TCP je UDP velmi rychlý protokol, protože definuje minimální mechanismus potřebný k přenosu dat. Samozřejmě to má nějaké nevýhody. Zprávy přicházejí v libovolném pořadí a ta, která byla odeslána jako první, může být přijata jako poslední. Doručení zpráv UDP není v žádném případě zaručeno, zpráva se může ztratit a mohou být přijaty dvě kopie stejné zprávy. Druhý případ nastane, když se k odesílání zpráv na stejnou adresu použijí dvě různé cesty.

    UDP nevyžaduje otevření připojení a data lze odeslat, jakmile jsou připravena. UDP neposílá potvrzovací zprávy, takže data mohou být přijata nebo ztracena. Pokud je při použití UDP vyžadován spolehlivý přenos dat, měl by být implementován v protokolu více vysoká úroveň.

    Jaké jsou tedy výhody UDP, proč by mohl být takový nespolehlivý protokol potřeba? Abychom pochopili důvod použití UDP, musíme rozlišovat mezi unicast, broadcast a multicast.

    Unicast zpráva je odeslána z jednoho uzlu pouze do jednoho dalšího uzlu. Tomu se také říká komunikace z bodu do bodu. Protokol TCP podporuje pouze jednosměrnou komunikaci. Pokud server potřebuje komunikovat s více klienty pomocí TCP, každý klient musí navázat spojení, protože zprávy lze posílat pouze na jednotlivé uzly.

    Přenos vysílání (vysílání) znamená, že zpráva je odeslána všem uzlům v síti. Skupinová pošta (multicast) je zprostředkující mechanismus: zprávy jsou odesílány vybraným skupinám uzlů.

    UDP lze použít pro jednosměrnou komunikaci, když je vyžadován rychlý přenos, jako je doručování médií, ale hlavní výhody UDP jsou ve vysílání a multicast.

    na kanálu a síťová vrstva protokoly TCP/IP paket, které se zabývají základním mechanismem pro přenos bloků dat mezi zeměmi a mezi sítěmi, jsou základy TCP/IP. Používají zásobník protokolů, ale nepoužívají se přímo v aplikacích, které na protokolu běží. TCP/IP. V tomto článku se podíváme na dva protokoly, které používají aplikace: User Datagram Protocol (UDP) a Transmission Control Protocol (TCP).

    Protokol uživatele Datagram
    User Datagram Protocol je velmi jednoduchý protokol. Jako IP, je to spolehlivý protokol bez připojení. Nemusíte se k hostiteli připojovat, abyste s ním mohli komunikovat pomocí UDP a neexistuje žádný mechanismus, který by zajistil přenos dat.
    Blok dat přenášených pomocí UDP nazývaný datagram. UDP přidává k přenášeným datům čtyři 16bitová pole záhlaví (8 bajtů). Tato pole jsou: délka pole, pole kontrolní součet a číslo zdrojového a cílového portu. "Port" je v tomto kontextu software portu, nikoli hardwarový port.
    Koncept čísla portu je společný pro oba UDP a TCP. Čísla portů určují, který modul protokolu odesílá (nebo přijímá) data. Většina protokolů má standardní porty, které se k tomu běžně používají. Například protokol Telnet obvykle používá port 23. Protokol SMTP (Simple Mail Transfer Protocol) používá port 25. standardní pokoje porty umožňují klientům komunikovat se serverem bez přednastavení jaký port použít.
    Číslo portu a protokolu v poli záhlaví IP se do určité míry překrývají, ačkoli protokolová pole nejsou dostupná protokolům vyšší úrovně. IP používá pole protokolu k určení, kam mají být data přenesena UDP nebo TCP moduly. UDP nebo TCP použijte číslo portu k určení, který protokol aplikační vrstvy by měl přijímat data.
    I přes, UDP není spolehlivý, stále je vhodná volba pro mnoho aplikací. Používají ho aplikace v reálném čase, jako je streamování audia a videa, kde při ztrátě dat je lepší se bez nich obejít, než je posílat znovu v pořádku. Používají jej také protokoly, jako je Simple Network Management Protocol (SNMP).
    Přenos
    UDP vhodné pro vysílání, protože nevyžaduje otevřené spojení Účel zprávy broadcast určuje odesílatel na zadanou cílovou IP adresu. UDP datagramy s cílovou IP adresou všechny binární 255.255.255.255) a budou přijaty každým hostitelem v lokální síť. Všimněte si slova místní: datagramy s touto adresou nebudou routerem přijímány do Internetu.
    Přenosy lze posílat na konkrétní sítě. UDP datagramy s částí IP adresy hostitele a podsítě nastavenými jako binární jsou vysílány všem hostitelům ve všech podsítích sítě, které odpovídají čisté části adresy IP. Pokud je na binární hodnotu nastaven pouze přijímací konec (jinými slovy všechny bity, které jsou v masce podsítě nulové), pak je vysílání omezeno na všechny hostitele v podsíti, které odpovídají zbytku adresy.
    Multicast se používá k odesílání dat skupině hostitelů, kteří vyjádřili přání je přijímat. multicast UDP Datagram má cílovou adresu, ve které jsou prvním čtyřem bitům, 1110, přiřazeny adresy v rozsahu 224.xxx až 239.xxx. Zbývající bity adresy se používají k označení skupiny multicast. Je to spíše jako rozhlasový nebo televizní kanál. Takže například pro protokol NTP se používá 224.0.1.1. Li TCP/IP Pokud aplikace chtějí přijímat zprávy vícesměrového vysílání, musí se připojit k příslušné skupině vícesměrového vysílání, což se děje předáním adresy skupiny nahoru v zásobníku protokolů.
    Vysílání ve skutečnosti filtrují přenos. Multicaster neuvažuje jednotlivé zprávy pro každého hostitele, který se připojí ke skupině. Místo toho se zprávy vysílají a ovladače na každém hostiteli se rozhodnou, zda je budou ignorovat nebo odeslat obsah do zásobníku protokolů.
    To znamená, že multicastové zprávy musí být vysílány po celém internetu, protože multicaster neví, kteří hostitelé chtějí zprávy přijímat. Naštěstí to není nutné. IP používá protokol nazvaný Internet Group Management Protocol (IGMP), aby sdělil směrovačům, kteří hostitelé chtějí přijímat skupinové zprávy vícesměrového vysílání, takže zprávy jsou odesílány pouze tam, kde jsou potřeba.
    protokol kontroly přenosu
    Transmission Control Protocol je protokol transportní vrstvy používaný většinou internetových aplikací, jako je Telnet, FTP a HTTP. Jedná se o protokol orientovaný na připojení. To znamená, že dva počítače – jeden klient a druhý server – musí mezi sebou navázat spojení, než mezi nimi lze přenášet data.
    TCP poskytuje spolehlivost. Aplikace, která používá TCP ví, že odesílá data přijatá na druhém konci a že je přijal správně. TCP používá kontrolní součty pro záhlaví i data. Při příjmu dat, TCP odešle potvrzení zpět odesílateli. Pokud odesílatel neobdrží potvrzení do určité doby, data jsou odeslána znovu.
    TCP obsahuje mechanismy, které zajistí, že data dorazí v opačném pořadí, v jakém byla odeslána. Implementuje také řízení toku, aby odesílatel nemohl přemoci příjemce dat.
    TCP přenáší data pomocí IP v blocích zvaných segmenty. Délka segmentu je určena protokolem. Kromě hlavičky IP se každý segment skládá z hlavičky o délce 20 bajtů. záhlaví TCP začíná 16bitovým polem čísla zdrojového a cílového portu. Jako UDP, tato pole definují aplikační úroveň, která je zaměřena na příjem dat. IP adresa a číslo portu dohromady jednoznačně identifikují služby běžící na hostiteli a páru známém jako soket.
    Další v záhlaví je 32bitové sériové číslo. Toto číslo určuje pozici v datovém toku, která by měla zabírat první datový bajt v segmentu. Sériové číslo TCP umožňuje udržet tok dat v správný příkaz, ačkoli segmenty mohou být odvozeny ze sekvence.
    Další pole je 32bitové pole, které se používá k signalizaci zpět odesílateli, že data byla přijata správně. Pokud je příznak ACK, což obvykle je, pak toto pole obsahuje pozici dalšího datového bajtu, který odesílatel segmentu očekává, že obdrží.
    V TCP není nutné, aby byl rozpoznáván každý datový segment. Hodnota v potvrzovacím poli je interpretována jako "všechna dosud přijatá data jsou v pořádku". To šetří šířku pásma, když jsou všechna data odesílána jedním směrem, což snižuje potřebu rozpoznávání segmentů. Pokud jsou data odesílána oběma směry současně, jako u plně duplexní komunikace, pak nejsou spojeny žádné náklady se značkami, protože jednosměrný datový segment může obsahovat potvrzení pro data zasílaná opačně.
    Dále v záhlaví je 16bitové pole obsahující délku záhlaví a příznaky. TCP záhlaví mohou obsahovat další pole, takže délka se může lišit od 20 do 60 bajtů. Příznaky: URG, ACK (které jsme již zmínili), PSH, RST, SYN a FIN. Později se podíváme na některé další vlajky.
    Záhlaví obsahuje pole nazvané velikost okna, které udává počet bajtů, které může přijímač přijmout. K dispozici je také 16bitový kontrolní součet pokrývající záhlaví i data. Nakonec (před dodatečnými údaji) je pole s názvem „ukazatel naléhavosti“. Když je nastaven příznak URG, je tato hodnota interpretována jako posun sériové číslo. Definuje začátek dat v toku, která je třeba urgentně zpracovat. Tato data jsou často označována jako data „mimo pásmo“. Příkladem jeho použití je, když uživatel stiskne klávesu přerušení, aby přerušil ukončení programu během relace Telnet.

    V počítačové sítě port je komunikační koncový bod v operačním systému. Termín se také používá pro hardwarová zařízení, ale v softwaru je to logická konstrukce, která identifikuje konkrétní proces nebo službu.

    Port je vždy spojen s hostitelskou IP adresou a typem, a tak dokončuje přiřazení adresy relace. Pro každou adresu a protokol je identifikován 16bitovým číslem běžně známým jako číslo portu. Konkrétní čísla portů se často používají k identifikaci konkrétních služeb. Z tisíců uvedených je 1024 známých čísel portů chráněno konvencí k identifikaci konkrétních typů služeb na hostiteli. Protokoly, které primárně používají porty, jsou určeny pro řízení procesů (jako je Transmission Control Protocol (TCP) a User Datagram Protocol (UDP) sady internetových protokolů).

    Význam

    TCP porty nejsou potřeba pro přímá spojení point-to-point, když počítače na obou koncích mohou spustit vždy pouze jeden program. Staly se nezbytnými poté, co stroje dokázaly spouštět více než jeden program současně a byly k nim připojeny moderní sítě s přepojováním paketů. V modelu architektura klient-server aplikace, porty a síťoví klienti se připojují k inicializaci služby, poskytují služby multiplexování poté, co je počáteční komunikace spojena se známým číslem portu, a je uvolněna přepnutím každé instance služby požadavku na pronajatou linku. Existuje spojení na konkrétní číslo a díky tomu další klienti lze podávat bez čekání.

    Podrobnosti

    Protokoly přenosu dat - Transmission Control Protocol (TCP) a User Datagram Protocol (UDP) - se používají k označení čísla cílového portu a zdroje v záhlaví jejich segmentů. Číslo portu je 16bitové celé číslo bez znaménka. Může se tedy pohybovat od 0 do 65535.

    Porty TCP však nemohou používat číslo 0. Zdrojový port pro UDP je volitelný a hodnota nula znamená žádný.

    Proces váže své vstupní nebo výstupní kanály přes internetový soket (typ deskriptoru souboru) pomocí transportního protokolu, čísla portu a IP adresy. Tento proces je známý jako spojování a umožňuje odesílání a přijímání dat přes síť.

    Operační systém je zodpovědný za přenos odchozích dat ze všech aplikačních portů do sítě, stejně jako za předávání příchozích síťových paketů (porovnáním IP adresy a čísla). Pouze jeden proces se může vázat na určitou kombinaci IP adresy a portu pomocí stejného transportního protokolu. K běžným selháním aplikací, někdy označovaným jako konflikty portů, dochází, když se několik programů pokouší komunikovat se stejnými čísly portů na stejné adrese IP pomocí stejného protokolu.

    Jak se používají

    Aplikace, které implementují sdílené služby, často používají speciálně vyhrazený a dobře známý seznam portů TCP a UDP k přijímání požadavků na služby od klientů. Tento proces je známý jako naslouchání a zahrnuje přijetí požadavku z dobře známého portu a navázání osobní konverzace mezi serverem a klientem pomocí stejného čísla místního portu. Ostatní klienti se mohou nadále připojovat – je to možné, protože připojení TCP je identifikováno jako řetězec lokálních a vzdálených adres a portů. Standard TCP porty a UDP jsou definovány konvencí, na kterou dohlíží Internet Assigned Numbers Authority (IANA).

    Hlavní síťové služby (především WorldWideWeb) mají tendenci používat malá čísla portů – méně než 1024. operační systémy Aby se k nim aplikace mohly vázat, jsou vyžadována speciální oprávnění, protože jsou často považována za kritická pro fungování sítí IP. Na druhou stranu koncový klient připojení má tendenci využívat velké množství z nich vyhrazených pro krátkodobé použití, takže existují tzv. efemérní porty.

    Struktura

    TCP porty jsou zakódovány v hlavičce paketu transportního protokolu a mohou být snadno interpretovány nejen vysílajícími a přijímajícími počítači, ale i dalšími komponentami. síťové infrastruktury. Zejména firewally jsou obvykle nakonfigurovány tak, aby rozlišovaly mezi pakety na základě čísel jejich zdrojového nebo cílového portu. Přesměrování je toho klasickým příkladem.

    Postup při pokusu o připojení k řadě portů v sérii na stejném počítači se nazývá skenování portů. To je obvykle způsobeno buď úmyslnými pokusy o selhání nebo správci sítě hledání možných zranitelností, které pomohou takovým útokům předejít.

    Akce zaměřené na to, jak často jsou počítače monitorovány a zaznamenávány. Tato technika používá řadu náhradních připojení, aby bylo zajištěno nepřerušené připojení k serveru.

    Příklady použití

    Nejdůležitějším příkladem, kde se aktivně používají porty TCP / UDP, je internetový poštovní systém. Server se používá pro práci s e-mailem (odesílání a přijímání) a obecně potřebuje dvě služby. První služba se používá pro přenos e-mailem a z jiných serverů. Toho je dosaženo aplikací služby SMTP, která obvykle naslouchá na portu TCP číslo 25, aby zpracovala příchozí požadavky. Další službou je POP (všechny Post Office Protocol) nebo IMAP (nebo Internet Message). Přístupový protokol), které jsou nezbytné pro klientské aplikace v e-mailu na počítačích uživatelů pro příjem zpráv ze serveru E-mailem. Služby POP naslouchají na portu TCP 110. Obě výše uvedené služby mohou běžet na stejném hostitelském počítači. Když k tomu dojde, číslo portu odlišuje požadovanou službu vzdálené zařízení- PC uživatele nebo jiný poštovní server.

    Zatímco číslo naslouchajícího portu serveru je správně definováno (IANA je nazývá dobře známé porty), daný parametr klient je často vybírán dynamický rozsah. V některých případech klienti a server jednotlivě používají specifické porty TCP přiřazené IANA. Dobrým příkladem je DHCP, kde klient vždy používá UDP 68 a server používá UDP 67.

    Aplikace v URL

    Čísla portů jsou někdy jasně viditelná na internetu nebo jiných jednotných lokátorech. informační zdroje(URL). Ve výchozím nastavení HTTP používá 443 a HTTPS používá 443. Existují však i další varianty. Například adresa URL http://www.example.com:8080/cesta/ označuje, že se webový prohlížeč připojuje k 8080 místo k serveru HTTP.

    Seznam portů TCP a UDP

    Jak bylo uvedeno, za globální koordinaci kořenového adresáře DNS, adresování IP a dalších zdrojů internetového protokolu je odpovědná organizace IANA (Internet Assigned Numbers Authority). To zahrnuje registraci běžně používaných čísel portů pro známé internetové služby.

    Čísla portů jsou rozdělena do tří rozsahů: dobře známý, registrovaný a dynamický nebo soukromý. Známé (také známé jako systémové) jsou ty s čísly od 0 do 1023. Požadavky na nová přiřazení v tomto rozsahu jsou přísnější než na jiné registrace.

    Dobře známé příklady

    Příklady nalezené v tento seznam, zahrnout:

    • Port TCP 443: HTTP Secure (HTTPS).
    • 22: Secure Shell (SSH).
    • 25: Simple Mail Transfer Protocol (SMTP).
    • 53: Systém doménových jmen (DNS).
    • 80: Hypertext Transfer Protocol (HTTP).
    • 119: Network News Transfer Protocol (NNTP).
    • 123: Network Time Protocol (NTP)..
    • 143: Internet Message Access Protocol (IMAP)
    • 161: Simple Network Management Protocol (SNMP)1.
    • 94: Internet Relay Chat (IRC).

    Registrované porty obsahují čísla od 1024 do 49151. IANA podporuje oficiální seznam známé a hlášené rozsahy. Dynamické nebo soukromé – 49152 až 65535. Jeden případ použití pro tento rozsah je pro dočasné porty.

    Historie stvoření

    Koncept čísla portu byl vytvořen prvními vývojáři ARPANET prostřednictvím neformální spolupráce mezi autory. software a správci systému.

    Termín „číslo portu“ se v té době ještě nepoužíval. Číselný řetězec pro vzdáleného hostitele byl 40bitové číslo. Prvních 32 bitů bylo podobných dnešní IPv4 adrese, ale prvních 8 bitů bylo nejvýznamnějších. Nejméně významná část čísla (bity 33 až 40) označovala další entitu, která se nazývala AEN. Toto je prototyp moderního čísla portu.

    26. března 1972 bylo poprvé navrženo vytvoření katalogu čísel soketů v RFC 322. Požadovali, aby každé trvalé číslo bylo popsáno z hlediska jeho funkcí a síťových služeb. Tento adresář byl následně publikován v RFC 433 v prosinci 1972 a obsahoval seznam hostitelů, čísla jejich portů a odpovídající funkce používané na každém uzlu v síti. V květnu 1972 byla poprvé zdokumentována oficiální přidělení čísel portů, síťové služby, jakož i speciální administrativní funkce pro vedení této evidence.

    První seznam portů TCP měl 256 hodnot AEN, které byly rozděleny do následujících rozsahů:

    • 0 až 63: standardní funkce celé sítě
    • 64 až 127: vlastnosti specifické pro hostitele
    • 128 až 239: vyhrazeno pro budoucí použití
    • 240 až 255: Libovolná experimentální funkce.

    Služba Telnet obdržela své první formální přiřazení hodnoty 1. V počátcích ARPANETu byl AEN také názvem soketu používaným s původní komponentou Connection Protocol (MSP) a Network Control Program (NCP). NCP byl zároveň předchůdcem moderních internetových protokolů využívajících porty TCP/IP.

    User Datagram Protocol (UDP)(User Datagram Protocol) je protokol TCP/IP definovaný v RFC 768, "User Datagram Protocol (UDP)". UDP se používá místo TCP pro rychlý a nespolehlivý přenos dat mezi hostiteli TCP/IP.

    protokol UDP poskytuje službu bez připojení, takže UDP nezaručuje doručení ani sekvenování pro žádný datagram. Hostitel, který potřebuje spolehlivou komunikaci, musí používat buď protokol TCP, nebo program, který bude sledovat posloupnost datagramů a potvrdí přijetí každého paketu.

    Aplikace citlivé na čas často používají UDP (video data), protože je vhodnější zahazovat pakety, než čekat na zpožděné pakety, což v systémech pracujících v reálném čase nemusí být možné. Také ztráta jednoho nebo více snímků při přenosu video dat přes UDP není tak kritická, na rozdíl od přenosu binární soubory, kde ztráta jednoho paketu může poškodit celý soubor. Další výhodou protokolu UDP je, že délka hlavičky UDP je 4 bajty, a TCP protokol- 20 bajtů.

    Zprávy UDP jsou zapouzdřeny a odesílány jako datagramy IP.

    UDP hlavička

    Obrázek ukazuje pole přítomná v hlavičce UDP.

    • Port odesílatele – toto pole specifikuje číslo portu odesílatele. Tato hodnota má specifikovat port, na který bude v případě potřeby odeslána odpověď. V opačném případě by hodnota měla být 0. Pokud je zdrojovým hostitelem klient, bude číslo portu s největší pravděpodobností pomíjivé. Pokud je zdrojem server, pak jeho port bude jeden z "dobře známých".
    • Cílový port – Toto pole je povinné a obsahuje cílový port. Podobně jako u zdrojového portu, pokud je klientem cílový hostitel, pak je číslo portu pomíjivé, jinak (server je cíl) je to „dobře známý port“.
    • Délka datagramu – pole, které udává délku celého datagramu (záhlaví a dat) v bajtech. Minimální délka je rovna délce záhlaví – 8 bajtů. Teoreticky, maximální velikost pole - 65535 bajtů pro UDP datagram (8 bajtů pro záhlaví a 65527 pro data). Skutečný limit délky dat při použití IPv4 je 65507 (kromě 8 bajtů na hlavičku UDP je vyžadováno dalších 20 bajtů na hlavičku IP).
    • Kontrolní součet – Pole kontrolního součtu se používá ke kontrole chyb v záhlaví a datech. Pokud množství není generováno vysílačem, pak je pole vyplněno nulami.

    Zvažte strukturu nadpisů UDP používáním síťový analyzátor Wireshark:

    UDP porty

    Vzhledem k tomu, že na stejném počítači může být spuštěno několik programů, je možné doručit paket UDP konkrétní program, používá se jedinečný identifikátor nebo číslo portu každého programu.

    Číslo portu je podmíněné 16bitové číslo od 1 do 65535 udávající, pro jaký program je paket určen.

    Porty UDP poskytují možnost odesílat a přijímat zprávy UDP. Port UDP funguje jako jediná fronta zpráv pro příjem všech datagramů určených pro program určený číslem portu protokolu. To znamená, že programy UDP mohou přijímat více než jednu zprávu najednou.

    Všechna čísla portů UDP menší než 1024 jsou rezervována a registrována u úřadu IANA (Internet Assigned Numbers Authority).
    Čísla portů UDP a TCP se nepřekrývají.

    Každý port UDP je identifikován vyhrazeným nebo známým číslem portu. Následující tabulka ukazuje částečný seznam známých čísel portů UDP, které používají standardní programy UDP.