2012-07-17 21 views
6

में कनेक्शन की गति (बैंडविड्थ) की जांच करें क्या कोई तरीका है कि हम एक्सकोड में इंटरनेट कनेक्शन की गति या बैंडविड्थ प्रोग्रामेटिक रूप से जांच सकते हैं। मैं ऐसा करने की कोशिश कर रहा हूं क्योंकि धीमी कनेक्शन कुछ छवि अपलोड के लिए समस्याएं पैदा कर रही है।एक्सकोड

+1

मैं भी खोज रहा हूं ... – Mani

+1

@ManishModi: http://stackoverflow.com/questions/370641/calculating-connection-download-speed इस लिंक पर सही नहीं है लेकिन कुछ छोटे काम हैं। मैं अभी भी सही समाधान की तलाश में हूं। – Nit

उत्तर

0

यदि आपको वास्तव में जानने की आवश्यकता है, तो आपको इसके लिए परीक्षण करना होगा।

कम ज्ञातता वाले ज्ञात सर्वर से कनेक्शन सेट अप करें। एक अलग धागे में, समय (समय ए) चिह्नित करें और एक पैकेट भेजें (सुनिश्चित करें कि यह एक पैकेट है)। उस धागे पर रुको। पहले पैकेट (टाइम बी) के समय को चिह्नित करें। समाप्त होने तक डेटा पढ़ें। अंतिम पैकेट (टाइम सी) के समय को चिह्नित करें। सुनिश्चित करें कि सर्वर प्रतिक्रिया कम से कम तीन पैकेट फैलती है।

समय बी - समय ए विलंबता का एक बहुत ही अनुमानित अनुमान है। टाइम सी - टाइम बी बैंडविड्थ का एक बहुत ही अनुमानित अनुमान है।

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

उस बिंदु पर आपको परीक्षण करने की आवश्यकता होगी। परीक्षण, परीक्षण, परीक्षण, और परीक्षण। विभिन्न नेटवर्क प्रकारों पर परीक्षण, नेटवर्क यातायात की विभिन्न मात्राओं के साथ परीक्षण, स्विचिंग नेटवर्क के साथ परीक्षण, और किसी और चीज का परीक्षण करें जिसे आप सोच सकते हैं।