TCP vs UDP: Ishonchlilik va samaradorlik munozarasi

Bugun biz TCP-ga e'tibor qaratamiz. Ilgari qatlamlanish bobida muhim fikrni aytib o'tdik. Tarmoq sathida va undan pastda, xost ulanishlar uchun ko'proq narsa, bu sizning kompyuteringiz unga ulanish uchun boshqa kompyuter qayerdaligini bilishingiz kerakligini anglatadi. Biroq, tarmoqdagi aloqa ko'pincha aloqani emas, balki suhbatdoshlar bilan aloqa qiladi. Shuning uchun TCP protokoli port tushunchasini joriy etadi. Portni faqat bitta jarayon egallashi mumkin, bu turli xil xostlarda ishlaydigan dasturlar o'rtasida to'g'ridan-to'g'ri aloqalarni ta'minlaydi.

Transport qatlamining vazifasi turli xil xostlarda ishlaydigan dasturlar o'rtasida to'g'ridan-to'g'ri aloqa xizmatlarini qanday boshqarishdir, shuning uchun u oxirigacha tugash protokoli sifatida ham tanilgan. Transport sathi tarmoqning asosiy tafsilotlarini yashiradi, bu esa ikki transport qatlamidagi mantiqiy yakuniy aloqa kanali mavjud bo'lganidek, dasturiy ta'minot jarayonini o'rganishga imkon beradi.

TCP uzatish nazorati protokoli o'rnatiladi va ulanishga yo'naltirilgan protokol sifatida tanilgan. Bu shuni anglatadiki, bitta dastur ma'lumotni boshqasiga yuborishni boshlashi mumkin, ikkita jarayonlar qo'l siqish kerak. Qo'l berishi mantiqan ulangan jarayon bo'lib, ma'lumotlarni ishonchli uzatishni va tartibli qabul qilishni ta'minlaydi. Qo'l qurish paytida ma'lumot uzatishni muvaffaqiyatli amalga oshirish uchun bir qator boshqarish paketlari va ba'zi parametrlar va qoidalarga rioya qilish orqali ulanish paytida ulanish o'rnatiladi.

TCP nima? (MylinkingTarmoq konivaTarmoq paketini brokerikkalasi ham TCP yoki UDP paketlarini qayta ishlashi mumkin)
TCP (uzatish nazorati protokoli) ulanishga yo'naltirilgan, ishonchli, baytga asoslangan transport sathidagi aloqa protokoli.

Ulanishga yo'naltirilgan: Ulanish yo'nalishi TCP aloqasi bir vaqtning o'zida bir nechta xostlarga xabar yuborishi mumkin bo'lgan, ya'ni bir nechta xostlardan farqli o'laroq, u bir nechta xostlardan farqli ravishda xabarlarni yuborishi mumkin, shuning uchun bir vaqtning o'zida bir nechta aloqaka erishib bo'lmaydi.
Ishonchli: TCPning ishonchliligi, paketlar tarmoq havolasidagi o'zgarishlardan qat'iy nazar qabul qilgichga ishonchli tarzda etkazib berilishini ta'minlaydi, bu esa TCP-ning UDP-ning UDP-ning Protokol paketini yanada murakkablashtiradi.
Bayt oqimi asosida: TCPning bayt oqimi xarakteri har qanday o'lchamdagi va xabar berish tartibini uzatish imkonini beradi: agar avvalgi xabarlar to'liq qabul qilinmasa, ularni qayta ishlash uchun dastur qatlamiga etkazib bermaydi va dublikatni avtomatik ravishda tushiradi.
Bir paytlar A va Xost Bost ulanishni o'rnatdi, dastur faqat ma'lumotlarni yuborish va qabul qilish, ma'lumot uzatilishini ta'minlash uchun virtual aloqa liniyasidan foydalanish kerak. TCP protokoli ulanishni boshqarish, o'chirish va ushlab turish kabi vazifalarni boshqarish uchun javobgardir. Shuni ta'kidlash kerakki, bu erda virtual liniya ulanishni anglatadi, TCP protokoli ulanishi faqat ikki tomon ma'lumot uzatishni boshlashi va ma'lumotlarning ishonchliligini ta'minlashi mumkinligini anglatadi. Marshrutlash va transport tugunlari tarmoq qurilmalari tomonidan ko'rib chiqiladi; TCP protokolining o'zi ushbu tafsilotlar bilan bog'liq emas.

