मैं एक FPGA और एक विंडोज 7 पीसी के बीच 10Gbps ईथरनेट चैनल बनाने की कोशिश कर रहा हूं। मोटे अनुमान के लिए, मैंने विंडोज टास्क मैनेजर के नेटवर्क टैब का उपयोग करके लिंक के बैंडविड्थ उपयोग को मापा। बाद में मैंने विंडशार्क का उपयोग करके थ्रूपुट को मापा। मैं समय के साथ कुल बाइट्स की संख्या को विभाजित करके एक छोटी गणना करता हूं (N bytes/T)*8 bits per second
।
कम लाइन-दरों पर (<= 5Gbps)
, दोनों मापों का बारीकी से मिलान किया गया। हालाँकि जैसा कि मैंने डेटा-दर में वृद्धि की है, 5 Gbps से ऊपर का कहना है, कार्य प्रबंधक में ग्राफ़ तदनुसार बढ़ता है, लेकिन Wireshark द्वारा प्राप्त डेटा-दर लगभग 2.5 से 3 Gbps तक कम हो जाती है।
मैं केवल अनुमान लगा सकता हूं कि यह एक ओएस स्तर की समस्या है। मैं समझता हूं कि लाइन-रेट और डेटा-रेट दो अलग-अलग चीजें हैं। यदि मैं गलत हूं तो मुझे बताएं।
मेरे प्रश्न हैं:
- टास्क मैनेजर लाइन-दर को कहाँ मापता है?
- Wireshark पैकेटों को कहाँ रखता है?
मैंने पढ़ा ये पद और समझते हैं कि Wireshark एनआईसी ड्राइवर और उच्चतर परतों (मेरा अनुमान, ट्रांसपोर्ट लेयर) के बीच पैकेटों को पकड़ता है, लेकिन मुझे यकीन नहीं है।
अद्यतन करें
मैंने संसाधन मॉनिटर के साथ जाँच की कोशिश की है। यह बाइट्स की संख्या को एक विशेष एप्लिकेशन में स्थानांतरित किया जाना दिखाता है (यदि मैं गलत नहीं हूं)। जब मैं 10Gbps की दर से FPGA से डेटा स्थानांतरित कर रहा हूं, तो संसाधन मॉनिटर 1.26 दिखाता है गीगाबाइट प्रति सेकंड (10.001 गीगाबिट प्रति सेकंड!) अंतरण दर। यह मुझे और अधिक भ्रमित कर रहा है।
विंडसरक क्यों गायब है ये पैकेट?
अधिक जानकारी और एनआईसी परमेस:
मैं यूडीपी प्रोटोकॉल का उपयोग कर रहा हूं। वह गति & gt; 5Gbps पर पैकेट हानि का एक संभावित कारण हो सकता है। FPGA के पैकेट 16060 बाइट्स (पेलोड के 16000 बाइट्स और हेडर के 60 बाइट्स) हैं।
- 60000 (अधिकतम 65535) को बफर प्राप्त करें।
- जंबो फ्रेम सक्षम - 16128 (अधिकतम मूल्य)
- सक्षम आरएसएस
- यूडीपी और टीसीपी के सक्षम चेकसम ऑफलोडिंग
- RSS प्रोसेसर की संख्या 6 (6 भौतिक कोर पीसी में उपलब्ध हैं)
- 25 मिलियन का अवरोधन
मैं नेटवर्किंग क्षेत्र में नया हूं। किसी भी प्रकार की सहायता सराहनीय होगी।