ضعف دو پروتکل HSRP و VRRP این است که برای Load Blancing نیاز به Virtual IP های مختلفی دارند و ما را با Client ها در گیر می کند ولی GLBP این مشکل را حل کرده است . و هدف از GLBP این است که ما برروی Client ها یک Virtual IP قرار می دهیم و GLBP خودش تقسیم بندی را انجام می دهد .
GLBP پروتکول انحصاری Cisco می باشد و اکثر مفاهیم HSRP و VRRP را نیز دارد و برروی Device های لایه ۳ (Router و Switch ) اجرا می شود
GLBPبا IOS های Version 12.4 به بالا کار می کند و به جای این که یک Device برای Active و یک Device به جای Standby انتخاب شود همه Device ها در عملیات شرکت می کنند
عملیات Redundancy در GLBP با ARP و MAC انجام می شود یعنی هر کدام از Device ها که در گروه GLBP هستند یک MAC دارند که بر اساس ان ARP ارسال می کنند
یعنی زمانی که یک Client در خواست ARP برای Virtual IP ارسال می کند GLBP می اید مشخص می کند که کدام Device پاسخ Client را دهد.
GLBP یک Device را بر اساس بالاترین Priority به عنوان( AVG (Active virtual gateway انتخاب می کند که این Device مسئول پاسخ دادن به در خواست های ARP است در واقع این Device مشخص می کند که چه کسی پاسخ این در خواست ها را بدهد هر کدام از Device ها در GLBP دارای یک MAC مجازی هستند که این ادرس MAC را AVG به هر کدام می دهد و GLBP یک Device دیگر را نیز به عنوان( AVF (Active Virtual Forwarder انتخاب می کند که Backup برای AVG می باشد و به بقیه Device هایش می گوید Secondary
شماره گروه ها در GLBP بین ۰-۱۰۲۳ می باشد و Priority نیز بین ۰-۲۵۵ می باشد و بسته های Hello هر۳ ثانیه یک بار می باشد و Hold نیز هر ۱۰ ثانیه می باشد مانند HSRP
اگر بسته های Hello از AVF به AVG نرسد AVG یک Device دیگر را به عنوان AVF تعیین می کند. ممکن است این AVF وظیفه Fowrvarding در گروه دیگر را نیز بر عهده داشته باشد. که این اتفاق باعث می شود که Load زیادی برروی ان باشد برای جلوگیری از این اتفاق یک Timer تعیین می کنیم که تا این زمان بتواند هر دو وظیفه را انجام دهد
به این Timer میگوییم Redirect Timeout که این Timer زمانی را مشخص می کند که از این زمان به بعد AVF تنها نقشه جدید را ایفا کند که به صورت پیش فرض ۶۰۰ ثانیه می باشد
تابع Weighting : می توانیم با این تابع تعیین کنیم اگر تغییری در Device رخ داد چه کاری انجام دهد . با دستور زیر در مد Interface این تابع را اجرا می کنیم.
R(config-if)#glbp ID weighting NUMBER lower NUMBER upper NUMBER
که در این دستور به جای NUMBER ها باید عدد قرار دهیم که برای Weighting بین ۱-۲۵۴ و برای lowerبین ۰-۱۰۹ و برای Upper بین ۵۲-۱۱۰ می باشد
دستور Trac در GLBP به شکل زیر در مد Interface می باشد
R(config-if)#glbp ID weighting track NUMBER decrement SUBTRACT
در این دستور به جای NUMBER شماره Trac را می گذاریم که بین ۱-۵۰۰و به جای SUBTRACT میزانی که می خواهیم از Weighting کم شود را قرار می دهیم که بین ۱-۲۵۵ می باشد
LoadBalencing در GLBP به ۳ روش انجام می شود
- Round Robin :این حالت حالت پیش فرض می باشد که بسته هارا بین Interface ها تقسیم می کند
- Weighted :وزن هر Interface مشخص کننده حجمی است که می گیرد
- Host Dependent :در این روش برای هر Client یک Virtual IP را مشخص می کنیم تا جواب ان Client را دهد
بادستور زیر می توان تعیین کرد که از کدام روش استفاده کند
R(config-if)#Glbp ID load-balancing ?