前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >​腾讯TGW网关团队最新研究成果入选NeurIPS 2023

​腾讯TGW网关团队最新研究成果入选NeurIPS 2023

作者头像
腾讯技术工程官方号
发布2024-01-17 09:42:20
2600
发布2024-01-17 09:42:20
举报

近日,NeurIPS 2023(Neural Information Processing Systems)神经信息处理系统大会于公布论文录用结果,腾讯TGW网关团队、腾讯DDoS防护团队、清华大学联合发表的论文“Metis: Understanding and Enhancing In-Network Regular Expressions”成功入选,并获得学术界和工业界的高度评价。

Metis 提供了一种 AI 方案,可以实现快速、准确的网络包识别和处理,并且无需像正则匹配那样针对每一个场景设置一条规则,具有更好的通用性。此外,我们利用知识提取技术, 将Metis 模型小型化,成功部署到TGW这种资源紧缺的网络设备上。

本文将就本次腾讯TGW网关团队入选的论文--“Metis: Understanding and Enhancing In-Network Regular Expressions”进行解读,欢迎大家进行技术交流与合作。

1、研究背景与动机

图 1 TGW网关在腾讯云中的位置

TGW(Tencent GateWay)网关是腾讯公司公网桥头堡,承担着公网流量的分发和安全防护任务。目前承担了腾讯的绝大部分公网带宽。在日常的运营中,无时无刻不在遭受着来自世界各地恶意流量的攻击。因此,为了保证业务的稳定接入,快速发现异常流量并进行异常流量拒止是非常重要的。

当前异常流量监测通常使用两种主要威胁检测方法中的一种或两种:基于特征符的检测或基于异常的检测。

基于特征符的方法会维护一个攻击特征符数据库,并将网络数据包与之进行比对。如果数据包触发了与其中一个特征符的匹配,防护系统就会采取行动。为了确保有效性,必须定期使用新的威胁信息更新特征符数据库,以便应对新网络攻击的出现和现有攻击的演变。尚未进行特征符分析的全新攻击可以躲过基于特征符的异常检测。

基于特征符的方法需要将数据与特征符进行匹配,通常使用的方法是“正则匹配”(Regular expressions matching, RE)。正则匹配方法具有匹配准度高,易于理解与应用的优点。但缺点也很明显:非常消耗计算和存储资源,并且泛化能力差。

随着近些年神经网络研究热潮的兴起,很多研究者开始将神经网络技术应用到异常流量监测之中。但神经网络解决方案通常存在“冷启动”问题:即如果没有足够的训练数据,神经网络的初始性能是很差的。此外,神经网络模型通常比较复杂,需要高并发的计算单元和较大的内存空间,比较适合部署在GPU设备上。但通常网络设备的计算单元是基于CPU实现的,并且内存空间比较有限,尤其是在一些新型的网络设备上,如P4交换机,其存储空间通常只有几十MB。这就使得在网络设备上部署神经网络模型变得比较困难。

Metis提出了一种AI模型来替代RE实现异常流量监测,解决了神经网络通常存在的“冷启动”问题,并实现了AI模型的小型化,成功部署到了P4交换机上,做到了业界首创。

2、Metis技术架构

图 2 Metis技术架构图

Metis首先将RE规则转换成一系列的有限状态机(Deterministic finite automaton, DFA),并根据这些DFA训练出比特水平的RNN( Byte-level RNNs, BRNN),在模型设计上,将已有的基于RE的专家知识融合到BRNN中,解决了一般RNN的”冷启动“问题,并且随着标签数据量的提升,BRNN的准确性会不断提升。BRNN虽然可以进行网络包的分类,但是模型比较重,占用计算资源较大,无法直接部署到网络转发设备中。为了适配网络设备资源紧缺的特点,我们利用知识蒸馏(Knowledge distillation, KN)技术,将BRNN转换为了Pooling soft random forests (PSRFs)模型。该模型继承了BRNN的训练效果,可取得近似的分类性能,但资源占用却会大大降低,使得AI模型可以部署到资源紧缺型的网络设备中。实验结果表明,使用PSRF模型在可编程交换机上对网络包进行分类时,可以取得相对于使用正则匹配74倍之多的吞吐量。

图 3 Metis与现有神经网络算法的识别准确率对比

图3展示了Metis的数据识别准确率,图中显示Metis在没有训练数据的时候可以取得与RE基本相同的识别准确率,随着训练数据量的提升,其识别准确率也随之上升。

3、Metis业界影响力与落地实践

