Everything About IT Notes

Wednesday, December 26, 2012

OSI (7) Layers အေၾကာင္းသိေကာင္းစရာ အပိုင္း(၃)


7layersအဲဒါကုိကၽြန္ေတာ္တုိ႔အေနန႔ဲ Routing လုပ္တယ္လုိ႔ေခၚပါ တယ္။ ေနာက္တစ္မ်ိဳးျဖစ္တဲ့ Network Architecture ကုိမတူတဲ့Network ေတြၾကားမွာလည္း Network Layerဟာသူတုိ႔အခ်င္းခ်င္းၾကားမွာ၀င္ေရာက္ခ်ိတ္ဆက္ေပးပါတယ္။ DataTransferလုပ္လုိ႔ရနုိင္ေအာင္လုိ႔ပါ။ အဲဒီမွာ တစ္ခုေတာ့ ေျပာ ခ်င္ ပါ တယ္။ သူက Connection ရေအာင္ပဲ လုပ္ေပး တာပါ။
အဓိက ကေတာ့ Data Packet ေတြကုိ ပုိ႔နုိင္ေအာင္ လက္ခံနုိင္ေအာင္ သူကၾကား၀င္တံတားထုိးေပးတဲ့ သေဘာမ်ိဳးပါပဲ။ေျပာရရင္ေတာ့ Only for Routing and Data Transmission ပါပဲ။ တျခားလုိအပ္တဲ့ Data ကုိ Processing လုပ္နုိင္ေအာင္နားလည္ေအာင္ လုပ္ေဆာင္ေပး ရတာေတြကေတာ့ အေပၚပုိင္း Layer ေတြရဲ႕ တာ၀န္ပါ။သူနဲ႔မဆုိင္ပါဘူး။
Network Layer ရဲ႕အေရးပါတဲ့ေနာက္ထပ္လုပ္ေဆာင္မႈတစ္ခုရွိပါေသးတယ္။ ခုနက ကၽြန္ေတာ္ေျပာခဲ့သလုိပဲမတူညီတဲ့ Network ေတြၾကားမွာ ၀င္ေရာက္တံတားထုိးေပးတဲ့သေဘာ Network Layer ကလုပ္ေဆာင္ပါတယ္။ အဲဒီလုိ လုပ္ေဆာင္တဲ့ေနရာမွာ တံတားတစ္စင္းပဲထုိးလုိ႔ရတယ္။
တျခားေနရာကသြားစရာလမ္းမရွိေတာ့ဘူး။ဒီတစ္လမ္းပဲရွိေတာ့တယ္ဆုိရင္ေတာ့သိပ္မသိသာပါဘူး။ဒါေပမယ့္တျခားသြားလုိ႔ရတဲ့လမ္းေတြလည္းရွိတယ္။ အဲဒီလမ္းေတြဟာလည္း Data Packets ေတြကုိ Receiver (Destination)ဆီကုိ ေရာက္ေစနုိင္တယ္ဆုိရင္ အဲဒီလမ္းေတြမွာလည္းတံတားေတြထုိး လိုက္ျပီး Data Packets ေတြကုိတစ္လမ္းတည္းက တစ္စုတစ္ေ၀းတည္း မသြားေစေတာ့ဘဲ အဖဲြ႕ေတြခြဲျပီး တျခားလမ္းေတြကပါျဖန္႔ျပီးသြားခုိင္းပါတယ္။ ဒါဟာData Transfer Speed ကုိအမ်ားၾကီး တုိးတက္ေစပါတယ္။
အဲဒါမ်ိဳးဟာ Internet လုိအမ်ားသုံး Network ၾကီးေတြ(လမ္းေၾကာင္းေတြအမ်ားၾကီးအျပန္အလွန္ခ်ိတ္ဆက္ထားၾကတဲ့ Network အစုအေ၀းေတြမွာေပါ့။) ေပၚကေန DataTransfer လုပ္တဲ့အခါမွာ သိပ္အေရးပါပါတယ္။
ဒါေပမယ့္အဲဒီလုိ လမ္းေၾကာင္းေတြခြဲတဲ့အခါမွာ Network Layerဟာေရာက္ရင္ျပီးေရာ ဆုိျပီးေတာ့ ျပီးျပီးေရာပုိ႔တာ မ်ိဳးေတာ့မဟုတ္ပါဘူး။ အရင္ဆုံး Sender ဘက္ Network Layerကသူနဲ႔ခ်ိတ္ဆက္ထားသမွ် Network လမ္းေၾကာင္းေတြတစ္ေလွ်ာက္ Message တစ္ခုစီကုိ Time Limit တစ္ခုနဲ႔ခ်ိန္ျပီးပုိ႔လုိက္ပါတယ္။ အဲဒီ Message ေတြထဲကမွ Time Limit မကုန္မီေရာက္လာတဲ့ Message ေတြကုိေတာ့လာရာလမ္းအတုိင္း Receiver ဘက္ Network Layer ကျပန္ျပီး အေၾကာင္းၾကားေစပါတယ္။ Acknowledgementျပန္တယ္ေပါ့ဗ်ာ။
Time Limit ကုန္တဲ့ အထိ Receiver ဘက္ကုိမေရာက္ေသးတဲ့ Message ေတြကုိေတာ့ Time Limitကုန္ျပီဆုိတာနဲ႔ သက္ဆုိင္ရာ ေရာက္ရွိေနတဲ့ Network ကသူ႔ဘာသာ Auto ဖ်က္ခ်လုိက္ပါတယ္။ Sender ဘက္ကုိလည္းျပန္ အေၾကာင္းၾကားမႈ ေရာက္မလာေတာ့ဘူးေပါ့။ အဲဲဒီလုိ ျဖစ္ျပီဆုိေတာ့မွ ခုနကအေၾကာင္းၾကားမႈျပန္ရ တဲ့လမ္းေၾကာင္းေတြအတိုင္း Network Layer ကလုိက္ျပီး တံတားထုိး (Route လုပ္တယ္ေပါ့ဗ်ာ)ပါတယ္။ ျပီးတာနဲ႔ Data Transfer လုပ္နုိင္ဖုိ႔ ေအာက္ပုိင္း Layer ေတြဆီ လက္ဆင့္ကမ္းပုိ႔ေဆာင္ပါတယ္။
ကဲဒီေလာက္ဆုိရင္ Network Layer ရဲ႕လုပ္ေဆာင္ပုံေတြကုိ နားလည္ သေဘာေပါက္ေလာက္ျပီ လို႔ထင္ပါတယ္။ကဲေနာက္တစ္ဆင့္ကေတာ့ Data Link Layer (Layer 2) ပါ။ Data Link Layer ရဲ႕အဓိကလုပ္ေဆာင္ခ်က္ကေတာ့ အေပၚLayer ေတြဆီကလက္ခံရရွိလာတဲ့ Data Packet ေလးေတြကို Network Connection တစ္ေလွ်ာက္မွာ သြားလာနုိင္မယ့္Data Frame အျဖစ္ေျပာင္းလဲေပးပါတယ္။ အဲဒီ Data Frame ေပၚမွာလုိအပ္တဲ့ Informationေတြလည္းထပ္ထည္႕ပါတယ္။
ျပီးေတာ့ Data ေတြ ကုိလည္း ေအာက္က Physical Layer ကလက္ခံနားလည္ျပီး Network Connection ေပၚတင္ပုိ႔ေပးနုိင္ေအာင္လုိ႔ Raw Bits ေတြအျဖစ္ေျပာင္းလဲေပးပါတယ္။ Data Link Layerရဲ႕အဓိကေနာက္ ထပ္လုပ္ ေဆာင္ခ်က္ တစ္ခုကေတာ့ Sender နဲ႔အနီးစပ္ဆုံး လက္ခံမယ့္ Receiver( DestinationReceiver အစစ္မဟုတ္ေသးတဲ့ၾကားကလက္ဆင့္ကမ္းေပးမယ့္သူကုိေျပာတာပါ) ၾကားထဲက Data သြားမယ့္ NetworkConnection ဟာ Clear ျဖစ္ေနလား၊ Data သြားမယ္ဆုိိရင္ Collision ျဖစ္နုိင္လားဆုိတာေတြ ကို ေလ့လာစစ္ေဆးျပီးစိတ္ခ်ရျပီဆုိမွ Data ေတြကိုပုိ႔လႊတ္ေစပါတယ္။
ေနာက္တစ္ပုိင္းျဖစ္တဲ့ ခုနကလက္ခံခဲ့တဲ့ Receiver နဲ႔ ေနာက္တစ္ဆင့္Receiver ၾကားမွာလည္း အဲဒီလုိစစ္ေဆးျပီး ေစာင့္သင့္ရင္ေစာင့္ျပီး စိတ္ခ်ရမွ ပုိ႔ေစပါတယ္။အဲဒီလုိလုပ္တာဟာ တကယ့္Destination Receiver အစစ္ဆီကုိ ေရာက္တဲ့အထိပါပဲ။ အဲဒီလုိစစ္ေဆးတဲ့ေနရာမွာ ၾကားခံ Networkရဲ႕သုံးထားတဲ့နည္းပညာေပၚကုိ မူတည္ျပီး စစ္ေဆးပုံစစ္ေဆးနည္းေတြကေတာ့အမ်ားၾကီးရွိပါတယ္။ Data Link Layerကုိထပ္ျပီး (၂)ပုိင္း ပုိင္းနုိင္ပါေသးတယ္။ Logical Link Control (LLC) ဆုိတဲ့ Sublayer နဲ႔ Media Access Control (MAC)ဆိုတဲ့ Sublayer တုိ႔ပဲျဖစ္ပါတယ္။ Logical Link Control (LLC) ကေတာ့ ခုနကေျပာခဲ့တဲ့ Collisionမျဖစ္ေအာင္ေစာင့္ထိန္းေပးတဲ့ကိစၥမွာ အရင္ဆုံး Data ေတြကုိ မပုိ႔ခင္ Nodes နွစ္ခုၾကားမွာ (Sender နဲ႔အနီးဆုံး Receiverပဲထားပါေတာ့ဗ်ာ) Cable ေတြ Card ေတြကုိ Connection ရေအာင္ လုပ္ပါတယ္။
Logical Link ေလးေပါ့ဗ်ာ။အဲဒီ Linkေပၚမွာ သြားနုိင္ေအာင္ Data ေတြကုိ အဆင္သင့္ျဖစ္ေအာင္ျပင္ဆင္ေပးပါတယ္။ Raw Bits ေတြျဖစ္လာေအာင္ေပါ့။ဘယ္အပုိင္းက အရင္သြားရမယ္။ ဘယ္အပုိင္းက ေနာက္ကလုိက္မယ္ဆုိတာကုိလဲ ဆုံးျဖတ္ေပးပါတယ္။လက္ခံမယ့္ဘက္မွာလည္း Data ေတြကို အေပၚ Layer ေတြဆီ တင္ေပးနိုင္ဖုိ႔အဆင္သင့္ အေနအထားျဖစ္ေအာင္ျပန္ျပဳျပင္ပါတယ္။
Data Frame ေတြကုိလည္း အစီအစဥ္တက်ျပန္ျပီးစီရတာေပါ့ဗ်ာ။ အဲေနာက္တစ္လႊာျဖစ္တဲ့ MediaAccess Control ကေတာ့ LLC Sublayer နဲ႔ Physical Layer ၾကားမွာ Interface ပုံစံမ်ိဳးလုပ္ေပးပါတယ္ LLC Sublayerဆီက Data Frame ေတြကုိ တစ္ခုခ်င္းစီရယူျပီး Data Collision ျဖစ္နုိင္မျဖစ္နုိင္ေစာင့္ၾကည္႕ကာ မျဖစ္နုိင္ဘူးဆုိရင္Transmit လုပ္ပါတယ္။ Collision ျဖစ္နုိင္တယ္ဆုိိရင္ယာယီေစာင့္ေန ပါေသးတယ္။
ျပီးေတာ့လည္း Data Frameတစ္ခုျပီးမွတစ္ခုယူျပီး Transmit လုပ္တာပါ။ လက္ခံမယ့္ဘက္ကေတာ့ တစ္ခုခ်င္းစီလက္ခံစစ္ေဆးျပီးပါလာတဲ့Information ေတြနဲ႔ကုိက္ညီတယ္ဆုိမွ LLC Sublayer ကုိလက္ဆင့္ကမ္းေပးပါတယ္။ အကယ္၍ ပါလာတဲ့ Informationေတြနဲ႔ မကုိက္ညီဘူးဆုိရင္ အဲဒီ Frame ကုိထပ္ပုိ႔ခုိင္းပါတယ္။ Data Link Layer နဲ႔သူရဲ႕ Sublayer နွစ္ခုအေၾကာင္းကုိေကာင္းစြာ သေဘာေပါက္ ေလာက္ျပီလုိ႔ထင္ပါတယ္။ကဲလာပါျပီ။
ေနာက္ဆုံး Layer 1 ျဖစ္တဲ့ Physical Layer ပါ။ Physical Layer ကဘာေတြလုပ္ပါသလဲ။ Physical Layerကေတာ့ Network Cable ေပၚမွာ Data ေတြကုိ အမွန္တကယ္ Transmission လုပ္နုိင္ေအာင္လုပ္ေဆာင္ေပးပါတယ္။အေပၚ Data Link Layer ကတဆင့္ရရွိလာတဲ့ Raw Bits Data Frame  ေတြကုိ Cable ေတြေပၚမွာအမွန္တကယ္သြားနုိင္မယ့္ Data Signals မ်ားအျဖစ္သုိ႔ေျပာင္းလဲေပးပါတယ္။ ေျပာင္းလဲတဲ့ေနရာမွာ Cable အမ်ိဳးအစားေတြ၊Card အမ်ိဳးအစားေတြ၊ Connector အမ်ိဳးအစားေတြကုိလုိက္ျပီး တစ္ဘကနဲ႔တစ္ဘက္ Transfer လုပ္လုိ႔အဆင္ေျပနုိင္မယ့္Signal မ်ိဳးကုိေျပာင္းလဲေပးပါတယ္။
Cable ေတြ၊ Card ေတြ၊ Connector ေတြအမ်ိဳးအစား အမ်ားၾကီးရွိသလုိ PhysicalLayer ကေျပာင္းလဲေပးရတဲ့ Signal အမ်ိဳးအစားေတြလည္းအမ်ားၾကီးေတာ့ ရွိတာေပါ့ေနာ္။ ဥပမာ Digital Signal ၊ AnalogSignal တုိ႔ေပါ့။ ျပီးေတာ့ Signal အမ်ိဳးအစားတစ္ခုခ်င္းစီအတြက္ေတာင္ ၾကားထဲက ခ်ိတ္ဆက္ထားတဲ့ Network Connection ရဲ႕နည္းပညာေပၚမူတည္ျပီး ထုတ္လႊတ္ပုံထုတ္လႊတ္နည္းေတြကြဲျပားပါေသး တယ္။
(ဥပမာ Star လား Ringလား Bus လား) ဒါေၾကာင့္ Physical Layer ဟာတကယ့္ Really Physical Media ေပၚမွာ Data ေတြမွန္မွန္ကန္ကန္အဆင္ေျပေျပသြားနုိင္ဖုိ႔အ တြက္ကုိ လုိအပ္တဲ့ လုပ္ေဆာင္မႈေတြျဖစ္တဲ့ Raw Bits Data Frame ေတြကို Electric Signalအသြင္ေျပာင္းေပးတာေတြ၊ အဲဒီလုိေျပာင္းတဲ့အခါမွာ ဘယ္လုိ Signal ပုံစံကုိ ေျပာင္းမွာလဲဆုိတာေတြ၊ ေျပာင္းျပီးသား Signalေတြကုိ ဘယ္လုိဘယ္ပံု Cable ၾကိဳးေပၚကုိ တင္ေပးမွာလဲ ဆုိတာေတြအျပင္ Cable ေပၚကုိ Data ေတြတင္ေပးနုိင္ဖုိ႔အတြက္လုိအပ္တဲ့ Voltage ေတြကအစဆုံးျဖတ္သတ္မွတ္ ထုတ္လုပ္ေပးတာကုိလုပ္ေဆာင္ပါတယ္။
ကဲဒီေလာက္ဆုိရင္ေတာ့Physical Layer ရဲ႕အေၾကာင္းကုိလည္းေတာ္ေတာ္သေဘာ ေပါက္ေလာက္ျပီလုိ႔ထင္ပါတယ္။
ကဲဒါဆုိရင္ Layer (၇)ခု လုံးအေၾကာင္းကုိ အားရပါးရ စိတ္၀င္တစားဖတ္ျပီးသြားတဲ့ အခါ ေခါင္းထဲမွာအေရးၾကီး တာေလးေတြကို စြဲက်န္မွတ္မိေနေအာင္လုိ႔ Layer (၇) ခုလုံးကုိ အနွစ္ျခဳပ္ျပီးျပန္လည္ေဖာ္ျပလုိက္ပါတယ္။ ဒီတစ္ခါေတာ့ Network အေခၚအေ၀ၚ Layer နံပါတ္စဥ္အတုိင္းေဖာ္ျပလုိက္ပါတယ္ေနာ္။
 Physical Layer Transfer Medium ေပၚမွာ Data သြားလာနုိင္ဖုိ႔ ကူညီေပးပါတယ္။ Data ေတြကုိ TransferMedium နဲ႔လုိက္ေလ်ာညီေထြရွိမယ့္ Signal ပုံစံအျဖစ္ေျပာင္းလဲေပးပါတယ္။ အဲဒီ Data Signal ေတြကုိ Transmissionလုပ္နုိင္ဖုိ ႔ေရာျပန္ျပီး Synchronization လုပ္နုိင္ဖုိ႔ေရာ လုိအပ္တဲ့ Voltage Levels ကုိဆုံးျဖတ္ေပးပါတယ္။
