Theo.Tech
05/01/2024
TCP/UDP အကြောင်း
*********************
TCP/UDP ဟာ Transport Layer မှာ အလုပ်လုပ်ပါတယ်။
💻
TCP
*****
TCP က Host တစ်လုံးနဲ့ Host တစ်လုံးကြား data တွေ ပေးပို့တဲ့ အခါမှာ data information မပျောက်ပျက်အောင် လုပ်ဆောင်ပေးတယ်, Connection Oriented။ Source Host ကနေပေးပို့လိုက်တဲ့ Data က လက်ခံတဲ့ host ဘက်မှာ ရောက်ရဲ့လားဆိုတဲ့ guarantee, အာမခံချက်ရှိတယ်။ Destination host ဆီကို ပို့လိုက်တဲ့ Data ရောက်လား၊ မရောက်ဘူးလား ဆိုတာ Acknowledgement ဆိုတဲ့ confirmation ကိုအသုံးပြုတယ်။ Data ကို sequence အလိုက် order စီးပြီးပို့တယ်။ တကယ်လို့ ပို့လိုက်တဲ့ Data ကလမ်းခုလတ်မှာ error တစ်စုံတစ်ရာဖြစ်ခဲ့ရင် Retransmission ပြန်လုပ်ပေးတယ်။
Data ကိုစပြီး transmit မလုပ်ခင် မှာ Reliable connection တစ်ခုကိုစတင်တည်ဆောက်တယ်။
Step1: Sender ကနေ SYN ဆိုတဲ့ Synchronization ကို Receiver ဘက်ကို Request လုပ်တယ်။
Step2: Receiver ဘက်ကနေ Request ရောက်ပါတယ်ဆိုတဲ့အကြောင်း SYN ACK အနေနဲ့ Sender ဘက်ပြန်ပို့တယ်။
Step3: အဲ့နောက် Sender က Receiver ကတော့ ကိုယ်ပေးပို့လိုက်တဲ့ Request ကိုလက်ခံနေပြီ၊ Data ပို့လို့ရပြီဆိုတဲ့တာကိုသိသွားပြီး ACK အနေနဲ့ Reciever ဆီကိုပြန်ပို့တယ်။
အဲ့ဒီနောက် Sender နဲ့ Receiver အကြားမှာ Reliable Connection တစ်ခုကိုတည်ဆောက်ပြီး Data တွေအပြန်အလှန်ပေးပို့ကြတယ်။ ဒီလို Sender/Receiver အကြား Reliable Connection တခုတည်ဆောက်တာကို Three Way Hand Shake လုပ်တယ်လို့ခေါ်တယ်။
TCP ကို file transfer, Email or Texting, Web Browsing တွေမှာအသုံးပြုတယ်။
UDP
*****
UDP မှာတော့ ဒီလိုမျိုး guarantee မရှိဘူး။ No Ack, No Three Way Hand Shake။ ပေးပို့လိုက်တဲ့ Data ကတစ်ဖက် host ဆီရောက်ရဲ့လားဆိုတာ ဂရုမစိုက်ဘူး။ Request ရပီဆိုတာနဲ့ Data ကိုစပို့ပြီ။ ပို့လိုက်တဲ့ Data က Destination ဆီကိုရောက်ရဲ့လားဆိုတာကို မကြည့်တော့ဘူး။ Data Sequence မလုပ်သလို Data loss လို့လည်း Retransmission မလုပ်ဘူး။
UDP ကိုတော့ Live Streaming, Online Gaming, Video Chatting စတဲ့နေရာတွေမှာအသုံးပြုတယ်။
Live stream လွှင့်တဲ့ချိန်မှာ UDP ကိုသုံးထားတော့ Internet line တွေကျတဲ့အခါ ပုံရိပ်တွေဝါးသွားတာ၊ အသံတွေပြတ်တောင်းသွားတာတွေ ဖြစ်ပေါ်လာတာပါ။
အချုပ်အနေနဲ့ TCP က Reliable ဖြစ်တယ်၊ Data Sequence အလိုက်စီရတော့ အချိန်ကြာတယ်၊ သို့ပေမယ့် sender နဲ့ receiver အကြားမှာ Data အပြည့်အစုံးရတယ်။ UDP မှာတော့ connection တည်ဆောက်နေစရာမလိုဘူး၊ Broadcast, Multicast traffic တွေပို့ရင်မြန်တယ်၊ Data complete မဖြစ်သေးတောင် ချက်ချင်းတန်းပို့တယ်၊ သို့ပေမယ့် Unreliable မဖြစ်ပါဘူး။
ခုလောက်ဆို TCP/UDP connection တွေအကြောင်း အကျဥ်းဖျဥ်းသဘောပေါက်လောက်ပြီလို့ထင်ပါတယ်။ Next Contents တွေမှာပြန်တွေ့ကြမယ်နော်။ ☺️😊
/UDP
.Tech
04/01/2024
What is FTP (File Transfer Protocol)? 💻
File Transfer Protocol ဆိုတာ Network ပေါ်မှာရှိတဲ့ Hosting Server ဆီကနေ လိုအပ်တဲ့ Data files တွေကို ကိုယ့်ရဲ့ Clients (PC, Phone, ...) မှာဆွဲယူအသုံးပြုလို့ရအောင် File Transfer လုပ်ပေးတဲ့ standard network protocol ဖြစ်ပြီး TCP/IP connection ကနေတဆင့်အလုပ်လုပ်ပါတယ်။ ဒီလို File တွေရယူနိုင်ဖို့ Server နဲ့ Clients တွေ အချင်းအချင်း အဆက်အသွယ် လုပ်နိုင်ရန်အတွက် FTP က Open Connection ၂ ခုနဲ့လုပ်ဆောင်ပါတယ်။ ပထမ connection က Server နဲ့ client ကြားအပြန်အလှန်ဆက်သွယ်နေတဲ့ commands, replies တွေအတွက်သုံးပြီး TCP port 21 ကိုအသုံးပြုပါတယ် (controlling the conversation)။ ဒုတိယ connection က data transfer လုပ်နိုင်ဖို့အတွက်သုံးပြီး TCP port 20 ကိုအသုံးပြုပါတယ် (data channel)။ File တွေ transfer လုပ်တဲ့အခါ FTP က block, stream and compressed ဆိုတဲ့ mode သုံးမျိုးကိုအသုံးပြုတယ်။ Stream mode က data information တွေကိုအကြားအလပ်မရှိ တစ်ဆက်တည်း သိမ်းထားနိုင်အောင် အသုံးပြုတယ်၊ Block mode မှာတော့ data တွေကို block လိုက်အပိုင်းလေးတွေနဲ့ သိမ်းဆည်းပေးတယ်။ Data size များတဲ့ information တွေကိုတော့ compress လုပ်ပြီး Compressed mode အနေဲ့သိမ်းပေးနိုင်အောင် အသုံးပြုတယ်။
FTP Transfer ကဘယ်လိုအလုပ်လုပ်လဲ?
Step 1: User (client) ကနေ FTP server ဆီကို Run box ကနေ //ftp-server-ip နဲ့သွားတာဖြစ်ဖြစ်၊ ftp server ရဲ့ domain ကနေသွားတာပဲဖြစ်ဖြစ် တစ်နည်းနည်းနဲ့ ရောက်အောင်သွားရပါတယ်။
Step 2: Client အနေနဲ့ ဘယ်လို data တွေလိုချင်တယ်၊ ဘာတွေ upload တင်ချင်တယ်၊ download ချချင်တယ် ဆိုတဲ့ Request တွေ Server ဆီရောက်တဲ့အခါ server နဲ့ client အကြား communication စဖြစ်တယ်။ (controlling the conversation)
Step 3: Conversation ဖြစ်ပြီးတဲ့နောက် မှာ FTP ကိုသုံးပြီး client တွေက file upload, download, delete, rename, move, copy စတာတွေကို server ကနေတဆင့်အသုံးပြုလို့ရတာဖြစ်ပါတယ်။ (data channel)
ဥပမာ. ကျနော်တို့ Google drive, Terabox, Filezilla, Dropbox အစရှိတဲ့ drive တွေပေါ် File တွေတင်တာ, download လုပ်ချင်တာမျိုးတွေက FTP ကိုအဓိကအသုံးပြုနေတာပဲဖြစ်ပါတယ်။
ကျနော်တို့ computer ကနေ တည်ဆောက်နေတဲ့ TCP connection တွေကိုလည်းကြည့်လို့ရပါတယ်။ netsat -a ဆိုတဲ့ command လေးကိုအသုံးပြုပြီး PC ကနေ "ဘယ် TCP connection ကို port ဘယ်လောက်နဲ့ establishment လုပ်နေသလဲ" ဆိုတာကြည့်လို့ရပါတယ်။
ဒီလောက်ဆို FTP ဆိုတာဘာလဲ၊ ဘယ်လိုအလုပ်လုပ်လဲ၊ ဘယ်လိုနေရာတွေမှာတွေ့ရလဲဆိုတာ အကျမ်းဖျဥ်း နားလည်လောက်ပြီလို့ထင်ပါတယ်။
မိတ်ဆွေတို့သိချင်တဲ့အကြောင်းအရာတွေကိုလည်းလာရောက် မေးမြန်းလို့ရသလို၊ နောက်လာမယ့် contents တွေမှာလည်း ဘယ်လိုအကြောင်းအရာမျိုးတွေသိချင်လဲဆိုတာ ပြောပြပေးလို့ရပါတယ်။ ☺️
Transfer Protocol
.Tech
Click here to claim your Sponsored Listing.
Category
Website
Address
Mandalay