नाटक में कई अलग-अलग टुकड़े हैं। चूंकि (Src IP, Src Port, Dest IP, Dest Port)
टुपल्स द्वारा कनेक्शन को परिभाषित किया गया है, इसलिए आपको किसी दिए गए समय पर दो दिए गए सहकर्मियों के बीच 65536^2 कनेक्शन की अनुमति है: 1 से 1 तक, 1 से 2 तक .. 1 से 65535 तक, आदि और यह केवल दो के बीच है साथियों - आप निश्चित रूप से कई सहकर्मियों के साथ कई कनेक्शन खोल सकते हैं।
लेकिन, अधिकांश ऑपरेटिंग सिस्टम प्रति प्रक्रिया खुले दायरलेखकों/हैंडल की संख्या को सीमित करते हैं। यह सीमा ऐतिहासिक रूप से कम थी (20), लेकिन अब अक्सर अधिक है (मेरे सिस्टम पर 1024, ulimit -a
bash(1)
में प्रति-प्रक्रिया सीमाएं दिखाएगा)।
यूनिक्स सिस्टम पर setrlimit(3)
सीमाओं के अतिरिक्त, सिस्टम-व्यापी सीमाएं भी हैं; लिनक्स सिस्टम पर /proc/sys/fs/file-max
पूरे सिस्टम पर अनुमत खुली फाइलों की अधिकतम संख्या की रिपोर्ट करेगा। (यह मेरे सिस्टम पर 596118 है।) अन्य प्रणालियों की अलग-अलग सीमाएं होंगी।
और, मध्य में stateful firewall द्वारा लागू खुले कनेक्शन की संख्या की सीमा हो सकती है। चूंकि प्रत्येक राज्य को फ़ायरवॉल तालिकाओं में स्मृति की आवश्यकता होती है, इसलिए स्मृति पर कम चलने से बचने के लिए कोई भी संभवतः कुछ मनमानी सीमा लागू करेगा।
'65536^2' ** ** निर्दिष्ट ** आईपी के बीच कनेक्शन की संख्या है, है ना? – DriverBoy
आपको बहुत सारे बंदरगाहों का उपयोग करने के लिए फ़ाइल डिस्क्रिप्टरों की संख्या बढ़ाने की आवश्यकता नहीं है क्योंकि बंद होने के बाद आसपास LINGER सॉकेट करता है। – ikegami
@DriverBoy, हाँ, यह दो आईपी पते के बीच सैद्धांतिक अधिकतम है। अभ्यास में, अधिकतम कम हो सकता है। – ikegami