सर्वर से धीमी गति से स्थानांतरण दर डिबगिंग


9

मैं इसे सरल लेकिन संभव के रूप में प्रलेखित समझाने की कोशिश कर रहा हूँ। यह इस सर्वर या मेरे वर्तमान आईएसपी के लिए अनन्य नहीं है । मैंने विभिन्न ISP के साथ रहते हुए और अलग-अलग प्रदाताओं के साथ अपने सर्वर होने (यूएसए में GoDaddy, कनाडा में iWeb और GloboTech) के साथ एक ही सटीक मुद्दा देखा है। केवल एक चीज जो सामान्य है वह है विंडोज सर्वर ओएस (2003 और 2008 आर 2)। लेकिन आइए अब मेरे वर्तमान सर्वर और मेरे वर्तमान आईएसपी को ही देखें।

समस्या :

मुझे अपने स्थानीय कार्य केंद्र और मेरे दूरस्थ समर्पित सर्वर के बीच बहुत धीमी गति से स्थानांतरण दर मिलती है। मेरा सर्वर 100 एमबीपीएस पोर्ट पर है और मेरा स्थानीय वर्कस्टेशन ऑप्टिकल फाइबर पर 50 एमबीपीएस सममितीय कनेक्शन पर है।

लक्षण :

सर्वर और वर्कस्टेशन दोनों को अमेरिका और मैक्सिको के विभिन्न सर्वरों और स्थानों के खिलाफ speedtest.net पर परीक्षण करते समय उत्कृष्ट परिणाम (उनकी कनेक्शन गति के बहुत करीब) मिलते हैं। यदि मैं बड़ी फ़ाइलों को डाउनलोड करता हूं, तो ड्रॉपबॉक्स को, मेरे सर्वर या मेरे वर्कस्टेशन से, मुझे एक कनेक्शन पर क्रमशः 10 एमबीपीएस और 5 एमबीपीएस की ट्रांसफर दर मिलती है, जो कि 100 एमबीपीएस और 50 एमबीपीएस की प्रत्येक कनेक्शन गति के अनुसार सही है repectively।

फिर भी, यदि मैं अपने सर्वर से एक फ़ाइल (HTTP या FTP के माध्यम से) अपने कार्य केंद्र में स्थानांतरित करता हूं, तो मुझे 50 एमबीपीएस की गति के करीब भी नहीं मिलता है, जो मुझे (5 एमबीपीएस ट्रांसफर दर) मिलना चाहिए, लेकिन मुझे इसके बजाय 3 एमबीपीएस के बराबर कुछ मिलता है (300 केबीपीएस ट्रांसफर रेट)।

मैं यह समझने की कोशिश कर रहा हूं कि मुझे स्थानांतरण दर क्यों मिलती है जो धीमी है। मुझे यकीन नहीं है कि इसे कैसे डीबग करना है। जब भी मैं होस्टिंग प्रदाताओं के साथ समस्या पर एक टिकट बढ़ाता हूं, तो वे मुझसे ट्रैकर आउटपुट के लिए पूछते हैं और अंत में इसे बीच में किसी सर्वर पर दोष देते हैं। लेकिन यह सही प्रतीत नहीं होता है, अगर हम इस बात पर ध्यान दें कि मैंने पहले क्या कहा था: मैंने अपने सर्वर को GoDaddy, iWeb और GloboTech के साथ होने के दौरान इस सटीक गति / समस्या को देखा है, और खुद को बहुत ही अलग ISPs के साथ होने पर विभिन्न प्रकार की इंटरनेट सेवा । यह वास्तव में सर्वर क्षेत्र में एक निश्चित सेटिंग की तरह दिखता है।

मेरे द्वारा किए गए टेस्ट :

speedtest

ये speedtest.net से गति परीक्षण हैं जो मेरे समर्पित सर्वर में मेक्सिको सिटी में मेरे ISP के डेटासेंटर के सर्वर सहित विभिन्न दूरस्थ सर्वरों के लिए निष्पादित किए गए थे :

कनाडा : डाउनलोड के लिए 94.64 एमबीपीएस और अपलोड के लिए 94.87 http://www.speedtest.net/my-result/34703017575

सैन जोस, CA : डाउनलोड के लिए 93.58 एमबीपीएस और अपलोड के लिए 95.48 एमबीपीएस http://www.speedtest.net/my-result/3470805341

मैक्सिको सिटी (मेरे खुद के आईएसपी डेटासेंटर में सर्वर) : डाउनलोड के लिए 92.99 एमबीपीएस और अपलोड के लिए 95.39 एमबीपीएस http://www.speedtest.net/my-result/3470810269

