网络通信 频道

“并发连接数”指导防火墙选型

并发连接数是防火墙最常见的参数,是防火墙、代理服务器等设备的主要性能指标之一。在目前市面上常见防火墙设备的说明书中大家可以看到,从低端设备的500、1000个并发连接,一直到高端设备的数万、数十万并发连接,存在着好几个数量级的差异。那么,并发连接数究竟是一个什么概念呢?它的大小会对用户的日常使用产生什么影响呢?现在,笔者将就这几个问题做一些比较深入的分析与探讨。
  一、什么是并发连接数
  并发连接数是指防火墙或代理服务器对其业务信息流的处理能力,是防火墙能够同时处理的点对点连接的最大数目,它反映出防火墙设备对多个连接的访问控制能力和连接状态跟踪能力,这个参数的大小直接影响到防火墙所能支持的最大信息点数。
  
  需要阐明的一点是,“连接”和“点对点连接”并没有局限于狭义的TCP连接(Connection-Oriented)或信息点—信息点通信(Point-Point Communication),而是泛指IP层或IP层以上各种传输层、会话层和应用层的信息流,所以它同样也包括了UDP会话; 另外,多址广播组的通信同样也被按照多播源(多播组地址)的形态归纳成一个连接进行处理。
  
  二、并发连接表中的内容
  
  并发连接表是防火墙用以存放并发连接信息的地方,它可在防火墙系统启动后动态分配进程的内存空间,其大小也就是防火墙所能支持的最大并发连接数。不同的厂家在各自的防火墙设备中对该数据表有不同的数据结构实现,但从普遍意义上来看,基于状态检测的防火墙并发连接表中每一个表项至少包含以下内容:源IP地址、源端口号、目的IP地址、目的端口号、协议类型、连接状态、流量统计和时间戳信息、NAT转换信息、连接许可信息、身份认证信息和VPN通道相关信息(如果支持VPN的话)。由于表项中容纳了大量的连接信息,因此每个表项可能占用200~400字节的内存空间,这对防火墙系统的整个内存资源来说是一个不容忽视的消耗。
  
  三、对系统性能的影响
  
  大的并发连接表可以增大防火墙最大并发连接数,允许防火墙支持更多的客户终端; 但是与此同时,过大的并发连接表也会带来一定的负面影响:
  
  1.大的并发连接表会造成大量内存空间的消耗和浪费;
  
  2.在相同的数据结构和检索情况下,大的并发连接表会增大防火墙系统对表项的搜索时间,增大防火墙对报文处理的转发延迟;
  
  3.不考虑客户网络客观情况而盲目增大系统并发连接表,会造成表空间继而内存资源的大量闲置浪费;
  
  4.由于并发连接表对内存的占用,会造成防火墙系统得不到足够的内存资源。尽管虚拟内存可以解决内存的紧张问题,但它依赖于硬盘与内存之间的数据映射切换,在读写速度上难以与物理真实内存相提并论。
  
  四、所受的限制
  
  尽管看上去,防火墙等类似产品的并发连接数似乎是越大越好。
  
  1.并发连接数的增大意味着对系统内存资源的消耗
  
  以每个并发连接表项占用300B计算,1000个并发连接将占用300B×1000×8bit/B≈2.3Mb内存空间,10000个并发连接将占用23Mb内存空间,100000个并发连接将占用230Mb内存空间,而如果真的试图实现1000000个并发连接的话(有的厂家在其宣传资料中声称其产品可以支持1000000个并发连接),那么,这个产品就需要提供2.24Gb内存空间!真是难以置信。
  
  2.并发连接数的增大应当充分考虑CPU的处理能力
  
  CPU的主要任务是把网络上的流量从一个网段尽可能快速地转发到另外一个网段上,并且在转发过程中对此流量按照一定的访问控制策略进行许可检查、流量统计和访问审计等操作,这都要求防火墙对并发连接表中的相应表项进行不断的更新读写操作。如果不顾CPU的实际处理能力而贸然增大系统的并发连接表,势必影响防火墙对连接请求的处理延迟,造成某些连接超时,让更多的连接报文被重发,进而导致更多的连接超时,最后形成雪崩效应,致使整个防火墙系统崩溃。
  
  3.物理链路的实际承载能力将严重影响防火墙发挥出其对海量并发连接的处理能力
  
  虽然目前很多防火墙都提供了10/100/1000Mbps的网络接口,但是,由于防火墙通常都部署在Internet出口处,在客户端PC与目的资源中间的路径上,总是存在着瓶颈链路——该瓶颈链路可能是2Mbps专线,也可能是512Kbps乃至64Kbps的低速链路。这些拥挤的低速链路根本无法承载太多的并发连接,所以即便是防火墙能够支持大规模的并发访问连接,也无法发挥出其原有的性能。
  
  五、应用中的并发连接峰值
  
  有鉴于此,我们应当根据网络环境的具体情况和个人不同的上网习惯来选择适当规模的并发连接表。因为不同规模的网络会产生大小不同的并发连接,而用户习惯于何种网络服务以及如何使用这些服务,同样也会产生不同的并发连接需求。
  
  下面,我们列举1个常见且典型的网络访问行为,并统计了其所发出的连接数。
  
  WWW访问——测试站点(http://www.sohu.com)
  
  附图是对Sohu首页(http://www.sohu.com) 的HTTP流量统计截屏图。
  
  以3小时为间隔,对该站点分时段进行多次访问,我们得到了以下几个统计数字(如表1所示)。
  
  表1:统计分时段访问次数
   
  事实上,在各常见网络协议中,产生并发连接数最多的业务是Web浏览(HTTP协议),而产生并发连接相对较少的协议则当属FTP和E-mail应用。
  
  但是,不能简单的以一个协议或应用产生的最大并发连接数来断言它对防火墙并发连接表的占用率。这是因为并发连接表的占用率取决于2个因素: 其一是产生的并发连接表项,其二是该并发连接表项在表中维持存在的时间,即该连接存活的时间。之所以要引入并发连接维持时间,是因为每个连接对并发连接表项的占用不是永久的,而是在连接终止后由防火墙自动释放该表项,从而可以用来记录其他新的连接信息。
  
  表2:按不同协议计算连接维持时间
   
  所以,为了正确反映并发连接表的占用情况,在下文中将给出并发连接表占用率的计算公式。
  
  六、并发连接表的占用率计算
  
  首先给出公式1,如下所示
  
  某应用程序对并发连接表的占用率 = ∮t2 t1n(t) ×(t-t1)。
  
  其中,n是在某个时间段[t1,t2]内该应用程序产生的并发连接数目实时统计数目,它是t的函数,t是位于此时间段[t1,t2]内的一个时间点。
  
  经过对公式1的简化,可以对并发连接表占用率按照下面的公式2进行计算。
  
  某应用程序对并发连接表的占用率 =并发连接数×连接维持时间。
  
  在公式2中,连接维持时间会被防火墙按照不同的协议(TCP、UDP或IP)进行不同的计算,如表2所示。
  
  现在结合公式2,重新认识在本文第4部分中所列出的各种应用对防火墙并发连接表的占用情况。
  
  从表3中可以看出,虽然网络客户端程序(如IE浏览器)可能会在用户PC机上长时间运行,但是其所产生的连接却只存活很短的时间,因此这些应用所产生的连接对防火墙并发连接表的占用是很短暂的。根据不同的链路状况和服务器的响应时间,IE所产生的HTTP连接维持时间大约在0~10s之间。过长的连接维持时间通常意味着服务器响应延迟或传输延迟过大,往往会令用户难以忍受,进而放弃此次连接请求。
  表3:客户端应用程序对并发连接表在时间上的占用情况
  
   现在假设一种极端情况:某用户同时运行了表3中所列出的所有应用程序,而且所有应用程序同时发出所有连接,则该用户产生的并发连接数将达到其峰值Sum_Peak=8.7+14+3+3.3+5+1=35,即WWW_Sohu+WWW_Sina+E-mail+FTP+OICQ+Telnet的并发连接总和峰值。这是一种非常极端的情况,通常在用户日常使用中很难出现。因为用户同时启动所有这些应用的可能性很小;即使同时启动了所有的应用,它们同时发出连接的概率也会非常小;网段中所有用户同时启动所有应用的可能性更小;网段中所有用户的全部应用同时发出连接没有实际意义上的可能性。
  
  在实际应用中,由于大多数连接的维持存活周期非常短,所以从统计角度上来说,并发连接数/每用户的等效数值Sum_Statistical = Sum_Peak×0.3将是一个非常充分、宽松的等效换算公式。因此,每个用户所需要的并发连接数=35×0.3=10.5个,这是一个比较合理、科学的统计估值。
  
  七、寻求客户投资和实际需求之间的平衡点
  
  高并发连接数的防火墙设备通常需要客户投资更多的设备,这是因为并发连接数的增大牵扯到数据结构、CPU、内存、系统总线和网络接口等多方面因素。如何在合理的设备投资和实际上所能提供的性能之间寻找一个黄金平衡点将是用户选择产品的一个重要任务。按照并发连接数来衡量方案的合理性是一个值得推荐的办法。
  
  以每个用户需要10.5个并发连接来计算,一个中小型企业网络(1000个信息点以下,容纳4个C类地址空间)大概需要10.5×1000=10500个并发连接,因此支持20000~30000最大并发连接的防火墙设备便可以满足需求;大型的企事业单位网络(比如信息点数在1000~10000之间)大概会需要105000个并发连接,所以支持100000~120000最大并发连接的防火墙就可以满足企业的实际需要; 而对于大型电信运营商和ISP来说,电信级的千兆防火墙(支持120000~200000个并发连接)则是恰当的选择。
  
  为较低需求而采用高端的防火墙设备将造成用户投资的浪费,同样为较高的客户需求而采用低端设备将无法达到预计的性能指标。利用网络整体上的并发连接需求来选择适当的防火墙产品可以帮助用户快速、准确的定位所需要的产品,避免对单纯某一参数“愈大愈好”的盲目追求,缩短设计施工周期,节省企业的开支。
  
  画外音
  
  在利用并发连接数指标选择防火墙产品的同时,产品的综合性能、厂家的研发力量、资金实力、企业的商业信誉和经营风险以及产品线的技术支持和售后服务体系等都应当纳入采购者的视野,将多方面的因素结合起来进行综合考虑,切不可盲目的听信某些厂家广告宣传中的大并发连接的宣传,要根据自己业务系统、企业规模、发展空间和自身实力等因素多方面考虑。

 

转载地址:http://www.netsp.com.cn/Article/netsafe/FW/200506/20050602132621.html

0
相关文章