Kernel-Supported Cost-Effective Audit Logging for Causality Tracking abstract。

解决的问题

Linux 的 Audit 审计日志系统是常用的因果溯源分析系统,然而该系统存在性能问题。系统长时间运行和冗余日志占用了大量的存储空间,我们对此进行了详细的分析。
为了克服这个问题,我们提出了内核内的基于缓存的在线日志精简算法来提高 Audit 系统的记录性能。

Architecture

Audit 审计系统的架构:

Audit arch

KCAL 的架构:

kcal arch

KCAL 的细节结构:

overview

架构工作流

task_struce 数据结构修改

此处修改包括:

  • unit dependency cache, box 2
  • read set, unit dependency cache 用来存储当前实体和依赖关系, box 4
  • process-level dependency cache, box 3
  • dependencies, box 5

File 数据结构修改

此处修改包括:

  • syscal events with timestamp, box 8, 可以取出冗余事件
  • automation used to detect if the resource is temporary, box 9
  • states and transitions, box 10