Úvodní stránka | Tato stránka v originále

Přenosový řídící protokol

Přenosový řídící protokol (TCP) je spojení-orientované, spolehlivé doručení bajt-rozdělit transportní vrstvu protokol současně dokumentoval IETF RFC 793.

V TCP/IP model, TCP poskytuje rozhraní mezi síťovou vrstvou dole a aplikační vrstva nahoře. Aplikace pošlou potoky 8 -bitové bajty k TCP pro doručení na síti. TCP nakreslí potok bajtu do přiměřeně tříděných segmentů, obvykle definovaný maximálním decibelem (MTU) velikost používaná vrstvou datového spojení dole.

OSI model
Aplikační vrstva
   
FTPSMTPHTTP...
Transportní vrstva
   
TCPUDP
Síťová vrstva
   
IP ICMPArp
vrstva datového spojení
   
EthernetPrsten známkyFDDI...

Tabulka s obsahem
1 protokolová operace
2 TCP porty
3 TCP vývoj
4 alternativy k TCP
5 externích spojení

Operace protokolu

TCP spojení obsahují tři fáze: zřízení spojení, přenos dat a ukončení spojení. 3-podání rukou cesty je používáno vytvořit spojení. Čtyři-podání rukou cesty je zvyklé na slzu-dole spojení. Během zřízení spojení, parametry takový jako sled čísla jsou inicializována pomoci zajistit spořádané doručení a robustnost.

Zřízení spojení

Zatímco to je možné pro pár hostitelů konce zahájit spojení mezi sebou současně, typicky jeden konec otevírá zásuvku a poslouchá pasivně pro spojení od jiný. Toto je obyčejně odkazoval se na jak pasivní otevřený, a to určí server-strana spojení. Klient-strana spojení zahájí aktivní otevřený tím, že pošle počáteční SYN segment k serveru jako část 3-podání rukou cesty. Server-strana by měla reagovat na platnou SYN žádost se SYN/ACK. Konečně, klient-strana by měla reagovat na server s ACK, dokončovat 3-podání rukou cesty a zřízení spojení fázují.

Přenos dat

Během fáze přenosu dat, množství klíče mechanismy určují TCP spolehlivost a robustnost. Tito zahrnují používání sekvenční čísla pro objednávat přijaté TCP segmenty a odhalovat data duplikátu, kontrolní součty pro segmentovou detekci chyb a potvrzení a časová relé pro odhalit a přizpůsobit se ztrátě nebo zpoždění.

Během TCP spojení fáze založení, parafovat sekvenční čísla (ISNs) je vyměněn mezi dvěma TCP reproduktory. Tato čísla sekvence jsou používána poznat data v potoku bajtu, a jsou čísla, která identifikují (a počet) uživatelské datové bajty. Tam být vždy pár čísel sekvence zahrnovaných v každém TCP segmentu, který být odkazoval se na jako sekvenční číslo a acknowlegement číslo. TCP odesílatel se odkazuje na jeho vlastní sekvenční číslo jednoduše jako sekvenční číslo, zatímco TCP odesílatel se odkazuje na přijímačové sekvenční číslo jako číslo acknowlegement. To udržuje spolehlivost, přijímač acknowleges TCP segmentová data tím, že ukáže, že to přjímalo až do nějakého umístění sousedících bajtů v potoku. Povznesení k TCP, volané výběrové acknowlegement (pytlují), dovolí TCP přijímač k acknowlege ven nařídí bloky.

Přes použití sekvence a potvrzovací čísla, hostitelé konce mohou vhodně doručit přijaté segmenty ve správném bajtovém potočním pořádku k dostaní přihlášky. Sekvenční čísla jsou 32-bit, nepodepsaná čísla, který obal k nule na příštím bajtu v potoku po 2 ^ 32-1. Jeden klíč k tvrdící robustnosti a bezpečnosti pro TCP spojení je ve výběru ISN.

16-bit kontrolní součet, sestávat z něčí doplněk suma obsahu TCP segmentového záhlaví a dat, je počítán odesílatelem, a zahrnutý v přenosu části. TCP přijímač recomputes kontrolní součet na přijatém TCP záhlaví a data. Jestliže přijímač je počítán kontrolní součet odpovídá přijatému kontrolnímu součtu, část je převzata k přišli neporušený a bez chyby.

TCP něčí kontrolní součet doplňku je docela slabá kontrola moderními standardy: to omezí TCP k bytí používanému přes propojení se docela nízkými bitovými četnostmi chyb pro data v přijatých balíkách. Jestliže TCP měl být přebudovaný dnes, to odkázaný nejvíce pravděpodobně mít 32-bit CRC specifikoval jako kontrola chyby místo toho aktuálního kontrolního součtu. Slabý kontrolní součet je částečně kompenzoval obyčejné použití CRC nebo lepší bezúhonost zkontrolují u vrstva 2, pod oběma TCP a IP, takový jak je používán v PPP nebo Ethernetový rám. Nicméně, toto neznamená, že 16-ti bitový TCP kontrolní součet je nadměrný: pozoruhodně, přehledy provozu internetu ukazovaly ten software a chyby hardwaru, které představí chyby v balíkách mezi CRC-chránění poskoci jsou obyčejní, a to konec-k-konec 16-ti bitový TCP kontrolní součet chytí většinu z těchto jednoduchých chyb.

