日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 嵌入式 > 嵌入式軟件
[導(dǎo)讀]嵌入式操作系統(tǒng)VxWorks下PPPoE的實現(xiàn)

摘要:PPPoE是一種很常用的撥號協(xié)議,介紹PPPoE Discovery階段的基本流程和幀封裝格式,同時介紹PPP的連接控制協(xié)議(LCP)、認證協(xié)議(CHAP、PAP)、IP控制協(xié)議I(PCP)各協(xié)議子層之間的關(guān)系和PPP的數(shù)據(jù)包封裝格式。討論PPPoE、PPP協(xié)議在嵌入式操作系統(tǒng)VxWorks的TCP/IP協(xié)議棧體系中的具體位置和PPP、PPPoE數(shù)據(jù)包收發(fā)二個方向的處理流程,同時給出VxWorks下PPPoE實現(xiàn)的具體的軟件模塊設(shè)計,具有一定的工程應(yīng)用價值。
關(guān)鍵字:PPPoE;PPP;VxWorks;嵌入式操作系統(tǒng)

1 前言
    在目前的通信市場,寬帶逐漸增溫,接入方式呈現(xiàn)多樣性:LAN、ADSL、HFC Cable Modem、WLAN各有一定的市場份額,而ADSL是全球范圍內(nèi)占據(jù)主流地位的寬帶接入方式,它能夠提供最低512 kHz,最高8 MHz的帶寬。用戶可以獨享帶寬,不會因為上網(wǎng)人數(shù)的增加而導(dǎo)致上網(wǎng)速率的降低。更為重要的是ADSL價格低廉,能為普通消費者所接受。目前國內(nèi)的各大運營商和寬帶接入提供商正在如火如荼地進行寬帶革命。中國電信推出“ADSL網(wǎng)絡(luò)快車”,并且已經(jīng)圈定了大規(guī)模的用戶群;中國網(wǎng)通也有類似的市場規(guī)模。另一方面,VoIP語音業(yè)務(wù)也飛速發(fā)展。目前國內(nèi)大多數(shù)VoIP語音接入終端多為LAN方式。主要用戶對象集中于智能化小區(qū)、校園、話吧等。由于大多數(shù)家庭用戶的寬帶接入為ADSL方式,運營商不得不考慮到目前的ADSL用戶對VoIP語音業(yè)務(wù)的需求。所以,如果VoIP的終端設(shè)備支持PP-PoE的接入方式,只要將VoIP的終端設(shè)備掛到AD-SLMODEM下就可以提供VoIP語音業(yè)務(wù)。VoIP終端設(shè)備的軟件大多都基于嵌入式操作系統(tǒng)。VxWorks是WRS(Wind River Systems Inc.)推出的嵌入式實時操作系統(tǒng)。VxWorks以無可比擬的高效能、高可靠性、高效的調(diào)試工具和穩(wěn)定、高效的網(wǎng)絡(luò)協(xié)議等優(yōu)點在高端通信市場占據(jù)了優(yōu)勢地位,太多數(shù)通訊設(shè)備都采用VxWorks作為操作系統(tǒng)。本文詳細介紹PPP、PPPoE協(xié)議在VxWorks下的具體實現(xiàn)。

2 PPP和PPPOE協(xié)議
    IP接入的功能包括動態(tài)IP地址分配、AAA和ISP動態(tài)選擇,實現(xiàn)這些功能通常需要用到一個著名的接入?yún)f(xié)議即PPP協(xié)議,PPP協(xié)議是一成熟的IP接入?yún)f(xié)議,支持多種協(xié)議封裝,實現(xiàn)簡單,易于與現(xiàn)有的ISP配合。它具有鏈路層和網(wǎng)絡(luò)層配置和協(xié)商功能,可方便地自動分配TP。PPP本身也是一個數(shù)據(jù)鏈路層協(xié)議,它可采用不同的傳輸機制傳送。常用的有HDLC、ATM和以太網(wǎng)。承載在以太網(wǎng)上的稱為PPPoE(PPP over Ethernet)。

