4-Mavzu: Socketlar. Tcp / ip protokollar: udp, tcp, sctp. Tcp ulanishlar



Download 0,55 Mb.
bet3/5
Sana09.07.2022
Hajmi0,55 Mb.
#760508
1   2   3   4   5
Bog'liq
konspekt

TCP soketlari
Siz socket turini socket.SOCK_STREAM sifatida belgilab, socket.socket() yordamida socket obyektini yaratmoqchisiz. Buni qilganingizda, ishlatiladigan standart protokol Transmission Control Protocol (TCP) hisoblanadi. Bu yaxshi standart va ehtimol siz xohlagan narsadir.

Nima uchun TCP dan foydalanish kerak? Transmissiyani boshqarish protokoli (TCP):

Ishonchli: tarmoqqa tushib qolgan paketlar jo'natuvchi tomonidan aniqlanadi va qayta uzatiladi.
Buyurtmali ma'lumotlarni yetkazib berish mavjud: Ma'lumotlar yuboruvchi tomonidan yozilgan tartibda arizangiz tomonidan o'qiladi.
Bundan farqli o'laroq, socket.SOCK_DGRAM bilan yaratilgan User Datagram Protocol (UDP) socketlari ishonchli emas va qabul qiluvchi tomonidan o'qilgan ma'lumotlar jo'natuvchining yozishmalarida tartibsiz bo'lishi mumkin.

Nima uchun bu muhim? Tarmoqlar eng yaxshi quvvat yetkazib berish tizimidir. Ma'lumotlaringiz o'z manziliga etib borishiga yoki sizga yuborilgan narsalarni olishingizga kafolat yo'q.

Routerlar va kalitlar kabi tarmoq qurilmalari cheklangan tarmoqli kengligi mavjud va o'ziga xos tizim cheklovlari bilan birga keladi. Ular sizning mijozlaringiz va serverlaringiz kabi protsessorlar, xotiralar, avtobuslar va interfeys paketlari buferlariga ega. TCP sizni paket yo'qolishi, ma'lumotlarning tartibsiz kelishi va tarmoq bo'ylab muloqot qilayotganingizda doimo yuzaga keladigan boshqa tuzoqlar haqida tashvishlanishdan xalos qiladi.

Buni yaxshiroq tushunish uchun soket API qo'ng'iroqlari va TCP uchun ma'lumotlar oqimi ketma-ketligini tekshiring:

Chap tarafdagi ustun serverni bildiradi. O'ng tomonda mijoz joylashgan.

Y
uqori chap ustundan boshlab, server "tinglash" socketini o'rnatish uchun qiladigan API chaqiruvlariga e'tibor bering:

soket()
.bind()
.listen()
.accept()
Tinglash socketsi o'z nomiga mos keladigan narsani bajaradi. U mijozlarning ulanishlarini tinglaydi. Mijoz ulanganda, server ulanishni qabul qilish yoki yakunlash uchun .accept() ni chaqiradi.

Mijoz serverga ulanishni o'rnatish va uch tomonlama qo'l siqishni boshlash uchun .connect() ga qo'ng'iroq qiladi. Qo'l berib ko'rishish bosqichi muhim ahamiyatga ega, chunki u tarmoqda ulanishning har bir tomoniga kirishni ta'minlaydi, boshqacha qilib aytganda, mijoz serverga va aksincha. Faqat bitta xost, mijoz yoki server boshqasiga kirishi mumkin.

O'rtada .send() va .recv() ga chaqiruvlar yordamida mijoz va server o'rtasida ma'lumotlar almashinadigan bo'lim bo'limi joylashgan.

Pastki qismida mijoz va server tegishli socketlarni yopadi.



Download 0,55 Mb.

Do'stlaringiz bilan baham:
1   2   3   4   5




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish