1k likes | 1.42k Views
六、网络演算. 引言. Motivations 在交换式网络实时通信中,服务规程是交换式节点调度的基础,然而,它们细致的限定了各节点的行为,并对于每个 flow 保证其性能,属于特殊的处理方法 … 更广义地,考虑流和服务的关系,及其与性能的关系。 —— 性能评价 需求! 网络演算不关心这些规程是如何出现的,而是关心这些规程下(或其它规程),对特定通信任务的时间性能的影响。. 历史. [Cruz 1991] IEEE Trans. on Information 确定性排队论 Cruz R L , Le Boudec J Y, Chang C-S…
E N D
引言 • Motivations • 在交换式网络实时通信中,服务规程是交换式节点调度的基础,然而,它们细致的限定了各节点的行为,并对于每个flow保证其性能,属于特殊的处理方法… • 更广义地,考虑流和服务的关系,及其与性能的关系。——性能评价需求! • 网络演算不关心这些规程是如何出现的,而是关心这些规程下(或其它规程),对特定通信任务的时间性能的影响。
历史 • [Cruz 1991] • IEEE Trans. on Information • 确定性排队论 • Cruz R L , Le Boudec J Y, Chang C-S… • 将离散事件动态系统中的异构代数工具引进 • 随机网络演算 • 利用大偏离原理
提纲 • 引言——网络演算的概念与历史 • 基本的网络演算方法 • 网络演算与min-plus代数 • *随机网络演算 • *共轭网络演算
引言 基本的网络演算方法 网络演算与min-plus代数 *随机网络演算 六、网络演算 2013
基本的网络演算方法 • [Cruz 1991] • 分组交换(packet switching)网络的模型 • “Part I: Network Element in Isolation” • “Part II: Network Analysis” • Deterministic Queuing Theory
基本的网络演算方法——分组交换网络的模型 • 模型 • 网络的结构,网络协议 • 通信负载(业务)模型
… … DEMUX MUX 寻址固定时延 拥塞,缓冲排队 基本的网络演算方法——分组交换网络的模型 • 分组交换网络 • Packeting Switch:交换开关,分组 • MUX的非固定时延
分组交换网络的模型 • 通信负载模型 • 业务特性:尺度上的,模式上的 • 业务量参数:峰值(突发)速率、突发长度、可维持(平均)速率 …… • 业务描述器:业务量参数与服务质量(请求)参数合称为“业务描述器(descriptor)” • traffic descriptor 分析、仿真模型
分组交换网络的模型 • 通信负载模型(续) • 不同的业务流合成的流量非常复杂难以描述,如何对这样的系统进行建模与控制? • 对合成的业务流进行整形(shape, reshape, smoothing) 为了提供服务保证,将通信流的通信量进行映射,以近似模种预知的模式。只要符合该模式,网络实体就能够提供服务级别保证。 在某种情况下,整形甚至让链路空闲,以确保后续通信的服务质量。”
基本的网络演算——WC延迟计算 • 最不利条件下的延迟 • 例:[Cruz 1991] • 通信流量的形状受“bustiness constraint”(突发度函数)b(t)约束。 • 常用的突发度函数为:b(t)=σ+ρt,记作b ~ (σ, ρ)。 • σ突发流量ρ可维持的流速率 • 在通信流量模型的前提下,计算最大可能的延迟。 • 不变延迟:baseline; • 可变延迟:主要是MUX输出端排队延迟。
b(t) b(t) b(t)对D(t)进行包络 D(I) 斜率ρ 本例中,流量W(I)是分段连续的线性斜坡 C*u α 对流量D(t)微分,得到到达率R(I) 0.5*C*u 斜率ρ C*u C*u C u 2u 3u 4u 5u 6u b(t)=σ+ρt 基本的网络演算——通信负载模型下的约束 • bustiness constraint: b(t)=σ+ρt • b(t)对流量进行包络(t可取任意时间间隔)
C C C C C C C C Δ Δ 溢出 图2a 图2b 负载模型下网络延迟计算 • 负载模型下的延迟计算(续) 只有保证在任意一段设计规定的时间尺度内,缓存积压量不大于设计允许值,才能保证最坏条件下的实时性能 • 常见的流量描述器,e.g. (sigma,rou)描述器
Wρ(R)(t’’) ∫[0,t]R(t) Wρ(R)(t’) 斜率=R(t) 斜率ρ 斜率ρ t’ a b t’’ t R(t) C t 基本的网络演算——通信负载模型下的约束 • 对于以数据流b~(σ, ρ)作为输入,以定常速率ρ尽力地(work-conserving)输出;由于突发而造成的缓冲排队积压量W(t)不超过σ。
R1 C FCFS MUX Rout C R2 C 基本的网络演算——通信负载模型下的约束 • 在流量模型下,计算MUX的输出延迟。 • 设定: • MUX遵守FCFS(先到先服务) • 最大的报文长度为L • 链路传输的最大容量为C
R1 C FCFS MUX Rout C R2 C • 粗略地讲:聚合(aggregative)流量 (σ1, ρ1), (σ2, ρ2) (σ1+σ2, ρ1+ρ2) • 经过多路复用器的延迟 • 设定:链路传输的最大容量为C
基本的网络演算——通信负载模型下的约束 • 定义延迟:DFCFS MUX .1为 supremum{ 数据流1中的任意一个bit的数据经过FCFS_MUX的延迟 } • 数据之所以延迟,是由于等待“积压”的数据W(R1+R2)(t)输出;考虑“积压”的最不利的情况。 • 排队规则:(对于数据包)先到先服务。
未修正 斜率ρ 未修正 数据量 输入数据流的突发度约束 b1(t)~(α1,ρ1) b2(t)~(α2,ρ2) 并且约定:输入数据流的瞬时速率不大于C b(t)=σ+ρt σ2+ρ2(L/C)+σ1 最大积压 b1(t) 斜率C 修正 b2(t+L/C) 斜率ρ b1(t)+b2(t+L/C)-Ct α2+ ρ2(L/C) α1 时间 L/C t 基本的网络演算——通信负载模型下的约束 • 设R1:b1~(σ1,ρ1)R2:b2~(σ2,ρ2) • 考虑输入量链路最大容量为C,修正输入burstiness constraints函数。 不够“紧” L
C ρ1 数据量 输入数据流的突发度约束 b1(t)~(α1,ρ1) b2(t)~(α2,ρ2) 并且约定: 输入数据流的瞬时速率不大于C -C C*t C ρ1 +ρ2-C ρ1 b2(t+L/C) b2(t) 最大积压 b1(t) C ρ2 b1(t)+b2(t+L/C)-Ct 速率ρ1 速率C 时间 t L/C α2/(C –ρ2) - L/C α1/(C –ρ1 ) • 情况1 当L较小时,即: α2/(C-ρ 2) - L/C ≥ α 1/(C- ρ1) ,有: DFCFSMUX = 1/C×{ C×[σ 1/(C-ρ1) ] + ρ1×[σ2/(C- ρ2) – σ1/(C- ρ1)-L/C] + L }; 整理得:
C ρ1 数据量 输入数据流的突发度约束 b1(t)~(α1,ρ1) b2(t)~(α2,ρ2) 并且约定: 输入数据流的瞬时速率不大于C C*t -C C ρ2 ρ1 +ρ2-C b2(t) 最大积压 b2(t+L/C) C ρ2 b1(t) b1(t)+b2(t+L/C)-Ct 速率ρ2 速率C 时间 L/C t α2/(C –ρ2 ) α1/(C –ρ1) - α2/(C –ρ2) - L/C • 情况2 当L较大时,即: α2/(C-ρ 2) - L/C < α 1/(C- ρ1) ,有: DFCFSMUX = 1/C×{ C×[σ2/(C-ρ2) –L/C] + ρ2×[σ1/(C- ρ1)+ L/C–σ2/(C- ρ2)] + L }; 整理得:
C ρ1 C ρ1 1 C ρ2 C ρ2 经过整理: 另一种简便的解法: 情况1 情况2 b1 b1 √ Cty等于α1+ρ1ty 0 tx 0 ty b2 b2 C(tx+L/C)等于α2+ρ2(tx+L/C) √ 2 L 1 抵消 3 -L/C 0 tx 0 ty
基本的网络演算——通信负载模型下的约束 • 输出数据流的突发度约束函数 • 大略地说,数据流经过一个网络元件,如果最大的延迟D较小,数据数据流的形状就越接近输入数据流。 • 有这样的说法…,有延迟的网络部件,输出数据流的突发度小于 输入数据流。 (但破坏了流量约束!如果再有独立的流量在下一级作用,) • 对于任意网络部件,如果Rin~(σ,ρ),则∫[x,y]Rout≤(σ+ ρD)+ρ(y-x) • 2、3是否矛盾?因为3中的定理“不紧”?! • 主要要看什么样的延迟… • 多级缓存破坏数据流的形状,所以“reshape”。 以对时间确定性的伤害衡量,一般情况下,经过一级交换,“突发度”增大
引言 基本的网络演算方法 网络演算与min-plus代数 *随机网络演算 六、网络演算 2013
概述 • 推出“网络演算”的目的 在交换式网络实时通信中,… • 更广义地,考虑流和服务的关系,及其与性能的关系。——性能评价需求! • 网络演算不关心通信服务规程是如何出现的,而是关心这些规程下(或其它规程),对特定通信任务的时间性能的影响。 • 从“网络演算” 到 计算机网络的“信号与系统”
引言——min-plus网络演算 • 学者 • Cruz R L • Le Boudec J Y 等瑞士洛桑联邦综合技术学院——EPFL • 专著
min-plus代数简介 到达曲线 用min-plus代数定义 几种到达曲线:漏桶、GCRA等 到达曲线的性质 最小到达曲线 流量整形 Greedy Shaper Packetizer 服务曲线 用min-plus定义 几种服务曲线:速率时延曲线、GR、PSRG等 服务曲线的性质 Pay Burst Only Once min-plus网络演算初步 DiffServ服务的网络演算案例 网络演算与min-plus代数
min-plus代数简介 到达曲线 流量整形 服务曲线 min-plus网络演算初步 *案例——DiffServ服务 网络演算与min-plus代数 2013
LTI线性时不变系统 x(t) y(t) min-plus简介——系统理论 • 对比:普通代数系统(R, +, ×)下的LTI滤波器 • 输入信号x(t) • 系统=以冲激响应h(t)表示 • 输出= x(t)和h(t)的卷积 • y(t) = h(t)x(t)= h(t-s) x(s) ds
简介——网络演算:计算机网络的系统理论 • 异构代数下的“标准线性系统理论” • 实际上,不仅仅是“极小代数”,可以是 • Min-Plus —— 最常用 • Max-Plus • Min-Max (min相当于“加法”,max相当于“乘法”) • Min-Plus dioid(二元算子) • ( R ∪ {+∞}, ^, + ) • “addition” “computation of infimum” —— “^,” • “multiplication” ”addition” • 例如:(3^4)+5=(3+5) ^(4+5)=8^9=8
简介——代数基础 • (Closure of ^) For all a,b ∈R ∪ {+∞}, a ^ b ∈R ∪ {+∞} • (Associativity of ^) For all a,b,c ∈R ∪ {+∞}, (a^b)^c=a^(b^c) • (Existence of a zero element of ^) There is some e = +∞, such that • for all a ∈R ∪ {+∞}, a ^ e = a. • (Idempotency of ^) For all a ∈R ∪ {+∞}, a ^ a = a. • (Commutativity of ^) For all a,b ∈R ∪ {+∞}, a ^ b = b ^ a. • (Closure of +) For all a,b ∈R ∪ {+∞}, a + b ∈R ∪ {+∞}. • (Zero element of ^ is absorbing for +) For all a ∈R ∪ {+∞}, • a + e = e = e + a. • (Existence of neutral element for +) There is some u ∈R ∪ {+∞} such that • for all a ∈R ∪ {+∞}, a + u = a = u + a. • (Distributivity of + with respect to ^) For all a,b,c ∈R ∪ {+∞}, • (a ^ b) + c = (a + c) ^ (b + c) = c + (a ^ b) “0”元是{+∞} “0”元是{+∞} “1”元是0 拷贝自[Bettati 2009n]
简介——数学基础 • Infimum 和 Minimum • min-plus中的“^”实质是指Infimum • 设:S是R的非空子集,则 • 左连续 • 自变量从左边趋近t,极限存在且等于函数值
简介——函数域 和 积分 • 非负广义增函数 • 广义增函数:对于所有s ≤ t,均有f(s) ≤ f(t) • 非负广义增函数 • F:非负广义增函数,且t<0时f(t) =0 • 积分 • 常规代数: • min-plus代数:
简介——min-plus的卷积和解卷积 • min-plus卷积(convolution) • 设fF且gF(或为F上的序列) • 定义: • min-plus解卷积( de-convolution) • 设fF且gF(或为F上的序列) • 定义: (fg)(t)= • 注意:解卷积操作不封闭,即一般情况下(fg)并不一定在t≤0时等于0 卷积和解卷积的性质,见“min-plus网络演算初步”
min-plus代数简介 到达曲线 流量整形 服务曲线 min-plus网络演算初步 *案例——DiffServ服务 网络演算与min-plus代数 2013
到达曲线 Arrival Curve • 流量累积函数 • 用min-plus定义的到达曲线 • 几种到达曲线 • 漏桶、阶梯、GCRA,及其之间的转换关系 • 到达曲线的性质 • 到达曲线与min-plus卷积 • “好”到达曲线——到达曲线的闭包 • 最小到达曲线 • 到达曲线与min-plus解卷积
到达曲线——流量累积函数 • Cumulative flow R(t) F ,t 是实数或整数 • 一般,函数连续的模型取——左连续 bits bits bits R1(t) R2(t) R3(t) 1 2 5 6 7 1 5 5.5 1 2 5 6 time t time t time t Discrete-time model (left continuous) Fluid model (continuous) Packet model (left continuous) 图形拷贝自[LeBoudec 2002s]
bits slope r b time 到达曲线——定义 • Arrival curve • 对于任意时间0 st,累积流量函数R(.) 满足 R(t) -R(s)(t-s) • 例如:仿射(affine)到达曲线 gr,b R(t) 相当于Cruz R L的(σ,ρ) 图形拷贝自[LeBoudec 2002s]
到达曲线——定义 • 用min-plus定义的到达曲线 • 对于所有0 st,存在x(t) -x(s)(t-s) • 则: x(t) x(s)+(t-s),对于所有0 stx(t) inf0ut{ x(u) + (t-u)} • 所以 xx
bits slope r b time 几种到达曲线——仿射曲线 • 仿射到达曲线 gr,b——持续速率r,突发度b 图形拷贝自[LeBoudec 2002s]
几种到达曲线——漏桶 • R中的所有所有数据包遵守某个漏桶(Leaky Bucket)流量整形器 • 持续速率r • 漏桶深度b • 则,在t>0,遵守(conform to)仿射到达曲线的约束gr,b • 证明见下页… R(t) b x(t) t 1 5 5.5 图形拷贝自[LeBoudec 2002s]
引理1.2.2p11 几种到达曲线——漏桶(续) • 设漏桶当前缓存x(t),速率r, x(0)=0, 需证明 • 证明1:由无溢出条件可知 ;得到 。 • 证明2:设:t0为t以前最早的缓冲器空的时间,在队列不空的时候,以速率r输出,即 ,R左连续,则 • 如保证不溢出需 • 则由引理:
几种到达曲线——阶梯曲线 • 阶梯( staircase)到达曲线 • (t) = kvT,τ(t) =k(t+τ)/T • T 周期,t相位(tolerance),k 固定数据包长度 bits 4k 3k 2k 确切地说,如果是左连续,要加上条件(t)=0 k 3T-t t 2T-t T-t time
几种到达曲线——GCRA(T,τ) • GCRA——通用信元速率算法Generic Cell Rate Algorithm • 所有信元固定长度k • 第n次到达的时间An • 在第n次到达后的理论到达时间qn=max(An,qn-1)+ T • 如果An+1≥qn – t 则符合GCRA(T,τ);否则,不符合。 • 算法…
几种到达曲线——GCRA(T,τ) • 算法 • 初始化, tat = 0 • 当信元在 t 时刻到达,则 • if (t < tat - tau) • result = NON-CONFORMANT; //丢弃或降级 • else { • tat = max (t, tat) + T; • result = CONFORMANT; }
几种到达曲线——组合漏桶和T-SPEC • (u) = min (pu+M, ru+b) = (pu+M)(ru+b) • (b,r) ——深度b,补充速率r • p ——注入网络的最大突发速率 • M ——最大数据报长度 T-SPEC ~ATM VBR T-SPEC ~ATM VBR
几种到达曲线之间的转换关系 • 漏桶 (b, r)遵守 gr,b • 阶梯 (t) = kvT,τ(t) =k(t+τ)/T遵守 gr,b其中r = k/T,b = k(t+T)/T • GCRA(T,τ)遵守: • 仿射(和漏桶)——gr,b • r = k/T,b = k(t+T)/T • 阶梯——kvT,τ 这也是为什么阶梯到达曲线中t的也叫容忍度
f(t) R f(s) K t (fg)(t) T (fg)(t) r K+b g(t-s) K R s t T 到达曲线的性质 • 卷积运算(例子) g(t) r t b 图形拷贝自[LeBoudec 2002s]
(f g)(t) 到达曲线的性质 • 到达曲线的min-plus卷积 g(t) f(t) 变得尽可能平缓 t 图形拷贝自[LeBoudec 2002s]
到达曲线的性质 寻找“好”的到达曲线 • 下凹性(concave) • 但有些“好”的到达曲线不是concave的 图形拷贝自[LeBoudec 2002s]
到达曲线的性质——“好”的到达曲线 • 次可加性 • f is sub-additive f (t) + f(s) f(t+s) • 次可加性 与 下凹性的关系 • f is concave with f(0) = 0 f is sub-additive • f,g are sub-additive and pass through the origin (f(0) = g(0) = 0) fg is sub-additive 拷贝自[LeBoudec 2002s]