پروتکل Protocol Independent Multicast که به اختصار PIM نامیده میشود، حالت سرویس IP Multicast فعلی متعلق به Receiver-Initiated Membership را حفظ مینماید. PIM بر پروتکل مسیریابی Unicast خاصی متکی نیست، بلکه از پروتکلهای مسیریابی IP مستقل است و میتواند از آن دسته از پروتکلهای مسیریابی Unicast که در جدول مسیریابی Unicast استقرار داده شدهاند، مانند Enhanced Interior Gateway Routing Protocol یا به اختصار EIGRP و OSPF ،BGP و مسیرهای استاتیک، نهایت استفاده را داشته باشد. این پروتکل در جهت اعمال عملکرد Multicast Forwarding، از اطلاعات مسیریابی Unicast استفاده مینماید.
علیرغم اینکه PIM در واقع یک پروتکل مسیریابی Multicast محسوب میشود، از جدول مسیریابی Unicast استفاده مینماید تا بهجای ایجاد یک جدول مسیریابی Multicast کاملا مستقل، عملکرد بررسی Reverse Path Forwarding یا به اختصار RPF را اجرا نماید. این پروتکل برخلاف دیگر پروتکلهای مسیریابی، در میان روترها بهروزرسانیهای Routing را ارسال و دریافت نمیکند.
PIM میتواند هم بصورت Sparse Mode و هم بصورت Dense Mode فعالیت نماید. روتر نیز میتوانند در عینحال هم به گروههای Sparse و هم به گروههای Dense رسیدگی نماید. این حالت روتر است که تعیین مینماید روتر چگونه دادهها را در جدول مسیریابی Multicast خود مستقر نماید. همچنین حالت روتر نحوه Forward کردن Packetهای Multicast را تعیین مینماید که این Packetها را از LANهایی دریافت مینماید که مستقیماً به آنها متصل است.
عملکرد PIM Sparse Mode
PIM Sparse Mode یا به اختصار PIM-SM، از یک مدل Pull برای ارسال ترافیک Multicast استفاده مینماید. تنها بخشهایی از شبکه که دریافتکنندههای فعال آنها بهوضوح دادههایی را درخواست کرده باشند، ترافیک را دریافت مینمایند.
اینترفیسهای Sparse Mode، تنها وقتی به جدول مسیریابی Multicast اضافه میشوند که پیامهای اتصال (Join) متناوب از روترهای Downstream دریافت شده باشد و یا هنگامیکه کاربری که مستقیماً به سیستم وصل شده است، درحال کار با Interface باشد. هنگام Forward کردن از یک LAN، عملکرد Sparse Mode در صورتی رخ میدهد که RP برای گروه شناخته شده باشد. در اینصورت Packetها Encapsulate شده و به RP فرستاده میشوند. هنگامیکه هیچ RP شناختهشدهای موجود نباشد، Packet به شیوهی Dense Mode در واقع Flood میشود. اگر ترافیک Multicast از جانب یک منبع خاص کافی باشد، اولین Hop Router متعلق به Host میتواند پیام اتصال را به منبع بفرستد تا یک درخت توزیع (Distribution Tree) مبتنی بر منبع ایجاد نماید.
PIM-SM اطلاعات را با Forward کردن Packetهای دادهها بر روی یک درخت اشتراکی، میان منابع فعال توزیع میکند. از آنجایی که PIM-SM از درختهای اشتراکی استفاده مینماید (حداقل در ابتدا)، به استفاده از یک Rendezvous Point (به اختصار RP) احتیاج دارد. RP باید بهصورت مدیریتی در شبکه پیکربندی شده باشد.
یک روتر در Sparse Mode فرض را بر این قرار میدهد که دیگر روترها نمیخواهند Packetهای Multicast را برای یک گروه Forward نمایند، مگر اینکه درخواست واضحی برای دریافت ترافیک به آنها برسد. وقتی Hostها به یک گروه Multicast میپیوندند، روترهایی که مستقیماً متصل باشند پیامهای اتصال PIM را به RP میفرستند. RP رد گروههای Multicast را دنبال مینماید. Hostهایی که Packetهای Multicast ارسال مینمایند توسط اولین Hop Router آن Host، در RP ثبت میشوند. سپس RP برای منبع، پیام اتصال ارسال میکند. در این مرحله Packetها بر روی یک درخت توزیع اشتراکی Forward شدهاند. اگر ترافیک Multicast از جانب یک منبع خاص کافی باشد، اولین Hop Router متعلق به دریافتکننده میتواند پیام اتصال را به منبع بفرستد تا یک درخت توزیع مبتنی بر منبع ایجاد نماید.
منابع با RP خود را Register مینمایند و سپس دادهها از طریق درخت اشتراکی برای دریافتکنندهها Forward میشود. روترهای Edge هنگامیکه از جانب یک منبع خاص از طریق درخت اشتراکی Packetهای داده را دریافت مینمایند، از طریق RP در خصوص آن منبع خاص، اطلاعات کسب میکنند. روتر Edge سپس پیامهای اتصال (PIM (S,G به سمت آن منبع ارسال مینماید. هر روتر در طی مسیر وارونه (Reverse Path) معیار مسیریابی Unicast آدرس RP را با معیار آدرس منبع مقایسه مینماید. اگر معیار آدرس منبع بهتر باشد، یک پیام اتصال (PIM (S,G به سمت آن منبع Forward میکند. اگر معیار RP با معیار منبع برابر و یا بهتر از آن باشد، پیام اتصال (PIM (S,Gبه همان مسیر RP فرستاده میشود. در اینصورت Shared Tree و Source Tree، هماهنگ با یکدیگر محسوب میشوند.
اگر درخت Shareشده، مسیر مطلوبی میان منبع و دریافتکننده نباشد، روترها بهصورت پویا یک درخت منبع ایجاد کرده و از جریان ترافیک در درخت اشتراکی جلوگیری بهعمل میآورند. این رفتار، رفتار پیشفرض این نرمافزار میباشد. مدیران شبکه میتوانند با استفاده از دستور ip pim spt-threshold infinity ترافیک را به باقیماندن در درخت اشتراکی وادار نمایند.
PIM-SM بهخوبی بر روی هر شبکهای با هر اندازهای ، حتی شبکههایی که لینکهای WAN دارند نیز توسعه مییابد و همچنین مکانسیم اتصالی واضح، از اینکه ترافیک ناخواسته، لینکهای WAN را Flood کند، جلوگیری مینماید.
نحوهی عملکرد Multicast Source Discovery Protocol یا MSCP
هنگامیکه PIM-SM مورد استفاده قرار گرفته باشد، از Multicast Source Discovery Protocol که به اختصار MSDP نامیده میشود، برای شناسایی منبع Inter-Domain استفاده میشود. هر دامین مدیریتی PIM از RP مختص به خودش بهرهمند است و بدین منظور که RP یک دامین بتواند منابع جدید را برای یک RP در دامین دیگری ارسال نماید، از MSDP استفاده میشود.
هنگامیکه RP موجود در یک دامین، یک پیام ثبتPIM برای یک منبع جدید دریافت مینماید، با فعال بودن تنظیمات MSDP یک پیام (Source-Active (SA جدید برای تمامی Peerهای MSDP در دامینهای دیگر ارسال مینماید. هریک از Peerهای MSDP متوسط این پیام SA را از RP منشأ Flood مینماید. Peerهای MSDP این پیام SA را در SA-Cache خود نصب میکنند. اگر RPهای دامینهای دیگر، درخواست اتصال به گروهی را در پیام SA دریافت نمایند (که توسط حضور یک مدخل «*,G» با لیست رابط Outgoing غیرتهی نشان داده میشود)، توجه دامین به گروه جلب شده است و RP یک دستور اتصال (S,G) را به سمت منبع به جریان میاندازد.
بررسی ورژنهای مختلف PIM
PIMv2 از مزیتهای ذیل نسبت به PIMv2 برخوردار است:
- یک Rendezvous Point واحد و فعال بههمراه چندین RP پشتیبان در هر گروه Multicast وجود دارد. این RP واحد با چندین RP فعال Multicast موجود در همان گروه در نسخهی PIMv1، قابل قیاس است.
- یک روتر Bootstrap، عملکرد شناسایی و توزیع خودکار RP مقاوم در برابر خطا را ارائه میدهد که به روترها و دستگاههای چندلایه اجازه میدهد که بهصورت پویا Mappingهای گروه به RP را بیاموزند.
- Sparse Mode و Dense Mode از ویژگیهای یک گروه هستند، نه یک اینترفیس.
- پیامهای اتصال (Join) و حذف Prune PIM برای استفاده در چندین Address Family، کدگذاری منعطفتری دارند.
- یک فرمت Hello Packet منعطفتر Query Packet را جایگزین مینماید تا گزینههای توانایی کنونی و آینده را کدگذاری نماید.
- پیامهای ثبت (Register) فرستادهشده به RP مشخص میکنند که توسط یک روتر محدوده ارسال شدهاند و یا توسط یک روتر اختصاصی (Designated).
- Packetهای PIM دیگر درون Packetهای IGMP نمیباشند، بلکه Packetهای مستقل هستند.
ـــــــــــــــــــــــــــــ
بررسی پروتکل های مسیریابی PIM – قسمت اول