بخشی از مقاله
پروتكل مديريت گروه اينترنت (IGMP)
IGMP ، كه در RFC 3376 تعريف شده ، توسط ميزبانها و مسيرياب ها براي مبادلة اطلاعات عضويت Multicast بر روي LAN استفاده مي شود . IGMP از ماهيت پخشي LAN استفاده مي كند تا تكنيكي كارآمد براي تبادل اطلاعات بين چندين ميزبان و مسيريابها را فراهم نمايد . در حالت كلي ، IGMP دو عملكرد اصلي را حمايت مي كند :
1ـ ميزبان ها پيغامهايي به مسير ياب ها مي فرستند تا مشترك يك گروه Multicaset تعريف شده توسط يك آدرس Multicaset شوند يا اشتراك خود را از آن حذف نمايند .
2ـ مسيرياب ها به صورت دوره اي بررسي مي نمايند كدام گروههاي Multicaset ، مورد نظر كدام ميزبانها مي باشند .
IGMP در حال حاضر در روايت 3 قرار دارد . در IGMPV1 ، ميزبانها مي توانند به گروه Multicaset ملحق شوند و مسيرياب ها تايمري را براي حذف اشتراك اعضاي گروه استفاده مي كنند . IGMPV2 باعث مي شود اشتراك يك ميزبان به طور مشخص از يك گروه حذف شود . اولين دو روايت ، ضرورتاً از مدل عملياتي زير استفاده نموده اند :
• گيرنده ها بايد مشترك گروههاي Multicaset گردند .
• مبدأها نيازي به مشترك شدن در گروه هاي Multicaset ندارند .
• هر ميزان مي تواند ترافيك را به هر گروه Multicaset بفرستد.
اين روش بسيار كلي است اما نقاط ضعفي نيز دارد :
1ـ گسترش گروههاي Multicaset آسان است . حتي اگر فيلترهايي در سطح كاربرد براي حذف بسته هاي ناخواسته وجود داشته باشد ، اين بسته ها هنوز منابع عمده اي را در شبكه و درگيرنده اي كه بايد آنها را پردازش كند ، مصرف مي كنند .
2ـ ايجاد درخت هاي توزيع Multicaset مشكل ساز است . دليل آن ، مشخص نبودن محل مبدأها مي باشد .
3ـ يافتن آدرس هاي Multicaset منحصر به فرد سراسري مشكل است . هميشه اين امكان وجود دارد كه گروههاي Multicaset ديگري ، همان آدرس Multicaset را بكار ببرند .
IGMPv3 اين نقاط ضعف را اينگونه مورد توجه قرار مي دهد :
1ـ دادن اجازه به ميزبانها براي مشخص نمودن ليست ميزبانهايي كه از آنها ترافيك يافت مي شوكد . ترافيك از ميزبانهاي ديگر ،در مسيرياب ها مسدود مي شود .
2ـ دادن امكان به ميزبانها براي مسدود نمودن بسته هايي كه مبدأ آنها ترافيك ناخواسته مي فرستد .
ادامة اين بخش ، IGMPv3 را مورد بررسي قرار مي دهد .
قالب پيغام IGMP
همة پيغامهاي IGMP در قالب datagram هاي IP فرستاده مي شود . روايت فعلي ، دو نوع پيغام تعريف مي كند : درخواست عضويت و گزارش عضويت .
پيغام درخواست عضويت توسط مسيرياب Multicaset فرستاده مي شود . سه نوع زير نوع دارد : يك درخواست عمومي ، براي مشخص نمودن اينكه كدام گروهها اعضايي در يك شبكه دارند ؛ درخواست گروه خاص ،به منظور مشخص نمودن اعضاي گروه خاص در شبكة متصل شده استفاده مي شود ؛ و درخواست گروه - و - مبدأ خاص ،براي تعيين اينكه آيا هر دستگاه متصل ، خواهان دريافت بسته هاي ارسالي به آدرس Multicaset خاص ، از هر مبدأ مشخص شده در ليست ،مي باشد . قالب پيغام را نشان مي دهد كه شامل فيلترهاي زير است:
• نوع : نوع اين پيغام را مشخص مي كند .
• حداكثر زمان پاسخ : مشخص كنندة حداكثر زمان مجاز قبل از ارسال گزارش پاسخ در واحد ثانيه است .
• checksum : كد آشكار كنندة خطاي محاسبه شده به صورت جمع متمم يك 16 بيتي همة كلمات 16 بيتي در پيغام مي باشد . براي انجام محاسبه ، فيلد cheksum با صفر مقدار اوليه داده مي شود . اين همان الگوريتم Checksum استفاده شده در Ipv4 است .
• آدرس گروه : براي پيغام درخواست عمومي ، صفر است ؛ زماني كه درخواست گروه - مبدأ خاص ارسال مي شود، آدرس معتبر گروه multicast در IP.
• پرچمS: با يك شدن آن، به همة مسيرياب هاي گيرندة multicast اعلام ميكند كه آنها بايد به روزآوري هاي معمول تايمر را كه با دريافت درخواست انجام مي دهند، كنار بگذارند.
• (querier's robustness variable)QRV: اگر غير صفر باشد، فيلد QRV حاوي مقدار RV استفاده شده توسط فرستنده درخواست است. مسيرياب ها مقدار RV را از جديدترين درخواست دريافت شده، به عنوان مقدار RV خود استفااده مي كنند، مگر اينكه جديدترين RV دريافت شده، صفر باشد، كه در اين حالت، گيرنده ها مقدار پيش فرض يا مقدار بدست آمدة آماري را استفاده مي كنند. اين RV نشان مي دهد كه چند دفعه يك ميزبان يك ميزبان يك گزارش را مجدد ارسال كند تا مطمئن شود توسط هر مسير ياب multicast از بين نمي رود.
• (querier's querier internal code)QQIC: مقدار QI(بازة درخواست) استفاده شده توسط فرستندة درخواست را مشخص مي كند، كه تايمري براي فرستادن چندين درخواست است. مسيريابهاي multicast كه فرستندة درخواست جاري نمي باشند، مقدار QI را از جديدترين درخواست دريافت شده؛ صفر باشد در اين حالت، مسيرياب هاي دريافت كننده، از مقدار پيش فرض QI استفاده مي كنند.
• تعداد مبدأها: مشخص مي كند كه چه اعداد آدرس مبدأ در اين پرس و جو موجود است. اين مقدار فقط براي درخواست گروه- و مبدأ خاص، غير صفر است.
• آدرسهاي مبدأ: اگر تعداد مبدأها N باشد، در اين صورت Nآدرس 32 بيتي unicast به پيغام افزوده مي شود.
يك گزارش عضويت شامل فيلدهاي زير است:
• نوع: نوع اين پيغام را مشخص مي كند.
• Checksum:كد آشكار كنندة خطايي است كه به صورت جمع متمم يك 16 بيتي تمام كلمات 16 بيتي در پيغام محاسبه مي شود.
• تعداد ركوردهاي گروه: تعداد ركوردهاي گروه موجود در اين گزارش را مشخص مي كند.
يك ركود گروه شامل فيلدها است.
• نوع ركورد: اين نوع ركورد را تعريف مي كند، همانگونه كه توضيح داده خواهد شد.
• طول دادة كمكي: طول فيلد دادة كمكي بر حسب كلمات 23 بيتي است.
• تعداد مبدأها: مشخص مي كند چخ تعداد آدرس مبدأ در اين ركورد وجود دارد.
• آدرس multicast: آدرس IP multicast كه اين ركورد به آن تعلق دارد.
• آدرسهاي مبدأ: اگر تعداد منبع ها N باشد، در اين صورت، N آدرس unicast 32 بيتي به اين پيغام اضافه مي شود.
• دادة كمكي: اطلاعات اضافي موجود در اين ركورد است. در حال حاضر، مقادير دادة كمكي تعريف نشده است.
عملكرد IGMP
هدف هر ميزبان در استفاده از IGMP، شناساندن خود به عنوان عضوي از يك گروه با آدرس multicast مشخص، به ميزبان هاي ديگر LAN و همة مسيرياب هاي LAN مي باشد. IGMP Pv3، اين توانايي را به ميزبان ها مي دهد كه عضويت گروه را همراه با توانايي هاي فيلتر نمودن نسبت به مبدأها، اعلام نمايد. ميزبان مي تواند اعلام كند كه مي خواهد ترافيك را از همة منابع فرستنده به يك گروه، به جز برخي منابع خاص (مود EXCLUDE) دريافت نمايد؛ يا مي خواهد ترافيك را
فقط از برخي منابع خاص ارسال كننده به گروه(مود INCLUDE) دريافت كند. به منظور الحجاق شدن به گروه، ميزبان، پيغام گزارش عضويت IGMP را مي فرستد، كه در آن، فيلد آدرس گروه، آدرس multicast آن گروه مي باشد. اين پيغام در يك IP diagram با همان آدرس مقصد ,ulticast فرستاده مي شود. به عبارت ديگر، فيلد آدرس گروه در پيغام IGMP و فيلد آدرس مقصد سرآمد IP بسته بندي كننده، مشابه هستند. همة ميزبانهايي كه در حال حاضر اعضاي اين گروه multicast مي باشند، اين پيغام را دريافت خواهند نمود و در مورد عضو جديد گروه اطلاع مي يابند. هر مسيرياب متصل به اين LAN، بايد به تمام آدرسهاي IP multicast گوش دهد تا همة گزارشات را بشنود.
به منظور حفظ ليست جاري معتبر حاوي آدرسهاي گروه هاي فعال، يك مسيرياب multicast به صورت دوره اي پيغام درخواست عمومي IGMP را صادر مي نمايد كه در يك IP diagram با آدرس Multicast همة ميزبانها فرستاده مي شود. هز ميزباني كه هنوز مي خواهد عضوي از يك يا چند گروه multicast بماند، بايد datagram هايي را با آدرس همة ميزبانها بخواند. هنگامي كه چنين ميزباني، اين درخواست را دريافت مي كند، بايد با پيغام گزارش براي هر گروهي كه براي آن ادعاي عضويت ميكند، پاسخ دهد.
توجه داشته باشيد كه مسيرياب multicast نيازي به دانستن مشخصة هر ميزبان در گروه ندارد. در عوض، نياز دارد بداند كه حداقل يك عضو گروه هنوز فعال است. بنابراين، هز ميزبان در گروهي كه درخواستي را دريافت مي كند، تايمري را با تأخيري تصادفي مقدار مي دهد. هز ميزباني كه ادعاي عضويت ميزبان ديگر را در آن گروه ميشنود، از گزارش خود صرف نظر مي كند. اگر گزارش ديگري شنيده نشود و تايمر به انتها برسد، ميزبان گزارشي را ارسال ميكند. با اين طرح، فقط يك عضو هر گروه بايد گزارش را براي مسيرياب multicast تهيه كند.
هنگامي كه يك ميزبان گروهي را ترك مي كند، پيغام ترك گروه را به همة مسيريابهايي با آدرس multicast ايستا مي فرستد. اين عمل با فرستادن پيغام گزارش با امكان EXCLUDE و ليست آدرسهاي مبدأ تهي انجام مي گيرد؛ يعني، همة مبدأها بايد حذف شوند، و به طور مؤثر گروه را ترك مي كند. هنگامي كه مسيرياب چنين پيغامي را براي گروهي دريافت مي كند كه اعضايي براي گروه در رابط پذيرش قرار دارند، نياز دارد بداند آيا اعضاي ديگري براي گروه باقي مانده اند. براي اين منظور،
مسيرياب، پيغام درخواست گروه خاص را بكار مي برد.
عضويت گروه با Ipv6
IGMP براي عملكرد با Ipv4 تعريف شده و از آدرسهاي 32 بيتي استفاده مي كند. اينترنت هاي Ipv6 عملكرد را نياز دارند. به جاي تعريف روايت مجزايي از IGMP براي Ipv6، عملكرد آن در روايت جديد پروتكل كنترل پيغام اينترنت (ICMPv6) قرار گرفته است. ICMv6 شامل همة عملكرد ICMv4 و IGMP مي باشد. براي حمايت از Multicast، ICMPv6 شامل درخواست عضويت گروه و پيغام گزارش عضويت گروه مي باشد، كه مشابه IGMP استفاده مي شود.
پروتكل مسيرياب
مسيرياب هاي ايننرنت، مسئول دريافت و هدايت بسته ها از طريق مجموعه شبكه هاي متصل به يكديگر مي باشند. هر مسيرياب، تصميم مسيريابي را بر مبناي آگاهي از توپولوژي و شرايط ترافيك و تأخير در ايننرنت انجام مي دهد. در يك اينترنت ساده، يك طرح ثابت مسيريابي امكان پذير است. در اينترنت هاي پيچيده تر، درجه اي از همكاري پويا بين مسيرياب ها لازم است. در حالت خاص، مسيرياب بايد از بخشي از شبكه كه دچار شكست شده است اجتناب نمايد و همچنين بايد از بخشي كه دچار ازدحام مي باشد نيز صرف نظر كند. به منظور انجام چنين تصميمات مسيريابي پويايي، مسيرياب ها اطلاعات مسيريابي را با استفاده از پروتكل مسيريابي خاص براي آن منظور، مبادله مي نمايند. اطلاعاتي در مورد وضعيت اينترنت، بر حسب اينكه كدام شبكه ها مي توانند با كدام مسيرياب قابل دسترسي باشند، و خصوصيات تأخير مسيرياب هاي گوناگون، مورد نياز است.
با در نظر گرفتن تابع مسيريابي، متمايز نمودن اين دو مفهوم داراي اهميت است:
• اطلاعات مسيريابي: اطلاعاتي است در مورد توپولوژي و تأخيرها در اينترنت.
• الگوريتم مسيريابي: تلگوريتم استفاده شده براي گرفتن تصميم مسيريابي براي datagram خاص، بر مبناي اطلاعات مسيريابي جاري مي باشد.
سيستم هاي خودكار
به منظور ادامة بحث پروتكل هاي مسيريابي، نياز به معرفي مفهوم سيستم خودكارذاست. سيستم خودكار (as) خصوصيات زير را از خود نشان مي دهد:
1- ي; AS، مجموعه اي از مسيرياب ها و شبكه ها است كه توسط يك سازمان مديرينت مي شوند.
2- يك AS شامل گروهي از مسيرياب ها است كه اطلاعات را از طريق پروتكل مبادله مي نمايند.
3- به جز در زمان شكست، يك AS مرتبط مي باشد(بر حسب مفهوم مرتبط در توري گراف)؛ يعني، مسيري بين هر زوج گروه وجود دارد.
يك پروتكل مسيريابي مشترك، كه به عنوان پروتكل مسيرياب داخلي (IRP) شناخته مي شود، اطلاعات مسيريابي را بين مسيرياب هاي داخلي AS عبور مي دهد. اين پروتكل در AS استفاده مي شود و نيازي به پياده سازي در خارج از سيستم ندارد. اين انعطاف به IRP ها امكان مي دهد به كاربردها و نيازهاي خاص متعلق باشند. به هر حال ممكن است اينترنت با بيش از يك AS ساخته شود. براي مثال، تمام LAN هاي يك سايت، مانند مجموعة اداري يا كمپينگ، مي توانند توسط مسيرياب ها متصل شوند تا يك AS را تشكيل دهند. اين سيستم مي تواند از طريق يك شبكة گسترده، به AS هاي ديگر متصل شود.
حالت، الگوريتم هاي مسيريابي و اطلاعات جداول مسيريابي استفاده شده توسط مسيريابهاي AS هاي مختلف، ممكن است متفاوت باشد.
به هر حال، مسيرياب هاي يك AS نيازمند يك سطح حداقل از اطلاعات مربوط به شبكههاي قابل دسترسي در خارج از سيستم مي باشند. به پروتكل استفاده شده به منظور عبور اطلاعات مسيريابي بين مسيرياب ها در AS هاي متفاوت، پروتكل مسيرياب خارجي (ERP) گفته مي شود.
مي توان انتظار داشت كه ERP نياز به عبور دادن اطلاعات كمتري نسبت به IRP به دلايل زير داشته باشد. اگر يك datagram قرار باشد از يك ميزبان در يك AS به ميزباني در AS ديگر انتقال يابد، يك كسيرياب در سيستم اول، فقط نيازمند تعيين AS مقصد و طرح مسيري براي رسيدن به آن سيستم مقصد خواهد بود. با وارد شدن data gram به as مربوط نمي باشد، و چيزي در مورد جزئيات مسير دنبال شده در AS مقصد نمي داند.
در ادامة اين بخش، نگاهي داريم به مهمترين مثالهاي اين دو نوع پروتكل مسيريابي: BGP و OSPF. اما اول، نگاهي به راه ديگر مشخص نمودن پروتكل هاي مسيريابي مفيد است.
گرايشهاي مسيريابي
پروتكل هاي مسيريابي اينترنت، يكي از سه شيوة جمع آوري و استفاده از اطلاعات مسيريابي را بكار مي گيرند: مسيريابي بردار- فاصله، مسيريابي حالت- اتصال، و مسيريابي بردار- مسير يابي بردار- فاصله نيازمند اين است كه هر گره (مسيرياب يا ميزباني كه پروتكل مسيريابي را پياده سازي مي نمايد)، اطلاعات را با گره هاي همسايه مبادله نمايد. اگر دو گروه هر دو به طور مستقيم به يك شبكه متصل باشند همسايه هستند.
به اين منظور، هر گره، برداري از ارزش اتصالات براي هر شبكة متصل شده به طور مستقيم، و بردار فاصله و بردار گام بعدي را براي هر مقصد نگهداري مي كند. پروتكل اطلاعات مسيريابي نسبتاً ساده (RIP) از اين شيوه استفاده مي كند.
مسيريابي بردار- فاصله نيازمند انتقال ميزان قابل توجهي اطلاعات توسط هر مسيرياب ميباشد. هر مسيرياب بايد بردار فاصله را به همة همسايگانش بفرستد. آن بردار حاوي ارزش مسير تخميني به همة شبكه ها در اين پيكربندي است. علاوه بر آن، هنگامي كه تغيير عمده اي در ارزش يك اتصال انجام مي گيرد، يا زماني كه يك اتصال قابل دسترس نمي باشد، زمان قابل توجهي براي انتشار اين اطلاعات از طريق اينترنت لازم است.
مسيريابي حالت- اتصال، براي غليه بر نقاط ضعف مسيريابي بردار- فاصله طراحي گرديد. هنگامي كه مسيرياب آماده سازي مي شود، ارزش اتصال در هر يك از رابطهاي شبكة خود را مشخص مي كند. سپس، اين مسيرياب اين مجموعه ارزش هاي اتصالات را به همة مسيرياب ها در توپولوژي اينترنت اعلام مي كند، و نه فقط به مسيرياب هاي همساية خود. از آن زمان، اين مسيرياب، بر ارزشهاي اتصالات خود نظارت دارد. هر زمان كه تغيير عمده اي صورت گيرد (افزايش يا كاهش عمدة ارزش اتصال، ايجاد اتصال جديد، غير قابل استفاده شده اتصال جاري)، اين مسيرياب مجدد مجموعه ارزشهاي اتصالات خود را به همة مسيرياب ها در آن پيكربندي اعلام مي كند.
چون هر مسيرياب ارزش اتصالات همة مسيرياب هاي آن پيكربندي را دريافت مي كند، ميتواند يك توپولوژي از كل پيكربندي بسازد و سپس كوتاه ترين مسير را به هر شبكة مقصد، محاسبه نمايد. با انجام اين عمل، اين مسيرياب مي تواند جدول مسيريابي خود را بسازد، و اولين گام به هر مقصد را ليست نمايد. چون مسيرياب نمايشي از كل شبكه دارد، از رواست توزيع شدة الگوريتم مسيريابي، همانگونه كه در مسيريابي بردار- فاصله انجام مي گيرد، استفاده نمي كند. در عوض، مسيرياب مي تواند هر الگوريتم مسيريابي را براي مشخص نمودن كوتاه ترين مسيرها بكار ببرد. در عمل، الگوريتم Dijkstra استفاده مي شود. پروتكل اولين كوتاه ترين مسير باز (OSPF)، مثالي است از نوعي پروتكل مسيريابي كه از مسيريابي حالت- اتصال استفاده مي كند. نسل دوم الگوريتم مسيرياب براي ARPANET نيز از اين روش استفاده مي كند.
هر دو روش حالت- اتصال و بردار- فاصله، براي پروتكل هاي مسير ياب داخلي استفاده شده اند. اين روشها براي پروتكل مسيرياب خارجي مؤثر نمي باشند.
در پروتكل مسيريابي بردار- فاصله، هر مسيرياب، به همسايگانش، برداري را مي فرستد كه هر شبكة فايل دسترسي توسط آن را، همراه با معيار فاصلة مربوط به مسيري به آن شبكخ، ليست نموده است. هر مسير ياب، يك پايگاه دادة مسيريابي بر مبناي اين به روزآوري هاي همسايگانش مي سازد، اما مشخصة مسيرياب ها و شبكه هاي مياني در هر مسير خاص را نمي داند. دو مشكل با اين روش براي پروتكل مسيرياب خارجي وجود دارد:
1-پروتكل بردار- فاصله فرض مي كند كه همة مسيرياب ها يك معيار مشترك فاصله را دارند كه با آن در مورد ازجحيت هاي مسيرياب قضاوت مي كنند. اين حالت در بين ASهاي مختلف برقرار نيست. اگر مسيرياب هاي متفاوتي، معاني متفاوتي به يك معيار نسبت دهند، امكان ايجاد مسيرهايي پايدار، و بدون حلقه ممكن است وجود نداشته باشد.
2-يك AS ممكن است اولويت هاي متفاوتي با AS هاي ديگر داشته باشد و ممكن است محدوديت هايي داشته باشد كه استفاده از AS هاي خاص ديگر را منع نمايد. الگوريتم بردار- فاصله، اطلاعاتي را در مورد AS هايي كه در يك مسيرياب ملاقات خواهند شد، ارائه نمي دهد.
در يك پروتكل مسيريابي حالت- اتصال، هر مسيرياب، معيارهاي اتصال خود را به همة مسيرياب هاي ديگر اعلام مي كند. هر مسيرياب، تصويري از توپولوژي كامل اين پيكربندي مي سازد و سپس محاسبة مسيريابي را انجام مي دهد. اين شيوه نيز اگر در پروتكل مسيرياب خارجي بكار رود مشكلاتي دارد:
1-AS هاي متفاوت ممكن است از معيارهاي متفاوتي استفاده كنند، و محدوديت هاي متفاوتي داشته باشند. اگرچه پروتكل حالت- اتصال، به مسيرياب اجازة ساختن تصويري از تمام توپولوژي نمي دهد، معيارهاي استفاده شده، ممكن است از يك AS به ديگري متفاوت باشند، و اجراي الگوريتم مسيريابي يكنواخت را غير ممكن نمايند.
2-هجوم اطلاعات حالت اتصال به همة مسيرياب هاي پياده كنندة پروتكل مسيرياب خارجي در چندين AS، ممكن است قابل كنترل نباشد.
راه ديگر، به نام مسيريابي بردار- مسير، معيارهاي مسيريابي را كنار مي گذارد و فقط اطلاعاتي را فراهم مي كند در مورد اينكه كدام شبكه ها مي توانند توسط يك مسيرياب قابل دسترس باشند، و AS هايي كه بايد براي رسيدن به آنها گذر كنند. اين شيوه با الگوريتم بردار- فاصله متفاوت است، از دو جنبة: اول، روش بردار- مسير، شامل تخمين فاصله يا ارزش نيست. دوم، هر بلوك از اطلاعات مسيريابي، همة AS هاي ملاقات شده به منظور رسيدن به شبكة مقصد توسط اين مسيرياب را ليست مي نمايد.
چون يك بردار مسير، AS هايي را ليست مي كند كه يك datagram بايد از آنها عبور كند، اگر اين مسيرياب را دنبال نمايد، اين اطلاعات مسير باعث مي شود مسيرياب، سياست مسيريابي را اجرا كند. يعني، مسيرياب ممكن است تصميم بگيرد از مسير خاصي اجتناب نمايد تا مانع عبور از طريق يك AS خاص شود. براي مصال، اطلاعاتي كه محرمانه است، ممكن است به AS هاي خاص محدود شود. يا يك مسيرياب ممكن است اطلاعاتي در مورد كارايي يا كيفيت بخشي از اينترنت داشته باشد كه در يك AS قرار دارد و باعث مي شود اين مسيرياب از آن AS اجتناب نمايد. مثالهايي از معيارهاي كارايي يا كيفيت عبارتند از سرعت اتصال، ظرفيت، تمايل به ازدحام، كيفيت كلي عملكرد. معيار ديگري كه مي تواند استفاده شود، به حداقل رساندن تعداد AS هاي مياني است.
پروتكل گذرگاه مرزي
پروتكل گذرگاه مرزي (BGP) براي استفاده به همراه اينترنت هايي توسعه داده شد كه مجموعه TCP/IP را بكار مي گيرند، اگرچه اين مفاهيم براي هر اينترنت قابل بكارگيري هستند. BGP به پروتكل مسيرياب خارجي مطلوب براي اينترنت تبديل شده است.
توابع
BGP طراحي شد تا به مسيرياب ها، كه در اين استاندارد گذرگاه ها ناميده مي شوند، در سيستم هاي خودكار (Ass) متفاوت اماكان دهد در تبادل اطلاعات مسيريابي همكاري نمايند. اين پروتكل بر اساس پيغامهايي عمل مي كند كه در اتصالات TCP ارسال مي شوند. روايت جاري BGP، با نام BGP-4 (RFC 1771) شناخته مي شود.
سه رويه تابعي در BGP وجود دارد:
• تعيين همسايه
• قابليت دسترسي همسايه
• قابليت دسترسي شبكه
دو مسيرياب اگر به يك شبكه متصل شده باشند، همسايه هستند. اگر اين دو مسيرياب در دو سيستم خودكار متفاوت قرار داشته باشند، ممكن است بخواهند اطلاعات را مبادله نمايند. براي اين منظور، اول لازم است كه تعيين همسايه را انجام دهد. در نتيجه، تعيين همسايه زماني انجام مي شود كه دو مسيرياب
همسايه در دو سيستم خودكار متفاوت، در مبادلة اطلاعات مسيريابي به طور منظم توافق داشته باشند. يك رويه رسمي، تعيين همسايه مورد نياز مي باشد زيرا يكي از اين مسيرياب ها ممكن است تمايل به شركت نمودن نداشته باشد. براي مثال، مسيرياب ممكن است بار بيش از حد داشته باشد و نخواهد مسئول ترافيك ورودي از سيستم خارجي گردد. در فرآيند تعيين همسايه، يك مسيرياب، پيغام درخواستي را به ديگري مي فرستد، كه ممكن است آن را بپذيرد يا مردود نمايد. اين پروتكل، چگونگي دستيابي مسيرياب به آدرس يا حتي وجود مسيرياب ديگر را مورد توجه قرار نمي دهد. همچنين، چگونگي تصميم گيري براي نياز به
تبادل اطلاعات مسيريابي با آن مسيرياب خاص را نيز شامل نمي شود اين موارد بايد در زمان پيكربندي يا توسط دخالت فعال مدير شبكه مشخص گردند.
به منظور انجام عمل تعيين همسايه، يك مسيرياب، پيغام Open را به ديگري مي فرستد. اگر مسيرياب مقصد، اين درخواست را بپذيرد، پيغام keepalive را در پاسخ بر
مي گرداند.
پس از برقراري رابطة همسايگي، رويه قابليت دسترسي همسايه استفاده مي شود تا اين رابطه را حفظ نمايد. هر يك از طرفين نيازمند اطمينان يافتن از وجود طرف ديگر و حضور داشتن در رابطة همسايگي مي باشند. براي اين منظور، اين دو مسيرياب به طور دوره اي پيغامهاي keepalive را براي يكديگر صادر مي نمايند.
آخرين روية مشخص شده توسط BGP. قابليت دسترسي شبكه است. هر مسيرياب، پايگاه داده اي از شبكه ها را نگهداري مي كند كه مي تواند به آنها دسترسي داشته باشد و مسير انتخابي براي رسيدن به هر شبكه را نيز مشخص مي كند. هر زمان كه تغييري در اين پايگاه داده انجام گيرد، مسيرياب، پيغام به روز آوري را صادر مي كند كه بين همة مسيرياب هاي ديگر پياده كنندة BGP پخش مي گردد. چون پيغام به روزآوري پخش مي شود، همة مسيريابهاي BGP مي توانند اطلاعات مسيريابي خود را ايجاد و حفظ نمايند.
پيغامهاي BGP
هر پيغام با سرآمدي به طول 19-octet حاوي سه فيلد شروع مي شود، همانگونه كه توسط بخش سايه دار هر پيغام در اين شكل نشان داده شده است:
• علامت: براي تعيين اعتبار رزرو شده است. فرستنده مي تواند مقداري را در اين فيلد قرار دهد كه به عنوان بخشي از مكانيزم تعيين اعتبار استفاده مي شود تا گيرنده را مجبور به بازبيني مشخصة فرستنده نمايد.
• طول: طول پيغام بر حسب تعداد octet مي باشد.
• نوع: نوع پيغام: keepalive, notification, update, open
به منظور دستيابي به يك همسايه، مسيرياب ابتدا يك اتصال TCP با مسيرياب همساية مورد نظر باز مي كند . سپس پيغام Open مي فرستد. اين پيغام، يك AS را مشخص مي كند كه فرستنده به آن متعلق مي باشد و آدرس IP آن مسيرياب را فراهم مي نمايد. همچنين شامل پارامتر زمان نگهداري است، كه تعداد ثانيه هايي را نشان مي دهد كه فرستنده براي مقادير تايمر نگهدارنده پيشنهاد مي كند. اگر گيرنده براي باز نمودن رابطة همسايگي آمادگي داشته باشد، مقدار تايمر نگهدارنده را كه حداقل زمان نگهداري خود و زمان نگهداري پيغام Open مي باشد، محاسبه مي نمايد. اين مقدار محاسبه شده، حداكثر ثانيه هايي است كه مي تواند بين دريافت متوالي پيغامهاي keepalive و update توسط فرستنده سپري شود.
پيغام keepalive فقط شامل يك سرآمد است. هر مسيرياب، اين پيغامها را به هر يك از طرف هاي نظير خود مي فرستد تا از انقضاي مدت تايمر جلوگيري نمايد.
• اطلاعاتي در مورد يك مسير از طريق اينترنت. اين اطلاعات براي افزوده شدن به پايگاه دادة هر مسيرياب گيرندة آن در دسترس مي باشد.
• ليستي از مسيرياب هايي كه قبلاً توسط اين مسيرياب به آنها اعلام شده كه در حال خارج شدن هستند.
پيغام update مي تواند حاوي يك يا هر دو نوع اطلاعات باشد. اطلاعاتي در مورد يك مسير از طريق شبكه شامل سه فيلد است: فيلد اطلاعات قابليت دسترسي لاية شيك (NLRI)، ويژگي هاي طول كل مسير، و فيلد ويژگي هاي مسير. فيلد NLRI شامل ليستي از شناسه هاي شبكه هاي است كه مي توانند توسط اين مسيرياب قابل دسترسي باشند. هر شبكه توسط آدرس IP خود شناسايي مي شود، كه در واقع بخشي از آدرس IP كامل اسا. بخاطر آوريد كه آدرس IP كميتي 32 بيتي است به شكل (ميزبان، شبكه). بخش سمت چپ يا پيشوند اين كميت، شبكة خاص را مشخص مي كند.
فيلد ويژگي هاي مسير حاوي ليستي از ويژگي هايي است كه براي اين مسير خاص بكار گرفته مي شوند. ويژگي هاي تعريف شده عبارتند از:
• origin:نشان مي دهد كه آيا اين اطلاعات توسط پروتكل مسيرياب داخلي (براي مثال، OSPF) يا توسط پروتكل مسيرياب خارجي (در حالت خاص، BGP)
توليد شده است.
• As- path: ليستي از AS هايي كه براي اين مسير ياب پيموده مي شوند.
• Next- Hop: آدرس IP مسيرياب مرزي كه بايد به عنوان گام بعدي به مقصدهاي ليست شده در فيلد NLRI استفاده شود.