اندازهگیری توان عملیاتی شبکه
توان عملیاتی (به انگلیسی: Throughput) یک شبکه را میتوان با استفاده از ابزارهای مختلف موجود بر روی سیستم عاملهای مختلف اندازهگیری کرد. این صفحه تئوری ای که بر اساس آن این ابزارها برای اندازهگیری تنظیم میشوند و مسائل مربوط به این اندازهگیریها را توضیح میدهد. دلیل اندازهگیری توان عملیاتی در شبکهها این است که مردم اغلب تمایل دارند از حداکثر توان عملیاتی داده در یک لینک ارتباطی یا دسترسی به شبکه، در واحد بیت (bit) بر ثانیه، اطلاع داشته باشند. روش رایج برای اندازهگیری این کمیت این است که یک فایل بزرگ را از یک سیستم به سیستم دیگر انتقال میدهند و زمان مورد نیاز برای تکمیل انتقال یا کپی فایل را محاسبه میکنند. سپس توان عملیاتی با تقسیم اندازه فایل در آن زمان، در واحد مگابیت (megabit) بر ثانیه، کیلوبیت (kilobit) بر ثانیه یا بیت در ثانیه بدست میآید.
متأسفانه، نتایج حاصل از چنین آزمایشی در محدودهٔ goodput است که معمولاً کمتر از حداکثر توان عملیاتی داده است که در تئوری بدست میآید و منجر به این میشود که مردم تصور کنند لینک ارتباطاتشان به درستی عمل نمیکند. در واقع، علاوه بر سربارهای انتقال، شامل رکود، اندازه پنجره دریافت TCP و محدودیتهای سیستم، سربار بسیاری در goodput وجود دارد، که به این معنی است که goodput محاسبه شده، حداکثر توان عملیاتی در دسترس را نشان نمیدهد.
نظریه: خلاصهٔ کوتاه
حداکثر پهنای باند میتواند به صورت زیر محاسبه شود:
که در این فرمول RWIN پنجره دریافت TCP و RTT زمان رفت و برگشت (round-trip time) در مسیر است. حداکثر اندازه پنجره TCP، در صورت عدم وجود گزینهٔ پنجره مقیاس، ۶۵۵۳۵ بایت است. به عنوان مثال: حداکثر پهنای باند = 0.220 ثانیه/۶۵۵۳۵بایت = 297886.36 بایت / ثانیه * ۸ = 2.383 مگابیت / ثانیه. ما برای دریافت نرخ بیت در واحد ثانیه، تعداد بایت در هر ثانیه را در ۸ ضرب میکنیم. روی یک اتصال TCP بین دو نقطهٔ نهایی، پهنای باند آزمایش شده به ۲٫۳۷۶ مگابیت بر ثانیه محدود خواهد شد، حتی اگر پهنای باند قرار داده شده بیشتر باشد.
نرمافزار تست پهنای باند
نرمافزار تست پهنای باند (Bandwidth) برای تعیین حداکثر پهنای باند شبکه یا اتصال اینترنت استفاده میشود. این کار معمولاً از طریق دانلود یا آپلود حداکثر مقدار داده در یک دوره معینی از زمان، یا مقدار معینی از داده در حداقل زمان، انجام میشود. به همین دلیل، تستهای پهنای باند میتوانند باعث تأخیر در انتقال داده بر روی اتصالات اینترنتی که تستها روی آن انجام میشوند، همچنین باعث تراکم بار داده شوند. روش دقیق تر، استفاده از نرمافزارهای اختصاصی مثل Netcps، JDSU QT600، Spirent Test Center، IxChariot، Iperf، Ttcp، netperf یا bwping برای اندازهگیری حداکثر توان عملیاتی یک لینک دسترسی به شبکه است.
استفادهٔ متناقض و گیجکننده از پسوندها
معمولاً افراد از اختصار عباراتی که کاربرد زیادی دارند، استفاده میکنند. در مورد اندازهٔ فایلها، معمولاً عبارت '۶۴k' را به جای '۶۴kilobytes'، یا '۱۰۰meg'را به جای '۱۰۰megabytes' به کار میبرند. هنگامی که صحبت در مورد نرخ بیت مدار است، از اصطلاحات توان عملیاتی، پهنای باند و سرعت استفاده کرده و سرعت مدار را به صورت '۶۴k' یا '۲meg' به معنی مداری با سرعت ۶۴ کیلوبیت بر ثانیه یا ۲ مگابیت بر ثانیه، نشان میدهند. با این حال یک مدار با سرعت ۶۴k، فایلی با حجم ۶۴k را نمیتواند در یک ثانیه منتقل کند. این مسئله ممکن است برای افرادی که با امور مخابراتی و محاسباتی ناآشنا هستند واضح و روشن نباشد، بهطوریکه گاهی دچار اشتباه میشوند. در حقیقت یک فایل با حجم ۶۴ کیلوبایت، ۶۴*۱۰۲۴*۸ بیت حجم دارد و یک مدار با سرعت ۶۴k، با سرعت ۶۴*۱۰۰۰ بیت در هر ثانیه عمل انتقال را انجام میدهد، بنابراین زمان لازم برای انتقال این فایل از طریق مدار ۶۴k حداقل (۶۴*۱۰۲۴*۸)/(۶۴*۱۰۰۰) ثانیه معادل ۸٫۱۹۲ ثانیه است.
فشردهسازی
برخی از تجهیزات با فشرده سازی دادههایی که ارسال میکنند، باعث بهبود کانال میشوند. اکثر مودمهای آنالوگ و چندین سیستم عامل عامه پسند از این ویژگی بهره میبرند. اگر حجم یک فایل (مثلاً ۶۴کیلوبایتی) را بتوان با فشردهسازی کاهش داد، زمان مورد نیاز برای انتقال آن نیز کاهش مییابد. این کار میتواند از دید کاربر پنهان باشد، در نتیجه انتقال یک فایل فشرده شده میتواند بهطور قابل ملاحظهای سریعتر از حد انتظار انجام شود. از آنجا که این فشردهسازی 'پنهان' را به راحتی نمیتوان غیرفعال کرد، بنابراین برای اندازهگیری توان عملیاتی با استفاده از انتقال فایلها و زمان بندی زمان انتقال، باید از فایلی استفاده کرد که امکان فشردهسازی نداشته باشد. اغلب برای این منظور از فایلهای از قبل فشرده شده، مانند فایلهای زیپ (zip) بهره میگیرند.
با فرض اینکه امکان فشرده کردن دادهها وجود نداشته باشد، برای انتقال یک فایل ۶۴ کیلوبایتی بر روی یک کانال انتقال ۶۴ کیلوبیت بر ثانیه، زمانی که در حالت تئوری بدست میآید ۸٫۱۹۲ ثانیه است که حداقل زمان انتقال است و در عمل زمان بیشتری لازم است. این به علت وجود اثر سربار، که برای قالب بندی داده در حالت توافق شدهاستفاده میشود، به وجود میآید. بنابراین هر دو سمت ارتباط یک دید مداوم و ثابت از داده دارند.
در اینجا حداقل دو مبحث در رابطه با انتقال فایلهای فشرده شده، که بلافاصله آشکار نمیشوند، وجود دارد.
۱- توان عملیاتی همان شبکهای که فشردهسازی را انجام میدهد، با فشردهسازی بهبود نمییابد. از دیدگاه انتها به انتها (سرور به مشتری) فشردهسازی توان عملیاتی را بهبود میبخشد. دلیل آن این است که محتوای اطلاعات برای همان مقدار اطلاعاتی که منتقل میشود با فشردهسازی افزایش مییابد.
۲- فشردهسازی فایلها در سیستمهای مشتری و سرور به منابع پردازندهای بیشتری در هر دو سیستم نیاز دارد. سرور از پردازنده خود برای فشردهسازی فایلها استفاده میکند، درحالی که هماکنون این کار انجام نمیشود. مشتری نیز فایلها را پس از دریافت کردن از حالت فشرده خارج میکند. این مسئله را میتوان یکی از هزینههای لازم (برای سیستمهای سرور و مشتری) جهت افزایش توان عملیاتی انتها به انتها در نظر گرفت (اگر چه توان عملیاتی برای همان شبکه تغییر نمی-کند).
سربارها و فرمتهای داده
لینک ارتباطی که توسط اکثر مردم مورد استفاده قرار میگیرد لینک سریال است که لینک 'قطع و وصل ناهمگام'(asynchronous start-stop) یا 'ناهمگام' نیز گفته میشود. اگر از مودمی استفاده میکنید که به صورت خارجی به رایانه خانگی یا اداری تان وصل است، این امکان وجود دارد که لینک ارتباطی شما از طریق اتصال سریال ناهمگام برقرار شده باشد. مزیت این لینک این است که ساده است و تنها با استفاده از سه سیم پیادهسازی میشود: ارسال، دریافت و سیگنال زمین (یا سیگنال مشترک). در یک رابط RS232، اتصالی که غیر فعال (idle) است دارای یک ولتاژ منفی است که همواره به آن اعمال میشود. بیت '۰' اختلاف ولتاژ مثبت نسبت به ولتاژ زمین و بیت '۱' اختلاف منفی نسبت به ولتاژ زمین را نشان میدهند، در نتیجه از وضعیت غیر فعال غیرقابل تشخیص است. این یعنی شروع یک بیت '۱' باید برای تشخیص شروع وضعیت غیر فعال شناسایی شود. این کار با توافق کردن در مورد اینکه داده بر روی لینک با چه سرعتی منتقل شود انجام میشود، سپس از یک بیت شروع برای شروع یک بایت استفاده میشود (بیت شروع یک بیت '۰' است). بیت یا بیتهای توقف نیز '۱' هستند (دارای ولتاژ منفی هستند).
(ویرایش- اطلاعات فوق اشتباه است. در پروتکل RS-232، بیت '۰' دارای ولتاژ منفی نسبت به ولتاژ زمین است و بیت '۱' نسبت به ولتاژ زمین ولتاژ مثبت دارد. یک سیگنال RS232 در وضعیت غیر فعال دارای ولتاژ منفی است. بنابراین هرگونه توضیحات بالا در مورد بیتهای '۰' و '۱' در اینجا وارونه است. بیت شروع هر بایت دارای ولتاژ رو به بالا است و نشان میدهد که بیت بعدی اولین بیت از داده سریال است. داده سریال ناهمگام در سطح TTL در حالت ولتاژ بالا برابر با '۰' و در حالت ولتاژ پایین برابر با '۱' است. دادههای سطح TTL از طریق یک مبدل TTL/RS232، که معمولاً به صورت یک تراشهٔ ماکسیم، مانند MAX232 است اداره میشوند و این مبدل همچنین وارونه کردن و تغییر دادن سطح داده را نیز انجام میدهد. همهٔ سیگنالها درون دستگاهی مجهز به اتصال RS232 و معمولاً دارای سطح TTL داخلی هستند (۰ و ۵ ولت یا ۰ و۳٫۳ ولت یا ۰ و ۳ ولت) و تبدیل به، یا از RS232 آخرین عملی است که دادههای خروجی، یا اولین کاری است که دادههای ورودی انجام میدهند.
در حقیقت موارد بیشتری از جمله سرعت انتقال یک بیت، تعداد بیتها در هر کاراکتر، بیت توازن (parity) و تعداد بیتهای توقف (به مفهوم پایان یک کاراکتر) در پیشبرد انتقال مورد توافق قرار میگیرد. به عنوان مثال مشخصه توافق شدهٔ ۹۶۰۰-۸-E-2 به این معنی است که کانال دارای سرعت انتقال ۹۶۰۰ بیت در هر ثانیه، با ۸ بیت در هر کاراکتر، بیت توازن زوج و دو بیت توقف است. این مشخصات در اتصالات سریال معمولاً به صورت ۹۶۰۰-۸-N-1 تنظیم میشوند (۹۶۰۰ بیت در هر ثانیه، ۸ بیت در هر کاراکتر، بدون بیت توازن و ۱ بیت توقف) در مجموع ۱۰ بیت برای ارسال هر کاراکتر ۸ بیتی منتقل میشود (یک بیت شروع، ۸ بیت داده و یک بیت توقف). این یعنی ۲۵% سربار. بنابراین یک لینک سریال ناهمگام با سرعت ۹۶۰۰ بیت در هر ثانیه (۱۲۰۰ بایت در هر ثانیه)، دادهها را با همین سرعت منتقل نمیکند. در این حالت سرعت واقعی انتقال ۹۶۰۰/۱۰ بایت در هر ثانیه (۹۶۰ بایت در هر ثانیه) است که بهطور قابل ملاحظهای کندتر از حد انتظار است.
این وضعیت میتواند بدتر هم بشود. در صورتی که بیت توازن و دو بیت توقف استفاده شود، سربار حمل هر کاراکتر ۸ بیتی ۴ بیت خواهد بود (یک بیت شروع، بیت توازن و ۲ بیت توقف) که معادل سربار ۵۰% است. در این حالت یک کانال با سرعت ۹۶۰۰ بیت در هر ثانیه در واقع میتواند ۹۶۰۰/۱۲ بایت در هر ثانیه (معادل ۸۰۰ بایت در هر ثانیه) منتقل کند. سرعت انتقال در رابطهای سریال ناهمگام معمولاً تا ۲۳۰٫۴ کیلو بیت در هر ثانیه پشتیبانی میشود. در این صورت اگر در تنظیمات کانال بیت توازن تعیین نشود و از یک بیت توقف استفاده شود، نرخ انتقال ۲۳٫۰۴ کیلوبایت در هر ثانیه میشود.
مزیت اتصال سریال ناهمگام سادگی آن است. یکی از معایب آن نیز بازدهی کم در حمل داده است. با استفاده از رابط همزمان میتوان بر این مورد غلبه کرد. در این نوع رابط، یک سیگنال ساعت (clock) از طریق یک سیم جدا اضافه شده و بیتها منطبق با ساعت منتقل میشوند. رابط دیگر به بیتهای شروع و توقف هر کاراکتر توجه نمیکند، با این حال به یک مکانیسم برای اطمینان از اینکه ساعتهای ارسال و دریافت همزمان هستند، نیاز است. به این منظور داده به کمک جداکنندههای شناخته شده، به قابهایی (frames) از کاراکترهای مختلف مجزا تقسیم میشود. در اینجا سه طرح رمزگذاری برای ارتباطات قاب بندی شده رواج بیشتری دارند، رمزگذاریهای HDLC ،PPP و اترنت.
کنترل لینک دادههای سطح بالا
هنگامی که از روش کنترل لینک دادههای سطح بالا (High Data Link Control) استفاده میشود، به جای اینکه برای هر بایت یک بیت شروع، بیت توازن و یک یا دو بیت توقف در نظر گرفته شود، بایتها درون یک قاب قرار داده میشوند. شروع و پایان قاب با بیتهای پرچم (flag) علامتگذاری و تشخیص خطا به کمک فیلد 'ترتیب قاب' (sequence) انجام میشود. اگر قاب دارای حداکثر طول آدرس (۳۲ بیت)، حداکثر اندازه بخش کنترل (۱۶ بیت) و حداکثر اندازه فیلد ترتیب قاب (۱۶ بیت) باشد، سربار برای هر قاب به ۶۴ بیت میتواند برسد. با فرض اینکه هر قاب تنها یک بایت را حمل کند، آنگاه بازدهی توان عملیاتی داده بسیار کم خواهد بود. با این حال معمولاً بایتها به صورتی قاب بندی میشوند که حتی با داشتن حداکثر سربار (۶۴ بیت)، قابها بیش از ۲۴ بایت داده را حمل میکند و این حالت کارآمدتر از ارتباطات سریال ناهمگام است. قابها اندازههای متفاوتی میتوانند داشته باشند چرا که تعداد بایتهایی که حمل میکنند متغیر است، یعنی سربار اتصال HDLC متغیر است.
پروتکل نقطه به نقطه
این پروتکل (PPP) در RFC 1570، RFC 1661 و RFC 1662 تعریف شدهاست. از نظر قاب بندی بستهها کاملاً شبیه به HDLC عمل میکند، اما علاوه بر روش بایت گرا (اکتت پرشده-octet stuffed) روش بیت گرا را هم پشتیبانی میکند که روشهایی برای محدود کردن قابها، ضمن حفظ شفافیت آنها هستند.
اترنت
اترنت یکی از فناوریهای 'شبکه محلی' (local area network) است که از روش قاب بندی استفاده میکند. روشهای تعریف قاب به عنوان یک جریان الکتریکی در اتصال بین دو سیستم یک شبکه گسترده که از روشهای HDLC یا PPP استفاده میکنند متفاوت است، اما این جزییات برای محاسبه توان عملیاتی اهمیتی ندارند. اترنت یک رسانه مشترک است، بهطوریکه هیچ تضمینی وجود ندارد که اتصال شبکه منحصراً در اختیار دو سیستمی باشد که در حال تبادل داده هستند. اگر چندین سیستم بهطور همزمان برای برقراری ارتباط تلاش کنند، توان عملیاتی بین هر جفت از سیستمها بهطور قابل ملاحظهای پایینتر از مقداری خواهد شد که به صورت تئوری محاسبه میشود.
سایر پروتکلهای سطح پایین
لینکهای PPP اختصاصی، تنها گزینه برای اتصالات بین سیستمها نیستند. سرویسهای رلهٔ قاب بازپخش قاب، حالت انتقال ناهمگام (ATM) و راه گزینی برچسب چندپروتکلی (MPLS) نیز برای این منظور مورد استفاده قرار میگیرند. هنگام محاسبه یا برآورد کردن توان عملیاتی داده، جزییات مربوط به قالب قاب /سلول (cell)/ بسته و جزییات پیادهسازی فناوری شبکه باید در نظر گرفته شود.
رلهٔ قاب
این فناوری از قالب تغییر یافتهٔ 'کنترل لینک دادههای سطح بالا' برای تعریف قالب قاب خود استفاده میکند.
حالت انتقال ناهمگام
حالت انتقال ناهمگام از یک روش کاملاً متفاوت برای حمل دادهها استفاده میکند. به جای استفاده از بستهها یا قابهایی با طول متغیر، دادهها در سلولهایی با اندازهٔ ثابت حمل میشوند. هر سلول ۵۶ بایت طول دارد که ۵ بایت اولیهٔ آن به عنوان سرآیند (header) و ۴۸ بایت باقیمانده به عنوان پی لود (payload) تعریف میشود. شبکههای داده معمولاً به بستههایی با طول بیشتر از ۴۸ بایت نیاز دارند، بنابراین در اینجا یک روش استاندارد برای فرایند انطباق (Adaptation) معرفی میشود که مشخص میکند چگونه بستههای دادهٔ بزرگتر به سلولهای کوچکتر تقسیم شوند. این فرایند بر حسب دادهای که حمل میشود متفاوت است، در نتیجه در ساختار حالت انتقال ناهمگام لایههای انطباق (ATM Adaptation Layers) متفاوتی تعریف میشود. فرایندی که بر روی اکثر دادهها اعمال میشود مربوط به لایهٔ انطباق شماره ۵ یا AAL5 میشود. برای درک توان عملیاتی لینکهای حالت انتقال ناهمگام باید دانست که از کدام لایهٔ انطباق برای حمل داده استفاده شدهاست.
راه گزینی برچسب چندپروتکلی
در راهگزینی برچسب چندپروتکلی (MPLS) یک سرآیند به عنوان برچسب به بستههای موجود داده اضافه میشود. در برخی شرایط این امکان وجود دارد که از MPLS به عنوان یک روش انباشته (stacked) استفاده شود، بهطوریکه برچسب به بستههای اطلاعاتی که قبلاً نشانه دار شدهاند اضافه میشود. اتصالات بین سیستمهای MPLS میتواند بومی نیز باشد یعنی بدون هرنوع پروتکل انتقال زمینهای، یا اینکه MPLS بستههای برچسب زده شده را به عنوان پی لود در بستههای رله قاب یا HDLC قرار دهد. برای محاسبه صحیح توان عملیاتی، نیاز به گذاشتن تنظیمات در حساب است. برای مثال به یک بسته داده به کمک برچسب انباشته، میتوان دو برچسب MPLS الحاق کرد، سپس به عنوان پی لود درون یک بسته HDLC قرار داده شود. این کار باعث ایجاد سربار بیشتر در حسابی میشود که در آن یک برچسب تکی MPLS به یک بسته الحاق شده و به صورت "بومی"، بدون هر نوع پروتکل زمینهای برای سیستم دریافت، ارسال شدهاست.
پروتکلهای سطح بالاتر
سیستمهای کمی هستند که فایلها و دادهها را به سادگی با کپی کردن محتوای فایل در بخش "رشته داده"(data field) از قاب HDLC یا PPP انتقال میدهند. پروتکل دیگری وجود دارد که برای قالب بندی داده درون بخش " رشته داده" از قاب HDLC یا PPP استفاده میشود. رایجترین پروتکل مورد استفاده برای این کار IP است که توسط RFC 791 تعریف شدهاست و سربار خاص خود را دارد.
باز هم سیستمهایی وجود دارند که از روش ساده کپی کردن محتوای فایل درون بسته IP استفاده میکنند، اما در عین حال از پروتکل دیگری برای مدیریت اتصال میان دو سیستم نیز بهره میبرند که همان پروتکل TCP (پروتکل کنترل انتقال) است و توسط RFC 1812 تعریف شدهاست. این پروتکل نیز سربار مخصوص خود را دارد. در نهایت یک پروتکل نیز فرایند واقعی انتقال داده را مدیریت میکند. رایجترین پروتکل برای این کار FTP (پروتکل انتقال فایل) است که توسط RFC 959 تعریف شدهاست.
ابزارهای موجود برای اندازهگیری توان عملیاتی
این بخش ممکن است جامع نباشد، چرا که ابزارهای بسیاری وجود دارد که برخی از آنها مختص برنامههای فروشندگان هستند. برخی از این ابزارها میتوانند برای اهداف غیراخلاقی استفاده شوند. احتمالاً استفاده از این ابزارها ممکن است منجر به عواقب مضر شود، حتی اگر دستگاه تنها برای اهداف خوب ساخته شده باشد. بنابراین استفاده از ابزارها باید همراه با احتیاط و درک خوب از آنها باشد.
جستارهای وابسته
منابع
- Lawrence Berkeley National Laboratory بایگانیشده در ۵ فوریه ۲۰۱۲ توسط Wayback Machine paper on measuring available bandwidth