Algorithm 什么数据结构可用于存储防火墙规则?

Algorithm 什么数据结构可用于存储防火墙规则?,algorithm,data-structures,firewall,Algorithm,Data Structures,Firewall,给定一个允许的防火墙规则列表,其中每个规则的形式如下 协议、端口范围、ip范围 存储这些规则的最佳数据结构是什么,这样我就可以有效地决定是否允许数据包通过。对于数据包,我有协议、端口、ip 换句话说,防火墙是如何实现的。AWS中如何实现安全组 注意:如果这是此类问题的错误论坛,我可以在哪里问这个问题?实际的数据结构将非常简单,只是一个对象数组,其中每个对象表示一个规则,并具有三个字段协议、端口范围、ip范围——我会想到规则的类型(拒绝、允许等)。当你截获一个请求时,你会得到它的协议等等,然后迭代

给定一个允许的防火墙规则列表,其中每个规则的形式如下

协议、端口范围、ip范围

存储这些规则的最佳数据结构是什么,这样我就可以有效地决定是否允许数据包通过。对于数据包,我有
协议、端口、ip

换句话说,防火墙是如何实现的。AWS中如何实现安全组


注意:如果这是此类问题的错误论坛,我可以在哪里问这个问题?

实际的数据结构将非常简单,只是一个对象数组,其中每个对象表示一个规则,并具有三个字段
协议、端口范围、ip范围
——我会想到规则的类型(拒绝、允许等)。当你截获一个请求时,你会得到它的协议等等,然后迭代列表,看看哪些规则是匹配的。基本的轮廓。然而,“防火墙是如何实现的?”这个问题(细节)当然是一个更大的问题,涉及到对网络的深入理解。“安全组是如何在AWS中实现的?”这个问题甚至更无法回答,而且是一个完全独立的问题。

当您有很多规则和大量流量时,为每个数据包迭代一个列表并不是一个好办法。您可能需要某种类型的决策树,它提供比迭代列表更好的性能。