摘要

  • RFC 3334 把记账描述成一条可配置的观察链。政策能在记录出现以前决定流量范围、属性、测量精度、采样、聚合、报告间隔、发送目标、保留时间与访问权限。
  • 因而,缺失记录不能自动证明零使用量,粗粒度总数也不能代表完整历史。遗漏可能发生在计量选择、收集过滤、导出丢失、聚合或到期删除之中。该文档是 Experimental,并未把记账政策等同于资费或最终账单。

数字之前已经发生了一次分配

最直观的故事是:网络先产生使用量,中性的计量器把它记下,计费系统再算钱。RFC 3334 把顺序写得更复杂。业务关系与服务类型先形成记账政策;政策配置计量、收集和记账;充费阶段才把记录转换成非货币成本;开票阶段最后生成金额与票据。

这种分层不是名词游戏。相同的记账记录可以应用不同费率,账单也可以选择明细或汇总、周结或月结。记账政策不决定价格,却决定后续还有什么数据可以用来定价、解释或争议。

RFC 3334 于 2002 年以 Experimental 文档发布。它没有指定一种必须采用的政策语言,也没有证明任何提供商部署过这套架构。它的历史价值,是把“证据怎样被生产”放到了网络资源记账的中心。

同一条流量可以在不同位置消失

文档区分静态计量器与可配置计量器。静态计量器以固定粒度观察流量,可能先产生大量原始数据,再由收集器过滤或聚合。可配置计量器则只收集政策指定的流。两条流水线都可能输出同样稀疏的最终记录,但空白的含义不同。

若静态计量器看见过一条流,只是收集器后来丢弃它,保存完好的原始馈送仍可能恢复事实。若可配置计量器从未把它纳入范围,下游任何查询都无法补出当时的计数。前者是转换阶段的缺口,后者是观察阶段的盲区。

政策还能规定五元组微流或网络聚合这样的粒度、要采集的属性、测量间隔、时间戳精度和采样方法。收集阶段可选推送或拉取、聚合方式和报告周期;存储阶段可定发送目标、保留期限与访问名单。

因此,一条记录必须连同范围、分辨率、时钟、采样、转换和保留合同一起阅读。只保存数字而丢掉这些条件,会让后来者把记录解释得比原测量更精确。

商业分类变成了可见性规则

记账政策把条件与动作连在一起。条件可匹配客户或用户身份、IP 地址、一天中的时间、服务等级或“记账类型”。动作则选择记录结构、发送目的地、报告频率、存储期限、访问权、流粒度与计量精度。

于是,高等级服务可以获得更细的记录和更短的报告间隔,标准服务只保留较粗总数。物理流量没有因为标签变化而改变,系统注意它的方式却改变了。“全面记账”与“标准记账”不是自然事实,而是提供商定义的设置组合。

这也使跨域比较附带条件。两家提供商都报告“已用字节”,可能在不同观察点计数、采用不同采样率、以不同方法合并流并保留不同属性。漫游或外包记录只有在双方共享语义和争议规则时才可比较。

聚合是用未来问题换取当前规模

大规模流量使过滤与聚合不可避免,但每次聚合都提前决定以后能回答什么。按客户合并微流保住总量,却抹去目的地与应用;按长时间窗合并保住容量,却隐藏突发;采样降低开销,却引入估算不确定性;短保留期节省存储,却缩短申诉窗口。

这些取舍可以合理,前提是明示。危险来自把幸存的总数当作从未丢失维度的完整历史。一个聚合值可能适合开票,却无法承担安全归因、性能诊断、跨网结算或客户争议。

RFC 3334 在计量示例中特别警告:NeTraMet 或 NetFlow 并不保证精确记账数据,不应在需要精确数据时使用。技术名称本身不是准确度证明。还必须有误差模型、丢失记录和用途要求。

导出链也会制造空白。观察点计数可以正确,数据报却在去往收集器时丢失;收集器可能套用错误模板;时钟偏差会把流量归到错误区间。每一段都需要自己的收据。

政策跨域后变成可执行的信任

政策可以存于本地,也可由另一 AAA 服务器或客户提供。推送模式把政策送来安装,拉取模式主动请求远端政策。它们支持漫游与外包,也把“应该观察什么”这份可执行意图带过组织边界。

RFC 3334 提醒,危险不仅在动作。恶意或意外的条件本身也可能耗尽资源或触发不当行为,因此接收者必须在求值之前检查条件和动作。验证发送者身份仍不够:真实身份发来的政策也可能超越权限或成本过高。

政策出处应记录作者、发行者、批准人、版本、生效时刻、范围,以及它被应用专用模块翻译成设备配置的确切结果。翻译成功只说明语法被接受,不证明两种计量器产生相同语义。

集成式与独立式记账看见不同世界

集成式记账与服务放在一起,可利用应用特有事件,例如 IP 电话信令。独立式记账把观察作为单独服务,可以替多个提供商处理网页、文件传输与语音。前者拥有丰富语境,后者便于统一与外包;二者的观察点和属性都不同。

入口边缘、应用服务器和下游导出器统计的字节并不可以互换。重传、封装、缓存与失败会话会让每处数字都对自己的位置成立,却彼此不同。观察点必须是证据的一部分。

后来的 RFC 3954 记录 NetFlow v9,RFC 7011 与 RFC 7012 定义 IPFIX 协议与信息模型;RFC 2903、2904、2975、2924 和 2123 则提供 AAA、记账与 NeTraMet 背景。这些资料能解释机制,不能倒推 RFC 3334 被采用,也不能把旧记录自动赋予新规范语义。

每个总数都需要一份观察合同

至少保留五张收据:政策的条件、动作、版本与权限;政策实际翻译成的设备配置;计量器类型、观察点、范围、时钟与准确度;采样、过滤、聚合与导出丢失;发送、访问、存储与删除记录。充费与开票还要在其后增加独立政策。

缺失可能表示零使用,也可能表示未纳入范围、观察遗漏、采样未中、导出失败、聚合消维、访问受限或保留到期。单凭记录无法选择解释。RFC 3334 的长久教训是:测量先是一项选择,之后才是一个数字。保留计数时,也必须保留它的视野。

来源