Skip to main content

कंप्यूटर नेटवर्क के लिए सॉकेट प्रोग्रामिंग

9. टीसीपी / आईपी सॉकेट कार्यक्रम | वीटीयू 5 वीं Sem कंप्यूटर नेटवर्क लैब 15CSL57 (जून 2026)

9. टीसीपी / आईपी सॉकेट कार्यक्रम | वीटीयू 5 वीं Sem कंप्यूटर नेटवर्क लैब 15CSL57 (जून 2026)
Anonim

सॉकेट प्रोग्रामिंग टीसीपी / आईपी नेटवर्क पर संचार के पीछे मौलिक तकनीक है। एक सॉकेट नेटवर्क पर चल रहे दो प्रोग्रामों के बीच दो-तरफा लिंक का एक अंतराल है। सॉकेट एक और सॉकेट के साथ डेटा भेजने और प्राप्त करने के लिए एक द्विदिश संचार समापन बिंदु प्रदान करता है। सॉकेट कनेक्शन आमतौर पर स्थानीय क्षेत्र नेटवर्क (लैन) या इंटरनेट पर दो अलग-अलग कंप्यूटरों के बीच चलते हैं, लेकिन इन्हें एक कंप्यूटर पर इंटरप्रोसेस संचार के लिए भी इस्तेमाल किया जा सकता है।

सॉकेट और पते

टीसीपी / आईपी नेटवर्क पर सॉकेट एंडपॉइंट्स में प्रत्येक का एक अनोखा पता होता है जो आईपी एड्रेस और टीसीपी / आईपी पोर्ट नंबर का संयोजन होता है। चूंकि सॉकेट एक विशिष्ट पोर्ट नंबर से जुड़ा हुआ है, इसलिए टीसीपी परत उस एप्लिकेशन की पहचान कर सकती है जिसे उसे भेजा गया डेटा प्राप्त करना चाहिए। एक नई सॉकेट बनाते समय, सॉकेट लाइब्रेरी स्वचालित रूप से उस डिवाइस पर एक अद्वितीय पोर्ट नंबर उत्पन्न करती है। प्रोग्रामर विशिष्ट स्थितियों में पोर्ट नंबर भी निर्दिष्ट कर सकता है।

सर्वर सॉकेट कैसे काम करते हैं

आम तौर पर एक सर्वर एक कंप्यूटर पर चलता है और एक सॉकेट होता है जो एक विशिष्ट बंदरगाह से बंधे होते हैं। एक कनेक्शन अनुरोध करने के लिए सर्वर एक अलग कंप्यूटर के लिए इंतजार कर रहा है। क्लाइंट कंप्यूटर सर्वर कंप्यूटर और पोर्ट नंबर का होस्टनाम जानता है जिस पर सर्वर सुन रहा है। क्लाइंट कंप्यूटर स्वयं को पहचानता है, और यदि सब ठीक हो जाता है- सर्वर क्लाइंट कंप्यूटर को कनेक्ट करने की अनुमति देता है।

सॉकेट पुस्तकालयों

कोड को सीधे निम्न स्तर सॉकेट एपीआई के बजाय, नेटवर्क प्रोग्रामर आमतौर पर सॉकेट पुस्तकालयों का उपयोग करते हैं। लिनक्स / यूनिक्स सिस्टम के लिए बर्कले सॉकेट और विंडोज सिस्टम के लिए विनसॉक के लिए दो सामान्य रूप से उपयोग किए जाने वाले सॉकेट पुस्तकालय हैं।

एक सॉकेट लाइब्रेरी उन प्रोग्रामरों के समान एपीआई फ़ंक्शंस का एक सेट प्रदान करती है जो फ़ाइलों के साथ काम करने के लिए उपयोग करती हैं, जैसे ओपन (), read (), लिखें (), और क्लोज़ ()।