HoloWAN网络仿真损伤仪基本功能解析
带宽限制
在HoloWAN里,可以在链路两个方向设置带宽,最小带宽限制是1bps,最大速率限制视产品而定,单位增量为1bps。
带宽限制实际是限制HoloWAN转发的最大速率/TX Rate
在不添加其他损伤的前提下
当HoloWAN接收的数据小于带宽限制时候,其接收数据就等于其转发的数据
简单理解:
当RX Rate < Bandwidth ,即 RX Rate = TX Rate
当HoloWAN接收的数据大于带宽限制时候,接收数据就大于转发的数据,其溢出的数据就会进入Queue队列深度内,在进行Queue队列深度满了时,溢出的数据就会被直接丢弃。
简单理解:
当RX Rate > Bandwidth ,即 RX Rate > TX Rate
队列深度
队列深度指定了当收到的数据超过了模拟链路的带宽时,队列能缓存的最大数据量。当队列已满时,任何到达的数据都会被丢弃。
HoloWAN设置队列深度有 3 种方式:最大的数据包个数;以 KB 为单位的最大数据量;以 ms 为单位的最大排队时延。
报文过滤
HoloWAN 的报文过滤器用于将特定的数据包发送到指定的 WAN 链路。
每个端口都有自己的分类规则来区分到达端口的数据包。
一般规则包括:源IP地址和目标IP地址的范围;MAC地址;VLAN ID;TCP/UDP端口号;MPLS Lable;RAW 1-Byte offsets;RAW 4-Byte offsets;组合分类。
HoloWAN 中符合分类规则的数据包有三种执行动作:
Path使用链路:符合规则的数据包会通过指定的链路。
Drop丢弃:符合规则的数据包将被丢弃。
Bypass旁路:符合规则的数据将不进行损伤,直接转发。
而Bypass是报文分类器的默认动作,为不符合任何明确规则的数据包指定行为。
假如不设置报文分类,经过引擎的所有报文都将进行 Bypass 处理,用户配置的网络损伤将不会生效。所以在正式进行损伤之前一定要配置正确的报文分类器。
数据包在链路传输时设置的损伤功能
时延
常量延迟,均匀分布抖动,正态分布抖动,Custom抖动等
1.常量延迟:就是给所有通过链路的每一个报文都设置一个固定的延迟值。
2.均匀分布抖动:就是每个报文的延迟值都设置在最大和最小值的范围内均匀分布,简单说,就是报文受到的延迟会在minimum和maximum之间,取得每个时延值的概率是相等的。
3.正态分布抖动:就是设置最小值Min,均值Mean和标准差Std Deviation,三者指定一个截断的正态分布。
简单来说,三者决定了报文在受到的延迟值范围落下的概率,模拟特定一个时间,集中高爆发时延。
4.Custom抖动:就是设置平均延迟值delay,最小延迟Min.delay,最大延迟Max.delay,+delta相邻两报文延迟变化上限,-delta相邻两报文延迟变化下限,弹性系数Spread这6个参数指定一个自定义的正态分布。
Delay:延迟的均值、Mean Delay;
Min.Delay: 限定了延迟大小范围的最小值;
Max.Delay: 限定了延迟大小范围的最大值;
+Delta 和-Delta: 限制了相邻的两个报文的延迟变化的上限和下限。
例如:+Delta=50ms ,-Delta=30ms,连续经过两个报文,第一个报文的延迟是 200ms, 则第二个报文的延迟大小最大不会超过 250ms,最小不会低于 170ms。
Spread 弹性系数:Spread值越大,Delay远离均值的概率越大。
丢包
1.随机丢包:指的是丢包的概率,不是丢包数量占总包数的比例
在HoloWAN中丢包率可以设定为0%-100%,单位增量0.0001%,当处理的报文数量达到一定量,丢包数量占总包数的比例就会无限接近甚至等于丢包率。
2.周期性丢包:指的是固定的丢包周期,Burst就是指突发的大小(单位为报文的个数)
举个例子,设置丢包周期Period为100个,突发大小为1个报文,那么每当发送99个报文随后就有1个报文被丢弃。
3.突发丢包:HoloWAN是设置Probability丢包概率、Minimum最小连续丢包数量和Maximum最大连续丢包数,通过这三个参数控制一定概率的连续丢包,最少连续丢包数量可以等于最大连续丢包数量。
举个例子,设置丢包概率为1%,最小连续丢包数为2,最大连续丢包率数9,那么每个数据包通过HoloWAN时触发丢包事件的概率为1%,一旦判断丢包事件被触发,则最少连续丢弃多个数据包,数量则会在设定好的2个到9个之间随机取值。
4.双通道丢包:在HoloWAN会设置两个通道,分别是良好通道Good State和较差通道Bad State的丢包率Loss,且还设定每个数据包由其中一个通道转变到另一个通道的转变率Change,所有数值都是按百分比0%到100%设置,增量为0.0001%;每次仿真模拟开始,该数据状态都处于良好通道。
5.马尔科夫四状态丢包:
HoloWAN设置了4种状态之间的转化概率,以此来控制丢包率的变化。
数字 1、2、3、4 分别代表 4 种状态:
1:Received Successfully,成功收到报文。
2:Received Within a BURST,在BURST状态下接收报文。(burst是一个丢包比例高的时期)
3:Lost Within a BURST,在BURST状态下丢包。
4:Isolated Lost Within a Gap,孤立的丢包状态。
误码率corruption
遭受误码的报文不会被HoloWAN丢弃,而是在报文的随机位置加入Bit Error,然后转发出去,遭受误码的报文会重新计算CRC,但不会重新计算Checksum。
误码率是基于Bit计算的一个概率,当处理的报文足够,实际误码概率比例会无限接近或者等于我们设置的值。
重复报文duplication
1.普通模式Normal
重复帧的普通模式指重复概率可以设置为0%-10%,单位增量是0.001%;禁用重复帧可以设置为0%,重复帧默认状态为禁用。
2.曲线控制重复帧出现的概率Jitter
重复帧出现的概率随着设定的曲线形态周期性变化。
Max:最大的概率;
Min:最小的概率;
Phase:曲线初始的位置;
Period:抖动的周期;
Change Mode:点击曲线图可以选择 6 种不同的曲线模型。
注:在曲线模型下,重复帧出现的概率变化频率计算是
4096/Period>5,那么变化频率为5次/秒
4096/Period<5,那么每秒变化次数为4096/Period的结果的整数次
报文乱序Reordering
1.普通模式Normal
乱序需要指定每个帧发生乱序的概率以及新的位置相对于原来位置的时间范围,此行为由两个参数控制,分别是概率和延迟。
概率是每个单独的帧乱序的可能性,概率可以设为0%-20%,单位增量是0.001%
延迟是乱序的帧在被重新插入到数据流中相对于原来位置所滞后的时间。最小和最大的乱序延迟设置范围都是0~10秒,颗粒度为0.1毫秒。
默认状态下是禁用乱序,会设置为0%
2.曲线控制乱序出现概率变化Jitter
Max:最大的概率;
Min:最小的概率;
Phase:曲线初始的位置;
Period:抖动的周期;
Change Mode:点击曲线图可以选择 6 种不同的曲线模型。
注:在曲线模型下,帧乱序
出现的概率变化频率计算是
4096/Period>5,那么变化频率为5次/秒
4096/Period<5,那么每秒变化次数为4096/Period的结果的整数次
以上便是HoloWAN的主流损伤功能解析,感谢大家观看。