2008-11-03 9 views
11

क्या उच्च-विलंबता वातावरण में कई समानांतर टीसीपी कनेक्शन (सार्वजनिक भौगोलिक दूरी वाले सार्वजनिक इंटरनेट को प्रति कनेक्शन या उस तरह की सामग्री को आकार देने वाला कोई ट्रैफिक नहीं है) के साथ बेहतर डेटा स्थानांतरण दर प्राप्त करना संभव है या टीसीपी पूरे बैंडविड्थ को एक कनेक्शन के साथ उपयोग कर सकता है ?टीसीपी एकाधिक कनेक्शन के साथ उच्च स्थानांतरण दर हासिल करना संभव है?


टीसीपी डेटा के रूप में तेजी से भेज रहा है यह डिब्बे अगर रिसीवर के साथ 0 खिड़कियों आकार बफर भीड़ रिपोर्ट नहीं करता है? तो यदि आरटीटी उदाहरण के लिए 60 सेकंड की तरह है तो यह दर को प्रभावित नहीं करता है? क्या कुछ अधिकतम विंडो आकार या कुछ और सीमित है?

उत्तर

15

एक लाभ एकाधिक समवर्ती कनेक्शन आपको दे सकता है (कबूतर और ब्रायन द्वारा उल्लिखित एक ही चेतावनी के अधीन) क्या आप एक टीसीपी प्राप्त खिड़की बहुत छोटी होने की समस्या को बेहतर ढंग से दूर करने में सक्षम होंगे।

यह सिद्धांत bandwidth delay product से संबंधित है। (एक और विस्तृत स्पष्टीकरण here है)।

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

अधिक जानकारी में, निम्न पर विचार करें: आपके पास 10^8 बिट्स प्रति सेकंड (10 मेगाबिट/सेकेंड) का अंत-टू-एंड बैंडविड्थ है, और 100 एमएमएस (0.1 सेकंड) की राउंड-ट्रिप विलंब है। इसलिए, डेटा के पहले बिट की पावती प्रेषक को वापस प्राप्त करने से पहले भेजा गया डेटा के 10^7 बिट्स (10 मेगाबिट = ~ 1.25 मेगाबाइट्स) तक हो सकता है।

यह आपके ओएस के टीसीपी स्टैक के आधार पर अलग-अलग होगा, लेकिन टीसीपी के लिए असामान्य मूल्य विंडो आकार प्राप्त 64Kbytes है। अंततः बैंडविड्थ के अंत तक पूर्ण उपयोग करने की अनुमति देने के लिए यह बहुत छोटा है; एक बार 64kbytes (512kbits) डेटा भेजा गया है, तो आपकी प्रेषण प्रक्रिया रिसीवर से एक विंडो अपडेट की प्रतीक्षा करेगी जो दर्शाती है कि तार पर कोई और डेटा डालने से पहले कुछ डेटा खपत कर लिया गया है।

कई टीसीपी सत्र खुले होने के कारण इस तथ्य के आधार पर कि प्रत्येक टीसीपी सत्र में अपना स्वयं का प्रेषण/प्राप्त बफर होगा।

बेशक, इंटरनेट पर टीसीपी विंडो आकार, विवाद आदि के कारण, वास्तविक उपलब्ध अंत-टू-एंड बैंडविड्थ निर्धारित करना मुश्किल है। यदि आप कुछ नमूना आंकड़े प्रदान करने में सक्षम हैं, तो हम सक्षम हो सकते हैं और सहायता करें।

दूसरा विकल्प आपको देखना चाहिए जब आप अपनी सॉकेट बनाते हैं, या तो वैश्विक रूप से ओएस सेटिंग का उपयोग करते हुए, या सॉकेट विकल्पों का उपयोग करके प्रति सॉकेट आधार पर एक बड़ी प्राप्त विंडो सेट करना।

1

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

+0

मेरा एप्लिकेशन किसी भी अनुप्रयोग स्तर की बातचीत के बिना डेटा को एक-दूसरे से स्थानांतरित कर रहा है। बस रिमोट सॉकेट में डेटा धक्का। – JtR

+0

मैं शायद यहां केन से बाहर हूं लेकिन यदि यह इतना मुश्किल नहीं है कि एक परीक्षण स्थापित करना है, तो इमो। यह निश्चित रूप से लगता है जैसे वहां संभावित है, यह एक तरीका है। – dove

+0

क्या आप एक विश्वसनीय (कनेक्शन आधारित) सॉकेट की तलाश में हैं? यदि नहीं, संभवतः टीसीपी की बजाय यूडीपी का उपयोग करने में मदद मिल सकती है? – AshtonKJ

7

यदि आप लिंक पर एकमात्र हैं, तो यह ओवरहेड और कमी की गति में वृद्धि करेगा। हालांकि, दूसरों के साथ पूरी तरह से संतृप्त लिंक साझा करते समय, यह सिस्टम को गेम करने और अपनी समग्र गति बढ़ाने का एक तरीका है (प्रत्येक कनेक्शन एक से भी धीमा हो जाएगा, लेकिन कुल तेज़ होगा क्योंकि अब आपके पास एक बड़ा प्रतिशत है "समय स्लॉट" (तकनीकी शब्द क्या है? यह अब मुझे बच निकला है) आपको आवंटित)।

+0

विलंबता के बारे में क्या? यह दर को कैसे प्रभावित करता है? क्या पर्याप्त पर्याप्त बफर का उपयोग होने पर विलंबता दर को प्रभावित नहीं कर रही है? – JtR

+0

टीसीपी विंडो के आकार पर निर्भर करता है, कोई भी बफर बहुत कम महत्वपूर्ण है। –

1

Muz's description of the issue स्थान पर है।

ध्यान रखें कि इसका लाभ उठाने से आपके ऑपरेटिंग सिस्टम में टीसीपी के कार्यान्वयन पर निर्भर हो सकता है। विशेष रूप से, सर्वोत्तम परिणामों के लिए आप एक टीसीपी स्टैक चाहते हैं जो विंडो स्केल विकल्प का समर्थन करता है RFC 1323 से।

आगे, आपको यह काम करने के लिए कुछ ओएस सेटिंग्स को ट्विक करने की आवश्यकता हो सकती है। विंडोज़ पर एक रजिस्ट्री सेटिंग है जिसे कहा जाता है जिसे आपको समायोजित करने की आवश्यकता हो सकती है। एक माइक्रोसॉफ्ट केबी आलेख 224829: Description of Windows 2000 and Windows Server 2003 TCP Features है जो वर्णन करता है कि यह कैसे करें।