2.1 PPPoE協(xié)議

    RFC2516定義了一種在以太網(wǎng)上傳送PPP的方法即PPPoE。PPPoE分為二個階段,即Discovery(地址發(fā)現(xiàn))階段和PPP會話階段。當(dāng)某個主機希望發(fā)起一個PPPoE會話時,它必須首先執(zhí)行Discovery來確定對方的以太網(wǎng)MAC地址并建立起一個PP-PoE會話標識符SESSION_ID。雖然PPP定義的是端到端的對等關(guān)系,Discovery卻是天生的一種客戶端-服務(wù)器關(guān)系。在Discovery的過程中,主機(作為客戶端)發(fā)現(xiàn)某個訪問集中器(Access Concentrator,作為服務(wù)器),根據(jù)網(wǎng)絡(luò)的拓撲結(jié)構(gòu),主機能夠與不只一個的訪問集中器通信。Discovery階段允許主機發(fā)現(xiàn)所有的訪問集中器并從中選擇一個。當(dāng)Discovery階段成功完成后,主機和訪問集中器二者都具備了用于在以太網(wǎng)上建立點到點連接所需的所有信息。
    (1)PPPoE的幀格式和種類
    Discovery階段所有的以太網(wǎng)幀的ETHER_TYPE域都設(shè)置為0x8863。PPP會話階段以太網(wǎng)幀的ETHER_TYPE域都設(shè)置為0x8864。PPPoE的payload部分包含O個或多個TAG。一個TAG是一個TLV(type-length-value)結(jié)構(gòu),TAG_TYPE域為16位值(網(wǎng)絡(luò)字節(jié)序),RFC2516標準附錄A列出了各種TAG_TYPE和TAG_VALUE。PPPoE的幀格式如圖l所示。

    PPPoE discovery階段有5種基本的幀,分別為PPPoE Active Discovery Initiation (PADI)、PPPoE Active Discovery Offer(PADO)、PPPoE Active Discovery Request (PADR)、PPPoE Active Discovery Sessionconfirmation (PADS)、PPPoE Active Discovery Terminate(PADT)。
    (2)PPPoE的工作流程
    PPPoE包含二個階段:Discovery搜索階段和Session會話階段。PPPoE Discovery的主要步驟為:
    ●主機發(fā)送PADl分組,其目的地址為廣播地址,會話IAD為0(未分配);
    ●任一接入服務(wù)器收到PADI并任提供所需的服務(wù)時,就回送PADO分組,會話IAD為O;
    ●主機可能收到多個PADO,根據(jù)服務(wù)及其提供的服務(wù)選定一個服務(wù)器,然后向該服務(wù)器發(fā)送PADR分組,其目的地址為該服務(wù)器的單播地址。會話ID為0(未分配);
    ●該服務(wù)器收到PADR后生成一個唯一的會話ID,向主機回送PADS分組,準備啟動PPP。
    當(dāng)搜索階段完成后,PPPoE的Host主機從接入服務(wù)器AC獲取一個Session ID。搜索成功后主機和接入服務(wù)器之間就可以建立Ethernet的PPP連接,進入PPP會話階段。

2.2 PPP協(xié)議
    (1)PPP協(xié)議組成
    PPP協(xié)議由IETF RFCl661定義,主要包含4個部分:
    ●幀封裝的方法;
    ●鏈路控制協(xié)議(LCP-Link Control Protocol),完成線路的啟動、測試、任選參數(shù)的協(xié)商和最終線路斷開功能;
    ●網(wǎng)絡(luò)控制協(xié)議(NCP),最常用的NCP協(xié)議為IP控制協(xié)議IPCP。它的一個重要功能就是動態(tài)分配IP地址;
    ●用戶認證,主要通過LCP協(xié)商采用何種認證協(xié)議,但認證協(xié)議本身不是PPP協(xié)議的范圍。
    PPP可分為三個階段:LCP協(xié)商、認證和NCP協(xié)商。從協(xié)議上來說可以分為三個子層,每層可向相鄰的子層發(fā)送“Up”或“Down”事件?!癠p”表示該層已激活,“Down”表示該層已終結(jié)。就整個接入過程而言,還可以認為LCP之下還有一個物理層,在每個NCP之上還有一個網(wǎng)絡(luò)接口。
    一個子層的激活(Up)需具有三個事件:上層發(fā)出“打開”(Open)請求,下層收到“Up”事件;本層協(xié)商成功。
    協(xié)議的基本過程為:用戶通過某個接口請求建立鏈路,此時Open事件發(fā)送到PPP的LCP子層,當(dāng)LCP啟動后,即請求建立物理鏈路,開始PPPoE協(xié)商,當(dāng)PPPoE協(xié)商成功后,就向LCP層發(fā)送Up事件。然后LCP向?qū)Χ税l(fā)送協(xié)商請求,雙方確定鏈路的配置參數(shù)后,LCP向認證層發(fā)送Up事件。認證成功后,在向NCP層發(fā)Up事件。如不需要認證,則可直接向NCP層發(fā)送up事件。NCP協(xié)議收到Up事件后開始NCP處理。例如IPCP協(xié)議將開始協(xié)商IP地址等。PPP正常終結(jié)過程是,每個NCP分別終結(jié),然后LCP終結(jié),最后物理層終結(jié)。但PPP實現(xiàn)必須能夠處理物理鏈路自行斷開、NCP尚未終結(jié)時LCP先行終結(jié)的異常情況。
    (2)PPP的封裝格式
    PPPP的封裝格式如下:

   
    發(fā)送的順序是從左到右。Protocol定義被封裝的數(shù)據(jù)報的協(xié)議類型,最常用的幾種定義為:

   

