What is PPPoE ?
ဒီနေ့ခေတ်မှာ ISP တစ်ခုခုကနေမှ Customer တွေအနေနဲ့ FTTH Fiber Internet ဝယ်ယူသုံးစွဲတဲ့အခါ “PPPoE” ဆိုတဲ့အရာလေးက နောက်ကွယ်မှာ ပါဝင်ပက်သက်နေပါတယ်။ “What is PPPoE?” PPPoE ဆိုတာဘာလဲပေါ့။ တကယ်တော့ PPPoE ဆိုတာ “PPP” (Point To Point Tunnel Protocol) ဖြစ်ပြီးတော့ “oE” ဆိုတာက “Over Ethernet” ဖြစ်ပါတယ်။ “PPP” ကတော့ အရင်ခေတ် Point To Point Serial Link တွေမှာသုံးတဲ့ Tunnel Protocol တစ်ခုပဲဖြစ်ပါတယ်။ ဒီဖက်ခေတ် GPON Network တွေ၊ FTTH တွေခေတ်စားလာတဲ့အချိန်မှာတော့ အဲဒီ Point To Point Tunnel Protocol ကို Ethernet Media ပေါ်မှာတင်ပြီး အသုံးပြုဖို့ စတင်ဖော်ဆောင်လာကြပါ တော့တယ်။ အဲဒီ့ “PPP” ကို GPON တွေ၊ FTTH တွေစတဲ့ Ethernet Media တွေအပေါ်ကနေတစ်ဆင့်သယ်ဆောင် သွားပြီးတဲ့နောက်မှာတော့ “PPPoE” ဆိုတာ ဖြစ်လာပါတော့တယ်။ ဒီတော့ “PPPoE” က “PPP” ကိုသုံးတယ်။
သုံးတယ်ဆိုရင်ရော သူ့အနေနဲ့ ဘယ်လို Theory နဲ့အလုပ်လုပ်သလဲဆိုတာကလဲ အရေးကြီးပါတယ်။ “PPPoE” အနေနဲ့ အလုပ်လုပ်တဲ့အခါမှာ Operation Model နှစ်ခုနဲ့အလုပ်လုပ်ပါတယ်။ ပထမတစ်ခုကတော့ “Discovery Phase” ဖြစ်ပြီးတော့ ဒုတိယတစ်ခုကတော့ “Session Phase” ဖြစ်ပါတယ်။
Discovery Phase
“Discovery Phase” မှာဘာလုပ်သလဲ။ “Discovery Phase” မှာအလုပ်လုပ်တဲ့အဆင့်လေးဆင့်ရှိပါတယ်။
Step 1 : PPPoE Active Discovery Initialization (PADI)
Step 2 : PPPoE Active Discovery Offer (PADO)
Step 3 : PPPoE Active Discovery Request (PADR)
Step 4 : PPPoE Active Discovery Session Confirmation (PADS)

