有狀態(tài)的IPv6與IPv4通信的映射表項(xiàng)及管理方法
【專利摘要】本發(fā)明涉及IPv6網(wǎng)絡(luò)通信【技術(shù)領(lǐng)域】,特別涉及一種有狀態(tài)的IPv6與IPv4通信的映射表項(xiàng)及映射表項(xiàng)管理方法。本發(fā)明所提供的有狀態(tài)的IPv6與IPv4網(wǎng)絡(luò)通信映射表項(xiàng)在數(shù)據(jù)部分減少了目的IPv6地址、IPv6報文目的端口號、源IPv4地址以及IPv4報文源端口號,在結(jié)果部分減少了源IPv6地址、IPv6報文源端口號、源IPv4地址以及IPv4報文源端口號,并且由于所有信息融合在了一張映射表中,因此大大節(jié)約了硬件存儲空間,同時也降低了維護(hù)成本。
【專利說明】有狀態(tài)的IPv6與IPv4通信的映射表項(xiàng)及管理方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及IPv6網(wǎng)絡(luò)通信【技術(shù)領(lǐng)域】,特別涉及一種有狀態(tài)的IPv6與IPv4通信的映射表項(xiàng)及映射表項(xiàng)管理方法。
【背景技術(shù)】
[0002]計算機(jī)網(wǎng)絡(luò)的發(fā)展在短短的幾十年的時間里就經(jīng)歷了從無到有,從簡單到復(fù)雜,從在一個房間里到遍布全球的過程。網(wǎng)絡(luò)給人們帶來了豐富的信息和全新的服務(wù),同時也帶來了新的學(xué)習(xí)、工作和生活方式。隨著接入Internet的主機(jī)數(shù)量的不斷增長和網(wǎng)絡(luò)所能提供服務(wù)范圍的不斷擴(kuò)展延伸,支撐網(wǎng)絡(luò)運(yùn)行與提供網(wǎng)絡(luò)服務(wù)的網(wǎng)絡(luò)協(xié)議也在不斷的開發(fā)和完善中,現(xiàn)在的Internet正在由IPv4協(xié)議向IPv6協(xié)議過渡。然而在現(xiàn)代的計算機(jī)網(wǎng)絡(luò)系統(tǒng)中,路由器是最核心的連接設(shè)備。互聯(lián)網(wǎng)的飛速發(fā)展離不開路由器的技術(shù)革新。下一代互聯(lián)網(wǎng)對下一代IP路由器體系結(jié)構(gòu)提出了新的需求。支持IPv4網(wǎng)絡(luò)與IPv6網(wǎng)絡(luò)互聯(lián)的路由器是下一代IP路由器發(fā)展的主流方向。
[0003]在支持IPv4網(wǎng)絡(luò)與IPv6網(wǎng)絡(luò)互聯(lián)的路由器體系結(jié)構(gòu)中,如何對有狀態(tài)的IPv4數(shù)據(jù)流與IPv6數(shù)據(jù)流之間的映射表項(xiàng)進(jìn)行合理設(shè)置和管理,從而提高硬件表項(xiàng)的利用率一直都是研究的熱點(diǎn)問題。目前映射表項(xiàng)一般是存儲在硬件器件上的,硬件器件的價格往往比較昂貴,并且能夠存儲的表項(xiàng)也是有限的。有狀態(tài)的IPv4數(shù)據(jù)流與IPv6數(shù)據(jù)流進(jìn)行互通的時候,在支持IPv4網(wǎng)絡(luò)與IPv6網(wǎng)絡(luò)互聯(lián)的路由器上,需要記錄大量的IPv4數(shù)據(jù)流與IPv6數(shù)據(jù)流之間的映射關(guān)系。
[0004]有狀態(tài)的IPv6網(wǎng)絡(luò)與IPv4網(wǎng)絡(luò)通信完整的過程通常都是由兩部分組成的,即IPv6去往IPv4方向的,IPv4去往IPv6方向,因此針對一個數(shù)據(jù)流的映射表項(xiàng)是兩個表項(xiàng)。映射表項(xiàng)的設(shè)置分為數(shù)據(jù)部分和結(jié)果部分。數(shù)據(jù)部分的信息用來與流量中提取的特征字段來匹配,表項(xiàng)的設(shè)計原則是必需能夠唯一的命中一個數(shù)據(jù)流。結(jié)果部分是用來進(jìn)行IPv4數(shù)據(jù)流與IPv6數(shù)據(jù)流的轉(zhuǎn)換和發(fā)送,因此必須能夠提供IPv6或IPv4協(xié)議的轉(zhuǎn)換信息以及轉(zhuǎn)換后的IPv4或IPv6報文的發(fā)送信息。按照常規(guī)的映射表項(xiàng)生成方法,IPv6去往IPv4方向的映射表項(xiàng)的數(shù)據(jù)部分為五元組〈源IPv6地址,目的IPv6地址,IPv6報文源端口號,IPv6報文目的端口號,IPv6報文協(xié)議號 >,結(jié)果部分為〈源IPv4地址,目的IPv4地址,IPv4報文源端口號,IPv4報文目的端口號,IPv4出接口號〉;IPv4去往IPv6方向的映射表項(xiàng)的數(shù)據(jù)部分為五元組〈目的IPv4地址,源IPv4地址,IPv4報文目的端口號,IPv4報文源端口號,IPv4報文協(xié)議號 >,結(jié)果部分為轉(zhuǎn)后后的〈目的IPv6地址,源IPv6地址,IPv6報文目的端口號,IPv6報文源端口號,IPv6出接口號〉。如果按照常規(guī)的映射表項(xiàng)生成方法,需要為每個數(shù)據(jù)流同時維護(hù)兩張映射表,這兩張映射表需要占用較大的硬件器件內(nèi)存空間,并且在有狀態(tài)的IPv6網(wǎng)絡(luò)與IPv4網(wǎng)絡(luò)通信時映射表項(xiàng)的條目也將非常龐大,同時有狀態(tài)的IPv6網(wǎng)絡(luò)與IPv4網(wǎng)絡(luò)通信具有時效特點(diǎn),會出現(xiàn)表項(xiàng)使用一段時間后不會再被使用的情況。
[0005]因此如何兼顧滿足有狀態(tài)的IPv6網(wǎng)絡(luò)與IPv4網(wǎng)絡(luò)通信需要并且避免硬件表項(xiàng)容量過載是防止支持有狀態(tài)的IPv6網(wǎng)絡(luò)與IPv4網(wǎng)絡(luò)通信路由器出現(xiàn)系統(tǒng)瓶頸的關(guān)鍵問題。
【發(fā)明內(nèi)容】
[0006](一)要解決的技術(shù)問題
[0007]本發(fā)明要解決的技術(shù)問題是,針對現(xiàn)有技術(shù)的不足,提供一種有狀態(tài)的IPv6與IPv4通信的映射表項(xiàng)及映射表項(xiàng)管理方法,用于實(shí)現(xiàn)兼顧滿足有狀態(tài)的IPv6網(wǎng)絡(luò)與IPv4網(wǎng)絡(luò)通信需要并且避免硬件表項(xiàng)容量過載的目的。
[0008](二)技術(shù)方案
[0009]本發(fā)明技術(shù)方案如下:
[0010]一種有狀態(tài)的IPv6與IPv4網(wǎng)絡(luò)通信映射表項(xiàng),包括數(shù)據(jù)部分以及結(jié)果部分;
[0011]所述數(shù)據(jù)部分包括:源IPv6地址、IPv6源端口號、IPv6協(xié)議號、目的IPv4地址、IPv4報文目的端口號以及IPv4協(xié)議號;
[0012]所述結(jié)果部分包括:源IPv4地址、源IPv4端口號、IPv4下一跳地址、IPv4出接口號、目的IPv6地址、IPv6報文目的端口號、IPv6下一跳地址、IPv6出接口號以及硬件寄存器地址。
[0013]—種基于上述映射表項(xiàng)的映射表項(xiàng)管理方法,包括:
[0014]S1.初始化映射表項(xiàng)的內(nèi)存空間以及硬件?;罴拇嫫?;
[0015]S2.接收IPv4報文或者IPv6報文,提取和生成映射表項(xiàng)信息;
[0016]S3.為硬件?;罴拇嫫髻x值I并向路由器硬件添加映射表項(xiàng)。
[0017]優(yōu)選的,所述步驟S3之后還包括:
[0018]S4.在路由器硬件中映射表項(xiàng)超時后,對其進(jìn)行回收。
[0019]優(yōu)選的,所述步驟S2包括:
[0020]判斷報文類型:
[0021]若是IPv4報文:則提取報文的目的IPv4地址、IPv4報文目的端口號以及IPv4協(xié)議號;
[0022]若是IPv6報文:則提取報文的源IPv6地址、IPv6源端口號以及IPv6協(xié)議號。
[0023]優(yōu)選的,所述步驟S3包括:
[0024]判斷映射表項(xiàng)的內(nèi)存空間是否已滿:
[0025]是:則提示用戶內(nèi)存空間已滿;
[0026]否:則獲取硬件?;罴拇嫫鞯刂罚瑸橛布;罴拇嫫髻x值I并向路由器硬件添加映射表項(xiàng)。
[0027]優(yōu)選的,所述步驟S4包括:
[0028]讀取判斷硬件?;罴拇嫫鞯闹凳欠駷?1:
[0029]是:則繼續(xù)讀取判斷;
[0030]否:則讀取判斷硬件?;罴拇嫫鞯闹凳欠駷?:
[0031]是:則將硬件?;罴拇嫫髦脼镺 ;
[0032]否:則在時間戳與當(dāng)前時間相差超過預(yù)定時間時刪除路由器硬件中的映射表項(xiàng),并重置硬件?;罴拇嫫鞯闹禐?1。
[0033]優(yōu)選的,所述預(yù)定時間為10s。
[0034](三)有益效果
[0035]本發(fā)明所提供的有狀態(tài)的IPv6與IPv4網(wǎng)絡(luò)通信映射表項(xiàng),包括數(shù)據(jù)部分以及結(jié)果部分;數(shù)據(jù)部分包括:源IPv6地址、IPv6源端口號、IPv6協(xié)議號、目的IPv4地址、IPv4報文目的端口號以及IPv4協(xié)議號;結(jié)果部分包括:源IPv4地址、源IPv4端口號、IPv4下一跳地址、IPv4出接口號、目的IPv6地址、IPv6報文目的端口號、IPv6下一跳地址、IPv6出接口號以及硬件寄存器地址;與傳統(tǒng)的映射表項(xiàng)設(shè)計相比,本發(fā)明在數(shù)據(jù)部分減少了目的IPv6地址、IPv6報文目的端口號、源IPv4地址以及IPv4報文源端口號,在結(jié)果部分減少了源IPv6地址、IPv6報文源端口號、源IPv4地址以及IPv4報文源端口號,并且由于所有信息融合在了一張映射表中,因此大大節(jié)約了硬件存儲空間,同時也降低了維護(hù)成本。
【專利附圖】
【附圖說明】
[0036]圖1是本發(fā)明實(shí)施例中有狀態(tài)的IPv6與IPv4網(wǎng)絡(luò)通信映射表項(xiàng)的示意圖;
[0037]圖2是本發(fā)明實(shí)施例中有狀態(tài)的IPv6與IPv4網(wǎng)絡(luò)通信映射表項(xiàng)管理結(jié)構(gòu)拓?fù)涫疽鈭D;
[0038]圖3是本發(fā)明實(shí)施例中映射表項(xiàng)管理方法的路由器軟件部分工作流程示意圖;
[0039]圖4是本發(fā)明實(shí)施例中映射表項(xiàng)管理方法的路由器硬件部分工作流程示意圖。
【具體實(shí)施方式】
[0040]下面結(jié)合附圖和實(shí)施例,對本發(fā)明的【具體實(shí)施方式】做進(jìn)一步描述。以下實(shí)施例僅用于說明本發(fā)明,但不用來限制本發(fā)明的范圍。
[0041]現(xiàn)有技術(shù)中,有狀態(tài)的IPv6網(wǎng)絡(luò)與IPv4網(wǎng)絡(luò)通信的映射表項(xiàng)的存儲需要花費(fèi)大量的硬件存儲空間,因此可以通過精簡映射表項(xiàng)內(nèi)容以及提供相應(yīng)的管理方法來達(dá)到使用較少硬件存儲空間的目的。本實(shí)施例中,首先提供了一種有狀態(tài)的IPv6與IPv4網(wǎng)絡(luò)通信映射表項(xiàng),如圖1中所示,該映射表項(xiàng)包括數(shù)據(jù)部分以及結(jié)果部分;
[0042]其中數(shù)據(jù)部分包括:源IPv6地址、IPv6源端口號、IPv6協(xié)議號、目的IPv4地址、IPv4報文目的端口號以及IPv4協(xié)議號;
[0043]其中結(jié)果部分包括:源IPv4地址、源IPv4端口號、IPv4下一跳地址、IPv4出接口號、目的IPv6地址、IPv6報文目的端口號、IPv6下一跳地址、IPv6出接口號以及硬件寄存器地址。
[0044]與傳統(tǒng)的映射表項(xiàng)設(shè)計相比,本發(fā)明中的映射表項(xiàng)在數(shù)據(jù)部分減少了目的IPv6地址、IPv6報文目的端口號、源IPv4地址以及IPv4報文源端口號,在結(jié)果部分減少了源IPv6地址、IPv6報文源端口號、源IPv4地址以及IPv4報文源端口號,并且由于所有信息融合在了一張映射表中,因此大大節(jié)約了硬件存儲空間,同時也降低了維護(hù)成本。
[0045]本實(shí)施例中還提供了一種基于上述映射表項(xiàng)的映射表項(xiàng)管理方法,包括:
[0046]S1.初始化映射表項(xiàng)的內(nèi)存空間以及硬件?;罴拇嫫?;
[0047]S2.接收IPv4報文或者IPv6報文,提取和生成映射表項(xiàng)信息;
[0048]其中,步驟S2包括:
[0049]判斷報文類型:
[0050]若是IPv4報文:則提取報文的目的IPv4地址、IPv4報文目的端口號以及IPv4協(xié)議號;
[0051]若是IPv6報文:則提取報文的源IPv6地址、IPv6源端口號以及IPv6協(xié)議號。
[0052]S3.為硬件保活寄存器賦值I并向路由器硬件添加映射表項(xiàng)。
[0053]其中,步驟S3之后還包括:
[0054]其中,步驟S3包括:
[0055]判斷映射表項(xiàng)的內(nèi)存空間是否已滿:
[0056]是:則提示用戶內(nèi)存空間已滿;
[0057]否:則獲取硬件保活寄存器地址,為硬件?;罴拇嫫髻x值I并向路由器硬件添加映射表項(xiàng)。
[0058]S4.在路由器硬件中映射表項(xiàng)超時后,對其進(jìn)行回收。
[0059]其中,步驟S4包括:
[0060]讀取判斷硬件保活寄存器的值是否為-1:
[0061]是:則繼續(xù)讀取判斷;
[0062]否:則讀取判斷硬件?;罴拇嫫鞯闹凳欠駷?:
[0063]是:則將硬件?;罴拇嫫髦脼镺 ;
[0064]否:則在時間戳與當(dāng)前時間相差超過預(yù)定時間時刪除路由器硬件中的映射表項(xiàng),并重置硬件?;罴拇嫫鞯闹禐?1。
[0065]其中,預(yù)定時間為10s。
[0066]上述方法在如圖2中所示的有狀態(tài)的IPv6網(wǎng)絡(luò)與IPv4網(wǎng)絡(luò)通信映射表項(xiàng)管理拓?fù)浣Y(jié)構(gòu)中的工作流程如圖3以及圖4中所示。
[0067]基于有狀態(tài)的IPv6網(wǎng)絡(luò)與IPv4網(wǎng)絡(luò)通信的映射表項(xiàng)管理方法的路由器軟件部分工作流程如圖3中所示,該圖比較詳細(xì)的闡述了該管理方法在路由器軟件的具體行為與操作:其中,步驟Al和步驟A2完成路由器軟件在開機(jī)后需要初始化的兩張表,分別是映射表項(xiàng)?;畋砗陀布成浔眄?xiàng)內(nèi)存空間使用情況表,路由器軟件接收到去往IPv4網(wǎng)絡(luò)的IPv6流量報文以及去往IPv6網(wǎng)絡(luò)的IPv4流量報文,由步驟A3完成對映射表項(xiàng)信息的提取和生成,通過步驟A4和步驟A5完成對硬件映射表項(xiàng)的添加,通過步驟A6完成對超時硬件映射表項(xiàng)的回收。其中箭頭的方向代表路由器軟件執(zhí)行的方向。
[0068]基于有狀態(tài)的IPv6網(wǎng)絡(luò)與IPv4網(wǎng)絡(luò)通信的映射表項(xiàng)管理方法的路由器硬件部分工作流程如圖4中所示,該圖比較詳細(xì)的闡述了該管理方法在路由器硬件的具體行為與操作:其中由步驟AS和步驟A9完成路由器硬件在開機(jī)以后將初始化硬件映射表項(xiàng)的內(nèi)存空間和硬件?;罴拇嫫?,路由器硬件在接收到IPvA4與IPvA6網(wǎng)絡(luò)通信的數(shù)據(jù)報文后,由步驟AlO完成對流量的映射表項(xiàng)命中操作,并且對硬件保活寄存器的賦值。其中箭頭的方向代表路由器硬件執(zhí)行的方向。
[0069]本發(fā)明為需要實(shí)現(xiàn)有狀態(tài)的IPv4數(shù)據(jù)流與IPv6數(shù)據(jù)流進(jìn)行通行的路由器提供了一個既經(jīng)濟(jì)又高效的兼顧滿足有狀態(tài)的IPv6網(wǎng)絡(luò)與IPv4網(wǎng)絡(luò)通信需要并且避免硬件表項(xiàng)容量過載的解決方案。本發(fā)明通過對在有狀態(tài)IPv4數(shù)據(jù)流與IPv6數(shù)據(jù)流通信中,能夠唯一命中數(shù)據(jù)流的特征字段進(jìn)行精簡,在滿足有狀態(tài)的IPv4數(shù)據(jù)流與IPv6數(shù)據(jù)流通信的需求下,又兼顧的減少了映射表項(xiàng)對硬件存儲空間的占有,有效的緩解了硬件存儲空間有限的問題。同時,本發(fā)明通過路由器硬件和路由器軟件配合,對硬件映射表項(xiàng)使用情況進(jìn)行檢測,從而使長時間未被命中的硬件映射表項(xiàng)內(nèi)存得以釋放,可以有效的解決硬件存儲空間有限與映射表項(xiàng)增長之間的矛盾。
[0070]以上實(shí)施方式僅用于說明本發(fā)明,而并非對本發(fā)明的限制,有關(guān)【技術(shù)領(lǐng)域】的普通技術(shù)人員,在不脫離本發(fā)明的精神和范圍的情況下,還可以做出各種變化和變型,因此所有等同的技術(shù)方案也屬于本發(fā)明的保護(hù)范疇。
【權(quán)利要求】
1.一種有狀態(tài)的IPv6與IPv4通信的映射表項(xiàng),其特征在于,包括數(shù)據(jù)部分以及結(jié)果部分; 所述數(shù)據(jù)部分包括:源IPv6地址、IPv6源端口號、IPv6協(xié)議號、目的IPv4地址、IPv4報文目的端口號以及IPv4協(xié)議號;所述結(jié)果部分包括:源IPv4地址、源IPv4端口號、IPv4下一跳地址、IPv4出接口號、目的IPv6地址、IPv6報文目的端口號、IPv6下一跳地址、IPv6出接口號以及硬件寄存器地址。
2.一種基于根據(jù)權(quán)利要求1所述的映射表項(xiàng)的映射表項(xiàng)管理方法,其特征在于,包括: 51.初始化映射表項(xiàng)的內(nèi)存空間以及硬件?;罴拇嫫?; 52.接收IPv4報文或者IPv6報文,提取和生成映射表項(xiàng)信息; 53.為硬件?;罴拇嫫髻x值I并向路由器硬件添加映射表項(xiàng)。
3.根據(jù)權(quán)利要求2所述的映射表項(xiàng)管理方法,其特征在于,所述步驟S3之后還包括: 54.在路由器硬件中映射表項(xiàng)超時后,對其進(jìn)行回收。
4.根據(jù)權(quán)利要求2或3所述的映射表項(xiàng)管理方法,其特征在于,所述步驟S2包括: 判斷報文類型: 若是IPv4報文:則提取報文的目的IPv4地址、IPv4報文目的端口號以及IPv4協(xié)議號; 若是IPv6報文:則提取報文的源IPv6地址、IPv6源端口號以及IPv6協(xié)議號。
5.根據(jù)權(quán)利要求4所述的映射表項(xiàng)管理方法,其特征在于,所述步驟S3包括: 判斷映射表項(xiàng)的內(nèi)存空間是否已滿: 是:則提示用戶內(nèi)存空間已滿; 否:則獲取硬件?;罴拇嫫鞯刂罚瑸橛布;罴拇嫫髻x值I并向路由器硬件添加映射表項(xiàng)。
6.根據(jù)權(quán)利要求2-3或5所述的映射表項(xiàng)管理方法,其特征在于,所述步驟S4包括: 讀取判斷硬件?;罴拇嫫鞯闹凳欠駷?1: 是:則繼續(xù)讀取判斷; 否:則讀取判斷硬件?;罴拇嫫鞯闹凳欠駷?: 是:則將硬件?;罴拇嫫髦脼镺 ; 否:則在時間戳與當(dāng)前時間相差超過預(yù)定時間時刪除路由器硬件中的映射表項(xiàng),并重置硬件?;罴拇嫫鞯闹禐?1。
7.根據(jù)權(quán)利要求6所述的映射表項(xiàng)管理方法,其特征在于,所述預(yù)定時間為10s。
【文檔編號】H04L29/12GK104253876SQ201310269298
【公開日】2014年12月31日 申請日期:2013年6月28日 優(yōu)先權(quán)日:2013年6月28日
【發(fā)明者】王宇亮, 張開軍 申請人:比威網(wǎng)絡(luò)技術(shù)有限公司