BPDU چیست و نحوه فعال شدن آن در سوئیچ
BPDU یا واحد داده ی پروتکل پل، پیامهایی کنترلی و کلیدی در شبکههای سوئیچینگ لایه ی دوم هستند که نقش اصلی آنها جلوگیری از ایجاد حلقههای مخرب در شبکه است. این پیام ها هسته ی عملکرد پروتکل درخت پوشا (STP) را شکل میدهند و به سوئیچ های شبکه امکان میدهند ساختار توپولوژی شبکه را شناسایی کرده و درباره ی مسیرهای فعال یا مسدود تصمیمگیری کنند.
شناخت دقیق انواع BPDU برای مهندسان و مدیران شبکهای که به پایداری، پیش بینی پذیری و طراحی صحیح شبکه های سوئیچ شده اهمیت میدهند، یک ضرورت حرفهای محسوب میشود. از همین سو در ادامه به بررسی ” BPDU چیست و نحوه فعال شدن آن در سوئیچ ” می پردازیم.
BPDU چیست:
BPDU مخفف عبارت Bridge Protocol Data Unit است و به فریمهای اطلاعاتی کنترلی گفته میشود که دادههای مرتبط با پروتکل Spanning Tree را در خود حمل می کنند. زمانی که یک سوئیچ در شبکه شروع به کار میکند، به صورت خودکار فریمی از نوع BPDU ارسال میکند.
این فریم دارای آدرس MAC مبدا یکتایی است که به پورت ارسال کننده تعلق دارد و از یک آدرس MAC چند پخشی بهعنوان مقصد استفاده میکند. این آدرسهای Multicast معمولاً به شکلهایی مانند 01:00:0C:CC:CC:CD یا 01:80:C2:00:00:00 دیده میشوند.
در عمل، BPDU نوعی اعلام حضور سوئیچ در شبکه محسوب میشود. سوئیچ با ارسال این فریم، خود را به سایر سوئیچهای موجود معرفی کرده و اطلاعاتی درباره پورتها، آدرسها و وضعیت ارتباطاتش در اختیار آنها قرار میدهد. برای اینکه الگوریتم STP بتواند بهدرستی وظیفه خود را انجام دهد، لازم است سوئیچها اطلاعات دقیق و کاملی از وضعیت خود و لینکهایی که در توپولوژی شبکه ایجاد کردهاند، با یکدیگر به اشتراک بگذارند.
این تبادل اطلاعات حیاتی از طریق فریمهای BPDU انجام میشود. فریمهای BPDU تنها برای سوئیچها و Bridgeهای لایه دوم ارسال میشوند و آن هم بهصورت Multicast، بهطوری که فقط تجهیزاتی که در حالت Listening قرار دارند قادر به دریافت و پردازش آنها هستند.
یکی از اصلی ترین وظایف پروتکل و الگوریتم Spanning Tree، شناسایی و جلوگیری از ایجاد Loop در شبکههای سوئیچ شده است. در صورتی که در توپولوژی سوئیچ ها حلقهای شکل بگیرد، مسیرهایی به وجود میآید که باعث میشود بستههای اطلاعاتی بهصورت مداوم و تا بینهایت در شبکه گردش کنند.
در چنین شرایطی، سوئیچها با تکیه بر الگوریتم STP که بر پایه اطلاعات BPDU عمل میکند، با یکدیگر هماهنگ میشوند و پورتی یا پورتهایی را که عامل ایجاد حلقه هستند، غیرفعال میکنند. با این کار، از بروز Loop در شبکه ی لایه دوم جلوگیری شده و پایداری شبکه حفظ میشود.
انواع BPDU:
در چارچوب استاندارد IEEE 802.1D مربوط به پروتکل Spanning Tree، واحدهای داده ی پروتکل پل یا BPDU به دو دسته ی اصلی تقسیم میشوند. افزون بر این دو نوع پایه، یک پیام تایید نیز وجود دارد که در مدیریت و اعلام تغییرات توپولوژی شبکه مورد استفاده قرار میگیرد.
بهطور کلی، BPDUها شامل موارد زیر هستند:
- Configuration BPDU (CBPDU)
- Topology Change Notification (TCN) BPDU

