Friday, January 1, 2016

STP လို႕ေခၚတဲ့ Spanning Tree Protocol အပိုင္း (၁)


          ေနာက္ပိုင္း lab ေတြလုပ္တဲ့အခါမွာ spanning tree protocol နဲ႕ပါတ္သက္ၿပီးေတာ့ ေျပာစရာေတြရွိ လာတယ္။ lab ေတြထဲမွာထည့္ေျပာျပန္ရင္လည္း စာရွည္တယ္။ လိုရင္းလည္းမေရာက္ေတာ့ဘူး။ ဒီေတာ့ ကၽြန္ေတာ္ STP အေၾကာင္းကို အပိုင္းေလးေတြခြဲၿပီးေျပာျပမယ္။ ေမးခြန္းေလးေတြနဲ႕ကၽြန္ေတာ္ရွင္းျပပါ့မယ္။ အိုေခ။

STP ဆိုတာဘာလဲ?
          Switching loop မျဖစ္လာေအာင္ျပဳလုပ္ေပးတဲ့ protocol ပဲျဖစ္ပါတယ္။ သူ႕ကို switch ေတြမွာသံုးတယ္။

STP ကဘာေတြလုပ္ေပးတာလဲ?
          Switching loop မျဖစ္ေအာင္လုပ္ေပးတာပါ။ ဒီေနရာမွာ switching loop ဆိုတာဘာလဲဆိုေတာ့ ေအာက္ကပံုကိုအရင္ၾကည့္ရေအာင္။ ဒါကို simple network ဒါမွမဟုတ္ switched network လို႕ေခၚရမွာေပါ့။



အဲပံုမွာေတြ႕လား။ switch ႏွစ္လံုးၾကား uplink ကို ႏွစ္ေခ်ာင္းထိုးထားတယ္။ ဘာ့ေၾကာင့္ uplink ကို ႏွစ္ေခ်ာင္းထိုးထားသလဲဆိုေတာ့ fault tolerance ရွိေအာင္လို႕ပါ။ ရွင္းရွင္းေျပာရရင္ တကယ္လို႕မွာ uplink ႏွစ္ေခ်ာင္းမွာ တစ္ေခ်ာင္းက အေၾကာင္းအမ်ိဳးမ်ိဳးေၾကာင့္ ဆက္သြယ္မႈျပတ္ေတာက္သြားခဲ့ရင္ network down မသြားေအာင္ ေနာက္တစ္ႀကိဳးက ဆက္ၿပီးလုပ္ေဆာင္ေပးဖို႕အတြက္သံုးတာပါ။ ရည္ရြယ္ခ်က္ကလည္း ေကာင္းတယ္။ လိုလည္းလိုအပ္တဲ့လုပ္ေဆာင္မႈတစ္ခုပါ။ ဒါေပမဲ့ ကံမေကာင္းစြာနဲ႕ပဲ ဒီလို redundant path ထားလိုက္ျခင္းဟာ switching loop ကိုျဖစ္ေပၚလာေစဖို႕အေၾကာင္းဖန္လာခဲ့ပါတယ္။ switch ဟာ host ေတြက သက္ဆိုင္ရာ network ထဲမွာရွိတဲ့ အျခား host ေတြနဲ႕ အျပန္အလွန္ ဆက္သြယ္မႈေတြျပဳလုပ္တဲ့အခါမွာ ၾကားခံဆက္သြယ္ေပးတယ္။ ဘယ္လိုလဲဆိုေတာ့ သက္ဆိုင္ရာ host ေတြရဲ႕ MAC address ေတြကို MAC table ထဲမွာမွတ္သားၿပီး သူ႕ဆီကိုေရာက္လာတဲ့ frame ရဲ႕ destination MAC address ကိုၾကည့္ၿပီး ဘယ္ port ကေနပို႕ရမလဲဆိုတာကိုဆံုးျဖတ္တာပဲျဖစ္ပါတယ္။ ဒီအထိေတာ့ ျပသနာမရွိေသးဘူးဗ်။ ျပသနာက ဒီလိုဗ် J။ အေပၚက topology မွာ PCA နဲ႕ PC B ဆိုၿပီးေတြ႕လား။ အကယ္လို႕မ်ား PC A သည္ PC B ကို data ပို႕ခ်င္တယ္။ ဒါေပမဲ့ သူ႕မွာ PC B ရဲ႕ MAC address ကိုမသိဘူးျဖစ္ေနတယ္။ ဒီေတာ့ သူကဘာလုပ္သလဲဆိုေတာ့ အရင္ဆံုး broadcast frame ကို Switch A ဆီကိုပို႕တယ္။ သူမသိတဲ့ PC B ရဲ႕ mac address ကိုရွာရမွာကိုး။ ဒီေတာ့ switch A က ဘာလုပ္သလဲဆိုေတာ့ PC A နဲ႕ခ်ိတ္ဆက္ထားတဲ့ port fa0/5 ကလြဲရင္ က်န္တဲ့ switch port ေတြအားလံုးဆီကို broadcast frame ကိုပို႕လိုက္တယ္။ fa0/0 နဲ႕ fa0/1 တို႕ကိုပို႕လိုက္တယ္ေပါ့။ ဒီလိုနဲ႕ fa0/0 နဲ႕ fa0/1 တို႕နဲ႕ခ်ိတ္ဆက္ထားတဲ့ switch B ရဲ႕ port fa0/0 နဲ႕ fa0/1 ဆီကို broadcast frame ေရာက္လာတယ္။ ဒီမွာျပသနာစၿပီ။ ေအာက္ကပံုကိုၾကည့္ပါ။



