कई SOCKS कनेक्शन एक ही SSH ट्रांसपोर्ट साझा कर सकते हैं
ssh -D गंतव्य स्ट्रीम को SSH चैनलों पर मल्टीप्लेक्स करता है; एक बाहरी TCP कनेक्शन फिर भी उनका साझा अवरोध बन सकता है।
एक ssh -D प्रक्रिया एक साथ कई वेबसाइट कनेक्शन को सेवा दे सकती है। परतों को अलग-अलग गिनें:
| परत | यह क्या ले जाती है |
|---|---|
| एप्लिकेशन से SOCKS श्रोता तक | अलग एप्लिकेशन कनेक्शन और SOCKS अनुरोध |
| SSH चैनल | चैनल-स्तरीय प्रवाह नियंत्रण के साथ स्वतंत्र रूप से पते किए गए स्ट्रीम |
| SSH ट्रांसपोर्ट | मल्टीप्लेक्स किया गया चैनल डेटा, सामान्यतः एक अंतर्निहित TCP कनेक्शन पर |
| गेटवे से वेबसाइट तक | गेटवे द्वारा खोले गए अलग गंतव्य कनेक्शन |
इसलिए एक एन्क्रिप्टेड SSH सॉकेट देखने का अर्थ यह नहीं है कि हर वेबसाइट अनुरोध एक ही गंतव्य कनेक्शन में क्रमबद्ध होता है। गतिशील फ़ॉरवर्डिंग स्ट्रीम डेटा को रिले करती है और नए कनेक्शन खोलती है; यह पैकेट टनल से अलग है, जो एप्लिकेशन के मूल TCP पैकेट और IP हेडर को दूसरे TCP कनेक्शन के भीतर ले जाती है।
साझा ट्रांसपोर्ट फिर भी मायने रखता है। क्षमता, शेड्यूलिंग, एन्क्रिप्शन कार्य और ट्रांसपोर्ट की हानि या देरी कई चैनलों को एक साथ प्रभावित कर सकती है। केवल एक गंतव्य का रुक जाना एक-चैनल सीमा सिद्ध नहीं करता।
यदि कई एप्लिकेशन एक साथ धीमे हो जाते हैं, तो जाँचें कि क्या वे एक ही SSH सत्र और गेटवे पथ साझा करते हैं, फिर उनके वास्तविक कार्यभार की तुलना करें। स्थानीय SOCKS पोर्ट गिनना न थ्रूपुट मापता है न स्वतंत्र मार्ग। मल्टीप्लेक्सिंग अपने आप गति वृद्धि या हर स्ट्रीम के लिए अलग सार्वजनिक निकास का वादा नहीं करती।