Configuration BPDU (CBPDU):
CBPDUها نوعی از واحدهای داده ی پروتکل پل هستند که با هدف تبادل اطلاعات توپولوژی میان سوئیچها در یک دامنه STP ارسال میشوند. این پیامها در مراحل ابتدایی راهاندازی شبکه توسط تمام سوئیچهای عضو دامنه STP تولید میشوند تا فرآیند انتخاب Root Bridge آغاز و تکمیل شود. پس از مشخص شدن Root Bridge و رسیدن شبکه به وضعیت پایدار، در شرایط عادی هر پورت Designated بهصورت دورهای اقدام به ارسال CBPDU میکند تا پایداری توپولوژی حفظ شود.
این BPDUها در اصل از سوی سوئیچ ریشه شبکه منشأ میگیرند و وظیفه هدایت، کنترل و اعتبارسنجی جریان اطلاعاتی که از Root Bridge منتشر میشود را بر عهده دارند و در عین حال نقش مهمی در محافظت از شبکه در برابر تغییرات یا تهدیدات ناخواسته خارجی ایفا میکنند.
نحوه عملکرد CBPDU:
در زمان شروع به کار شبکه، هر سوئیچ بهطور پیشفرض خود را بهعنوان Root Switch فرض کرده و در بازههای زمانی مشخص اقدام به تولید و ارسال CBPDU میکند. هر پورتی که یک CBPDU دریافت میکند، شناسه سوئیچ خود را با شناسه Root Switch موجود در BPDU دریافتی مقایسه مینماید.
اگر شناسه Root Switch دریافتشده از نظر اولویت برتر باشد (یعنی مقدار کمتری داشته باشد)، سوئیچ دریافتکننده دیگر خود را ریشه در نظر نمیگیرد و بهعنوان یک سوئیچ غیرریشه عمل میکند.
در این حالت، سوئیچ بهجای تولید BPDU جدید، برخی فیلدهای مشخص در BPDU دریافتی را بروزرسانی کرده و آن را از طریق پورتهای Designated خود ارسال میکند. در نهایت، سوئیچی که کمترین شناسه را در میان همه دارد بهعنوان Root Bridge انتخاب میشود و سایر سوئیچها BPDUها را از آن رله میکنند.
محتوای CBPDU:
اطلاعات BPDU در بخش Payload یک فریم لایه دوم قرار میگیرد. یک CBPDU شامل مجموعهای از فیلدهای اطلاعاتی است که STP برای تصمیمگیریهای خود از آنها استفاده میکند. از جمله این فیلدها میتوان به Protocol ID اشاره کرد که در استاندارد IEEE 802.1D مقدار ثابت 0x0000 دارد، Protocol Version ID که برای STP برابر با 0x00 است، و BPDU Type که در CBPDU مقدار 0x00 را به خود اختصاص میدهد.
علاوه بر این، CBPDU شامل فیلدهای Root ID (شناسه پل ریشه فعلی)، Root Path Cost (هزینه مسیر تا پل ریشه)، Bridge ID (شناسه پل Designated) و Port ID (شناسه پورت Designated) است. فیلدهای زمانی مهم دیگری نیز در این پیام وجود دارند که شامل Message Age، Max Age، Hello Time (بازه زمانی ارسال BPDUها) و Forward Delay (مدتزمان تاخیر پورت در حالتهای Listening و Learning) میشوند که همگی نقش کلیدی در کنترل و پایداری عملکرد STP دارند.
Topology Change Notification (TCN) BPDU:
پیامهای TCN BPDU توسط سوئیچهایی که نقش Root Bridge را ندارند در دامنه STP تولید و ارسال میشوند تا سایر تجهیزات شبکه را از وقوع هرگونه تغییر در توپولوژی آگاه کنند. این پیامها همواره در مسیر سوئیچ ریشه حرکت میکنند و هدف آنها گزارش تغییرات ایجادشده در ساختار شبکه، همزمان با وضعیت توپولوژی در حال پایدارسازی، به Root Switch است.
ایجاد تغییر در توپولوژی میتواند به دلایل مختلفی رخ دهد. برای مثال تغییر وضعیت یک پورت از حالت Up به Down یا بالعکس، یا قطع شدن دریافت BPDU از یک همسایه در بازه زمانی مشخص. در TCN BPDU مقدار فیلد BPDU Type برابر با 0x80 است و ساختار این پیام نسبت به CBPDU بسیار سادهتر و کوتاهتر بوده و تنها شامل Protocol ID، Protocol Version ID و نوع BPDU میشود.
نحوه عملکرد TCN BPDU:
به محض اینکه یک سوئیچ غیرریشه تغییر توپولوژی را تشخیص دهد، یک فریم TCN BPDU ایجاد کرده و آن را از طریق Root Port خود به سمت Root Bridge ارسال میکند. در شبکههایی با ساختار چندلایه، اگر یک سوئیچ میانی (Intermediate Switch) این پیام را دریافت کند، خودش نیز یک TCN BPDU جدید تولید کرده و آن را در مسیر بالادست، به سمت سوئیچ ریشه، ارسال میکند. پس از آنکه Root Bridge یک TCN را دریافت کرد، در پاسخ یک پیام تایید تغییر توپولوژی یا TCA BPDU برای سوئیچ ارسالکننده میفرستد.
سپس سوئیچ ریشه یک Configuration BPDU با فعال بودن بیت Topology Change (TC) تولید کرده و آن را بهصورت Broadcast در کل شبکه منتشر میکند تا تمامی سوئیچها از تغییر ایجادشده در توپولوژی مطلع شوند.
نقش و کاربرد BPDU در شبکههای لایه دوم:

