久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

PPPoE工作原理以及PPPoE幀格式

 譚逸逸 2012-03-12
PPPoE工作原理以及PPPoE幀格式
PPPoE協(xié)議的工作流程包含發(fā)現(xiàn)和會(huì)話兩個(gè)階段,發(fā)現(xiàn)階段是無(wú)狀態(tài)的,,目的是獲得PPPoE終結(jié)端(在局端的ADSL設(shè)備上)的以太網(wǎng)MAC地址,,并建立一個(gè)惟一的PPPoESESSION-ID,。發(fā)現(xiàn)階段結(jié)束后,就進(jìn)入標(biāo)準(zhǔn)的PPP會(huì)話階段,。
當(dāng)一個(gè)主機(jī)想開(kāi)始一個(gè)PPPoE會(huì)話,,它必須首先進(jìn)行發(fā)現(xiàn)階段,以識(shí)別局端的以太網(wǎng)MAC地址,,并建立一個(gè)PPPoE SESSION-ID,。在發(fā)現(xiàn)階段,基于網(wǎng)絡(luò)的拓?fù)?,主機(jī)可以發(fā)現(xiàn)多個(gè)接入集中器,,然后允許用戶選擇一個(gè)。當(dāng)發(fā)現(xiàn)階段成功完成,,主機(jī)和選擇的接入集中器都有了他們?cè)谝蕴W(wǎng)上建立PPP連接的信息,。直到PPP會(huì)話建立,發(fā)現(xiàn)階段一直保持無(wú)狀態(tài)的Client/Server(客戶/服務(wù)器)模式,。一旦PPP會(huì)話建立,,主機(jī)和接入集中器都必須為PPP虛接口分配資源。
 
