專利名稱:一種以太網(wǎng)無(wú)編號(hào)接口實(shí)現(xiàn)數(shù)據(jù)轉(zhuǎn)發(fā)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)通信技術(shù),尤其涉及一種以太網(wǎng)通過(guò)無(wú)編號(hào)接口作為中繼模式, 實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的方法。
背景技術(shù):
無(wú)編號(hào)接口就是設(shè)備上的一個(gè)接口上沒(méi)有配置IP地址但是還想使用該接口,就直接利用本地其他接口網(wǎng)絡(luò)地址作為該接口的網(wǎng)絡(luò)地址以使該接口能夠正常使用。其目的是是為了讓沒(méi)有配置IP地址的接口進(jìn)行正常通訊同時(shí)節(jié)省寶貴的IP地址資源。但使用無(wú)編號(hào)接口的功能時(shí)候,存在使用限制借用方不能為以太網(wǎng)接口 ;被借用方接口的地址本身不能為借用地址;被借用方的地址可以借給多個(gè)接口 ;環(huán)回口的地址可被其它接口借用,但本身不能借用其它接口的地址;如果被借用接口有多個(gè)IP地址,則只能借用主IP 地址。目前以太網(wǎng)接口都需要配置IP地址,該接口才能正常工作,鑒于目前以太網(wǎng)接口在設(shè)備上大量存在,當(dāng)以太網(wǎng)接口作為中繼鏈路時(shí)需要配置同一網(wǎng)段地址,且配置的地址繁多,導(dǎo)致用戶的配置使用復(fù)雜,使得設(shè)備的易用性不高。發(fā)明內(nèi)容
本發(fā)明針對(duì)上述借用方不能為以太網(wǎng)接口限制的問(wèn)題,提供了一種以太網(wǎng)無(wú)編號(hào)接口作為中繼接口,實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)方法。為了實(shí)現(xiàn)該方法,需要4個(gè)模塊,包括配置管理模塊、IP接口管理模塊、鄰居維護(hù)模塊和交換網(wǎng)絡(luò)驅(qū)動(dòng)模塊。
所述配置管理模塊,負(fù)責(zé)設(shè)置以太網(wǎng)接口的無(wú)編號(hào)地址功能,能夠進(jìn)行有編號(hào)和無(wú)編號(hào)切換,將配置信息發(fā)送給IP接口管理模塊。
所述IP接口管理模塊,負(fù)責(zé)創(chuàng)建三層以太網(wǎng)接口,在創(chuàng)建接口時(shí)候向IP協(xié)議棧注冊(cè)的自定義回調(diào)函數(shù),向交換網(wǎng)絡(luò)驅(qū)動(dòng)模塊發(fā)送報(bào)文時(shí)候,通過(guò)該接口函數(shù)發(fā)送報(bào)文。
所述鄰居維護(hù)模塊,負(fù)責(zé)收集對(duì)端連接設(shè)備的接口號(hào)、接口 IP地址和MAC地址。在本地維護(hù)對(duì)端MAC地址、IP地址、對(duì)端接口信息的映射表,該表項(xiàng)供驅(qū)動(dòng)模塊收發(fā)數(shù)據(jù)和維護(hù)三層轉(zhuǎn)發(fā)表使用。
所述交換網(wǎng)絡(luò)驅(qū)動(dòng)模塊,采用邏輯的三層接口,對(duì)以太網(wǎng)頭部進(jìn)行封裝以及解封裝,完成報(bào)文的收發(fā)處理。
實(shí)現(xiàn)以太網(wǎng)無(wú)編號(hào)數(shù)據(jù)轉(zhuǎn)發(fā)功能的方法為1)以太網(wǎng)無(wú)編號(hào)接口創(chuàng)建,2)鄰居維護(hù)模塊進(jìn)行鄰居的創(chuàng)建和刪除維護(hù),建立鄰居映射表,作為驅(qū)動(dòng)模塊進(jìn)行報(bào)文封裝和維護(hù)三層轉(zhuǎn)發(fā)表使用,3)路由表形成,鄰居維護(hù)模塊與驅(qū)動(dòng)模塊之間相互配合,協(xié)助路由協(xié)議建立路由鄰居和維護(hù)路由表,將路由信息添加到協(xié)議棧和通知驅(qū)動(dòng)模塊更新芯片路由表,4) 當(dāng)數(shù)據(jù)需要進(jìn)行轉(zhuǎn)發(fā)時(shí),交換網(wǎng)絡(luò)根據(jù)目的IP地址查找三層轉(zhuǎn)發(fā)表,三層轉(zhuǎn)發(fā)表中包含下一跳的IP地址、MAC地址和出接口,根據(jù)這些信息查找出接口進(jìn)行報(bào)文轉(zhuǎn)發(fā)。
本發(fā)明的有效技術(shù)效果是通過(guò)增加鄰居維護(hù)模塊建立的鄰居信息映射表和驅(qū)動(dòng)模塊對(duì)報(bào)文進(jìn)行正確以太網(wǎng)頭部封裝和解封裝,在二層/三層以太交換芯片上實(shí)現(xiàn)以太網(wǎng)無(wú)編號(hào)數(shù)據(jù)轉(zhuǎn)發(fā)功能,減少IP地址的使用,有效減少用戶的配置接口 IP地址,提高設(shè)備的可用性。
圖I、各模塊之間的關(guān)系。
圖2、報(bào)文發(fā)送流程圖。
圖3、報(bào)文接收流程圖。
具體實(shí)施方式
為了實(shí)現(xiàn)本發(fā)明的發(fā)明目的,本發(fā)明提供了一種以太網(wǎng)無(wú)編號(hào)接口作為中繼接口,包括配置管理模塊、接口管理模塊、鄰居維護(hù)模塊和交換網(wǎng)絡(luò)驅(qū)動(dòng)模塊。各個(gè)模塊之間的關(guān)系參見(jiàn)圖I。
以太網(wǎng)無(wú)編號(hào)接口創(chuàng)建設(shè)置以太網(wǎng)接口為無(wú)編號(hào)接口,配置管理模塊通知IP接口管理模塊,由接口管理模塊創(chuàng)建三層以太網(wǎng)接口,創(chuàng)建的時(shí)候不直接使用協(xié)議棧提供的接口函數(shù),而是通過(guò)自定義接口函數(shù)創(chuàng)建。創(chuàng)建的三層以太網(wǎng)接口不支持ARP協(xié)議。接口管理接口創(chuàng)建成功后需要通知驅(qū)動(dòng)模塊創(chuàng)建邏輯的三層接口,邏輯三層接口采用VLAN進(jìn)行報(bào)文的隔離。接口創(chuàng)建成功后,通知鄰居維護(hù)啟動(dòng)鄰居管理模塊運(yùn)行工作。
鄰居模塊鄰居維護(hù)鄰居協(xié)議采用組播方式發(fā)送定時(shí)向?qū)Χ嗽O(shè)備發(fā)送Hello報(bào)文。該報(bào)文包括本接口信息、接口 IP地址和MAC地址;接收端接收到Hello報(bào)文后,從報(bào)文中提取對(duì)端接口的接口信息、接口 IP地址、MAC地址,形成本地的鄰居信息映射表,表項(xiàng)內(nèi)容包括對(duì)端接口號(hào)、接口 MAC地址、接口 IP地址和本端的端口信息。在鄰居狀態(tài)沒(méi)有達(dá)到雙向通信之前,兩端設(shè)備接收到路由協(xié)議報(bào)文時(shí)候,路由協(xié)議不處理更新報(bào)文。
路由表形成過(guò)程如果發(fā)送方發(fā)送組播報(bào)文,驅(qū)動(dòng)模塊對(duì)于組播報(bào)文根據(jù)組播的規(guī)則計(jì)算目的MAC地址,根據(jù)出接口信息填寫(xiě)源MAC地址,然后從相應(yīng)的出接口發(fā)送報(bào)文; 接收方接收到組播報(bào)文后,和有編號(hào)接口處理一致;對(duì)于單播報(bào)文,需要根據(jù)下一跳IP地址、出接口信息到鄰居管理模塊維護(hù)的映射表中查找網(wǎng)關(guān)MAC地址,根據(jù)出接口信息填寫(xiě)源MAC地址,然后將報(bào)文從相應(yīng)的出接口發(fā)送出去,具體參見(jiàn)圖2。接收方設(shè)備從驅(qū)動(dòng)模塊接收組播或者單播報(bào)文,檢查以太網(wǎng)幀類型,如果是IP數(shù)據(jù)同時(shí)接口是無(wú)編號(hào)接口,從以太網(wǎng)幀頭部讀取VLANID信息,將報(bào)文送到協(xié)議棧對(duì)應(yīng)接口上,路由協(xié)議模塊通過(guò)Socket接收到協(xié)議更新報(bào)文后,進(jìn)行路由更新,然后路由信息添加到協(xié)議棧和通知驅(qū)動(dòng)模塊更新芯片路由表,具體參見(jiàn)圖3。
數(shù)據(jù)轉(zhuǎn)發(fā)過(guò)程當(dāng)報(bào)文需要通過(guò)以太網(wǎng)設(shè)備進(jìn)行轉(zhuǎn)發(fā)時(shí),交換網(wǎng)絡(luò)根據(jù)目的IP地址查找三層轉(zhuǎn)發(fā)表,三層轉(zhuǎn)發(fā)表中包含下一跳的IP地址、MAC地址、出接口,根據(jù)這些信息查找出接口,交換之后的報(bào)文經(jīng)過(guò)以太網(wǎng)封裝。
權(quán)利要求
1.本發(fā)明提供了一種以太網(wǎng)通過(guò)無(wú)編號(hào)方式作為中繼接口,實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)方法,其特征在于,實(shí)現(xiàn)該方法需要配置管理模塊、IP接口管理模塊、鄰居維護(hù)模塊和交換網(wǎng)絡(luò)驅(qū)動(dòng)模塊; 所述配置管理模塊,負(fù)責(zé)設(shè)置以太網(wǎng)接口的無(wú)編號(hào)地址功能,能夠進(jìn)行有編號(hào)和無(wú)編號(hào)切換,將配置信息發(fā)送給IP接口管理模塊; 所述IP接口管理模塊,負(fù)責(zé)創(chuàng)建三層以太網(wǎng)接口,在創(chuàng)建接口時(shí)候向IP協(xié)議棧注冊(cè)的自定義回調(diào)函數(shù),向交換網(wǎng)絡(luò)驅(qū)動(dòng)模塊發(fā)送報(bào)文時(shí)候,通過(guò)該接口函數(shù)發(fā)送報(bào)文; 所述鄰居維護(hù)模塊,負(fù)責(zé)收集對(duì)端連接設(shè)備的接口號(hào)、接口 IP地址和MAC地址;在本地維護(hù)對(duì)端MAC地址、IP地址、對(duì)端接口信息的映射表,該表項(xiàng)供驅(qū)動(dòng)模塊收發(fā)數(shù)據(jù)和維護(hù)三層轉(zhuǎn)發(fā)表使用; 所述交換網(wǎng)絡(luò)驅(qū)動(dòng)模塊,采用邏輯的三層接口,對(duì)以太網(wǎng)頭部進(jìn)行封裝以及解封裝,完成報(bào)文的收發(fā)處理。
2.根據(jù)權(quán)利要求I所述的方法,其特征在于,報(bào)文轉(zhuǎn)發(fā)的方法為1)以太網(wǎng)無(wú)編號(hào)接口創(chuàng)建,2)鄰居維護(hù)模塊進(jìn)行鄰居的創(chuàng)建和刪除維護(hù),建立鄰居映射表,該表為驅(qū)動(dòng)模塊進(jìn)行報(bào)文封裝和維護(hù)三層轉(zhuǎn)發(fā)表使用,3)路由表形成;如果發(fā)送方發(fā)送組播報(bào)文,驅(qū)動(dòng)模塊對(duì)于組播報(bào)文根據(jù)組播的規(guī)則計(jì)算目的MAC地址,根據(jù)出接口信息填寫(xiě)源MAC地址,然后從相應(yīng)的出接口發(fā)送報(bào)文;接收方接收到組播報(bào)文后,和有編號(hào)接口處理一致;對(duì)于單播報(bào)文,需要根據(jù)下一跳IP地址、出接口信息到鄰居管理模塊維護(hù)的映射表中查找網(wǎng)關(guān)MAC地址,根據(jù)出接口信息填寫(xiě)源MAC地址,然后將報(bào)文從相應(yīng)的出接口發(fā)送出去;接收方設(shè)備從驅(qū)動(dòng)模塊接收組播或者單播報(bào)文,檢查以太網(wǎng)幀類型,如果是IP數(shù)據(jù)同時(shí)接口是無(wú)編號(hào)接口,從以太網(wǎng)幀頭部讀取VLAN ID信息,將報(bào)文送到協(xié)議棧對(duì)應(yīng)接口上,路由協(xié)議模塊通過(guò)Socket接收到協(xié)議更新報(bào)文后,進(jìn)行路由更新,然后路由信息添加到協(xié)議棧和通知驅(qū)動(dòng)模塊更新芯片路由表,4)當(dāng)數(shù)據(jù)需要進(jìn)行轉(zhuǎn)發(fā)時(shí),交換網(wǎng)絡(luò)根據(jù)目的IP地址查找三層轉(zhuǎn)發(fā)表,三層轉(zhuǎn)發(fā)表中包含下一跳的IP地址、MAC地址和出接口,根據(jù)這些信息查找出接口進(jìn)行報(bào)文轉(zhuǎn)發(fā)。
全文摘要
本發(fā)明公開(kāi)了一種以太網(wǎng)接口通過(guò)無(wú)編號(hào)方式實(shí)現(xiàn)報(bào)文轉(zhuǎn)發(fā)的以太網(wǎng)交換方法。該方法包括以太網(wǎng)接口作為無(wú)編號(hào)接口,增加鄰居維護(hù)模塊建立;在本地建立MAC地址和IP地址信息映射表,驅(qū)動(dòng)模塊根據(jù)協(xié)議報(bào)文的特征進(jìn)行正確地進(jìn)行以太網(wǎng)幀頭部封裝和解封裝,協(xié)助路由協(xié)議完成路由交互的過(guò)程,最終形成芯片的三層轉(zhuǎn)發(fā)表;當(dāng)數(shù)據(jù)轉(zhuǎn)發(fā)時(shí),交換網(wǎng)絡(luò)根據(jù)目的IP地址查找三層轉(zhuǎn)發(fā)表,三層轉(zhuǎn)發(fā)表中包含下一跳的IP地址、MAC地址、出接口,根據(jù)這些信息查找出接口,交換之后的報(bào)文進(jìn)行以太網(wǎng)封裝。本發(fā)明的有效技術(shù)效果是減少用戶的配置接口IP地址,提高設(shè)備的可用性。
文檔編號(hào)H04L12/741GK102984070SQ20121053589
公開(kāi)日2013年3月20日 申請(qǐng)日期2012年12月13日 優(yōu)先權(quán)日2012年12月13日
發(fā)明者李世釗, 陳量, 鄭直, 雷文虎, 楊釗, 劉俊 申請(qǐng)人:重慶金美通信有限責(zé)任公司