首页> 中国专利> 应用交付设备大数据审计日志收集和发送的方法

应用交付设备大数据审计日志收集和发送的方法

摘要

本发明公开了应用交付设备大数据审计日志收集和发送的方法,根据业务数据特征,对不同业务数据流均匀分配不同CPU,每个业务数据流及其产生的日志只能被一个CPU处理;业务流处理模块提取所需数据后写入日志缓存队列;业务流处理模块发送数据报文后,检查日志缓存队列,日志缓存达到预期配置则调度日志压缩发送模块从日志缓存队列取出日志压缩后发送;日志发送后,如果有业务流,优先处理业务流,否则继续发送日志;本发明通过不同业务数据流均匀分配不同CPU,同一业务只能被一个CPU来处理转发和日志,通过缓存日志和给缓存日志设置警戒值,来调节分配CPU来处理业务数据还是来处理日志,这样可以保证业务低延迟和防止日志丢失。

著录项

  • 公开/公告号CN112882808A

    专利类型发明专利

  • 公开/公告日2021-06-01

    原文格式PDF

  • 申请/专利权人 上海弘积信息科技有限公司;

    申请/专利号CN202110170542.3

  • 发明设计人 靳龙;

    申请日2021-02-08

  • 分类号G06F9/48(20060101);G06F9/50(20060101);G06F9/54(20060101);G06F16/174(20190101);G06F16/18(20190101);

  • 代理机构11616 北京盛凡智荣知识产权代理有限公司;

  • 代理人李朦

  • 地址 201206 上海市浦东新区新金桥路58号银东大厦23A

  • 入库时间 2023-06-19 11:11:32

说明书

技术领域

本发明涉及通信技术领域,具体是指应用交付设备大数据审计日志收集和发送的方法。

背景技术

应用交付设备是高可用网络基础架构的关键组件,通常用于将工作负载分发到多个服务器来提高网站、应用以及数据库等服务的性能和安全性。

没有应用交付设备的网络结构下,如果服务器宕机或者服务访问量太大,都会影响用户使用体验,而且服务器直接暴露在Internet下,如果服务器有安全漏洞,黑客很容易侵入服务器,给企业造成不可估量的损失。

有应用交付设备的网络结构下,用户访问的是应用交付设备,应用交付设备处理用户请求,根据用户请求和应用交付设备挂载的后台服务器状态,将用户请求转发给合适的服务器处理,这里涉及到服务器健康探测,地址转化,服务加解密技术,这些技术在保证用户请求的可用性、高效性同时保证了服务器的安全。

由于应用交付设备对数据做了修改,比如TCP数据的源地址源端口和目的地址目的端口,服务器上看不到真实的用户地址和端口,也看不到用户访问的服务目的地址和端口,审计日志跟踪这些地址和端口的转化对定位问题或跟踪黑客入侵有很大帮助,一个高性能的应用交付的设备,每秒可接收高达1000万的TCP请求,每个TCP请求都会新建会话,新建的会话会记录如何对数据流的源地址、源端口和目的地址、目的端口转化,每个新建会话都要生成一条审计日志,这个大数据量的日志如何收集和发送是个技术难题。

目前的主流技术是日志生成后通过网络发送给日志服务器,其瓶颈在于应用交付设备对日志收集和发送会占用大量的设备内存和处理器资源以及接口带宽。

现有的审计日志的收集和发送主流技术有两种,一种是一般数据通信设备厂家做法,运行设备产生审计日志后,调用syslog通用接口,把日志信息通过Socket传递给日志处理进程,由日志处理进程来处理日志,日志可以保存在本地硬盘,也可以发送给日志服务器,如果日志产生量太大,会有丢失日志情况;另一种是高速日志处理方式,就是业务数据和日志同时处理,在新建业务数据流同时产生日志,通过业务数据口把日志发送给日志服务器。

现有技术的缺点:

1.日志丢失问题,如果设备新建业务会话太多,会导致大量日志堆积,溢出缓存区,导致日志丢失。

