專(zhuān)利名稱(chēng):具有多種VLAN模式的MoCA頭端的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬于網(wǎng)絡(luò)通信及廣播電視技術(shù)領(lǐng)域,涉及一種MoCA(Multimedia overCoaxAlliance,同軸電纜多媒體聯(lián)盟)頭端,特別是一種作為接入設(shè)備的具有多種VLAN模式的MoCA頭端。
背景技術(shù):
MoCA技術(shù)作為一種寬帶網(wǎng)絡(luò)接入技術(shù),利用已有的同軸電纜實(shí)現(xiàn)高速率、高可靠性的接入和網(wǎng)絡(luò)傳輸,而無(wú)需做任何調(diào)整,相比xDSL、以太網(wǎng)等具有優(yōu)勢(shì),已被越來(lái)越多的廣電運(yùn)營(yíng)商所運(yùn)用,隨著三網(wǎng)融合的推進(jìn),越來(lái)越多的廣電運(yùn)營(yíng)商將從起初只提供單一上網(wǎng)業(yè)務(wù),逐漸開(kāi)始增加IPTV、IPCAM等互動(dòng)點(diǎn)播業(yè)務(wù)。VLAN (Virtual Local Area Network,虛擬局域網(wǎng))是一種將局域網(wǎng)設(shè)備從邏輯上劃分成一個(gè)個(gè)網(wǎng)段,從而實(shí)現(xiàn)虛擬工作組的新興數(shù)據(jù)交換技術(shù)。802.1Q是IEEE頒布的VLAN標(biāo)準(zhǔn),它通過(guò)將VLAN ID封裝在數(shù)據(jù)幀中,使得數(shù)據(jù)幀在跨越不同設(shè)備時(shí)也能保留VLAN信息。不同廠家的網(wǎng)絡(luò)設(shè)備只要支持802.1Q,VLAN就可以跨越不同的網(wǎng)絡(luò)設(shè)備,實(shí)現(xiàn)統(tǒng)一劃
分和管理。目前大多電信、廣電運(yùn)營(yíng)商利用VLAN的這個(gè)優(yōu)點(diǎn)把不同的業(yè)務(wù)打上不同的VLAN標(biāo)簽,并使用VLAN字段中802.1P優(yōu)先級(jí)位,即CoS (Class of Service,以太網(wǎng)的服務(wù)類(lèi)別/業(yè)務(wù)等級(jí)),使不同的業(yè)務(wù)具有不同的優(yōu)先級(jí),在整個(gè)傳輸過(guò)程中具有較高的QoS(Qualityof Service即網(wǎng)絡(luò)服務(wù)質(zhì)量,是網(wǎng)絡(luò)的一種安全機(jī)制,用來(lái)解決網(wǎng)絡(luò)延遲和阻塞等問(wèn)題的一種技術(shù))保證,以達(dá)到最佳的傳輸性能。而目前的MoCA系統(tǒng),實(shí)為MoCA的另一個(gè)技術(shù),即c.LINK-Access,是從MoCA家庭網(wǎng)絡(luò)技術(shù)演變過(guò)來(lái)的一種技術(shù)。對(duì)于單端口終端,他不支持在數(shù)據(jù)包中打上VLAN標(biāo)簽,也不支持VLAN標(biāo)簽的剝離;對(duì)于多端口終端,他不支持VLAN數(shù)據(jù)包的完全透?jìng)鳎虼瞬荒軡M足廣電運(yùn)營(yíng)商的需求。
發(fā)明內(nèi)容
為了克服現(xiàn)有技術(shù)的不足,本發(fā)明提供了一種具有多種VLAN模式的MoCA頭端,使其適用于廣電網(wǎng)絡(luò)上的各種終端。為了實(shí)現(xiàn)上述目的,本發(fā)明的具有多種VLAN模式的MoCA頭端包括MoCA主芯片、CPU 和 PHY 芯片,其中 CPU 與 PHY 芯片通過(guò) Mil (Medium Independent Interface,媒體獨(dú)立接口,IEEE-802.3定義的以太網(wǎng)行業(yè)標(biāo)準(zhǔn),包括一個(gè)數(shù)據(jù)接口以及一個(gè)MAC和PHY之間的管理接口)相連接實(shí)現(xiàn)數(shù)據(jù)的轉(zhuǎn)發(fā),MoCA主芯片和CPU之間采用PCI接口連接,CPU中運(yùn)行的內(nèi)核采用PCI驅(qū)動(dòng)訪問(wèn)控制MoCA主芯片實(shí)現(xiàn)數(shù)據(jù)的轉(zhuǎn)發(fā),應(yīng)用PCI驅(qū)動(dòng)中的sk buff結(jié)構(gòu)體傳遞數(shù)據(jù)包,基于MAC模式下,c.LINK驅(qū)動(dòng)程序的PCI驅(qū)動(dòng)部分對(duì)上下行數(shù)據(jù)包進(jìn)行處理,并根據(jù)用戶應(yīng)用程序發(fā)送到c.LINK驅(qū)動(dòng)中的VLAN信息表進(jìn)行分析,判斷收到的上下行數(shù)據(jù)包中的用戶設(shè)備的MAC地址在VLAN信息表中所映射的VLANID,進(jìn)行相關(guān)的去除及添加VLAN的操作。
本發(fā)明的具有多種VLAN模式的MoCA頭端,具有基于MAC地址、終端端口、終端混用等多種VLAN模式,又?jǐn)U展為基于終端的MAC地址、用戶設(shè)備(如電腦、機(jī)頂盒等)的MAC地址及MAC地址段(MAC段綁定)的VLAN綁定模式??赏ㄟ^(guò)telnet、web、SNMP等管理方式遠(yuǎn)程配置VLAN模式的相關(guān)參數(shù),使得整個(gè)MoCA頭端具有VLAN處理功能,適用于目前廣電網(wǎng)絡(luò)上的單端口終端網(wǎng)絡(luò)、可管理多端口終端網(wǎng)絡(luò),或單端口與可管理多端口終端混用的網(wǎng)絡(luò),解決了不同時(shí)期的多種MoCA終端并存于同一網(wǎng)絡(luò)的問(wèn)題,滿足廣電用戶多業(yè)務(wù)的運(yùn)用需求。
附圖I是本發(fā)明的具有多種VLAN模式的MoCA頭端的硬件框圖;附圖2是本發(fā)明MoCA頭端的下行數(shù)據(jù)包處理流程圖;附圖3是本發(fā)明MoC A頭端的上行數(shù)據(jù)包處理流程圖。
具體實(shí)施例方式下面結(jié)合實(shí)施例和附圖對(duì)本發(fā)明的具有多種VLAN模式的MoCA頭端進(jìn)行詳細(xì)闡述,以使本發(fā)明的優(yōu)點(diǎn)和特征能更易于被本領(lǐng)域技術(shù)人員理解,從而對(duì)本發(fā)明的保護(hù)范圍做出更為清楚明確的界定。如圖I所示,CPU與PHY芯片通過(guò)MII相連接實(shí)現(xiàn)數(shù)據(jù)的轉(zhuǎn)發(fā),MoCA主芯片和CPU之間采用PCI接口連接,CPU中運(yùn)行的內(nèi)核采用PCI驅(qū)動(dòng)訪問(wèn)控制MoCA主芯片實(shí)現(xiàn)數(shù)據(jù)的轉(zhuǎn)發(fā),應(yīng)用PCI驅(qū)動(dòng)中的sk buff結(jié)構(gòu)體傳遞數(shù)據(jù)包,sk buff是Linux在其協(xié)議棧里傳送的結(jié)構(gòu)體,里面包含了各層協(xié)議的頭部,諸如ethernet, ip, tcp, udp等,同時(shí)也包含了以太網(wǎng)數(shù)據(jù)包中的源地址和目的地址等信息?;贛AC的VLAN模式,是一種按照終端或用戶設(shè)備的MAC地址來(lái)配置端口不可管理的MoCA頭端VLAN的方式。設(shè)置此模式時(shí),只需配置MAC地址和VLANID號(hào)的映射關(guān)系,這些數(shù)據(jù)存于上層應(yīng)用和底層驅(qū)動(dòng)的數(shù)據(jù)庫(kù)即VLAN信息表中,當(dāng)有數(shù)據(jù)包轉(zhuǎn)發(fā)時(shí),在VLAN信息表中查找相應(yīng)的MAC地址信息,然后找出相關(guān)的VLAN ID進(jìn)行處理。此模式既支持MoCA頭端下每個(gè)終端配置相同的VLAN,又可支持配置不同的VLAN,并且支持配置一個(gè)MoCA終端下多個(gè)用戶設(shè)備的MAC地址,實(shí)現(xiàn)多個(gè)設(shè)備劃分為不同的VLAN,從而支持多業(yè)務(wù)的開(kāi)展。當(dāng)只把相應(yīng)的終端MAC地址添加進(jìn)VLAN表中時(shí),這個(gè)終端下所有的用戶設(shè)備均按照這個(gè)VLANID進(jìn)行數(shù)據(jù)轉(zhuǎn)發(fā);當(dāng)既配置了終端的MAC,又配置了用戶設(shè)備的MAC時(shí),用戶設(shè)備的MAC具有高優(yōu)先級(jí)。另外,MAC模式擴(kuò)展出支持基于MAC地址段的配置功能,可直接采用MAC地址的廠家標(biāo)示(MAC地址的前3位)配置VLAN,除MAC段和另外單獨(dú)配置的MAC外,其他設(shè)備可自動(dòng)劃分到一個(gè)VLAN組里面,避免了在實(shí)際運(yùn)用中基于終端MAC或設(shè)備MAC繁瑣的配置。基于終端端口的VLAN模式,在MoCA頭端上實(shí)現(xiàn)所有數(shù)據(jù)包的轉(zhuǎn)發(fā),包括了帶有VLAN tag的數(shù)據(jù)包,VLAN剝離與添加在MoCA頭端交換機(jī)芯片上實(shí)現(xiàn),此種模式支持端口可管理的MoCA終端。MAC地址和端口混合的VLAN模式,是同時(shí)兼容上述兩種VLAN方式的模式,他既支持普通單端口等端口不可管理的終端,又支持端口可管理的終端。當(dāng)終端MAC或用戶設(shè)備MAC已被添加進(jìn)VLAN信息表時(shí),適用于單端口等端口不可管理和端口可管理的多端口終端混合使用的網(wǎng)絡(luò)?;贛AC模式下,在c. LINK驅(qū)動(dòng)程序的PCI驅(qū)動(dòng)部分對(duì)上下行數(shù)據(jù)包進(jìn)行處理,并根據(jù)用戶應(yīng)用程序發(fā)送到c. LINK驅(qū)動(dòng)中的VLAN信息表進(jìn)行分析,判斷收到的上行或下行數(shù)據(jù)包中的用戶設(shè)備的MAC地址在VLAN信息表中所映射的VLAN ID,進(jìn)行相關(guān)的去除及添加VLAN的操作。如圖2所示,對(duì)于下行數(shù)據(jù)包,c. LINK驅(qū)動(dòng)收到數(shù)據(jù)包后的處理流程如下I、判斷是否有VLAN,如果沒(méi)有直接轉(zhuǎn)發(fā);2、如果有VLAN,判斷配置的VLAN模式為哪種模式;3、如果為端口模式,不做關(guān)于VLAN的處理,直接轉(zhuǎn)發(fā);4、如果為MAC模式或MAC綁定模式,刪除數(shù)據(jù)包中的VLAN字段,再轉(zhuǎn)發(fā)數(shù)據(jù);5、如果為混合模式,數(shù)據(jù)包處理流程如下(I)獲取數(shù)據(jù)包的目的MAC地址和轉(zhuǎn)發(fā)此數(shù)據(jù)包的MoCA終端的MAC地址;(2)判斷目的MAC或MoCA終端的MAC地址是否在VLAN信息表中;(3)如果在,刪除數(shù)據(jù)包中的VLAN字段,再轉(zhuǎn)發(fā)數(shù)據(jù);(4)如果在VLAN信息表中沒(méi)有,可認(rèn)定此數(shù)據(jù)包為發(fā)往端口可管理終端的,在MoCA頭端中不做VLAN處理直接轉(zhuǎn)發(fā)。
如圖3所示,對(duì)于上行數(shù)據(jù)包,c. LINK驅(qū)動(dòng)收到數(shù)據(jù)包后的處理流程如下I、判斷配置的VLAN模式為哪種模式;2、如果為端口模式,不做關(guān)于VLAN的處理,直接轉(zhuǎn)發(fā);3、如果為MAC模式或混合模式,處理流程如下(I)獲取數(shù)據(jù)包的源MAC地址和轉(zhuǎn)發(fā)此數(shù)據(jù)包的MoCA終端的MAC地址;(2)在VLAN信息表中查找MAC地址,以所對(duì)應(yīng)的VLAN ID作為數(shù)據(jù)包的VLAN ;(3)在數(shù)據(jù)包中添加此VLAN ID及優(yōu)先級(jí),再轉(zhuǎn)發(fā)數(shù)據(jù);(4)如果在VLAN信息表中沒(méi)有找到相關(guān)信息,可認(rèn)定這個(gè)終端下的設(shè)備沒(méi)有添加進(jìn)VLAN表,不做處理直接轉(zhuǎn)發(fā);4、如果為MAC綁定模式,數(shù)據(jù)包處理流程如下(I)獲取數(shù)據(jù)包的源MAC地址和轉(zhuǎn)發(fā)此數(shù)據(jù)包的MoCA終端的MAC地址;(2)在VLAN信息表中找出MAC所對(duì)應(yīng)的VLAN ID作為數(shù)據(jù)包的VLAN ;(3)如果找到,通過(guò)處理skb,添加此VLAN ID及優(yōu)先級(jí),再轉(zhuǎn)發(fā)數(shù)據(jù);(4)如果沒(méi)有找到,以配置的除上述三種MAC地址以外的默認(rèn)VLANID進(jìn)行在數(shù)據(jù)包中添加VLAN ;(5)如果沒(méi)有配置默認(rèn)VLAN,直接轉(zhuǎn)發(fā)數(shù)據(jù)。上述實(shí)施例不以任何方式限制本發(fā)明,凡是采用等同替換或等效變換的方式獲得的技術(shù)方案均落在本發(fā)明的保護(hù)范圍內(nèi)。
權(quán)利要求
1.一種具有支持MAC、終端端口等多種VLAN模式的MoCA頭端,其特征在于包括MoCA主芯片、CPU和PHY芯片,CPU與PHY芯片通過(guò)MII相連接實(shí)現(xiàn)數(shù)據(jù)的轉(zhuǎn)發(fā),MoCA主芯片和CPU之間采用PCI接口連接,CPU中運(yùn)行的內(nèi)核采用PCI驅(qū)動(dòng)訪問(wèn)控制MoCA主芯片實(shí)現(xiàn)數(shù)據(jù)的轉(zhuǎn)發(fā),應(yīng)用PCI驅(qū)動(dòng)中的sk_bufT結(jié)構(gòu)體傳遞數(shù)據(jù)包,該頭端基于MAC的VLAN模式,支持基于MAC地址段劃分VLAN的功能,且根據(jù)不同設(shè)備的MAC地址具有不同的處理優(yōu)先級(jí),并支持多端口終端和單端口終端混合使用的VLAN模式。
全文摘要
本發(fā)明公開(kāi)了一種具有多種VLAN模式的MoCA頭端,包括MoCA主芯片、CPU和PHY芯片,CPU與PHY芯片通過(guò)MII相連接實(shí)現(xiàn)數(shù)據(jù)的轉(zhuǎn)發(fā),MoCA主芯片和CPU之間采用PCI接口連接,CPU中運(yùn)行的內(nèi)核采用PCI驅(qū)動(dòng)訪問(wèn)控制MoCA主芯片實(shí)現(xiàn)數(shù)據(jù)的轉(zhuǎn)發(fā),應(yīng)用PCI驅(qū)動(dòng)中的sk_buff結(jié)構(gòu)體傳遞數(shù)據(jù)包;該頭端具有VLAN處理功能,適用于目前廣電網(wǎng)絡(luò)上的單端口終端網(wǎng)絡(luò)、可管理多端口終端網(wǎng)絡(luò),或單端口與可管理多端口終端混用的網(wǎng)絡(luò),解決了不同時(shí)期的多種MoCA終端并存于同一網(wǎng)絡(luò)的問(wèn)題,滿足廣電用戶多業(yè)務(wù)的運(yùn)用需求。
文檔編號(hào)H04L12/70GK103117911SQ201210309919
公開(kāi)日2013年5月22日 申請(qǐng)日期2012年8月28日 優(yōu)先權(quán)日2012年8月28日
發(fā)明者王振洪, 馬曉東, 陳小星, 朱曉峰, 冷健, 黃超 申請(qǐng)人:江蘇億通高科技股份有限公司