專利名稱:MoCA系統(tǒng)幀過濾的實(shí)現(xiàn)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種MoCA系統(tǒng)幀過濾的實(shí)現(xiàn)方法,屬于網(wǎng)絡(luò)通信及廣播電視技術(shù)領(lǐng)域。
背景技術(shù):
隨著廣電網(wǎng)絡(luò)的發(fā)展,EOC已成為其解決最后100米傳輸問題的重要設(shè)備,在實(shí)際運(yùn)用中,廣電運(yùn)營商需要EOC設(shè)備對用戶設(shè)備的MAC地址進(jìn)行認(rèn)證,禁止非法用戶的計入; 并且需要進(jìn)行對一些數(shù)據(jù)包的過濾,防止ARP攻擊或網(wǎng)絡(luò)問題導(dǎo)致的某些數(shù)據(jù)包的傳輸。MoCA作為目前EoC產(chǎn)品的主要技術(shù)方案之一,其之初主要是為家庭聯(lián)網(wǎng)而設(shè)計的一種技術(shù),由于EOC網(wǎng)絡(luò)的應(yīng)用需求而被作為一種接入網(wǎng)技術(shù),其自身的技術(shù)缺陷導(dǎo)致 MoCA系統(tǒng)只能作為一種簡單的二層網(wǎng)絡(luò)設(shè)備,無法滿足廣電對包過濾的需求。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題是提供一種MoCA系統(tǒng)幀過濾的實(shí)現(xiàn)方法,其能起到禁止用戶接入的作用,能滿足廣電運(yùn)營商對幀過濾的需求。為了解決上述的技術(shù)問題,本發(fā)明的技術(shù)方案是一種MoCA系統(tǒng)幀過濾的實(shí)現(xiàn)方法,其包括以下步驟I)通過初始化或用戶遠(yuǎn)程配置程序把MAC地址過濾表通過驅(qū)動函數(shù)接口發(fā)送到 c. LINK驅(qū)動程序中;2)c. LINK驅(qū)動程序中的PCI驅(qū)動部分接收到數(shù)據(jù)包后,提取數(shù)據(jù)包中的源MAC地址或目的MAC地址;3)確定上述源MAC地址或目的MAC地址是否存在MAC地址過濾表中,并且數(shù)據(jù)流向與設(shè)定的一致;4)如果上述源MAC地址或目的MAC地址在MAC地址過濾表中存在,則丟棄該數(shù)據(jù)包,釋放SKB空間;5)如果上述源MAC地址或目的MAC地址在MAC地址過濾表中不存在,則轉(zhuǎn)發(fā)數(shù)據(jù)包。 通過此方法,當(dāng)需要限制某個數(shù)據(jù)包時,只需把其源MAC地址或是目的MAC地址加入過濾表,MoCA系統(tǒng)將會自動過濾此數(shù)據(jù)包。如限制非法用戶接入網(wǎng)絡(luò)時,只需獲得其網(wǎng)卡MAC地址,把其添加進(jìn)過濾表,由于電腦發(fā)出的數(shù)據(jù)包的源MAC地址為自身的MAC地址, 所以這樣也起到了限制其接入網(wǎng)絡(luò)的作用。
下面結(jié)合附圖和具體實(shí)施方式
對本發(fā)明作進(jìn)一步詳細(xì)的說明。圖I為MoCA系統(tǒng)頭端硬件框圖。圖2為本發(fā)明方法的流程圖。
具體實(shí)施例方式如圖I所示,MoCA系統(tǒng)頭端的MoCA主芯片和CPU之間采用PCI接口連接,從硬件框架來看,MoCA系統(tǒng)的同軸部分可看做是一個PCI接口的網(wǎng)卡;CPU中運(yùn)行的內(nèi)核采用PCI 驅(qū)動訪問控制MoCA頭端主芯片,從而實(shí)現(xiàn)數(shù)據(jù)的轉(zhuǎn)發(fā)。在MoCA 的 C. LINK 驅(qū)動程序中,clnketh_start_xmit O 和 clnketh_rx_ callback O兩個函數(shù)分別為c. LINK驅(qū)動程序的PCI驅(qū)動部分下行和上行數(shù)據(jù)的轉(zhuǎn)發(fā)函數(shù), 函數(shù)中采用sk_bufT結(jié)構(gòu)體傳遞數(shù)據(jù)包,它是Linux在其協(xié)議棧里傳送的結(jié)構(gòu)體,在他里面包含了各層協(xié)議的頭部,比如ethernet, ip, tcp, udp等等,同時也包含了以太網(wǎng)數(shù)據(jù)包中的源地址和目的地址等信息。利用上述特點(diǎn),在c. LINK驅(qū)動程序的PCI驅(qū)動部分對上下行數(shù)據(jù)包進(jìn)行處理,并根據(jù)用戶應(yīng)用程序發(fā)送到驅(qū)動中的MAC地址過濾表進(jìn)行分析,判斷收到的上行或下行數(shù)據(jù)包中的源MAC地址或目的MAC地址是否對應(yīng)于MAC地址過濾表(為應(yīng)用程序或驅(qū)動中保存要過濾的MAC地址和流向的數(shù)據(jù)表)中的相應(yīng)地址,如果符合,就把此數(shù)據(jù)包丟棄;如果不符合,則轉(zhuǎn)發(fā)數(shù)據(jù)。利用這個流程,以實(shí)現(xiàn)基于MAC地址的幀過濾,具體流程如圖2所示。上述實(shí)施例不以任何方式限制本發(fā)明,凡是采用等同替換或等效變換的方式獲得的技術(shù)方案均落在本發(fā)明的保護(hù)范圍內(nèi)。
權(quán)利要求
1. 一種MoCA系統(tǒng)幀過濾的實(shí)現(xiàn)方法,其特征在于包括以下步驟1)通過初始化或用戶遠(yuǎn)程配置程序把MAC地址過濾表通過驅(qū)動函數(shù)接口發(fā)送到 c. LINK驅(qū)動程序中;2)c. LINK驅(qū)動程序中的PCI驅(qū)動部分接收到數(shù)據(jù)包后,提取數(shù)據(jù)包中的源MAC地址或目的MAC地址;3)確定上述源MAC地址或目的MAC地址是否存在MAC地址過濾表中,并且數(shù)據(jù)流向與設(shè)定的一致;4)如果上述源MAC地址或目的MAC地址在MAC地址過濾表中存在,則丟棄該數(shù)據(jù)包,釋放SKB空間;5)如果上述源MAC地址或目的MAC地址在MAC地址過濾表中不存在,則轉(zhuǎn)發(fā)數(shù)據(jù)包。
全文摘要
本發(fā)明公開了一種MoCA系統(tǒng)幀過濾的實(shí)現(xiàn)方法,該方法在c.LINK驅(qū)動程序的PCI驅(qū)動部分對上下行數(shù)據(jù)包進(jìn)行處理,并根據(jù)用戶應(yīng)用程序發(fā)送到驅(qū)動中的MAC地址過濾表進(jìn)行分析,判斷收到的上行或下行數(shù)據(jù)包中的源MAC地址或目的MAC地址是否對應(yīng)于MAC地址過濾表中的相應(yīng)地址,如果符合,就把此數(shù)據(jù)包丟棄;如果不符合,則轉(zhuǎn)發(fā)數(shù)據(jù)。利用這個流程,以實(shí)現(xiàn)基于MAC地址的幀過濾。
文檔編號H04L29/06GK102594791SQ201110418729
公開日2012年7月18日 申請日期2011年12月15日 優(yōu)先權(quán)日2011年12月15日
發(fā)明者朱曉峰, 王振洪, 陳小星, 馬曉東 申請人:江蘇億通高科技股份有限公司