专利名称:一种导致QoS异常因素的检测方法和系统的制作方法
技术领域:
本发明涉及QoS (Quality of Service,服务器质量)异常检测技术,尤 其涉及一种QoS异常检测方法、系统及装置。
背景技术:
随着科学的发展和技术的进步,越来越多的媒体技术走进千家万户,其 中P2P (PeertoPeer,点对点)技术是流媒体直播技术中应用的较为广泛的 技术,也成为业界研发的重点。
传统的流媒体直播系统中,客户端的流媒体数据均由流媒体服务器 (Media Server, MS )实时提供,虽然骨干网络不断升级,但随着用户(Client) 的数量不断增加,也给骨干网络带来冲击,同时也加大了媒体服务器的负荷。 因此,媒体服务器的性能及QoS成为系统的瓶颈。为了解决媒体服务器性 能和QoS的问题,P2P的技术得到了广泛的应用,其主要是通过网络中的节 点(Peer)实时接收并上传媒体数据,通过用户之前的相互协作,充分利用 边缘网络资源,不再要求媒体服务器提供全部数据,甚至不需要媒体服务器 的任何数据,就可以观看直播的节目。
P2P直播流媒体技术虽然突破了传统直播系统的瓶颈,但也引入了新的 问题。在传统直播系统中,所有的媒体数据都来自媒体服务器,媒体服务器 是由运营商提供,相对稳定,可提供可靠的服务。而在P2P直播系统中,用 户的媒体数据来源除了媒体服务器外,还有部分来自其他用户。由于用户的 行为不可预测、不可控制,所以用户不能提供可靠的服务。
业界解决上述问题的方法是通过统计一定时间内发出的数据量来计算 上行带宽,即带宽=数据量/时间,由此得出节点提供服务的能力,作为节
点服务质量的依据,从而进行QoS异常检测,通过QoS异常检测信息来保 证QoS。
带宽是通过公式(带宽=数据量/时间)计算的,但是由于统计的时间是有限 的,而且数据的传输不可能保证一直是一个稳定的带宽传输,所以计算结果 的误差较大;并且该方案是通过计算节点发出的数据量来统计的,实际上节 点发出的数据量与接收者接收的数据量还可能存在差异,导致该方法计算得 到的带宽数据及其不稳定,系统的QoS并不能真正得到保证。
发明内容
有鉴于此,实有必要提供一种导致QoS异常因素的检测方法,来解决 现有的P2P系统中QoS异常信息不能被准确检测的问题。
同时,提供一种导致QoS异常因素的检测系统,来解决现有的P2P系 统中QoS异常信息不能被准确检测的问题。
一种导致QoS异常因素的检测方法,包括如下步骤 接收服务器分片后的点对点P2P的数据码流; 根据所述数据码流判断节点的数据流是否存在数据丢失信息; 若存在数据丟失信息,根据域值参数确定导致QoS异常的因素。 一种导致QoS异常因素的检测系统,包括 接收模块,用于接收服务器分片后的点对点P2P的数据码流; 数据丟失信息判断模块,用于根据所述数据码流判断节点的数据流是否 存在数据丢失信息;
异常因素确定模块,用于根据域值参数确定导致QoS异常的因素。 与现有技术相比,本发明实施例通过接收服务器分片后的点对点P2P 的数据码流;根据数据码流判断节点的数据流是否存在数据丢失信息;在节 点的数据流存在数据丢失信息时,根据域值参数确定导致QoS异常的因素, 使得QoS异常信息能头准确定位到域,QoS异常因素的也可以被准确枱r测,
保证了 P2P系统中QoS异常信息可以被准确检测,使得系统中的QoS能够 真正得到保证。
图1为本发明实施例节点拓朴网络结构示意图。
图2为本发明实施例QoS异常检测系统结构示意图。
图3为本发明实施例P2P直播码流分片示意图。
图4为本发明实施例第一个4企测周期T1的记录示意图。
图5为本发明实施例第n个检测周期Tn的记录示意图。
图6为本发明实施例QoS异常^r测方法整体流程示意图。
图7为本发明实施例QoS异常4企测方法详细流程示意图。
具体实施例方式
请参看图1,图1为本发明实施例节点拓朴网络结构示意图。本实施例 以P2P直#"系统为例进行说明,在P2P直^"系统中,网络拓朴结构存在多 种模型,但可就一个节点在拓朴中的位置,可以定义如下节点T(PeerT) 存在n (n〉=l)个父节点为节点T提供数据流,同时给m ( m>=l )个子节 点提供数据流。
节点T的QoS异常种类包括上行带宽异常、下行带宽异常和网络类 异常,上行带宽异常也可以称为父节点异常,下行带宽异常也可以称为子节 点异常。请结合参看图2,本发明实施例QoS异常检测系统200包括接收 模块202、分片存储模块204、数据丟失信息判断模块206、异常因素确定 模块208和异常处理模块222。
接收模块202用于接收服务器分片后的点对点P2P的数据码流,本实施 例中以媒体服务器从直播源接收到一定的数据码流为例(如1316B)。
分片存储模块204,用于存储将服务器分片后的点对点P2P的数据码流。 本实施例中,将数据分片结构请结合参看图3的数据分片,即在该数据加
上一个头head信息,head信息中包括分片编号(顺序编号,该编号与播放 顺序保持一致),时间戳(取媒体服务器的当前系统时间)。由此,可以得 到任意两个分片之间的时间间隔,假设直播源与媒体服务器之间的网络是可 靠的,则该间隔可以视为两个分片之间的数据能维持的时间。例如,本实施 例中从分片 100到分片 126 , 可以播放的时间近似等于 1285789-1278636=7153ms。
数据丢失信息判断模块206,用于根据数据码流判断节点的数据流是否 存在数据丟失信息。异常因素确定模块208,用于根据域值参数确定导致 QoS异常的因素。本实施例中,异常因素确定模块208还包括周期触发检 测单元210、父节点QoS指数计算单元212、异常统计单元214、异常类型 判断单元216、父节点异常上报单元218和子节点异常数据检测单元220。
周期触发^r测单元210,用于;f企测时间周期并触发QoS4企测。本实施例 中,QoS检测周期T触发,第一次检测时,记录父节点F发送过来的大分片 Sl及该分片的时间戳Tl,以后第n (n〉=2)个周期才全测时,获取父节点F 发送的最大分片Sn及该分片的时间戳Tn。
父节点QoS指数计算单元212,用于计算父节点F的QoS指数并判断 该QoS指数是否异常。本实施例中,以下两种情况视为异常
A) 假设数据正常时,S(n-l)到Sn分片需要有An个来自父节点F,实 际从S(n-l)分片到Sn分片有Bn个来自父节点F,如果S(n-l)到Sn之间来 自父节点F的数据分片丟失率达到域值,视为异常,即
(An-Bn)/ Bn > L
B) 如果数据正常,在n个周期应该接收到可以播放(n-l广T的分片,如 果数据流延时达到域值,视为异常,即
(n画l) * T - (Tn - Tl) > D 其中,本实施例中域值参数包括丟失率域值L和延时域值D。 L;数据丢失率域值,即在一段时间内应该接收到某个父节点w个 数据分片,子节点实际接收X个,丟失(L - X)/ W ,当该值大于L时,
数据流异常;
D;时间延时域值,即在一段时间R内,子节点接收到的数据分片 可以插j文的时间为V,时间延时为R-V,当该值大于D时,数据流异常。 ;险测A)时也可以采用如下方法
假设数据正常时,Sl到Sn分片需要有An个来自父节点F,实际从S1 分片到Sn分片有Bn个来自父节点F,如果Sl到Sn之间来自父节点F的数 据分片丢失率达到域值,视为异常,即
(An-Bn)/ Bn > L
以下以具体应用实例来说明设置检测周期T = 6000ms,数据丢失率域 值为L = 20%,时间延时域值D = 8000ms;
假设节点F为节点T的父节点,提供分片号为被5整除的分片,第一 个检测周期,数据请参看图4(白色代表还未接收,其他灰色方格代表已经接 收)。第一个检测周期记录Sl=75, Tl=122432;第n=5个周期检测记录Sn =995, Tn= 144978;
1. 计算分片丟失率
在11 = 5的周期内应该接收来自节点?的分片数八5 = (995 _ 775)/5 + 1 = 23,实际接收B5-21,分片丢失率=(23_21)/23 = 8.7%<20%,分片丟失率 正常。
2. 计算时间延时
在11=5的检测时,接收的最大分片的时间戳T5 = 144978,第一个周期 记录最大分片的时间戳Tl = 122432,当前周期时间延时=(n-l)*T-(T5-Tl) =(5-1)*6000 - (144978-122432) = 1454ms<8000ms,时延正常。
因此,父节点F在第n=5个周期QOS检测正常。
异常统计单元214,用于统计QoS异常节点数目。本实施例中,根据计 算出来的父节点QoS异常数目进行统计。
异常类型判断单元216,用于判断QoS异常的类型,本实施例中QoS 异常的类型包括上行带宽异常、下行带宽异常和网络异常等。 子节点下行能力异常的判定
QOS周期T触发,假设在该周期检测中,节点有n个父节点,通过单 个父节点QOS检测策略可以检测出与y个父节点之间的数据传输异常,如 果y/n >Y,则节点的下行能力不足;
域值参数
Y;下行带宽不足域值,即假设节点有n个父节点,检测发现与y个 父节点之间的数据传输异常,当y/n〉Y时,则该节点的下行带宽不足。
子节点判断并非自身下行能力不足时,则向父节点发送接收数据异常通知。
父节点上行能力异常的判定
QOS周期T触发,假设在该周期检测中,节点有k个子节点,其中在 该周期内有u个子节点上报本节点数据传输异常,如果u/m〉U,则节点 的上行能力不足;
域值参数
U;上行带宽不足域值,即假设节点有m个子节点,检测发现与u 个子节点之间的数据传输异常,当u/m〉U时,则该节点的上行带宽不足。 网络异常的判定
当QOS检测存在某些数据流异常,通过子节点下行能力异常判断并非 子节点因素所致,通知相应的父节点,而父节点通过上行能力异常判断也并 非父节点因素导致,该情况视为网络异常。
父节点异常上报单元218,用于上报当前节点QoS异常,本实施例中, 该异常为非下行异常,该异常可以包括上行异常和网络异常等。
子节点异常数据检测单元220,用于检测当前周期接收子节点上报QoS 异常的数目。本实施例中,计算子节点QoS异常数目与计算父节点QoS异 常数目类似,不再赘述。
本发明实施例通过接收服务器分片后的点对点P2P的数据码流;根据数 据码流判断节点的数据流是否存在数据丟失信息;在节点的数据流存在数据
丟失信息时,根据域值参数确定导致QoS异常的因素,使得QoS异常信息 能头准确定位到域,QoS异常因素的也可以被准确检测,保证了 P2P系统中 QoS异常信息可以被准确检测,使得系统中的QoS能够真正得到保证。通 过时间戳机制屏蔽了码率的波动因素,并且通过时间戳机制引进了时延异 常,可以及时检测出数据流的异常,并综合考虑各种导致数据流异常的因素, 通过统计原理来判断,比较QoS异常的场景,有利于拓朴结构的优化调整, 防止对QoS异常的不准确判定。
请结合参看图6,本发明实施例QoS异常检测方法包括如下步骤 步骤602,接收服务器分片后的点对点P2P的数据码流,本实施例中以 媒体服务器从直播源接收到一定的数据码流为例(如1316B)。本实施例 中,将数据分片结构请结合参看图3的数据分片,即在该数据加上一个头 head信息,head信息中包括分片编号(顺序编号,该编号与播放顺序保持 一致),时间戳(取媒体服务器的当前系统时间)。由此,可以得到任意两 个分片之间的时间间隔,假设直播源与媒体服务器之间的网络是可靠的,则 该间隔可以碎见为两个分片之间的数据能维持的时间。例如,本实施例中/人分 片100到分片126,可以播;改的时间近似等于1285789-1278636=7153ms。 步骤604,根据所述数据码流判断节点的数据流是否存在数据丢失信息。 步骤606,根据域值参数确定导致QoS异常的因素。本实施例中,以下 两种情况视为异常
A) 假设数据正常时,S(n-l)到Sn分片需要有An个来自父节点F,实 际从S(n-l)分片到Sn分片有Bn个来自父节点F,如果S(n-l)到Sn之间来 自父节点F的数据分片丟失率达到域值,视为异常,即
(An-Bn)/ Bn > L
B) 如果数据正常,在n个周期应该接收到可以播;改(n- 1)*T的分片,如 果数据流延时达到域值,视为异常,即
(n-l) * T - (Tn- Tl) > D 其中,本实施例中域值参数包括丟失率域值L和延时域值D。L;数据丟失率域值,即在一段时间内应该接收到某个父节点w个 数据分片,子节点实际接收X个,丟失(L _ X)/ W ,当该值大于L时, 数据流异常;
D;时间延时域值,即在一段时间R内,子节点接收到的数据分片 可以播放的时间为V,时间延时为R-V,当该值大于D时,数据流异常。 ;险测A )时也可以采用如下方法
假设数据正常时,Sl到Sn分片需要有An个来自父节点F,实际从S1 分片到Sn分片有Bn个来自父节点F,如果Sl到Sn之间来自父节点F的数 据分片丟失率达到域值,视为异常,即
(An-Bn)/ Bn 〉 L
请结合参看图7,本发明实施例QoS异常检测方法,包括如下步骤
步骤702,接收服务器分片后的点对点P2P的数据码流,本实施例中以 媒体服务器从直播源接收到一定的数据码流为例(如1316B)。本实施例 中,将数据分片结构请结合参看图3的数据分片,即在该数据加上一个头 head信息,head信息中包括分片编号(顺序编号,该编号与播放顺序保持 一致),时间戳(取媒体服务器的当前系统时间)。由此,可以得到任意两 个分片之间的时间间隔,假设直播源与媒体服务器之间的网络是可靠的,则 该间隔可以视为两个分片之间的数据能维持的时间。例如,本实施例中从分 片100到分片126,可以播放的时间近似等于1285789-1278636=7153ms。
步骤704,检测时间周期并触发QoS检测。本实施例中,QoS检测周期 T触发,第一次检测时,记录父节点F发送过来的大分片Sl及该分片的时 间戳Tl,以后第n (n>=2)个周期检测时,获取父节点F发送的最大分片 Sn及该分片的时间戳Tn 。
步骤706,根据所述数据码流判断节点的数据流是否存在数据丢失信息,
计算父节点F的QoS指数并判断该QoS指数是否异常。本实施例中,以下
两种情况视为异常
A)假设数据正常时,S(n-l)到Sn分片需要有An个来自父节点F,实
际从S(n-l)分片到Sn分片有Bn个来自父节点F,如果S(n-l)到Sn之间来 自父节点F的数据分片丢失率达到域值,视为异常,即
(An-Bn)/ Bn 〉 L
B)如果数据正常,在n个周期应该接收到可以播放(n- 1)*T的分片,如
果数据流延时达到域值,视为异常,即
(n-l) * T-(Tn-T1)〉D 其中,本实施例中域值参数包括丟失率域值L和延时域值D。 L; 数据丟失率域值,即在一段时间内应该接收到某个父节点w个
数据分片,子节点实际接收X个,丟失(L - X)/ W ,当该值大于L时,
数据流异常;
D;时间延时域值,即在一段时间R内,子节点接收到的数据分片 可以播放的时间为V,时间延时为R-V,当该值大于D时,数据流异常。 -险测A)时也可以采用如下方法
假设数据正常时,Sl到Sn分片需要有An个来自父节点F,实际从S1 分片到Sn分片有Bn个来自父节点F,如果Sl到Sn之间来自父节点F的数 据分片丟失率达到域值,视为异常,即
(An-Bn)/ Bn > L
以下以具体应用实例来说明设置检测周期T = 6000ms,数据丟失率域 值为L = 20%,时间延时域值D = 8000ms;
假设节点F为节点T的父节点,提供分片号为被5整除的分片,第一 个检测周期,数据请参看图4(白色代表还未接收,其他灰色方格代表已经接 收)。第一个检测周期记录Sl=75, Tl=122432;第n=5个周期检测记录Sn =995, Tn= 144978;
1.计算分片丢失率
在11 = 5的周期内应该接收来自节点F的分片数A5 = (995 - 775)/ 5 + 1 = 23,实际接收B5-21,分片丟失率=(23 - 21)/23 = 8.7%<20%,分片丢失率 正常。
2.计算时间延时
在11=5的检测时,接收的最大分片的时间戳T5 = 144978,第一个周期 记录最大分片的时间戳Tl = 122432,当前周期时间延时=(n-l)*T-(T5-Tl) =(5國1)*6000 - (144978-122432) = 1454ms〈8000ms,时延正常。
因此,父节点F在第n=5个周期QOS检测正常。
步骤708,统计QoS异常节点数目。本实施例中,根据计算出来的父节 点QoS异常数目进行统计。
步骤710,判断QoS异常的类型是否属于下行异常,若属于下行异常, 执行步骤712,若不属于下行异常执行步骤714。本实施例中,子节点下行 能力异常的判定
QOS周期T触发,假设在该周期检测中,节点有n个父节点,通过单 个父节点QOS检测策略可以检测出与y个父节点之间的数据传输异常,如 果y/n >Y,则节点的下行能力不足;
域值参数
Y;下行带宽不足域值,即假设节点有n个父节点,检测发现与y个 父节点之间的数据传输异常,当y/n〉Y时,则该节点的下行带宽不足。
子节点判断并非自身下行能力不足时,则向父节点发送接收数据异常通知。
步骤712,针对下行异常进行处理,执行完步骤716后,结束本流程。
步骤714,上报当前节点QoS异常,本实施例中,该异常为非下行异常, 该异常可以包括上行异常和网络异常等。
步骤716,检测当前周期接收子节点上报QoS异常的数目,本实施例中, 计算子节点QoS异常数目与计算父节点QoS异常数目类似,不再赘述。
步骤718,判断是否是上行异常,若是上行异常执行步骤720,若不是 上行异常,执行步骤722。父节点上行能力异常的判定
QOS周期T触发,假设在该周期检测中,节点有k个子节点,其中在 该周期内有u个子节点上报本节点数据传输异常,如果u/m〉U,则节点
的上行能力不足; 域值参数
U;上行带宽不足域值,即假设节点有m个子节点,检测发现与u 个子节点之间的数据传输异常,当u/m〉U时,则该节点的上行带宽不足。 网络异常的判定
当QOS检测存在某些数据流异常,通过子节点下行能力异常判断并非 子节点因素所致,通知相应的父节点,而父节点通过上行能力异常判断也并 非父节点因素导致,该情况视为网络异常。
步骤720,执行上行异常处理,执行完步骤720后,结束本流程。 步骤722,执行网络异常处理,执行完步骤722后,结束本流程。 本发明实施例通过接收服务器分片后的点对点P2P的数据码流;根据数 据码流判断节点的数据流是否存在数据丟失信息;在节点的数据流存在数据 丢失信息时,根据域值参数确定导致QoS异常的因素,使得QoS异常信息 能头准确定位到域,QoS异常因素的也可以被准确4全测,保证了 P2P系统中 QoS异常信息可以被准确检测,使得系统中的QoS能够真正得到保证。通 过时间戳机制屏蔽了码率的波动因素,并且通过时间戳机制引进了时延异 常,可以及时检测出数据流的异常,并综合考虑各种导致数据流异常的因素, 通过统计原理来判断,比较QoS异常的场景,有利于拓朴结构的优化调整, 防止对QoS异常的不准确判定。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步 骤是可以通过程序来指令相关的饿硬件来完成,所属的程序可以存储于一计 算机可读存储介质中,该程序在执行时,包括如下全部或部分步骤 接收服务器分片后的点对点P2P的数据码流; 根据数据码流判断节点的数据流是否存在数据丟失信息; 若存在数据丟失信息,根据域值参数确定导致QoS异常的因素。 所述的存储介质,如ROM/RAM、磁盘、光盘等。 综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的
保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改 进等,均应包含在本发明的保护范围之内。
权利要求
1.一种导致QoS异常因素的检测方法,其特征在于,该方法包括如下步骤接收服务器分片后的点对点P2P的数据码流;根据所述数据码流判断节点的数据流是否存在数据丢失信息;若存在数据丢失信息,根据域值参数确定导致QoS异常的因素。
2. 如权利要求1所述的导致QoS异常因素的检测方法,其特征在于,所 述根据域值参数确定导致QoS异常的因素包括根据域值参数确定下行带 宽异常,和/或根据域值参数确定上行带宽异常。
3. 如权利要求2所述的导致QoS异常因素的检测方法,其特征在于,所 述根据域值参数确定下行带宽异常包括Qos异常的父节点数目与父节点总 数的比值超过域值时,判定为该父节点QoS异常。
4. 如权利要求2所述的导致QoS异常因素的检测方法,其特征在于,所 述根据域值参数确定上行带宽异常包括上报本节点QoS异常的子节点数 目与子节点总数的比值超过域值时,判定为该子节点QoS异常。
5. 如权利要求1所述的导致QoS异常因素的检测方法,其特征在于,所 述服务器分片后的点对点P2P的数据码流包括数据分片的分片号和/或时 间戳信息。
6. 如权利要求5所述的导致QoS异常因素的检测方法,其特征在于,该 方法利用数据分片和时间戳信息来计算数据流的延时。
7. 如权利要求5所述的导致QoS异常因素的检测方法,其特征在于,该 方法还包括根据数据丟失信息和/或延时信息来判断父节点QoS是否异常。
8. 如权利要求1所述的导致QoS异常因素的检测方法,其特征在于,所 述统计根据域值参数确定导致QoS异常的因素包括上行带宽异常因素和 下行带宽异常因素。
9. 如权利要求8所述的导致QoS异常因素的斗企测方法,其特征在于,该 方法包括步骤 计算父节点QoS异常因素来确定下行带宽是否异常,计算子节点QoS 异常因素来确定上行带宽是否异常。
10. 如权利要求1所述的导致QoS异常因素的检测方法,其特征在于, 该方法包括当确定QoS异常因素为非上行带宽异常和非下行带宽异常时, 确定QoS异常因素为网络异常因素。
11. 一种导致QoS异常因素的检测系统,其特征在于,该系统包括 接收模块,用于接收服务器分片后的点对点P2P的数据码流; 数据丢失信息判断模块,用于根据所述数据码流判断节点的数据流是否存在数据丟失信息;异常因素确定模块,用于根据域值参数确定导致QoS异常的因素。
12. 如权利要求11所述的导致QoS异常因素的检测系统,其特征在于, 该系统进一步包括分片存储模块,用于存储将所述服务器分片后的点对点P2P的数据码流o
13. 如权利要求12所述的QoS异常检测系统,其特征在于,所述异常因 素确定模块还包括QoS指数计算单元,用于计算父节点的QoS指数并判断该QoS指数是 否异常;异常类型判断单元,用于判断QoS异常的类型,该类型包括上行带宽 异常和下行带宽异常。
全文摘要
本发明提供一种导致QoS异常因素的检测方法包括如下步骤接收服务器分片后的点对点P2P的数据码流;根据数据码流判断节点的数据流是否存在数据丢失信息;若存在数据丢失信息,根据域值参数确定导致QoS异常的因素。同时,本发明实施例还提供一种导致QoS异常因素的检测系统。本发明使得QoS异常信息能头准确定位到域,QoS异常因素的也可以被准确检测,保证了P2P系统中QoS异常信息可以被准确检测,使得系统中的QoS能够真正得到保证。
文档编号H04L12/26GK101350740SQ20071012543
公开日2009年1月21日 申请日期2007年12月21日 优先权日2007年12月21日
发明者兑继英, 张卫东, 曹彦东 申请人:华为技术有限公司