APP下载

基于模糊矩阵的多线程网络通信延迟检测技术研究

2020-11-09张翠芳姬楠楠

科学技术与工程 2020年27期
关键词:网络通信队列动态

张翠芳, 姬楠楠

(1.大连工业大学艺术与信息工程学院机械工程系, 大连 116400; 2.长安大学理学院, 西安 710049)

多线程网络是通信网络中重要的一种,不同于一般的通信网络,该网络能够在一个任务进程中开启多条线程,每一条线程都能并行执行多种不同的任务,有效提升任务执行效率,降低CPU(中央处理器)与内存消耗[1]。多线程网络具有加快运行速度、可后台运行处理时间较长的任务进而减少内存占用等优点[2]。同时也存在需要切换操作系统进而影响网络性能、内存过少导致系统无法运行、多线程、多任务同时运行可能会使程序出现bug,单线程终止可能会导致整个程序崩溃、多线程共用一个块模型可能出现线程死锁情况等缺点[3]。目前,相关学者已经对多线程网络通信延迟检测问题进行了研究,并取得了一定的研究成果。

文献[4]提出一种边缘计算环境下应用驱动的网络延迟测量与优化技术,对应用系统架构特征进行提取,根据提取结果分析产生延迟的原因,并将原因进行分类,依据分类结果提出控制延迟的理论及具体方法。根据实验结果可知,该方法对网络通信延迟的影响因素以及产生延迟的原因分词的较为具体,但是不能对网络通信时延进行准确检测。文献[5]提出一种容错网络中分布式故障节点检测方法,提出了一种完全分布式且易于实现的方法,使每个DTN(即时延容忍网络)节点能够快速识别其传感器是否产生故障数据。该算法的动力学行为由一些连续的时间-状态方程来近似,并对其平衡进行了描述。同时也考虑了节点行为不当的存在,试图干扰故障节点检测过程。通过对理论和仿真结果的比较可知,该方法的检测结果准确性较高,但是易受干扰,稳定性不强。文献[6]提出基于集合点概念的多线程网络延迟检测技术,集合点是网络中移动接收器暂停并从附近的传感器节点收集数据的位置。为无线传感器网络的延迟约束应用中的移动宿轨迹的有效设计提出了一种有效的RP(快速成形技术)选择算法。该算法基于虚拟路径和最小生成树,对通信延迟做出检测。该检测方法的检测准确性较好,但检测耗时较长。

多线程网络对应用系统要求较高,研究了一种基于模糊矩阵的多线程网络通信延迟检测技术,准确、高效率检测出多线程网络通信延迟,为多线程网络高速运行提供可靠地保障。

1 多线程网络通信延迟检测技术

1.1 多线程网络通信延迟理论分析

多线程网络通信延迟时间由生成延迟、队列延迟、传输延迟、接收延迟4个部分组成。多线程网络通信延迟结构图如图1所示。

图1 多线程网络通信延迟结构Fig.1 Communication delay structure of multithreaded network

图1中,微处理器接收到节点产生数据至将数据加入缓冲队列过程中出现的延迟称为生成延迟。缓冲队列内数据从消息帧至获取总线控制权线间产生的延迟称为队列延迟。数据从发送节点的总线控制器至接收节点的总线控制器过程中产生的延迟称为传输延迟。从接收节点总线控制器到有效数据发送至接收节点微处理器过程产生的延迟称为接收延迟。

在多线程网络中,生成延迟与接收延迟与多线程网络特性无关,仅与节点处理器运行程度有关,并且与队列延迟和传输延迟相比数量极小,因此考虑通信延迟时可忽略不计。多线程网络通信延迟时间表示为

Rm=qm+tm

(1)

式(1)中:Rm为多线程网络通信延迟;qm为多线程网络中队列延迟;tm为多线程网络中传输延迟。

1.1.1 队列延迟

在多线程网络中,静态段发送消息时间固定,因此无须考虑网络中静态段队列延迟,仅考虑多线程网络中动态段队列延迟[6]。

在多线程网络中,各消息帧按优先权高低顺序发送,因此如果动态时间段不够长,优先权低的消息帧有可能无法发送[7]。为避免队列延迟计算时未考虑低优先权消息,设多线程网络中时间长度足够长,所有动态段消息足够在通信周期内发送[8]。

多线程网络中各消息间可能发生碰撞,因此队列延迟为随机变量,设E(x)为队列延迟qm这一随机变量的数学期望。

设动态段消息生成呈均匀分布,随机时间动态段消息帧生成概率密度用d表示,可得

(2)

式(2)中:Q为生成1帧动态消息的通信周期数;L多线程网络通信周期长度。

设平均延迟时间为f,可得

(3)

式(3)中:n0为静态段最后消息帧的ID;T为动态段消息帧由动态槽数量对应ID发送产生的延迟;M为动态段消息帧由动态槽数量未对应ID发送产生的延迟。

当优先权高于n的动态信息帧完成发送,动态信息帧n开始发送,因此f表示动态信息帧n平均发送时刻。

用t表示动态信息帧n生成时间,那么从生成时间t至发送时间间隔为x(t),则有:

(4)

式(4)中:t为动态段开始时间;L为多线程网络通信周期长度。动态信息帧n在满足0≤x

动态信息帧n队列延迟的数学期望公式为

(5)

用e2表示E(x)的方差,则有:

(6)

均方差计算公式为

(7)

以上分析可知,多线程网络内动态信息帧队列延迟的数学期望与均方差由通信周期长度决定[9]。

1.1.2 传输延迟

多线程网络中传输延迟仅受信息帧本身及总传输线的参数影响[10]。依据各参数建立静态帧与动态帧传输延迟数学模型如下:

tm,s=[7+1+2+td+(8+Sm)(8+2)]fbit=

(90+td+10Sm)fbit

(8)

tm,D=[7+1+2+td+tDTS+(8+Sm)(8+2)]fbit=

(90+td+tDTS+10Sm)fbit

(9)

式中:Sm为数据场在数据帧中长度;fbit为位时间;td为发送与接收节点时造成的传播延迟,一般为2位或3位。传输开始序列通常为5~15位,帧开始序列与结尾序列为1位和2位。动态段包括用于排列时间片的动态帧结尾序列,因此比静态段多4位以上[11]。

1.2 基于模糊矩阵的多线程网络通信延迟检测

在多线程网络通信延迟理论分析基础上构建多线程网络通信延迟检测模糊矩阵,利用队列延迟qm与传输延迟tm设置多线程网络通信延迟检测模糊矩阵具体过程如下。

建立多线程网络通信延迟检测模糊矩阵S=[sqmtm]n×n,为便于计算,用i表示qm,用j表示tm。为评价模糊矩阵中不同元素的重要程度,设置权重评估系数k∈[0,1],当k=1时,该元素的最重要,因此该矩阵满足∀i,j,k,sij=sik-sjk+0.5,那么模糊矩阵S为模糊一致性矩阵。利用此模糊一致性矩阵对多线程网络中通信延迟进行评价[12-13],实现多线程网络通信延迟情况的有效检测,模糊一致性矩阵中元素Sij作为第i个通信数据评价指标Si对第j个通信数据评价指标Sj的重要度,3种评价标准分别为:①Si与Sj同样重要时,Sij=0.5;②当Sj比Si重要时,0≤Sij<0.5;③当Si比Sj重要时,0.5

该模糊矩阵中,所有指标与自身重要度相同,因此对角线数值均为0.5;不同行相应位置两个数值相减结果为常数。

用R表示模糊矩阵中训练集,用{E1,E2,…,Ek}表示类别级,将训练集R利用属性P分类为差异子集[14]。假设属性P为{P1,P2,…,Pk},其中包含n个数值,那么训练集R利用属性P分类为i个子集。数据集R的例子数用|R|表示,P=Pi的例子数用|Ri|表示,Ej类的粒子数用|Ei|表示,并且满足|Ei|=f(Ej,R),P=Pi粒子内含有Ej类别的例子数用|Rip|表示,则类别Ej与属性P=Pi的发生概率分别为

Q(Ej)=|Ej|∧R|=f(Ej,R)∧R|

(10)

Q(pi)=|Ri|∧R|

(11)

类别Ej在属性P=Pi例子中的条件概率为

Q(Ej/pi)=|Rjp|∧Rj|

(12)

在多线程网络中,干扰噪声类别信息熵公式为

(13)

条件通信类别熵公式为

(14)

根据式(13)、式(14)可得信息增益公式为

Z(E,P)=U(E)-U(K)=I(R)=G(P)

(15)

可知通信信息属性P信息熵公式为

(16)

通信信息增益率公式为

G=Z(E,P)/U(P)/I(P)

(17)

经1 000次计算1~8阶正互反矩阵,所得平均随机一致性指标结果如表1所示。

表1 平均随机一致性指标

最终可得求解模糊矩阵的一致性比例公式为

(18)

