Што яны + розніца паміж TCP і UDP

TCP і UDP – гэта пратаколы падлучэння, якія выкарыстоўваюцца для ўстанаўлення спосабу абмену данымі праз інтэрнэт-злучэнне. Калі вы ўжо ведаеце, што азначае IP (г.зн. Інтэрнэт-пратакол), то вы ўжо ў курсе, бо як TCP, так і UDP былі распрацаваны ў дадатак да гэтага.

Аднак вы памыляецеся, калі думаеце, што яны практычна аднолькавыя; хоць і TCP, і UDP «выказваюць сваё слова» ў тым, як вашы даныя адпраўляюцца/атрымліваюцца ў Інтэрнэце, яны насамрэч моцна адрозніваюцца, і па гэтай прычыне яны выкарыстоўваюцца для розных мэтаў.

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

Паколькі і TCP, і UDP створаны на аснове Інтэрнэт-пратаколу, вы, магчыма, захочаце даведацца больш пра IP, перш чым пераходзіць непасрэдна да ўводных урокаў TCP/UDP. Ведаеце, перш чым бегаць, трэба навучыцца хадзіць.

Што такое IP-адрас?

IP, што азначае інтэрнэт-пратакол, з’яўляецца той самай асновай, на якой быў пабудаваны Інтэрнэт, якім мы яго ведаем. Яго важнасць можна лёгка зразумець па тым, што кожнаму прыладзе прысвоены унікальны IP-адрас для доступу ў Інтэрнэт.

Раней адрас складаўся толькі з лічбаў і дзесятковых знакаў. Калі быць больш канкрэтным, то IPv4-адрас можа быць сфарміраваны з чатырох асобных лікаў, кожны з якіх можа мець значэнне ад 0 да 254. IPv4 даў нам агульны дыяпазон 4,3 мільярда унікальных IP-адрасоў.

Непазбежна, Інтэрнэт пачаў даходзіць да кропкі, калі новыя унікальныя IP-адрасы не могуць быць створаны, і гэта тады, калі сістэма IPv6 з’явілася, каб выратаваць дзень. У публічных адрасах IPv6 выкарыстоўваюцца шаснаццатковыя лічбы, і кожны з іх змяшчае 128 біт, што азначае, што замест базы 10 (ад 0 да 10) яны выкарыстоўваюць базу 16 (ад 0 да 10 плюс ад «а» да «f»).

З дапамогай сістэмы IPv6 агульны дыяпазон публічных IPv6-адрасоў, які мы маглі б мець, складае 340 ундэцыліёнаў (3,4 * 10^28). Калі гэта немагчыма, праверце, як выглядаюць адрасы IPv4 і IPv6 ніжэй:

Прыклад IPv4-адрасу: 10.238.126.215
Прыклад IPv6 адраса: fe80:0db8:0412:2001:3c5e:0000:10a9

Хоць канчатковай мэтай з’яўляецца тое, каб IPv6 замяніў IPv4, у цяперашні час гэтыя два пратаколы працуюць разам.

IP-адрасы дазваляюць прыладам з падтрымкай Інтэрнэту знаходзіць месцазнаходжанне, мець зносіны адзін з адным і абменьвацца інфармацыяй. Абагульванне даных, струменевае відэа або адпраўка паведамленняў электроннай пошты былі б немагчымыя без IP-адрасу. Усё, што вы робіце ў Інтэрнэце, можна перапісаць у дадзеныя.

Праверце гэта:  Як уключыць падтрымку кантролера Minecraft

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

Пасля таго, як пакет пакідае вашу прыладу, ён накіроўваецца да шлюзу, які скануе IP-адрас прызначэння вашага пакета ў сваім дамене. Варта адзначыць, што шлюз можа бачыць толькі зададзены набор IP-адрасоў у Інтэрнэце.

Такім чынам, калі шлюз не можа знайсці адрас у сваім дамене, ён проста адпраўляе пакет на іншы шлюз, і гэтая аперацыя працягваецца, пакуль пакет не дасягне шлюза, які можа выявіць IP-адрас прызначэння, указаны ў загалоўку, і адправіць на прыладу, звязаную з гэтым адрасам.

Яшчэ варта адзначыць, што той факт, што вашы дадзеныя падзеленыя на невялікія пакеты, азначае, што яны не абавязкова павінны прыбываць у парадку або нават выкарыстоўваць адзін і той жа маршрут, калі на тое пайшло. Па сутнасці, пакеты звычайна кожны раз спрабуюць знайсці самы хуткі маршрут.

Нарэшце, але не ў апошнюю чаргу, вы павінны ведаць, што Інтэрнэт-пратакол не залежыць ад фармату, што робіць яго ідэальным для любой формы даных, няхай гэта будзе відэа, выявы, аўдыё, электронныя лісты, імгненныя паведамленні ці нават гульні.

Што такое TCP?

TCP, што азначае Transmission Control Protocol, з’яўляецца адным з асноўных пратаколаў, якія выкарыстоўваюцца ў наборы пратаколаў Інтэрнэту. Ён быў раней за UDP і выкарыстоўваўся для таго, каб праграмы і прылады маглі абменьвацца інфармацыяй па сетцы.

Вы можаце заўважыць, што часам ён спалучаецца з IP і называецца TCP/IP, але гэта азначае тое ж самае (г.зн. TCP і TCP/IP – гэта адно і тое ж).

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

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