TCP ulanishi to'liq dupleks xizmatdir, bu esa A va mezbonlik Bosti Bounks-ni TCP ulanishida ikkala yo'nalishda ma'lumotlarni uzatishi mumkin. Ya'ni, ma'lumotlar bayiriy oqimida B metagani va Bosti o'rtasida o'tkazilishi mumkin.

TCP vaqtincha ulanish buferidagi ma'lumotlarni saqlaydi. Ushbu buferni yuborish buferi uch tomonlama qo'lda o'rnatilgan keshlardan biridir. Keyinchalik, TCP ma'lumotlarni keshda keshni belgilangan vaqtda qabul qilish uchun keshga yuboradi. Amalda, har bir tengdoshlar kesh va keshni qabul qilish uchun kesh va keshni qabul qiladi:

TCP-udp

Yuborish buferi - bu ma'lumotlarni yuboriladigan ma'lumotlarni vaqtincha saqlash uchun ishlatiladigan jo'natuvchi tomonida saqlanadigan xotira maydoni. Ulanishni o'rnatish uchun uch tomonlama qo'l berishi amalga oshiriladi, kesh yuboriladi va ma'lumotlarni saqlash uchun ishlatiladi. Yuborish buferi tarmoq tiqilib qolishi va qabul qilgichning fikrlari bo'yicha dinamik ravishda sozlanadi.

Qabul qilingan bufer - bu qabul qilingan ma'lumotni vaqtincha saqlash uchun ishlatiladigan qabul qiluvchi tomoni tomonidan olib boriladigan xotira maydoni. TCP qabul qilingan ma'lumotlarni keshni qabul qilishda saqlaydi va uni o'qishni yuqori darajadagi dasturni kutadi.

E'tibor bering, keshni yuborish va keshni olish chegarasi cheklangan bo'lsa, keshni to'ldirish, shuningdek, quyish nazorati, oqim va tarmoq barqarorligini ta'minlash kabi strategiyalarni qabul qilishi mumkin.

Kompyuter tarmoqlarida xostlar orasidagi ma'lumotlar uzatish segmentlar orqali amalga oshiriladi. Xo'sh, paketli segment nima?

TCP kirish oqimini yoki paket segmentini, kiruvchi oqimni maydalash va har bir bo'lakka TCP sarlavhasini qo'shadi. Har bir segmentni faqat cheklangan vaqt uchun uzatilishi mumkin va segment o'lchamidan (MSS) dan oshmasligi kerak. Yo'lida paketli segment havola sathidan o'tadi. Havola qatlami "Ma'lumot havolasi sateridan o'tishi mumkin bo'lgan maksimal paket hajmi" maksimal paketli paketli katalogga ega. Maksimal uzatish birligi odatda aloqa interfeysi bilan bog'liq.

Xo'sh, MSS va MTU o'rtasidagi farq nima?

Kompyuter tarmoqlarida ierarxik arxitektura juda muhim, chunki u turli darajadagi tafovutlarni hisobga oladi. Har bir qatlamning boshqa nomi bor; Transport qatlamida ma'lumotlar segment deb ataladi va tarmoq qavatida ma'lumotlar IP paket deb ataladi. Shuning uchun, maksimal uzatish birligi (MTU) Maksimal IP paket hajmi deb o'ylash mumkin, bu esa bir vaqtning o'zida TCP paketini TCP paketini uzatilishi mumkin bo'lgan ma'lumotlarning maksimal miqdorini anglatuvchi transport sathidir.

Ta'kidlash joizki, segment hajmi (MSS) maksimal uzatish birligi (MTU) dan kattaroq bo'lsa, IP parchalanishi tarmoq qavatida amalga oshiriladi va TCP katta ma'lumotlarni MTU hajmiga mos keladigan segmentlarga ajratmaydi. IP qatlamiga bag'ishlangan tarmoq qatlamida joylashgan bo'lim bo'ladi.

TCP paketli segment tarkibi
Keling, TCP sarlavhalari format va tarkibini o'rganaylik.

TCP segmenti

Ketma-ketlik raqami: TCP ulanishi o'rnatilganda ulanishning boshlang'ich qiymati sifatida o'rnatilganda, kompyuter tomonidan boshlang'ich qiymati sifatida o'rnatilganda kompyuter tomonidan yaratilgan tasodifiy raqam, shuningdek, tuzgichga Sin paket orqali yuboriladi. Ma'lumot uzatish paytida yuboruvchi yuborilgan ma'lumotlar miqdoriga qarab ketma-ketlik raqamini oshiradi. Qabul qilgich ma'lumotlarning tartibini qabul qilingan ketma-ketlik raqamiga muvofiq baholaydi. Agar ma'lumotlar buyurtmadan topilsa, qabul qilgich ma'lumotlarning tartibini ta'minlash uchun ma'lumotlarni qayta rejalashtiradi.

