久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

netio之萬里長征第一步

作者:佚名   來源:本站原創   點擊數:  更新時間:2010年12月28日   【字體:

欲工其事必先利其器,這種針對硬件的開發往往最令人頭大的就是搭開發環境,以前做單片機就深有體會。

這次用了兩臺PC機,一臺硬件設備。PCA裝REDHAT,和設備通過PCIE對接,作為開發機和負載機。PCB裝XP作為測試機和網關。

聯機方式,PCB上插一片光卡,連接到設備的BGE0,光卡和無線網卡建一個網橋,作為INTERNET出口。

PCA的網卡連接到一個光電轉換器,光電轉換器的光纖連接到設備的BGE1上,作為負載機。

從周六開始搞,先是光電轉換器沒電源,想從里面焊條線出來,外殼居然打不開,昏倒~~。電源口是英制的3。5MM,找不到匹配的插頭,最后只好剪塊長條形的線路板插在插口中充當負極,再從插口的芯子上焊出一條線來作為正極,連接到PCB的5V電源上。連接好,插上電,光口指示燈不亮,懷疑是壞了。

周日,突然想到,PCB缺少機箱電源,趕緊跑電腦市場買了一套。

周一一大早,快遞就送來了光卡,順豐的服務果然不是山寨快遞可以比的。

這光卡竟然和光電轉換器一樣,怎么搞,燈就是不亮,把卡上的兩個接口連接,燈亮了。說明卡是好的,問題出在光纖或模塊上,光纖沒問題,罪魁禍首就是光模塊了,幸好拿了一大堆模塊回來,一個一個地試,終于有一個,燈亮了,果然是模塊的兼容性。

突然想到,會不會光電轉換器也是相同的問題,把光電轉換器接到這塊模塊上,燈也亮了。

現在在手上有三臺光設備了,交換機,光電轉換器和光網卡。

先試交換機,光口和電口不通,搞不懂。

最后就確定了上面所說的方案。

環境搭好了,加上啃了兩天的文檔,寫代碼相對就比較輕松了。E文文檔,十多篇,回想當年英文課睡覺睡到流口水,真是痛心疾首,悔恨莫及啊。

這個東西其實簡單的,每個核心可以綁多個線程,每個核心只能綁一個隊列。包收進來放進一個桶,桶就是一張HASH表了,可以按2層MAC、三層IP/端口、4層作為多維HASH存放,這個是NETIO的驅動實現的,不用管,按手冊做就是了。每個核心就從桶中取數據處理,NETIO提供一個阻塞函數,偵聽數據包,由于核心與隊列綁定,整個處理過程是不用加鎖的。數據的處理類似于SOCKET。收到的數據是原汁原味的報文,可以直接扔到另一個隊列發送出去。剝掉網絡頭就是三層包,再剝掉三層頭,就是應用層數據,這個比內核模塊方便多了,內核的SKBUFF結構還是相當地復雜,加上每一個HOOK點的數據指向都在變化,足可令人吐血。

手冊上沒有提供雙網卡數據透傳的例程,按原先的設想,應該就是偵聽兩個網卡,收到的數據扔到另一個網卡,就實現了ACCEPT,不扔過去,就是DROP了。

按架構寫了個代碼,稍作調試,透傳成功了,就是速度慢,下載只有50-60K,懷疑是光連接有問題。

再層層剝去頭部,打印出MAC和IP地址,包長度。

OK,至此,萬里長征總算邁出了第一步。

關閉窗口

相關文章

主站蜘蛛池模板: 一级黄a视频 | 成人在线免费观看视频 | 国产一区二区三区在线看 | 精品国产成人 | 国产成人一区二区三区 | 国内在线视频 | 久久国产区 | 欧美日韩亚洲国产 | 美女爽到呻吟久久久久 | 中国一级毛片免费 | 国产精品区二区三区日本 | 日韩精品中文字幕在线 | 久久久久国产精品一区二区 | 欧美综合在线观看 | 中文字幕亚洲精品 | 91在线视频播放 | 黄色在线免费观看 | 人人擦人人 | 久久伊人亚洲 | 日韩精品成人网 | 亚洲精品乱码久久久久久久久 | 亚洲精品一区二区三区四区高清 | 欧美成人一区二区 | 中文字幕综合 | 国产真实精品久久二三区 | 久久精品视频在线免费观看 | 精品免费观看 | 91免费福利在线 | 中文字幕一区二区三区在线视频 | 狠狠操电影 | 久久精品免费 | 在线日韩视频 | 国产精品一区二区三区在线 | 精品久久久久久久久久久下田 | 精品久久久久久久久久久久 | 草久免费视频 | 亚洲高清在线 | 成人精品一区二区三区中文字幕 | 亚洲在线免费观看 | 亚洲一区三区在线观看 | 日本在线视频中文字幕 |