本站点使用Cookies,继续浏览表示您同意我们使用Cookies。 Cookies和隐私政策>

首页 信息速查 产品智能选型 IP知识百科

什么是金融广域数据消冗?

随着智慧金融的蓬勃发展,金融机构之间的广域网流量激增,线路租用费是网络设备投资的2~3倍,带来很大的成本压力。使用金融广域数据消冗,在数据发送端进行压缩,在接收端进行解压缩,可以减少金融机构之间广域网流量的线路带宽消耗,节省线路成本,加速分布式数据中心部署。

为什么需要广域数据消冗?

如下图所示,随着金融行业分布式多数据中心的建设,数据中心之间的流量激增,而数据中心之间往往通过租用广域链路来实现互通,线路租用成本与带宽强相关。据统计,金融行业广域线路的租用费是网络设备投资的2~3倍以上,这给金融机构带来极大的成本压力。

金融分布式多数据中心通过广域互联
金融分布式多数据中心通过广域互联

广域数据消冗是指数据中心之间在进行数据转发前,发送端先将数据进行压缩,再通过广域链路转发。在接收端进行数据解压缩,还原出原始数据的过程。这样做可以减少对广域线路带宽的消耗,节省广域线路成本,加速分布式数据中心部署。

金融广域数据消冗的总体架构

金融广域数据消冗的总体架构如下图所示,执行数据压缩/解压缩的设备是DC-PE以及一级分行级别的上联设备,如下图中红色设备所示。压缩前后数据包源/目的IP、端口号保留;支持将压缩后的报文入SRv6隧道,实现压缩数据流量按需选路。

金融广域数据消冗的总体架构
金融广域数据消冗的总体架构

在使用广域数据消冗功能时,需要在执行数据压缩/解压缩的NE路由器上插入支持数据消冗的业务板,并在NE路由器和NCE控制器上激活“数据消冗”相关的License。这样无需额外增加数据消冗设备,无需改变原有组网拓扑,可一站式完成数据引流、压缩/解压缩、转发全过程。

数据压缩协议

IPPCP(IP Payload Compression Protocol,IP有效载荷压缩协议),也称为IPComp,是面向IP数据报文的一个底层压缩协议。不同于普通IP报文中的有效载荷(Payload),该协议中IP报文的有效载荷是被压缩过的。

IPPCP通过插入自身协议头部和改变IPv4和IPv6报文的个别字段来实现对IP报文的压缩。IPPCP的报文头部如下图所示,包含三个字段,各个字段的解释如下表所示。

IPPCP报文头部
IPPCP报文头部
表1-1 IPPCP报文头部各字段的解释

字段名

长度

含义

Next Header

8比特

下一报头:标识原始IPv4报文的Protocol字段或者IPv6报文的Next Header字段。

Flags

8比特

标志:保留给将来使用,必须设置为0。

Compression Parameter Index

16比特

压缩参数索引:标识压缩算法,0-63标识知名压缩算法,使用这些算法无需额外信息;64-255保留给将来使用。

下面分别介绍使用IPPCP压缩后的IPv4和IPv6报文格式。

压缩后的IPv4报文格式

如下图所示,除了插入IPPCP报文头部外,压缩后的IPv4报文在以下三个橙色字段的取值上发生了变化:

  1. Total Length:整个被封装的IP数据报文长度,包括IP头、IPPCP头和已压缩的有效载荷。
  2. Protocol:设置为108,标识协议类型为IPPCP。
  3. Header Checksum:用来检验IP报文头部在传输到接收端后是否发生了变化。
压缩后的IPv4报文格式
压缩后的IPv4报文格式

压缩后的IPv6报文格式

如下图所示,除了插入IPPCP头部外,压缩后的IPv6报文在以下两个橙色字段的取值上发生了变化:

  1. Payload Length:表示压缩后的有效载荷的长度。
  2. Next Header:设置为108,标识协议类型为IPPCP。
压缩后的IPv6报文格式
压缩后的IPv6报文格式

作为一种IP层的压缩协议,IPPCP的压缩是无损的,报文在经过压缩和解压缩之后与原报文一样。同时,IPPCP的压缩是无状态的,每个报文的压缩和解压缩不依赖其它报文,不关注报文失序或者丢失,每个报文压缩后单独封装。

数据压缩算法

目前NE路由器支持Zstd(Zstandard)算法,这是一种高性能的无损压缩算法。该算法将基于字典的压缩算法和基于统计模型的压缩算法相结合,提供了较高的压缩比和较快的压缩速度。Zstd算法还支持多种压缩级别,允许用户根据需要调整压缩级别,在压缩速度和压缩比之间进行平衡。

