NLB Network Load Balancing (Farsi User Guide)
Resource: Windows 2000 Server Resource kit Distributed System Guide

Winteacher.com > Part2 > NLB > NLB with Network Hardware Switches

NLB with Network Hardware Switches

برای درک کامل کار سرویس NLB باید پشت صحنه کار این سرویس را  درک کرد . در این قسمت چگونگی ارتباط آن با Hardware Switch را بررسی می کنیم .

برای برقراری ارتباط بین یک  یا چند Client با کلیه Host های یک Cluster در سرویس NLB باید یک جور Broadcast Traffic ایجاد شود.

قبلا گفتیم که Client Request به همه عضو ها ارسال می شود اما فقط یکی از آنها به آن درخواست مدنظر جواب می دهد .بدلبل نوع ترافیک شما نمی توانید از Switch Layer 3 استفاده کنید .

شما یا باید از یک Hub استفاده کنید یا یک Switch L2 استفاده کنید .

Figure 1 Network Load Balancing cluster running in unicast mode with MaskSourceMAC enabled

سوئیچ رابط میانه و یا واسطه بین Computer ها

 و Server ها و نیز دیگرسوئیچ ها می باشد

اگر شما توسط یک سوئیچ  به یک Cluster

وصل شده اید باید یک سوئیچ  لایه دو داشته باشید

و نه سوئیچ  لایه 3 و یا بالا تر بدلیل اینکه تمامی

Host های شما به اشتراک گذاشته شده اند با

یک Virtual IP Address یکسان

و برای این هدف شما حتما باید یک سوئیچ لایه 2

داشته باشید .تذکر سوئیچ لایه 3 رفتارش با لایه 2

فرق می کند و در سرویس NLB کاربردی ندارد .

MaskSourceMAC is enabled

در حالت Unicast Mode تمامی MAC Address های کارت شبکه های Host های

عضو Cluster تغییر کرده و به یک MAC مجازی و یکسان تغییر می کند .

در این حالت تمامی Host عضو به عنوان مقصد Client Request ها می شود چون

دارای MAC Address های یکسان شده اند این روش NLB می باشد و بدین گونه عمل می کند.

همانطور که در شکل بالا می بینید در حالت Incoming هر دو سرور یا Host دارای MAC Address:02-bf-01-02-03-04 می باشند

و سوئیچ Packet ها را بدلیل وجود

دو Port دارای MAC Address های یکسان به هر دو ارسال می کند در اینجا منظور  Port1,2 می باشد.در واقع Virtual IP Address شما

دارای این MAC Address مجازی می باشد.

 
MaskSourceMAC is disabled

در روش بالا که NLB از آن برای کار خود استفاده می کند یک مشکل جدی وجود دارد وآن به شرح زیر می باشد

زمانی که Packet Outgoing برای جواب به Client ها از یکی از Host ها خارج بشود و دوباره

Client ها درخواست ارسال کنند سوئیچ نمی تواند آن Packet ها را برسمیت بشناسد چون

سوئیچ برای هر Port خود یک MAC Address Unique و یا ثابت درنظر می گیرد

و دو Port  با یک MAC برای سوئیچ  تعریف نشده به همین دلیل Switch Flooding رخ می دهد

بدین صورت که عکس العمل آن در برابر این مشکل بدین گونه می باشد که آن Packet را

که MAC آدرسش را نمی شناسد برای تمامی Port های خود ارسال می کند این عمل باعث

می شود که  ترافیک شبکه بسیار بالا برود و سوئیچ از حداکثر قدرت خود برای ارسال Packet ها استفاده

کند البته این مشکل را خود سرویس NLB ایجاد می کند برای اینکه بتواند از حداکثر قدرت انتقال شبکه استفاده کند

ولی مشکل اینجا می باشد که ترافیک کاری دیگر سیستم های شبکه

که ربطی به Cluster ندارند بسیار کم می شود و Packet ها برای آنها هم ارسال می شود .

برای جلوگیری از این مشکل می توان همانند شکل زیر از یک Hub استفاده کرد.

Figure 2 Network Load Balancing cluster running in unicast mode with MaskSourceMAC Disabled

در این حالت قانون سوئیچ نیز رعایت شده و هر Port دارای یک MAC Address Unique می باشد در این حالت دیگر

Switch Flooding رخ نمی دهد .وجود Hub موجب کاهش ترافیک نمی شود اما برای اینکه شما ترافیک Outgoing

خود را بهتر عبور دهید می توانید برای هر یک از Host های خود یک کارت شبکه دیگر نیز نصب کنید تا ترافیک روانتر و با

سرعت بالاتری عبور کند .این کار باعث می شود کنجایش Hub با ترافیک Outgoing پر نشود و نیز موجب می شود مسیر های

ورودی وخروجی Cluster شما در Switch دارای Port های متفاوت باشد در نتیجه به Switch نیز فشار نمی آید و می تواند

راحتر و با سرعت بالاتری کار کند .

 
NLB Network Load Balancing (Farsi User Guide)

LastUpdate:2005/04/05

Winteacher.com > Part2 > NLB > NLB with Network Hardware Switches