मैंने SO_REUSEADDR
का उपयोग किया है ताकि मेरा सर्वर हो जो शिकायत करने के लिए समाप्त हो गया हो कि सॉकेट पहले से ही उपयोग में है। मैं सोच रहा था कि SO_REUSEADDR
के अन्य उपयोग हैं या नहीं? क्या किसी ने कहा उद्देश्य के अलावा सॉकेट विकल्प का उपयोग किया है?SO_REUSEADDR का उपयोग करता है?
उत्तर
टीसीपी के लिए: प्राथमिक उद्देश्य एक ही पते पर एक बंद/मारे गए प्रक्रिया पुनः आरंभ करने के लिए है।
ध्वज की आवश्यकता है क्योंकि बंदरगाह TIME_WAIT स्थिति में जाता है ताकि यह सुनिश्चित किया जा सके कि सभी डेटा स्थानांतरित हो जाएं।
यदि दो सॉकेट एक ही इंटरफ़ेस और पोर्ट से बंधे हैं और समान मल्टीकास्ट समूह के सदस्य हैं, तो डेटा दोनों सॉकेट को वितरित किया जाएगा।
मुझे लगता है कि एक वैकल्पिक उपयोग डेटा को रोकने की कोशिश करने के लिए एक सुरक्षा हमला होगा।
(Source)
यूडीपी के लिए: SO_REUSEADDR के लिए बहुस्त्र्पीय
प्रयोग किया जाता है एक से अधिक प्रक्रिया ही SOCK_DGRAM UDP पोर्ट के लिए अगर बाँध बाँध सकता है() है इससे पहले:
int one = 1; setsockopt (जुर्राब, SOL_SOCKET, SO_REUSEADDR, & एक, sizeof (एक))
इस मामले में, हर भेजे बहुस्त्र्पीय या प्रसारण यूडीपी आंकड़ारेख के लिए किस्मत में साझा बंदरगाह सभी सॉकेट बंदरगाह के लिए बाध्य करने के लिए वितरित किया जाता है ।
(Source)
स्पष्टीकरण की आवश्यकता है। एक सुनना बंदरगाह TIME_WAIT में जाता है, लेकिन स्वीकार किए गए कनेक्शन हो सकते हैं। TIME_WAIT यह सुनिश्चित करने के लिए नहीं है कि सभी डेटा स्थानांतरित हो जाएं, यह वही अंत बिंदुओं के बीच के बाद के कनेक्शन के साथ भ्रम से बचने के लिए है। – EJP
प्रेषक पक्ष या रिसीवर पक्ष (यूडीपी के लिए: SO_REUSEADDR) पर 'बाइंड' हो रहा है? क्या होता है यदि प्रेषक और रिसीवर नेटवर्क पर अलग नोड्स हैं? – Sammy
अन्य मुख्य उपयोग यूडीपी पर एक ही बंदरगाह के लिए bind()
करने के लिए कई सॉकेट अनुमति है। आपको लगता है कि ऐसा नहीं होगा, लेकिन कभी-कभी एकाधिक ऐप्स किसी दिए गए पोर्ट नंबर के साथ प्रसारण/मल्टीकास्ट पते पर सुनना चाहेंगे। यह किसी को एक विशिष्ट पते पर बाध्यकारी होने पर वाइल्डकार्ड पते से जुड़ने की अनुमति देता है। उदाहरण के लिए, अपाचे *: 80 और 10.11.12.13:80
- 1. SO_REUSEADDR का उपयोग करना - पहले खुले सॉकेट का क्या होता है?
- 2. यूनिक्स टीसीपी/आईपी सर्वर पर SO_REUSEADDR का उपयोग क्यों नहीं कर रहे हैं?
- 3. यूडीपी पैकेट प्राप्त करने के लिए 127.0.0.1 को भेजें SO_REUSEADDR
- 4. 'IServiceProvider` का उपयोग किस ढांचे का उपयोग करता है?
- 5. Button_to POST Link_to का उपयोग करता है GET का उपयोग करता है, क्यों? आरओआर
- 6. .NET में KeyedByTypeCollection का उपयोग करता है?
- 7. क्या सिस्टम.एक्सएमएल एमएसएक्सएमएल का उपयोग करता है?
- 8. सॉफ्टवेयर वॉटरमार्किंग का उपयोग कौन करता है?
- 9. क्या memcpy() realloc() का उपयोग करता है?
- 10. एक्सकोड कोड का उपयोग करता है
- 11. बूस्ट एएसआईओ का उपयोग कौन करता है?
- 12. क्या कोई क्लैमाटो का उपयोग करता है?
- 13. हैशटेबल कितनी मेमोरी का उपयोग करता है?
- 14. कोई संसाधन.getFraction() का उपयोग कैसे करता है?
- 15. क्या संरेखण HeapAlloc का उपयोग करता है
- 16. HtmlHelper.BeginForm() का उपयोग कैसे करता है?
- 17. MATLAB OpenCv CascadeClassifier का उपयोग करता है?
- 18. HTTP टीसीपी का उपयोग क्यों करता है?
- 19. आईई जावास्क्रिप्ट में // @ का उपयोग करता है?
- 20. घुलौम किस योजना का उपयोग करता है?
- 21. गतिशील पुनर्मूल्यांकन का उपयोग कैसे करता है?
- 22. एकरमेन फ़ंक्शन का उपयोग करता है?
- 23. httpclient किस पोर्ट का उपयोग करता है?
- 24. हाइबरनेट जेडीबीसी का उपयोग कैसे करता है?
- 25. ट्विटर किस आरएफसी का उपयोग करता है?
- 26. Heroku Postgresql का उपयोग क्यों करता है?
- 27. क्या `` ?? `ऑपरेटर शॉर्टरक्यूटिंग का उपयोग करता है?
- 28. संग्रह वस्तुओं का उपयोग करता है() मौजूदा वस्तुओं की जांच के लिए उपयोग करता है?
- 29. Delegate.Combine का उपयोग क्यों करता है एक कास्ट की आवश्यकता होती है लेकिन + ऑपरेटर का उपयोग नहीं करता है?
- 30. जावा दुनिया का प्रतिशत प्रतिशत मेवेन का उपयोग करता है?
धन्यवाद, मैं ठीक वही चीज़ सोच रहा था। संबंधित प्रश्न: SO_REUSEADDR डिफ़ॉल्ट क्यों नहीं है? –