2.影响业务处理延迟,每次处理新建会话,同时要产生和发送日志,导致业务的延迟。

设备一旦开启审计日志功能,在用户请求峰值达到设备处理能力70%以上时,用户会感觉到处理业务时出现延迟或偶尔的业务失败现象。

现有技术一般使用成熟API接口,在产生日志和发送日志根据业务流动作触发,没有考虑CPU处理状态,导致CPU处理峰值的瞬间,发生日志丢失和业务数据处理延迟或失败问题。

所以,应用交付设备大数据审计日志的收集和发送方法成为人们亟待解决的问题。

发明内容

本发明的目的是通过对审计日志和数据业务智能调节CPU调用,实现高效利用设备CPU处理能力来达到有效处理日志而对业务流量做到最小的影响。

为实现上述目的,本发明提供的技术方案为:应用交付设备大数据审计日志收集和发送的方法,包括以下步骤:

步骤1:根据业务数据特征,对不同业务数据流均匀分配不同CPU,每个业务数据流只能被一个CPU处理,每个数据流产生的日志也只能被处理数据流的CPU来处理;

步骤2:将日志放入缓存队列,根据业务数据流的处理需要来智能调度CPU处理日志缓存队列;

步骤3:业务流处理模块对数据报文进行分析后,提取所需数据后写入日志缓存队列;

步骤4:业务流处理模块发送数据报文后,检查日志缓存队列,如果日志缓存达到预期配置则调度日志压缩发送模块从日志缓存队列取出日志压缩后发送;

步骤5:日志压缩发送后判断是否含有业务流,如果有业务流,优先处理业务流,否则调度日志压缩发送模块继续发送日志。

作为改进,所述日志达到缓存禁戒值之前,业务流优先处理,如果没有业务请求,再去处理日志缓存队列。

作为改进,所述日志达到缓存警戒,优先处理日志。

作为改进,每次处理日志缓存队列后,都要检查是否有业务请求,以保证业务的低延迟。

本发明与现有技术相比的优点在于:本发明通过同一个业务流只能被一个CPU来处理转发和发送日志,通过缓存日志和给缓存日志设置警戒值,调节分配CPU来处理业务数据还是来处理日志,这样可以保证业务低延迟和防止日志丢失。

附图说明

图1是本发明应用交付设备大数据审计日志收集和发送的方法的流程图。

具体实施方式

下面结合附图对本发明应用交付设备大数据审计日志收集和发送的方法做进一步的详细说明。

结合附图1,本发明应用交付设备大数据审计日志收集和发送的方法的具体实施过程如下:

根据业务数据特征,对不同业务数据流均匀分配不同CPU,每个业务数据流只能被一个CPU处理,每个数据流产生的日志也只能被处理数据流的CPU来处理;

将日志放入缓存队列,根据业务数据处理需要CPU资源情况来智能调度CPU处理日志缓存队列;

业务流处理模块对数据报文进行分析后,提取所需数据后写入日志缓存队列;

业务流处理模块发送数据报文后,检查日志缓存队列,如果日志缓存达到预期配置则调度日志压缩发送模块从日志缓存队列取出日志压缩后发送;

日志压缩发送后判断是否含有业务流,如果有业务流,优先处理业务流,否则调度日志压缩发送模块继续发送日志。

不同CPU处理不同业务流,同一业务流是不会被跨CPU处理。

日志达到缓存禁戒值之前,业务流优先处理,如果没有业务请求,再去处理日志缓存队列。

日志达到缓存警戒,优先处理日志。

每次处理日志缓存队列后,都要检查是否有业务请求,以保证业务的低延迟。

以上对本发明及其实施方式进行了描述,这种描述没有限制性,附图中所示的也只是本发明的实施方式之一,实际的结构并不局限于此。总而言之如果本领域的普通技术人员受其启示,在不脱离本发明创造宗旨的情况下,不经创造性的设计出与该技术方案相似的结构方式及实施例,均应属于本发明的保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号