3 在VxWorks下的實現(xiàn)
3.1 PPP和PPPoE數(shù)據(jù)包收發(fā)處理流程
   
為了更清楚地介紹VxWorks下的PPP和PPPoE數(shù)據(jù)包收發(fā)處理流程,先介紹一下Vx-Works下的TCP/IP協(xié)議棧的結(jié)構(gòu)。
    PPP和PPPoE在VxWorks TCP/IP協(xié)議棧中的位置如下:

    VxWorks的TCP/IP協(xié)議棧與標準的BSD的TCP/IP協(xié)議的最大不同在于加入了MUX層。MUX層的作用是負責(zé)管理協(xié)議層和驅(qū)動層之間的相互作用,使協(xié)議層和驅(qū)動層相互透明。從而使一個VxWorks操作系統(tǒng)可以同時支持多個協(xié)議和驅(qū)動。PPP和PPPoE都屬于鏈路層的協(xié)議,所以介于MUX和IP層之間。
    PPPoE層主要實現(xiàn)PPPoE撥號過程和對上層PPP的數(shù)據(jù)包進行PPPoE封裝。PPPoE通過MUX層的接口發(fā)送方向采用以太網(wǎng)發(fā)送函數(shù)ehterOutput發(fā)送數(shù)據(jù)包,接收方向主要是調(diào)用VxWorks提供的增加鉤子函數(shù)etherInputHookAdd添加自己的以太網(wǎng)鉤子函數(shù)對以太網(wǎng)幀類型為0x8863和0x8864的包進行處理。如幀類型為0x8863,則為PPPoE Dis-covery包,如為0x8864,則為PPPoE Session階段的包經(jīng)拆封處理后送到PPP層處理。
    PPP層軟件主要實現(xiàn)LCP鏈路建立、PPP認證、IPCP協(xié)商IP地址和對IP數(shù)據(jù)包的PPP封裝等功能。
    PPP層與IP層的接口主要通過再添加一個if_PPP的網(wǎng)絡(luò)接口。從IP層看來if_PPP接口和普通的網(wǎng)口設(shè)備沒什么不同。if_ppp作為VxWorks TCP/IP協(xié)議棧中的一個網(wǎng)絡(luò)接口,可以封裝IP數(shù)據(jù)包,并且在PPP的鏈路上收發(fā)IP包。PPP和PPPoE層也有相應(yīng)接口函數(shù)。發(fā)送方向PPP的數(shù)據(jù)包(無論是IP還是LCP、IPCP)都通過PPPoE層封裝后發(fā)送出去;接收方向,PPPoE層收到包先進行判斷,如是PPF包,就交PPP層處理。PPP層根據(jù)協(xié)議類型分發(fā)到LCP、IPCF、IP等相關(guān)模塊進行處理。整個PPP和PPPoE的收發(fā)包處理流程如圖2所示。

3.2 PPP和PPPoE軟件模塊設(shè)計
    整個PPPoE、PPP軟件由PPP、PPP Adapter、PP-
PoE Discovery、PPPoE Session、PPPoE Timer、PPPoE Adpater、PPPoE Config模塊組成,如圖3所示。

    1)PPP模塊主要實現(xiàn)LCP、IPCP和認讓協(xié)議(chap、pap)等,PPP還實現(xiàn)一個虛擬的ifnet接口,實現(xiàn)對上層IP報的封裝和分發(fā)處理。
    2)PPP Adpater模塊主要實現(xiàn)PPP和PPPoE模塊之間的接口適配。
    3)PPPoE Discoverv模塊實現(xiàn)PPPoE的Discov-ely階段的處理。
    4)PPPoE Session模塊實現(xiàn)PPPoE的Session階段的處理,主要是PPPoE封裝和解包處理。
    5)PPPoE Timer模塊主要實現(xiàn)PPPoE模塊的定時處理功能,用于PPPoE Discovery階段的狀態(tài)機切換處理。
    6)PPPoE Adapater模塊主要實現(xiàn)PPPoE的包的收發(fā)處理。
    7)PPPoE Config模塊主要實現(xiàn)PPP和PPPoE的相關(guān)配置功能。如配置用戶名密碼等。