Step 1 : PPPoE Active Discovery Initialization (PADI)
ဒီ Step 1 မှာတော့ PPPoE Client ဖက်ကနေ PADI Packet Packet စပို့ပြီး PPPoE Server ကိုရှာပါတယ်။ ဒီအခြေ အနေမှာ PPPoE Client (Customer CPE) ကနေပြီးတော့ Network ထဲမှာ သူ့ရဲ့ PPPoE Server ကဘယ်သူ၊ ဘယ်ဝါ၊ ဘယ်နေရာမှာဆိုတာကို လုံးဝမသိသေးတဲ့အတွက် PADI Packet ကို Broadcast Traffic နဲ့ပို့လွှတ်ပြီးရှာ ပါတယ်။
Step 2 : PPPoE Active Discovery Offer (PADO)
ဒီအဆင့်မှာတော့ ခုနက Broadcast နဲ့လာရှာတဲ့ PPPoE Client ကို မင်းရှာနေတဲ့ PPPoE Server (Or) Access Concentrator ဆိုတာ ငါပဲငါပဲဆိုပြီး ပြန်ပြောလိုက်ပါပြီ။ ဒါပေမယ့် Connection Established မဖြစ်သေးပါဘူး။ မေးထူးခေါ်ပြော အဆင့်ပဲရှိနေပါသေးတယ်။
Step 3 : PPPoE Active Discovery Request (PADR)
PADR အဆင့်မှာတော့ PPPoE Client (Customer CPE) ကနေပြီးတော့ ကျွန်တော်ထည့်ထားတဲ့ “Username” နဲ့ “Password” ကတော့ ဒီဟာဖြစ်ပါတယ်။ PPPoE Client အနေနဲ့ လက်ခံပေးပါနော်ဆိုပြီးတော့ Request စတောင်း ပါပြီ။ ဒါပေမယ့် လွယ်လွယ်ကူကူနဲ့တော့ ဟိုက (PPPoE Server) ကပေးချိတ်မှာမဟုတ်ပါဘူး။ သူရိုက်ထည့်လိုက် တဲ့ “User Credentials” တွေက PPPoE Server (Access Concentrator) မှာဆောက်ထားတာ ရှိမရှိ၊ မှန်မမှန် စစ်ဆေးဦးမှာပါ။
Step 4 : PPPoE Active Discovery Session Confirmation (PADS)
ဒီအဆင့်မှာတော့ “User Credentials” တွေကအကုန်တိုက်စစ်လို့မှန်တယ်ဆိုရင်တော့ PPPoE Server နဲ့ Client ကြားမှာ Connection Established ဖြစ်ပြီးသွားပါပြီ။ ဒီလိုဆိုရင် PPPoE Server ဒါမှမဟုတ် RADIUS Server ကနေ သတ်မှတ်ထားတဲ့ Bandwidth Profile အတိုင်း PPPoE Client ဆီကိုဆင်းလာတော့မှာပါ။ ဒါဆိုရင်တော့ End Users တွေလည်း Internet စပြီးသုံးလို့ရသွားပါပြီ။
PPPoE Active Discovery Terminate (PADT)
PADT ဆိုတာကတော့ PPPoE Server နဲ့ PPPoE Client Connection ကို Terminate လုပ်နိုင်ပါတယ်။ Terminate လုပ်မယ်ဆိုရင်လည်း PPPoE Server ဖက်ကနေလုပ်လိုက်ရင်ရပါပြီ။
Session Phase
Session Phase မှာအလုပ်လုပ်တဲ့ Protocols တွေကတော့ LCP, IPCP တို့ဖြစ်ပြီးတော့ Authentication အတွက် ဆိုရင် PAP (Password Authentication Protocol) နဲ့ CHAP (Challenge-Handshake Protocol) တွေကို အသုံး ပြုပါတယ်။ LCP ဆိုတာက Link Control Protocol ဖြစ်ပါတယ်။ သူ့ရဲ့တာဝန်ကတော့ PPPoE Server နဲ့ PPPoE Client ကြားမှာသွားနေတဲ့ “PPP Frame” တွေကို “Encapsulate” လုပ်ပြီးတော့ “Ethernet” ပေါ်မှာ Carry လုပ်ပေးပါတယ်။ အဲဒီ Encapsulation လုပ်ပြီးသယ်သွားတဲ့ “PPP Frame” တွေ၊ တစ်နည်းအားဖြင့်ပြောရရင် “Data” တွေကို တစ်စုံတစ်ယောက်ကနေပြီးတော့ Capture ဖမ်းယူပြီး ခိုးလို့မရအောင် ကာကွယ်ပေးတဲ့ “Security Mechanisms” တွေကတော့ PAP (Password Authentication Protocol) နဲ့ CHAP (Challenge-Handshake Protocol) တို့ပဲ ဖြစ်ပါတယ်။ PAP နဲ့ CHAP မှာမိမိကြိုက်နှစ်သက်ရာအသုံးပြုနိုင်ပါတယ်။ CHAP ကတော့ပိုပြီး Secure ဖြစ်ပါတယ်။ နောက်တစ်ခုကတော့ IPCP ပါ။ IPCP (Internet Protocol Control Protocol) ကတော့ PPPoE Client တွေအတွက် IP Address Assigned ချပေးတဲ့သူပဲ ဖြစ်ပါတယ်။ အကယ်လို့ DHCP Server ကနေ သီးသန့်ချချင်တယ်ဆိုရင်လည်း ရပါတယ်။
Written By Aung Nay Toe
Last updated