यदि मैं अपने स्थानीय कार्य केंद्र से उसी सर्वर के खिलाफ उन परीक्षणों को चलाता हूं, तो मुझे अपने 50 एमबीपीएस कनेक्शन के करीब गति भी मिलती है।

TRACERT

यह मेरे वर्कस्टेशन से मेरे समर्पित सर्वर पर हाल ही में किए गए ट्रैसर्ट आउटपुट है:

 1    <1 ms    <1 ms    <1 ms  192.168.7.254
 2     2 ms     1 ms     1 ms  10.69.32.1
 3     *        3 ms     2 ms  10.5.50.174
 4     3 ms     2 ms     2 ms  10.5.50.173
 5     *        5 ms     3 ms  fixed-203-69-2.iusacell.net [189.203.69.2]
 6    32 ms    32 ms    32 ms  8-1-33.ear1.Dallas1.Level3.net [4.71.220.89]
 7    33 ms    33 ms    33 ms  ae-3-80.edge5.Dallas3.Level3.net [4.69.145.145]
 8    33 ms    33 ms    33 ms  ae13.dal33.ip4.tinet.net [77.67.71.221]
 9    76 ms    76 ms   157 ms  xe-1-0-0.mtl10.ip4.tinet.net [89.149.185.41]
10    72 ms    72 ms    72 ms  te2-2.cr2.mtl3.gtcomm.net [67.215.0.160]
11    72 ms    72 ms    72 ms  ae2.csr2.mtl3.gtcomm.net [67.215.0.134]
12    72 ms    72 ms    73 ms  te3-4.dist1.mtl8.gtcomm.net [67.215.0.83]
13    72 ms    72 ms    72 ms  ns1.marveldns.com [173.209.57.82]

iperf

यह सर्वर के रूप में मेरे समर्पित सर्वर और क्लाइंट के रूप में मेरे वर्कस्टेशन का उपयोग करके निष्पादित एक iperf टेस्ट है:

------------------------------------------------------------
Client connecting to ns1.marveldns.com, TCP port 5001
TCP window size: 64.0 KByte (default)
------------------------------------------------------------
[  3] local 192.168.7.2 port 60339 connected with 173.209.57.82 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.3 sec  5.62 MBytes  4.59 Mbits/sec

PATHPING

यह मेरे वर्कस्टेशन से मेरे समर्पित सर्वर के लिए निष्पादित एक कमिंग कमेंड का आउटपुट है:

Tracing route to ns1.marveldns.com [173.209.57.82]
over a maximum of 30 hops:
  0  ws1 [192.168.7.2]
  1  192.168.7.254
  2  10.69.32.1
  3     *     10.5.50.174
  4  10.5.50.173
  5  fixed-203-69-2.iusacell.net [189.203.69.2]
  6  8-1-33.ear1.Dallas1.Level3.net [4.71.220.89]
  7  ae-3-80.edge5.Dallas3.Level3.net [4.69.145.145]
  8  ae13.dal33.ip4.tinet.net [77.67.71.221]
  9  xe-1-0-0.mtl10.ip4.tinet.net [89.149.185.41]
 10  te2-2.cr2.mtl3.gtcomm.net [67.215.0.160]
 11  ae2.csr2.mtl3.gtcomm.net [67.215.0.134]
 12  te3-4.dist1.mtl8.gtcomm.net [67.215.0.83]
 13  ns1.marveldns.com [173.209.57.82]

Computing statistics for 325 seconds...
            Source to Here   This Node/Link