У наш час гэты працэс адбываецца вельмі хутка, і ён гарантуе, што даныя паступаюць на машыну атрымальніка сапраўды гэтак жа, як і на прыладзе адпраўніка, без якіх-небудзь скрытых змен. Акрамя таго, гэта ўключае ў сябе пастаянную сувязь з абодвух канцоў, паколькі працэс на самай справе можна апісаць як бесперапынны зваротны рух паміж прыладамі-ўдзельнікамі, пакуль не паступяць дадзеныя і не будзе пацверджаны на 100%.

Праверце гэта:  WakeUp аўтаматычна ўключае экран, калі вы падымаеце прыладу

Само сабой зразумела, што гэтая пастаянная сувязь паміж прыладамі стварае жудасную нагрузку на TCP, бо любы страчаны або пашкоджаны пакет можа спыніць працэс, пакуль адсутнічае біт бяспечна не прыбудзе да месца прызначэння. Аднак TCP не павінен рабіць усё самастойна, таму UDP быў вынайдзены неўзабаве пасля гэтага.

Карацей кажучы, TCP:

Пераканаецца, што пакеты не выпадаюць
Просіць адправіць пакеты, калі выявіць якія-небудзь адсутнічаюць
Адпраўляе пакеты ў парадку, каб іх можна было лёгка сабраць
Самы папулярны інтэрнэт-пратакол
Павольней, чым UDP, таму што ён павінен пераканацца, што кожны пакет прыходзіць
Падыходзіць для вэб-сайтаў, электроннай пошты, FTP (пратакол перадачы файлаў), абмену файламі P2P

Што такое UDP?

UDP, скарачэнне ад User Datagram Protocol, з’яўляецца альтэрнатывай TCP, таму можна з упэўненасцю выказаць здагадку, што, па сутнасці, яны выконваюць тую ж задачу. Тым не менш, яны таксама моцна адрозніваюцца ў той жа час, так як TCP даволі скрупулёзна правярае пакетныя дадзеныя, у той час як UDP крыху больш нядбайны.

Уявіце сабе двух супрацоўнікаў, якія апрацоўваюць лісты на станцыі сартыроўкі пошты: TCP – гэта той, які ўважліва разглядае кожны ліст і не дае камунікацыі, пакуль кожны ліст не прыйдзе, а UDP проста правярае лісты на цэласнасць і перасылае іх да месца прызначэння, увесь час выдаляючы любы ліст не прыйшоў і не прасіў адправіць паўторна.

Так што можна з упэўненасцю сказаць, што UDP хутчэй, але чаму б вы жадалі ахвяраваць хуткасцю за кошт страты дадзеных на гэтым шляху? Ну, у прынцыпе, ёсць некаторыя прыкладання, дзе страта пакетаў – гэта не зусім трагедыя.

Напрыклад, калі вы карыстаецеся VoIP-кліентам і размаўляеце з кімсьці, вы можаце заўважыць выпадковыя страты кадраў або невялікае спыненне гуку, што часцей за ўсё лёгка ігнараваць, і таму не важна. Тое ж самае ставіцца і да гульняў, дзе час ад часу вы можаце заўважыць, што гульня заікаецца, або гумка. Вы проста аднаўляеце гульню, і на гэтым усё скончылася, бо UDP проста выдаляе пакеты, якія згубіліся падчас перадачы.

Іншымі словамі, UDP:

Хутчэй, чым TCP, і выкарыстоўвае менш рэсурсаў
Не абавязкова адпраўляць пакеты па парадку
Адкідае ўсе адсутнічаюць пакеты, каб паскорыць злучэнне
У адпраўніка няма магчымасці даведацца, ці былі скінутыя пакеты
У асноўным выкарыстоўваецца для струменевага відэа, VoIP, гульняў і прамых трансляцый

Праверце гэта:  Як прызначыць VLC дысплею ў наладзе некалькіх дысплэй

TCP і UDP пры выкарыстанні VPN

У цяперашні час усё больш і больш VPN пачынаюць выкарыстоўваць WireGuard або ствараць свой уласны пратакол для выкарыстання, але многія з іх разлічваюць на OpenVPN, таму што пасля ўсіх гэтых гадоў ён па-ранейшаму надзейны, хуткі і бяспечны.

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

Пры выкарыстанні VPN вы можаце не заўважыць вялікай розніцы паміж TCP і UDP з пункту гледжання хуткасці. Аднак, калі вашаму злучэнню неабходна абыходзіць брандмаўэр, тады ўсё зменіцца, галоўным чынам таму, што гэтыя пратаколы працуюць на розных партах, а некаторыя брандмаўэры могуць блакаваць парты па змаўчанні для пэўных тыпаў трафіку.

Таму правайдэры VPN дазваляюць выбіраць паміж TCP і UDP. Калі вы заўважылі, што ваша злучэнне не працуе па адным пратаколе, вы можаце проста пераключыцца на іншы і скрыжаваць пальцы. Некаторыя пастаўшчыкі VPN прапануюць вам дадатковыя налады, дзе вы таксама можаце выбраць карыстальніцкі порт для вашага злучэння, каб пазбегнуць брандмаўэраў.

Розніца паміж TCP і UDP

TCP

UDP

TCP з’яўляецца найбольш шырока выкарыстоўваным пратаколам у Інтэрнэце
Усе адпраўленыя даныя даходзяць да атрымальніка, без гарантыі страты пакетаў
Пакеты адпраўляюцца па парадку
Патрабуецца больш рэсурсаў, што таксама робіць яго больш павольным.

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

TCP супраць UDP: заключэнне

Каб завяршыць усё, TCP і UDP – гэта даволі падобныя пратаколы, у тым ліку яны гарантуюць, што вашы дадзеныя бяспечна даходзяць да месца прызначэння і не змяняюцца дзесьці па шляху.

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

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