System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本專利技術屬于通信,尤其涉及一種acl優化方法、系統、電子設備和計算機存儲介質。
技術介紹
1、acl是access?control?list的簡稱,中文是訪問控制列表。acl包含了一系列條件語句,實際上是一系列包含“允許”或者“拒絕”的規則。換句話說,acl是人為定義的一組或者幾組規則,以便設備判斷是否執行用戶規定的動作。
2、當一個數據包進入網絡設備時,設備會按照配置的acl規則進行匹配。匹配過程通常從ruleid最小的規則開始,并且一旦找到匹配的規則,就會停止進一步查找并根據該規則執行相應動作(如允許或拒絕)。因此,規則的排列順序對于數據包如何被處理非常重要。
3、現有技術中,步長決定了系統為acl規則自動分配id時相鄰兩個規則id之間的差值。設置適當的步長可以讓用戶更靈活地添加、刪除或修改現有acl中的規則而不必擔心因重新排序而引起的混亂。例如,如果初始設置了較小的步長但后來發現需要頻繁插入新規則,則可以通過調整步長來留出足夠的空間供將來使用。
4、現有技術存在以下技術問題:
5、1.acl規則按照ruleid從小到大進行匹配,當前的匹配過程是線性的,即從第一個規則開始逐一檢查,直到找到匹配的規則或遍歷完所有規則。這種情況下,最壞的時間復雜度為o(n),其中n是acl規則的數量。隨著規則數量的增長,線性搜索方式會變得越來越慢,影響數據包處理速度和整體網絡性能。
6、2.當需要在現有規則之間插入新規則時,需要調整步長來騰出空間。而直接修改步長會導致所有受影響的規則
技術實現思路
1、本專利技術提供了一種acl優化方法、系統、電子設備和計算機存儲介質,旨在解決上述現有技術中存在的隨著規則數量的增長,線性搜索方式會變得越來越慢,影響數據包處理速度和整體網絡性能;以及重新編號過程中,原有的規則會出現暫時失效,導致短暫的服務中斷的技術問題。
2、本專利技術解決上述技術問題的技術方案如下:一種acl優化方法,包括:
3、構建匹配哈希表和動作哈希表,其中,所述匹配哈希表中存儲著acl規則中匹配字段和對應的規則編碼的映射,動作哈希表中存儲著acl規則中規則編碼和對應的動作的映射;
4、當數據包到達時,獲取所述數據包的所有的匹配字段,將所有的匹配字段與所述匹配哈希表進行匹配,對應得到所有的規則編碼,將所有的規則編碼合并成一個位圖;
5、對所述位圖進行優先級處理,得到優先級最高的規則編碼;
6、將優先級最高的規則編碼作為鍵,在動作哈希表中查找對應的動作,并根據該動作對數據包進行處理。
7、采用上述技術方案的有益效果為:本專利技術通過使用哈希表進行匹配,提高了匹配效率,從之前的o(n)時間復雜度優化到接近o(1)的時間復雜度。減少了數據包處理的延遲,提升了網絡性能。
8、進一步,上述構建匹配哈希表和動作哈希表具體包括:
9、獲取所有的acl規則并進行預處理,得到acl規則的匹配字段、規則編碼和動作;
10、將每個所述acl規則的匹配字段作為鍵,對應的規則編碼作為值存儲至所述匹配哈希表中;將每個所述acl規則的規則編碼作為鍵,對應的動作作為值存儲至所述動作哈希表中。
11、采用上述技術方案的有益效果為:本專利技術通過預處理和哈希表的構建,使得acl規則的添加、刪除和修改更加高效,不會因為acl規則數量的變化而顯著影響性能。
12、進一步,上述所述acl規則的匹配字段包括:源ip、目的ip、源端口、目的端口和協議。
13、采用上述技術方案的有益效果為:本專利技術包含了常見的匹配字段,能夠滿足大多數網絡流量控制的需求。
14、進一步,上述所述匹配哈希表包括:源ip哈希表、目的ip哈希表、源端口哈希表、目的端口哈希表和協議哈希表;其中,源ip哈希表用于存儲源ip地址和對應的規則編碼;目的ip哈希表用于存儲目的ip地址和對應的規則編碼;源端口哈希表用于存儲源端口號和對應的規則編碼;目的端口哈希表用于存儲目的端口號和對應的規則編碼;協議哈希表用于存儲協議類型和對應的規則編碼。
15、采用上述技術方案的有益效果為:本專利技術通過多個子哈希表分別存儲不同的匹配字段,進一步提高了查找效率。
16、進一步,上述所述將所有的規則編碼合并成一個位圖具體包括:
17、將每個匹配到的規則編碼轉換為二進制表示,并在位圖中相應的位置設置為1。
18、采用上述技術方案的有益效果為:本專利技術通過位圖的方式快速合并和表示多個匹配規則,簡化了后續的優先級處理。
19、進一步,上述對所述位圖進行優先級處理具體包括:
20、通過對所述位圖執行b?itmap&=-b?itmap操作來獲取所述位圖中最低位的1,得到優先級最高的規則編碼。
21、采用上述技術方案的有益效果為:本專利技術確保了規則編號的優先級處理高效且準確,避免了復雜的排序和遍歷操作。
22、進一步,上述所述動作包括drop和pass,其中,若動作為drop,則丟棄該數據包,若動作為pass,則允許該數據包通過。
23、采用上述技術方案的有益效果為:本專利技術通過動作定義,提供了流量控制功能,滿足了大多數網絡安全和管理需求。
24、第二方面,本專利技術為了解決上述技術問題還提供了一種acl優化系統,包括:
25、哈希表構建模塊,用于構建匹配哈希表和動作哈希表,其中,所述匹配哈希表中存儲著acl規則中匹配字段和對應的規則編碼的映射,動作哈希表中存儲著acl規則中規則編碼和對應的動作的映射;
26、匹配模塊,用于當數據包到達時,獲取所述數據包的所有的匹配字段,將所有的匹配字段與所述匹配哈希表進行匹配,對應得到所有的規則編碼,將所有的規則編碼合并成一個位圖;
27、優先級處理模塊,用于對所述位圖進行優先級處理,得到優先級最高的規則編碼;
28、動作模塊,用于將優先級最高的規則編碼作為鍵,在動作哈希表中查找對應的動作,并根據該動作對數據包進行處理。
29、第三方面,本專利技術為了解決上述技術問題還提供了一種電子設備,該電子設備包括存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機程序,處理器執行該計算機程序時實現本申請的acl優化方法。
30、第四方面,本專利技術為了解決上述技術問題還提供了一種計算機可讀存儲介質,該計算機可讀存儲介質上存儲有計算機程序,該計算機程序被處理器執行時實現本申請的acl優化方法。
31、與現有技術相比,本專利技術具有如下優點:
32、1.本專利技術通過使用哈希表進行匹配,提高了匹配效率,從之前的o(n)時間復雜度優化到接近o(1)的時間復雜度。減少了數據包處理的延遲,提升了網絡性能。
33、本文檔來自技高網...
【技術保護點】
1.一種ACL優化方法,其特征在于,包括:
2.根據權利要求1所述的一種ACL優化方法,其特征在于,構建匹配哈希表和動作哈希表具體包括:
3.根據權利要求1所述的一種ACL優化方法,其特征在于,所述ACL規則的匹配字段包括:源IP、目的IP、源端口、目的端口和協議。
4.根據權利要求3所述的一種ACL優化方法,其特征在于,所述匹配哈希表包括:源IP哈希表、目的IP哈希表、源端口哈希表、目的端口哈希表和協議哈希表;其中,源IP哈希表用于存儲源IP地址和對應的規則編碼;目的IP哈希表用于存儲目的IP地址和對應的規則編碼;源端口哈希表用于存儲源端口號和對應的規則編碼;目的端口哈希表用于存儲目的端口號和對應的規則編碼;協議哈希表用于存儲協議類型和對應的規則編碼。
5.根據權利要求1所述的一種ACL優化方法,其特征在于,所述將所有的規則編碼合并成一個位圖具體包括:
6.根據權利要求5所述的一種ACL優化方法,其特征在于,對所述位圖進行優先級處理具體包括:
7.根據權利要求1所述的一種ACL優化方法,其特征在于,所述動作
8.一種ACL優化系統,其特征在于,包括:
9.一種電子設備,其特征在于,包括存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機程序,所述處理器執行所述計算機程序時實現權利要求1-7中任一項所述的方法。
10.一種計算機存儲介質,其特征在于,所述計算機存儲介質上存儲有計算機程序,所述計算機程序被處理器執行時實現權利要求1-7中任一項所述的方法。
...【技術特征摘要】
1.一種acl優化方法,其特征在于,包括:
2.根據權利要求1所述的一種acl優化方法,其特征在于,構建匹配哈希表和動作哈希表具體包括:
3.根據權利要求1所述的一種acl優化方法,其特征在于,所述acl規則的匹配字段包括:源ip、目的ip、源端口、目的端口和協議。
4.根據權利要求3所述的一種acl優化方法,其特征在于,所述匹配哈希表包括:源ip哈希表、目的ip哈希表、源端口哈希表、目的端口哈希表和協議哈希表;其中,源ip哈希表用于存儲源ip地址和對應的規則編碼;目的ip哈希表用于存儲目的ip地址和對應的規則編碼;源端口哈希表用于存儲源端口號和對應的規則編碼;目的端口哈希表用于存儲目的端口號和對應的規則編碼;協議哈希表用于存儲協議類型和對應的規則編碼。
5.根據權利要求1所述的一種ac...
【專利技術屬性】
技術研發人員:曾璐,劉星,劉昕,盧胡俊,陳亞娟,陳都,
申請(專利權)人:烽火通信科技股份有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。