Hop    RTT  Lost/Sent = Pct  Lost/Sent = Pct  Address
  0                                           ws1 [192.168.7.2]
                                0/ 100 =  0%   |
  1    0ms     0/ 100 =  0%     0/ 100 =  0%  192.168.7.254
                                0/ 100 =  0%   |
  2    1ms     0/ 100 =  0%     0/ 100 =  0%  10.69.32.1
                                0/ 100 =  0%   |
  3    3ms     0/ 100 =  0%     0/ 100 =  0%  10.5.50.174
                                0/ 100 =  0%   |
  4    2ms     0/ 100 =  0%     0/ 100 =  0%  10.5.50.173
                                0/ 100 =  0%   |
  5    4ms    20/ 100 = 20%    20/ 100 = 20%  fixed-203-69-2.iusacell.net [189.203.69.2]
                                0/ 100 =  0%   |
  6   34ms     0/ 100 =  0%     0/ 100 =  0%  8-1-33.ear1.Dallas1.Level3.net [4.71.220.89]
                                0/ 100 =  0%   |
  7   34ms     0/ 100 =  0%     0/ 100 =  0%  ae-3-80.edge5.Dallas3.Level3.net [4.69.145.145]
                                0/ 100 =  0%   |
  8   33ms     0/ 100 =  0%     0/ 100 =  0%  ae13.dal33.ip4.tinet.net [77.67.71.221]
                                0/ 100 =  0%   |
  9   79ms     0/ 100 =  0%     0/ 100 =  0%  xe-1-0-0.mtl10.ip4.tinet.net [89.149.185.41]
                                2/ 100 =  2%   |
 10   73ms    14/ 100 = 14%    12/ 100 = 12%  te2-2.cr2.mtl3.gtcomm.net [67.215.0.160]
                                0/ 100 =  0%   |
 11   72ms     2/ 100 =  2%     0/ 100 =  0%  ae2.csr2.mtl3.gtcomm.net [67.215.0.134]
                                2/ 100 =  2%   |
 12   72ms    18/ 100 = 18%    14/ 100 = 14%  te3-4.dist1.mtl8.gtcomm.net [67.215.0.83]
                                0/ 100 =  0%   |
 13   72ms     4/ 100 =  4%     0/ 100 =  0%  ns1.marveldns.com [173.209.57.82]

Trace complete.

चीजें जो आप अपने लिए आजमा सकते हैं

यदि आप इसे आज़माना चाहते हैं, तो ये कुछ चीजें हैं जिन्हें मैंने परीक्षण उद्देश्यों के लिए सर्वर में सेटअप किया है:

HTTP सर्वर पर बड़ी फ़ाइल

मैंने अपने सर्वर में 5 जीबी फ़ाइल रखी है जिसे HTTP के माध्यम से डाउनलोड किया जा सकता है। आप इसे यहाँ पा सकते हैं: http://www.marveldns.com/transfer_test/

स्पीडटेस्ट मिनी ऐप

मैंने अपने सर्वर पर "स्पीडटेस्ट मिनी" टेस्ट सेटअप किया है। आप इसे देख सकते हैं और देख सकते हैं कि यह क्या गति है जो आपको डाउनलोड करने और मेरे सर्वर और अपने भीतर अपलोड करने के लिए मिल रही है। आप इसे यहाँ पा सकते हैं: http://www.marveldns.com/speedtest/

अंत में :

जैसा कि मैंने पहले कहा था, मैं पूरी बात समझने में मदद पाने की कोशिश कर रहा हूं। मैं टीसीपी / आईपी या टॉप एंड नेटवर्किंग का विशेषज्ञ नहीं हूं। मैं ईमानदारी से यह भी स्पष्ट नहीं है कि समस्या को हल करने में सक्षम होने के लिए ट्रेसर्ट, आईपर्फ या पिंगपाथ के परिणामों का उपयोग कैसे करें, लेकिन मैं उन्हें शामिल करता हूं क्योंकि जब मैं इस मुद्दे के बारे में बात करता हूं तो मुझे हमेशा इसके लिए कहा जाता है।

अगर मेरे सवाल में कुछ बेहतर होने का अभाव है, तो कृपया इसे न घटाएं और मुझे बताएं कि इसमें क्या गलत है या कुछ और मदद पाने के लिए मैं इसमें क्या जोड़ सकता हूं। धन्यवाद।


सिर्फ इसलिए कि मैं उत्सुक हूं, जब आपके पास अपने समर्पित सर्वर पर लोकलहोस्ट पर अपनी फाइल को रखने की क्या गति है?
ब्राइस

हाय ब्राइस। मुझे लगभग 50 एमबी / एस (बाइट्स, बिट्स नहीं) के बारे में कुछ मिलता है, जो कि मुझे एक ही गति से बहुत अधिक है अगर मैं मैन्युअल रूप से उसी फ़ोल्डर में फ़ाइल को विंडोज एक्सप्लोरर में सीधे एक ही फ़ोल्डर में कॉपी करता हूं (तो यह गति द्वारा सीमित है डिस्क, जबकि यह पढ़ता है और खुद को लिखता है)।
फ्रांसिस्को ज़ाराबोज़ो

1
ट्रैसर्ट के अनुसार, आपका कार्य केंद्र एक बड़े नेटवर्क पर है। क्या आपने स्थानीय नेटवर्क व्यवस्थापक से यह पूछने की कोशिश की है कि क्या किसी प्रकार का क्यूएस था जो कनेक्शन को धीमा कर देगा?

यदि आप एक साथ कई स्थानान्तरण शुरू करते हैं तो संयुक्त गति अपेक्षित 50Mbit / s के पास बढ़ जाती है? अर्थात। क्या यह सब पर धीमा है, या प्रति कनेक्शन धीमा है?
अनुदान

