PPP和PPPoE的應(yīng)用分析
我們知道PPP和PPPoE協(xié)議可以簡單實(shí)現(xiàn)點(diǎn)對點(diǎn)鏈路封裝,但是這個(gè)并不能滿足我們多樣的要求。目前豐富多彩的互聯(lián)網(wǎng)世界是承載在復(fù)雜、龐大的廣域網(wǎng)上,靈活方便的非點(diǎn)對點(diǎn)的以太網(wǎng)絡(luò)是現(xiàn)代網(wǎng)絡(luò)世界的主要常用媒介,那PPP是否已經(jīng)遠(yuǎn)離了我們呢?答案是否定的,實(shí)際上,現(xiàn)在我在家中利用ADSL接入ISP登錄到我的博客來寫這篇文章,這一過程就離不開PPP協(xié)議。
就讓我用我們最熟悉的上網(wǎng)為例來講解吧.早期,人們用計(jì)算機(jī)外接modem(調(diào)制解調(diào)器)再通過電話線撥號(hào)來接入ISP(Internet接入服務(wù)提供商)連接Internet,就使用了PPP協(xié)議,具體來說,就是在"用戶撥出計(jì)算機(jī) - 用戶modem - ISP modem -接入服務(wù)器"這樣一條點(diǎn)對點(diǎn)鏈路上,使用PPP封裝了IP報(bào)文來實(shí)現(xiàn)用戶至Internet網(wǎng)絡(luò)接入服務(wù)器之間IP報(bào)文的流控和計(jì)費(fèi)等功能,如下圖:

點(diǎn)對點(diǎn)鏈路撥號(hào)接入ISP
上圖中,"電話線"這一串行連接是通過用戶電話撥入電話局提供的接入號(hào)碼來建立起來的,"撥號(hào)"這一概念,也就發(fā)端于此.這種撥號(hào)方式,用戶計(jì)算機(jī)與ISP接入服務(wù)器之間的連接線路完全占用了電話線的信道,所以用戶在使用計(jì)算機(jī)接入網(wǎng)絡(luò)之后,電話就處于占線狀態(tài),不能再同時(shí)接入語音電話.并且,這種使用modem通過電話線傳輸模擬信號(hào)的接入方式,***就只能達(dá)到56kbps的上網(wǎng)速率(實(shí)際使用時(shí),由于鏈路問題,連這個(gè)速率都很難達(dá)到),生活在2009年的我們可以想象那時(shí)網(wǎng)民的生活是多么的水深火熱…
針對于上述缺陷,人們利用ISDN(綜合業(yè)務(wù)數(shù)字網(wǎng))技術(shù)改進(jìn)了網(wǎng)絡(luò)接入方案.使用ISDN技術(shù),我們可以在依然使用原來的普通電話線的情況下,在電話線上傳輸數(shù)字信號(hào).這是通過在電話線上建立ISDN信道來實(shí)現(xiàn)的,ISDN的BRI(基礎(chǔ)速率接口)支持2個(gè)B信道+1個(gè)D信道總共128kbps的連接速率,我們使用MLPPP(多鏈路PPP)協(xié)議將ISDN提供的多條點(diǎn)對點(diǎn)鏈路復(fù)合為一條點(diǎn)對點(diǎn)鏈路,這樣就可以利用BRI的128kbps速率高速(相對于原來的modem方式)接入網(wǎng)絡(luò)了.同時(shí),ISDN可以在一條電話線線路上同時(shí)接入多個(gè)終端設(shè)備(計(jì)算機(jī)、電話等)同時(shí)使用.這一切,只需要將上圖中的調(diào)制解調(diào)器換為ISDN接入設(shè)備即可.
和ISDN技術(shù)類似的,我們現(xiàn)在經(jīng)常聽到和使用的ADSL技術(shù),也是在一定程度上對傳統(tǒng)電話線路的信道使用方式進(jìn)行了優(yōu)化改造.ADSL是xDSL技術(shù)族的一員,傳輸速率可以達(dá)到Mbps數(shù)量級(jí),xDSL有ADSL、VDSL、HDSL等多種模型,他們的區(qū)別就在于信號(hào)傳輸速率和傳輸距離上,其中ADSL在這些指標(biāo)上顯示出其非常適合作為家庭接入Internet的特點(diǎn),所以人們普遍采用了ADSL.
其實(shí),ISDN和ADSL相對于傳統(tǒng)modem撥號(hào)方式,只是改變了承載信號(hào)的物理層.
講上面這些ISDN和ADSL的內(nèi)容,目的是為了逐步引出這篇文章的主角 - PPPoE,但是,說真的,直到寫完了上面的內(nèi)容,外加查了很久的資料,我也沒真正找到確實(shí)可信的論據(jù)來證明為什么在ADSL物理鏈路上我們要選擇使用PPPoE來接入ISP… (使用PPPoE協(xié)議可將PPP幀之外再封裝上一層PPPoE頭,以達(dá)到在Ethernet網(wǎng)絡(luò)這種非點(diǎn)對點(diǎn)鏈路上傳輸PPP幀的目的.)
當(dāng)然,雖然沒有找到直接論據(jù),但是分析了眾多的資料后我是有收獲的,我可以說說自己的理解,有不對之處還請各位指點(diǎn).
傳統(tǒng)的modem撥號(hào)和ISDN撥號(hào)都是用modem撥ISP的一個(gè)號(hào)碼,也就是得到ISP分配的一條電話線連接來建立起點(diǎn)對點(diǎn)物理鏈路的,而ADSL也是類似的物理層拓?fù)?所以我想應(yīng)該也是可以同樣的撥號(hào)方式直接接入ISP的.但是,為什么現(xiàn)實(shí)中ADSL不是這樣來使用的呢,為什么要在ADSL物理層之上再封裝"ethernet層+PPPoE層"然后再承載PPP而不是直接在ADSL物理層上承載PPP呢?ISP運(yùn)營商到底出于什么考慮呢?
在ADSL網(wǎng)絡(luò)上直接封裝PPP,則這條點(diǎn)對點(diǎn)鏈路是起始與用戶的ADSL貓,終結(jié)于ISP運(yùn)營商的DSLAM(數(shù)字用戶接入復(fù)用)設(shè)備,也就是ADSL物理鏈路的終點(diǎn).對于用戶的管理與認(rèn)證授權(quán)控制必須要放在DSLAM設(shè)備上(當(dāng)然PPP支持遠(yuǎn)程授權(quán),但這無疑將增加復(fù)雜度和風(fēng)險(xiǎn)),這樣,ISP必須在很接近用戶物理位置也就是網(wǎng)絡(luò)的末梢底層的地方(因?yàn)锳DSL物理線路不會(huì)很遠(yuǎn))來管理用戶.

