TCP/IP

З Вікіпедыі, свабоднай энцыклапедыі

Стэк пратаколаў TCP/IP — набор сеткавых пратаколаў перадачы інфармацыі, якія ужываюцца ў сетках, уключаючы Інтэрнэт. Назва TCP/IP паходзіць ад двух найважнейшых пратаколаў сямейства — Transmission Control Protocol (TCP) і Internet Protocol (IP), якія былі распрацаваны і апісаны першымі ў гэтым стандарце. Таксама зрэдку згадваецца як мадэль DOD у сувязі з гістарычным паходжаннем ад сеткі ARPANET з 1970 гадоў (створанай пад кіраваннем агенцтва DARPA, якое належыць да Міністэрства абароны ЗША)

Пратаколы працуюць адзін з другім у стэку (англ.: stack) — гэта значыць, што пратакол, які змяшчаецца на ўзровень вышэй, працуе «па-над» ніжнім, выкарыстоўваючы механізмы інкапсуляцыі. Напрыклад, пратакол TCP працуе па-над пратаколам IP.

Стэк пратаколаў TCP/IP уключае ў сябе чатыры ўзроўні:

  • прыкладны ўзровень (англ.: application layer)
  • транспартны ўзровень (англ.: transport layer)
  • міжсеткавы ўзровень (англ.: internet layer), таксама называюць сеткавым узроўнем
  • канальны ўзровень (англ.: link layer)

Пратаколы гэтых узроўняў цалкам рэалізуюць функцыянальныя магчымасці мадэлі OSI. На стэку пратаколаў TCP/IP пабудавана ўсё ўзаемадзеянне карыстальнікаў у IP-сетках. Стэк з'яўляецца незалежным ад фізічнага асяроддзя перадачы даных.

Узроўні стэку TCP/IP[правіць | правіць зыходнік]