Data Link Layer Network လမ္းေၾကာင္းတစ္ေလွ်ာက္မွာအဆင္ေျပေျပသြားနုိင္မယ့္ Frame ေလးေတြျဖစ္လာေအာင္ Data ကုိတည္ေဆာက္ေပးပါတယ္။ Network Connection တစ္ေလွ်ာက္မွာ Collision မျဖစ္ေအာင္ေစာင့္ၾကပ္ ထိန္းသိမ္းေပးပါတယ္။ Collision ျဖစ္သြားရင္ဒါမွမဟုတ္ Error Control Information နဲ႔မတုိက္ဆုိင္ပဲ Error ေတြ႕ေနရတယ္ဆုိရင္ အဲဒီFrame ကုိခ်က္ခ်င္းထပ္ပုိ႔ေပးပါတယ္။
Network Layer မတူညီတဲ့ Network ေတြၾကားမွာ Connection ရေအာင္ ၊ Data Transfer လုပ္နုိင္ေအာင္ၾကားခံဆက္သြယ္ေပးပါတယ္။ Network လမ္းေၾကာင္းေတြကုိလည္းရွာေဖြေပးျပီး Data Transfer လုပ္ရာမွာပုိမုိျမန္ဆန္ေအာင္ကူညီေပးပါတယ္။
Transport Layer         Data Transfer လုပ္ရာမွာအစမွအဆုံးတုိင္ Data Packet တစ္ခုခ်င္းစီအတုိင္းအတာ အထိစိတ္ခ်ရတဲ့ Data Transmission တစ္ခုျဖစ္ေအာင္လုပ္ေဆာင္ေပးပါတယ္။ Error Control နဲ႔ Flow Control ကုိေဆာင္ရြက္ပါတယ္။ အကယ္၍ Data Packet တစ္ခုမွာမ်ားနဂုိ Packet အတုိင္း မဟုတ္ေၾကာင္း ေတြ႕ရွိ ပါကခ်က္ခ်င္းထပ္ပုိ႔ေပးပါတယ္။
Session Layer Data Transfer လုပ္ဖုိ႔အတြက္ Sender နဲ႔ Receiver ၾကားမွာ Logical Connection တစ္ခုကုိ အစျပဳတည္ေဆာက္ပါတယ္။ အဲဒီ  Connection ကုိ Data Transmission မျပီးမခ်င္းထိန္းသိမ္းထားပါတယ္။ Data ေတြကုိလည္းအဲဒီ Connection ေပၚမွာ အဆင္ေျပ ေျပသြားနုိင္မယ့္အပုိင္းေလးေတြအျဖစ္ပုိင္းပါတယ္။ လက္ခံမယ့္ ဘက္ေရာက္ တဲ့အခါမွာနဂုိမူရင္း Original Data ျပန္ရေအာင္ ျပန္                 လည္စုစည္းပါတယ္။
Presentation Layer Data ေတြကုိေအာက္ပုိင္း Layer ေတြကနားလည္အဆင္ေျပမယ့္ Formatပုံစံမ်ိဳးေျပာင္း လဲေပးပါတယ္။ လုိအပ္တဲ့ Encryption ေတြနဲ႔ Compression ေတြကုိလည္း လုပ္ေဆာင္ေပးပါ တယ္။လက္ခံမယ့္ဘက္မွာက်ေတာ့ Decompression ေတြနဲ႔ Decryption ေတြကုိလုိအပ္သလုိ လုပ္ေဆာင္ပါတယ္။ Userနားလည္လက္ခံနုိင္မယ့္ Format မ်ိဳးျပန္ရေအာင္ Data ကုိျပန္ျပီး Format ေျပာင္းေပးပါတယ္။
Application Layer User ေတြပုိ႔ခ်င္တဲ့ သတင္းအခ်က္အလက္ေတြ၊ Data ေတြကို ေအာက္ပုိင္း Layer ေတြကနားလည္လက္ခံျပီးဆက္လက္ Process လုပ္နုိင္ဖုိ႔အတြက္ Interface တစ္ခုအျဖစ္ၾကားခံျပီး User ေတြကုိ ပုိမုိလြယ္ကူအဆင္ေျပေစပါတယ္။ လက္ခံမယ့္ဘက္မွာလည္း User ေတြအေနနဲ႔လက္ခံရရွိလာတဲ့ Data ေတြကုိ အသုံးခ်ခ်င္သလုိအသုံးခ်နုိင္ခြင့္ ရရွိေအာင္ Interface တစ္ခုအေနနဲ႔ Userေတြကုိ ပုိမုိအဆင္ေျပေစရန္ အသုံးေတာ္ခံျပန္ပါတယ္။
Source: Product of  MY DATA Game & Software CD /DVD

0 comments:

Post a Comment