ADSL撥號(hào)接入ISP網(wǎng)絡(luò)時(shí)的PPP鏈路
而如果采取PPPoE的方式,先將PPP封裝在PPPoE內(nèi),再在PPPoE外封裝Ethernet頭,然后再將這Ethernet幀通過ATM或LAPD(Link Access Procedure on the D channel)等鏈路層協(xié)議封裝在ADSL或ISDN物理連接上.這樣,點(diǎn)對點(diǎn)鏈路的起點(diǎn)將是封裝PPPoE的用戶計(jì)算機(jī),終點(diǎn)可以是DSLAM,也可以是DSLAM之后的更高層的BAS(寬帶接入服務(wù)器)設(shè)備或其他哪里,就看PPPoE服務(wù)器被設(shè)置在哪里了(PPPoE報(bào)文在PPPoE服務(wù)器被解開),如上圖這種經(jīng)典的應(yīng)用場景中PPP鏈路就直到LNS設(shè)備才終結(jié)(PC到DSLAM之間是ADSL點(diǎn)對點(diǎn)鏈路承載PPPoE,DSLAM到BAS之間是ATM鏈路承載PPPoE,在BAS設(shè)備將PPP從PPPoE封裝中解出,然后,從BAS到LNS設(shè)備之間使用L2TP協(xié)議承載了PPP報(bào)文,L2TP將在本系列文行的后續(xù)文章中介紹).這樣,一是解決方案更加靈活,另外,由于管理設(shè)備可以位于更高(更靠近網(wǎng)絡(luò)核心)的位置,集中管理的用戶可以更多,可以降低運(yùn)營商的成本.
解釋到這里,我覺得我這個(gè)解釋是很合理可信的:PPPoE虛擬撥號(hào)的使用使得PPP接入連接(也就是客戶)的認(rèn)證、授權(quán)點(diǎn)位置更加靈活,可是將其設(shè)置在更接近網(wǎng)路的核心的位置.我認(rèn)為,PPPoE這種協(xié)議的存在,重要的是提供了一種PPP報(bào)文的封裝方式,至于具體如何封裝并不是決定性的,用Ethernet封裝就是PPPoE,用ATM封裝就是PPPoA.但是,為什么普通modem撥號(hào)和ISDN沒有采用這樣的PPPoE撥號(hào)呢?我真的解釋不了,因?yàn)?理論上是絕對可行的.
本文中講到了PPPoE協(xié)議,但是截至目前,只是講到用它封裝了PPP幀然后放在專線鏈路(ADSL/ISDN)上傳輸.至于為什么要用PPPoE,以及PPPoE的具體本領(lǐng),還是下篇文章再向大家介紹吧.下次再見~















 
 
 
 
 
 
 