Metis的成果受到了NeurIPS专家评委的充分肯定。

审稿人1认为这是一篇出色的论文,就解决RE在网络应用中存在的问题而言,是一种创造性的解决方案。Metis在有充分数据的情况下可以取得比RE更强的性能。随着数据量的提升,Metis的识别准确率也远超现有方案。

审稿人2同样认为这篇论文有出众的贡献,提出的解决方案是新颖并可靠的。Metis将现有的RE专家知识应用到RNN设计中,解决了一般神经网络常遇到的“冷启动”问题。Metis可以转换为轻量型的PSRF模型,解决了在资源受限的网络设备上的部署问题。

除此之外,Metis可以在腾讯TGW的安全防护能力建设中节省大量成本。其可在如下的应用场景中大显身手。

3.1、Metis在CDN接入场景中的应用

图 4 腾讯CDN接入流量转发示意图

用户在使用腾讯CDN服务时,需要首先接入腾讯TGW网关。暴露在公网的业务面临严峻的网络攻击威胁,TGW网关和腾讯DDoS防护系统一起对异常流量进行监测。在上述场景中,TGW与安全设备部署在一起,将流量转发给DDoS防护系统,防护系统对异常流量进行识别和防护后,再将正常流量发回TGW。DDoS防护系统通常基于规则来实现异常网络流量识别,为了应对CDN庞大的网络流量,该系统需要常态部署超2w核的计算资源用于安全防护。

Metis模型可以部署到DDoS防护系统中,作为系统的防护引擎之一。成熟后甚至可完全替代正则匹配引擎。根据测算,DDoS安全防护在处理正则匹配的情况下,处理性能会下降60%。利用Metis技术替换现有匹配引擎,防护系统的处理性能将提升1.3倍,处理正则规则的性能损耗将从60%降低至28%,为此可节约32%,约0.64w核计算资源,减少大量的计算资源,降低腾讯云的整体运营成本。

3.2、Metis在基于P4转发的场景中的应用

随着5G的应用发展,高带宽低延迟的诉求会越来越强烈,网关设备作为流量汇聚点,更能深刻感受到这种压力。发展了近十年的CPU+DPDK模式,在性能和成本双重压力下,也面临越来越大的挑战。我们结合TGW业务需求,经过技术调研,最后采用了P4+Tofino芯片(TF芯片)可编程交换机作为TGW的下一代网关。

图 5 基于P4实现的TGW下一代网关架构示意图

图5是使用P4替换x86 TGW架构示意图。长期的原型部署和验证表明使用P4+Tofino芯片替换原来的x86 CPU+DPDK的可编程交换机后,成本大约是原来的60%。重构的TGW将带来转发性能的大幅提升,TF芯片转发性能可以达到256字节小包限速,整机大约1Tpps的转发能力,这个性能远高于基于x86 CPU的软件实现性能。Metis小型化之后,可以直接部署到P4设备上,在转发过程中实现实时的IDS,无需将流量传一份到第三方检测设备,将可以大大降低安全防护的成本。

实验验证表明,Metis部署到P4之后,在实现IDS的同时,可以取得6971100pps的吞吐量。相对而言,在32核CPU设备上部署基于RE的异常流量监测方法,仅可以取得9450pps的吞吐量,差距有74倍之多。

附录

1、NeurIPS 作为当前全球最负盛名的AI学术会议之一,通常在每年12月由NeurIPS基金会主办。大会讨论的内容包含深度学习、计算机视觉、大规模机器学习、学习理论、优化、稀疏理论等众多细分领域。

2、P4是一种网络数据面编程语言的格式,其目的是统一数据面的编程结构,屏蔽不同硬件制造商间的差异。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2024-01-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 腾讯技术工程 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、研究背景与动机
  • 2、Metis技术架构
  • 3、Metis业界影响力与落地实践
    • 3.1、Metis在CDN接入场景中的应用
      • 3.2、Metis在基于P4转发的场景中的应用
      • 附录
      相关产品与服务
      DDoS 防护
      DDoS 防护(Anti-DDoS)具有全面、高效、专业的 DDoS 防护能力,为企业组织提供 DDoS 高防包、DDoS 高防 IP 等多种 DDoS 解决方案,应对 DDoS 攻击问题。通过充足、优质的 DDoS 防护资源,结合持续进化的“自研+AI 智能识别”清洗算法,保障用户业务的稳定、安全运行。防护场景覆盖游戏、互联网、视频、金融、政府等行业。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档