আপনি সম্পূর্ণরূপে সঠিক, যদি আমাদের বিট প্রতি নির্দেশ চক্র ব্যবহার করতে হয় তবে 10 জিবিপিএস অ্যাক্সেসযোগ্য হবে। সুতরাং লক্ষণীয় প্রথম জিনিসটি হ'ল আমরা সিপিইউ নির্দেশনা অনুযায়ী একটি শব্দ হ্যান্ডেল করি - 64 বিট।
তারপরেও পারফরম্যান্সের জন্য আমরা সবচেয়ে খারাপ কাজটি হ'ল প্যাকেটের সমস্ত শব্দ সিপিইউ অ্যাক্সেস করা। সুতরাং প্যাকেটগুলির "জিরো-অনুলিপি" পরিচালনার উপর ফোকাস। সেই কৌশলগুলির মধ্যে কিছু তাদের নিজের ইন্টারফেসগুলিতে থাকে: তাদের ডিএমএ থাকে ("ডাইরেক্ট মেমরি অ্যাক্সেস") যাতে ইথারনেট নিয়ামক চিপ ডেটা অনুলিপি করে র্যামে; তারা চেকসামগুলি গণনা করে যাতে সিপিইউকে প্যাকেটের সমস্ত শব্দ ব্যবহার করতে না হয়। এর কয়েকটি ডেটা স্ট্রাকচার ডিজাইনে রয়েছে: আমরা প্যাকেট বাফারগুলিকে সারিবদ্ধ করার জন্য সতর্ক রয়েছি যাতে আমরা কোনও পৃষ্ঠার টেবিল এন্ট্রিটির owর্ধ্বতন পরিবর্তন করে তাদের সরিয়ে নিতে পারি। এর মধ্যে কয়েকটি প্যাকেটের ডেটা ন্যূনতম সংখ্যক বার অ্যাক্সেস করা সম্ভব হয়েছে এবং এটি গ্রহণযোগ্য অ্যাপ্লিকেশন প্রোগ্রাম না হওয়া পর্যন্ত পছন্দমত মোটেও অ্যাক্সেস করা যায় না তা নিশ্চিত করার জন্য কেবল সতর্ক প্রোগ্রামিং।
একবার আমরা এই সমস্ত কাজটি শেষ করে নিলে পরবর্তী সীমাবদ্ধতা হ'ল প্যাকেটগুলি হ্যান্ডলিং করে একবারে over সুতরাং ইথারনেট নিয়ামক এবং কার্নেল উভয়ই "সেগমেন্টেশন অফলোড" এর একটি গাদা বৈশিষ্ট্য রয়েছে যাতে আমরা প্যাকেটের দলগুলি পরিচালনা করি। এমনকি আমরা ইথারনেট নিয়ামক থেকে ডেটা পুনরুদ্ধারে বিলম্ব করি যাতে এই গ্রুপগুলি আরও বড় হয়।
পরিশেষে আমাদের কাছে বিশেষ-কেস শর্টকাট রয়েছে, যেমন কার্নেলের প্রেরণ ফাইল () কল যা ন্যূনতম কাজের সাহায্যে ডিস্ক থেকে নেটওয়ার্কে যাওয়ার এক্সপ্রেস পাথ।
আমরা এমনকি নেটওয়ার্ক-ইন্টারফেস কার্ডগুলির হার্ডওয়্যার বৈশিষ্ট্যগুলি ব্যবহার করে এবং সিপিইউ জড়িত না হয়ে পিসিআই বাসটিকে কার্ডের মধ্যে একটি বাস হিসাবে চিকিত্সা করে বিশেষ-কেস রাউটিং (এক ইন্টারফেস থেকে অন্য ইন্টারফেসে প্যাকেট ফরোয়ার্ডিং) করতে পারি। এটি সাধারণ উদ্দেশ্যে অপারেটিং সিস্টেমগুলিতে করা যায় না, তবে ইন্টেলের মতো বিক্রেতারা তাদের ইথারনেট নিয়ামকগুলিতে এই জাতীয় বৈশিষ্ট্যগুলি প্রয়োগ করতে সফ্টওয়্যার লাইব্রেরি সরবরাহ করে।
সম্পূর্ণ সিপিইউ থেকে দূরে সরে যাওয়া, আমরা এমনকি বিশেষ-উদ্দেশ্যে রাউটারগুলিও তৈরি করতে পারি যেখানে সমস্ত ফরোয়ার্ডিং কার্য হার্ডওয়্যারে ঘটে। যেহেতু পিসিআই বাস তখন সীমাবদ্ধতা হয়ে থাকবে তারা একাধিক সমান্তরাল বাস চালায়; বা একাধিক সমান্তরাল ক্রসবার সুইচ অ্যাসেমব্লিতে একাধিক সমান্তরাল বাসগুলি ses বাজারের এক প্রান্তে একটি ছোট টিসিএএম-ভিত্তিক ইথারনেট সুইচ একটি উদাহরণ হতে পারে; বাজারের অন্য প্রান্তে জুনিপার এম 40 একটি সাধারণ নকশা হবে।
একটি সাধারণ সুইচ একটি প্যাকেট পেতে শুরু করবে, টিসিএএম-তে গন্তব্য ঠিকানাটি সন্ধান করবে, প্যাকেটে অ্যাড্রেস-পোর্টের সাথে একটি ট্যাগ সংযুক্ত করবে এবং তারপরে অ্যাড্রেস পোর্টের নিয়ামকের সাথে স্থির-ইনকামিং প্যাকেট ডিএমএ করবে। মনে রাখবেন যে যদি আউটপুট পোর্টটি যানজট হয় তবে এই সাধারণ স্যুইচটিতে যা করা যায় তা হ'ল ইনগ্র্রেস প্যাকেটটি ফেলে দেওয়া। যখন লিঙ্কগুলির গতি পরিবর্তন হয় এবং কিছু সারি সন্ধান করা বাঞ্ছনীয় হয় তখন সাধারণ স্যুইচগুলি ভাল পছন্দ করে না। অবশ্যই আরও পরিশীলিত সুইচ বিদ্যমান, যার জন্য আপনি আরও বেশি অর্থ প্রদান করেন।
একটি সাধারণ রাউটার একটি প্যাকেট গ্রহণ করবে এবং এটি একটি ছোট সারিতে ধরে রাখবে in গন্তব্য আইপি ঠিকানাটি স্থির র্যামে সন্ধান করা হবে, প্যাকেটটি তারপরে ক্ষতিকারকতা হ্রাস করার জন্য কোষগুলিতে বিস্ফোরিত হবে এবং প্রতিটি কক্ষটি এড্রেস কার্ডে একটি ক্রস-বার সুইচে প্রেরণ করবে। এই কার্ডটি একটি প্যাকেটে কোষগুলিকে পুনরায় সংশ্লেষ করবে এবং প্যাকেটটি অ্যাড্রেস ইন্টারফেসের বাইরে সারিবদ্ধ করবে। এড্রেস ইন্টারফেসের সারিটি সারিবদ্ধ হতে পারে।
the packet will then be exploded into cells to reduce latency
?