Computer >> कंप्यूटर >  >> नेटवर्किंग >> नेटवर्किंग

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

सॉकेट कंप्यूटर नेटवर्क प्रोग्रामिंग की सबसे मौलिक तकनीकों में से एक है। सॉकेट नेटवर्क सॉफ़्टवेयर अनुप्रयोगों को नेटवर्क हार्डवेयर और ऑपरेटिंग सिस्टम में निर्मित मानक तंत्र का उपयोग करके संचार करने की अनुमति देते हैं।

हालांकि यह इंटरनेट सॉफ्टवेयर विकास की एक अन्य विशेषता की तरह लगता है, वेब से पहले सॉकेट तकनीक मौजूद थी। कई लोकप्रिय नेटवर्क सॉफ़्टवेयर एप्लिकेशन सॉकेट पर निर्भर करते हैं।

सॉकेट टेक्नोलॉजी आपके नेटवर्क के लिए क्या कर सकती है

एक सॉकेट सॉफ्टवेयर के ठीक दो टुकड़ों (एक पॉइंट-टू-पॉइंट कनेक्शन) के बीच एकल कनेक्शन का प्रतिनिधित्व करता है। सॉफ्टवेयर के दो से अधिक टुकड़े कई सॉकेट का उपयोग करके क्लाइंट/सर्वर या वितरित सिस्टम के साथ संचार कर सकते हैं। उदाहरण के लिए, कई वेब ब्राउज़र सर्वर पर बने सॉकेट के समूह का उपयोग करके एक ही वेब सर्वर से एक साथ संचार कर सकते हैं।

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

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

सॉकेट API और लाइब्रेरी

कई पुस्तकालय जो मानक अनुप्रयोग प्रोग्रामिंग इंटरफेस (एपीआई) को लागू करते हैं, इंटरनेट पर मौजूद हैं। पहला मेनस्ट्रीम पैकेज, बर्कले सॉकेट लाइब्रेरी, UNIX सिस्टम पर व्यापक रूप से उपयोग में है।

Microsoft ऑपरेटिंग सिस्टम के लिए एक अन्य सामान्य API Windows सॉकेट (WinSock) लाइब्रेरी है। अन्य कंप्यूटर प्रौद्योगिकियों के सापेक्ष, सॉकेट एपीआई परिपक्व हैं। WinSock 1993 से और बर्कले सॉकेट 1982 से उपयोग में है।

सॉकेट एपीआई अपेक्षाकृत छोटे और सरल हैं। कई फ़ंक्शन फ़ाइल इनपुट/आउटपुट रूटीन में उपयोग किए जाने वाले कार्यों के समान हैं जैसे पढ़ें(), लिखें(), और close() . उपयोग करने के लिए वास्तविक फ़ंक्शन कॉल प्रोग्रामिंग भाषा और चुनी गई सॉकेट लाइब्रेरी पर निर्भर करता है।

सॉकेट इंटरफ़ेस प्रकार

सॉकेट इंटरफेस को तीन श्रेणियों में विभाजित किया जा सकता है:

  • स्ट्रीम सॉकेट :यह सबसे आम प्रकार है। दो संचार पक्ष पहले एक सॉकेट कनेक्शन स्थापित करते हैं, जिसके बाद उस कनेक्शन से गुजरने वाला कोई भी डेटा उसी क्रम में आने की गारंटी देता है जिसमें इसे भेजा गया था (कनेक्शन-उन्मुख प्रोग्रामिंग मॉडल का उपयोग करके)।
  • डेटाग्राम सॉकेट :कनेक्शन-रहित शब्दार्थ प्रदान करें। डेटाग्राम के साथ, कनेक्शन स्पष्ट होने के बजाय धाराओं के साथ निहित हैं। कोई भी पक्ष आवश्यकतानुसार डेटाग्राम भेजता है और दूसरे के जवाब की प्रतीक्षा करता है। संदेश प्रसारण में खो सकते हैं या क्रम से बाहर हो सकते हैं; एप्लिकेशन इन समस्याओं से संबंधित है, न कि सॉकेट से। डेटाग्राम सॉकेट को लागू करने से कुछ एप्लिकेशन स्ट्रीम सॉकेट के उपयोग की तुलना में प्रदर्शन को बढ़ावा और अतिरिक्त लचीलापन दे सकते हैं।
  • कच्चे सॉकेट :टीसीपी और यूडीपी जैसे मानक प्रोटोकॉल के लिए पुस्तकालय के अंतर्निहित समर्थन को बायपास करें। कच्चे सॉकेट का उपयोग कस्टम निम्न-स्तरीय प्रोटोकॉल विकास के लिए किया जाता है।

नेटवर्क प्रोटोकॉल में सॉकेट सपोर्ट

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

इंटरनेट पर संचार करने के लिए, आईपी सॉकेट पुस्तकालय विशिष्ट कंप्यूटरों की पहचान करने के लिए आईपी पते का उपयोग करते हैं। इंटरनेट के कई हिस्से नामकरण सेवाओं के साथ काम करते हैं, ताकि उपयोगकर्ता और सॉकेट प्रोग्रामर पते के बजाय कंप्यूटर के साथ नाम से काम कर सकें (उदाहरण के लिए, thiscomputer.wireless.lifewire.com) (उदाहरण के लिए, 208.185.127.40)।

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


  1. प्रोग्रामिंग लैपटॉप में क्या देखना है?

    यदि आप एक नए कोडर के रूप में शुरुआत कर रहे हैं या अपना करियर बना रहे हैं, तो आपको किसी बिंदु पर एक उचित प्रोग्रामिंग लैपटॉप की आवश्यकता होगी। प्रोग्रामिंग में विभिन्न प्रकार के विकास शामिल हैं, और आपको प्रत्येक के लिए अलग-अलग टूल की आवश्यकता होगी। इस कारण से, आपको एक ऐसा उपकरण चुनने में मदद करने के

  1. रूबी डेवलपर्स के लिए डेटा संरचनाओं का अवलोकन

    डेटा संरचना क्या है? डेटा संरचना डेटा को व्यवस्थित और एक्सेस करने का एक विशिष्ट तरीका है । उदाहरणों में शामिल हैं: सरणी बाइनरी ट्री हैश विभिन्न डेटा संरचनाएं अलग-अलग कार्यों में उत्कृष्ट होती हैं। उदाहरण के लिए, यदि आप शब्दकोश (शब्द और परिभाषा), या फ़ोन बुक (व्यक्ति का नाम और संख्या) जैसा दिखन

  1. रूबी नेटवर्क प्रोग्रामिंग

    क्या आप रूबी में कस्टम नेटवर्क क्लाइंट और सर्वर बनाना चाहते हैं? या बस समझें कि यह कैसे काम करता है? फिर आपको सॉकेट से निपटना होगा। रूबी नेटवर्क प्रोग्रामिंग . के इस दौरे में मेरे साथ शामिल हों मूल बातें सीखने के लिए, और रूबी का उपयोग करके अन्य सर्वर और क्लाइंट से बात करना शुरू करें! तो सॉकेट क्य