4 結(jié)束語
   
本文介紹應(yīng)用PPP和PPPoE協(xié)議實現(xiàn)VoIP的語音接人方法,詳細介紹了PPP、PPPoE協(xié)議的原理,討論了PPP和PPPoE協(xié)議在VxWorks操作系統(tǒng)下的具體實現(xiàn),具有一定的工程應(yīng)用價值。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

成都2022年10月19日 /美通社/ -- 近期,平安養(yǎng)老險積極籌備個人養(yǎng)老金的產(chǎn)品設(shè)計和系統(tǒng)開發(fā)工作,發(fā)展多樣化的養(yǎng)老金融產(chǎn)品,推動商業(yè)養(yǎng)老保險、個人養(yǎng)老金、專屬商業(yè)養(yǎng)老保險等產(chǎn)品供給。 搭養(yǎng)老政策東風(fēng) ...

關(guān)鍵字: 溫度 BSP 東風(fēng) 大眾

廣東佛山2022年10月19日 /美通社/ -- 空間是人居生活的基礎(chǔ)單元,承載著生存與活動的最基本功能。而對于理想空間的解構(gòu)意義卻在物理性容器之外,體現(xiàn)出人們對于空間和生活深層關(guān)系的思考,同時也塑造著人與空間的新型連接...

關(guān)鍵字: 溫度 BSP 智能化 進程

上海2022年10月19日 /美通社/ -- 10月17日晚間,安集科技披露業(yè)績預(yù)告。今年前三季度,公司預(yù)計實現(xiàn)營業(yè)收入7.54億元至8.33億元,同比增長60.24%至77.03%;歸母凈利潤預(yù)計為1.73億...

關(guān)鍵字: 電子 安集科技 BSP EPS

北京2022年10月19日 /美通社/ -- 10月18日,北京市經(jīng)濟和信息化局發(fā)布2022年度第一批北京市市級企業(yè)技術(shù)中心創(chuàng)建名單的通知,諾誠健華正式獲得"北京市企業(yè)技術(shù)中心"認定。 北京市企業(yè)技...

關(guān)鍵字: BSP ARMA COM 代碼

北京2022年10月18日 /美通社/ -- 10月14日,國際數(shù)據(jù)公司(IDC)發(fā)布《2022Q2中國軟件定義存儲及超融合市場研究報告》,報告顯示:2022年上半年浪潮超融合銷售額同比增長59.4%,近5倍于...

關(guān)鍵字: IDC BSP 數(shù)字化 數(shù)據(jù)中心

上海2022年10月18日 /美通社/ -- 2022年9月5日,是首都銀行集團成立60周年的紀念日。趁著首都銀行集團成立60周年與首都銀行(中國)在華深耕經(jīng)營12年的“大日子”,圍繞作為外資金融機構(gòu)對在華戰(zhàn)略的構(gòu)想和業(yè)...

關(guān)鍵字: 數(shù)字化 BSP 供應(yīng)鏈 控制

東京2022年10月18日  /美通社/ -- NIPPON EXPRESS HOLDINGS株式會社(NIPPON EXPRESS HOLDINGS, INC.)旗下集團公司上海通運國際物流有限公司(Nipp...

關(guān)鍵字: 溫控 精密儀器 半導(dǎo)體制造 BSP

廣州2022年10月18日 /美通社/ -- 10月15日,第 132 屆中國進出口商品交易會("廣交會")于"云端"開幕。本屆廣交會上高新技術(shù)企業(yè)云集,展出的智能產(chǎn)品超過140,...

關(guān)鍵字: 中國智造 BSP 手機 CAN

要問機器人公司哪家強,波士頓動力絕對是其中的佼佼者。近來年該公司在機器人研發(fā)方面獲得的一些成果令人印象深刻,比如其開發(fā)的機器人會后空翻,自主爬樓梯等。這不,波士頓動力又發(fā)布了其機器人組團跳男團舞的新視頻,表演的機器人包括...

關(guān)鍵字: 機器人 BSP 工業(yè)機器人 現(xiàn)代汽車

南京2022年10月17日 /美通社/ -- 日前《2022第三屆中國高端家電品牌G50峰會》于浙江寧波落幕,來自兩百余名行業(yè)大咖、專家學(xué)者共同探討了在形勢依然嚴峻的當(dāng)下,如何以科技創(chuàng)新、高端化轉(zhuǎn)型等手段,幫助...

關(guān)鍵字: LINK AI BSP 智能家電

嵌入式軟件

15715 篇文章

關(guān)注

發(fā)布文章

編輯精選

技術(shù)子站

關(guān)閉