Olt設(shè)備動(dòng)態(tài)訪問(wèn)控制列表生成方法及數(shù)據(jù)包處理方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于以太網(wǎng)無(wú)源光網(wǎng)絡(luò)技術(shù)領(lǐng)域,尤其涉及一種OLT設(shè)備動(dòng)態(tài)訪問(wèn)控制列 表生成方法及數(shù)據(jù)包處理方法。
【背景技術(shù)】
[0002] 以太網(wǎng)無(wú)源光網(wǎng)絡(luò)(EPON)技術(shù)是一種基于以太網(wǎng)技術(shù)、點(diǎn)到多點(diǎn)的無(wú)源光網(wǎng)絡(luò) 接入技術(shù),它集以太網(wǎng)技術(shù)的易維護(hù)、低成本和PON網(wǎng)絡(luò)的高效等特點(diǎn)于一身,是未來(lái)實(shí)現(xiàn) 光纖接入網(wǎng)的最佳方式。但是由于EPON采用點(diǎn)到多點(diǎn)的共享型拓?fù)浜拖滦袛?shù)據(jù)廣播方式, 其信息安全很容易受到威脅。
[0003] 隨著三網(wǎng)融合和光纖入戶進(jìn)程的加快,EPON系統(tǒng)普遍使用,寬帶上網(wǎng)、電視點(diǎn)播業(yè) 務(wù)日益普及,用戶數(shù)量非常龐大。當(dāng)網(wǎng)內(nèi)其中一個(gè)用戶節(jié)點(diǎn)出現(xiàn)攜帶有病毒隱患的數(shù)據(jù)包 時(shí),其數(shù)據(jù)包在網(wǎng)內(nèi)各個(gè)節(jié)點(diǎn)傳播轉(zhuǎn)發(fā),在網(wǎng)內(nèi)形成病毒風(fēng)暴,造成網(wǎng)絡(luò)癱瘓,影響用戶的 使用,但在保證網(wǎng)絡(luò)安全性的前提下,OLT設(shè)備對(duì)數(shù)據(jù)包的處理效率相對(duì)較低,影響用戶的 使用體驗(yàn)。
【發(fā)明內(nèi)容】
[0004] 本發(fā)明的目的在于提供一種OLT設(shè)備動(dòng)態(tài)訪問(wèn)控制列表生成方法,旨在解決現(xiàn)有 技術(shù)中在保證網(wǎng)絡(luò)安全的條件下,OLT設(shè)備對(duì)數(shù)據(jù)包的處理效率相對(duì)較低的問(wèn)題。
[0005] 本發(fā)明是這樣實(shí)現(xiàn)的,一種OLT設(shè)備動(dòng)態(tài)訪問(wèn)控制列表生成方法,所述方法包括 下述步驟:
[0006] 接收用戶輸入的與待生成的動(dòng)態(tài)訪問(wèn)控制列表相對(duì)應(yīng)的ACL命令,所述ACL命令 的類(lèi)別包括數(shù)據(jù)鏈路層數(shù)據(jù)輸入命令、網(wǎng)絡(luò)層數(shù)據(jù)輸入命令以及傳輸層數(shù)據(jù)輸入命令;
[0007] 對(duì)所述ACL命令進(jìn)行類(lèi)別解析,并生成所述ACL命令所對(duì)應(yīng)的類(lèi)別下的命令規(guī)則, 所述命令規(guī)則設(shè)有控制數(shù)據(jù)包通過(guò)與否的匹配原則,所述匹配原則包括等于、大于等于、小 于、小于等于以及端口范圍;
[0008] 將解析得到的所述ACL命令所對(duì)應(yīng)的類(lèi)別參數(shù)輸入存儲(chǔ)到類(lèi)別標(biāo)志寄存器中,同 時(shí),控制在ACL命令庫(kù)中將所述ACL命令的狀態(tài)修改為激活狀態(tài);
[0009] 對(duì)所述ACL命令庫(kù)中處于激活狀態(tài)的ACL命令項(xiàng)進(jìn)行檢索,生成動(dòng)態(tài)訪問(wèn)控制列 表,其中,所述動(dòng)態(tài)訪問(wèn)控制列表的字段包括序號(hào)、類(lèi)別、規(guī)則名稱(chēng)、激活狀態(tài)標(biāo)志以及匹配 函數(shù)首地址。
[0010] 作為一種改進(jìn)的方案,所述對(duì)所述ACL命令庫(kù)中處于激活狀態(tài)的ACL命令項(xiàng)進(jìn)行 檢索的步驟之后還包括下述步驟:
[0011] 對(duì)檢索到得ACL命令項(xiàng)按照預(yù)先定義的規(guī)則進(jìn)行優(yōu)先級(jí)排序。
[0012] 作為一種改進(jìn)的方案,所述動(dòng)態(tài)訪問(wèn)控制列表的字段還包括優(yōu)先級(jí)。
[0013] 作為一種改進(jìn)的方案,所述命令規(guī)則包括命令主規(guī)則和命令子規(guī)則,其中:
[0014] 所述命令主規(guī)則包括MC地址規(guī)則、以太網(wǎng)類(lèi)型規(guī)則、IP協(xié)議規(guī)則、IP地址規(guī)則、 TCP標(biāo)志位規(guī)則以及端口規(guī)則;
[0015] 所述MC地址規(guī)則、所述IP地址規(guī)則以及所述端口規(guī)則分別包括若干個(gè)命令子規(guī) 則。
[0016] 作為一種改進(jìn)的方案,所述MAC地址規(guī)則和所述以太網(wǎng)類(lèi)型規(guī)則屬于所述數(shù)據(jù)鏈 路層輸入命令,所述IP協(xié)議規(guī)則和所述IP地址規(guī)則屬于所述網(wǎng)絡(luò)層輸入命令,所述TCP標(biāo) 志位規(guī)則以及端口規(guī)則屬于傳輸層輸入命令。
[0017] 作為一種改進(jìn)的方案,所述生成動(dòng)態(tài)訪問(wèn)控制列表的步驟之后還包括下述步驟:
[0018] 當(dāng)接收到用戶再次輸入的ACL命令時(shí),繼續(xù)執(zhí)行對(duì)所述ACL命令進(jìn)行類(lèi)別解析,并 生成所述ACL命令所對(duì)應(yīng)的類(lèi)別下的命令規(guī)則的步驟,同時(shí),將所述ACL命令庫(kù)中再次處于 激活狀態(tài)的ACL命令項(xiàng)更新到初次生成的所述動(dòng)態(tài)訪問(wèn)控制列表中。
[0019] 本發(fā)明的另一目的在于提供一種基于動(dòng)態(tài)訪問(wèn)控制列表的數(shù)據(jù)包處理方法,所述 方法包括下述步驟:
[0020]OLT設(shè)備的主處理器對(duì)生成的動(dòng)態(tài)訪問(wèn)控制列表進(jìn)行解析,并保存,所述動(dòng)態(tài)訪問(wèn) 控制列表的字段包括序號(hào)、類(lèi)別、規(guī)則名稱(chēng)、激活狀態(tài)標(biāo)志以及匹配函數(shù)首地址;
[0021 ] 所述OLT設(shè)備的交換芯片和MAC芯片按照所述動(dòng)態(tài)訪問(wèn)控制列表所記載的字段信 息,分別對(duì)接收到的數(shù)據(jù)包進(jìn)行ACL命令類(lèi)別解析,所述ACL命令的類(lèi)別包括數(shù)據(jù)鏈路層數(shù) 據(jù)輸入命令、網(wǎng)絡(luò)層數(shù)據(jù)輸入命令以及傳輸層數(shù)據(jù)輸入命令;
[0022] 若所述ACL命令的類(lèi)型包含數(shù)據(jù)鏈路層輸入命令,則所述交換芯片或所述MAC芯 片根據(jù)所述動(dòng)態(tài)訪問(wèn)控制列表中,所述數(shù)據(jù)鏈路層輸入命令所對(duì)應(yīng)的字段信息,調(diào)用相應(yīng) 的規(guī)則函數(shù)進(jìn)行匹配,并對(duì)數(shù)據(jù)包進(jìn)行應(yīng)用于PON接口或NNI接口的操作;
[0023] 若所述ACL命令的類(lèi)型包含網(wǎng)絡(luò)層輸入命令或傳輸層輸入命令,所述交換芯片或 所述MAC芯片則將所述數(shù)據(jù)包傳送給所述主處理器,所述主處理器根據(jù)所述動(dòng)態(tài)訪問(wèn)控制 列表中,所述網(wǎng)絡(luò)層輸入命令或傳輸層輸入命令所對(duì)應(yīng)的字段信息,調(diào)用相應(yīng)的規(guī)則函數(shù) 進(jìn)行匹配,并將匹配的結(jié)果反饋給所述交換芯片或所述MAC芯片,所述交換芯片或所述MAC 芯片對(duì)數(shù)據(jù)包進(jìn)行應(yīng)用于PON接口或NNI接口的操作。
[0024] 在本發(fā)明實(shí)施例中,接收用戶輸入的與待生成的動(dòng)態(tài)訪問(wèn)控制列表相對(duì)應(yīng)的ACL命令;對(duì)ACL命令進(jìn)行類(lèi)別解析,并生成ACL命令所對(duì)應(yīng)的類(lèi)別下的命令規(guī)則;將解析得到 的ACL命令所對(duì)應(yīng)的類(lèi)別參數(shù)輸入存儲(chǔ)到類(lèi)別標(biāo)志寄存器中,同時(shí),控制在ACL命令庫(kù)中將 ACL命令的狀態(tài)修改為激活狀態(tài);對(duì)ACL命令庫(kù)中處于激活狀態(tài)的ACL命令項(xiàng)進(jìn)行檢索,生 成動(dòng)態(tài)訪問(wèn)控制列表,該動(dòng)態(tài)訪問(wèn)控制列表為不同用戶靈活定制各種網(wǎng)絡(luò)訪問(wèn)條件提供可 能,保障用戶數(shù)據(jù)的合法性,同時(shí),提高對(duì)報(bào)文數(shù)據(jù)包的處理效率,保障網(wǎng)絡(luò)安全。
【附圖說(shuō)明】
[0025] 圖1是本發(fā)明提供的OLT設(shè)備動(dòng)態(tài)訪問(wèn)控制列表生成方法的實(shí)現(xiàn)流程圖;
[0026] 圖2是本發(fā)明提供的OLT設(shè)備的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0027] 為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì) 本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并 不用于限定本發(fā)明。
[0028] 圖1示出了本發(fā)明實(shí)施例提供的OLT設(shè)備動(dòng)態(tài)訪問(wèn)控制列表生成方法的實(shí)現(xiàn)流程 圖,其具體的步驟如下所述:
[0029] 在步驟SlOl中,接收用戶輸入的與待生成的動(dòng)態(tài)訪問(wèn)控制列表相對(duì)應(yīng)的ACL命 令,該ACL命令的類(lèi)別包括數(shù)據(jù)鏈路層數(shù)據(jù)輸入命令、網(wǎng)絡(luò)層數(shù)據(jù)輸入命令以及傳輸層數(shù) 據(jù)輸入命令。
[0030] 在步驟S102中,對(duì)ACL命令進(jìn)行類(lèi)別解析,并生成ACL命令所對(duì)應(yīng)的類(lèi)別下的命 令規(guī)則,命令規(guī)則設(shè)有控制數(shù)據(jù)包通過(guò)與否的匹配原則,匹配原則包括等于、大于等于、小 于、小于等于以及端口范圍。
[0031] 其中,該匹配原則為:操作允許為允許匹配該匹配原則的數(shù)據(jù)包通過(guò),操作禁止為 禁止匹配該匹配原則的數(shù)據(jù)包通過(guò)。
[0032] 在步驟S103中,將解析得到的ACL命令所對(duì)應(yīng)的類(lèi)別參數(shù)輸入存儲(chǔ)到類(lèi)別標(biāo)志寄 存器中,同時(shí),控制在ACL命令庫(kù)中將ACL命令的狀態(tài)修改為激活狀態(tài)。
[0033] 在步驟S104中,對(duì)ACL命令庫(kù)中處于激活狀態(tài)的ACL命令項(xiàng)進(jìn)行檢索,生成動(dòng)態(tài) 訪問(wèn)控制列表,其中,動(dòng)態(tài)訪問(wèn)控制列表的字段包括序號(hào)、類(lèi)別、規(guī)則名稱(chēng)、激活狀態(tài)標(biāo)志以 及匹配函數(shù)首地址。
[0034] 在本發(fā)明實(shí)施例中,該動(dòng)態(tài)訪問(wèn)控制列表為不同用戶靈活定制各種網(wǎng)絡(luò)訪問(wèn)條件 提供可能,保障用戶數(shù)據(jù)的合法性,同時(shí),提高對(duì)報(bào)文數(shù)據(jù)包的處理效率,保障網(wǎng)絡(luò)安全。
[0035] 其中,在上述步驟S104中,對(duì)ACL命令庫(kù)中處于激活狀態(tài)的ACL命令項(xiàng)進(jìn)行檢索 的步驟之后還包括下述步驟:
[0036] 對(duì)檢索到得ACL命令項(xiàng)按照預(yù)先定義的規(guī)則進(jìn)行優(yōu)先級(jí)排序;
[0037] 同時(shí),對(duì)應(yīng)地,上述動(dòng)態(tài)訪問(wèn)控制列表的字段還包括ACL命令的優(yōu)先級(jí)。
[0038] 在該實(shí)施例中,上述用戶輸入與待生成的動(dòng)態(tài)訪問(wèn)控制列表相對(duì)應(yīng)的ACL命令的 方式可以有兩種,即通過(guò)網(wǎng)頁(yè)方式輸入和通過(guò)命令方式輸入,兩者均能滿足ACL命令的輸 入,其中:
[0039] 在網(wǎng)頁(yè)方式的界面上可以通過(guò)如下表格進(jìn)行ACL命令的輸入:
[0040]
[0041] 其中,在該表格中,ACL索引為ACL的命令編號(hào),ACL名稱(chēng)為ACL命令的名字,ACL 類(lèi)型為數(shù)據(jù)鏈路層數(shù)據(jù)輸入命令、網(wǎng)絡(luò)層數(shù)據(jù)輸入命令以及傳輸層數(shù)據(jù)輸入命令類(lèi)型,ACL 規(guī)則,即ACL命令所對(duì)應(yīng)的類(lèi)別下的命令規(guī)則的編號(hào)。
[0042] 同樣,通過(guò)命令的方式輸入可以采用如下格式:
[0043] Access list I permit source 192.168.32. I 0;
[0044] 其中,該命令的含義為:允許源IP地址是192. 168. 32. I的報(bào)文通過(guò),下述有具體 的實(shí)現(xiàn)過(guò)程的說(shuō)明,在此不再贅述。
[0045] 在本發(fā)明實(shí)施例中,根據(jù)常規(guī)的約定,將ACL命令分為三種類(lèi)型的命令,即數(shù)據(jù)鏈 路層數(shù)據(jù)輸入命令、網(wǎng)絡(luò)層數(shù)據(jù)輸入命令以及傳輸層數(shù)據(jù)輸入命令,其中,每一個(gè)類(lèi)別的 ACL命令下都包含至少一個(gè)命令規(guī)則,其中:
[0046] 上述命令規(guī)則包括命令主規(guī)則和命令子規(guī)則,命令子規(guī)則作為命令主規(guī)則的下級(jí) 規(guī)則存在,其中:
[0047] 命令主規(guī)則包括MC地址規(guī)則、以太網(wǎng)類(lèi)型規(guī)則、IP協(xié)議規(guī)則、IP地址規(guī)則、TCP 標(biāo)志位規(guī)則以及端口規(guī)則;
[0048] 其中,MC地址規(guī)則、IP地址規(guī)則以及端口規(guī)則分別包括若干個(gè)命令子規(guī)則。
[0049] 在該實(shí)施例中,MAC地址規(guī)則和以太網(wǎng)類(lèi)型規(guī)則屬于數(shù)據(jù)鏈路層輸入命令,IP協(xié) 議規(guī)則和IP地址規(guī)則屬于網(wǎng)絡(luò)層輸入命令,TCP標(biāo)志位規(guī)則以及端口規(guī)則屬于傳輸層輸入 命令。
[0050] 從上述內(nèi)容可知,本發(fā)明定義三種命令類(lèi)型以及六種命令規(guī)則,其中,為了便于說(shuō) 明和實(shí)際的程序控制,可以對(duì)命令主規(guī)則和命令子規(guī)則進(jìn)行分別編號(hào)定義,即:
[0051] 命令主規(guī)則1:
[0052]ACL命令名稱(chēng)為MACAddress,該ACL命令的類(lèi)型為數(shù)據(jù)鏈路層輸入命令,其中,其 包含4個(gè)命令子規(guī)則,具體如下表所示:
[0055] 命令主規(guī)則2:
[0056]ACL命令名稱(chēng)為EtherType,該ACL命令屬于數(shù)據(jù)鏈路層輸入命令,其中,其包括一 個(gè)命令子規(guī)則,其具體如下表所示:
[0057]
[0065] 命令主規(guī)則5 :
[0066] ACL命令的名稱(chēng)為Flags,該ACL命令的類(lèi)型為傳輸層輸入命令,其包括一個(gè)命令 子規(guī)則,其具體如下表所示:
[0068] 命令主規(guī)則6 :
[0069] ACL命令的名稱(chēng)為Port,該ACL命令屬于傳輸層輸入命令,其中,其包含