Acknowlegements pro data posílal, nebo nedostatek acknowlegements, být používán odesílateli k implicity interpretovat podmínky sítě mezi TCP odesílatelem a přijímačem. Spojený s časovače, TCP odesílatelé a přijímače mohou změnit chování toku dat. Toto je více obecně odkazoval se na jako řízení toku, kontrola ucpání a/nebo ucpání avoidance. TCP používá množství mechanismů dosáhnout jak robustnosti tak vysokého výkonu. Tyto mechanismy zahrnují použití posuvného okna, algoritmus pomalého startu, ucpání avoidance algoritmus, rychlé retransmit a rychlé zotavovací algoritmy, a více. Povznášet TCP účinně zabývat se ztrátou, minimalizovat chyby, řídit ucpání a jít rychle v velmi vysokorychlostní prostředí jsou pokračující oblasti výzkumu a vývoj standardů.

Ukončení spojení

Spojová zakončovací fáze používá čtyři-podání rukou cesty, s každou stranou spojení končit nezávisle. Proto, typický teardown vyžaduje pár ploutve a ACK segmenty pro každý konec.

TCP porty

TCP používá ponětí o číslech portu poznat odesílání a obdržení přihlášek. Každá strana TCP spojení má spojený 16-bit nepodepsané portové číslo zadalo odesílání nebo obdržení přihlášky. Porty jsou roztříděny do tří základních kategorií: dobře známý, registrovaný a dynamický/soukromý. dobře známé porty jsou přiřazeny Internet přiřadil čísla autorita (IANA) a být typicky použitý systémem-srovnat nebo zakořenit procesy. Dobře známý běh aplikací jako servery a pasivně poslouchat spojení typicky používat tyto porty. Některé příklady obsahují: FTP (21), Telnet (23), SMTP (25) a HTTP (80). Registrované porty jsou typicky použité aplikacemi koncového uživatele jako prchavé zdrojové porty když kontaktuje servery, ale oni mohou také poznat pojmenované služby, které byly registrované třetí osobou. Dynamické/soukromé porty jsou moci také být používán aplikacemi koncového uživatele, ale méně obyčejně tak. Oni typicky neobsahují nějaký význam ven ze zvláštního TCP spojení.

TCP vývoj

TCP je docela komplex a vyvíjející se protokol. Zatímco významná povznesení byla vyrobená a navrhovala za ta léta, jeho základní operace se neměnila významně od RFC 793, publikoval v roce 1981. RFC 1122, hostit požadavky pro hostitele internetu, objasnil množství TCP protokolu implementační požadavky. RFC 2581, TCP kontrola ucpání, jeden nejdůležitější TCP líčil RFCs v uplynulých letech, popisuje aktualizované algoritmy použitý TCP se vyhnout cogestion. V roce 2001, RFC 3168 byl psán popisovat explicitní ucpání zpráva (ECN), ucpání avoidance signalizovat mechanismus, k seznamu důležitý RFCs to aktualizovat originální specifikaci. V brzy 21. století, TCP je typicky použitý v přibližně 95 % všech Internetových balíků. Běžná užití, která používají TCP zahrnují HTTP/HTTPS (celosvětová pavučina), SMTP/POP3/IMAP (e-mailuje) a FTP (zařadí převod). Jeho široké užití je svědectví návrhářů originálu že jejich vytvoření bylo výjimečně dobře vypečené.

Alternativy k TCP

Nicméně, TCP není vhodný pro mnohé žádosti a novější dopravní vrstvové protokoly jsou navrhnuty a dislokovaný oslovit některé ty vlastní slabosti. Například, mnoho real-time aplikace často dělají ne potřeba a vůle trpí, TCP je spolehlivý mechanismy doručení. V těch druhách aplikací, to je často lepší k dohodě s nějakou ztrátou, chybám nebo ucpání než pokus nastavit pro je. Aplikace příkladu, které dělají ne typicky používat TCP obsahovat real-time multimédia dělení (takový jako Rádio internetu) a někteří real-time vícehráčské hry. Jakákoliv žádost to nevyžaduje spolehlivost nebo to chce minimalizovat funkčnost, smět rozhodnout se vyhýbat se používat TCP. V mnoha případech, Uživatelský Datagram protokol (UDP) může být používán na místě TCP, když právě aplikace multiplexing služby jsou vyžadovány.

Externí odkazy