اندازه‌گیری توان عملیاتی شبکه

از ویکی‌پدیا، دانشنامهٔ آزاد
پرش به: ناوبری، جستجو


توان عملیاتی (به انگلیسی: Throughput) یک شبکه را می‌توان با استفاده از ابزارهای مختلف موجود بر روی سیستم عامل‌های مختلف اندازه‌گیری کرد. این صفحه تئوری ای که بر اساس آن این ابزارها برای اندازه گیری تنظیم می‌شوند و مسائل مربوط به این اندازه گیری‌ها را توضیح می‌دهد. دلیل اندازه گیری توان عملیاتی در شبکه‌ها این است که مردم اغلب تمایل دارند از حداکثر توان عملیاتی داده در یک لینک ارتباطی و یا دسترسی به شبکه، در واحد بیت (bit) بر ثانیه، اطلاع داشته باشند. روش رایج برای اندازه گیری این کمیت این است که یک فایل بزرگ را از یک سیستم به سیستم دیگر انتقال می‌دهند و زمان مورد نیاز برای تکمیل انتقال و یا کپی فایل را محاسبه می‌کنند. سپس توان عملیاتی با تقسیم اندازه فایل در آن زمان، در واحد مگابیت (megabit) بر ثانیه، کیلوبیت (kilobit) بر ثانیه و یا بیت در ثانیه بدست می‌آید.

متأسفانه، نتایج حاصل از چنین آزمایشی در محدوده ی goodput است که معمولاً کمتر از حداکثر توان عملیاتی داده است که در تیوری بدست می‌آید و منجر به این می‌شود که مردم تصور کنند لینک ارتباطاتشان به درستی عمل نمی‌کند. در واقع، علاوه بر سربارهای انتقال، شامل رکود، اندازه پنجره دریافت TCP و محدودیت‌های سیستم، سربار بسیاری در goodput وجود دارد، که به این معنی است که goodput محاسبه شده، حداکثر توان عملیاتی در دسترس را نشان نمی‌دهد.

نظریه: خلاصهٔ کوتاه[ویرایش]

حداکثر پهنای باند می‌تواند به صورت زیر محاسبه شود:

 \mathrm{Throughput} \le \frac {\mathrm{RWIN}} {\mathrm{RTT}} \,\! 

که در این فرمول 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 تعریف شده است.

ابزارهای موجود برای اندازه گیری توان عملیاتی[ویرایش]

این بخش ممکن است جامع نباشد، چرا که ابزارهای بسیاری وجود دارد که برخی از آنها مختص برنامه‌های فروشندگان هستند. برخی از این ابزارها می‌توانند برای اهداف غیراخلاقی استفاده شوند. احتمالاً استفاده از این ابزارها ممکن است منجر به عواقب مضر شود، حتی اگر دستگاه تنها برای اهداف خوب ساخته شده باشد. بنابراین استفاده از ابزارها باید همراه با احتیاط و درک خوب از آنها باشد.

جستارهای وابسته[ویرایش]

منابع[ویرایش]

پیوند به بیرون[ویرایش]