Размеркаванне пратаколаў па ўзроўнях мадэлі TCP/IP
4 Прыкладны напр., HTTP, RTSP, FTP, DNS
3 Транспартны напр., TCP, UDP, SCTP, DCCP
(RIP, пратаколы маршрутызацыі, падобныя OSPF, якія працуюць па-над IP, з'яўляюцца часткай сеткавага ўзроўню)
2 Міжсеткавы Для TCP/IP гэта IP
(дапаможныя пратаколы, накшталт ICMP і IGMP, працуюць па-над IP, але таксама належаць да сеткавага ўзроўню; пратакол ARP з'яўляецца самастойным дапаможным пратаколам, які працуе па-над канальным узроўнем)
1 Канальны

(Link layer)

Ethernet, IEEE 802.11 Wireless Ethernet, SLIP, Token Ring, ATM і MPLS, фізічнае асяроддзе і прынцыпы кадзіравання інфармацыі, T1, E1

Прыкладны ўзровень[правіць | правіць зыходнік]

На прыкладным узроўні працуе большасць сеткавых праграм.

Гэтыя праграмы маюць свае асабістыя пратаколы абмену данымі, напрыклад, HTTP для WWW, FTP (перадача файлаў), SMTP (электронная пошта), SSH (шыфраванае злучэнне з аддаленай машынай), DNS (адлюстраванне сімвальных імёнаў у IP-адраса і наадварот) і многія іншыя.

У масе сваёй гэтыя пратаколы працуюць па-над TCP ці UDP і прывязаны да пэўнага порта, напрыклад:

  • HTTP на TCP-порт 80 ці 8080,
  • FTP на TCP-порт 20 (для перадачы файлаў) і 21 (для кіруючых каманд),
  • SSH на TCP-порт 22,
  • запыты DNS на порт UDP (радзей TCP) 53,
  • абнаўленне маршрутаў пратаколам RIP на UDP-порт 520.

Гэтыя парты вызначаны Агенцтвам па выдаткаванні імёнаў і ўнікальных параметраў пратаколаў (IANA).

Да гэтага ўзроўню належаць: Echo, Finger, Gopher, HTTP, HTTPS, IMAP, IMAPS, IRC, NNTP, NTP, POP3, POPS, QOTD, RTSP, SNMP, SSH, Telnet, XDMCP.

Транспартны ўзровень[правіць | правіць зыходнік]

Пратаколы транспартнага ўзроўню могуць рашаць праблему негарантаванай дастаўкі паведамленняў («ці дайшло паведамленне да адрасата?»), а таксама гарантаваць правільную паслядоўнасць атрымання пакетаў інфармацыі. У стэку TCP/IP транспартныя пратаколы вызначаюць, для менавіта якой праграмы прызначаны гэтыя даныя.

Пратаколы аўтаматычнай маршрутызацыі, лагічна прадстаўленыя на гэтым узроўні (бо працуюць па-над IP), на самай справе з'яўляюцца часткай пратаколаў сеткавага ўзроўню; напрыклад OSPF (IP ідэнтыфікатар 89).

TCP (IP ідэнтыфікатар 6) — «гарантаваны» транспартны механізм з папярэднім усталяваннем злучэння, які падае праграме надзейны паток даных, які дае ўпэўненасць у беспамылковасці атрыманай інфармацыі, які перазапытвае пакеты ў выпадку страты і ліквідуе дубліраванне інфармацыі. TCP дазваляе рэгуляваць нагрузку на сетку, а таксама змяншаць час чакання інфармацыі пры перадачы на вялікія адлегласці. Больш таго, TCP гарантуе, што атрыманыя даныя былі дасланы ў такой жа паслядоўнасці. У гэтым яго галоўнае адрозненне ад UDP.

UDP (IP ідэнтыфікатар 17) пратакол перадачы датаграм без усталявання злучэння. Таксама яго завуць пратаколам «ненадзейнай» перадачы, у сэнсе немагчымасці пераканацца ў дастаўцы паведамлення адрасату, а таксама магчымага перамешвання пакетаў. У праграмах, якія патрабуюць гарантаванай перадачы інфармацыі, ужываецца пратакол TCP.

UDP звычайна ўжываецца ў такіх праграмах, як патокавае відэа і камп’ютарныя гульні, дзе дапушчальная страта пакетаў, а паўторны запыт ускладнены ці не варты, альбо ў праграмах выгляду запыт-адказ (напрыклад, запыты да DNS), дзе стварэнне злучэння патрабуе больш рэсурсаў, чым паўторны запыт.

І TCP, і UDP ужываюць для вызначэння пратакола верхняга ўзроўню лік, званы портам.

Міжсеткавы ўзровень[правіць | правіць зыходнік]

Міжсеткавы ўзровень пачаткова распрацаваны для перадачы інфармацыі з адной падсеткі ў іншую. Прыкладамі такога пратакола з'яўляюцца X.25 і IPC у сетцы ARPANET.

З развіццём канцэпцыі глабальнай сеткі ва ўзровень былі ўнесены дадатковыя магчымасці перадачы з любой сеткі ў любую сетку, незалежна ад пратаколаў ніжняга ўзроўню, а таксама магчымасць запытваць даныя з аддаленага боку, напрыклад у пратаколе ICMP (выкарыстоўваецца для перадачы дыягнастычнай інфармацыі IP-злучэння) і IGMP (выкарыстоўваецца для кіравання multicast-патокамі).

ICMP і IGMP змешчаны над IP і павінны трапіць на наступны — транспартны — узровень, але функцыянальна з'яўляюцца пратаколамі сеткавага ўзроўню, і таму іх немагчыма ўпісаць у мадэль OSI.

Пакеты сеткавага пратаколу IP могуць змяшчаць код, які ўказвае, які менавіта пратакол наступнага ўзроўню трэба ўжыць, каб выняць інфармацыю з пакета. Гэты лік — унікальны IP-нумар пратакола. ICMP і IGMP маюць нумары, адпаведна, 1 і 2.

Да гэтага ўзроўню належаць: DHCP[1], DVMRP, ICMP, IGMP, MARS, PIM, RIP, RIP2, RSVP

Канальны ўзровень[правіць | правіць зыходнік]

Канальны ўзровень апісвае, якім чынам перадаюцца пакеты даных праз фізічны ўзровень, уключаючы кадзіраванне (то бок адмысловыя паслядоўнасці бітаў, якія вызначаюць пачатак і канец пакета інфармацыі). Ethernet, напрыклад, у палях загалоўка пакета змяшчае ўказанне таго, якой машыне ці машынам у сетцы прызначаны гэты пакет.

Прыклады пратаколаў канальнага ўзроўню — Ethernet, IEEE 802.11 Wireless Ethernet, SLIP, Token Ring, ATM і MPLS.

PPP не зусім упісваецца ў такое вызначэнне, таму звычайна апісваецца ў выглядзе пары пратаколаў HDLC/SDLC.

MPLS займае прамежкавы стан паміж канальным і сеткавым узроўнямі і яго нельга аднесці ні да воднага з іх.

Канальны ўзровень часам падзяляюць на 2 падузроўні — LLC і MAC.

Акрамя таго, канальны ўзровень апісвае асяроддзе перадачы інфармацыі (ці то кааксіяльны кабель, вітая пара, аптычнае валакно ці радыёканал), фізічныя характарыстыкі такога асяроддзя і прынцып перадачы інфармацыі (падзяленне каналаў, мадуляцыю, амплітуду сігналаў, частату сігналаў, спосаб сінхранізацыі перадачы, час чакання адказу і максімальная адлегласць).

Параўнанне з мадэллю OSI[правіць | правіць зыходнік]

Існуюць рознагалоссі ў тым, як упісаць мадэль TCP/IP у мадэль OSI, бо ўзроўні ў гэтых мадэлях не супадаюць.

Да таго ж, мадэль OSI не ўжывае дадатковы ўзровень — «Internetworking» — паміж транспартным і сеткавым узроўнямі. Прыкладам спрэчнага пратакола можа быць ARP альбо STP.

Вось так традыцыйна пратаколы TCP/IP упісваюцца ў мадэль OSI:

Размеркаванне пратаколаў па ўзроўнях мадэлі OSI
TCP/IP OSI
7 Прыкладны Прыкладны напр., HTTP, SMTP, SNMP, FTP, Telnet, SSH, SCP, SMB, NFS, RTSP, BGP
6 Прадстаўнічы напр., XDR, AFP, TLS, SSL
5 Сеансавы напр., ISO 8327 / CCITT X.225, RPC, NetBIOS, PPTP, L2TP, ASP
4 Транспартны Транспартны напр., TCP, UDP, SCTP, SPX, ATP, DCCP, GRE
3 Міжсеткавы Сеткавы напр., IP, ICMP, IGMP, CLNP, OSPF, RIP, IPX, DDP
2 Канальны Канальны напр., Ethernet, Token ring, HDLC, PPP, X.25, Frame relay, ISDN, ATM, SPB, MPLS, ARP
1 Фізічны напр., электрычныя правады, радыёсувязь, валаконна-аптычныя кабелі, інфрачырвонае выпраменьванне

Звычайна ў стэку TCP/IP верхнія 3 узроўні мадэлі OSI (прыкладны, прадстаўнічы і сеансавы) яднаюць у адзін — прыкладны. Паколькі ў такім стэку не прадугледжаны ўніфікаваны пратакол перадачы даных, функцыі вызначэння тыпу даных перакладаюцца на праграму.

Апісанне мадэлі TCP/IP у тэхнічнай літаратуры[правіць | правіць зыходнік]

У мадэлі TCP/IP (у адрозненні ад мадэлі OSI) — фізічны ўзровень мадэлі OSI цалкам уваходзіць у канальны ўзровень мадэлі TCP/IP і ніяк не апісваецца асабіста. Тым не менш, у некаторых падручніках[2], для лепшага разумення апісваецца "гібрыдная мадэль TCP/IP - OSI" з 5 узроўняў, змяшчаючы дадатковы — фізічны ўзровень.

Наступная табліца паказвае розныя варыяцыі ў апісанні мадэлі TCP/IP. Колькасць узроўняў вар'іруецца ад трох да сямі.

Kurose,[3] Forouzan [4] Comer,[5] Kozierok[6] Stallings[7] Tanenbaum[8] RFC 1122, Internet STD 3 (1989) Cisco Academy[9] Mike Padlipsky's 1982 "Arpanet Reference Model" (RFC 871) OSI model
Пяць узроўняў Чатыры + 1 узровень Пяць узроўняў Пяць узроўняў Чатыры ўзроўні Чатыры ўзроўні Тры ўзроўні Сем узроўняў
"Five-layer Internet model" or "TCP/IP protocol suite" "TCP/IP 5-layer reference model" "TCP/IP model" "TCP/IP 5-layer reference model" "Internet model" "Internet model" "Arpanet reference model" OSI model
Application Application Application Application Application Application Application/Process Application
Presentation
Session
Transport Transport Host-to-host or transport Transport Transport Transport Host-to-host Transport
Network Internet Internet Internet Internet Internetwork Network
Data link Data link (Network interface) Network access Data link Link Network interface Network interface Data link
Physical (Hardware) Physical Physical Physical

Некаторыя з мадэляў у дадзенай табліцы ўзяты з падручнікаў, якія з'яўляюцца другаснымі крыніцамі і могуць разыходзіцца з RFC 1122 і іншымі IETF першакрыніцамі[10].

Гл. таксама[правіць | правіць зыходнік]

Зноскі

  1. http://www.protocols.ru/files/Protocols/TCPIP.pdf Архівавана 27 сакавіка 2014.
  2. Таненбаўм Э. "Камп'ютарныя Сеткі, пятае выданне"
  3. James F. Kurose, Keith W. Ross, Computer Networking: A Top-Down Approach, 2008, ISBN 0-321-49770-8
  4. Behrouz A. Forouzan, Data Communications and Networking, 2003
  5. Douglas E. Comer, Internetworking with TCP/IP: Principles, Protocols and Architecture, Pearson Prentice Hall 2005, ISBN 0-13-187671-6
  6. Charles M. Kozierok, "The TCP/IP Guide", No Starch Press 2005
  7. William Stallings, Data and Computer Communications, Prentice Hall 2006, ISBN 0-13-243310-9
  8. Andrew S. Tanenbaum, Computer Networks, Prentice Hall 2002, ISBN 0-13-066102-3
  9. Mark A. Dye, Rick McDonald, Antoon W. Rufi, Network Fundamentals: CCNA Exploration Companion Guide, 2007, ISBN 1-58713-208-7
  10. R. Bush, D. Meyer (December 2002). Some Internet Architectural Guidelines and Philosophy. Internet Engineering Task Force.

Літаратура[правіць | правіць зыходнік]

  • Терри Оглтри. Модернизация и ремонт сетей = Upgrading and Repairing Networks. — 4-е. — М.: «Вильямс», 2005. — С. 1328. — ISBN 0-7897-2817-6.
  • Дуглас Камер. Сети TCP/IP, том 1. Принципы, протоколы и структура = Internetworking with TCP/IP, Vol. 1: Principles, Protocols and Architecture. — М.: «Вильямс», 2003. — С. 880. — ISBN 0-13-018380-6.
  • Семенов Ю. А. Протоколы Internet. — 2-е изд., стереотип.. — М.: Горячая линия - Телеком, 2005. — 1100 с. — 1 150 экз. — ISBN 5-93517-044-2.

Спасылкі[правіць | правіць зыходнік]