အကယ္လို႕မ်ား switch B ရဲ႕ fa0/0 port ဆီကို broadcast frame အရင္ေရာက္ခဲ့တယ္ဆိုလို႕ရွိရင္ swtich B ကဘာလုပ္သလဲဆိုေတာ့ broadcast frame ၀င္လာတဲ့ fa0/0 port ကလြဲရင္ က်န္တဲ့ fa0/1 နဲ႕ fa0/5 ဆီကို broadcast frame ကိုထပ္ၿပီးပို႕ေပးလိုက္ပါတယ္။ အျပန္အလွန္ေျပာရရင္ switch B ရဲ႕ fa0/1 ကို broadcast frame အရင္ေရာက္ခဲ့တယ္ဆိုလို႕ရွိရင္လည္း switch B သည္ fa0/1 port ကလြဲရင္ က်န္တဲ့ fa0/5 နဲ႕ fa0/0 port ေတြဆီကိုပါပို႕လိုက္မွာျဖစ္ပါတယ္။ ဒီေတာ့ switch A ဆီကုိ broadcast frame ျပန္ေရာက္သြားျပန္ေရာ။ ေအာက္ကပံုအတိုင္းေပါ့။




တကယ္ဆိုရင္ အခ်စ္ပဲလိုတယ္မဟုတ္ဘူးေနာ္ J။ switch B က PC B ဆီကို broadcast frame ေရာက္ၿပီးသြားရင္ ၿပီသြားရမွာျဖစ္ပါတယ္။ fa0/5 ဆီကိုပဲ broadcast frame ေရာက္သြားတာမဟုတ္ပဲ fa0/1 ဆီကုိပါထပ္ပို႕ေတာ့ broadcast frame ဟာ သူ႕အရင္လာရာျဖစ္တဲ့ switch A ဆီကုိ ျပန္ေရာက္သြားျပန္တယ္။ ဒီလိုနဲ႕ switch A ကလည္း ထံုးစံအတိုင္း broadcast frame ၀င္လာတဲ့ fa0/1 port ကလြဲရင္ က်န္တဲ့ fa0/5 နဲ႕ fa0/0 ဆီကုိျပန္ပို႕ျပန္တယ္။ fa0/0 ကေန switch B ဆီကိုျပန္ေရာက္ျပန္တယ္။ အိုး… ဂ်ာေအးသူ႕အေမရိုက္သလို အဆံုးမသတ္ႏိုင္ေတာ့တဲ့ endless broadcast frame ဟာ network ထဲမွာလည္ေနၿပီျဖစ္ပါတယ္။ ဒါကို broadcast strom ျဖစ္တယ္လို႕ေခၚပါတယ္။ ဒါ့အျပင္ multiple frame transmission ေတြျဖစ္ႏိုင္တယ္။ အေပၚမွာျပထားတဲ့ network မွာဆိုရင္ host B ဟာ ဆက္တိုက္ဆိုသလိုပဲ broadcast frame ေတြရေနမယ္။ ဒီေတာ့ host B မွာလည္း error ေတြဆင့္ကဲဆင့္ကဲတက္လာမယ္။ ၿပီးေတာ့ switch A နဲ႕ B မွာလည္း MAC address instability လို႕ေခၚတဲ့ MAC address table ေတြမွာ error ေတြတက္လာမယ္။ ဘာျဖစ္လို႕လည္းဆိုေတာ့ switch ေတြက သူတို႕ဆီကို ေရာက္လာတဲ့ frame ရဲ႕ destination MAC address ကိုၾကည့္ၿပီးေတာ့ MAC address table ကိုေဆာက္တာေလ။ frame ေတြက looping ပတ္ေနေတာ့ ဘယ္ MAC address က ဘယ္ port ကလာတယ္ဆိုတာကို အတိအက်မသိေတာ့ဘူး။ ဒီေတာ့ MAC address table ႀကီးလည္း ပ်က္ေတာ့တာေပါ့။ ဒီေတာ့ ဘာျဖစ္သလဲဆိုေတာ့ ေနာက္ဆံုး network ႀကီးတစ္ခုလံုး စကၠန္႕ပိုင္းအတြင္းမွာပဲ busy ျဖစ္သြားၿပီး ဘာမွကိုလုပ္လို႕ရေတာ့မွာမဟုတ္ပါဘူး။ ဒါဟာ ရိုးရွင္းၿပီး သိပ္ကိုေၾကာက္ဖို႕ေကာင္းတဲ့ network problem တစ္ခုျဖစ္ပါတယ္။ networking field မွာလည္း အျမဲလိုလို ႀကံဳေတြ႕ရတဲ့ problem ျဖစ္ၿပီး network တစ္ခုလံုးက်လို႕ အေရးေပၚအေျခအေနထိေတာင္ေရာက္ခဲ့ တာေတြကိုလည္း ႀကံဖူးပါတယ္။ ဒီေတာ့ ဘယ္လိုလုပ္ၾကမလဲ။ redundant ထားေတာ့လည္း ျပသနာတက္ဦးမယ္။ မထားေတာ့လည္း ျပသနာ။ ခက္ေတာ့ခက္ေနၿပီေပါ့။ ဒါေပမဲ့လည္း ေနာက္ဆံုးမွာေတာ့ သူရဲ႕ေကာင္း STP ဟာ ဒီျပသနာကိုေျဖရွင္းေပးဖို႕အတြက္ ေပၚထြက္လာခဲ့ပါတယ္။ ဒီမွာခဏေလးရပ္ပါရေစ။ အပိုင္း ၂ မွာေတာ့ STP ဟာ ဘယ္လို redundant path ေတြကို loop မျဖစ္ေအာင္ ကာကြယ္သြားသလဲဆိုတာကို ေျပာျပေပးပါ့မယ္။ 

No comments:

Post a Comment