PPPoE協(xié)議會(huì)話的發(fā)現(xiàn)和會(huì)話兩個(gè)階段具體進(jìn)程如下,。
1.發(fā)現(xiàn)(Discovery)階段
在發(fā)現(xiàn)(Discovery)階段中用戶主機(jī)以廣播方式尋找所連接的所有接入集中器(或交換機(jī)),,并獲得其以太網(wǎng)MAC地址。然后選擇需要連接的主機(jī),,并確定所要建立的PPP會(huì)話標(biāo)識(shí)號(hào)碼,。發(fā)現(xiàn)階段有4個(gè)步驟,,當(dāng)此階段完成,,通信的兩端都知道PPPoE SESSION-ID和對(duì)端的以太網(wǎng)地址,他們一起唯一定義PPPoE會(huì)話,。這4個(gè)步驟如下,。
(1)     主機(jī)廣播發(fā)起分組(PADI)(PPPOE Active Discovery Initiation),分組的目的地址為以太網(wǎng)的廣播地址0×ffffffffffff,,CODE(代碼)字段值為0×09,,SESSION-ID(會(huì)話ID)字段值為0×0000。PADI分組必須至少包含一個(gè)服務(wù)名稱類型的標(biāo)簽(標(biāo)簽類型字段值為0×0101),,向接入集中器提出所要求提供的服務(wù),。
(2)     接入集中器收到在服務(wù)范圍內(nèi)的PADI分組,發(fā)送PPPoE有效發(fā)現(xiàn)提供包(PADO)(PPPOE Active Discovery Offer)分組,,以響應(yīng)請(qǐng)求,。其中CODE字段值為0×07,SESSION-ID字段值仍為0×0000,。PADO分組必須包含一個(gè)接入集中器名稱類型的標(biāo)簽(標(biāo)簽類型字段值為0×0102,,以及一個(gè)或多個(gè)服務(wù)名稱類型標(biāo)簽,,表明可向主機(jī)提供的服務(wù)種類。
(3)     主機(jī)在可能收到的多個(gè)PADO分組中選擇一個(gè)合適的PADO分組,,然后向所選擇的接入集中器發(fā)送PPPoE有效發(fā)現(xiàn)請(qǐng)求分組(PADR)(PPPOE Active Discovery Request),。其中CODE字段為0×19,SESSION_ID字段值仍為0×0000,。PADR分組必須包含一個(gè)服務(wù)名稱類型標(biāo)簽,,確定向接入集線器(或交換機(jī))請(qǐng)求的服務(wù)種類。當(dāng)主機(jī)在指定的時(shí)間內(nèi)沒(méi)有接收到PADO,,它應(yīng)該重新發(fā)送它的PADI分組,,并且加倍等待時(shí)間,這個(gè)過(guò)程會(huì)被重復(fù)期望的次數(shù),。
(4)     接入集中器收到PADR分組后準(zhǔn)備開(kāi)始PPP會(huì)話,,它發(fā)送一個(gè)PPPoE有效發(fā)現(xiàn)會(huì)話確認(rèn)(PADS)(PPPOE Active Discovery Session-confirmation)分組。其中CODE字段值為0×65,,SESSION-ID字段值為接入集中器所產(chǎn)生的一個(gè)惟一的PPPoE會(huì)話標(biāo)識(shí)號(hào)碼,。PADS分組也必須包含一個(gè)接入集中器名稱類型的標(biāo)簽以確認(rèn)向主機(jī)提供的服務(wù)。當(dāng)主機(jī)收到PADS分組確認(rèn)后,,雙方就進(jìn)入PPP會(huì)話階段,。
2PPP會(huì)話階段
用戶主機(jī)與接入集中器根據(jù)在發(fā)現(xiàn)階段所協(xié)商的PPP會(huì)話連接參數(shù)進(jìn)行PPP會(huì)話。一旦PPPoE會(huì)話開(kāi)始,,PPP數(shù)據(jù)就可以以任何其他的PPP封裝形式發(fā)送,。所有的以太網(wǎng)幀都是單播的。PPPoE會(huì)話的SESSION-ID一定不能改變,,并且必須是發(fā)現(xiàn)階段分配的值,。
PPPoE還有一個(gè)PADT分組,它可以在會(huì)話建立后的任何時(shí)候發(fā)送,,來(lái)終止PPPoE會(huì)話,,也就是會(huì)話釋放。它可以由主機(jī)或者接入集中器發(fā)送,。當(dāng)對(duì)方接收到一個(gè)PADT分組,,就不再允許使用這個(gè)會(huì)話來(lái)發(fā)送PPP業(yè)務(wù)。PADT分組不需要任何標(biāo)簽,,其CODE字段值為0×a7,,SESSION-ID字段值為需要終止的PPP會(huì)話的會(huì)話標(biāo)識(shí)號(hào)碼。在發(fā)送或接收PADT后,,即使正常的PPP終止分組也不必發(fā)送,。PPP對(duì)端應(yīng)該使用PPP協(xié)議自身來(lái)終止PPPoE會(huì)話,,但是當(dāng)PPP不能使用時(shí),,可以使用(PADT)(PPPOE Active Discovery Terminate)結(jié)束,。
 
PPPoE幀格式
對(duì)應(yīng)于上面介紹的PPPoE協(xié)議工作的兩個(gè)階段,,PPPoE幀格式也包括兩種類型:發(fā)現(xiàn)階段的以太網(wǎng)幀中的類型字段值為0×8863;PPP會(huì)話階段的以太網(wǎng)幀中的類型字段值為0×8864,,均已得到IEEE的認(rèn)可,。PPPoE分組幀結(jié)構(gòu)如圖4-6所示。

VER
(4bit)   
TYPE
(4bit)
CODE (16bit)
SESSION-ID
8bit)
LENGTH
(16bit)
凈載荷(或數(shù)據(jù)域)
PPPOE幀格式 一共為48位 8字節(jié)
 4-6