@ लाभ: कई कनेक्शन के साथ यह 50 एमबीपीएस तक विज्ञापन करता है। प्रति कनेक्शन सीमा होती है।
फ्रांसिस्को ज़ाराबोज़ो

जवाबों:


9

खिड़की के आकार के कारण स्पष्ट रूप से उस URL तक पहुँचते समय मुझे जो अड़चन दिखाई देती है।

जब मैं आपके सर्वर से डाउनलोड करने का प्रयास करता हूं तो मुझे 555KB / s मिलता है। मेरे पास १० time किलोमीटर का समय है। गणित करने से मुझे निम्नलिखित विंडो का आकार मिलता है: 555KB / s * 108ms = 59.94KB।

जब तक मैं डेटासेंटर में एक मेजबान से करता हूं, मुझे एक बहुत सुसंगत थ्रूपुट और राउंडट्रिप मिलता है। इसके अतिरिक्त, यदि मैं समानांतर में दो डाउनलोड शुरू करता हूं तो प्रत्येक को 555KB / s मिलता है। यह बिल्कुल लक्षण है जब आप देखेंगे कि टोंटी खिड़की के आकार की है।

विंडो स्केलिंग के बिना, विंडो 64KB से बड़ी नहीं हो सकती। लेकिन मुझे लगता है कि विंडो स्केलिंग पर बातचीत की जानी चाहिए, इसलिए उच्चतर थ्रूपुट संभव होना चाहिए। यह जांच करने के लिए दो परिकल्पनाएं छोड़ता है:

  • कुछ क्लाइंट से सर्वर के लिए पथ पर विंडो स्केलिंग विकल्प का प्रबंधन कर रहा है, जिससे सर्वर को लगता है कि विंडो को 1 के कारक से स्केल किया गया है।
  • प्रत्येक कनेक्शन पर 60KB से अधिक विंडो भेजने के लिए कभी भी सर्वर का उपयोग नहीं किया जा सकता है।

पहले यह सत्यापित करना आसान है कि क्या आप सर्वर पर पैकेट कैप्चर कर सकते हैं। आने वाले SYN पैकेट पर स्केलिंग विकल्प को देखें ताकि यह पता चल सके कि सर्वर द्वारा प्राप्त स्केलिंग फैक्टर एक से अधिक है या नहीं। मैं ट्रैफ़िक का विश्लेषण करने के लिए विंडसर का उपयोग करने की सिफारिश कर सकता हूं।

दूसरी परिकल्पना को सत्यापित करने के लिए आपके द्वारा उपयोग किए जा रहे ऑपरेटिंग सिस्टम के कुछ ज्ञान की आवश्यकता होती है। आपने एक ऑपरेटिंग सिस्टम चुना है, जो मेरे लिए अज्ञात है, जिससे मैं मदद नहीं कर सकता। इसलिए मैं केवल नेटवर्किंग में विशेषज्ञता के साथ मदद कर सकता हूं।


मुझे 100% यकीन नहीं है, लेकिन क्या विंडो का आकार सॉकेट भेजने और बफर आकार (सॉकेट विकल्प SO_RVSBUF और SO_SNDBUF) प्राप्त करने से प्रभावित नहीं होता है? मैंने ऐसी ही घटनाओं को देखा है जहां बफर बहुत छोटा था (उदाहरण 1 केबी), और 4KB या 8KB की तुलना में थ्रूपुट बहुत विवश था।
कैमरन केर

@CameronKerr आपकी टिप्पणी ने मुझे संचार पर एक और नज़र डालने के लिए प्रेरित किया। इस बार मैंने अपने लैपटॉप से ​​परीक्षण किया (जो कि वाईफाई पर है और लोअर थ्रूपुट मिलता है)। मैंने जो देखा वह यह था कि मुझे 105K राउंडट्रिप के साथ 138KB / s मिलता है। इसका मतलब है कि एक प्रभावी खिड़की का आकार 14.5KB है। मेरे लैपटॉप द्वारा विज्ञापित प्राप्त विंडो 679 << 7 (लगभग 85KB) से पहले थ्रूपुट स्थिर हो गई। इस संभावना को खारिज करना चाहिए कि स्केलिंग फैक्टर को केवल पारगमन में शून्य किया गया था और इस संभावना को खारिज करना चाहिए कि मेरे अंत पर बफर प्राप्त करके थ्रूपुट को विवश किया गया था।
कैस्परड

Windows Server 2008 r2 के लिए एक प्रासंगिक लेख यहां पाया जा सकता है: andydavies.me/blog/2011/11/21/…
फ्रांसिस्को Zarabozo
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.