जवाबों:
एक यूनिक्स सॉकेट एक अंतर संचार प्रक्रिया तंत्र है कि एक ही मशीन पर चल प्रक्रियाओं के बीच द्विदिश डेटा विनिमय की अनुमति देता है।
आईपी सॉकेट (विशेष रूप से टीसीपी / आईपी सॉकेट) एक तंत्र है जो नेटवर्क पर प्रक्रियाओं के बीच संचार की अनुमति देता है। कुछ मामलों में, आप एक ही कंप्यूटर पर चलने वाली प्रक्रियाओं (लूपबैक इंटरफ़ेस का उपयोग करके) के साथ बात करने के लिए टीसीपी / आईपी सॉकेट्स का उपयोग कर सकते हैं।
UNIX डोमेन सॉकेट्स जानते हैं कि वे एक ही सिस्टम पर काम कर रहे हैं, इसलिए वे कुछ जांच और संचालन (जैसे रूटिंग) से बच सकते हैं; जो उन्हें आईपी सॉकेट की तुलना में तेज और हल्का बनाता है। इसलिए यदि आप एक ही मेजबान पर प्रक्रियाओं के साथ संवाद करने की योजना बनाते हैं, तो यह आईपी सॉकेट्स की तुलना में बेहतर विकल्प है।
संपादित करें: Nils Toedtmann की टिप्पणी के अनुसार : UNIX डोमेन सॉकेट सिस्टम अनुमतियों को दर्ज करने के अधीन हैं, जबकि TCP सॉकेट केवल पैकेट फ़िल्टर स्तर पर नियंत्रित किए जा सकते हैं।
आप निम्न कमांड के साथ अपनी मशीन स्थानीय यूनिक्स सॉकेट को सूचीबद्ध कर सकते हैं:
netstat -a -p --unix
मज़े करो!
netstat
हालांकि विंडोज पर काम करता है।
यूनिक्स सॉकेट और टीसीपी / आईपी सॉकेट में क्या अंतर है?
टीसीपी / आईपी नेटवर्क में संचार के लिए एक टीसीपी / आईपी सॉकेट का उपयोग किया जाता है। कनेक्टेड टीसीपी सॉकेट को स्थानीय आईपी, स्थानीय पोर्ट, रिमोट आईपी और रिमोट पोर्ट के संयोजन से पहचाना जाता है। एक सुनने वाली टीसीपी सॉकेट को स्थानीय पोर्ट और संभवतः स्थानीय आईपी द्वारा पहचाना जाता है। एआईयूआई कम से कम लिनक्स टीसीपी / आईपी सॉकेट पर हमेशा टीसीपी / आईपी पैकेट की पीढ़ी और डिकोडिंग का परिणाम होता है, भले ही क्लाइंट और सर्वर एक ही मशीन पर हों।
एक यूनिक्स डोमेन सॉकेट (कभी-कभी यूनिक्स सॉकेट के लिए छोटा) एक मशीन पर काम करता है। सुनकर सॉकेट्स फाइलसिस्टम पदानुक्रम में रहते हैं और उन तक पहुंच फाइल सिस्टम अनुमतियों द्वारा नियंत्रित की जा सकती है।
इसके अलावा एक यूनिक्स सॉकेट पर एक कनेक्शन को स्वीकार करने वाली प्रक्रिया उस उपयोगकर्ता आईडी को निर्धारित कर सकती है जो कनेक्ट होती है। यह एक प्रमाणीकरण कदम की आवश्यकता से बच सकता है। अपने डेटाबेस सर्वर के लिए एक पासवर्ड बनाने के बजाय और अपने webapp के कोड में इसकी एक प्रति शामिल करने के बजाय, आप बस डेटाबेस सर्वर को बता सकते हैं कि webapp चलाने वाले उपयोगकर्ता के डेटाबेस में संबंधित उपयोगकर्ता खाते तक पहुंच है।
टीसीपी सॉकेट्स को यूनिक्स द्वारा भी संभाला जाता है?
बेशक
टीसीपी सॉकेट टीसीपी प्रोटोकॉल विनिर्देश का हिस्सा है
इंटरनेट प्रोटोकॉल विनिर्देश केवल इस बात की चिंता करते हैं कि तार पर क्या होता है, टीसीपी कल्पना में सॉकेट की परिभाषा होती है लेकिन यह परिभाषा समान नहीं है कि यह शब्द "सॉकेट्स एपीआई" द्वारा कैसे उपयोग किया जाता है।
"सॉकेट्स एपीआई" जैसा कि हम जानते हैं कि यह बीएसडी द्वारा पेश किया गया था, लेकिन बाद में इसे पूरे स्थान पर कॉपी किया गया और पॉज़िक्स मानक के हिस्से के रूप में शामिल किया गया। टीसीपी और यूडीपी सॉकेट्स के लिए मूल सामान अलग-अलग प्लेटफार्मों पर बहुत समान हैं, लेकिन अधिक उन्नत सामान और सामान जो ओएस के अन्य हिस्सों के साथ बातचीत करता है, उदाहरण के लिए, यूनिक्स-जैसे सिस्टम पर सॉकेट को फ़ाइल हैंडल द्वारा पहचाना जा सकता है और हो सकता है फ़ाइल API द्वारा पढ़ा / लिखा जा सकता है, यह विंडोज़ पर ऐसा नहीं है।
सॉकेट्स एपीआई के कुछ एक्सटेंशन को rfcs में प्रलेखित किया गया है लेकिन वे RFC केवल "सूचनात्मक" हैं।
या कोई भी प्रोटोकॉल IP सॉकेट्स का उपयोग कर सकता है?
जब कोई एप्लिकेशन स्पष्ट रूप से "सॉकेट" फ़ंक्शन का उपयोग करके सॉकेट बनाता है (सॉकेट भी स्वीकार फ़ंक्शन द्वारा बनाए जाते हैं) तो यह तीन मापदंडों, "डोमेन", "प्रकार" और "प्रोटोकॉल" से गुजरता है। उनके बीच इन तीन मापदंडों का उपयोग कई अलग-अलग प्रकार के सॉकेट का चयन करने के लिए किया जा सकता है।