




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、ADSL接入及共享技術(shù)的實(shí)現(xiàn)一論文關(guān)鍵詞:網(wǎng)絡(luò)共享aal5業(yè)務(wù)adsl接入?yún)f(xié)議nat協(xié)議adsl路由功能論文摘要:本文首先闡述網(wǎng)絡(luò)共享原理,分析目前常用的rf1483bridged,rf1483ruted,rf1577,pppa,pppe等各種adsl接入?yún)f(xié)議類型及實(shí)現(xiàn)網(wǎng)絡(luò)共享的方法。選擇trlaperp850sar芯片作為中央處理器,搭建根本硬件開發(fā)平臺(tái);選擇indriver公司的trnad2.0作為軟件集成開發(fā)環(huán)境。參照vxrks5.4操作系統(tǒng)的設(shè)備驅(qū)動(dòng)編寫標(biāo)準(zhǔn),結(jié)合850pu的sar功能初始化,實(shí)現(xiàn)sar層end設(shè)備驅(qū)動(dòng)。以rf1483協(xié)議為例,闡述在不同的at復(fù)用方式下,各種協(xié)議數(shù)據(jù)報(bào)
2、文的封裝處理方法。參照vxrks5.4操作系統(tǒng)網(wǎng)絡(luò)效勞子層的編寫標(biāo)準(zhǔn),給出aal5業(yè)務(wù)網(wǎng)絡(luò)效勞子層的總體架構(gòu)及相關(guān)算法、流程。在vxrks5.4協(xié)議棧上實(shí)現(xiàn)網(wǎng)絡(luò)地址轉(zhuǎn)換nat功能,最后構(gòu)建出一套簡(jiǎn)單的adsl接入共享系統(tǒng)。1引言隨著adsl技術(shù)的開展,adsl寬帶接入已經(jīng)不僅僅是一種純粹的接入技術(shù)。家庭局域網(wǎng)的普及,中、小型企業(yè)電子商務(wù)的繁榮,遠(yuǎn)程辦公形式的引入,都呼吁著更經(jīng)濟(jì)、更有效的adsl接入共享方案的出現(xiàn)。如今,市場(chǎng)上用于adsl接入共享的產(chǎn)品非常多,如帶路由功能的adslde、adsl共享器、adsl路由器等等,各adsl廠商根據(jù)實(shí)際應(yīng)用的需求,在adsl接入設(shè)備的多樣性、高效性和靈
3、敏性上下功夫,進(jìn)一步擴(kuò)展了adsl的應(yīng)用前景。實(shí)現(xiàn)adsl接入共享的方式歸納起來有以下三種,可以根據(jù)實(shí)際情況選擇最適宜的方案。1.普通adslde雙網(wǎng)卡pingate之類的代理效勞器或防火墻軟件如圖1-1所示,雙網(wǎng)卡p安裝ingate之類的代理效勞器或防火墻軟件,一塊網(wǎng)卡連接adslde,另一塊連在局域網(wǎng)的hub上,作為其它用戶的ip網(wǎng)關(guān)。那么局域網(wǎng)內(nèi)的所有微機(jī)都可以通過這臺(tái)主機(jī)訪問internet網(wǎng)絡(luò)。圖1-1雙網(wǎng)卡p+adslde接入示意圖該方案的優(yōu)點(diǎn)是:無需添加任何設(shè)備,僅多一張網(wǎng)卡,即可通過軟件實(shí)現(xiàn)路由功能,同時(shí),可以使用管理軟件所帶的平安認(rèn)證、帳戶管理、防火墻等一系列功能。比擬合適網(wǎng)
4、吧等本就需要一臺(tái)效勞器作為帳戶管理的場(chǎng)所。缺點(diǎn)是:需要占用一臺(tái)效勞器作為數(shù)據(jù)轉(zhuǎn)發(fā)設(shè)備,本錢較高;數(shù)據(jù)交換的效率較低,和效勞器的性能有很大關(guān)系;此外,病毒入侵或效勞器本身性能不穩(wěn)定,極易造成網(wǎng)絡(luò)異常。2.普通adslde+共享器所謂共享器,其實(shí)是一種集成pppe、nat等功能的簡(jiǎn)單路由器。圖2-2所示的組網(wǎng)方案中,共享器取代了前一個(gè)方案中雙網(wǎng)卡p的地位。采用這種方案后,可以節(jié)省一臺(tái)效勞器以及相關(guān)軟件的花費(fèi),較第一種方案來說,確實(shí)經(jīng)濟(jì)很多,也不用再擔(dān)憂病毒入侵、效勞器不穩(wěn)定等問題了。很多共享器本身就帶多個(gè)lan口,無需再添置hub或sith等設(shè)備即可供多臺(tái)微機(jī)使用,對(duì)于家庭局域網(wǎng)或小型辦公場(chǎng)所非常
5、適宜。圖1-2共享器+adslde接入示意圖3帶路由功能的adslde帶簡(jiǎn)單路由器功能的adslde集成了adsl接入功能及網(wǎng)絡(luò)共享技術(shù)。如圖1-3所示,局域網(wǎng)用戶僅需將自身的ip網(wǎng)關(guān)指向設(shè)置在adslde以太網(wǎng)接口上的ip地址,即可實(shí)現(xiàn)與外部網(wǎng)絡(luò)的互連。由于adsl接入和路由兩種功能集成在同一設(shè)備中,減少了中間的數(shù)據(jù)轉(zhuǎn)發(fā)環(huán)節(jié),傳輸效率會(huì)更高一些,配置及調(diào)試起來也方便很多。此外,用一塊pu就可以實(shí)現(xiàn)adsl接入?yún)f(xié)議及簡(jiǎn)單路由等軟件功能,硬件本錢降低很多,價(jià)格比起adslde+共享器當(dāng)然更有優(yōu)勢(shì)了。圖1-3帶簡(jiǎn)單路由功能的adslde接入示意圖本文將首先介紹網(wǎng)絡(luò)共享原理,然后逐個(gè)分析目前常用的各
6、種adsl接入?yún)f(xié)議以及實(shí)現(xiàn)共享的方式。最后以trla850sar+vxrks5.4為開發(fā)平臺(tái),設(shè)計(jì)一套帶簡(jiǎn)單路由功能的adsl接入設(shè)備,重點(diǎn)闡述atsar層驅(qū)動(dòng)的編寫、aal5業(yè)務(wù)、各種接入?yún)f(xié)議以及帶寬共享功能的軟件實(shí)現(xiàn)。2網(wǎng)絡(luò)共享原理2.1私有網(wǎng)絡(luò)地址和公有網(wǎng)絡(luò)地址私有地址是指內(nèi)部網(wǎng)絡(luò)局域網(wǎng)內(nèi)部的主機(jī)地址,而公有網(wǎng)絡(luò)地址是局域網(wǎng)的外部地址在因特網(wǎng)上的全球唯一的ip地址。因特網(wǎng)地址分配組織規(guī)定以下的三個(gè)范圍網(wǎng)絡(luò)地址保存用做私有地址:10.0.0.010.255.255.255172.16.0.0172.31.255.255192.168.0.0192.168.255.255也就是說這三個(gè)范圍網(wǎng)
7、絡(luò)的地址不會(huì)在因特網(wǎng)上被分配,但可以在一個(gè)企業(yè)局域網(wǎng)內(nèi)部使用。各個(gè)企業(yè)根據(jù)在可預(yù)見的將來主機(jī)數(shù)量的多少,來選擇一個(gè)適宜的內(nèi)部網(wǎng)絡(luò)地址。不同的企業(yè),他們的內(nèi)部網(wǎng)絡(luò)地址可以一樣。假如一個(gè)公司選擇上述三個(gè)范圍之外的其他網(wǎng)段作為內(nèi)部網(wǎng)絡(luò)地址,那么有可能會(huì)引起路由的混亂。2.2nat原理natnetrkaddresstranslatin網(wǎng)絡(luò)地址轉(zhuǎn)換,是一個(gè)ietf標(biāo)準(zhǔn),允許一個(gè)機(jī)構(gòu)以一個(gè)公有網(wǎng)絡(luò)地址出如今internet上。nat將每個(gè)局域網(wǎng)節(jié)點(diǎn)的私有網(wǎng)絡(luò)地址轉(zhuǎn)換成一個(gè)公有網(wǎng)絡(luò)地址,反之亦然。它也可以應(yīng)用到防火墻技術(shù)里,把私有地址隱藏起來不被外界發(fā)現(xiàn),使外界無法直接訪問內(nèi)部網(wǎng)絡(luò)設(shè)備,同時(shí),它還幫助網(wǎng)絡(luò)可
8、以超越地址的限制,合理地安排網(wǎng)絡(luò)中的公有網(wǎng)絡(luò)地址和私有網(wǎng)絡(luò)地址的使用。napt(netrkaddressandprttranslatin)網(wǎng)絡(luò)端口地址轉(zhuǎn)換,可以將外部網(wǎng)的公有ip及端口號(hào)與內(nèi)部網(wǎng)絡(luò)的私有網(wǎng)絡(luò)ip及端口號(hào)互相映射。通過這種端口重定向方式實(shí)現(xiàn)的nat映射功能,可以將來自公共網(wǎng)絡(luò)的效勞懇求映射到內(nèi)部網(wǎng)絡(luò)某臺(tái)微機(jī)上。例如,假如公司想以內(nèi)部網(wǎng)絡(luò)中的主機(jī)a作為對(duì)外公開的eb效勞器,就得告訴nat設(shè)備將任何訪問其公網(wǎng)地址80端口的連接重新定向?yàn)榈絻?nèi)部網(wǎng)絡(luò)a主機(jī)地址的80端口。如下列圖所示圖2-1nat端口映射應(yīng)用示意圖3adsl連接協(xié)議概述3.1rf1483bridged接入方式rf1483
9、標(biāo)準(zhǔn)的制定是為了實(shí)現(xiàn)多種協(xié)議數(shù)據(jù)包在at的aal5層的封裝傳送。在協(xié)議模型上,rf1483-bridged方式在數(shù)據(jù)鏈路層對(duì)a幀進(jìn)展ll/snap或vux的封裝,以此來指明上層所應(yīng)用的協(xié)議類型,因此可以適用于網(wǎng)絡(luò)層上的多協(xié)議傳送。在形式上,它仿真了以太網(wǎng)的橋接功能,相當(dāng)于將用戶側(cè)的終端設(shè)備直接掛接在網(wǎng)絡(luò)側(cè)的網(wǎng)橋設(shè)備上。由于adsl接入設(shè)備配置為橋連接方式,理論上來說,設(shè)備后可以接多臺(tái)配置為公網(wǎng)ip地址的微機(jī),這些微機(jī)都可以通過網(wǎng)關(guān)直接接入internet網(wǎng)絡(luò)中。但實(shí)際上可分配的公有ip地址并不多,很多效勞提供商限制了每根線上可分配的ip個(gè)數(shù),因此只有將ip地址設(shè)在adsl接入設(shè)備的an端,然后
10、通過nat的方式來共享有限的ip資源,這就是目前較為常見的1483bridged+nat接入方式,又稱為橋路由方式,其接入模型如圖3-1所示。圖3-11483bridgednat接入示意圖3.2rf1577經(jīng)典ipa接入方式嚴(yán)格的說,rf1577并非一種接入標(biāo)準(zhǔn),它規(guī)定了在at的aal5上使用的地址解析機(jī)制,是對(duì)rf1483ruted接入方式在atarp實(shí)現(xiàn)細(xì)節(jié)的補(bǔ)充。在協(xié)議模型上,rf1577不再轉(zhuǎn)發(fā)類似arp協(xié)議的各種以太網(wǎng)報(bào)文,而是通過和網(wǎng)絡(luò)指定的arp效勞器交互atarp信息獲得下一跳ip地址所對(duì)應(yīng)的at地址,然后采用rf1483ll/snap或基于v的復(fù)用方式對(duì)ruted報(bào)文進(jìn)展封裝
11、處理。rf1577一般用于需要靜態(tài)ip的商業(yè)用戶,和rf1483bridged方式一樣,可以采用帶nat功能的設(shè)備實(shí)現(xiàn)多臺(tái)微機(jī)共享帶寬。3.3rf2364pppverat接入方式pppa接入技術(shù)根據(jù)rf2364封裝標(biāo)準(zhǔn)對(duì)ppp包進(jìn)展aal5層封裝處理,形成at信元流,傳送到網(wǎng)絡(luò)側(cè)的寬帶接入效勞器上,完成受權(quán)、認(rèn)證、分配ip地址和計(jì)費(fèi)等一系列ppp接入過程。同樣,可以采用帶nat功能的設(shè)備實(shí)現(xiàn)多臺(tái)微機(jī)共享帶寬。此外,當(dāng)效勞商是根據(jù)ppp接入的時(shí)間進(jìn)展計(jì)費(fèi)時(shí),還需要考慮adsl設(shè)備是否具有按需撥號(hào)dd功能及自動(dòng)斷開功能,這樣可以防止無數(shù)據(jù)訪問時(shí)系統(tǒng)仍占用帶寬,浪費(fèi)網(wǎng)絡(luò)資源及增加不必要的費(fèi)用開支。3
12、.4rf2516pppe接入方式早期的pppe接入方式,撥號(hào)程序一般放在p機(jī)上,adslde配置為簡(jiǎn)單的rf1483bridged橋接方式,由p機(jī)使用pppe客戶端程序比擬常見的有enternet300、raspppe等發(fā)起ppp撥號(hào)懇求并獲得動(dòng)態(tài)的公網(wǎng)ip地址。其接入模型如下列圖所示圖3-2pppe接入示意圖為了實(shí)現(xiàn)多臺(tái)微機(jī)帶寬共享,需要將pppe客戶端呼叫例程集成至atur端,其后加上nat地址轉(zhuǎn)換機(jī)制。目前,一般帶路由功能的adsl接入設(shè)備都具有這樣的功能。4開發(fā)平臺(tái)的選擇及搭建4.1產(chǎn)品定位鑒于目前市場(chǎng)上面向低端用戶的adsl接入產(chǎn)品較多,價(jià)格競(jìng)爭(zhēng)非常劇烈,利潤(rùn)空間已急劇減縮。我們希望
13、開發(fā)一款針對(duì)中高端用戶使用的adsl路由器產(chǎn)品,除了實(shí)現(xiàn)普通adsl接入及簡(jiǎn)單nat、防火墻等功能外,還具有路由器產(chǎn)品的vpn、ipse、效勞映射、動(dòng)態(tài)路由更新協(xié)議等功能,具有和is兼容的配置命令集,實(shí)現(xiàn)即配即用,便于用戶隨時(shí)進(jìn)展監(jiān)控管理。4.2硬件開發(fā)平臺(tái)的選擇通過調(diào)研,我們找到幾款符合需求的pu芯片,如trla的perp850sar、intel的ixp225、sasung的s5n89xx系列芯片,virata等。這幾款芯片在性能、價(jià)格等方面的綜合比擬如下表所示:pure提供評(píng)估參考板軟件方面支持價(jià)格virataar有全套低trlapp850sarpp850有有bsp、aal5驅(qū)動(dòng)參考例程適
14、當(dāng)intelixp225ar7有有bsp,aal、at業(yè)務(wù)api等模塊高sasungs5n89xxar7需購置有bsp,aal2、aal5、at業(yè)務(wù)等api高表4-1硬件平臺(tái)綜合比擬表假設(shè)從本錢方面考慮,選擇virata芯片比擬適宜,而且廠方提供了自己的操作系統(tǒng)及全套開發(fā)源代碼,幾乎已是半成品。但測(cè)試中感覺局部協(xié)議、功能不夠完善,控制臺(tái)人機(jī)界面也不符合要求,還需要進(jìn)展后續(xù)開發(fā),而其提供的開發(fā)環(huán)境不夠理想,代碼可移植性也比擬差,不利于技術(shù)積累。intelixp225、sasungs5提供的軟件支持較多,已支持frtrnad的1483bridged和pppa等協(xié)議,也有nat、pat等網(wǎng)關(guān)路由應(yīng)用
15、模塊,此外,還支持vieveraal2功能。但芯片價(jià)格相比之下也高出很多??紤]到目前vaal2的應(yīng)用并不明朗,很少有局端支持此項(xiàng)功能,所以暫不考慮這兩款芯片。trlaperp850sar是850系列芯片針對(duì)adsl接入推出的專用簡(jiǎn)化版本此后又推出了性價(jià)比更高的850dsl芯片,價(jià)格較低,其提供的軟件方面支持雖然較少,但已根本符合我們的需求,后續(xù)開發(fā)的難度不會(huì)太大。假如選擇通用的trnad開發(fā)套件進(jìn)展開發(fā),以后可以方便地遷移至intelixp225、intelixp425或sasung等系統(tǒng)平臺(tái),代碼的重復(fù)利用率高。由此,我們決定采用perp850sar作為核心部件,adsl接入前端那么選擇兼容
16、性較好的alateldsp芯片組,總體架構(gòu)如圖41所示。4.3軟件開發(fā)平臺(tái)的選擇軟件上目前流行的嵌入式操作系統(tǒng)有vxrks、pss、rts、qnx、ullinux等,由于vxrks對(duì)perp、ar都有良好的支持,已經(jīng)提供了針對(duì)trla開發(fā)評(píng)估板ads板的bsp組件,并且其集成開發(fā)套件trnad使用起來非常方便,可以有效地節(jié)省開發(fā)周期,也便于以后系統(tǒng)遷移,所以決定采用這款操作系統(tǒng)。4.4開發(fā)平臺(tái)搭建簡(jiǎn)述開發(fā)平臺(tái)的準(zhǔn)備包括硬件平臺(tái)調(diào)試及底層驅(qū)動(dòng)編寫,因?yàn)槠邢蓿布脚_(tái)的調(diào)試略過,底層驅(qū)動(dòng)及軟件開發(fā)環(huán)境的搭建工作僅作簡(jiǎn)單描繪:1針對(duì)目的板與ads板在sdra、flash、ethernet等芯片的
17、不同,更改相應(yīng)的外圍器件驅(qū)動(dòng),生成新的bsp驅(qū)動(dòng),并編譯生成vxrks系統(tǒng)的bt代碼,使其可以在新的目的板上運(yùn)行。2在此bsp根底上創(chuàng)立btable工程,編譯btable程序代碼,使其可以正常下載至目的板中運(yùn)行,并能正常啟動(dòng)targetshell。此后,就可以建立dnladable工程,將應(yīng)用程序以任務(wù)執(zhí)行方式在目的板中進(jìn)展調(diào)試。3編寫alateldsp驅(qū)動(dòng),調(diào)通adsl物理層、at層utpia接口的連接。這局部工作的要點(diǎn)在于alateldsp內(nèi)部存放器和提供目的代碼都是littleendian形式,而perp默認(rèn)的總線是bigendian形式,下載時(shí)需要對(duì)相應(yīng)數(shù)據(jù)做字節(jié)或字交換。圖4-2ad
18、sl共享接入系統(tǒng)軟件架構(gòu)示意圖這些局部調(diào)試完成后,就可以著手sarend驅(qū)動(dòng)、網(wǎng)絡(luò)層接口及網(wǎng)關(guān)應(yīng)用層的開發(fā)了。軟件架構(gòu)系統(tǒng)如圖42所示深黑色所示局部為本文所要著重闡述的sarend驅(qū)動(dòng)、adsl業(yè)務(wù)驅(qū)動(dòng)及nat實(shí)現(xiàn)等模塊5sarend驅(qū)動(dòng)的編寫sar驅(qū)動(dòng)模塊是參照vxrks系統(tǒng)的end驅(qū)動(dòng)模板編寫的,根本符合ux接口標(biāo)準(zhǔn),其中主要的幾個(gè)功能實(shí)現(xiàn)。5.1utpia接口初始化850sar內(nèi)部參數(shù)的全局聯(lián)絡(luò)構(gòu)造。是s各個(gè)參數(shù)表間的聯(lián)絡(luò),由左至右是從上級(jí)表到下級(jí)表的關(guān)系,代碼實(shí)現(xiàn)中,對(duì)這些參數(shù)表的初始化順序那么要相反,即先初始化下級(jí)表,再初始化上級(jí)表。詳細(xì)初始化流程如下:5.2加載及初始化函數(shù)sare
19、ndlad由系統(tǒng)在加載uxdevendlad時(shí)間接調(diào)用,是end驅(qū)動(dòng)第一個(gè)被加載的例程,它根據(jù)入口參數(shù)unit,對(duì)相應(yīng)aal5通道的atif構(gòu)造表進(jìn)展初始化,并調(diào)用saraal5add增加相應(yīng)的通道。sarendstart由系統(tǒng)在運(yùn)行uxdevendstart時(shí)間接調(diào)用,它根據(jù)入口參數(shù)unit調(diào)用saraal5start函數(shù)激活相應(yīng)的aal5通道,允許其正常開場(chǎng)收發(fā)。saraal5add增加一條aal5通道,初始化這條通道的收發(fā)緩沖區(qū),緩沖區(qū)描繪字,tt及rt表中的相關(guān)參數(shù)值。saraal5start激活一條aal5通道,根據(jù)通道對(duì)應(yīng)的atif構(gòu)造設(shè)定pv,上行速率。將通道pvask放入lku
20、p表中,激活該通道進(jìn)展接收;發(fā)送tx_ative命令,激活該通道進(jìn)展發(fā)送。5.3停頓及卸載函數(shù)在系統(tǒng)執(zhí)行uxdevunlad或uxdevstp時(shí)間接調(diào)用這兩個(gè)函數(shù)。sarendunlad釋放這個(gè)設(shè)備所占的endbjet構(gòu)造資源。但通道所占的內(nèi)存資源并沒有釋放。sarendstp停頓這個(gè)接口。并調(diào)用saraal5stp函數(shù)關(guān)閉這條通道,執(zhí)行與sarendstart相反的操作。saraal5stp解激活并關(guān)閉這條通道。將通道pvask移出lkup表,解激活該通道,使其停頓接收;發(fā)送tx_deative命令,解激活該通道,使其停頓發(fā)送。5.4數(shù)據(jù)發(fā)送函數(shù)函數(shù)名稱:sarendsend功能:將數(shù)據(jù)發(fā)送
21、到相應(yīng)的aal5通道中。入口參數(shù):指向通道的endbjet設(shè)備構(gòu)造指針,指向待發(fā)送的數(shù)據(jù)包blk構(gòu)造指針。返回:發(fā)送成功,返回k;阻塞狀態(tài)返回end_err_blk;其他情況返回errr。流程簡(jiǎn)介:將blk指向的數(shù)據(jù)包進(jìn)展加封裝操作,將指針及長(zhǎng)度填入當(dāng)前發(fā)送bd中即可。(注:為防止重入,使用到發(fā)送指示信號(hào)量,并在修改阻塞狀態(tài)時(shí)給予中斷保護(hù))5.5中斷控制流程s工作在utpia形式下的中斷聯(lián)接在ida1上,使用函數(shù)intnnet(iv_ida1,(vidfunptr)sarintr,0)就可以在sar發(fā)生中斷時(shí)調(diào)用sarintr函數(shù)。此時(shí)我們將輪詢整個(gè)sar中斷表,并對(duì)相應(yīng)中斷進(jìn)展處理,為防止該
22、中斷過多占用系統(tǒng)資源,我們將其放置在一個(gè)netjb任務(wù)中。同時(shí),進(jìn)入該任務(wù)后,屏蔽全局中斷,直到所有的中斷事件處理完畢。5.6數(shù)據(jù)接收處理當(dāng)utpia接口收到來自于dsp的數(shù)據(jù)后,會(huì)提取出at報(bào)文頭部信息,假如是aal5通道報(bào)文,那么將報(bào)文存入相應(yīng)的數(shù)據(jù)緩沖區(qū)中,設(shè)置相關(guān)存放器值,并產(chǎn)生utpia數(shù)據(jù)接收中斷。系統(tǒng)收到中斷懇求后,將會(huì)進(jìn)入5.5所示的中斷例程進(jìn)展處理,判斷是接收事件時(shí),提取產(chǎn)惹事件的通道號(hào),計(jì)算出該通道對(duì)應(yīng)的atif構(gòu)造起始地址,作為參數(shù)調(diào)用sarrev函數(shù),在函數(shù)中進(jìn)展數(shù)據(jù)報(bào)文處理。6.aal5業(yè)務(wù)模塊的實(shí)現(xiàn)作為系統(tǒng)(vxrks)協(xié)議棧和sarend驅(qū)動(dòng)模塊之間的接口,ata
23、al5業(yè)務(wù)網(wǎng)絡(luò)效勞子層主要完成如下功能:1發(fā)送:向系統(tǒng)注冊(cè)1483bridged、1483ruted、atarp、pppa、pppe等不同類型接口interfae,根據(jù)各個(gè)接口的不同類型,對(duì)系統(tǒng)ip數(shù)據(jù)報(bào)文進(jìn)展at鏈路封裝,將封裝后的數(shù)據(jù)報(bào)文發(fā)送到驅(qū)動(dòng)模塊并同時(shí)指示發(fā)送的v通道;注:因?yàn)?483bridged封裝的是以太網(wǎng)幀,解封裝后可視為正常的以太網(wǎng)數(shù)據(jù)幀,直接交由協(xié)議棧處理,所以我們不需要再注冊(cè)1483bridged協(xié)議類型接口。2接收:向系統(tǒng)注冊(cè)業(yè)務(wù)類型,接收系統(tǒng)送來的數(shù)據(jù)報(bào)文由驅(qū)動(dòng)模塊接收,并由系統(tǒng)根據(jù)接收的數(shù)據(jù)報(bào)文業(yè)務(wù)類型進(jìn)展分發(fā),根據(jù)接口屬性對(duì)數(shù)據(jù)報(bào)文進(jìn)展解封裝后提交到系統(tǒng)協(xié)議?;?/p>
24、者交由其他模塊處理,3控制:接收系統(tǒng)對(duì)于接口上的控制操作主要是根據(jù)vxrksnetrkservies提供的標(biāo)準(zhǔn)完成,通過向ux接口注冊(cè)重發(fā)例程實(shí)現(xiàn)數(shù)據(jù)報(bào)文重發(fā)。6.1vxrks網(wǎng)絡(luò)效勞子層編寫標(biāo)準(zhǔn)vxrks網(wǎng)絡(luò)效勞子層介于從si標(biāo)準(zhǔn)的網(wǎng)絡(luò)層和鏈路層之間,主要負(fù)責(zé)處理系統(tǒng)網(wǎng)絡(luò)協(xié)議棧和ux接口之間的數(shù)據(jù)報(bào)文。它包括接口初始化、數(shù)據(jù)構(gòu)造初始化、數(shù)據(jù)收發(fā)處理、錯(cuò)誤報(bào)告和流量控制可選等局部。6.1.1接口初始化vxrks系統(tǒng)協(xié)議棧通過調(diào)用網(wǎng)絡(luò)效勞子層初始化例程函數(shù)名稱為xxxattah()來激活相關(guān)網(wǎng)絡(luò)接口。在這個(gè)例程開場(chǎng)處,我們需要先用uxbind函數(shù)將該效勞子層綁定至相關(guān)的網(wǎng)絡(luò)接口驅(qū)動(dòng)上,使該效勞子
25、層可以從ux層收發(fā)數(shù)據(jù)報(bào)文。6.1.2數(shù)據(jù)構(gòu)造初始化效勞子層在收發(fā)相關(guān)數(shù)據(jù)報(bào)文時(shí),可能需要申請(qǐng)或釋放網(wǎng)絡(luò)內(nèi)存塊。為防止系統(tǒng)正常運(yùn)行期間頻繁使用系統(tǒng)內(nèi)存塊操作導(dǎo)致效率降低或穩(wěn)定性降低,可以在初始化時(shí)預(yù)先申請(qǐng)一個(gè)內(nèi)存區(qū)域,由netbuflib所提供的netbuffer控制機(jī)制進(jìn)展管理。其它如接口的狀態(tài)、效勞子層數(shù)據(jù)封裝類型、ux接口初始化kie、效勞子層地址映射表等參數(shù)構(gòu)造也需要在這一步進(jìn)展初始化。6.1.3數(shù)據(jù)收發(fā)處理如上所述,網(wǎng)絡(luò)效勞子層通過uxbind函數(shù)將數(shù)據(jù)接收例程綁定至底層設(shè)備驅(qū)動(dòng)。底層設(shè)備驅(qū)動(dòng)接收到報(bào)文后,通過調(diào)用stakrvrtn函數(shù)將數(shù)據(jù)經(jīng)由ux層查找特定協(xié)議類型返回至效勞子層。
26、效勞子層處理該報(bào)文之后假如返回false,那么系統(tǒng)將報(bào)文發(fā)往其它效勞子層繼續(xù)處理,否那么,該報(bào)文被丟棄。數(shù)據(jù)報(bào)文被封裝成blk形式從協(xié)議棧上層發(fā)送至網(wǎng)絡(luò)效勞子層,網(wǎng)絡(luò)效勞子層對(duì)報(bào)文進(jìn)展處理后,再調(diào)用uxsend或uxtksend函數(shù)將報(bào)文通過ux層發(fā)送至該接口設(shè)備驅(qū)動(dòng)。在這期間,網(wǎng)絡(luò)效勞子層可以通過調(diào)用該接口設(shè)備指定的地址解析函數(shù)獲得二層目的地址,然后對(duì)數(shù)據(jù)幀進(jìn)展二層封裝。詳細(xì)的數(shù)據(jù)收發(fā)處理實(shí)例可參見6.2.3aal5servie協(xié)議數(shù)據(jù)處理流程。6.1.4錯(cuò)誤報(bào)告當(dāng)設(shè)備驅(qū)動(dòng)層向網(wǎng)絡(luò)效勞子層匯報(bào)收發(fā)或其它錯(cuò)誤時(shí),網(wǎng)絡(luò)效勞子層可以通過回調(diào)stakerrrrtn函數(shù)向上層報(bào)告這個(gè)錯(cuò)誤。6.1.5設(shè)
27、備控制設(shè)備驅(qū)動(dòng)程序需要增加相應(yīng)的控制接口函數(shù)如xxxitrl,并注冊(cè)至ux層,網(wǎng)絡(luò)效勞子層就可以通過調(diào)用uxitl控制底層設(shè)備驅(qū)動(dòng)。6.2aal5業(yè)務(wù)servie的實(shí)現(xiàn)servie層主要實(shí)現(xiàn)如下相關(guān)協(xié)議類型:atarpservie.用于收發(fā)atarp報(bào)文,綁定類型為0 x1577pppeservie,用于收發(fā)pppe報(bào)文,綁定類型為0 x8863,0 x8864pppaservie,用于收發(fā)pppa報(bào)文,綁定類型為0 x2516如6.1所介紹的,我們首先需要向ux注冊(cè)綁定這些servie,然后在servie的收發(fā)中對(duì)相關(guān)協(xié)議的數(shù)據(jù)報(bào)文進(jìn)展處理。6.2.1向vxrksux層注冊(cè)servie1)根
28、據(jù)協(xié)議類型,初始化封裝數(shù)據(jù)、大小等值2)用uxbind函數(shù)綁定接收函數(shù),使某接口收到相應(yīng)類型的報(bào)文時(shí)可以提交該函數(shù)處理。例如代碼摘選自atsrv.atsrv1483rutedattah函數(shù),綁定atarp時(shí)作如下調(diào)用:#defineux_prt_atarp0 x1577intunit=1;uxbind(“pv,unit,(funptr)atsrv1483rutedrvrtn,null,null,null,ux_prt_atarp,atsrv1483rutedrvrtn,unit);/*此處,把a(bǔ)tsrv1483rutedrvrtn函數(shù)綁定至pv1接口,當(dāng)pv1收到0 x1577類型的數(shù)據(jù)報(bào)文時(shí),就會(huì)自動(dòng)提交給該函數(shù)進(jìn)展處理*/3)初始化servie網(wǎng)絡(luò)參數(shù),定義報(bào)文發(fā)送時(shí)的處理函數(shù),并向ux層注冊(cè)該servie,例程如下:strutifnet*pifp=atsrvtrlunit.ifp;bzer(har*)pifp,sizef(strutifnet);pifp-if_unit=unit;pifp-if_nae=ifnae;uxitl(atsrvtrlunit.pkie,eigflags,(addr_t)flags);pifp-if_flags=
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 醫(yī)療軟件合同范例
- 出售固定資產(chǎn)合同范本
- 單方出資合作合同范本
- 農(nóng)村大包建房合同范本
- 合同范例效力
- 印刷合同范本 博客
- 廠房消防設(shè)計(jì)合同范本
- 農(nóng)業(yè)合作社入股合同范本
- 醫(yī)生顧問聘用合同范本
- 導(dǎo)演工作室合作合同范本
- 初三化學(xué)一輪復(fù)習(xí)計(jì)劃
- 關(guān)于進(jìn)一步加強(qiáng)路基路面施工質(zhì)量的通知
- (正式版)YS∕T 5040-2024 有色金屬礦山工程項(xiàng)目可行性研究報(bào)告編制標(biāo)準(zhǔn)
- AQ/T 2080-2023 金屬非金屬地下礦山在用人員定位系統(tǒng)安全檢測(cè)檢驗(yàn)規(guī)范(正式版)
- NB-T35020-2013水電水利工程液壓?jiǎn)㈤]機(jī)設(shè)計(jì)規(guī)范
- JCT 841-2024《耐堿玻璃纖維網(wǎng)布》
- 2024年甘肅省天水市中考生物·地理試題卷(含答案)
- 壓力變送器的拆卸及安裝 壓力變送器維護(hù)和修理保養(yǎng)
- 【女性勞動(dòng)力就業(yè)歧視及優(yōu)化建議探析8400字(論文)】
- 充電樁授權(quán)委托書
- 電化學(xué)儲(chǔ)能電站并網(wǎng)運(yùn)行與控制技術(shù)規(guī)范 第3 部分:并網(wǎng)運(yùn)行驗(yàn)收
評(píng)論
0/150
提交評(píng)論