TCP
| Назва: | Transmission Control Protocol |
|---|---|
| Узровень (па мадэлі OSI): | Транспартны |
TCP (англ.: Transmission Control Protocol — «пратакол кіравання перадачай») — адзін з асноўных сеткавых пратаколаў, з’яўляецца часткай транспартнага ўзроўню стэка TCP/IP. Пратакол TCP забяспечвае надзейную, упарадкаваную і правераную на памылкі дастаўку патоку байтаў паміж хастамі ў сетцы, звязанай па пратаколе IP. Большасць функцыяналу Інтэрнета (напрыклад вэб-старонкі або электронная пошта) абапіраецца на TCP.
TCP адкрывае злучэнне паміж кліентам і серверам перад адпраўкай даных. Сервер павінен праслухоўваць запыты на злучэнне ад кліентаў, перш чым злучэнне будзе ўстаноўлена. Каардынацыя злучэння, паўторная перадача даных і выяўленне памылак павялічваюць надзейнасць, але патрабуюць больш часу. Праграмы, якім не патрабуецца надзейная перадача даных, могуць замест TCP выкарыстоўваць пратакол UDP.
Гісторыя
У маі 1974 года Вінтан Серф і Роберт Кан апісалі міжсеткавы пратакол для сумеснага выкарыстання рэсурсаў паміж вузламі сеткі з камутацыяй пакетаў.[1] Спецыфікацыя пратакола RFC 675 была напісана Вінтанам Серфам, Ёгенам Далалам і Карлам Саншайнам і апублікавана ў снежні 1974 года. Яна змяшчае першае пацверджанае выкарыстанне тэрміна Інтэрнэт.
Цэнтральным кампанентам прапанаванай мадэлі была так званая праграма кіравання перадачай (англ.: Transmission Control Program). Пазней маналітная праграма кіравання перадачай была падзелена на пратакол кіравання перадачай (TCP) і міжсеткавы пратакол (IP). Гэта прывяло да стварэння сеткавай мадэлі, якая стала вядомай як мадэль TCP/IP, таксама яе называлі мадэллю DOD (англ.: Department of Defense — Міністэрства абароны) і мадэллю ARPANET.
У 2004 годзе Вінтан Серф і Роберт Кан атрымалі прэмію Цьюрынга за сваю працу над TCP/IP.[2][3]
Функцыянал
Пратакол TCP забяспечвае сувязь на узроўні паміж прыкладной праграмай і пратаколам IP. Прыкладная праграма не павінна ведаць канкрэтныя механізмы адпраўкі даных на іншы хост, напрыклад, фрагментацыю IP для падзелу даных на меншыя элементы, якія можна перадаць у асяроддзі перадачы. На транспартным узроўні TCP апрацоўвае ўсе дэталі перадачы і прадстаўляе абстракцыю сеткавага злучэння, звычайна праз інтэрфейс сокета.
Пакеты ў сетцы IP могуць быць страчаны, атрыманы некалькі разоў або дастаўлены ў іншым парадку, напрыклад з-за перагружанасці сеткі. TCP выяўляе гэтыя праблемы, запытвае паўторную перадачу страчаных даных і упарадкоўвае даныя. Калі даныя ўсё ж не атрымаецца даставіць, крыніца будзе апавешчана аб збоі. Пасля таго, як пратакол TCP на старане адрасата збірае паслядоўнасць пераданых даных, ён перадае іх праграме-адрасату. Такім чынам, TCP дадае абстракцыю паміж праграмай і сеткай.
TCP шырока выкарыстоўваецца многімі праграмамі ў Інтэрнеце, уключаючы праграмы для прагляду вэб-старонак (праз пратакол HTTP), электроннай пошты (праз пратаколы SMTP, IMAP, POP), для перадачы файлаў (FTP), дыстанцыйнага кіравання (SSH) і перадачы струменевага медыя.
TCP аптымізаваны для дакладнай дастаўкі і можа выклікаць адносна вялікія затрымкі падчас чакання паведамленняў або паўторнай перадачы страчаных паведамленняў. Такім чынам, ён не вельмі падыходзіць для праграм у рэжыме рэальнага часу, такіх як галасавая сувязь праз IP. Для такіх праграм звычайна рэкамендуюцца іншыя пратаколы, якія выкарыстоўваюць пратакол UDP.
Гл. таксама
Зноскі
- ↑ Vinton G. Cerf; Robert E. Kahn (May 1974). A Protocol for Packet Network Intercommunication (PDF). IEEE Transactions on Communications. 22 (5): 637–648. doi:10.1109/tcom.1974.1092259. Архівавана з арыгінала (PDF) March 4, 2016.
- ↑ Robert E Kahn – A.M. Turing Award Laureate. amturing.acm.org. Архівавана з першакрыніцы 13 ліпеня 2019. Праверана 13 ліпеня 2019.
- ↑ Vinton Cerf – A.M. Turing Award Laureate. amturing.acm.org. Архівавана з першакрыніцы 11 кастрычніка 2021. Праверана 13 ліпеня 2019.
Спасылкі
- RFC 793 (англ.) — спецыфікацыя пратакола TCP
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.