PPPoE協議
出自 MBA智库百科(https://wiki.mbalib.com/)
PPPoE協議(Point-to-Point Protocol over Ethernet)
目錄 |
PPPoE協議是在乙太網上實現點對點協議,是將點對點協議封裝在乙太網框架中的一種網路隧道協議。由於協議中集成了PPP協議,所以實現了傳統乙太網不能提供的身份驗證、用戶管理以及數據加密等功能。[1]
PPPoE的本質[1]
PPPoE在本質上,它是一個允許在乙太網廣播環境中的兩個以終端創建點對點連接的協議。在眾多的接入技術中,把多個主機連接到接入設備的最優的方法就是乙太網接入。但是由於乙太網用戶和接入設備都是直接連接的,不用撥號就可使用靜態IP亘戈動態獲得IP進行網路訪問。為了確保連接安全,並且只允許合法用戶連接,就要使用與撥號上網類似的訪問控制和計費功能,而PPP協議就可以提供良好的訪問控制和計費功能,於是產生了在乙太網上傳輸PPP的方法,即PPPoE。
PPPoE協議的工作流程[2]
PPPoE協議的工作流程包含發現和會話兩個階段,發現階段是無狀態的,目的是獲得PPPoE終結端的乙太網MAC地址,並建立一個惟一的PPPoE會話ID。發現階段結束後,就進入標準的PPPoE會話階段。
PPPoE協議發現和會話兩個階段具體進程如下。
1.PPPoE發現階段
PPPoE的發展階段可分為四步,其實這個過程也是PPPoE四種數據報文的交換的一個過程。當完成這四步後,用戶主機與訪問集中器雙方就能獲知對方的MAC地址和惟一的會話ID號,從而進入到下一個階段。實際上雙方在互相知道了對方的MAC地址後,就已經在廣播式的網路上確定r--_一的對應關係,為了保證這個連接的有效性,同時使PPPoE協議能更加靈活的運用,因此還加入了會話ID欄位,通過這個條件就可完成確定雙方點對點的關係。在PPPoE發現階段的過程中,它會遇到PADI、PADO、PADR、PADS這四種報文。
第一步,由用戶側首先發送這樣一個報文,用戶主機是以廣播的方式發送這個報文,所以該報文所對應的乙太網幀的目的地址域應填充為全l,而源地址域填充用戶主機的MAC地址。廣播包可能會被多個訪問集中器接收到。第二步,是由訪問集中器回應各用戶主機發送的PADI報文,此時該報文所對應的乙太網幀的源地址填充訪問集中器的MAC地址,而目的地址則填充從PADI中所獲取的用戶主機的MAC地址。第三步,用戶主機向訪問伺服器發送單播的請求報文。當用戶主機收到PADO報文後,會從這些報文中挑選一個訪問集中器作為後續會話的對象。由於用戶在收到PADO報文後,就獲知了訪問集中器的MAC地址,因此PADR報文所以應的乙太網幀的源地址填充用戶主機的MAC地址,而乙太網的目的地址填充為訪問集中器的MAC地址。第四步,也是最後一步,此時訪問集中器收到PADR分組後準備開始PPP會話,它發送一個PPPoE有效發現會話確認PADS分組。會話ID欄位值為接入集中器所產生的一個惟一一的PPPoE會話標識號碼。PADS分組也必須包含?個接入集中器名稱類型的標簽以確認向主機提供的服務。當主機收到PADS分組確認後,雙方就進入PPP會話階段。
2.PPP會話階段
會話階段主要有LCP、用戶驗證、NCP三個協議的協商過程。在LCP(Link Control Protoco1)階段主要完成建立、配置和檢測數據鏈路連接,並完成認證協議類型的協商,以確定使用口令驗證協議PAP(Password Authentication Protoco1)或挑戰握手驗證協議CHAP(Challeneg—Handshake Authentication Protoco1)。
用戶驗徵階段,用戶主機會將自己的身份,包括賬號、密碼等認證信息發送給接入伺服器。該階段使用一種安全驗證方式避免第j方竊取數據或冒充遠程客戶接管與管戶端連接。在認證完成之前,禁止從認證階段前進到網路層協議階段。如果認證成功,則進入下一階段,否則,認證者躍遷到鏈路終止階段。在NCP(Network Control Protoco1)階段,PPP將調用在鏈路創建階段選定的各種網路控制協議(NCP),解決PPP鏈路之上的高層協議問題,通常在PPPoE中,採用IP控制協議(IPCP)向撥入用戶分配動態IP地址、DNS。也就是說,PPPoE的三層地址分配是通過NCP來完成的,而不是採用傳統的動態主機分配協議(DHCP)。
PPPoE不僅有乙太網快速、簡便的特點,同時還有PPP的強大功能,任何能被PPP封裝的協議都可以通過PPPoE傳輸。此外,PPPoE很容易檢查到用戶下線,可通過一個PPP會話的建立和釋放對用戶進行基於時長或流量的統計,計費方式靈活、方便;PPPoE可以提供動態IP地址分配方式,用戶無需任何配置,網管維護簡單,無需添加設備就可解決IP地址短缺問題,同時根據分配的IP地址,可以很好地定位用戶在本網內的活動;用戶通過免費的PPPoE客戶端軟體(~[JEnterNet)輸入用戶名和密碼就可以上網,跟傳統的撥號上網相似,最大程度地延續了用戶的習慣,從運營商的角度來看,PPPoE對其現存的網路結構進行變更的可能性很小。
PPPoE常見故障及分析[2]
(1)691故障描述:不能通過驗證
可能的原因是用戶的賬戶或者密碼輸入錯誤,或用戶的賬戶餘額不足,用戶在使用時未正常退出而造成用戶賬號駐留,可等待幾分鐘或重新啟動後再撥號。
(2)630故障描述:無法撥號,沒有合適的網卡和驅動
可能的原因是網卡未安裝好、網卡驅動不正常或網卡損壞。檢查網卡是否工作正常或更新網卡驅動。
(3)678故障描述:無法建立連接
這個故障比較複雜,用戶和BRAS鏈路中任何一個環節有問題,都可能導致678故障,應根據不同的情況作相應處理。綜合各方面的因素,PPPoE協議是比較適合帶有運營性質的網路採用的一種協議,在ADSL中非常實用,實際組網方式也很簡單,對全球網路客戶終端設備的要求很簡單,大大降低了網路的複雜程度,是目前應用最為普遍的家庭用戶的接入模式。