亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于嵌入式多媒體系統(tǒng)的LAN快速掃描算法

        2013-03-05 03:56:22齊耀龍
        合作經(jīng)濟(jì)與科技 2013年13期
        關(guān)鍵詞:嵌入式

        □文/齊耀龍

        (河北大學(xué)計(jì)算中心 河北·保定)

        一、引言

        嵌入式系統(tǒng)是以應(yīng)用為中心、以計(jì)算機(jī)技術(shù)為基礎(chǔ)、軟件硬件可裁剪,適應(yīng)應(yīng)用系統(tǒng)對(duì)功能、可靠性、成本、體積、功耗嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。

        近年來(lái),得益于芯片技術(shù)的發(fā)展和應(yīng)用的需要,以及人們對(duì)產(chǎn)品可靠性、成本和更新?lián)Q代要求的提高,使得嵌入式系統(tǒng),尤其是嵌入式多媒體系統(tǒng)逐漸從純硬件實(shí)現(xiàn)和使用通用計(jì)算機(jī)實(shí)現(xiàn)的應(yīng)用中脫穎而出,成為消費(fèi)類電子產(chǎn)品領(lǐng)域令人關(guān)注的焦點(diǎn)。

        嵌入式多媒體系統(tǒng)發(fā)展至今,已經(jīng)成為功能豐富、性能強(qiáng)大的多媒體終端,其產(chǎn)品也豐富多樣,如智能手機(jī)、高清網(wǎng)絡(luò)播放機(jī)、網(wǎng)絡(luò)電視機(jī)等。作為多媒體終端設(shè)備,這些產(chǎn)品的一個(gè)重要應(yīng)用就是通過(guò)LAN共享播放本地網(wǎng)絡(luò)中的多媒體音視頻資源,要想實(shí)現(xiàn)這個(gè)目標(biāo),首要的任務(wù)是對(duì)LAN內(nèi)的網(wǎng)絡(luò)共享設(shè)備進(jìn)行發(fā)現(xiàn)。目前的嵌入式多媒體系統(tǒng)在網(wǎng)絡(luò)共享設(shè)備發(fā)現(xiàn)環(huán)節(jié),還存在著較低的效率,無(wú)法達(dá)到最佳用戶體驗(yàn)。以高清網(wǎng)絡(luò)播放器為例,目前國(guó)內(nèi)外有兩大主流方案,分別是美國(guó)的Sigma方案和中國(guó)臺(tái)灣的Realtek方案,這兩種方案都基于mips架構(gòu)的處理器,采用linux操作系統(tǒng),支持使用Samba或NFS等方式共享播放本地網(wǎng)絡(luò)中的多媒體音視頻資源。但是目前兩者都存在網(wǎng)絡(luò)共享設(shè)備掃描效率低的問(wèn)題,當(dāng)用戶想列出LAN共享資源時(shí),播放器需要花費(fèi)10秒以上甚至更長(zhǎng)的時(shí)間去掃描整個(gè)網(wǎng)絡(luò),長(zhǎng)時(shí)間的等待導(dǎo)致用戶體驗(yàn)差。我們需要一個(gè)更高效的LAN快速掃描算法,能夠在1~2秒內(nèi)枚舉LAN內(nèi)的共享資源,盡可能地做到實(shí)時(shí)響應(yīng),以提高產(chǎn)品的用戶體驗(yàn)。

        二、算法原理

        傳統(tǒng)的LAN掃描算法,通常利用建立完整TCP連接的方式進(jìn)行,TCP協(xié)議通過(guò)三個(gè)報(bào)文段完成連接的建立,這個(gè)過(guò)程稱為三次握手。第一次握手:建立連接時(shí),主機(jī)A發(fā)送SYN(SEQ=x)包到主機(jī)B,并進(jìn)入SYN_SEND狀態(tài),等待主機(jī)B確認(rèn);第二次握手:主機(jī)B收到SYN包,必須確認(rèn)主機(jī)A的SYN(ACK=x+1),同時(shí)自己也送一個(gè)SYN(SEQ=y)包,即SYN+ACK包,此時(shí)主機(jī)B進(jìn)入SYN_RECV狀態(tài);第三次握手:主機(jī)A收到主機(jī)B的SYN+ACK包,向主機(jī)B發(fā)送確認(rèn)包ACK(ACK=y+1),之后主機(jī)A和主機(jī)B進(jìn)入連接狀態(tài),完成三次握手。建立TCP連接的過(guò)程是低效的,在這個(gè)過(guò)程中,大量的時(shí)間被浪費(fèi)在等待應(yīng)答上。LAN掃描實(shí)際上并不需要建立真正的TCP連接,掃描的意圖在于得知網(wǎng)內(nèi)哪些主機(jī)開(kāi)放了指定的服務(wù),并不是立即請(qǐng)求這些服務(wù)。因此,結(jié)合TCP協(xié)議的特點(diǎn),本文使用半開(kāi)TCP(SYN掃描)的方式實(shí)現(xiàn)LAN快速掃描。SYN掃描利用TCP協(xié)議連接的第一步,并沒(méi)有建立一個(gè)完整的TCP連接,因此這種掃描方式是輕量并且高效的。SYN掃描算法的實(shí)現(xiàn)方式是向遠(yuǎn)端主機(jī)指定端口發(fā)送一個(gè)只有SYN標(biāo)志位的TCP數(shù)據(jù)包,如果遠(yuǎn)端主機(jī)反饋一個(gè)SYN+ACK數(shù)據(jù)包,那么這個(gè)主機(jī)正在監(jiān)聽(tīng)該端口;如果反饋的是RST數(shù)據(jù)包,說(shuō)明主機(jī)沒(méi)有監(jiān)聽(tīng)該端口。

        為了盡可能地做到實(shí)時(shí)響應(yīng),需要分析實(shí)際網(wǎng)絡(luò)環(huán)境以便制定合理的SYN+ACK超時(shí)閾值。嵌入式多媒體系統(tǒng)所處的局域網(wǎng)環(huán)境被設(shè)計(jì)為必須滿足高速數(shù)據(jù)傳輸?shù)男枨?,因此其響?yīng)比和數(shù)據(jù)傳輸速率都很高。在這個(gè)前提下,可以將SYN+ACK超時(shí)閾值設(shè)定為一個(gè)相對(duì)較小的數(shù)值,例如0.8s,當(dāng)主機(jī)A發(fā)送SYN包到主機(jī)B后,如果在閾值時(shí)間之內(nèi)沒(méi)有收到主機(jī)B的SYN+ACK數(shù)據(jù)包,則認(rèn)為主機(jī)B沒(méi)有監(jiān)聽(tīng)指定端口。

        另外,局域網(wǎng)內(nèi)的待掃描主機(jī)數(shù)量龐大,串行掃描的低效率特征顯然不能滿足快速掃描的需要,因此必須采用并發(fā)掃描的方式,并且為每一個(gè)并發(fā)任務(wù)單獨(dú)計(jì)算應(yīng)答時(shí)間。通過(guò)將每一個(gè)并發(fā)任務(wù)的執(zhí)行時(shí)間限定在閾值時(shí)間之內(nèi),就可以計(jì)算出整體掃描耗時(shí),也即:

        其中,T1是創(chuàng)建并發(fā)任務(wù)消耗的時(shí)間,T2是SYN+ACK超時(shí)閾值,T3是銷毀并發(fā)任務(wù)消耗的時(shí)間。T1和T3取決于嵌入式多媒體系統(tǒng)的CPU速度和內(nèi)存效率。

        三、算法實(shí)現(xiàn)

        SYN掃描屬于OSI/RM模型中的傳輸層掃描方式,為此需要構(gòu)造一個(gè)只有SYN標(biāo)志位的TCP數(shù)據(jù)包。并發(fā)掃描策略采用多線程方式實(shí)現(xiàn),每個(gè)線程負(fù)責(zé)LAN內(nèi)一臺(tái)主機(jī)的掃描,線程空間內(nèi)部盡可能少的攜帶變量并且進(jìn)行指令優(yōu)化以實(shí)現(xiàn)線程的輕量化。為了實(shí)現(xiàn)線程間無(wú)關(guān),每個(gè)線程采用自發(fā)自收的方式對(duì)特定主機(jī)進(jìn)行掃描,當(dāng)SYN包發(fā)出后,線程記錄一個(gè)時(shí)間戳,如果在閾值時(shí)間之內(nèi)沒(méi)有收到對(duì)方主機(jī)的SYN+ACK數(shù)據(jù)包,則認(rèn)為該主機(jī)沒(méi)有監(jiān)聽(tīng)指定端口,線程立即退出;如果在閾值時(shí)間之內(nèi)收到了對(duì)方主機(jī)的SYN+ACK數(shù)據(jù)包,則該線程負(fù)責(zé)建立基于特定服務(wù)的共享連接,例如samba或NFS等。

        主進(jìn)程負(fù)責(zé)快速創(chuàng)建掃描線程,并等待線程執(zhí)行結(jié)束,考慮到嵌入式多媒體系統(tǒng)在小概率的極端情況下可能會(huì)出現(xiàn)的系統(tǒng)資源不足情況會(huì)影響線程的創(chuàng)建效率,可以在主進(jìn)程中設(shè)置全局超時(shí)閾值,當(dāng)主進(jìn)程的工作時(shí)間達(dá)到此閾值時(shí),強(qiáng)制釋放所有線程資源,放棄當(dāng)次掃描,以提高極端情況下用戶的操作體驗(yàn)和系統(tǒng)的健壯性。

        四、個(gè)案研究

        為了測(cè)試快速掃描算法的效率,我們以高清網(wǎng)絡(luò)播放機(jī)為實(shí)驗(yàn)對(duì)象,基于LAN建立了一個(gè)實(shí)驗(yàn)環(huán)境,主要包括:百兆交換機(jī)、無(wú)線路由器、Realtek芯片方案的高清網(wǎng)絡(luò)播放機(jī)、Sigma芯片方案的高清網(wǎng)絡(luò)播放機(jī)、個(gè)人計(jì)算機(jī)、NAS網(wǎng)絡(luò)存儲(chǔ)器等。其中,高清網(wǎng)絡(luò)播放機(jī)、個(gè)人計(jì)算機(jī)和NAS網(wǎng)絡(luò)存儲(chǔ)器通過(guò)雙絞線或WIFI方式接入百兆交換機(jī)或無(wú)線路由器,構(gòu)成LAN;個(gè)人計(jì)算機(jī)和NAS網(wǎng)絡(luò)存儲(chǔ)器提供NFS服務(wù),并在111端口實(shí)施監(jiān)聽(tīng);高清網(wǎng)絡(luò)播放機(jī)作為NFS和samba客戶端,將測(cè)試快速掃描程序。

        Realtek和Sigma兩個(gè)方案的高清網(wǎng)絡(luò)播放機(jī)都采用基于mips架構(gòu)處理器的GNU/Linux操作系統(tǒng),因此,快速掃描算法將用GNU C實(shí)現(xiàn),并在Debian5下交叉編譯為目標(biāo)機(jī)程序。首先將SYN+ACK超時(shí)閾值設(shè)定為0.8s,然后進(jìn)行100次LAN掃描測(cè)試,記錄下每次掃描的耗時(shí),并隨機(jī)選取其中10次測(cè)試,結(jié)果如表1所示。(表1)

        表1 快速掃描算法測(cè)試結(jié)果

        可以看到,所有的掃描任務(wù)都在1秒內(nèi)完成了。也就是說(shuō),在超時(shí)閾值為0.8s時(shí),該掃描算法能夠在1秒內(nèi)枚舉LAN內(nèi)的共享資源,并將結(jié)果返回給用戶,用戶無(wú)需長(zhǎng)時(shí)間的等待,因而大大提高了用戶操作體驗(yàn)。

        五、結(jié)論

        本文提出了一個(gè)基于嵌入式多媒體系統(tǒng)的LAN快速掃描算法。該掃描算法利用了TCP協(xié)議連接的第一步,并沒(méi)有建立完整的TCP連接,因此這種掃描方式是輕量并且高效的。為了盡可能地做到實(shí)時(shí)響應(yīng),根據(jù)實(shí)際網(wǎng)絡(luò)環(huán)境制定合理的SYN+ACK超時(shí)閾值,并采用并發(fā)掃描的方式提高掃描效率。實(shí)驗(yàn)結(jié)果表明,本文提出的基于嵌入式多媒體系統(tǒng)的LAN快速掃描算法是高效的。

        [1]KLAUSW F,RITTER H,The l inux network architecture:Design and implementation of network protocols in the l inux kernel.Bei jing:Tsinghua University Press,2006.

        [2]JIN H W,YOO C,Impact of protocol overheads on network throughput over high-speed interconnects:measurement,analysis,and improvement.Journal of Supercomputer,2007.

        [3]OPPERMANN A,Optimizing the f ree BSD IP and TCP stack.http://people.f reebsd.org/~andre/Optimizing the FreeBSD IP and TCP Stack.pdf.

        猜你喜歡
        嵌入式
        Focal&Naim同框發(fā)布1000系列嵌入式揚(yáng)聲器及全新Uniti Atmos流媒體一體機(jī)
        TS系列紅外傳感器在嵌入式控制系統(tǒng)中的應(yīng)用
        電子制作(2019年7期)2019-04-25 13:17:14
        基于嵌入式Linux內(nèi)核的自恢復(fù)設(shè)計(jì)
        嵌入式系統(tǒng)通信技術(shù)的應(yīng)用
        電子制作(2018年18期)2018-11-14 01:48:16
        嵌入式PLC的設(shè)計(jì)與研究
        電子制作(2018年16期)2018-09-26 03:27:18
        搭建基于Qt的嵌入式開(kāi)發(fā)平臺(tái)
        基于嵌入式系統(tǒng)Windows CE的應(yīng)用程序開(kāi)發(fā)
        嵌入式單片機(jī)在電機(jī)控制系統(tǒng)中的應(yīng)用探討
        電子制作(2017年8期)2017-06-05 09:36:15
        嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應(yīng)用
        Altera加入嵌入式視覺(jué)聯(lián)盟
        久久视频在线| 日本不卡一区二区三区在线观看| 久久伊人亚洲精品视频| 大学生高潮无套内谢视频| 色婷婷综合中文久久一本 | 99久久久精品免费| 日本大片一区二区三区| 内射人妻无套中出无码| 国产无遮挡又黄又爽在线视频| 依依成人影视国产精品| 一区二区激情偷拍老牛视频av| 日韩人妻中文无码一区二区| 亚洲国产另类久久久精品黑人| 一区二区三区内射视频在线观看| 国产精品人成在线观看不卡| 国色天香社区视频在线| 无码人妻丰满熟妇片毛片| 高h视频在线免费观看| 中文字幕色资源在线视频| 国产成人精品999视频| 两个人看的www中文在线观看| 91久久精品一二三区蜜桃| gg55gg国产成人影院| 日韩人妻无码精品久久| 久久国产亚洲高清观看5388| 亚洲一区亚洲二区中文字幕| 精品卡一卡二卡3卡高清乱码 | 看久久久久久a级毛片| 人妻精品无码一区二区三区| 欧美片欧美日韩国产综合片| 国产精品熟女一区二区三区| 亚洲av永久精品爱情岛论坛| 无码人妻系列不卡免费视频| 亚洲一区二区三区1区2区| 中文字幕亚洲综合久久| 国产亚洲视频在线观看网址| 蜜桃一区二区三区自拍视频| 在线免费观看黄色国产强暴av | 99国产精品久久久久久久成人热| 免费看久久妇女高潮a| 国产成人精品视频网站|