中文字幕 另类精品,亚洲欧美一区二区蜜桃,日本在线精品视频免费,孩交精品乱子片免费

<sup id="3hn2b"></sup>

    1. <sub id="3hn2b"><ol id="3hn2b"></ol></sub><legend id="3hn2b"></legend>

      1. <xmp id="3hn2b"></xmp>

      2. 新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于嵌入式Linux的3G無線視頻終端的設(shè)計與實(shí)現(xiàn)

        基于嵌入式Linux的3G無線視頻終端的設(shè)計與實(shí)現(xiàn)

        作者: 時間:2011-08-01 來源:網(wǎng)絡(luò) 收藏

        內(nèi)核netfilter結(jié)構(gòu)在/usr/src/inelude/linux/netfilter.h中定義,類似如下:
        c.jpg
        參數(shù)是:
        list
        Netfilter本身是一個鉤子鏈;它指向netfilter鉤子的頭部,通常設(shè)置為{NULL,NULL}。
        hook
        該函數(shù)在數(shù)據(jù)包碰到鉤子點(diǎn)時被調(diào)用。該函數(shù)與前面描述的函數(shù)相同,它必須返回NF_ACCEPT、NF_DROP或NF_QUEUE。如果返回NF_ACCEPT,則下一個鉤子將被附加到將要調(diào)用的點(diǎn)。如果返回NF_DROP,則數(shù)據(jù)包被丟棄。如果返回NF_QUEUE,則對數(shù)據(jù)包進(jìn)行排隊。sK_buff指針被傳遞到該函數(shù)中,并用數(shù)據(jù)包信息如IP報頭、TCP報頭等進(jìn)行填充,可以使用sk_buff結(jié)構(gòu)指針來操作或刪除數(shù)據(jù)包(要刪除數(shù)據(jù)包,只需將skb指針設(shè)置為空即可)。
        pf
        協(xié)議簇;例如,適用于IPv4的PF_INET。
        hooknum
        鉤子的掛載點(diǎn),由于本系統(tǒng)不需要在本地對數(shù)據(jù)包進(jìn)行任何處理,因此選擇的掛在點(diǎn)為NF_IP_PRE_ROUTING,在對數(shù)據(jù)包進(jìn)行正確性校驗后就調(diào)用鉤子函數(shù)處理數(shù)據(jù)包。Priority表明鉤子的優(yōu)先級,在本系統(tǒng)中采用高優(yōu)先級處理NF_IP_PRI_FIRST。
        內(nèi)核數(shù)據(jù)處理的關(guān)鍵是鉤子函數(shù)的編寫,此函數(shù)規(guī)定了數(shù)據(jù)包在到達(dá)時需要進(jìn)行的處理過程。
        鉤子函數(shù)框架如下:
        d.jpg
        設(shè)定好特定的鉤子函數(shù)之后,調(diào)用函數(shù)
        int nf_register_hook(struct nf_hook_ops*req);
        將鉤子函數(shù)注冊至內(nèi)核。一旦該結(jié)構(gòu)注冊到內(nèi)核中,將調(diào)用這里定義的函數(shù)來處理數(shù)據(jù)包。
        使用函數(shù)
        void nf_unregister_hook(struct nf_hook_ops*req);
        可以將已經(jīng)注冊入內(nèi)核的鉤子函數(shù)取消,此時,接收到數(shù)據(jù)包將按照內(nèi)核的默認(rèn)規(guī)則來進(jìn)行處理。流程如圖3所示。

        本文引用地址:http://www.antipu.com.cn/article/150415.htm

        e.jpg

        linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)


        評論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