Taqdimot raqami: Ma'lumot olinganligini tan olish uchun bu TCPda ishlatiladigan ketma-ketlik raqami. Bu yuboruvchi qabul qilishni kutayotgan keyingi ma'lumotlarning sonini ko'rsatadi. TCP ulanishida qabul qilgich qabul qilingan ma'lumotlar paketli segmentining ketma-ketligi bo'yicha qaysi ma'lumotlarni muvaffaqiyatli qabul qilinganligini aniqlaydi. Qabul qilgich ma'lumotni muvaffaqiyatli qabul qilganda, u ACK paketini tasdiqlash raqamini o'z ichiga oladi. ACK paketini olgandan so'ng, jo'natuvchi javobni tan olishdan oldin ma'lumot muvaffaqiyatli qabul qilindi.

TCP segmentining boshqaruv bitlari quyidagilarni o'z ichiga oladi:

Ack bit: Ushbu bit 1 bo'lsa, bu tasdiqlashning tasdiqlash maydoni haqiqiyligini anglatadi. TCP ulanish dastlab o'rnatilganda sinchak paketlardan tashqari, bu bitni 1 ga o'rnatishi kerak.
Rst bit: Ushbu bit 1 bo'lsa, u TCP ulanishida istisno mavjudligini va ulanish o'chirilgan bo'lishi kerakligini ko'rsatadi.
Siniq: Ushbu bit 1 ga o'rnatilganda, ulanish o'rnatilishi va ketma-ketlik raqamining boshlang'ich qiymati ketma-ketlik maydoniga o'rnatiladi.
Fin bit: Bu bit 1 bo'lsa, bu kelajakda boshqa ma'lumotlar yuborilmasligini anglatadi va ulanish kerak.
TCP ning turli funktsiyalari va xususiyatlari TCP paketli segmentlari tarkibi bilan bezatilgan.

UDP nima? (MylinkingTarmoq konivaTarmoq paketini brokerikkalasi ham TCP yoki UDP paketlarini qayta ishlashi mumkin)
Foydalanuvchi Datagram Protokoli (UDP) ulanishsiz aloqa protokoli. TCP bilan taqqoslaganda UDP kompleks nazorat mexanizmlarini ta'minlamaydi. UDP protokoli ulanishni o'rnatmasdan to'g'ridan-to'g'ri qamrab olingan IP paketlarini yuborishga imkon beradi. Dasturchi TCP o'rniga UDP-dan foydalanishni tanlaganida, dastur to'g'ridan-to'g'ri IP bilan aloqa qiladi.

UDP protokolining to'liq ismi - bu foydalanuvchi ma'lumotlar bazram Protokol va sarlavhasi juda aniq bo'lgan atigi sakkizta bayt (64 bit). UDP sarlavhasining formati quyidagicha:

UDP segmenti

Belgilangan va manba portlari: Ularning asosiy maqsadi - Jarayon UDP paketlarni yuborish kerak.
Paket hajmi: Paket o'lchamidagi maydon UDP sarlavhasi hajmini va ma'lumotlarning o'lchamini ushlab turadi
Tekshirmoq: UDP sarlavhalari va ma'lumotlarini ishonchli etkazib berishni ta'minlash uchun mo'ljallangan, shuningdek, Inson taraqqiyoti indekvida yaxlitligini ta'minlash uchun uDP paketini uzatish paytida xato yoki korruptsiyaning rolini aniqlash uchun mo'ljallangan.

TCP va UDP o'rtasidagi farqlar mylinkingTarmoq konivaTarmoq paketini brokerikkalasi ham TCP yoki UDP paketlarini qayta ishlashi mumkin
TCP va UDP quyidagi jihatlardan farq qiladi:

TCP va UDP

Ulanish: TCP ulanishga yo'naltirilgan transport protokoli, bu ma'lumotni uzatishdan oldin o'rnatilishini talab qiladigan transport protokoli. Boshqa tomondan, UDP ulanishni talab qilmaydi va ma'lumotlarni darhol uzatishi mumkin.