BPDUها در دنیای واقعی شبکه نقش بسیار مهمی در تضمین پایداری و سلامت شبکههای لایه دوم دارند و در سناریوهای مختلف مورد استفاده قرار میگیرند:
- انتخاب سوئیچ ریشه: در مراحل ابتدایی راهاندازی شبکه، CBPDUها با مقایسه شناسه سوئیچها، فرآیند انتخاب Root Bridge را انجام میدهند و سوئیچی که کمترین شناسه را داشته باشد بهعنوان ریشه شبکه تعیین میشود.
- شناسایی و جلوگیری از ایجاد حلقه: BPDUها با در اختیار قرار دادن اطلاعات دقیق توپولوژی، الگوریتم STP را قادر میسازند مسیرهای حلقهای را تشخیص دهد و پورتهای مازاد را مسدود کند. به این ترتیب از بروز Broadcast Storm و اختلال در شبکه جلوگیری میشود.
- کنترل و اعتبارسنجی جریان داده: این پیامها در مدیریت و کنترل جریان ترافیک داخلی شبکه نقش دارند و لایهای از امنیت اولیه را در برابر برخی تهدیدات و اتصالهای ناخواسته فراهم میکنند.
- اعلام تغییرات توپولوژی: TCN BPDUها به Root Bridge امکان میدهند تغییرات شبکه، مانند قطع یا وصل شدن لینکها، را در کوتاهترین زمان تشخیص دهد و با کاهش زمان همگرایی (Convergence)، شبکه سریعتر به وضعیت پایدار بازگردد.
افزایش امنیت با BPDU Guard:
ویژگی BPDU Guard یک مکانیزم امنیتی پیشرفته در پروتکل STP است که توسط Cisco توسعه یافته و به مدیران شبکه امکان میدهد مرزهای دامنه STP را تعریف کنند و توپولوژی فعال شبکه را در وضعیت قابل پیشبینی حفظ کنند. این قابلیت تضمین میکند که دستگاههایی که پشت پورتهایی با فعال بودن PortFast قرار دارند، نتوانند بر ساختار STP تاثیر بگذارند.
در صورتی که یک BPDU روی پورتی که PortFast و BPDU Guard در آن فعال است دریافت شود، BPDU Guard بلافاصله پورت را به حالت errdisable منتقل میکند و از هرگونه تلاش برای تصاحب نقش Root Bridge جلوگیری مینماید.
این مکانیزم بطور موثر از حملات DoS جلوگیری میکند و مانع از بهینهسازی نادرست شبکه میشود. برای مثال زمانی که یک دستگاه با اولویت پایینتر، مانند یک کامپیوتر معمولی که نرمافزار پل اجرا میکند، بهطور اشتباهی تلاش کند نقش Root Bridge را بر عهده بگیرد.
نتیجهگیری:
Bridge Protocol Data Units (BPDU) تنها پیامهای کنترلی ساده نیستند. آنها ستون فقرات مدیریت توپولوژی در شبکههای لایه دوم هستند و امکان میدهند سوئیچها بهصورت هماهنگ و بدون ایجاد حلقه، دادهها را منتقل کنند. Configuration BPDU (CBPDU) که از سوی Root Bridge ارسال میشود، مسئول تعیین ساختار شبکه، انتخاب ریشه و حفظ پایداری توپولوژی است و بهطور منظم برای اطمینان از عملکرد صحیح شبکه پخش میشود.
از سوی دیگر، Topology Change Notification (TCN) BPDU توسط سوئیچهای غیر ریشه تولید میشود تا تغییرات لحظهای در توپولوژی شبکه، مانند قطع یا وصل شدن لینکها، را سریعا به Root Bridge اطلاع دهد. این مکانیزم باعث کاهش زمان همگرایی شبکه و جلوگیری از اختلال در جریان داده میشود.
درک دقیق عملکرد CBPDU و TCN BPDU نه تنها برای پیادهسازی صحیح STP ضروری است، بلکه در عیبیابی، بهینهسازی عملکرد و افزایش امنیت شبکه نیز نقش حیاتی دارد. BPDUها از ایجاد حلقهها جلوگیری میکنند، طوفانهای Broadcast را مهار میکنند و با اطلاع رسانی سریع درباره تغییرات توپولوژی، زمان واکنش شبکه را به حداقل میرسانند. علاوه بر این، قابلیتهایی مانند BPDU Guard نشان میدهند که این پیامها نقش امنیتی نیز دارند و میتوانند از سوء استفاده دستگاههای غیرمجاز جلوگیری کنند.
در مجموع، BPDUها نهتنها شبکه را پایدار و امن نگه میدارند، بلکه امکان مدیریت هوشمندانه و کنترلشده توپولوژی را در شبکههای مدرن فراهم میکنند و به مهندسان شبکه ابزارهای قدرتمندی برای طراحی، نگهداری و بهینهسازی زیرساختهای سوئیچینگ ارائه میدهند.
| شما میتوانید از مسترشبکه بزرگترین فروشگاه اینترنتی تجهیزات شبکه انواع سوئیچ سیسکو را با بهترین قیمت و کیفیت همراه با گارانتی خریداری نمایید. |