Zstd算法主要由三个部分构成:LZ77、哈夫曼编码和FSE(Finite State Entropy,有限状态熵)。LZ77是经典的基于字典的压缩算法,哈夫曼编码和FSE是基于统计模型的压缩算法。

Zstd算法的压缩流程如下图所示。Zstd算法在压缩时将原数据初始化为多个数据块,依次对初始化后的数据块进行压缩。首先Zstd算法对每个数据块进行LZ77压缩,将压缩后的数据块再次进行“哈夫曼压缩+FSE压缩”和FSE压缩,根据压缩结果比对最优压缩效果,构造压缩后的数据块;解压缩的过程即为压缩的逆过程。

Zstd算法的压缩流程图
Zstd算法的压缩流程图

通过采用三种压缩算法混合压缩的方法,Zstd算法在实现高压缩比、高压缩精度的同时,也实现了较快的压缩速度,与其他压缩算法(Deflate算法、LZ4算法、Zlib算法等)相比,具有较高的压缩性能。

金融广域数据消冗的工作过程

下面以如下图所示的组网来介绍金融广域数据消冗的工作过程,过程中涉及到iMaster NCE控制器和网络设备(NE路由器)的相关配置的简要介绍。

广域数据消冗工作过程
广域数据消冗工作过程
  1. 设备预配置
    1. 解压缩端预配置解压缩实例,解压缩实例里关联用于压缩/解压缩的业务板CPU和压缩算法(Zstd)
    2. 压缩端和解压缩端设备间建立BGP Flow Specification对等体
    3. 压缩端预配置压缩实例,压缩实例里关联用于压缩/解压缩的业务板CPU和压缩算法(Zstd)
  2. iMaster NCE控制器下发配置

    iMaster NCE控制器下发感兴趣业务流的SIP+DIP+协议号+源端口+目的端口(SIP和DIP必须有一个,其他可以任意选择组合)到解压缩端,同时下发压缩算法。

  3. 解压缩端根据iMaster NCE控制器下发业务的压缩算法,找到设备上预配置的解压缩实例。解压缩端业务板正常时,业务五元组转换为BGP Flow Specification路由,本地生成BGP Flow Specification的动态ACL,包含:五元组信息+IPPCP压缩协议号108,并通过BGP Flow Specification路由传递业务五元组信息+压缩算法给压缩端。
  4. 压缩端收到BGP Flow Specification路由,生成动态ACL,并根据BGP Flow Specification携带的压缩算法找到压缩实例。
  5. 压缩端通过BGP Flow Specification生成的动态ACL匹配业务流量,进行压缩引流:
    1. 压缩端接口板收到报文,命中压缩策略后转发到压缩业务单板。
    2. 在压缩业务单板上执行压缩,然后查找FIB,迭代封装SRv6隧道。
    3. 报文转发到出接口板,然后转发出去。
  1. 解压缩端根据本地生成的解压缩实例和策略进行解压缩:
    1. 接口板收到压缩报文,剥掉SRv6报文头。
    2. 命中解压缩策略,并转发到解压缩业务单板。
    3. 在解压缩业务单板上执行解压缩,然后查找FIB,发至出接口板。

当解压缩端业务板故障时,解压缩端发布BGP Flow Specification撤销压缩引流消息到压缩端,以达到撤销引流的目的。

金融广域数据消冗的具体配置过程,请参见《华为智慧银行广域网络解决方案 交付一本通》

金融广域数据消冗的典型应用

并非所有的业务报文都适合压缩:

  • 适合压缩的报文:长包(冗余大的报文)、文本格式、数据库(结构化报文)类
  • 不适合压缩的报文:图片、视频、票据影像;已经压缩过的办公业务报文

对于金融业务,适合压缩的典型业务报文为:数据库异地复制、磁盘异地复制、文本类占比较高的批量文件传输、报表传输。

  • 典型应用场景一:异地数据中心之间

    金融机构异地数据中心之间通常会采用多条10G专线链路进行互联,承载的业务数据流量主要有:异地存储阵列跨城长距容灾备份、数据库异地备份、数据文件异地复制等。在数据中心的DC-PE设备上部署广域数据消冗,可以有效降低数据中心间专线链路的带宽消耗,降低线路费用。

  • 典型应用场景二:数据中心和一级分行之间

    金融机构数据中心和一级分行通常会采用多条100M~1G专线链路进行互联承载的业务数据流量主要有:补丁推送、病毒库推送、应用下载、邮件收发等。在数据中心的DC-PE设备以及一级分行的上联设备上部署广域数据消冗,可以有效降低数据中心和一级分行之间专线链路的带宽消耗,降低线路费用。

分享链接到: