2. 中国舰船研究设计中心, 武汉 430064;
3. 武汉大学 电子信息学院, 武汉 430072
2. China Ship Development and Design Center, Wuhan 430064, China;
3. School of Electronic Information, Wuhan University, Wuhan 430072, China
服务质量(Quality of Service, QoS)是网络性能重要评价指标, 网络时延是服务质量的基本度量[1-2]。由于网络拥塞的客观存在, 通过增加带宽对网络性能的提升非常有限, 因此网络时延成为研究人员关注的重点。网络时延是指报文或分组从网络的一端传送到另一端需要的时间, 主要包括发送时延、传播时延、处理时延和排队时延。受流量测试技术限制, 目前关于网络时延的研究主要集中在对网络流往返时间(Round-Trip Time, RTT)的粗粒度时延预测[3]上。网络时延预测是根据历史时延数据对网络时延变化的预判, 用来为网络控制系统的变周期采样提供采用区间参考, 以及用于分析闭环控制系统稳定性等。但端到端的时延预测容易忽略突发的、持续时间小于监控粒度的网络延时变化, 且无法对时延较长的交换机进行预测, 在实际应用上存在一定局限性。
近年来, 软件定义网络(Software Defined Network, SDN)和带内网络遥测(In-band Network Telemetry, INT)技术[4-6]的快速发展使排队时延等细粒度网络时延的预测成为可能。交换机内部排队时延作为动态性最强的一类网络时延[7]受到研究人员的广泛关注。由于排队时延由流量负载和可用带宽决定, 因此其成为评价带宽利用率和拥塞级别的重要指标, 同时也是路由策略度量标准。随着网络数据变化日趋复杂, 网络数据传输的管理差异越来越大, 而网络排队时延由于时间粒度小, 其变化规律更复杂, 因此寻找更准确和稳定的时延预测模型成为亟待解决的问题。本文以校园网为研究对象, 利用带内网络遥测技术构建基于长短期记忆(Long Short-Term Memory, LSTM)网络的多时间尺度融合预测模型(LSTM-Merge), 并在流式计算框架下对网络排队时延进行分析和预测。
1 研究基础网络流量预测模型分为线性预测模型和非线性预测模型[8]。ARIMA模型[9]和卡尔曼滤波模型是典型的线性预测模型, 使用该模型的前提是网络流量具有线性宽、平、稳过程的特征。然而随着通信技术的发展, 网络流量特性趋于复杂, 采用线性模型已难以描述真实网络流量特征, 因此, 研究人员提出灰色模型[9]、小波预测模型[10]、神经网络预测模型[11]以及支持向量回归模型[12]等非线性时间序列预测模型。其中, 神经网络预测模型是常用的非线性模型之一[13]。文献[14]对比了ANN、小波预测等无线网络流预测器, 认为神经网络预测器比其他预测器表现更佳。文献[15]结合小波分析与神经网络对短时交通流量进行预测并获得较高预测精度。文献[16]采用非线性RBF神经网络分位数回归算法对公共自行车站点需求量进行预测, 给出精度较高的自行车需求区间。
基于循环神经网络(Recurrent Neural Network, RNN)的方法常用于解决时间序列预测问题。在RNN模型中, 时间前后关系的展开使得神经网络隐层单元可捕捉时间轴上下文关系[17]。然而由于时间轴上权重矩阵参数共享导致长时间变化下RNN捕捉的上下文关系有限, 各时间点输入对网络自我学习的正面影响减弱, 因此RNN模型的准确性在长时间跨度下降低。LSTM网络是一种改进的RNN, 其通过选择性记忆能在较长时间跨度下持续学习且避免梯度消失[18], 对于网络流这种具有长相关性的时间序列而言, 可得到较好的预测效果。记忆单元是LSTM网络中的重要部分, 其内部结构如图 1所示。该结构包括1个具有自循环连接的神经元和与其相关的输出门、输入门及遗忘门。在无外界干扰的情况下, 采用自循环连接结构, 可在2个时间步之间保持记忆单元的状态恒定。输入门从外部获取1个新时刻的输入点, 并将数据通过激活函数进行变换处理; 输出门对记忆单元内部所有时间状态信息整合计算后, 输出相应的时间序列值; 遗忘门调整记忆单元自循环连接, 使其选择记住或遗忘过去的状态, 从而为输入序列选择最优时间间隔[19-21]。
![]() |
Download:
|
图 1 记忆单元内部结构 Fig. 1 Internal structure of memory unit |
在记忆单元结构中, 若将输入序列表示为X=(x1, x2, …, xn), 各时刻隐层状态表示为H=(h1, h2, …, hn), 输出序列表示为Y=(y1, y2, …, yn), 则LSTM网络计算预测值的过程如下:
1) 输入门输出:
$ {\mathit{\boldsymbol{i}}_t} = \sigma \left( {{W_{ix}}{\mathit{\boldsymbol{x}}_t} + {W_h}{\mathit{\boldsymbol{h}}_{t - 1}} + {W_{ic}}{\mathit{\boldsymbol{c}}_{t - 1}} + {b_i}} \right) $ | (1) |
2) 遗忘门输出:
$ {\mathit{\boldsymbol{f}}_t} = \sigma \left( {{W_{fx}}{\mathit{\boldsymbol{x}}_t} + {W_{hh}}{\mathit{\boldsymbol{h}}_{t - 1}} + {W_{fc}}{\mathit{\boldsymbol{c}}_{t - 1}} + {b_f}} \right) $ | (2) |
3) 记忆单元更新:
$ {{\mathit{\boldsymbol{\tilde c}}}_t} = {\mathit{\boldsymbol{f}}_t} \circ {\mathit{\boldsymbol{c}}_{t - 1}} + {\mathit{\boldsymbol{i}}_t} \circ g\left( {{W_{cx}}{\mathit{\boldsymbol{x}}_t} + {W_{hh}}{\mathit{\boldsymbol{h}}_{t - 1}} + {W_{cc}}{\mathit{\boldsymbol{c}}_{t - 1}} + {b_c}} \right) $ | (3) |
4) 输出门输出:
$ {\mathit{\boldsymbol{o}}_t} = \sigma \left( {{W_{ox}}{\mathit{\boldsymbol{x}}_t} + {W_{hh}}{\mathit{\boldsymbol{h}}_{t - 1}} + {W_{oc}}{\mathit{\boldsymbol{c}}_{t - 1}} + {b_o}} \right) $ | (4) |
5) 预测值输出:
$ {\mathit{\boldsymbol{h}}_t} = {\mathit{\boldsymbol{o}}_t} \circ h\left( {{\mathit{\boldsymbol{c}}_t}} \right) $ | (5) |
其中, σ和g为激活函数, b为偏移量,
本文受文献[22-23]启发, 提出多尺度时间序列融合模型, 采集不同时间尺度的数据作为各种LSTM模型的输入, 并将这些模型进行串联。此外, 文献[22-23]中的模型主要分析天气、节假日等外部因素, 而本文模型主要考虑不同的时间段因素(如中午、傍晚和夜间), 并将这一特征添加到数据源中, 以提高模型在不同时间段的预测准确性, 解决了小粒度预测模型的适用性问题。本文所提多尺度融合预测模型结构如图 2所示。其中, Scloseness为基本时间尺度的特征抽象, Sscale1为以n倍间隔在基本时间尺度上采样的特征抽象, Sscale2为以m倍间隔在基本时间尺度上采样的特征抽象, 以此类推, SscaleN为以k倍间隔在基本时间尺度上采样的特征抽象, 其中n<m<k, SEXT为时间段因素通过one-hot编码后放入全连接层得到的输出。
![]() |
Download:
|
图 2 多尺度融合预测模型结构 Fig. 2 Multi-scale fusion prediction model structure |
图 2中时序模型对时间序列数据以不同尺度前溯采样, 即各尺度都对应相同的标签, 从标签处开始以不同时间间隔对过去时间序列采样, 得到Scloseness(以基础间隔采样, 即基本时间尺度的特征抽象)、Sscale1(以n倍基础间隔采样)、Sscale2(以m倍基础间隔采样)、SscaleN(以k倍基础间隔采样), 全连接层对时间段因素进行抽象处理得到SEXT, 再将不同尺度的时间序列数据融合, 具体过程如图 3所示。
![]() |
Download:
|
图 3 不同尺度前溯采样过程 Fig. 3 Process of forward sampling at different scales |
全连接层将不同神经元数量的模型输出统一为与标签一致的输出。融合层将提取到的特征张量Scloseness, Sscale1, Sscale2, …, SscaleN, SEXT进行融合, 且分别赋予不同权重, 表达式如下:
$ \begin{array}{l} {\mathit{\boldsymbol{S}}_{{\rm{out }}}} = {W_E} \circ {\mathit{\boldsymbol{S}}_{{\rm{EXT}}}} + {W_N} \circ {\mathit{\boldsymbol{S}}_{{\rm{scale }}N}} + \cdots + {W_2} \circ {\mathit{\boldsymbol{S}}_{{\rm{scale }}2}}\\ + {W_1}^\circ {\mathit{\boldsymbol{S}}_{{\rm{scale }}1}} + {W_{{\rm{closeness }}}} \circ {\mathit{\boldsymbol{S}}_{{\rm{closeness }}}} \end{array} $ | (6) |
其中, 权重W在训练阶段不断学习并调整到最优。该过程是对各特征张量的进一步抽象处理。
本文对网络排队时延的预测属于回归问题, 损失函数选用均方误差(Mean Square Error, MSE), 表示如下:
$ {\rm{MSE}} = \frac{1}{n}\sum\limits_{i = 1}^n {{{\left( {{{\hat Y}_i} - {Y_i}} \right)}^2}} $ | (7) |
均方误差又称为L2损失(Quadratic Loss, L2 Loss), 其主要利用欧氏距离衡量差异, 适用于网络时延这种随机成分高导致异常点较多的数据源。采用L2正则化方法限制损失函数中的参数值, 可防止时延预测模型过拟合。
多时间尺度融合预测模型中各处激活函数均为非线性, 多时间尺度融合的LSTM模型主要有2种激活方式:1)记忆细胞中激活各输入用Sigmoid函数, 如式(8)所示; 2)激活循环层及全连接层用tanh函数, 如式(9)所示。
$ {\sigma (x) = \frac{1}{{1 + {{\rm{e}}^{ - x}}}}} $ | (8) |
$ {\tanh (z) = g = \frac{{{{\rm{e}}^z} - {{\rm{e}}^{ - z}}}}{{{{\rm{e}}^z} + {{\rm{e}}^{ - z}}}}} $ | (9) |
为实现对短时预测技术在线测试, 需采用流式计算平台处理单向且连续到达的网络数据包。本文模型有2个阶段需使用流式计算:1)在预测前对带内网络遥测获取的数据包信息进行逐个转换, 使其符合预测模型的输入要求; 2)在线阶段调用模型流式输出预测结果。整个流式计算平台的计算速度需快速准确, 才能及时为避免拥塞或动态路由规划提供有效的时延信息。
由于Storm平台能实时对消息进行逐一处理且速度为亚秒级, 因此实时数据转换阶段采用Storm平台完成。而Spark Streaming可整合到基于数据并行的Spark生态系统中, 其为流式计算与机器学习提供了多样、稳定和高效的解决方案接口, 并支持用同样的代码和系统实现离线与在线分析, 因此流式预测阶段使用Spark平台。本文所构建基于流式计算平台的预测系统结构如图 4所示。
![]() |
Download:
|
图 4 基于流式计算平台的预测系统结构 Fig. 4 Prediction system structure based on stream computing platform |
为得到不同融合尺度下的预测准确性, 将无融合、2种时间尺度融合、3种时间尺度融合的LSTM模型预测结果进行对比, 不同时间尺度融合的最优训练超参数设置情况如表 1~表 3所示。其中:无融合模型仅利用近期相关的过去时间序列进行预测, 预测范围取最小采样间隔300 ms; 超参数中back为前溯时间点数; back 1与back 2分别为其他尺度的前溯时间点数; interval为对最近期依赖的采样倍数; 在LSTM模型与全连接层Dense之间采用Dropout算法, 以一定概率暂时舍弃神经元, 同时对LSTM模型中权重进行正则化处理, 防止神经网络过拟合。
![]() |
下载CSV 表 1 无融合最优训练超参数设置 Table 1 Optimal training super parameter setting without fusion |
![]() |
下载CSV 表 2 2种时间尺度融合最优训练超参数设置 Table 2 Optimal training super parameter setting with two time scales fusion |
![]() |
下载CSV 表 3 3种时间尺度无融合最优训练超参数设置 Table 3 Optimal training super parameter setting with three time scales fusion |
图 5为无融合、2种时间尺度融合、3种时间尺度融合的LSTM模型预测结果对比情况。可以看出, 采用3种时间尺度融合的LSTM模型平均相对误差(Mean Relative Error, MRE)最小, 即预测效果最好。但多尺度叠加意味依赖时间延长, 即牺牲实时性来提高准确性, 若取2种时间尺度叠加的LSTM模型, 则会提高实时性并降低准确性。
![]() |
Download:
|
图 5 不同时间尺度融合LSTM模型预测结果的对比 Fig. 5 Comparison of prediction results of LSTM models with different time scales fusion |
将多时间尺度融合的LSTM-Merge模型与无融合LSTM模型、支持向量回归SVR模型、参数ARIMA模型在0.3 s、0.6 s、0.9 s、1.2 s、1.5 s这5种预测范围下的均方根误差(Root Mean Square Error, RMSE)进行对比, 结果如图 6所示。可以看出:多时间尺度融合的LSTM-Merge模型预测准确度最好; 参数ARIMA模型预测准确度明显低于其他预测模型, 说明参数模型在数据源规律复杂时的准确度不如机器学习模型; 所有模型的预测范围越大准确性越低, 但多时间尺度融合模型在增大预测范围时RMSE上升最缓慢, 说明预测范围的增加对多时间尺度融合模型的准确性影响最小。在闭环控制系统中, 系统的决策时间与预测范围越接近, 决策效果越好。
![]() |
Download:
|
图 6 不同预测范围下4种模型的RMSE对比 Fig. 6 Comparison of RMSE of four models under different prediction ranges |
针对网络排队时延的细粒度特性, 本文在软件定义网络和带内网络遥测技术的基础上, 建立基于LSTM的多时间尺度融合LSTM-Merge预测模型, 利用流式计算框架对网络排队时延进行预测, 并分析了不同时间尺度融合LSTM模型的预测结果。实验结果表明, 3种时间尺度融合模型较其他数目时间尺度融合模型所得预测结果的实时性更好且准确性更高。与LSTM、SVR等预测模型相比, LSTM-Merge模型所得预测结果更精准。下一步将在预测更大规模网络时延时引入自编码降维模块, 实现对时间序列矩阵的有效降维。
[1] |
PENG Bo.Research on QoS technology based on SDN[D].Chengdu: University of Electronic Science and Technology of China, 2018.(in Chinese) 彭波.基于SDN的QoS技术研究[D].成都: 电子科技大学, 2018. |
[2] |
WINTER M, BREITSAMTER C.Coupling of recurrent and static neural network approaches for improved multi-step ahead time series prediction[EB/OL].[2019-06-25].https://link.springer.com/chapter/10.1007/978-3-319-64519-3_39.
|
[3] |
KIM C, SIVARAMAN A, KATTA N, et al.In-band network telemetry via programmable dataplanes[EB/OL].[2019-06-25].https://www.mendeley.com/catalogue/11b69e55-1c8e-335a-b684-e3eceec4cc94/.
|
[4] |
LIN Yunsenxiao, BI Jun, ZHOU Yu, et al. Research and applications of programmable data plane based on P4[J]. Chinese Journal of Computers, 2019, 42(11): 1-21. (in Chinese) 林耘森箫, 毕军, 周禹, 等. 基于P4的可编程数据平面研究及其应用[J]. 计算机学报, 2019, 42(11): 1-21. |
[5] |
DAI Mian, CHENG Guang, ZHOU Yuyang. Survey on measure-ment methods in software-defined networking[J]. Journal of Software, 2019, 30(6): 1853-1874. (in Chinese) 戴冕, 程光, 周余阳. 软件定义网络的测量方法研究[J]. 软件学报, 2019, 30(6): 1853-1874. |
[6] |
SOMARAKIS C, GHAEDSHARAF Y, MOTEE N. Time-delay origins of fundamental tradeoffs between risk of large fluctuations and network connectivity[J]. IEEE Transactions on Automatic Control, 2019, 64(9): 3571-3586. DOI:10.1109/TAC.2019.2894615 |
[7] |
DANG Yaoguo, LIU Zhen, YE Jing. Direct modeling method of unbiased non-homogeneous grey prediction model[J]. Control and Decision, 2017, 32(5): 823-828. (in Chinese) 党耀国, 刘震, 叶璟. 无偏非齐次灰色预测模型的直接建模法[J]. 控制与决策, 2017, 32(5): 823-828. |
[8] |
DAI Xingyuan, FU Rui, LIN Yilun, et al.DeepTrend: a deep hierarchical neural network for traffic flow prediction[C]//Proceedings of 2017 IEEE International Conference on Intelligent Transportation Systems.Washington D.C., USA: IEEE Press, 2017: 21-28.
|
[9] |
XU Ning, DANG Yaoguo, GONG Yande. Novel grey prediction model with nonlinear optimized time response method for forecasting of electricity consumption in China[J]. Energy, 2017, 118(1): 473-480. |
[10] |
DOUCOURE B, AGBOSSOU K, CARDENAS A. Time series prediction using artificial wavelet neural network and multi-resolution analysis: application to wind speed data[J]. Renewable Energy, 2016, 92(7): 202-211. |
[11] |
LI Hongze, GUO Sen, LI Chunjie, et al. A hybrid annual power load forecasting model based on generalized regression neural network with fruit fly optimization algorithm[J]. Knowledge-Based Systems, 2013, 37(2): 378-387. |
[12] |
LIU Yuan, WANG Ruixue. Study on network traffic forecast model of SVR optimized by GAFSA[J]. Chaos, Solitons and Fractals, 2015, 89(3): 153-159. |
[13] |
CHEN Yuehui, YANG Bin, MENG Qingfang. Small-time scale network traffic prediction based on flexible neural tree[J]. Applied Soft Computing, 2012, 12(1): 274-279. |
[14] |
JOSHI M, HADI T.A review of network traffic analysis and prediction techniques[EB/OL].[2019-06-25].http://www.oalib.com/paper/4048815#.X0SSgFN_n3Q.
|
[15] |
LI Peiyu. Short-term traffic flow prediction based on wavelet and neural network[J]. Computer Technology and Development, 2020, 30(1): 135-139. (in Chinese) 李佩钰. 一种基于小波和神经网络的短时交通流量预测[J]. 计算机技术与发展, 2020, 30(1): 135-139. |
[16] |
WANG Pengtao, HAN Xiaoming, HE Min. Prediction simulation of bicycle demand for public bicycle stations[J]. Computer Simulation, 2019, 36(8): 421-426, 458. (in Chinese) 王鹏涛, 韩晓明, 贺敏. 公共自行车站点需求量预测仿真[J]. 计算机仿真, 2019, 36(8): 421-426, 458. |
[17] |
JIA Hengjian.Investigation into the effectiveness of long short term memory networks for stock price prediction[EB/OL].[2019-06-25].https://arxiv.org/abs/1603.07893v1.
|
[18] |
ZHAO Zheng, CHEN Weihai, WU Xingming, et al. LSTM network: a deep learning approach for short-term traffic forecast[J]. IET Intelligent Transport Systems, 2017, 11(2): 68-75. |
[19] |
KOZIK R. Distributing extreme learning machines with apache spark for NetFlow-based malware activity detection[J]. Pattern Recognition Letters, 2018, 101(1): 14-20. |
[20] |
ZHANG Junbo, ZHENG Yu, QI Dekang.Deep spatio-temporal residual networks for citywide crowd flows prediction[EB/OL].[2019-06-25].https://www.researchgate.net/publication/308809186_Deep_Spatio-Temporal_Residual_Networks_for_Citywide_Crowd_Flows_Prediction.
|
[21] |
SHAO H X, SOONG B H.Traffic flow prediction with Long Short-Term Memory Networks(LSTMs)[C]//Proceedings of TENCON'16, Washington D.C., USA: IEEE Press, 2016: 2986-2989.
|
[22] |
TULI H, KUMAR S.Prediction analysis of delay in transferring the packets in adhoc networks[C]//Proceedings of 2016 International Conference on Computing for Sustainable Global Development.Washington D.C., USA: IEEE Press, 2016: 35-42.
|
[23] |
FENG Ning, GUO Shengnan, SONG Chao, et al. Multi-component spatial-temporal graph convolution networks for traffic flow forecasting[J]. Journal of Software, 2019, 30(3): 759-769. (in Chinese) 冯宁, 郭晟楠, 宋超, 等. 面向交通流量预测的多组件时空图卷积网络[J]. 软件学报, 2019, 30(3): 759-769. |