PPPoE分組中的版本(VER) 字段和類型(TYPE)字段長(zhǎng)度均為4比特,,在當(dāng)前版本PPPoE建議中這兩個(gè)字段值都固定為0x1,。
代碼(CODE)字段長(zhǎng)度為8比特,根據(jù)兩階段中各種數(shù)據(jù)包的不同功能而值不同,。在PPP會(huì)話階段CODE字段值為0x00,,發(fā)現(xiàn)階段中的各步驟中的各種數(shù)據(jù)分組格式參見(jiàn)前面的介紹。
版本標(biāo)識(shí)號(hào)碼(SESSION_ID)字段長(zhǎng)度為16比特,,在一個(gè)給定的PPP會(huì)話過(guò)程中它的值是固定不變的,,其中值0×ffffff為保留值。
長(zhǎng)度(LENGTH)字段為16比特,,指示PPPoE凈荷長(zhǎng)度,。發(fā)現(xiàn)階段PPPoE載荷可以為空或由多個(gè)標(biāo)記(TAG)組成,每個(gè)標(biāo)記都是TLV(類型–長(zhǎng)度–值)的結(jié)構(gòu),;PPP會(huì)話階段PPPoE載荷為標(biāo)準(zhǔn)的點(diǎn)對(duì)點(diǎn)協(xié)議包,。
數(shù)據(jù)域,有時(shí)也稱之為凈載荷域,,在PPPOE的不同階段該域內(nèi)的數(shù)據(jù)內(nèi)容會(huì)有很大的不同,。在PPPOE的發(fā)現(xiàn)階段時(shí),該域內(nèi)會(huì)填充一些Tag(標(biāo)記),;而在PPPOE的會(huì)話階段,,該域則攜帶的是PPP的報(bào)文。
這里我們主要來(lái)介紹一下PPPOE發(fā)現(xiàn)階段的報(bào)文格式以及它的報(bào)文:
PPPOE數(shù)據(jù)報(bào)文中Tag(標(biāo)記)的格式
對(duì)于發(fā)現(xiàn)階段的PPPOE數(shù)據(jù)報(bào)文而言,,它的凈載荷可能包含零個(gè)或多個(gè)Tag(標(biāo)記),,實(shí)際上這些標(biāo)記的意義非常類似于PPP配置參數(shù)選項(xiàng),,它同樣也是要經(jīng)過(guò)協(xié)商的,。對(duì)于PPPOE協(xié)議而言,沒(méi)有像PPP的配置參數(shù)選項(xiàng)那樣定義了很多細(xì)節(jié),,而只是一個(gè)初略的定義,,因此在實(shí)際當(dāng)中實(shí)現(xiàn)這個(gè)過(guò)程會(huì)依據(jù)不同廠商的設(shè)備有不同。首先還是讓我們看一下承載在PPPOE報(bào)文數(shù)據(jù)域中的標(biāo)記封裝格式,,如圖2,。

類型
長(zhǎng)度
數(shù)據(jù)

(圖2 標(biāo)記的封裝格式)
從圖2中可以看出,標(biāo)記的封裝格式采用的是大家所熟知的TLV結(jié)構(gòu),,也即是(類型+長(zhǎng)度+數(shù)據(jù)),。標(biāo)記的類型域?yàn)?個(gè)字節(jié),,下表列出了各種標(biāo)記類型的含義:
標(biāo)記類型
標(biāo)記說(shuō)明
0x0000
表示PPPOE報(bào)文數(shù)據(jù)域中一串標(biāo)記的結(jié)束,為了保證版本的兼容性而保留,,在有些報(bào)文中有應(yīng)用,。
0x0101
服務(wù)名,主要用來(lái)表明網(wǎng)絡(luò)側(cè)所能提供給用戶的一些服務(wù),。
0x0102
訪問(wèn)集中器名,,當(dāng)用戶側(cè)接收到了AC的回應(yīng)的PADO報(bào)文時(shí),就可獲從所攜帶的標(biāo)記中獲知訪問(wèn)集中器的名子,,而且還可以據(jù)此來(lái)選擇相應(yīng)的訪問(wèn)集中器,。
0x0103
主機(jī)唯一標(biāo)識(shí),類似于PPP數(shù)據(jù)報(bào)文中的標(biāo)識(shí)域,,主要是用來(lái)匹配發(fā)送和接收端的,,因?yàn)閷?duì)于廣播式的網(wǎng)絡(luò)中會(huì)同時(shí)存在很多個(gè)PPPOE的數(shù)據(jù)報(bào)文。
0x0104
AC-Cookies,,主要被用來(lái)防止惡意性DOS功擊,。
0x0105
銷售商的標(biāo)識(shí)符。
0x0110
中繼會(huì)話ID,,對(duì)于PPPOE的數(shù)據(jù)報(bào)文也同樣可以像DHCP報(bào)文一樣被中斷到另外的AC上終結(jié),,這個(gè)字段則是用來(lái)維護(hù)另一個(gè)連接的。
0x0201
服務(wù)名錯(cuò)誤,,當(dāng)請(qǐng)求的服務(wù)名不被對(duì)端所接受時(shí),,會(huì)在響應(yīng)的報(bào)文中攜帶這個(gè)標(biāo)記。
0x0202
訪問(wèn)集中器名出錯(cuò),。
0x0203
一般性錯(cuò)誤,。

 