若式(18)结果小于0.1,该模糊矩阵一致性较强;若结果大于等于0.1,那么该模糊矩阵一致性较弱,需要调整该矩阵。通过以上步骤计算,利用信息熵所得模糊一致矩阵的结果为-0.985 6,因结果小于0.1,可知该模糊矩阵一致性较强,可以用作多线程网络通信延迟检测。

2 实验分析

为验证基于模糊矩阵的多线程网络通信延迟检测技术的有效性,在Qualnet高性能网络模拟系统中利用本文方法对多线程网络通信延迟进行仿真检测实验,并与文献[4]和文献[5]方法进行比较,QualNet网络模拟系统是美国研发的产品,该系统主要对无线移动通信网络进行优化处理。实验设置多线程网络平台共200个传输节点,对2 GB数据进行传输,测试该过程的传输延迟特性。实验参数配置如表2所示。

在仿真多线程网络平台下进行一次通信,验证本文方法检测通信延迟的有效性,本次通信延迟检测结果如表3所示。

表2 实验参数配置

表3 通信延迟检测结果对比

从表3可以看出,本文方法可有效检测出多线程网络中不同帧的通信延迟情况,与实际延迟对比可以看出本文方法检测准确率较高,误差在5 ms之内,而文献[4]方法虽也可以检测出通信延迟,但是误差较大。

在仿真系统中将待检测多线程网络设置10个节点,在带宽分别为1、5、10、20 MB/s时检测网络通信10个通信节点的延迟情况,检测时间为10 min,检测结果如表4所示。

表4 带宽为1 MB/s时节点延时检测结果

从表4结果可以看出,随着带宽的增加,网络延时随之增加,这与实际情况相符。本文方法在不同带宽下检测多线程网络通信延迟结果与实际通信延迟结果相差不大,检测误差在10 ms左右,并且可以准确检测出节点8存在的通信延迟较长情况,说明节点8出现故障;而文献[5]方法检测通信延迟结果与实际通信延迟误差较大,并且无法检测通信出现故障的具体节点位置。

多线程网络通信中延时检测方法较容易受到噪声干扰导致检测不够准确,为验证本文检测方法的稳定性,验证不同干扰情况下检测方法准确性,在单音干扰、多音干扰情况下分别进行检测,检测结果如图2所示。

从图2(a)、图2(b)可以看出,随着信噪比的增加,两种检测方法对干扰信号的抑制作用都开始降低,但文献[5]方法降低幅度明显大于本文方法,说明本文方法抗干扰能力高于神经网络方法,在噪声较强环境下依然可以准确检测出多线程网络中的通信延迟情况。这是由于本文方法利用队列延迟与传输延迟建立多线程网络通信延迟检测模糊矩

图2 检测性能对比Fig.2 Comparison of detection performance

阵,通过该矩阵对多线程网络中通信延迟情况进行评价判别,能够降低干扰因素的影响,从而保证通信延迟检测的准确性,而传统方法没有考虑到队列延迟对网络通信延迟的影响,因此存在检测准确性低的问题。

多线程网络的实际通信中,不仅有着频率特征集中的单音噪声与多音噪声,还存在频率特征分散的窄带干扰,图2(c)为两种方法在窄带干扰下的通信延迟检测结果。

由图2(c)可以看出,在频率特征分散的窄带干扰信号较强时,本文方法的延迟检测准确率保持在90%~100%,而文献[5]方法的延迟检测准确率平均保持在70%~90%,说明本文方法延迟检测准确率仍优于文献[5]方法,验证了本文方法的稳定性。

以上实验结果可知,本文方法在不同带宽情况下检测多线程网络中通信延迟检测误差小于10 ms,并且可以准确检测出延时过长的节点8,在不同干扰情况下检测准确性仍高于90%,验证了本文方法的准确性和稳定性,说明本文方法可应用在实际多线程网络通信检测中。

3 结论

基于模糊矩阵理论研究了多线程网络下的通信延迟检测方法,并通过仿真实验验证了该方法在不同带宽与不同噪声干扰下的通信延迟检测情况,结果表明通过该方法在多线程网络通信中检测通信延迟准确率在90%以上,通信延迟检测误差低于10 ms,验证了利用该方法检测通信延迟的稳定性和准确性,说明了该方法的研究对多线程网络是相当有价值的,可应用在多种干扰环境下的实际应用中,为多线程网络的高效运行提供了保障。

猜你喜欢

网络通信队列动态
国内动态
国内动态
国内动态
队列队形体育教案
队列里的小秘密
基于多队列切换的SDN拥塞控制*
动态
基于网络通信的智能照明系统设计
在队列里
计算机网络通信常见问题与技术发展研究