[qo'shiq sanalmoqda:7, 6, 5, 4, 3, 2, 1] Internet: Paketlar, Marshrutizator va ishonchlilik
Salom, mening ismim Lin. Men Spotifyda dasturiy ta'minot muhandisiman va
va dastlab Internetning ishonchliligini odatiy deb bilaman. Internetda aylanadigan
axborot hajmining ortib borishi hayratlanarli, albatta. Qanday qilib sizga axborotning har bir qismi
ishonchli tarzda yetkaziladi? Spotifydan qo'shiq tinglashingizni misol qilib olaylik. Bu xuddi
kompyuteringiz to'g'ridan-to'g'ri Spotify serverlariga ulanishi va Spotify sizga qo'shiqni
to'g'ridan-to'g'ri chiziqli yo'nalishda yuborishiga o'xshaydi. Ammo aslida internetda bunday ishlamaydi. Agar
Internet to'g'ridan-to'g'ri, chiziqli bog'lanishlardan iborat bo'lsa, millionlab foydalanuvchilar bir vaqtda internetdan foydalanganda
bog'lanishlarni amalga oshirib bo'lmaydi. Ayniqsa, simli internet aloqasida ma'lumotlarning hamma qismi yaxshi
saqlanishiga kafolat yo'q. Buning o'rniga, axborotlar Internetda chiziqli tarzda kamroq harakat qiladi.
Ko'p yillar oldin, 1970-yillarning boshlarida sherigim Bob Kan va men hozirda Internet deb atagan
narsaning dizayni ustida ishlay boshladik. Bob va men Internet protokollarini va uning
arxitekturasini ishlab chiqishga kirishdik. Shunday qilib, biz hozirga qadar
Internetning rivojlanishi va evolyutsiyasida qatnashishda davom etdik.
Axborotni bir kompyuterdan boshqasiga o'tkazish jarayoni juda
qiziq. Buning uchun muayyan yo'l tutish kerak emas, aksincha sizning yo'lingiz kompyuterlararo
muloqot mobaynida o'zgarishi mumkin. Internetdagi axborotlar bir kompyuterdan
ikkinchisiga o'tishini "paket" deb ataymiz va paket Internetda bir joydan ikkinchisiga
sayohat qiladi, xuddi mashinada bir joydan ikkinchi joyga borishingiz kabi.
Yo'llar tirbandligi yoki yo'l sharoitlariga qarab, siz har safar sayohat qilganingizda
bir xil joyga borish uchun turli yo'lni tanlashingiz yoki majbur bo'lishingiz mumkin. Siz har xil
predmetlarni avtomobil ichida tashishingiz mumkin bo'lganidek, ko'p sonli raqamli ma'lumotlar ham
IP-paketlar bilan yuborilishi mumkin, ammo bunda chegaralar bor. Masalan, kosmik kemani qurilgan nuqtasidan
uchiriladigan joyga ko'chirishingiz kerak bo'lsa, unda nima bo'ladi? Kema bitta yuk mashinasiga sig'maydi,
shuning uchun uni qismlarga ajratish va yuk mashinalari parki yordamida tashish kerak.
Ularning barchasi har xil yo'nalishlarda harakat qilishlari va maqsadga turli vaqtlarda yetib kelishlari mumkin.
Faqatgina barcha qismlar yetib kelgandan so'ng, siz qismlarni to'liq kemaga o'rnatishingiz mumkin
va u ishga tushirishga tayyor bo'ladi. Internetda axborot almashinuvi ham xuddi shunday ishlaydi.
Agar sizda do'stingizga yuboradigan yoki veb-saytga yuklamoqchi bo'lgan
juda katta rasm bo'lsa, bu rasm 10 millionlab 1 va 0 sonli bitlardan iborat bo'lishi mumkin, ya'ni bitta
paketda yuborishga ko'plik qiladi. Bu kompyuterdagi ma'lumotlar bo'lgani uchun, tasvirni yuboradigan
kompyuter tezda uni paketlar deb nomlangan yuzlab yoki hatto minglab kichik qismlarga ajratishi mumkin. Ushbu
paketlarda yengil va yuk mashinalaridan farqli tarzda haydovchilar yo'q va ular o'z yo'nalishlarini tanlamaydilar. Har bir
paketda qayerdan kelgani va qayerga ketayotgani to'g'risida internet manzili mavjud bo'ladi. Internet
routeri deb nomlangan maxsus kompyuterlar paketlar tarmoqlar bo'ylab silliq harakatlanishini
ta'minlash uchun YPX kabi ishlaydi. Agar bitta marshrut tiqilib qolsa, individual paketlar Internet orqali
turli yo'nalishlarda harakat qilishlari mumkin va ular manzilga biroz boshqacha vaqtlarda yoki
hatto tartibi buzilib kelishlari mumkin. Keling, bu qanday ishlashi haqida gaplashaylik.
Hamma router har bir marshrut paketlarni jo'natish uchun bir nechta
yo'llarni kuzatib boradi va har bir ma'lumot uchun eng arzon yo'lni paket uchun mo'ljallangan
IP-manzil asosida tanlaydi. Arzon deganda narxi tushunilmaydi, vaqt va kompaniyalar
o'rtasidagi siyosiy munosabatlar kabi texnik bo'lmagan omillar tushuniladi. Odatda ma'lumotlarning sayohat qilish uchun eng yaxshi
yo'nalishi chiziqli bo'lmagan holatidir. Yo'llar uchun bir qancha variantlarning mavjudligi tarmoq xatolariga dosh beradi. Ya'ni,
biror narsa dahshatli tarzda xato bo'lsa ham, tarmoq paketlarni jo'natishni davom etadi.
Ishonchlilik Internetning asosiy prinsiplaridan biri hisoblanadi. Agar siz
biron bir axborotni so'rasangiz va hamma qismi to'liq yetib kelmasa nima bo'ladi? Qo'shiq tinglash misolini aytaylik.
Qanday qilib qo'shiq tinglanishi uchun barcha axborotlar to'liq yetib kelishiga 100% ishonch hosil qilishingiz mumkin?
Sizni yangi do'stingiz TCP (uzatishni boshqarish protokoli) bilan tanishtiraman. TCP sizning
barcha ma'lumotlaringizni paket sifatida yuborish va qabul qilishni boshqaradi. Bu xuddi kafolatli elektron pochta xizmati kabidir.
Qurilmangizdan qo'shiq so'raganda, Spotify ko'plab paketlarga bo'lingan qo'shiq yuboradi.
Paketlar kelganida, TCP to'liq inventarizatsiyani amalga oshiradi va qabul qilingan har bir paket uchun
tasdiqlash xabarnomalarini qaytarib yuboradi. Agar yetkazib berish uchun barcha paketlar mavjud bo'lsa,
TCP bu yetkazib berishni imzolaydi va tamom. (qo'shiq tinglanmoqda) Agar TCP ba'zi paketlar
yetishmayotganligini aniqlasa, u imzo qo'ymaydi, aks holda sizning qo'shiqingiz unchalik yaxshi
eshitilmaydi yoki qo'shiqning ba'zi qismlari yetishmayotgan bo'lishi mumkin. Har bir yo'qolgan yoki to'liq bo'lmagan
paket uchun Spotify ularni qayta yuboradi. TCP ushbu qo'shiq so'rovi uchun ko'plab paketlarni yetkazib berishni tasdiqlaganidan so'ng, sizning qo'shiqingiz yangray boshlaydi.
TCP va yo'riqnoma tizimlarining eng yaxshi jihati shundaki, ular kengayuvchan. Ular 8 yoki 8 milliard qurilmalar bilan ishlashlari mumkin.
Darhaqiqat, xatolarga bardoshlilikning ushbu tamoyillari tufayli biz qancha routerlarni qo'shsak,
Internet shunchalik ishonchliroq bo'ladi. Internetdan foydalanayotgan har bir
kishiga aloqani uzmasdan rivojlantirish va kengaytirish imkoniyati qandoq yaxshi-ya. Internet yuz minglab
tarmoqlardan va jismoniy ravishda ulangan milliardlab kompyuterlardan va qurilmalardan iborat. Internetni
tashkil etuvchi ushbu turli xil tizimlar bir-biriga Internetda axborot almashinuvi bo'yicha
kelishilgan standartlar orqali bir-birlari bilan aloqa qiladi va birgalikda ishlaydi.
Hisoblash moslamalari yoki Internetdagi routerlar barcha paketlar kerakli joyga, agar zarur bo'lsa,
tartibli tarzda qayta o'rnatiladigan joyga borishiga yordam beradi. Bu jarayonlar siz
va boshqalar bilan elektron pochta xabarlarini yuborish, veb-sahifaga tashrif buyurish,
video chat qilish, mobil ilovadan foydalanish yoki Internetdagi sensorlar yoki qurilmalar bir-biri bilan gaplashganda
kuniga milliard martalab sodir bo'ladi.