شکل ۲‑۴ فرمت جریان داده در H.261 18
شکل ۲‑۵ آرایش GOB ها در H.261 20
شکل ۲‑۶ آرایش GOB ها در تصاویر H.263 22
شکل ۳‑۱ معماری مرجع شبکههای چندرسانهای بیسیم ۴۶
شکل ۴‑۱ سرآیند بسته RTP 53
شکل ۴‑۲ بسته، chunk و جریانها در SCTP 59
شکل ۴‑۳ صفهای موجود و استراتژی هر کدام در TC-SCTP 61
شکل ۴‑۴ مقایسه PSNR پروتکلهای SCTP، PR-SCTP و TC-SCTP 62
شکل ۵‑۱ میانگین تعداد گمشدگی بستهها ۷۰
شکل ۵‑۲ میانگین تعداد حذف فریم ۷۰
شکل ۵‑۳ میانگین کیفیت ویدئوی دریافتی ۷۱
شکل ۵‑۴ میانگین گذردهی ۷۱
شکل ۵‑۵ میانگین تأخیر ۷۱
شکل ۵‑۶ میانگین بستههای صرفنظر شده ۷۱
شکل ۵‑۷ نمودار زمانی ارسال فریمها ۷۲
شکل ۵‑۸ شبکهای با ۵ حسگر نظارتی ۷۲
شکل ۵‑۹ ارسال همزمان فریمها توسط حسگرها ۷۳
شکل ۵‑۱۰ به حداقل رساندن همپوشانی فریمها ۷۳
عنوان صفحه
شکل ۵‑۱۱ تعداد فریمهای دریافتی با نرخ ارسال ۱۵ fps 75
شکل ۵‑۱۲ تعداد فریمهای دریافتی با نرخ ارسال ۲۰ fps 76
شکل ۵‑۱۳ تعداد فریمهای دریافتی با نرخ ارسال ۲۵ fps 77
شکل ۵‑۱۴ تعداد فریمهای دریافتی با نرخ ارسال ۳۰ fps 78
شکل ۵‑۱۵ الگوی فریمهای دریافتی در مسیریاب مدتی پس از شروع شبیهسازی ۷۹
شکل ۵‑۱۶ تعداد فریمهای دریافتی با نرخ ارسال ۱۵ fps 81
شکل ۵‑۱۷ تعداد فریمهای دریافتی با نرخ ارسال ۲۰ fps 82
شکل ۵‑۱۸ تعداد فریمهای دریافتی با نرخ ارسال ۲۵ fps 83
شکل ۵‑۱۹ تعداد فریمهای دریافتی با نرخ ارسال ۳۰ fps 84
شکل ۵‑۲۰ تأخیر فریمهای دریافتی با نرخ ارسال ۱۵ fps 86
شکل ۵‑۲۱ تأخیر فریمهای دریافتی با نرخ ارسال ۲۰ fps 86
شکل ۵‑۲۲ تأخیر فریمهای دریافتی با نرخ ارسال ۲۵ fps 87
شکل ۵‑۲۳ تأخیر فریمهای دریافتی با نرخ ارسال ۳۰ fps 87
شکل ۵‑۲۴ بیشینه لرزش فریمهای دریافتی ۸۸
شکل ۵‑۲۵ مقایسه PSNR مکانیسم پیشنهادی و مکانیسم UDDP و حالت بدون استفاده از مکانیسم کنترل ازدحام در حالت نرخ ارسال ۲۵ fps 89
شکل ۵‑۲۶ تعداد فریمهای دریافتی با نرخ ارسال ۳۰ fps با ارسال مجدد I-فریمها ۹۱
فهرست جدولها
عنوان صفحه
جدول ۲‑۱ مقایسه سیستمهای پخش همگانی تلویزیون ۹
جدول ۲‑۲ نمونههایی از ویدئوی دیجیتال ۱۱
جدول ۲‑۳ فرمتهای پشتیبانی شده توسط H.261 16
جدول ۲‑۴ فرمتهای ویدئویی که توسط H.263 پشتیبانی میشوند. ۲۱
جدول ۵‑۱ مقایسه مکانیسمهای کنترل ازدحام شبکه حسگر چندرسانهای بیسیم ۶۸
فصل اول:
مقدمه
سوالات تحقیق
به منظور بررسی و بهبود پروتکلهای لایه انتقال شبکههای نظارتی بیسیم ابتدا باید به شناخت عمیقی از شرایط مسأله و چالشهای مربوطه رسیده، سپس با بهره گرفتن از این اطلاعات بدنبال راه حل های مناسب ارائه شده بود. در صورت ارضاء نشدن برخی از نیازهای مسأله توسط راه حل های موجود باید راهحلی جدید ارائه کرد. از این رو سوالاتی که مطرح میشوند و روشنگر راه این تحقیق هستند عبارتند از:
- چگونه میتوان لایه انتقال را در شبکههای نظارتی بیسیم بهینه نمود؟
ساختار پایان نامه
ساختار کلی پایان نامه به شکل زیر است:
- در فصل دوم پیش زمینهای از موضوعات اصلی شامل توضیحاتی بر شبکههای حسگر بیسیم و شبکههای حسگر چندرسانهای بیسیم و مباحثی در چندرسانهای ارائه شده و سپس به تشریح دستهبندی شبکههای حسگر چندرسانهای بیسیم پرداخته و نگاهی کلی به سیستمهای نظارتی بیسیم که دستهای مهم از شبکههای حسگر چندرسانهای بیسیم با ویژگیهای منحصر به فرد است، خواهیم داشت.
- در فصل سوم به بیان شرایط و ویژگیهای محیطی شبکههای نظارتی بیسیم پرداخته، چالشهای پیش رو را بررسی کرده و پارامترهای مهم مورد نیاز جهت ارزیابی را معرفی مینماییم.
- فصل چهارم شامل معرفی، ارزیابی و مقایسه پروتکلهای مطرح برای شبکههایی با ویژگیهایی نظیر خط ارتباطی بیسیم، نرخ بالای گمشدگی بسته در شبکه، نرخ بالای داده، ترافیک چندرسانهای، ترافیک بلادرنگ، نیازهای تأمین کیفیت خدمات[۳] و غیره، میباشد.
- در فصل پنجم کار خود را ارائه داده و نتایج و بهبودهای حاصل را بیان کرده و با برخی از پروتکلهای مطرح مقایسه میکنیم.
- و در نهایت در فصل ششم نتیجهگیریای از این تحقیق کرده و چند نمونه از کارهایی که در ادامه میتوان انجام گیرد را ذکر مینماییم.
فصل دوم:
پیش زمینه
شبکههای نظارتی بیسیم دستهای مهم از شبکههای حسگر چندرسانهای بیسیم است که ترافیک غالب آن چندرسانهای (ویدئوها، تصاویر و صوتهای بدست آمده از حسگرها) میباشد. برای درک هرچه بهتر این شبکهها ابتدا نیاز است یک شناخت مقدماتی از چندرسانهای داشته و سپس به مطالعهی شبکههای حسگر چندرسانهای بیسیم و نسل قبل از آن، یعنی شبکههای حسگر بیسیم بپردازیم.
چندرسانهای
چندرسانهای چیست؟
افرادی که از واژه چندرسانهای استفاده میکنند به دستهه ای مختلف با دیدگاههای مختلف تقسیم میشوند. به عنوان مثال فروشنده رایانه چندرسانهای را به عنوان رایانهای شامل سیستم صوتی، درایو نوری DVD و … میداند. فروشنده وسایل سرگرمی ممکن است چندرسانهای را به عنوان سیستم تلویزیون کابلی تعاملی با قابلیت دسترسی به صدها کانال دیجیتالی بر روی اینترنت یا شبکه، بداند. در علم رایانه، مفهوم چندرسانهای عبارتست از مجموعهای از ماژولها نظیر متن[۴]، تصاویر[۵]، گرافیک[۶]، انیمیشن[۷]، ویدئو[۸] و صوت[۹] که میتوانند به صورت تعاملی باشند.
در این بخش ابتدا به بیان مفاهیم و اصول اولیه که برای فهم ویدئو لازم است، میپردازیم. این مفاهیم که جنبههای مختلف ویدئو را در نظر میگیرند عبارتند از:
- انواع سیگنالهای ویدئو
- ویدئوی آنالوگ
- ویدئوی دیجیتال
از آنجا که ویدئو از منابع مختلفی ساخته میشود، ابتدا از خود سیگنال شروع میکنیم. ویدئوی آنالوگ به عنوان یک سیگنال پیوسته نشان داده میشود. ویدئوی دیجیتال نیز به عنوان یک سری از تصاویر دیجیتال نشان داده میشود. در انتهای این بخش به بیان روشهای فشردهسازی ویدئوی دیجیتال میپردازیم.
انواع سیگنالهای ویدئویی
سیگنالهای ویدئویی میتوانند در ۳ دستهی جدا قرار گیرند: ۱) کامپوننت ویدئو[۱۰] ۲) کامپوزیت ویدئو[۱۱] و ۳) S- ویدئو[۱۲].
ویدئوی کامپوننت
هنگامی که از ۳ سیگنال جداگانه ویدئو برای پلانهای قرمز، سبز و آبی استفاده شود، به عنوان ویدئوی کامپوننت شناخته میشود. این نوع سیمها شامل ۳ سیم (متصل کننده) هستند که برای وصل کردن دوربین و یا دیگر دستگاهها به تلویزیون یا نمایشگر، استفاده میشوند.
ویدئوی کامپوزیت
در ویدئوی کامپویزیت، رنگ(“chrominance”) و شدت(“luminance”) سیگنالها در یک موج حملکننده سوار میشوند. کرومیننس ترکیب دو رنگ(I و Q یا U و V) میباشد. از این سیستم در بخش همگانی تلویزیون استفاده میشود چرا که با تلویزیونهای سیاه-سفید نیز سازگار است.
S-ویدئو
S-ویدئو از دو سیم استفاده میکند: یکی برای لومیننس و دیگری برای سیگنال ترکیب شده کرومیننس.
ویدئوی آنالوگ
یک سیگنال آنالوگ f(t) یک تصویر متغیر-زمانی را نمونهبرداری میکند. در روش اسکن کردن مترقی[۱۳] یک تصویر(فریم) به صورت کامل و از ابتدا اسکن میشود. در روش دیگر به نام اسکن کردن یک در میان[۱۴] خطوط تصویر به صورت یک در میان (خطوط زوج و فرد) اسکن میشود. استانداردهای اصلی پخش همگانی تلویزیون عبارتند از:
NTSC
استانداردی است که به صورت گسترده در آمریکای شمالی و ژاپن استفاده میشود. در این استاندارد از نسبت ۴:۳ و روش اسکن کردن یک در میان استفاده میشود. همچنین در این استاندارد ۳۰ فریم در ثانیه و ۵۲۵ خط به ازای هر فریم اسکن میشود.
PAL
یک استاندارد تلویزیون است که توسط دانشمندان آلمانی اختراع شد. این استاندارد از اسکن ۶۲۵ خط بر فریم و ۲۵ فریم در ثانیه به همراه نسبت ۴:۳ و اسکن کردن یک در میان، استفاده میکند. این استاندارد مهم به صورت گسترده در اروپای غربی، چین، هند و بسیاری از نقاط دیگر جهان مورد استفاده قرار میگیرد.
SECAM
این استاندارد که توسط فرانسویها اختراع شده، سومین استاندارد عمده در پخش همگانی تلویزیون است. SECAM نیز از ۶۲۵ اسکن خط بر فریم، ۲۵ فریم بر ثانیه، با نسبت ۴:۳ و اسکن کردن یک در میان استفاده میکند. SECAM و PAL شبیه هم هستند با این تفاوت که از شماتیک کدگذاری رنگ متمایز استفاده میکنند. در جدول ۲‑۱ استانداردهای پخش همگانی تلویزیون به طور خلاصه با یکدیگر مقایسه شدهاند.
استاندارد سیستم تلویزیون |
نرخ فریم (fps) |
تعداد خطوط اسکن شده |
پهنای کل کانال (MHz) |
پهنای باند تخصیص یافته (MHz) |
Y |
I یا U |
Q یا V |
NTSC |
۲۹٫۹۷ |
۵۲۵ |
۶٫۰ |
۴٫۲ |
۱٫۶ |
۰٫۶ |
PAL |
۲۵ |
۶۲۵ |
۸٫۰ |
۵٫۵ |
۱٫۸ |
۱٫۸ |
SECAM |
۲۵ |
۶۲۵ |
۸٫۰ |
۶٫۰ |
۲٫۰ |
۲٫۰ |
جدول ۲‑۱ مقایسه سیستمهای پخش همگانی تلویزیون ]۳۶[
ویدئوی دیجیتال
مزایای نمایش دیجیتال ویدئو بسیار است. از جمله این مزایا میتوان به موارد زیر اشاره کرد:
- امکان ذخیره ویدئو بر روی دستگاههای دیجیتال یا در حافظه، آماده بودن جهت پردازش (مثلاً حذف نویز، کپی و الصاق و …) و یکپارچه شدن با بسیاری از برنامههای چندرسانهای
- دسترسی مستقیم، که امکان ویرایش غیرخطی ویدئو را فراهم میکند
- تکرار ضبط بدون کاهش کیفیت تصاویر
- راحتی کدگذاری و تحملپذیری بیشتر در مقابل نویز کانال
نمونهبرداری جزئی کروما[۱۵]
در نمونهبرداری کروما با ۳ عدد سروکار داریم که نشاندهندهی تعداد پیکسلهای فرستاده شده به ازای سیگنالهای Y، Cb و Cr است. در نتیجه شماتیک ۴:۴:۴ این مفهوم را میرساند که هیچ نمونهبرداری جزئی کروما صورت نمیگیرد و همه پیکسلها ارسال میشوند. شماتیک ۴:۲:۲ نشاندهندهی نمونهبرداری جزئی افقی سیگنالهای Cb و Cr با فاکتور ۲ میباشد. بدین صورت که تمامی پیکسلهای شمارهگذاری شده از ۰ تا ۳ مربوط به Y ارسال میشوند و ۲ پیکسل از هر Cb و Cr به شکل زیر ارسال میشوند. (Cb0, Y0)(Cr0, Y1)(Cb2, Y2)(Cr2, Y3)(Cb4, Y4) … شماتیک ۴:۱:۱ نمونهبرداری جزئی با فاکتور ۴ و به صورت افقی انجام میشود. شماتیک ۴:۲:۰ نمونهبرداری جزئی با فاکتور ۲، هم به صورت افقی و هم به صورت عمودی انجام میشود. در شکل ۲‑۱ مثالی از نمونهبرداری جزئی با شکل نشان داده شدهاند. شماتیک ۴:۲:۰ معمولاً در JPEG و MPEG استفاده میشوند. ]۳۶[
۴:۲:۲
۴:۴:۴
۴:۱:۱
۴:۲:۰
پیکسل فقط با مقدار Y
پیکسل فقط با مقدار Cr و Cb
پیکسل با مقادیر Y، Cr و Cb
شکل ۲‑۱ نمونهبرداری جزئی کروما ]۳۶[
استاندارد CCIR[16] برای ویدئوی دیجیتال
CCIR مهمترین استاندارد ویدئوی دیجیتال کامپوننت است. نسخه NTSC این استاندارد ۵۲۵ خط را اسکن کرده که هر کدام شامل ۸۵۸ پیکسل میشود. از آنجا که نسخه NTSC از ۴:۲:۲ استفاده میکند، هر پیکسل با ۲ بایت نشان داده میشود (۸ بیت برای Y و ۸ بیت دیگر برای Cb و Cr). در نتیجه نرخ داده CCIR 601(NTSC) به طور تخمینی ۲۱۶ Mbps است:
جدول ۲‑۲ تعدادی از ویدئوهای دیجیتال را که همگی از نسبت ۴:۳ استفاده میکنند، نشان میدهد.
|
CCIR 601 525/60 NTSC |
CCIR 601 625/50 PAL/SECAM |
CIF |
QCIF |
وضوح لومیننس |
۷۲۰ × ۴۸۰ |
۷۲۰ × ۵۷۶ |
۳۵۲ × ۲۸۸ |
۱۷۶ × ۱۴۴ |
وضوح کرومیننس |
۳۶۰ × ۴۸۰ |
۳۶۰ × ۵۷۶ |
۱۷۶ × ۱۴۴ |
۸۸ × ۷۲ |
نمونهبرداری جزیی رنگ |
۴:۲:۲ |
۴:۲:۲ |
۴:۲:۰ |
۴:۲:۰ |
نسبت ابعاد |
۴:۳ |
۴:۳ |
۴:۳ |
۴:۳ |
فیلد/ثانیه |
۶۰ |
۵۰ |
۳۰ |
۳۰ |
یک در میانی |
بله |
بله |
خیر |
خیر |
جدول ۲‑۲ نمونههایی از ویدئوی دیجیتال ]۳۶[
HDTV[17]
با معرفی فیلمهای صفحه گسترده، تمایل کاربران برای دیدن این نوع فیلمها افزایش یافت چرا که کاربر از وسعت دید بیشتری برخوردار بوده و حس “در محل بودن” به وی دست میدهد. هدف اصلی HDTV افزایش وضوح به ازای هر فیلد نمیباشد بلکه افزایش وسعت دید کاربر، مخصوصاً عرض آن میباشد. اولین نسل HDTV بر روی تکنولوژی آنالوگ بوده که توسط شرکت SONY و NHK در ژاپن در دهه ۱۹۷۰ توسعه داده شد. نسخه تکمیل یافته آن از ۱۱۲۵ اسکن خط و نسبت ۱۶:۹ استفاده میکند. همچنین از ماهواره برای پخش همگانی آن استفاده میشود. کانالهای DBS[18] که از آن بهره میبردهاند، پهنای باندی معادل ۲۴ MHz نیاز داشتند. در نتیجه نیاز به فشردهسازی ویدئو نیازی اساسی بود. برای ویدئو، MPEG-2 و برای صوت AC-3 بعنوان استاندارد فشردهسازی انتخاب شدند.
فشردهسازی ویدئو
همانطور که در بالا گفته شد نسخههای خام ویدئو دارای حجم بسیار زیاد بوده و نیازمند پهنای باند بسیار بالا جهت ارسال میباشند. با توجه به این واقعیت که ویدئوی خام دارای حجم قابل ملاحظهای از دادههای تکراری است، میتوان با حذف این دادههای اضافی تا میزان بسیار زیادی حجم ویدئو را کاهش داد. به فرایند حذف دادههای اضافی و رسیدن به نسخه فشرده شده، فشردهسازی گفته میشود.
اگر تعداد کل بیتهای قبل از فشردهسازی را با B0 و تعداد کل بیتهای بعد از فشردهسازی را B1 بنامیم، نسبت فشردهسازی مطابق زیر تعریف میشود:
به طور کلی انتظار ما از فشردهسازها این است که نسبت فشردهسازیای بالاتر از ۱ داشته باشند. هرچه نسبت فشردهسازی بالاتر و نسبت از بین رفتن دادهها کمتر باشد و همچنین از لحاظ محاسباتی امکانپذیر باشد، بهتر است.
فشردهسازی ویدئو میتواند به دو روش صورت گیرد:
- فشردهسازی بدون گمشدگی اطلاعات[۱۹]
- فشردهسازی با گمشدگی اطلاعات[۲۰]
در روش فشردهسازی بدون گمشدگی اطلاعات، هیچکدام از اطلاعات از دست نرفته و همگی قابل بازیابی هستند. این روشها که اغلب با بهره گرفتن از روشهای ریاضی و آماری انجام میشوند، انعطافپذیری کمی دارند. از مهمترین و معروفترین آنها میتوان به – کدگذاری هافمن[۲۱] - کدگذاری بر اساس دیکشنری[۲۲] و – کدگذاری ریاضیاتی[۲۳] اشاره نمود. بر خلاف فشردهسازی بدون گمشدگی اطلاعات، در فشردهسازی با گمشدگی اطلاعات شاهد از دست رفتن برخی اطلاعات هستیم ولی این روش از انعطافپذیری بیشتری برخوردار است و در کاربردهای چندرسانهای بیشتر مورد استفاده قرار میگیرد. از مهمترین روشهای فشردهسازی این شاخه که در زمینه فشردهسازی ویدئو استفاده میشود میتوان به – کدگذاری H.261 – کدگذاری H.263 – کدگذاری H.264 – کدگذاری MPEG-4 اشاره کرد.
فشردهسازی ویدئو بر پایهی دو اصل قرار دارد. اولین مورد افزونگی فضایی[۲۴] است که در هر فریم وجود دارد. دومین مورد این حقیقت است که اغلب اوقات یک فریم شباهت بسیار زیادی به همسایه بلافاصله خود دارد. به این نوع افزونگی موقتی[۲۵] گفته میشود. در نتیجه یک روش فشردهسازی ویدئو باید از کد کردن اولین فریم با بهره گرفتن از تکنیکهای فشردهسازی تصاویر، شروع کند. سپس با کد کردن فریمهای بعدی و مشخص کردن تفاوت بین این فریم و فریم قبل از خود ادامه دهد. اگر فریم کنونی با فریم قبلی تفاوت زیادی داشته باشد، باید به عنوان یک فریم مستقل کد شود. در فشردهسازی ویدئو، به فریمی که با بهره گرفتن از فریم قبلی خود کد میشد inter-فریم و به فریمی که به صورت مستقل کد میشود intra-فریم گفته میشود.
فشردهسازی معمولاً همراه با گمشدگی اطلاعات است. کد کردن فریم Fi با بهره گرفتن از فریم Fi-1، باعث بوجود آمدن کمی اعوجاج میشود و همینطور کد کردن فریم Fi+1 با بهره گرفتن از فریم Fi (که خود دارای کمی اعوجاج است) باعث اعوجاج بیشتر میشود. در فرایند انتقال دادهها نیز ممکن است تعدادی بیت گم شوند.در نتیجه به مرور شاهد خطاهای تجمعی خواهیم بود. به همین دلیل نیاز به استفاده مکرر از intra-فریمها در توالی ارسالی میباشد. intra-فریمها با I و inter-فریمها با P[26] نشان داده میشود.
میتوان یک فریم دیگر را در نظر گرفت که هم بر اساس فریم قبلی و هم بر اساس فریم بعدی کد میشود. کند بودن کدگذار[۲۷] اهمیت چندانی ندارد ولی کدگشا[۲۸] باید سریع باشد تا بتواند اطلاعات مورد نیاز برای پخش را به موقع آماده نماید. معمولاً کدگشاها دارای چندین مدار هستند که به طور همزمان در حال کدگشایی از چندین فریم هستند. فرض کنید کدگذار فریم ۲ را بر اساس هردو فریم ۱ و ۳ کد کرده و به ترتیب ۱ و ۳ و ۲ در جریان فشرده شده مینویسد. کدگشا آنها را به ترتیب خوانده، فریمهای ۱ و ۳ را کدگشایی می کند، در نتیجه قادر خواهد بود فریم ۲ را به طور همزمان بر اساس فریم ۱ یا ۳ کد گشایی نماید. به فریمی که بر اساس فریم قبلی و بعدی خود کد میشود، B[29] گفته میشود. به طور خلاصه ۳ نوع فریم داریم. I-فریم که به صورت مستقل کد میشود. P-فریم که بر اساس فریم قبلی I یا P کد میشود و B-فریم که بر اساس فریم قبلی و بعدی I یا P کد میشود. شکل ۲‑۲-(الف) یک نمونه از توالی فریمها را به ترتیبی که کدگذار تولید میکند نشان میدهد. شکل ۲‑۲-(ب) توالی همین فریمها به ترتیبی که کدگشا نمایش میدهد را نشان میدهد. ]۳۶[
H.261
استاندارد H.261 یکی از پایهایترین استانداردهای فشردهسازی ویدئو است زیرا اصول فشردهسازی بر اساس حرکت اشیا به عنوان اصلی اساسی در استانداردهای فشردهسازی بعدی مورد استفاده قرار میگیرد. H.261 ابتدا توسط CCITT[30] در سال ۱۹۸۸ توسعه داده شد و سپس توسط ITU-T[31] نهایی گشت. این استاندارد برای ویدئوفون[۳۲]، ویدئوکنفرانس و دیگر سرویسهای صوتی تصویری بر روی خطوط تلفن ISDN طراحی شد. در جدول ۲‑۳ فرمتهایی که توسط H.261 پشتیبانی میشوند آورده شده است.
شکل ۲‑۲ (الف) ترتیب کدشده (ب) ترتیب نمایش ]۳۷[
(ب)
زمان
(الف)
فرمت ویدئو |
وضوح تصویر لومیننس |
وضوح تصویر کرومیننس |
نرخ ارسال (Mbps) |
پشتیبانی H.261 |
QCIF |
۱۷۶ × ۱۴۴ |
۸۸ × ۷۲ |
۹٫۱ |
نیاز دارد |
CIF |
۳۵۲ × ۲۸۸ |
۱۷۶ × ۱۴۴ |
۳۶٫۵ |
اختیاری |
جدول ۲‑۳ فرمتهای پشتیبانی شده توسط H.261 ]36[
نمونهبرداری جزئی کروما در H.261 عبارتست از ۴:۲:۰٫ شکل ۲‑۳ یک توالی نمونه H.261 از فریمها را نشان میدهد.
شکل ۲‑۳ توالی فریم در H.261 ]36[
نگاهی به فرمت جریان داده در H.261
جریان داده در H.261 شامل ۴ لایه سلسله مراتبی میشود: تصویر[۳۳]، GOB[34]، ماکروبلوک[۳۵] و بلوک[۳۶] (شکل ۲‑۴). ]۳۶[
شکل ۲‑۴ فرمت جریان داده در H.261 ]36[
فریم تصویر H.261
لایه بلوک
لایه ماکروبلوک
لایه GOP
لایه تصویر
- لایه تصویر.
PSC[37] مشخص کننده مرز بین تصاویر است. TR[38] یک برچسب زمانی برای تصویر ارائه میدهد. از آنجا که ممکن است بخاطر استفاده از نمونهبرداری جزئی، بعضی از تصاویر ارسال نشوند، برای هماهنگ نگهداشتن صوت و تصویر استفاده از TR اجباری است. PType[39] نیز نوع تصویر را مشخص میکند. مثلاً تصویر CIF است یا QCIF.
- لایه GOB.
تصاویر H.261 به نواحیای شامل ۳ × ۱۱ ماکروبلوک تقسیم میشوند (به عنوان مثال نواحی ۴۸ × ۱۷۸ پیکسل در تصاویر لومیننس). هرکدام از این نواحی GOB نامیده میشوند. شکل ۲‑۵ آرایش GOB ها را در یک تصویر CIF و QCIF نشان میدهد. هرکدام از GOB ها شامل GBSC[40] و GN[41] میشود. این مقادیر برای هماهنگ نگهداشتن جریان استفاده میشود. GQuant کوانتیزر استفاده شده در GOB را مشخص میکند.
- لایه ماکروبلوک.
هر کدام از ماکروبلوکها آدرس مخصوص به خود را دارند که نشان دهندهی موقعیت آنها در GOB میباشد. همچنین شامل کوانتیزر (MQuant) و ۶ بلوک تصویر ۸ × ۸ میشوند. نوع[۴۲] نشان دهندهی نوع فریم (Intra- یا Inter-) است. MVD[43] از تفاضل بلوک اصلی و بلوک حاضر بدست میآید. CBP[44] نیز نشان دهندهی میزان تطبیق ماکروبلوک با مقدار تخمینی است.
- لایه بلوک.
به ازای هر بلوک ۸ × ۸ جریان بیتها با مقدار DC آغاز شده و با جفت طول-صفرها (Run) و زیرمجموعه غیرصفر (Level) و در نهایت EOB[45] همراه میشود.
دامنه Run [0, 63] است و مقدار Level مقادیر کوانتیرز را تحت تأثیر قرار میدهد و دامنه آن بین [-۱۲۷ , ۱۲۷] به جز صفر میباشد.
QCIF
|
GOB 1 |
GOB 0 |
GOB 3 |
GOB 2 |
GOB 5 |
GOB 4 |
GOB 7 |
GOB 6 |
GOB 9 |
GOB 8 |
GOB 11 |
GOB 10 |
|
شکل ۲‑۵ آرایش GOB ها در H.261 ]36[
H.263
یک استاندارد بهبود یافته کدگذاری ویدئو برای ویدئوکنفرانس و دیگر سرویسهای صوتی تصویری بر روی شبکههای PSTN میباشد. هدف از این استاندارد ارتباطات با نرخ پایین داده (کمتر از ۶۴ kbps) است. این استاندارد توسط ITU-T در سال ۱۹۹۵ توسعه داده شد. همچون H.261، H.263 نیز از کدگذاری پیشبینی برای inter-frame ها جهت کاهش تکرار موقتی و کدگذاری انتقالی برای بقیه سیگنالها جهت کاهش تکرار فضایی، استفاده میکند.
H.263 علاوه بر CIF و QCIF، از Sub-QCIF، ۴CIF و ۱۶CIF پشتیبانی میکند. جدول ۲‑۴ فرمتهایی که توسط H.263 پشتیبانی میشوند را به طور خلاصه نشان میدهد. بدون اعمال فشردهسازی و با در نظر گرفتن ۳۰ fps، نرخ داده برای ویدئوهای کیفیت بالا (مثلاً ۱۶CIF) میتواند بسیار بالا باشد (> 500 Mbps). ولی این استاندارد برای ویدئوهای فشرده شده، بیشترین نرخ داده به ازای هر تصویر (BPPmaxKb) با واحد ۱۰۲۴ bit تعریف میکند که باعث میشود در عمل نرخ داده پایین برای ویدئوهای فشرده شده H.263 حاصل شود.
تفاوت دیگر H.263 و H.261 این است که در H.263، GOB ها دارای اندازه ثابت نیستند و همیشه از مرز چپ تصویر شروع و در مرز راست آن خاتمه مییابند. همانطور که در شکل ۲‑۶ نشان داده شده، هر تصویر QCIF مشتمل از GOB و هر GOB، ۱ × ۱۱ مگابایت (۱۶ × ۱۷۶ پیکسل) میباشد. در حالی که هر تصویر ۴CIF از ۱۸ GOB تشکیل شده و هر GOB 2 × ۴۴ مگابایت (۲ × ۷۰۴ پیکسل) میباشد.
فرمت ویدئو |
وضوح تصویر لومیننس |
وضوح تصویر کرومیننس |
نرخ ارسال (Mbps)
فشرده نشده
|
نرخ ارسال (Kbps)
فشرده شده
|
Sub-QCIF |
۱۲۸ × ۹۶ |
۶۴ × ۴۸ |
۴٫۴ |
۶۴ |
QCIF |
۱۷۴ × ۱۴۴ |
۸۸ × ۷۲ |
۹٫۱ |
۶۴ |
CIF |
۳۵۲ × ۲۸۸ |
۱۷۶ × ۱۴۴ |
۳۶٫۵ |
۲۵۶ |
۴CIF |
۷۰۴ × ۵۷۶ |
۳۵۲ × ۲۸۸ |
۱۴۶٫۰ |
۵۱۲ |
۱۶CIF |
۱۴۰۸ × ۱۱۵۲ |
۷۰۴ × ۵۷۶ |
۵۸۳٫۹ |
۱۰۲۴ |
جدول ۲‑۴ فرمتهای ویدئویی که توسط H.263 پشتیبانی میشوند. ]۳۶[
شکل ۲‑۶ آرایش GOB ها در تصاویر H.263 ]36[
H.264
سالهای آخر قرن ۲۰ شاهد پیشرفتهای چشمگیری در زمینه توان محاسباتی برنامههای ویدئویی و شبکههای پشتیبانی کننده از ویدئو، بود. در نتیجه نیاز به کدک[۴۶]های پیشرفته ویدئو علاوه بر استانداردهای موجود H.261، H.262 و H.263 احساس میشد. دو گروه پیشرو در این زمینه یعنی ITU-T و ISO-MPEG پیشنهاد دادند که استاندارد جدید شامل موارد زیر باشد:
- افزایش کارایی فشردهسازی
- پشتیبانی از کاربردهای خاص ویدئویی نظیر ویدئوکنفرانس، ذخیره DVD، پخش همگانی ویدئو و جریانسازی بر روی اینترنت[۴۷]
- قابلیت اطمینان بیشتر
در سال ۲۰۰۱ کمپانی ITU دو پروژه را آغاز نمود. اولین پروژه، کوتاه مدت بوده و بدنبال اضافه کردن ویژگیهایی به استاندارد H.263 بود. این پروژه به نسخه ۲ استاندارد H.263 منجر شد. پروژه بعدی، بلندمدت بوده و به منظور توسعه استانداردی جدید برای فشردهسازی کارای ویدئو، صورت پذیرفت. استاندارد H.264 که حاصل این پروژه است، در ماه می ۲۰۰۳ بوجود آمد و در می ۲۰۰۴ نهایی و ثبت شد. این استاندارد با نامهای دیگری نیز شناخته میشود. از جمله قسمت ۱۰ استاندارد MPEG-4.
کامپوننتهای اصلی H.264 (پیشبینی[۴۸]، انتقال[۴۹]، کوانتیزیشن[۵۰] و کدگذاری انتروپی[۵۱]) تفاوت زیادی با استانداردهای قبلی ندارد. چیزی که H.264 را تبدیل به استانداردهای جدید و مستقل کرده است، جزئیات کامپوننتها و همچنین اضافه شدن کامپوننت جدیدی به نام فیلتر است. بخاطر شباهت اصل موضوع به موضوعات قبلی و تخصصیتر شدن بحث در زمینه چندرسانهای از بیان جزئیات بیشتر صرفنظر میکنیم.]۳۷[
شبکههای حسگر بیسیم
مقدمه
پیشرفتهای اخیر در زمینه الکترونیک و مخابرات بیسیم توانایی طراحی و ساخت حسگرهایی را با توان مصرفی پایین، اندازه کوچک، قیمت مناسب و کاربریهای گوناگون داده است.
این حسگرهای کوچک که توانایی انجام اعمالی چون دریافت اطلاعات مختلف محیطی (بر اساس نوع حسگر)، پردازش و ارسال آن اطلاعات را دارند، موجب پیدایش ایدهای برای ایجاد و گسترش شبکههای موسوم به شبکههای حسگر بیسیم شبکه حسگر بیسیم شدهاند.
شبکههای حسگر بیسیم از تعدادی گرههای حسگر کوچک که توانایی انجام اعمالی چون دریافت اطلاعات مختلف محیطی بر اساس نوع حسگر، پردازش و ارسال آن اطلاعات را دارند تشکیل شدهاند. در اینجا ابتدا تعریفی از شبکههای حسگر بیسیم و ساختار کلی شبکه حسگر ارائه میشود. ساختمان گرههای شبکه تشریح میشود و کاربردهای شبکه حسگر و چالشهای موجود بررسی میگردد.
در شبکههای حسگر بیسیم محدودیت اصلی برای طراحی پروتکلها، انرژی محدود حسگرها میباشد. ]۴۱[
نگاهی به شبکههای حسگر بیسیم
در این قسمت قصد داریم به یکی از این شبکههای مخابراتی بپردازیم که با کاربردهای جالب و خاص خود، توجه متخصصان را به خود جلب کرده است، شبکههای حسگر بیسیم. در این قسمت بر آنیم تا خوانندگان را به طور اجمالی با چیستی، ویژگیها و فاکتورهای اساسی طراحی در شبکههای حسگر بیسیم آشنا کنیم.
یک شبکه حسگر متشکل از تعداد زیادی گرههای حسگری است که در یک محیط به طور گسترده پخش شده و به جمعآوری اطلاعات از محیط میپردازند. لزوماً مکان قرار گرفتن گرههای حسگری، از قبل تعیین شده و مشخص نیست. چنین خصوصیتی این امکان را فراهم میآورد که بتوانیم آنها را در مکانهای خطرناک و یا غیرقابل دسترس رها کنیم.
از طرف دیگر این بدان معنی است که پروتکلها و الگوریتمهای شبکههای حسگری باید دارای تواناییهای خود ساماندهی باشند. دیگر خصوصیتهای منحصر به فرد شبکههای حسگری، توانایی همکاری و هماهنگی بین گرههای حسگری است. هر گره حسگر روی برد خود دارای یک پردازشگر است و به جای فرستادن تمامی اطلاعات خام به مرکز یا به گرهای که مسئول پردازش و نتیجه گیری اطلاعات است، ابتدا خود یک سری پردازشهای اولیه و ساده را روی اطلاعاتی که به دست آورده است، انجام میدهد و سپس داده های نیمه پردازش شده را ارسال میکند.
با اینکه هر حسگر به تنهایی توانایی ناچیزی دارد، ترکیب صدها حسگر کوچک امکانات جدیدی را عرضه میکند. در واقع قدرت شبکههای حسگر بیسیم در توانایی بهکارگیری تعداد زیادی گره کوچک است که خود قادرند سرهم و سازماندهی شوند و در موارد متعددی چون مسیریابی هم زمان، نظارت بر شرایط محیطی، نظارت بر سلامت ساختارها یا تجهیزات یک سیستم به کار گرفته شوند.
گستره کاربری شبکههای حسگر بیسیم بسیار وسیع بوده و از کاربردهای کشاورزی، پزشکی و صنعتی تا کاربردهای نظامی را شامل میشود. به عنوان مثال یکی از متداولترین کاربردهای این تکنولوژی، نظارت بر یک محیط دور از دسترس است. مثلاً نشتی یک کارخانه شیمیایی در محیط وسیع کارخانه میتواند توسط صدها حسگر که به طور خودکار یک شبکه بیسیم را تشکیل میدهند، نظارت شده و در هنگام بروز نشت شیمیایی به سرعت به مرکز اطلاع داده شود.
در این سیستمها بر خلاف سیستمهای سیمی قدیمی، از یک سو هزینههای پیکربندی و آرایش شبکه کاسته میشود از سوی دیگر به جای نصب هزاران متر سیم فقط باید دستگاههای کوچکی را که تقریباً به اندازه یک سکه هستند را در نقاط مورد نظر قرار داد. شبکه به سادگی با اضافه کردن چند گره گسترش مییابد و نیازی به طراحی پیکربندی پیچیده نیست.
با تکیه بر پیشرفتهای تکنولوژی در سالهای اخیر امکان ایجاد و پیادهسازی حسگرهای کم هزینه و کوچک از نظر تکنیکی و اقتصادی فراهم شده است. حسگرها بر حسب محیط پیرامون خود شرایط محدود و مشخصی را اندازهگیری کرده و آنها را به سیگنالهای الکتریکی تبدیل میکنند. شبکه کردن تعداد زیادی حسگر با قابلیتهای بالا عملیات خودکاری را که میتواند نیاز برخی کاربردها باشد امکانپذیر میکند. یک شبکه حسگر بیسیم شامل صدها یا هزاران گره از حسگرهای بالا میباشد.
این حسگرها توانایی ارتباط برقرار کردن با یکدیگر یا به طور مستقیم به یک ایستگاه پایهی[۵۲] (BS) خارجی را دارند. تعداد بیشتر حسگرها امکان حس کردن از منطقهی جغرافیایی بزرگتر، با دقت بالاتر را به ما خواهد داد. به طور کلی هر گره حسگر شامل بخشهای حس کردن، پردازش، انتقال، حرکت، سیستم موقعیتیابی و باطری که بعضی از آنها در برخی کاربردها میتواند اختیاری باشد خواهد بود. همین شکل معماری ارتباطی یک شبکه حسگر بیسیم را هم نشان میدهد. گرههای حسگر معمولاً در یک محدودهی حسی پراکنده هستند. محدودهی حسی به منطقهای گفته میشود که گرههای حسگر باید از آن منطقه اطلاعات جمع کنند.
گرههای حسگر بین خودشان همکاریهای لازم را انجام میدهند تا جایی که امکان دارد اطلاعات با کیفیت بالاتری را در مورد محیط فیزیکی تولید کنند. هر گره حسگر پایهی تصمیماتش را بر اساس مأموریتش، اطلاعاتی که هم اکنون دارد و دانش از منابع انرژی، ارتباطی و محاسباتی میگذارد. هرکدام از این گرههای حسگر پراکنده در محیط قابلیت جمع آوری و مسیریابی داده به حسگرهای دیگر یا به یک ایستگاه پایهی بیرونی را دارند.
ایستگاه پایه میتواند یک گره ثابت باشد یا متحرک که قابلیت ارتباط دادن شبکه حسگر را با یک شبکهی ارتباطی بیرونی دارد. این شبکهی خارجی میتواند اینترنت باشد و یک کاربر که به دادههای گزارش داده شده دسترسی داشته باشد.
شبکه کردن گرههای حسگر خودکار میتواند تأثیرات عمیقی روی کارایی بسیاری از کاربردهای نظامی و عمرانی داشته باشد. به عنوان مثال تصویر کردن یک منطقهی هدف، کشف نفوذ دشمن، نظارت بر آب و هوا، دیده بانی امنیتی و تاکتیکی، محاسبات توزیع شده، کشف شرایط محدود شده مثل حرکت، صدا، نور و کنترل انبارداری و مدیریت بحران.
آرایش یک شبکهی حسگر در هر یک از این کاربردها میتواند کاملاً متفاوت باشد. به عنوان مثال در مدیریت بحران تعداد زیادی حسگر از یک بالگرد میتوانند به سمت پایین پرتاب شوند.
شبکهبندی چنین حسگرهایی با مکانیابی بازماندهها، پیدا کردن مناطق ریسکی و آگاهسازی تیم نجات از کل وضعیت میتواند به عملیات نجات کمک کند. در سالهای اخیر تحقیقات بیشتر روی توانایی همکاری بین حسگرها در جمع آوری دادهها و پردازش در همکاری و مدیریت معطوف بودهاند. به هر حال گرههای حسگر از نظر ذخیره انرژی و پهنای باند دارای محدودیت هستند. نیاز به تکنیکهای ابداعی که بتواند ناکارآمدی محدودیت انرژی را کم کند و طول عمر شبکه را افزایش بدهد به شدت حس میشود. هنگامی که دردسر آرایش مقدار بسیار زیادی گره حسگر اضافه شود، چالشهای طراحی و مدیریت شبکههای حسگر بیسیم را افزایش میدهد و ضرورت آگاهی از انرژی در تمام لایههای شبکه را بیش از پیش ایجاب میکند. به عنوان مثال در لایهی شبکه دلخواه این است که کشف مسیر و باز پخش داده از گرههای حسگر به BS از نظر انرژی بهینه باشند.
تکنیکهای ابداعی که بتواند ناکارآمدی محدودیت انرژی را کم کند و طول عمر شبکه را افزایش بدهد به شدت حس میشود. هنگامی که دردسر آرایش مقدار بسیار زیادی گره حسگر اضافه شود، چالشهای طراحی و مدیریت شبکههای حسگر بیسیم را افزایش میدهد و ضرورت آگاهی از انرژی در تمام لایههای شبکه را بیش از پیش ایجاب میکند. به عنوان مثال در لایهی شبکه دلخواه این است که کشف مسیر و باز پخش داده از گرههای حسگر به BS از نظر انرژی بهینه باشند.]۴۱[
تاریخچه شبکههای حسگر
اگرچه تاریخچه شبکههای حسگر را به دوران جنگ سرد و ایده اولیه آن را به طراحان نظامی صنایع دفاع آمریکا نسبت میدهند ولی این ایده میتوانسته در ذهن طراحان رباتهای متحرک مستقل یا حتی طراحان شبکههای بیسیم موبایل نیز شکل گرفته باشد.
ویژگیها
وجود برخی ویژگیها در شبکه حسگر انداز، آن را از سایر شبکههای سنتی و بیسیم متمایز میکند. از آن جمله عبارتند از:
- تنگناهای سختافزاری شامل محدودیتهای اندازه فیزیکی، منبع انرژی، قدرت پردازش، ظرفیت حافظه
- تعداد بسیار زیاد گرهها
- چگالی بالا در توزیع گرهها در ناحیه عملیاتی
- وجود استعداد خرابی در گرهها
- تغییرات توپولوژی به صورت پویا و احیاناً متناوب
- استفاده از روش پخش همگانی در ارتباط بین گرهها در مقابل ارتباط نقطه به نقطه
داده محور بودن شبکه به این معنی که گرهها کد شناسایی ندارند.
کاربرد شبکههای حسگر بیسیم
کشاورزی دقیق
استفاده از شبکههای حسگر بیسیم در کشاورزی اجازه میدهد آبیاری به طور دقیق انجام شود و بارور کردن خاک به وسیله قرار دادن حسگرها در داخل خاک انجام میشود. برای این کار تعداد حسگرهای نسبتاً کمی نیاز است تقریباً یکسان سود در هر صد متر مربع. به همین نحو، برای کنترل آفت در زمین کشاورزی میتوانیم از این شبکه استفاده کنیم. همچنین، پرورش چارپایان اهلی میتوانند از این شبکهها بهره ببرند با قرار دادن یک حسگر در روی هر گاو یا خوک که وضعیت سلامتی حیوان را (به وسیله دمای بدن و …) کنترل میکند و تولید یک پیام هشدار اگر مقدار علایم حیاتی از مقدار آستانه تجاوز کند.
مراقبت بهداشتی و پزشکی
نصب حسگرها بر روی بدن بیماران جهت کنترل علائم حیاتی آنها زمانیکه نیاز هست این بیماران برای یک مدت زمان زیادی تحت کنترل باشند و راهنمایی بیماران برای مصرف دارو (حسگرهای جاسازی شده در بستههای دارو تا زمانی که یک بیمار دارو را به صورت اشتباه مصرف کرد یک پیام هشدار ایجاد کند).
کنترل محیط
شبکه های حسگر بیسیم میتوانند برای کنترل و نظارت بر محیط بکار بروند. برای نمونه میتوانند برای کنترل مواد آلاینده در محیطهایی که زبالهها دفع میشوند بکار بروند. نمونه دیگر، نظارت بر فرسایش خاک در یک محیط است. یک مثال دیگر میتواند برای شمارش تعداد گیاهان و حیواناتی که در یک مکان خاص زندگی میکنند، به کار رود.
کاربردهای نظامی
شبکه های حسگر بیسیم میتوانند به عنوان بخش مهمی از سیستمهای ارتباطی، نظارتی، ناوبری، هوشمند و پردازش نظامی مورد استفاده قرار گیرند. گاهی اوقات در این شبکهها گرهها با فرستنده و گیرندههای ماهوارهای جهانی GPS همراه میشوند که در موقعیتیابی دقیق مناطق جنگی مورد استفاده واقع میشوند.]۴۱[
ویژگیهای عمومی یک شبکه حسگر
علاوه بر نکاتی که تا کنون درباره شبکههای حسگر به عنوان مقدمه آشنایی با این فناوری بیان کردیم، این شبکهها دارای یک سری ویژگیهای عمومی نیز هستند. مهمترین این ویژگیها عبارت است از:
۱) بر خلاف شبکههای بیسیم سنتی، همه گرهها در شبکههای حسگر بیسیم نیازی به برقراری ارتباط مستقیم با نزدیکترین برج کنترل قدرت یا ایستگاه پایه ندارند، بلکه حسگرها به خوشههایی (سلولهایی) تقسیم میشوند که هر خوشه (سلول) یک سرگروه خوشه موسوم به والد[۵۳] انتخاب میکند.
این سرگروهها وظیفه جمع آوری اطلاعات را بر عهده دارند. جمع آوری اطلاعات به منظور کاهش اطلاعات ارسالی از گرهها به ایستگاه پایه و در نتیجه بهبود بازده انرژی شبکه انجام میشود. البته چگونگی انتخاب سرگروه خود بحثی تخصصی است که در تئوری شبکههای حسگر بیسیم مفصلاً مورد بحث قرار میگیرد.
۲) پروتکلهای شبکه ای همتا به همتا یک سری ارتباطات مش[۵۴] مانند را جهت انتقال اطلاعات بین هزاران دستگاه کوچک با بهره گرفتن از روش چند جهشی ایجاد میکنند. معماری انطباق پذیر مش، قابلیت تطبیق با گرههای جدید جهت پوشش دادن یک ناحیه جغرافیایی بزرگتر را دارا است. علاوه بر این، سیستم میتواند به طور خودکار از دست دادن یک گره یا حتی چند گره را جبران کند.
۳) هر حسگر موجود در شبکه دارای یک رنج حسگری است که به نقاط موجود در آن رنج احاطه کامل دارد. یکی از اهداف شبکههای حسگر این است که هر محل در فضای مورد نظر بایستی حداقل در رنج حسگری یک گره قرار گیرد تا شبکه قابلیت پوشش همه منطقه مورد نظر را داشته باشد.
یک حسگر با شعاع حسگری r را میتوان با یک دیسک با شعاع r مدل کرد. این دیسک نقاطی را که درون این شعاع قرار میگیرند، تحت پوشش قرار میدهد. بدیهی است که برای تحت پوشش قرار دادن کل منطقه این دیسکها باید کل نقاط منطقه را بپوشانند.
با این که توجه زیادی به پوشش کامل منطقه توسط حسگرها میشود، احتمال دارد نقاطی تحت پوشش هیچ حسگری قرار نگیرد. این نقاط تحت عنوان حفرههای پوششی نامیده میشوند. اگر تعدادی حسگر به علاوه یک منطقه هدف داشته باشیم، هر نقطه در منطقه باید طوری توسط حداقل n حسگر پوشش داده شود که هیچ حفره پوششی ایجاد نشود. این موضوع لازم به ذکر است که مسئله حفره پوششی بسته به نوع کاربرد مطرح میگردد. در برخی کاربردها احتیاج است که درجه بالایی از پوشش جهت داشتن دقت بیشتر داشته باشیم.
ساختار ارتباطی شبکههای حسگر
گرههای حسگری در یک منطقه پراکنده میشوند. همانطور که قبلاً هم اشاره کردیم گرههای حسگری دارای توانایی خود ساماندهی هستند. هر کدام از این گرههای پخش شده دارای توانایی جمع کردن اطلاعات و ارسال آنها به پایانهای موسوم به چاهک است. این اطلاعات از یک مسیر چند مرحله ای که زیرساخت مشخصی ندارد به چاهک فرستاده میشوند و چاهک میتواند توسط پیوند ماهواره یا اینترنت با گره مدیر وظیفه[۵۵] ارتباط برقرار کند.
فاکتورهای موثر بر طراحی شبکه
طراحی یک شبکه تحت تأثیر فاکتورهای متعددی است. این فاکتورها عبارتند از: تحمل خرابی، قابلیت گسترش، هزینه تولید، محیط کار، توپولوژی شبکه حسگری، محدودیتهای سختافزاری، محیط انتقال و مصرف توان که در زیر به شرح آنها میپردازیم.
فاکتورهای بیان شده در بالا از اهمیت فراوانی در طراحی پروتکلهای شبکههای حسگر برخوردار هستند؛ در ادامه درباره هر یک از آنها توضیحات مختصری ارائه میکنیم.
تحمل خرابی
برخی از گرههای حسگری ممکن است از کار بیفتند یا به دلیل پایان توانشان، عمر آنها تمام شود، یا آسیب فیزیکی ببینند و از محیط تأثیر بگیرند. از کار افتادن گرههای حسگری نباید تأثیری روی کارکرد عمومی شبکه داشته باشد. بنابراین تحمل خرابی را “توانایی برقرار نگهداشتن عملیات شبکه حسگر علی رغم از کار افتادن برخی از گرهها” تعریف میکنیم. در واقع یک شبکه حسگر خوب با از کار افتادن تعدادی از گرههای حسگری، به سرعت خود را با شرایط جدید (تعداد حسگرهای کمتر) وفق داده و کار خود را انجام میدهد.
قابلیت گسترش
تعداد گرههای حسگری که برای مطالعه یک پدیده مورد استفاده قرار میگیرند، ممکن است در حدود صدها و یا هزاران گره باشد. مسلماً تعداد گرهها به کاربرد و دقت مورد نظر بستگی دارد؛ به طوری که در بعضی موارد این تعداد ممکن است به میلیونها عدد نیز برسد. یک شبکه باید طوری طراحی شود که بتواند چگالی بالای گرههای حسگری را نیز تحقق بخشد. این چگالی میتواند از چند گره تا چند صد گره در یک منطقه که ممکن است کمتر از ۱۰ متر قطر داشته باشد، تغییر کند.
هزینه تولید
از آنجایی که شبکههای حسگری از تعداد زیادی گرههای حسگری تشکیل شدهاند، هزینه یک گره در برآورد کردن هزینه کل شبکه بسیار مهم است. اگر هزینه یک شبکه حسگری گرانتر از هزینه استفاده از شبکههای مشابه قدیمی باشد، در بسیاری موارد استفاده از آن مقرون به صرفه نیست. در نتیجه قیمت هر گره حسگری تا حد ممکن باید پایین نگه داشته شود.
ویژگیهای سختافزاری
یک گره حسگری از ۴ بخش عمده تشکیل شده است:
۱) واحد حسگر
۲) واحد پردازش
۳) واحد دریافت و ارسال
۴) واحد توان.
البته بسته به کاربرد، شبکههای حسگر میتوانند شامل اجزای دیگری چون: سیستم پیدا کردن مکان جغرافیایی، مولد توان و بخش مربوط به حرکت در گره های متحرک نیز باشند.
بخشهای اصلی هر حسگر
در این بخش اندکی درباره بخشهای اصلی هر حسگر توضیح میدهیم.
۱) واحدهای حسگری معمولاً از دو بخش حسگرها و مبدلهای آنالوگ به دیجیتال تشکیل میشوند. حسگرها بر اساس دریافتهایشان از پدیده مورد مطالعه، سیگنالهای آنالوگ را تولید میکنند. سپس این سیگنالها توسط مبدل آنالوگ به دیجیتال به سیگنال دیجیتال تبدیل شده و به بخش پردازش سپرده میشوند.
۲) بخش پردازش که معمولاً با یک حافظه کوچک همراه است، همکاری گره با گرههای دیگر را در جهت انجام وظایف محول شده به هر حسگر مدیریت میکند.
۳) بخش فرستنده و گیرنده، گره را به شبکه متصل میکند. بخش توان نیز یکی از مهمترین بخشهای یک گره حسگری است. توان مورد نیاز ممکن است با بخشهای جمع آوری توان، مانند سلولهای خورشیدی تأمین شود. به موازات تولید توان، تلاش برای کاهش مصرف توان در شبکه بسیار مهم است. صرفهجویی در مصرف توان در حالت کلی از دو طریق ممکن است. یک راه ساخت حسگرهایی با مصرف انرژی کمتر و راه دیگر به کار بردن روشهای مدیریت توان در طراحی نرمافزاری شبکه است. مثلاً ارسال TDMA از نظر مصرف توان مناسب است؛ زیرا در فاصله هر شیار زمانی که اطلاعات هر حسگر ارسال نمیشود، حسگر در حالت انتظار که مصرف انرژی بسیار کمی دارد، قرار میگیرد.
روشهای مناسب پیکربندی هندسی شبکه و یا انتخاب والد میتواند مصرف انرژی را کاهش دهد. همانطور که گفتیم هر حسگر ممکن است بخشهای دیگری را نیز که به کاربرد خاص شبکه مربوط است دارا باشد. به عنوان نمونه، اکثر تکنیکهای مسیریابی و وظایف حسگری نیازمند دانش دقیقی از مکان یابی جغرافیایی است. در نتیجه متداول است که گرههای حسگری دارای سیستم موقعیتیابی نیز باشند. علاوه بر این در برخی موارد گره حسگری لازم است که متحرک باشد، لذا در مواقع لزوم بخشی نیز برای حرکت در نظر گرفته میشود.
تمام این زیربخشها باید در یک قالب کوچک قرار بگیرند. اندازه مورد نیاز ممکن است حتی کوچکتر از یک سانتی متر مکعب باشد. علاوه بر اندازه، محدودیتهای فراوان دیگری نیز برای گرههای حسگری وجود دارد؛ این گرهها باید توان بسیار کمی مصرف کنند، در یک محیط با چگالی بالا (از نظر تعداد گرهها) کار کنند، قیمت تمام شده آنها ارزان باشد، قابل رها کردن در محیط و همچنین خودکار باشند. بدون وقفه کار کنند و قابلیت سازگاری با محیط داشته باشند.]۴۱[
شبکههای حسگر چندرسانهای بیسیم و سیستمهای نظارتی بیسیم
امروزه یکپارچهسازی تکنولوژی شبکههای حسگر بیسیم کم-توان به همراه سختافزارهای ارزانقیمتی همچون دوربینهای CMOS و میکروفن، امکان پیادهسازی شبکههایی به نام شبکههای حسگر چندرسانهای بیسیم[۵۶] را فراهم نموده است. شبکههای چندرسانهای بیسیم مجموعهای از دستگاههای بیسیم است که هر دستگاه قادر به حس کردن و ارسال ویدئو، صوت، تصاویر و دادههای عددی میباشد. یکی از اهداف این تکنولوژی این است که کاربران تنها با ارسال یک درخواست ساده، قادر به دسترسی از راه دور به چندین شبکه حسگر چندرسانهای بیسیم متصل به اینترنت باشند.
ویژگیهای شبکه حسگر چندرسانهای بیسیم موجب ناسازگار بودن این شبکه با شبکه اینترنت سنتی و حتی با شبکههای حسگر بیسیم دادهای میشود. بیشترین نیاز بالقوه برای کاربردهای شبکههای حسگر چندرسانهای بیسیم، نیاز به طراحی مجدد شبکههای حسگر بیسیم است طوری که امکان انتقال محتویات چندرسانهای را با کیفیت سرویس از پیش تعیین شده فراهم نماید. به عنوان مثال در شبکههای حسگر بیسیم کمینه کردن مصرف انرژی مهمترین هدف تحقیقات بوده، در حالی که مکانیسمی جهت انتقال مؤثر و فراهم نمودن کیفیت خدمات مطلوب و ارضا نیازهای مربوط به پارامترهایی نظیر تأخیر و jitter، جزو اولویتهای مهم نمیباشند. انتقال محتویات چندرسانهای در شبکههای حسگر منجر به چالشهای جدیدی در طراحی این سیستمهای خاص میشوند.]۳۸[
شبکههای حسگر چندرسانهای بیسیم فقط کاربردهایی همچون تعقیب کردن، اتوماسیون خانگی و نظارت[۵۷] محیطی را ارتقا نمیدهد، بلکه چندین کاربرد جدید همچون موارد ذیل، را ارائه میدهد:
- شبکههای حسگر نظارتی چندرسانهای[۵۸].
شبکه حسگر ویدئو بیسیم ترکیبی از دوربینهای کوچک دارای باطری و متصل است که هرکدام به همراه یک دریافت کننده کم توان بیسیم که قابلیت پردازش، ارسال و دریافت دادهها را دارد، بسته بندی شده است. حسگرهای ویدئو و صوت برای ارتقا و تکمیل سیستمهای نظارتی موجود در مقابل جرائم و حملات تروریستی استفاده خواهند شد. شبکههای مقیاس-بزرگ حسگرهای ویدئو، توان دستگاههای اجرای قانون و نظارت بر مناطق، اتفاقات عمومی، ویژگیهای خصوصی و مرزها را گسترش میدهد.
- ذخیره فعالیتهای مرتبط بالقوه.
حسگرهای چندرسانهای میتوانند فعالیتهای مرتبط بالقوه (همچون دزدی، تصادفات، اتفاقات ترافیکی و …) را استنتاج و ذخیره کرده و به مرکز منتقل کنند.
- پیشگیری از ترافیک و سیستمهای کنترلی.
امکان نظارت بر ترافیک در شهرهای بزرگ و بزرگراهها و ارائه سرویسهای توصیه کننده مسیر برای جلوگیری از ازدحام به وجود خواهد آمد. علاوه بر این، سیستمهای توصیه کننده هوشمند پارک کردن خودرو، امکان نظارت و ردیابی فضاهای قابل پارک را داده و سیستم خودکار توصیه کننده پارک خودرو را فراهم مینمایند. همچنین حسگرهای چندرسانهای میتوانند بر جریان ترافیک وسایل نقلیه در بزرگراهها نظارت کرده و اطلاعاتی نظیر متوسط تعداد خودروها و میانگین سرعت را بدست آورند. حسگرها میتوانند صحنههای تصادف را شناسایی و تصاویر مربوطه را به دستگاههای اجرای قانون، برای تعیین مقصر ارسال کرده و یا آنها را برای تحلیل صحنههای تصادف ذخیره نمایند.
شبکههای حسگر مراقبت پزشکی راه دور برای نظارت دقیق، با بهره گرفتن از شبکههای حسگر چندرسانهای بیسیم یکپارچه شوند. بیمار حسگرهای پزشکی را برای نظارت بر پارامترهایی نظیر دمای بدن، فشار خون، ضربان قلب، ECG و فعالیتهای تنفسی، به همراه دارد. متعاقباً مراکز پزشکی راه دور میتوانند با بهره گرفتن از حسگرهای ویدئو و صوت، حسگرهای مکانیاب و حسگرهای حرکتی، نظارت دقیق و پیشرفتهای بر روی بیماران خود داشته باشند.
- دستیارهای خودکار برای نظارت بر افراد خانواده و افراد مسن.
شبکههای حسگر چندرسانهای میتواند برای نظارت و مطالعه رفتار افراد مسن جهت تعیین دلایل بیماری مورد استفاده قرار گیرد. شبکه حسگر چندرسانهای میتواند شرایط بحرانی را تشخیص داده و سریعاً بیمار را به مراکز سرویسدهی پزشکی راه دور متصل نماید.
پروژه های متعددی برای نظارت بر محیط زیست و جمع آوری داده های صوتی و تصویری از محیط تعریف میشود. برای مثال تاکنون تعداد زیادی از پروژه ها توسط اقیانوسشناسان جهت ارزیابی سواحل شنی تعریف شده است.
- سرویسهای مکانیاب افراد.
محتویات چندرسانهای نظیر ویدئو و تصویر، به همراه تکنیکهای پیشرفته پردازش سیگنال، میتواند برای مکانیابی افراد گمشده و یا شناسایی مجرمان و تروریستها مورد استفاده قرار گیرد.
محتویات چندرسانهای همچون تصویر، دما و یا فشار، میتوانند برای کنترل فرآیندهای بلادرنگ صنعتی مورد استفاده قرار گیرند. برای مثال در کنترل کیفیت فرایند تولید، میتوان از شبکههای حسگر چندرسانهای بیسیم برای یافتن ایرادها و نواقص محصولات نهایی، استفاده کرد. علاوه بر این، در خطوط تولید سیستمهای بینایی ماشین میتوانند جهت و موقعیت قطعات را تشخیص داده و روباتها با بهره گرفتن از این اطلاعات قطعات را بدون مشکل بردارند. ترکیب بینایی ماشین و شبکههای حسگر چندرسانهای بیسیم میتواند موجب ساده شدن و انعطافپذیری سیستمهای بازرسی تصویری، که نیاز به سرعت بالا، بزرگنمایی زیاد و عملیات پیوسته دارند، شود.]۳۸[
همانطور که در ]۱[ مشاهده میشود، شبکههای حسگر چندرسانهای بیسیم افق سیستمهای نظارتی را بر اساس موارد ذیل گسترش خواهد داد:
- گسترش دید[۵۹]. [۶۰]FoV یک دوربین ثابت ساده، یا FoR[61] یک دوربین [۶۲]PTZ محدود است. در عوض با بهره گرفتن از چندین دوربین و حسگر، میتوان نقاط مختلف را تحت پوشش قرار داده و دید کاملتر و صحیحتری از محیط بدست آوریم.
- افزایش دید[۶۳]. تکراری که در نتیجه تعدد دوربینها و تلاقی نقاط تحت پوشش توسط آنها ایجاد میشود، میتواند موجب افزایش درک از محیط شود. دوربینهایی که با یکدیگر تلاقی دارند میتوانند دیدهای مختلفی از یک منطقه یا هدف ارائه دهند، درحالیکه عملیات به هم پیوسته دوربینها میتواند در رفع ابهام وضعیتهای به هم ریخته و شلوغ کمک نماید.
- امکان داشتن دیدهایی با چندین وضوح تصویر. استفاده از چندین دوربین با وضوح تصویر متفاوت در یک نقطه، امکان داشتن تصاویر یک منطقه با چندین وضوح را مهیا میکند. یکی از کاربردهای این ویژگی، شناسایی افراد بر اساس ویژگیهای چهره فرد میباشد.
فصل سوم:
شرایط محیطی مسئله
بسیاری از کاربردهای ذکر شده در فصل قبل نیاز به این دارد که شبکه حسگر چندرسانهای بیسیم محتویات چندرسانهایی خود را با یک حداقل کیفیت منتقل کند. در تحقیقات سنتیای که بر روی شبکه حسگر بیسیم صورت میگرفت، مسائل مربوط به محدودیت انرژی در اولویت بالاتری نسبت به انتقال داده با یک سطح حداقل کیفیت، قرار داشت. از آنجا که ارضا کیفیت با پارامترهای تأخیر و jitter نسبت مستقیم دارد، بررسی این پارامترها موضوع اصلی تحقیقات نبود. چندین عامل اصلی وجود دارد که باعث میشود انتقال محتویات چندرسانهای در شبکههای حسگر بسیار پیچیدهتر شود:
- محدودیت منابع. دستگاههای حسگر از لحاظ باتری، حافظه، ظرفیت پردازش و نرخ داده قابل دستیابی، دارای محدودیت است. در نتیجه استفاده بهینه از این منابع محدود امری حیاتی است.
- ظرفیت متغیر کانال. برخلاف شبکه سیمی که فرض میشود ظرفیت هر کانال ثابت و از پیش تعیین شده است، در شبکههای چند-گامه بیسیم، این ظرفیت بستگی به سطح دریافت گیرنده دارد. ظرفیت و تأخیر موجود در هر پیوند به مکان، پیوستگی متفاوت که ممکن است در طبیعت به صورت انفجاری اتفاق افتد، بستگی دارد و در نتیجه فراهم نمودن کیفیت خدمات را امری پر مخاطره می کند.
- جفت کردن عملیات بین لایهای. در شبکههای بیسیم چند-گامه وابستگی محکمی بین توابع مختلف در لایه های پشته ارتباطی وجود دارد. این وابستگی به دلیل طبیعت یکسان کانال ارتباطی بیسیم است. در نتیجه زمانی که به یک راهحل بهینه برای فراهم نمودن کیفیت خدمات فکر میکنیم نباید با این توابع به صورت جداگانه رفتار کنیم.
- پردازش درون شبکه ای چندرسانهای. پردازش محتویات چندرسانهای معمولاً مسئلهای جدای از مسئلهی طراحی شبکه شناخته میشود، ولی در بعضی حالات همچون کد کردن کانالهایی با منابع به هم پیوسته[۶۴] و جریانسازی سازگار با کانال[۶۵] ]۲[، این موضوع استثنا میباشد. در شبکههای حسگر چندرسانهای بیسیم الگوریتمهای پردازش درون شبکه ای چندرسانهای بر روی داده های خام صورت میگیرد.
برای طراحی مؤثر و انعطافپذیر شبکههای حسگر چندرسانهای بیسیم باید درک کاملی از محدودیت انرژی ارتباطات بیسیم داشته و از تکنیکهای پیشرفته پردازش چندرسانهای در فرایند ارتباط استفاده نمود. مسئلهی حیاتی دیگر، طراحی نرمافزارها و معماری سیستمهای قابل انعطافی است که توانایی پذیرش درخواستها مبنی بر سرویسهای مورد نیاز را داشته باشند.
فاکتورهای تأثیرگذار بر روی طراحی شبکه های حسگر چندرسانهای
شبکههای حسگر چندرسانهای بیسیم از طریق ترکیب و استفاده از پردازش سیگنال و شاخه های متعددی از تئوری کنترل و محاسبه توکار[۶۶] میسر خواهد شد. این تحقیق بین رشتهای سیستم توزیعشدهای از دستگاههای ناهمگون توکاری را که قادر به حس کردن، تعامل و کنترل فیزیکی محیطی میباشند، نتیجه میدهد. فاکتورهای متعددی وجود دارد که بر طراحی شبکه حسگر چندرسانهای بیسیم تأثیرگذارند:
- نیازمندیهای کیفیت خدمات مشخص شده توسط کاربرد[۶۷]
تنوع بسیار زیاد کاربردهای شبکه حسگر چندرسانهای بیسیم، نیازهای متفاوتی را به همراه دارد. علاوه بر حالتهای انتقال داده در شبکههای حسگر چندرسانهای بیسیم، داده های چندرسانهای شامل تصویر لحظهای[۶۸] و جریانسازی محتویات چندرسانهای میشود. از همینرو، زیرساخت محکمی از سختافزارها و الگوریتمهای سطح بالا برای پشتیبانی از انتقال کیفیت خدمات و رفع نیازهای تعیینشده توسط کاربردها، مورد نیاز است.
محتویات چندرسانهای، بخصوص جریان ویدئو، نیاز به پهنای باند بیشتری در مقایسه با شبکههای حسگر بیسیم موجود، دارند. در نتیجه نرخ داده بالا و مصرف توان کم توسط حسگرهای چندرسانهای بیسیم مورد نیاز است.
- تکنیکهای کدگذاری چندرسانهای در منبع.
داده های خام چندرسانهای، برای انتقال نیاز به پهنای باند بیشتری دارند. تکنیکهای سنتی کدگذاری ویدئو که برای ارتباطات بیسیم و سیمی استفاده میشد. بر اساس ایده کمکردن نرخ تولیدشده توسط منبع، استوار است. برای رسیدن به این هدف، کدگذارها از تکنیکهای فشردهسازی intra-frame، برای حذف تکرار در میان فریمهای متوالی، استفاده میکردند. از آنجا که predictive encoding، نیازمند کدگذار، الگوریتمهای قوی پردازش و درنتیجه مصرف توان زیاد، میباشند، برای حسگرهای کمهزینه چندرسانهای مناسب نیستند. البته در ]۳[ نشان داده شده است که میتوان در چارچوبهایی با نام distributed source coding، توازن کدگذار پیچیده و کدگشا ساده را برعکس کرد.
- پردازش درون شبکه ای چندرسانهای.
شبکههای حسگر چندرسانهای بیسیم اجازه اجرای الگوریتمهای پردازش درون شبکه ای چندرسانهای بر روی دادههای خام گرفته شده از محیط میدهد. میتوان بر اساس شرایط، با بهره گرفتن از روشهایی جلوی انتقال داده های اضافی و غیرضروری را گرفت. بعنوان مثال، در برنامه های امنیتی ویدئو[۶۹]، اطلاعات مربوط به صحنههای غیرضروری می تواند در غالب یک عدد فشرده شده و یا حتی ارسال نگردد، در حالی که در برنامه های محیطی، تکنیکهای فیلترکردن توزیع شده می تواند یک تصویر time-elapsed تولید کند]۴[. درنتیجه ضروری است که یک معماری مستقل از کاربرد به منظور انعطافپذیر ساختن پردازش درونشبکهای محتویات چندرسانهای جمعآوری شده از محیط، توسعه داده شود.
مصرف توان یکی از اساسیترین نگرانیها در شبکههای حسگر چندرسانهای بیسیم میباشد (حتی بیشتر از شبکههای حسگر بیسیم). در حقیقت حسگرها، دستگاههای محدود به باتری هستند، درحالی که کاربردهای چندرسانهای میزان زیادی داده تولید می کند که نیاز به نرخ ارسال بالا و پردازش بیشتری است. مصرف توان غالب در شبکه حسگر بیسیم مربوط به کارهای ارتباطی میباشد، ولی در مورد شبکه حسگر چندرسانهای بیسیم این امر لزوماً صحیح نیست. در نتیجه طراحی الگوریتمها، پروتکلها و معماریهایی که منجر به بیشینه کردن طول عمر شبکه شوند، مسئلهای مهم و بغرنج است.
- معماری انعطافپذیر برای پشتیبانی از کاربردهای ناهمگون.
معماریهای شبکه حسگر چندرسانهای بیسیم باید از چندین کاربرد ناهمگون با نیازهای متفاوت پشتیبانی نمایند. ضروری است که معماریای انعطافپذیر توسعه داده شود که بتواند تمام نیازهای کاربردهای مختلف را در یک ساختار جای دهد.
- یکپارچه کردن با معماری اینترنت (IP).
برای تجاری کردن شبکه حسگر چندرسانهای بیسیم، باید بتوان به سرویسهای ارائه شده بر روی آن از هر جای دنیا و در هر زمان دسترسی داشت. در نتیجه باید شبکه شبکه حسگر چندرسانهای بیسیم پیادهشده به اینترنت متصل بوده و بتوان از طریق اینترنت بدان دسترسی پیدا کرد. برای این امر نیاز است که این شبکه با معماری IP یکپارچه شود.
زانیگا[۷۰] و همکارانش بر اساس مشخصات شبکههای حسگر بیسیم، احتمال شبکه های حسگر all-IP را غیرمحتمل میدانند و پیشنهاد استفاده از دروازههای سطح-کاربرد و یا شبکه های overlay IP، بعنوان بهترین دید برای یکپارچهسازی شبکه حسگر بیسیم و اینترنت میدانند ]۵[.
معماری شبکه
یکی از مسائل مهم دیگر، طراحی یک شبکه گسترشپذیر است. اکثر پروپزالهای مربوط به شبکه حسگر بیسیم بر اساس یک معماری تخت و همگون بنا شده اند به طوریکه تمام حسگرهای شبکه دارای قابلیتهای یکسان بوده و فقط قادرند با گرههای همسایه تعامل داشته باشند. به طور سنتی، تحقیقات مربوط به پروتکلها و الگوریتمهای شبکههای حسگر بیسیم، بر روی گسترشپذیری متمرکز بود. برای مثال: چگونه راهحلی طراحی کنیم که به افزایش اندازه شبکه محدود نباشد. توپولوژیهای تخت، ممکن است همیشه برای مدیریت میزان ترافیک تولید شده توسط کاربردهای چندرسانهای مناسب نباشد. همینطور ممکن است توان لازم برای پردازش چندرسانهای در هر گره وجود نداشته باشد.
معماری مرجع
در شکل ۳‑۱ معماری مرجعی برای شبکههای حسگر چندرسانهای بیسیم ارائه می شود، که دارای ۳ شبکه حسگر متفاوت است. ابر اول در سمت چپ شبکه تک ردیفه حسگرهای ویدئو همگون را نشان میدهد. زیر مجموعه ای از حسگرها توانایی پردازش بالاتری را دارند و در نتیجه هابهای پردازنده[۷۱] نامیده میشوند. محتویات چندرسانهایی جمعآوری شده از گرهها به سمت دروازه بیسیم[۷۲] فرستاده میشوند. دروازهها به یک هاب ذخیره[۷۳] متصل شده اند که وظیفه ذخیره محتویات چندرسانهای را به صورت محلی برای دسترسیهای بعدی دارد. ابر دوم نشاندهنده مجموعه ای از حسگرهای ناهمگون میباشد. حسگرهای ویدئو، رادیو و مقادیر عددی، داده های خود را به رأس خوشه که نقش پردازنده چندرسانهای را ایفا می کند، میفرستند. رأس خوشه محتویات جمعآوری شده را به دروازه و هاب ذخیره کننده میفرستد. آخرین ابر در سمت راست، نشاندهنده شبکه چند ردیفه با حسگرهای ناهمگون است. هر ردیف مسئول انجام زیر مجموعه ای از وظایف است. حسگرهای کمتوان عددی وظیفه انجام کارهای سادهتری همچون بدست آوردن مقادیر عددی فیزیکی را دارند، در حالی که دستگاههای پرتوان مسئول انجام وظایف پیچیدهتر هستند. پردازش و ذخیره داده می تواند از طریق روشهای توزیعشده در هرکدام از ردیفها انجام شود.
پیادهسازی حسگرهای تکردیفی در مقایسه با چندردیفی
یکی از دیدگاه های ممکن برای طراحی برنامه های حسگر چندرسانهای این است که از حسگرهای همگون استفاده کرده و هریک را طوری برنامهنویسی کرد که تمام وظایف ممکن را انجام دهند. یک همچین دیدگاهی منجر به شبکه تخت و تکردیفهای از گرههای حسگر می شود. در عوض، دیدگاه چندردیفی بر اساس استفاده از عناصر ناهمگون میباشد ]۶[.
شکل ۳‑۱ معماری مرجع شبکه های چندرسانهایی بیسیم ]۳۸[
برای نمونه در کاربردهای نظارتی دوربینهای کم توان و یا حسگرهای عددی می تواند برای کشف نفوذ و حرکت استفاده شده و درصورت اتفاق افتادن موردی خاص، دوربینهایی با کیفیت بالا به صورت مبنی بر درخواست فعال شده و به دنبال کردن[۷۴] و شناسایی شئ مورد نظر بپردازند. در ]۶[ یک معماری چندردیفه برای شبکه حسگر ویدئو جهت استفاده در سیستمهای نظارتی ارائه شده است. در این مقاله نشان داده شده است که استفاده از معماری چندردیفه به همراه گرههای ناهمگون از لحاظ گسترشپذیری، هزینه، عملکرد و قابلیت اطمینان نسبت به معماری تکردیفه با گرههای مشابه، دارای عملکرد بهتری است.
پارامترهای مهم در ارزیابی پروتکلهای انتقال چندرسانهای
برای ارزیابی عملکرد پروتکلهای طراحی شده برای انتقال چندرسانهای بر روی شبکه پارامترهای متعددی وجود دارد. از جمله مهمترین این پارامترها میتوان به موارد زیر اشاره کرد:
تأخیر
یکی از مهمترین پارامترهایی است که در طراحی شبکه و ارتباطات راه دور در نظر گرفته میشود. تأخیر در شبکه یعنی مدت زمانی که طول میکشد یک بیت از مبدأ به مقصد برسد. واحد اندازهگیری تأخیر ثانیه و میلیثانیه است. تأخیر را میتوان به ۴ دسته زیر تقسیم نمود:
- تأخیر پردازش: مدت زمانی که مسیریاب سرآیند بسته را پردازش میکند.
- تأخیر صف: مدت زمانی که بسته در صف مسیریاب میگذراند.
- تأخیر انتقال: مدت زمان لازم برای قرار دادن بیتهای یک بسته بر روی خط.
- تأخیر انتشار: زمان لازم برای یک سیگنال جهت رسیدن به مقصد.
مجموع تأخیرهای ذکر شده به عنوان تأخیر شبکه شناخته میشود. در کاربردهای بلادرنگ تأخیر از اهمیت ویژهای برخودار است.
Delayi = RTimei - STimei
Delayi : Delay of packet i
RTimei : Receive Time of packet i
STimei : Send Time of packet i
لرزش[۷۵]
به تغییرات بین فواصل زمانی رسیدن بستهها لرزش گفته میشود. لرزش معمولاً در کابردهای چندرسانهای مطرح شده و در طراحی این کاربردها تأثیرگذار است. تأخیر میتواند بر اساس عوامل مختلف از جمله ازدحام در شبکه و تغییر مسیر بستهها ایجاد شود.
jitteri = RTimei – Rtimei-1
گذردهی[۷۶]
دو مفهوم گذردهی و پهنای باند یکی از گیجکنندهترین مفاهیم در شبکه هستند که اغلب باهم اشتباه گرفته میشوند. وقتی سخن از پهنایباند است منظور اختلاف پهنای باند بیشینه و کمینهای است که آن کانال پشتیبانی میکند. به عنوان مثال خطوط تلفن سنتی فرکانسهایی با پهنای ۳۰۰ تا ۳۳۰۰Hz را پشتیبانی میکند. درنتیجه پهنای باند این کانال برابر است با ۳۳۰۰ – ۳۰۰ = ۳۰۰۰ Hz. و یا میتوان پهنای باند اترنت[۷۷] را در نظر گرفت که ۱۰Mbps است. در حالی که در عمل ممکن است فقط قادر به ارسال ۲Mbps بر روی این کانال باشیم. به این مقدار “گذردهی” گفته میشود.
SNR
پارامتری است جهت تعیین میزان کیفیت تصویر یا ویدئوی مورد نظر. SNR بالاتر به معنی کیفیت بالاتر تصویر بازسازی شده است.
Pi پیکسل iام تصویر اول و Qi پیکسل iام تصویر دوم و n تعداد کل پیکسلهای تصویر است.
PSNR
این پارامتر نیز همچون SNR معیاری برای اندازهگیری کیفیت تصویر بازسازی شده است ولی دارای عملکرد بهتری است و معمولاً برای تعیین کیفیت تصاویر و ویدئوهای ارسالی از این پارامتر استفاده میشود.
maxi|Pi| بیشترین مقدار ممکن پیکسلهای تصویر است. هرچه مقدار PSNR بیشتر باشد کیفیت تصویر بازسازی شده بیشتر است.
گمشدگی فریم
یکی دیگر از پارامترهایی که میتواند در ارزیابی پروتکلهای انتقال چندرسانهای و ویدئو بر روی شبکه بسیار مفید باشد، میزان گمشدگی فریمهای ویدئو میباشد. همانطور که قبلاً ذکر شد جریان ویدئو شامل فریمهای I-فریم، P-فریم و B-فریم است که گمشدگی هر کدام از این فریمها تأثیرات خاص خود را بر کیفیت ویدئوی دریافتی میگذارد.
فصل چهارم:
پروتکلهای مطرح مربوطه
RTP [۷۸]
RTP یک پروتکل بر پایهی IP است که از دادههای بلادرنگ نظیر جریانهای صوتی و تصویری پشتیبانی میکند. سرویسهایی که RTP فراهم میکند عبارتست از بازسازی زمانی، کشف گمشدگی، امنیت و شناسایی محتوا. RTP در اصل برای چندپخشی[۷۹] دادههای بلادرنگ طراحی شده ولی در تک پخشی[۸۰] دادهها نیز میتواند مورد استفاده قرار گیرد. این پروتکل میتواند برای کاربردهای یک طرفه مثل ویدئوی مبنی بر در خواست[۸۱] و یا کاربردهای تعاملی همچون تلفن اینترنتی مورد استفاده قرار گیرد. RTP طوری طراحی شده است که بتواند همراه با پروتکل RTCP به منظور بازخورد گرفتن از کیفیت دادههای انتقالی و دریافت اطلاعاتی در مورد شرکت کنندگان در نشست حاضر، کار کند.
نحوه کار RTP
همانطور که میدانیم اینترنت بستری از شبکه اشتراکی دادهگرام است. بستههایی که بر روی اینترنت ارسال میشوند دارای تأخیر و لرزش غیرقابل پیشبینی هستند. اما کاربردهای چندرسانهای نیاز به زمانبندی مشخص برای انتقال و دریافت و پخش محتوا دارند. RTP دارای برچسبگذاری زمانی، شمارهگذاری و دیگر مکانیسمها است که برای رفع محدودیتها و مشکلات زمانبندی میباشند. با بهره گرفتن از این مکانیسمها RTP قادر خواهد بود تا یک انتقال انتها به انتهای دادههای بلادرنگ را بر روی شبکه دادهگرام فراهم نماید.
برچسب زمانی مهمترین داده برای کاربردهای بلادرنگ است. فرستنده در هنگام تولید بسته زمان کنونی را بر روی بسته قرار میدهد و با گذشت زمان این برچسب برای بستهها افزایش مییابد. گیرنده نیز با بهره گرفتن از این برچسب میتواند ترتیب بستهها را به همان ترتیب ارسالی بازسازی نماید. همچنین از برچسب زمانی برای همزمان سازی جریانهای مختلف، همچون صوت و تصویر در دادههای MPEG استفاده میشود. البته توجه داشته باشید که همزمان سازی توسط RTP انجام نمیشود و باید در سطح کاربرد این امر صورت پذیرد.
UDP لزوماً بستهها را با همان ترتیب زمانی انتقال نمیدهد، در نتیجه نیاز به استفاده از شماره ترتیب است تا بتوان دادههای دریافتی را به صورت ترتیب درست درآورد. همچنین شماره ترتیب در کشف گمشدگی بستهها نیز مفید است. توجه به این نکته ضروری است که در برخی از فرمتهای ویدئو وفتی یک فریم به بستههای مختلف تقسیم میشود، بستهها دارای یک برچسب زمانی یکسان خواهند بود. در نتیجه برچسب زمانی برای بازسازی ترتیب درست بستهها کافی نیست.
RTP بر روی UDP اجرا میشود. علت انتخاب UDP دو دلیل است: ۱) RTP برای چندپخشی طراحی شده، در حالی که TCP اتصال گراست و مناسب این کاربرد نمیباشد. ۲) در کاربردهای بلادرنگ سریع رسیدن دادهها مهمتر از مطمئن رسیدن آنهاست.
بستههای RTP و RTCP معمولاً توسط سرویسهای UDP/IP منتقل میشوند ولی این پروتکلها طوری طراحی شدهاند که مستقل از لایه انتقال باشند. به عنوان مثال میتوانند بر روی CLNP [۸۲]، IPX [۸۳]، AAL5/ATM و دیگر پروتکلها اجرا شوند. در عمل RTP معمولاً درون برنامه کاربردی پیادهسازی میشود. بسیاری از مسائل همچون بازیابی اطلاعات گمشده و کنترل ازدحام باید در لایه کاربرد پیادهسازی شوند.
برای راهاندازی یک نشست RTP، برنامه تعدادی از آدرسهای لایه انتقال (یک آدرس شبکه بعلاوه یک جفت پورت برای RTP و RTCP) را تعریف میکند. در یک نشست چندرسانهای، هر رسانه توسط نشست RTP جدا انتقال داده میشود. به عنوان مثال، صوت و تصویر در نشستهای جداگانه منتقل خواهند شد و این امکان را برای گیرنده فراهم میکنند که آن را دریافت کنند یا نه. فرمت سرآیند RTP در شکل ۴‑۱ آمده است.
شکل ۴‑۱ سرآیند بسته RTP ]39[
V (version): 2 بیت. نسخه RTP را مشخص میکند. جدیدترین نسخه ۲ میباشد.
P (padding): 1 بیت. اگر این بیت ست شود، بسته بسته شامل یک یا چند پدینگ اضافه است که در payload قرار ندارند.
X (extension): 1 بیت.اگر ست شود دقیقاً یک سرآیند اضافی بعد از این سرآیند قرار میگیرد.
CC (CSRC count): 4بیت. تعداد شناسههای CSRC که بعد از سرآیند میآیند.
M (Marker): 1 بیت. چنانکه در یک پروفایل تعریف تعریف میشود، m جهت اجازه دادن به یک رخداد مهم همچون علامتگذاری مرزهای یک فریم در جریان بستهها، استفاده میشود.
PT (Payload Type): 7 بیت. فرمت RTP payload و نحوه ترجمه آن توسط کاربرد را مشخص میکند.
Sequence Number: 16 بیت. به ازای هر بسته RTP که فرستاده میشود اضافه خواهد شد.
Timestamp: 32 بیت. برچسب زمانی که در هنگام ارسال به بسته چسبانده میشود.
SSRC: 32 بیت. یک عدد تصادفی برای تفکیک منابع همزمان سازی که در یک نشست وجود دارند.
CSRC list: 0 تا ۱۵ مورد، هر مورد ۳۲ بیت. لیست منابع شرکتکننده در نشست.]۳۹[
RTCP [۸۴]
RTCP پروتکل کنترلی است که جهت استفاده همزمان با پروتکل RTP طراحی شده است. در یک نشست RTP، شرکت کنندگان به صورت دورهای بستههای RTCP را جهت ارسال بازخورد و تعیین کیفیت دادهها و اطلاعات عضویت خویش ارسال مینمایند. RFC 1889 پنج نوع بسته برای RTCP تعریف کرده است ]۳۹[:
- RR [۸۵]: گزارش دریافت کننده. گزارشهای دریافت کننده توسط شرکت کنندگانی که فرستنده فعال نیستند به صورت دورهای تولید و ارسال میشوند. این گزارش شامل اطلاعاتی همچون بیشترین تعداد بستههای دریافتی، تعداد بستههای گمشده، jitter و برچسب زمانی جهت محاسبه RTT، میشود.
- SR [۸۶]: گزارش فرستنده. این گزارش توسط فرستندههای فعال تولید و ارسال میشود و شامل اطلاعاتی نظیر اطلاعات نشست، اطلاعات همزمان سازی، تعداد بستهها و تعداد بایتهای ارسالی است.
- SDES: موارد توضیح منابع. شامل اطلاعاتی جهت توصیف منابع میباشد.
- BYE: اتمام نشست را نشان میدهد.
- APP: توابع تعریف شده توسط کاربرد. برای طراحی و پیادهسازی توابع جدید استفاده میشود.
RTCP با بهره گرفتن از این بستههای کنترلی، قادر است سرویسهای زیر را ارائه دهد.
- نظارت بر کیفیت خدمات و کنترل ازدحام
- شناسایی منبع
- همزمان سازی بین مدیاها
- کنترل رشد پیامهای کنترلی
RTSP [۸۷]
دادههای چندرسانهای معمولاً به صورت جریان بر روی شبکه ارسال میشوند. جریانسازی، دادهها را به بستهها تقسیم کرده و بر روی شبکه ارسال میکند. گیرنده جریان، میتواند با دریافت اولین بسته شروع به دیکد کردن و پخش آن کند در حالی که بستههای بعدی در حال دریافت هستند. این مزیت این امکان را فراهم میکند که برای پخش چندرسانهای دیگر نیازی به دریافت کل بستهها نداشته باشیم.
RTSP یک پروتکل ارائه چندرسانهای مشتری-سرور است که امکان انتقال جریان چندرسانهای را بر روی شبکه IP فراهم میکند. این پروتکل عملکردهایی نظیر توقف، جلو بردن، عقب بردن و انتقال به یک زمان مشخص را بر روی جریانهای صوتی و تصویری ارائه میدهد. منبع ارسالی میتواند هم محتویات آنلاین و هم محتویات ذخیره شده باشد. RTSP یک پروتکل لایه کاربرد است که برای کار بر روی پروتکلهای لایه پایینتر نظیر RTP و RSVP برای ارائه جریان سازی چندرسانهای بر روی اینترنت طراحی شده است.]۴۲[
روشهایی که در RTSP وجود دارد عبارتند از:
- OPTIONS: مشتری یا سرور به طرف دیگر ارتباط گزینههایی که میتواند قبول کند را اعلام میکند.
- DESCRIBE: مشتری توضیحات یک ارائه یا شی مدیا را که توسط URL درخواستی از سرور تعیین شده است، را بدست میآورد.
- ANNOUNCE: در صورت ارسال از مشتری به سرور، ANNOUNCE توضیحات مربوط به ارائه یا شی رسانه را ارسال میکند و در صورت ارسال از سرور به مشتری، ANNOUNCE توضیحات نشست را به صورت بلادرنگ بهروز میکند.
- SETUP: مشتری از سرور درخواست تخصیص منابع برای یک جریان و شروع یک نشست RTSP را می کند.
- PLAY: مشتری درخواست شروع ارسال اطلاعات بر روی جریان تخصیص داده شده از طریق SETUP را میکند.
- PAUSE: مشتری موقتاً انتقال جریان را بدون رهاسازی منابع تخصیص یافته، متوقف میکند.
- TEARDOWN: مشتری از سرور درخواست توقف ارسال را کرده و منابع تخصیص یافته آزاد میشوند.
- GET-PARAMETER: مقدار یک پارامتر در جریان مشخص شده توسط URI را بدست میآورد.
- SET-PARAMETER: مقدار یک پارامتر در جریان مشخص شده توسط URI را ست میکند.
- REDIRECT: سرور به مشتریها اعلام میکند که باید به سروری در جای دیگر متصل شوند. آدرس سرور جدید در سرآیند قرار داده میشود.
- RECORD: مشتری یک بازهای از دادههای مدیا را بر اساس توضیحات ارائه شده، شروع به ضبط می کند.
مشخصات RTSP:
- RTSP یک پروتکل لایه کابرد با توابع و نگارش شبیه به HTTP است، ولی برای صوت و تصویر مورد استفاده قرار میگیرد. RTSP نیز از URL استفاده میکند.
- یک سرور RTSP باید با بهره گرفتن از SETUP، TEARDOWN و دیگر عملیات از وضعیت سیستم نگهداری کند.
- بر خلاف HTTP، در RTSP هم سرور و هم مشتری میتوانند اقدام به ارسال درخواست نمایند.
- RTSP بر روی پلتفرمها و سیستم عاملهای مختلف پیادهسازی شده و اجازه انجام عملیات بین مشتریها و سرورها بر روی پلتفرمهای مختلف را میدهد.]۴۲[
SCTP [۸۸]
SCTP یک پروتکل لایه انتقال مطمئن و پیامگرا[۸۹] است. در حقیقت SCTP پروتکلی است که هم ویژگیهای UDP (یعنی پیامگرا بودن) و هم ویژگیهای TCP (مطمئن بودن) را یکجا دارد. SCTP همزمان با اینکه مرزهای پیام را مشخص میکند، دادههای گمشده و یا خارج از ترتیب را کشف و صحیح میکند. همچنین دارای مکانیسم کنترل ازدحام و کنترل جریان است. همانطور که میدانیم TCP یک پروتکل اتصالگراست. هر ارتباطی بین مشتری TCP و سرور TCP فقط شامل یک جریان است. مشکل این رویکرد این است که در هنگام گمشدگی بسته کل جریان متوقف خواهد شد. این موضوع برای کاربردهایی با دادههای بلادرنگ همچون صوت و تصویر قابل قبول نیست. SCTP اجازه چندین جریان را در یک ارتباط میدهد. ارتباط SCTP با نام association شناخته میشود.]۴۰[
اگر یک جریان بلوک شود جریانهای دیگر همچنان قادر به ارسال داده خواهند بود. جریانهای مختلف میتوانند برای انواع مختلف دادهها استفاده شوند.
چندخانگی[۹۰]
یک ارتباط در SCTP از سرویس چندخانگی پشتیبانی میکند. فرستنده و گیرنده میتوانند چندین آدرس IP تعریف کرده و به ارتباط پیوست کنند. این امر موجب بالا رفتن تحملپذیری خطا میشود چرا که با قطع یک مسیر، مسیرهای دیگر همچنان در دسترس هستند.
مشخصات SCTP
TSN [۹۱]
واحد داده در TCP بایت است. انتقال داده در TCP با بهره گرفتن از شمارهگذاری بایتها کنترل میشود. ولی در SCTP واحد داده chunk است. انتقال داده در SCTP با بهره گرفتن از شمارهگذاری chunkها کنترل میشود. SCTP از TSN برای شمارهگذاری chunkها استفاده میکند. طول TSN 32 بیت است که با یک عدد تصادفی بین ۰ و۱ - ۲۳۲ مقداردهی اولیه میشود.
SI [۹۲]
در TCP به ازای هر ارتباط فقط یک جریان وجود دارد، در حالی که در SCTP ممکن است بیش از یک جریان در یک ارتباط وجود داشته باشد. برای تفکیک کردن جریانها در SCTP از SI استفاده میشود. طول SI 16 بیت است که مقدار آن از صفر شروع میشود.
SSN [۹۳]
وقتی دادهها در گیرنده دریافت میشوند، هر chunk مربوط به جریان مربوطه باید در جای صحیح خود قرار گیرد. بدین منظور از SSN استفاده میشود. SSN شماره chunkها را در یک جریان مشخص میکند.
در SCTP، chunk، جریان و بسته وجود دارند. یک ارتباط ممکن است تعداد زیادی بسته ارسال کند. یک بسته ممکن است شامل چندین chunk و chunkها خود ممکن است متعلق به جریانهای مختلف باشند. در شکل ۴‑۲ مثالی از این مفاهیم برای روشنتر شدن مطلب آورده شده است.
بسته ۲
بسته ۳
بسته ۱
بسته ۴
شکل ۴‑۲ بسته، chunk و جریانها در SCTP ]۴۰[
جریان بستهها از فرستنده به گیرنده
مشتقات SCTP
همانطور که اشاره شد SCTP یک پروتکل لایه انتقال، مطمئن و اتصال گراست که شامل ویژگیهای جدیدی است که آن را برای طیف وسیعی از کاربردها مناسب میکند. SCTP میتواند هم انتقال مرتب شده و هم انتقال نامرتب را فراهم نماید. PR-SCTP ]۷[ پروتکلی مشتق شده از SCTP است که امکان انتقال نیمه مطمئن بستهها را مهیا میکند. اگر در هر دو طرف ارتباط از PR-SCTP استفاده شود، فرستنده میتواند رفتار انتقال مجدد مربوط به هر پیام را انتخاب کند. سرویس نیمه مطمئنی که هماکنون استفاده میشود اطمینان زمانی[۹۴] نام دارد. اطمینان زمانی بدین شکل است که کاربر میتواند طول عمر پیام را مشخص کند. وقتی طول عمر پیام به اتمام برسد و هنوز پیام تصدیق آن نرسیده باشد، فرستنده ارسال مجدد این پیام را متوقف میکند.
تحقیقات فراوانی برای افزایش کیفیت انتقال ویدئو بر روی شبکه صورت گرفته است. پیش نویس اینترنت ]۸[ فرمتهای جدید RTP payload را توضیح میدهد که امکان چندین انتقال مجدد را به صورت انتخابی در RTP فراهم میکند. این امکانات مخصوص محیطهایی است که از RTCP استفاده میکنند. این فرمتهای payload جهت جداسازی جریانهای مدیا بر اساس اولویت و وضعیت انتقال آنها (انتقال یا انتقال مجدد) مورد استفاده قرار میگیرند.
فیستر[۹۵] ]۹[ محیطی جامع جهت آزمایش SR-RTP [۹۶] ارائه کرده است. او از RTP بر روی UDP به همراه تعمیمی برای فعال کردن بازخورد گرفتن از ارتباط بین سرور و مشتری، استفاده میکند. او برنامهای برای انتقال ویدئو با کیفیت بالا توسعه داده است.
کار انجام شده توسط رامان[۹۷] ]۱۰[ پیادهسازی و ارزیابی پروتکل ITP [۹۸] برای انتقال تصاویر بر روی شبکههای بیسیم است. او کیفیت ویدئو را در سطح فریمبندی کاربرد[۹۹] بررسی میکند.
به منظور تمایز قائل شدن در اطمینان انتقال هر کدام از فریمها در انتقال ویدئوی MPEG، ]۱۱،۱۲[ تعداد ارسال مجدد را برای انواع فریمها را محدود میکند. به عنوان مثال فقط یک بار ارسال مجدد برای I-فریمها و P-فریمها مجاز است چرا که با گذشت زمان پخش دیگر نیازی به فریمهای مربوط به GOPهای قبلی نیست. همچنین هیچ ارسال مجددی برای B-فریم در نظر گرفته نمیشود چرا که تأثیر زیادی بر روی ویدئوی دریافتی نمیگذارد.
همچون ]۱۱،۱۲[، Media-SCTP ]13[ نیز تعداد ارسالهای مجدد را بر اساس فریم محدود میکند. Media-SCTP فرض میکند فریمهایی که به یک GOP تعلق دارند دارای مهلت پخش یکسان هستند. از آنجا که GOPها دارای تعداد یکسانی فریم هستند، در نتیجه مهلتهای پخش با یک فاصله یکسان از هم قرار میگیرند. از آنجا که زمان ارسال مجدد تقریباً برابر است با ۰٫۵ RTT، اگر اختلاف زمان کنونی و مهلت پخش بیشتر ۰٫۵ RTT باشد، فرستنده مجاز خواهد بود تا مجدداً فریم مورد نظر را ارسال نماید. در غیر این صورت پنجره ارسال به جلو رانده شده و از آن فریم صرفنظر میشود.
Ahmed و همکارانش ]۱۴،۱۵[ زیر لایهای بر روی RTP موسوم به MP-RTP ارائه دادهاند. همچون Media-SCTP، در MP-RTP نیز گیرنده مسئول درخواست برای ارسال مجدد فریمهای گمشده است با این تفاوت که فریمهای با اولویت بالا به صورت همزمان از طریق تمام مسیرهای ممکن منتقل خواهد شد.
در TC-SCTP ]16[ نیازی به پیامهای گیرنده برای ارسال مجدد نیست. این پروتکل بر اساس ویژگیهای چندجریانی[۱۰۰] قرار دارد. در این پروتکل ۴ کلاس صف در لایه TCSL (لایه بالای PR-SCTP) با اولویتهای مختلف تعریف میشود. صف اول برای I-فریمها، صف دوم برای P-فریمها، صف سوم برای B-فریمها و در نهایت صف چهارم برای پیامهای کنترلی در نظر گرفته میشود. در شکل ۴‑۳ این صفها به همراه تعداد ارسالهای مجدد برای هر صف نشان داده شده است.
شکل ۴‑۳ صفهای موجود و استراتژی هر کدام در TC-SCTP ]16[
نتایج آورده شده در این مقاله حاکی از آن است که این پروتکل دارای کیفیت ویدئوی دریافتی بالاتری نسبت به SCTP و PR-SCTP است. در شکل ۴‑۴ مقایسه PSNR بین SCTP، PR-SCTP و TC-SCTP آورده شده است.
شکل ۴‑۴ مقایسه PSNR پروتکلهای SCTP، PR-SCTP و TC-SCTP ]16[
DCCP [۱۰۱]
یکی از مهمترین ویژگیهای پروتکل TCP، کنترل ازدحام آن است. تعداد زیادی کاربرد وجود دارد که از TCP استفاده نمیکند و یکی از دلایل مهم این امر، وجود مکانیسمهای کنترل ازدحام شبه TCP است که مناسب این کاربردها نمیباشد.
در سالهای اخیر شاهد افزایش کاربردهایی هستیم که دارای جریانهای طولانی مدت هستند و اکثر این جریانها تمایلی به استفاده از کنترل ازدحام ندارند. مثلاً کاربردهایی نظیر چندرسانهای که از UDP استفاده میکنند. ولی عدم استفاده از مکانیسمهای کنترل ازدحام باعث قرار گرفتن شبکه در وضعیت ازدحام شده و در شبکههایی که جریانهای TCP نیز وجود دارند باعث قحطیزدگی این جریانها میشوند. DCCP پروتکلی است که با هدف ایجاد مکانیسمهای کنترل ازدحام بر روی پروتکل غیرمطمئن مثل UDP بوجود آمد. یکی از اهداف DCCP ارائه گزینهای جایگزین TCP با در نظر گرفتن عدم وجود اطمینان در انتقال دادهها میباشد.
کاربردهایی نظیر تلفن اینترنتی، جریان سازی ویدئو و بازیهای آنلاین، جریانهای طولانی مدت از بستههای UDP را بوجود میآورند که امکان بلادرنگ بودن را مقدم بر انتقال مطمئن دادهها میدانند. در این برنامهها دادههایی که پس از مهلت مقررشان به مقصد برسند مفید نخواهند بود. TCP موجب بوجود آمدن تأخیرهای غیرقابل پیشبینی و بعضاً بسیار زیاد در انتقال دادهها میشود که این امر به دلیل تلاش برای مطمئن کردن انتقال دادههاست. در نتیجه کاربردهای ذکر شده استفاده از UDP که دارای انتقال غیرمطمئن است را ترجیح میدهند. عدم استفاده از مکانیسمهای کنترل ازدحام شبکه را با خطر جدی مواجه خواهد کرد. با افزایش کاربردهای بلادرنگ، شبکه در مرز از کار افتادن قرار میگیرد.]۴۳[
CCID 2: کنترل ازدحام شبه TCP
DCCP مکانیسم کنترل ازدحام شبه TCP با نام CCID 2 را فراهم می کند. ولی بخاطر اینکه این مکانیسم بر روی محتویات با انتقال غیرمطمئن اعمال میشود، بسیاری از فریمهای کنترل ازدحام آن با TCP متفاوت است. کنترل جریان استفاده شده در TCP، در DCCP مورد نیاز نیست. اگر n بسته دریافت شده باشد ولی هنوز توسط کاربرد خوانده نشده باشد، و سپس بستههای n + m دریافت شوند، DCCP میتواند از این n بستهای که در بافر قرار دارد صرفنظر کرده و از فضای بافر جهت دخیره بستههای جدیدتر بهره گیرد. کنترل ازدحام DCCP نیز همچون TCP از پنجره ازدحام جهت نظارت بر انتقال بستهها و تعیین دریافت شدن یا نشدن آنها می کند، ولی از تصدیق تجمعی نمیتواند برای این منظور استفاده کند. در نتیجه مکانیسم دیگری برای اطمینان از انتقال مطمئن بستهها مورد نیاز است.
راههای زیادی برای تکمیل این کار در یک انتقال نامطمئن وجود دارد. یکی از این راهها استفاده از مکانیسمی شبیه TCP Sack ]17[ است. گیرنده پیامهای تصدیق را جهت اطمینان بیشتر چندین بار به فرستنده ارسال میکند. اگر فرستنده هیچکدام از این پیامهای تصدیق را دریافت نکند پنجره ازدحام را نصف میکند. این رویکرد همیشه مطمئن خواهد بود ولی ممکن است منجر به کاهش ارسال غیر ضروری شود.
گزینه دیگری که میتوان در DCCP استفاده نمود انتقال مطمئن پیامهای تصدیق با بهره گرفتن از Ack-vector و acks-of-acks میباشد. لزوماً گیرنده مکرراً به فرستنده اطلاع میدهد که k بسته رسیده است، تا زمانی که پیام Ack-vector دقیقاً مشخص میکند که کدام بستهها دریافت شدهاند و کدام بستهها در شبکه بر چسب ECN خوردهاند.
یکی از محدودیتهای TCP این است که هیچ مکانیسم کنترل ازدحامی برای بستههای تصدیق وجود ندارند، چرا که ممکن است ازدحام در مسیر برگشت رخ داده باشد. بر خلاف TCP، DCCP با بهره گرفتن از شمارهگذاری به ازای هر بسته، قادر به کشف ازدحام در مسیر برگشت بوده و میتواند متناسباً تصمیمات لازم را اتخاذ نماید.
CCID 3: کنترل ازدحام TFRC
کنترل ازدحام TFRC در CCID 3 دیدگاهی کاملاً متفاوت با کنترل ازدحام CCID 2 را استفاده میکند. بجای استفاده از پنجره ازدحام در CCID 3 فرستنده از نرخ ارسال استفاده میکند و گیرنده به صورت دورهای گزارشهایی از بستههای گمشده محاسبه شده به فرستنده ارسال میکند. فرستنده با بهره گرفتن از این گزارشها نرخ ارسال خود را تنظیم میکند. اگر فرستنده پس از مدتی هیچ گزارشی از گیرنده دریافت نکند نرخ ارسالش را نصف میکند. نکته کلیدی که باید بدان توجه داشت این است که اطلاعاتی که TFRC به عنوان بازخورد نیاز دارد بسیار متفاوتتر از چیزی است که در حالت استفاده از پنجره ازدحام استفاده میشد.]۴۳[
فصل پنجم:
مکانیسمهای پیشنهادی
کنترل ازدحام
تحقیقات گستردهای در زمینه فهم اثرات ازدحام و بهبود کنترل ازدحام و نتایج آن در کارایی شبکه صورت گرفته است ]۱۸،۱۹،۲۰،۲۱،۲۲،۲۳،۲۴،۲۵[. در اینجا مختصراً در مورد کارهای مشابه انجام شده توضیح میدهیم. خوانندگان علاقهمند میتوانند برای مطالعات جامعتر در مورد کنترل ازدحام بر روی شبکههای بیسیم به ]۲۶[ مراجعه نمایند.
مطالعات اولیه بر روی بهبود کارایی TCP بر روی شبکههای بیسیم بر تمایز قائل شدن بین گمشدگی بسته بخاطر خطا در پیوند ارتباطی و گمشدگی در اثر ازدحام شبکه، صورت گرفته است ]۲۷،۲۸،۲۹[. برخی از مطالعات اخیر به کنترل ازدحام بر روی شبکههای موردی بیسیم پرداختهاند. یکی از کلاسهای کاری انجام شده بر روی بهبود گذردهی TCP با بهره گرفتن از متوقف کردن الگوریتم کنترل ازدحام در زمان خطا در پیوند و بخصوص در هنگام عوض شدن مسیر، متمرکز شده است ]۱۸،۱۹،۲۰،۲۱،۲۲،۲۴[.
علاوه بر تلاشهایی که برای بهبود کنترل ازدحام پروتکلهای TCP و DCCP صورت گرفته، پروتکلهای مستقلی نیز برای کنترل ازدحام مؤثر در لایه انتقال طراحی شدهاند. از جمله معروفترین این پروتکلها میتوان به SCTP ]30[، Fusion ]31[، CODA ]32[، PCCP ]33[ و DPCC ]34[ اشاره نمود. همه این پروتکلها بر روی جلوگیری از ازدحام تمرکز دارند. از جدیدترین پروتکلهای ارائه شده در این ردیف میتوان UDDP ]35[ را نام برد. تفاوت UDDP با پروتکلهای ذکر شده این است که بر خلاف دیگر پروتکلها ویژگیهای محتویات مالتی مدیا را در کنترل ازدحام لحاظ میکند و در نتیجه دارای عملکرد بهتری نسبت به دیگر پروتکلهای ذکر شده میباشد. در جدول ۵‑۱ خلاصهای از مقایسه مکانیسمهای کنترل ازدحام ذکر شده آورده شده است.
کاهش ازدحام
(تنظیم کردن نرخ ارسال)
|
اعلان ازدحام |
کشف ازدحام |
پروتکلها |
شبه-AIMD انتها به انتها |
ضمنی |
طول صف |
STCP [30] |
توقف و ارسال قدم به قدم |
ضمنی |
طول صف |
Fusion [31] |
شبه-AIMD انتها به انتها |
صریح |
طول صف و وضعیت کانال |
CODA [32] |
دقیقاً قدم به قدم |
ضمنی |
زمان سرویس بسته |
CCF [30] |
دقیقاً قدم به قدم |
ضمنی |
زمان بین رسیدن بستهها و زمان سرویس بسته |
PCCP [33] |
دقیقاً کنترل نرخ |
صریح |
نرخ زمانبندی بسته و نرخ سرویس بسته |
DPCC [34] |
جدول ۵‑۱ مقایسه مکانیسمهای کنترل ازدحام شبکه حسگر چندرسانهای بیسیم ]۳۵[
در UDDP مقداری به نام PIDT[102] به ازای هر نوع بسته (I، P و B) تعریف میشود که نشان دهندهی تفاضل زمانی ارسال دو بسته هم نوع در فرستنده است.
(۱)
(۲)
(۳)
(۴)
(۵)
(۶)
NPI,j تعداد بستههای I در GOPj که از قبل مقدارش معلوم است، NP’P,j تعداد بستههای P پیشبینی شده در GOPj، NP’B,j تعداد بستههای B در GOPj و FR نرخ ارسال فریم ویدئو (بر حسب fps) است. معادله (۱) تعداد بستهها را در GOP بر اساس اندازه فریم I پیشبینی میکند. در معادلات (۲) و (۳) نیز تعداد بستههای P و B در GOP بر اساس EWMA[103] محاسبه میشود. a و b نیز وزن مورد نظر را مشخص میکنند.
Algorithm 1 Pseudo code of UDDP protocol [35]
۱: for all GOPs of node i do
۲: Predicting the number of packets in GOP j by using
Eqs. 1, 2 and 3.
۳: Finding the packet inter-departure time in GOP j
(PIDTj ) by using Eq. 7.
۴: Ignoring IPj packets with lower priority in GOP j by
using Eq. 8.
۵: Sending packets in GOP j with PIDTj intervals.
۶: end for
(۷)
PIDTj زمان بین ارسال بستهها در فرستنده در GOPj، NP’j تعداد بستههای پیشبینی شده در GOPj، FR نرخ ارسال فریم، PS اندازه بسته و ORs بیشینه نرخ ارسال فرستنده s است. وقتی که نرخ ارسال پیشبینی شده بیشتر از بیشینه نرخ ارسال شود تعدادی از فریمهای با اولویت کمتر حذف میشوند تا نرخ ارسال تنظیم شود. معادله (۸) تعداد بستههای صرفنظر شده در GOPj را نشان میدهد.
(۸)
نتایج شبیهسازی که در UDDP آمده است، حاکی از آن است که این پروتکل در مقایسه با دیگر پروتکلهای مربوطه از عملکرد بهتری برخوردار است. این نتایج در نمودارهای زیر نشان داده شدهاند.
شکل ۵‑۱ میانگین تعداد گمشدگی بستهها برای (الف) بسته I (ب) بسته P (ج) بسته B [35]
شکل ۵‑۲ میانگین تعداد حذف فریم برای (الف) I-فریم (ب) P-فریم (ج) B-فریم ]۳۵[
|
|
شکل ۵‑۳ میانگین کیفیت ویدئوی دریافتی ]۳۵[ |
شکل ۵‑۴ میانگین گذردهی ]۳۵[ |
|
|
شکل ۵‑۵ میانگین تأخیر ]۳۵[ |
شکل ۵‑۶ میانگین بستههای صرفنظر شده ]۳۵[ |
مکانیسم کنترل ازدحام پیشنهادی
در مکانیسم پیشنهادی خود که آن را CCUF [۱۰۴] نامیده، ماهیت محتویات جریان داده را که چندرسانهای است، مد نظر قرار داده شده است. همانطور که قبلاً ذکر شد محتویات چندرسانهای شامل فریمهای I، P و B است که با نرخ ارسال فریم ثابت نسبت به یکدیگر فرستاده میشوند. این مفهوم در شکل ۵‑۷ نشان داده شده است.
شکل ۵‑۷ نمودار زمانی ارسال فریمها
زمان
I - فریم
P - فریم