आप पूरी तरह से सही हैं, यदि हमें प्रति बिट एक अनुदेश चक्र का उपयोग करना है तो 10 जीबीपीएस अस्वीकार्य होगा। तो पहली बात यह ध्यान देने की है कि हम प्रति सीपीयू निर्देश के अनुसार एक शब्द को संभालते हैं - 64 बिट्स।
फिर भी प्रदर्शन के लिए हम जो सबसे खराब काम कर सकते हैं वह है पैकेट के सभी शब्दों का सीपीयू तक पहुंचना। इस प्रकार पैकेट के "शून्य-प्रतिलिपि" हैंडलिंग पर ध्यान केंद्रित किया गया है। उस प्रवंचना में से कुछ स्वयं इंटरफेस में हैं: उनके पास डीएमए ("डायरेक्ट मेमोरी एक्सेस") है ताकि ईथरनेट नियंत्रक चिप डेटा को रैम में कॉपी कर ले; वे चेकसमों की गणना करते हैं ताकि सीपीयू को ऐसा करने के लिए पैकेट के सभी शब्दों का उपयोग न करना पड़े। इसमें से कुछ डेटा संरचना डिज़ाइन में है: हम पैकेट बफ़र्स को संरेखित करने के लिए सावधान हैं ताकि हम उन्हें पृष्ठ तालिका प्रविष्टि के स्वामित्व को बदलकर स्थानांतरित कर सकें। यह सुनिश्चित करने के लिए कि पैकेट डेटा को कम से कम कई बार एक्सेस किया जाता है, और अधिमानतः आवेदन कार्यक्रम प्राप्त होने तक इसे एक्सेस नहीं किया जाता है, यह सुनिश्चित करने के लिए कुछ सावधानीपूर्वक प्रोग्रामिंग है।
एक बार जब हम यह सब कर लेते हैं तो अगली सीमा पैकेट को एक समय में संभालने की ओवरहेड होती है। इस प्रकार ईथरनेट नियंत्रक और कर्नेल दोनों में "सेगमेंटेशन ऑफलोड" सुविधाओं का एक ढेर है ताकि हम पैकेट के समूहों को संभाल सकें। हम ईथरनेट नियंत्रक से डेटा प्राप्त करने में भी देरी कर रहे हैं ताकि ये समूह बड़े हों।
अंत में हमारे पास विशेष-केस शॉर्टकट हैं, जैसे कि कर्नेल की सेंडफाइल () कॉल जो कि डिस्क से नेटवर्क तक काम की न्यूनतम राशि का उपयोग करके एक एक्सप्रेस पथ है।
हम नेटवर्क-केस कार्डों की हार्डवेयर विशेषताओं का उपयोग करके और सीपीयू को शामिल करने के बजाय कार्डों के बीच पीसीआई बस को बस के रूप में मानकर विशेष केस-राउटिंग (एक इंटरफ़ेस से दूसरे इंटरफ़ेस के पैकेट को अग्रेषित करना) कर सकते हैं। यह सामान्य प्रयोजन ऑपरेटिंग सिस्टम में नहीं किया जा सकता है, लेकिन इंटेल जैसे विक्रेता अपने ईथरनेट नियंत्रकों पर ऐसी विशेषताओं को लागू करने के लिए सॉफ्टवेयर लाइब्रेरी प्रदान करते हैं।
पूरी तरह से सीपीयू से दूर, हम विशेष-प्रयोजन राउटर भी बना सकते हैं जहां सभी अग्रेषण कार्य हार्डवेयर में होते हैं। चूंकि PCI बस तब एक सीमा होगी, जिसमें वे कई समानांतर busses चलाएंगे; या कई समानांतर क्रॉसबार स्विच असेंबली के लिए कई समानांतर busses। बाजार के एक छोर पर एक छोटा टीसीएएम-आधारित ईथरनेट स्विच एक उदाहरण होगा; बाजार के दूसरे छोर पर जुनिपर M40 एक विहित डिजाइन होगा।
एक विशिष्ट स्विच एक पैकेट प्राप्त करना शुरू कर देगा, टीसीएएम में गंतव्य का पता देखें, एक टैग को पैकेट के लिए इग्रेशन-पोर्ट के साथ संलग्न करें और फिर ईएमए पोर्ट के नियंत्रक के लिए अभी भी आने वाले पैकेट को डीएमए करें। ध्यान दें कि यदि आउटपुट पोर्ट को कंजेस्ट किया जाता है तो इन सभी को इस सरल स्विच पर किया जा सकता है ताकि इनग्रेस पैकेट को फेंक दिया जा सके। इस प्रकार सरल स्विच लिंक की गति में बदलाव के लिए एक अच्छा विकल्प नहीं बनाते हैं और कुछ पंक्तिबद्ध करना वांछनीय है। बेशक अधिक परिष्कृत स्विच मौजूद हैं, जिसके लिए आप अधिक भुगतान करते हैं।
एक विशिष्ट राउटर एक पैकेट प्राप्त करेगा और इसे एक छोटी कतार में रखेगा। गंतव्य आईपी पते को स्थिर रैम में देखा जाएगा, पैकेट को फिर से विलंबता को कम करने के लिए कोशिकाओं में विस्फोट किया जाएगा, और प्रत्येक सेल एक क्रॉस-बार स्विच को इगोर कार्ड में भेज देगा। वह कार्ड एक पैकेट में कोशिकाओं को फिर से इकट्ठा करेगा, और पैकेट को बाहर निकाल देगा। इगोर इंटरफेस पर कतार परिष्कृत हो सकती है।
the packet will then be exploded into cells to reduce latency
?