PPPOE發(fā)現(xiàn)階段的數(shù)據(jù)報(bào)文
說(shuō)明:在這個(gè)階段,所有數(shù)據(jù)報(bào)文是被承載在以太網(wǎng)的數(shù)據(jù)域中的,,而且以太網(wǎng)數(shù)據(jù)幀的協(xié)議域始終為0x8863,。
PPPOE發(fā)現(xiàn)階段的四步的過(guò)程中,PPPOE會(huì)遇到PADI,、PADO,、PADR和PADS這四種報(bào)文。PPPOE中的PADT報(bào)文是用來(lái)終止一條會(huì)話的,。
PADI報(bào)文
PPPOE發(fā)現(xiàn)階段的第一步,,也即是由用戶首先發(fā)送這樣一個(gè)報(bào)文。用戶主機(jī)是以廣播的方式發(fā)送這個(gè)報(bào)文,,所以該報(bào)文所對(duì)應(yīng)的以太網(wǎng)幀的目的地址域應(yīng)填充為全1,,而源地址域填充用戶主機(jī)的MAC地址。廣播包可能會(huì)被多個(gè)訪問(wèn)集中器接收到。
PADO報(bào)文
PPPOE發(fā)現(xiàn)階段的第二步,,也即是由訪問(wèn)集中器回應(yīng)各用戶主機(jī)發(fā)送的PADI報(bào)文,,此時(shí)該報(bào)文所對(duì)應(yīng)的以太網(wǎng)幀的源地址填充訪問(wèn)集中器的MAC地址,而目的地址則填充從PADI中所獲取的用戶主機(jī)的MAC地址,。
PADR報(bào)文
PPPOE發(fā)現(xiàn)階段的第三步,,也即是由用戶主機(jī)向訪問(wèn)服務(wù)器發(fā)送單播的請(qǐng)求報(bào)文。當(dāng)用戶主機(jī)收到PADO報(bào)文后,,會(huì)從這些報(bào)文中挑選一個(gè)訪問(wèn)集中器作為后續(xù)會(huì)話的對(duì)象,。由于用戶主機(jī)在收到PADO報(bào)文后,就獲知了訪問(wèn)集中器的MAC地址,,因此PADR報(bào)文所以應(yīng)的以太網(wǎng)幀的源地址填充用戶主機(jī)的MAC地址,,而以太網(wǎng)的目的地址填充為訪問(wèn)集中器的MAC地址。
PADS報(bào)文
PPPOE發(fā)現(xiàn)階段的第四步,,也即是最后一步,,此時(shí)訪問(wèn)集中器當(dāng)收到PADR報(bào)文時(shí),就準(zhǔn)備進(jìn)入開(kāi)始一個(gè)PPP的會(huì)話了,,而此時(shí)訪問(wèn)集中器會(huì)為在這個(gè)會(huì)話分配一個(gè)唯一的會(huì)話進(jìn)程ID,,并在發(fā)送給主機(jī)的PADS報(bào)文中攜帶上這個(gè)會(huì)話ID。當(dāng)然如果訪問(wèn)集中器不滿足用戶所申請(qǐng)的服務(wù)的話,,則會(huì)向用戶發(fā)送一個(gè)PADS報(bào)文,,而其中攜帶一個(gè)服務(wù)名錯(cuò)誤的標(biāo)記,而且此時(shí)該P(yáng)ADS報(bào)文中的會(huì)話ID填充0x0000,。
PADT報(bào)文
PADT報(bào)文可能在會(huì)話進(jìn)行開(kāi)始之后的任意時(shí)間內(nèi)被發(fā)送,,主要是用來(lái)終止一個(gè)PPPOE會(huì)話的止。它可以由主機(jī)或訪問(wèn)集中器發(fā)送,,目的地址填充為對(duì)端的以太網(wǎng)的MAC地址,。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購(gòu)買等信息,,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請(qǐng)點(diǎn)擊一鍵舉報(bào),。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多