Xizmat ob'ekti: TCP bir-biridan bir qismli xizmat xizmatidir, ya'ni bir-birlari bilan aloqa qilish uchun faqat ikkita so'nggi nuqsonga ega. Biroq, UDP bir vaqtning o'zida bir nechta xost bilan aloqa qiladigan bir-birini, bir nechta va ko'plab interfaol aloqani qo'llab-quvvatlaydi.

Ishonchlilik: TCP ma'lumotni ishonchli tarzda etkazib berish xizmatini taqdim etadi, ma'lumotlar esa xatosiz, yo'qotishsiz, takrorlanmaydi va talabga etib boradi. Boshqa tomondan, UDP o'zining eng yaxshi harakatlarini bajaradi va ishonchli etkazib berishni kafolatlamaydi. UDP ma'lumotlar yo'qotishdan va uzatish paytida boshqa vaziyatlardan aziyat chekishi mumkin.

Tegish nazorati, oqim nazorati: TCP ma'lumot uzatishning xavfsizligi va barqarorligini ta'minlash uchun tarmoq sharoitlariga muvofiq ma'lumotlarni uzatish stavkasini sozlashi mumkin bo'lgan kontsentsiya nazorati mexanizmlariga ega. UDP kontsentsiya nazorati va oqimlarni boshqarish mexanizmlariga ega emas, hatto tarmoq juda ko'p bo'lsa ham, u UDP yuborishni kursiga o'zgartirish kiritmaydi.

Sarlavhali usta: TCP juda ko'p sarlavha uzunligi, odatda 20 baytda, bu variant maydonlardan foydalanilganda ko'payadi. Boshqa tomondan, UDP, atigi 8 baytga mahkam o'rnashgan, shuning uchun UDP pastki sarlavhasi bor.

TCP va UDP

TCP va UDP dastur stsenariylari:
TCP va UDP transport qatlami protokollari va ular dastur stsenariylarida ba'zi farqlarga ega.

TCP ulanishga yo'naltirilgan protokol bo'lib, u asosan stsenariylarda qo'llaniladi, u erda ishonchli ma'lumotlar talab qilinadi. Ba'zi umumiy foydalanish holatlari quyidagilardan iborat:

FTP fayl o'tkazmasi: TCP pul o'tkazishda yo'qolishi va buzilganligini ta'minlaydi.
Http / https: TCP veb-tarkibning yaxlitligini va to'g'riligini ta'minlaydi.
UDP ulanishsiz protokoldir, ammo bu ishonchlilik kafolati, ammo u samaradorlik va real vaqt rejimiga ega. UDP quyidagi stsenariylarga mos keladi:

DNS kabi past paketli trafik (domen nomi tizimi): DNS so'rovlari odatda qisqa paketlar va UDP ularni tezroq to'ldirishi mumkin.
Video va audio kabi multimedia muloqot: Multimediya yuqori martabali talablari bilan UDP ma'lumotlar o'z vaqtida etkazilishi mumkinligini ta'minlash uchun UDP quyi kechikishni ta'minlaydi.
Eshitish aloqa: UDP bir-biridan va ko'pchiligini qo'llab-quvvatlaydi va translyatsiyalarni uzatish uchun ishlatilishi mumkin.

Qisqacha ma'lumot
Bugun biz TCP haqida bilib oldik. TCP - ulanish yo'naltirilgan, ishonchli, baytga asoslangan transport sathining aloqa protokoli. Ulanish, qo'l berish va tasdiqlash orqali ma'lumotlarni aniq uzatish va tartib bilan qabul qilishni ta'minlaydi. TCP protokoli jarayonlar o'rtasidagi aloqalarni amalga oshirish uchun portlarni ishlatadi va turli xil xostlarda ishlaydigan dasturlarni amalga oshirish uchun to'g'ridan-to'g'ri aloqa xizmatlarini taqdim etadi. TCP ulanishlari to'liq dupleks, bir vaqtning o'zida bir vaqtning o'zida bir vaqtning o'zida qo'shdiradigan ma'lumotlar uzatishga imkon beradi. Bundan farqli o'laroq, UDP aloqa kafolatlari kafolatlarini ta'minlamaydigan aloqa protokoli bo'lib, ularda real vaqtli talablar bilan ba'zi stsenariylar uchun mos keladi. TCP va UDP ulanish rejimida, xizmat ko'rsatish ob'ekti, ishonchlilik, tiqilib qolishni boshqarish, oqimlarni boshqarish va boshqa jihatlar va ularning ariza stsenariylari ham boshqacha.


O'tish vaqti: 1-sek 03-2024