著录项信息
专利名称 | 光电跨层网络监测系统、数据处理方法及装置 |
申请号 | CN201910343542.1 | 申请日期 | 2019-04-26 |
法律状态 | 授权 | 申报国家 | 中国 |
公开/公告日 | 2019-07-23 | 公开/公告号 | CN110048912A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | H04L43/08 | IPC分类号 | H;0;4;L;4;3;/;0;8;;;H;0;4;B;1;0;/;0;7;9查看分类表>
|
申请人 | 中国科学技术大学 | 申请人地址 | 安徽省合肥市包河区金寨路96号
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 中国科学技术大学 | 当前权利人 | 中国科学技术大学 |
发明人 | 朱祖勍;牛彬 |
代理机构 | 北京集佳知识产权代理有限公司 | 代理人 | 暂无 |
摘要
本申请提出一种光电跨层网络监测系统,包括光网络监测模块、可编程交换机和数据分析模块;其中,所述光网络监测模块,用于采集光层网络状态信息,并将采集的光层网络状态信息发送给所述可编程交换机;所述可编程交换机,用于采集电层网络状态信息,并将采集的电层网络状态信息和接收的光层网络状态信息插入到带内遥测数据包中;所述数据分析模块,用于从所述可编程交换机的数据转发流水线中抓取带内遥测数据包,并且对抓取的带内遥测数据包进行解析处理,得到光电跨层网络状态信息。上述光电跨层网络监测系统可以实现对光电跨层网络状态的监测。
1.一种光电跨层网络监测系统,其特征在于,包括:
光网络监测模块、可编程交换机和数据分析模块;
其中,所述光网络监测模块,用于采集光层网络状态信息,并将采集的光层网络状态信息发送给所述可编程交换机;
所述可编程交换机,用于采集电层网络状态信息,并将采集的电层网络状态信息和接收的光层网络状态信息插入到带内遥测数据包中;
所述数据分析模块,用于从所述可编程交换机的数据转发流水线中抓取带内遥测数据包,并且对抓取的带内遥测数据包进行解析处理,得到光电跨层网络状态信息;
所述可编程交换机包括:
带内遥测代理子模块,用于针对所述可编程交换机的数据转发流水线进行带内遥测数据包的外部抽样和内部轮询抽样,以及进行带内遥测数据的收集和组合;其中,所述外部抽样为第一轮抽样,所述外部抽样从所述可编程交换机的数据转发流水线的数据包中每隔N个抽取1个成为带内遥测数据包;所述内部轮询抽样为第二轮抽样,所述内部轮询抽样将每一跳所述可编程交换机收集的网络状态分散插入到所述第一轮抽样得到的多个带内遥测数据包中。
2.根据权利要求1所述的系统,其特征在于,所述光网络监测模块,包括:
光设备检测器,用于采集光层网络状态信息;
光设备检测器代理,用于将所述光设备检测器采集到的光层网络状态信息发送给所述可编程交换机,并且存储到本地数据库中。
3.根据权利要求1所述的系统,其特征在于,所述可编程交换机,还包括:
光层遥测子模块,用于接收光层网络状态信息,并将所述光层网络状态信息插入到所述可编程交换机的数据转发流水线中的带内遥测数据包中;
电层遥测子模块,用于将所述可编程交换机采集的电层网络状态信息插入到所述可编程交换机的数据转发流水线中的带内遥测数据包中。
4.根据权利要求3所述的系统,其特征在于,所述可编程交换机还包括:
带内遥测代理子模块,用于针对所述可编程交换机的数据转发流水线进行带内遥测数据包的外部抽样和内部轮询抽样,以及进行带内遥测数据的收集和组合。
5.根据权利要求1所述的系统,其特征在于,所述数据分析模块,包括:
数据包收集模块,用于从所述可编程交换机的数据转发流水线中抓取带内遥测数据包;
带内遥测解析模块,用于对所述数据包收集模块抓取的带内遥测数据包进行解析处理,得到光电跨层网络状态信息。
6.一种数据处理方法,其特征在于,应用于如权利要求1至5中任一权利要求所述的光电跨层网络监测系统的可编程交换机,所述方法包括:
从数据流中选择带内遥测数据包;
向所述带内遥测数据包中插入带内遥测数据域;
对插入了带内遥测数据域的带内遥测数据包进行复制得到两份数据包,其中一份数据包作为光电跨层网络监测数据包,另一份数据包在去除带内遥测数据域后转发给客户端。
7.根据权利要求6所述的方法,其特征在于,所述从数据流中选择带内遥测数据包,包括:
从数据流中选择出需要做带内遥测的数据流;
根据带内遥测决策器分配的令牌,从选择出的需要做带内遥测的数据流中,选出带内遥测数据包。
8.根据权利要求6所述的方法,其特征在于,所述方法还包括:
将所述数据流中未被选择为带内遥测数据包的数据包转发到特定的数据端口。
9.一种数据处理装置,其特征在于,应用于如权利要求1至5中任一权利要求所述的光电跨层网络监测系统的可编程交换机,所述装置包括:
数据包选择单元,用于从数据流中选择带内遥测数据包;
数据域插入单元,用于向所述带内遥测数据包中插入带内遥测数据域;
数据包处理单元,用于对插入了带内遥测数据域的带内遥测数据包进行复制得到两份数据包,其中一份数据包作为光电跨层网络监测数据包,另一份数据包在去除带内遥测数据域后转发给客户端。
10.根据权利要求9所述的装置,其特征在于,所述数据包选择单元,包括:
第一选择单元,用于从数据流中选择出需要做带内遥测的数据流;
第二选择单元,用于根据带内遥测决策器分配的令牌,从选择出的需要做带内遥测的数据流中,选出带内遥测数据包。
光电跨层网络监测系统、数据处理方法及装置\n技术领域\n[0001] 本申请涉及网络监测技术领域,尤其涉及一种光电跨层网络监测系统、数据处理方法及装置。\n背景技术\n[0002] 随着计算机技术不断的进步,网络更是在不断地快速发展,网络规模变得越来越复杂,网络形式变得越来越新颖,例如,电学网络和光学网络相结合的光电跨层网络的应用越来越广泛。\n[0003] 由于网络规模越来越复杂,网络中发生问题的概率也变得越来越大,因此对网络进行监测的必要性也越来越高,而对应上述光电跨层网络,目前尚且缺乏对应的监测系统。\n发明内容\n[0004] 基于上述需求,本申请提出一种光电跨层网络监测系统、数据处理方法及装置,能够实现对光电跨层网络的监测。\n[0005] 一种光电跨层网络监测系统,包括:\n[0006] 光网络监测模块、可编程交换机和数据分析模块;\n[0007] 其中,所述光网络监测模块,用于采集光层网络状态信息,并将采集的光层网络状态信息发送给所述可编程交换机;\n[0008] 所述可编程交换机,用于采集电层网络状态信息,并将采集的电层网络状态信息和接收的光层网络状态信息插入到带内遥测数据包中;\n[0009] 所述数据分析模块,用于从所述可编程交换机的数据转发流水线中抓取带内遥测数据包,并且对抓取的带内遥测数据包进行解析处理,得到光电跨层网络状态信息。\n[0010] 可选的,所述光网络监测模块,包括:\n[0011] 光设备检测器,用于采集光层网络状态信息;\n[0012] 光设备检测器代理,用于将所述光设备检测器采集到的光层网络状态信息发送给所述可编程交换机,并且存储到本地数据库中。\n[0013] 可选的,所述可编程交换机,包括:\n[0014] 光层遥测子模块,用于接收光层网络状态信息,并将所述光层网络状态信息插入到所述可编程交换机的数据转发流水线中的带内遥测数据包中;\n[0015] 电层遥测子模块,用于将所述可编程交换机采集的电层网络状态信息插入到所述可编程交换机的数据转发流水线中的带内遥测数据包中。\n[0016] 可选的,所述可编程交换机还包括:\n[0017] 带内遥测代理子模块,用于针对所述可编程交换机的数据转发流水线进行带内遥测数据包的外部抽样和内部轮询抽样,以及进行带内遥测数据的收集和组合。\n[0018] 可选的,所述数据分析模块,包括:\n[0019] 数据包收集模块,用于从所述可编程交换机的数据转发流水线中抓取带内遥测数据包;\n[0020] 带内遥测解析模块,用于对所述数据包收集模块抓取的带内遥测数据包进行解析处理,得到光电跨层网络状态信息。\n[0021] 一种数据处理方法,应用于上述的光电跨层网络监测系统的可编程交换机,所述方法包括:\n[0022] 从数据流中选择带内遥测数据包;\n[0023] 向所述带内遥测数据包中插入带内遥测数据域;\n[0024] 对插入了带内遥测数据域的带内遥测数据包进行复制得到两份数据包,其中一份数据包作为光电跨层网络监测数据包,另一份数据包在去除带内遥测数据域后转发给客户端。\n[0025] 可选的,所述从数据流中选择带内遥测数据包,包括:\n[0026] 从数据流中选择出需要做带内遥测的数据流;\n[0027] 根据带内遥测决策器分配的令牌,从选择出的需要做带内遥测的数据流中,选出带内遥测数据包。\n[0028] 可选的,所述方法还包括:\n[0029] 将所述数据流中未被选择为带内遥测数据包的数据包转发到特定的数据端口。\n[0030] 一种数据处理装置,应用于上述的光电跨层网络监测系统的可编程交换机,所述装置包括:\n[0031] 数据包选择单元,用于从数据流中选择带内遥测数据包;\n[0032] 数据域插入单元,用于向所述带内遥测数据包中插入带内遥测数据域;\n[0033] 数据包处理单元,用于对插入了带内遥测数据域的带内遥测数据包进行复制得到两份数据包,其中一份数据包作为光电跨层网络监测数据包,另一份数据包在去除带内遥测数据域后转发给客户端。\n[0034] 可选的,所述数据包选择单元,包括:\n[0035] 第一选择单元,用于从数据流中选择出需要做带内遥测的数据流;\n[0036] 第二选择单元,用于根据带内遥测决策器分配的令牌,从选择出的需要做带内遥测的数据流中,选出带内遥测数据包。\n[0037] 可选的,所述装置还包括:\n[0038] 数据转发单元,用于将所述数据流中未被选择为带内遥测数据包的数据包转发到特定的数据端口。\n[0039] 本申请提出的光电跨层网络监测系统,通过设置光网络监测模块采集光层网络状态信息,同时,利用可编程交换机采集电层网络状态信息,并且设置可编程交换机从数据转发流水线中抽取数据包作为带内遥测数据包,并将上述光层网络状态信息和电层网络状态信息插入到带内遥测数据包中。而系统的数据分析模块,可以从可编程交换机的数据转发流水线中抓取带内遥测数据包进行解析,从而确定光电跨层网络状态。可见,上述光电跨层网络监测系统可以实现对光电跨层网络状态的监测。\n附图说明\n[0040] 为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。\n[0041] 图1是本申请实施例提供的一种光电跨层网络监测系统的结构示意图;\n[0042] 图2是本申请实施例提供的一种带内遥测数据包的结构示意图;\n[0043] 图3是本申请实施例提供的配置了光电跨层网络监测系统的光电跨层网络结构示意图;\n[0044] 图4是本申请实施例提供的一种数据处理方法的流程示意图;\n[0045] 图5是本申请实施例提供的一种数据传输处理过程示意图;\n[0046] 图6是本申请实施例提供的一种数据处理装置的结构示意图。\n具体实施方式\n[0047] 本申请实施例主要技术内容为将带内遥测(In‑band Networtk Telemetry,INT)技术引入到光电跨层网络的监测中,为光电跨层网络提供一种高效的故障定位系统,既可以监测电层网络故障,又可以监测光层网络故障。\n[0048] 下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。\n[0049] 本申请实施例公开了一种光电跨层网络监测系统,参见图1所示,该系统包括:\n[0050] 光网络监测模块1、可编程交换机2和数据分析模块3;\n[0051] 其中,所述光网络监测模块1,用于采集光层网络状态信息,并将采集的光层网络状态信息发送给所述可编程交换机2;\n[0052] 具体的,本申请实施例所提出的光电跨层网络监测系统具有实时监测跨层网络的特点,在该系统中设置光网络监测模块1,参见图1所示,光网络监测模块内部包括光设备检测器((Optical Channel Monitor,OCM)和光设备检测器代理。\n[0053] 其中,光设备检测器OCM用于采集光层网络状态信息,例如采集光层网络的光信噪比等,并将采集到的光层网络状态信息发送给光设备检测代理。\n[0054] 光设备检测代理,将光设备检测器OCM采集到的光层网络状态信息发送给可编程交换机2。\n[0055] 同时,在光网络监测模块1内部还配备有本地数据库。光设备检测代理将光设备检测器OCM采集的光层网络状态信息发送给可编程交换机2的同时,还备份存储到本地数据库中。\n[0056] 所述可编程交换机2,用于采集电层网络状态信息,并将采集的电层网络状态信息和接收的光层网络状态信息插入到数据转发流水线中的带内遥测数据包中;\n[0057] 具体的,可编程交换机2可以实现对电层网络状态的监测,即采集得到电层网络状态信息。\n[0058] 在可编程交换机2内部具备数据处理pipeline(数据转发流水线),则可编程交换机2可以对数据转发流水线中的数据包进行处理,将自身采集的电层网络状态信息和光网络监测模块1发送的光层网络状态信息插入到数据转发流水线中的带内遥测数据包中。\n[0059] 其中,上述带内遥测数据包是指从数据转发流水线的数据包中选择的用于携带带内遥测信息的数据包。\n[0060] 参见图1所示,上述可编程交换机2包括光层遥测子模块和电层遥测子模块。其中,光层遥测子模块用于接收光网络监测模块1发送的光层网络状态信息,并在可编程交换机2的控制下,将接收的光层网络状态信息插入到可编程交换机2的数据转发流水线中的带内遥测数据包中。\n[0061] 电层遥测子模块,用于在可编程交换机2的控制下,将可编程交换机2采集的电层网络状态信息插入到可编程交换机2的数据转发流水线中的带内遥测数据包中。\n[0062] 可以理解,可编程交换机2通过数据处理pipeline,即数据转发流水线,实现将跨层网络状态作为带内遥测数据域插入到带内遥测数据包中,具体是通过光层遥测子模块以及电层遥测子模块将下层光网络监测模块1上传的光层网络状态信息以及自身采集的电层网络状态信息作为独立的数据域插入到带内遥测数据包的载荷当中,实现光电跨层网络状态信息的带内收集。\n[0063] 进一步的,参见图1所示,可编程交换机2内部还包括带内遥测代理子模块,用于针对所述可编程交换机2的数据转发流水线进行带内遥测数据包的外部抽样和内部轮询抽样,以及进行带内遥测数据的收集和组合。\n[0064] 具体的,带内遥测代理子模块主要用于从数据转发流水线中抽取数据包作为带内遥测数据包,以及针对抽取的带内遥测数据包分配网络状态信息插入。\n[0065] 带内遥测子模块通过外部抽样和内部轮询抽样这两轮抽样,可以在实时准确地监测网络状态的前提下,大大节省带内遥测带来的网络带宽开销。\n[0066] 其中,第一轮抽样为外部抽样,该机制可以从可编程交换机的数据转发流水线的数据包中每隔N个抽取1个成为带内遥测INT数据包,从而实现抽样率为1/N的抽样。第一轮抽样使得不需要每一数据包都成为INT数据包,这在高速率的端到端数据通信中能较大程度的节省网络带宽。如最近数据中心中普及的10Gbps带宽,此时传输链路上两个最长的以太帧之间时间间隔为1.2us,网络状态在1.2us内发生变化的可能性很小,因此每个数据包都进行网络状态的收集是不必要的。而本申请实施例通过上述第一轮抽样,避免了不必要的数据包收集,减少了INT数据包数量。\n[0067] 第二轮抽样称为内部轮询抽样,该机制可以将每一跳可编程交换机收集的网络状态分散插入到第一轮抽样得到的多个INT数据包中,比如当某一跳可编程交换机收集的网络状态为:电层的拥塞程度、排队时延、链路利用率以及光层的光信噪比以及能量,此时可以将这些网络状态依次轮询分散地插入到多个INT数据包中。此时每一个INT数据包只携带一个网络状态,避免了因为插入过多INT数据域而造成数据包的长度过长,加重网络带宽负载。\n[0068] 可以理解,本申请实施例通过设置上述的带内遥测子模块执行两轮抽样确定INT数据包,以及确定多项网络状态在所确定的各个INT数据包中的分配情况。\n[0069] 本申请实施例上述可编程交换机2的处理过程实现了更灵活的光电跨层INT系统,放弃传统INT系统将所有数据包都做INT的设计,而是选择只对部分数据包做INT,因此可以节省网络带宽。\n[0070] 需要说明的是,本申请上述实施例示例性的介绍了本申请提出的光电跨层网络监测系统的可编程交换机2的一般性工作过程。在通信网络中,存在多跳网络节点,在各个网络节点中均存在可编程交换机,当本申请实施例所提出的光电跨层网络监测系统应用于各个网络节点时,在该跳网络节点的可编程交换机的基础上,结合光网络监测模块1和数据分析模块3组成位于该跳网络节点的光电跨层网络监测系统。在这种系统布局情况下,位于不同的光电跨层网络监测系统的可编程交换机2的工作过程可能存在适应性的变化。\n[0071] 当通信数据流经通信网络的各跳可编程交换机时,基于本申请实施例设置的光电跨层网络监测系统,位于系统中的可编程交换机对流经数据的数据包插入网络状态信息。\n示例性的,参见图2所示,当上述可编程交换机2向带内遥测INT数据包中插入网络状态信息时,使用IP.ToS域标识每一个INT(In‑band Networtk Telemetry,带内遥测)数据包,INT头包括INT数据栈和INT信息域,INT数据栈由每一跳插入的INT数据域以栈的方式组织而成。\n每一个INT数据域包含了每一跳可编程交换机收集到的INT数据。INT信息域表示了该INT数据包添加了多少个INT数据域,经过了多少跳可编程交换机等一些标识信息。\n[0072] 所述数据分析模块3,用于从所述可编程交换机2的转发流水线中抓取带内遥测数据包,并且对抓取的带内遥测数据包进行解析处理,得到光电跨层网络状态信息。\n[0073] 具体的,数据分析模块3负责在主机侧从可编程交换机2的数据转发流水线中抓取带内遥测INT数据包,并且通过INT数据包的解析得到完整的实时光电跨层网络状态。\n[0074] 参见图1所示,数据分析模块3内部具体包括数据包收集模块和带内遥测解析模块。\n[0075] 其中,数据包收集模块用于从可编程交换机2的数据转发流水线中抓取带内遥测数据包;\n[0076] 而带内遥测解析模块,则用于对数据包收集模块抓取的带内遥测数据包进行解析处理,得到光电跨层网络状态信息。\n[0077] 为了提高数据分析模块3的性能,本申请实施例还为数据分析模块3增加了缓存子模块,该缓存子模块将收集到的带内遥测INT数据包缓存之后交由带内遥测INT解析模块处理,弥补了数据包收集速度与解析速度之间的不匹配造成的性能缺失。\n[0078] 进一步的,本申请实施例还为数据分析模块3配置数据库,可以将网络状态存储下来,作为历史数据方便查询。\n[0079] 需要说明的是,由于本申请实施例提出的光电跨层网络监测系统可以是基于不同网络节点的可编程交换机而设置的系统,因此当数据流经网络各跳可编程交换机时,由监测系统的可编程交换机2插入多个INT数据域,但是为了节省网络带宽以及避免INT数据包过长,该系统只允许每一跳加入两个INT数据,如果在某一跳需要监测多个网络状态,该系统会将多个网络状态依次插入到多个INT数据包中,在数据分析模块3中通过对多个INT数据包INT数据的解析和组合得到完整的网络状态。为了能够顺利解析出每一跳的网络状态,其中两个INT数据域中必须包含每一跳可编程交换机的全局标识。\n[0080] 通过上述介绍可见,本申请实施例提出的光电跨层网络监测系统,通过设置光网络监测模块采集光层网络状态信息,同时,利用可编程交换机采集电层网络状态信息,并且设置可编程交换机从数据转发流水线中抽取数据包作为带内遥测数据包,并将上述光层网络状态信息和电层网络状态信息插入到带内遥测数据包中。而系统的数据分析模块,可以从可编程交换机的数据转发流水线中抓取带内遥测数据包进行解析,从而确定光电跨层网络状态。可见,上述光电跨层网络监测系统可以实现对光电跨层网络状态的监测。\n[0081] 进一步的,通过上述实施例介绍还可以明确,本申请实施例提出的光电跨层网络监测系统通过抽样的方式实现网络状态监测的灵活性,在实时监测跨层网络状态的同时,节省网络带宽负载。\n[0082] 该系统通过两轮抽样可以在实时准确的监测网络状态的前提下,大大的节省INT带来的网络带宽开销。第一轮抽样称为外部抽样,该机制可以从发送的数据包中每隔N个抽取1个成为INT数据包,从而实现抽样率为1/N的抽样。第一轮抽样使得不需要每一数据包都成为INT数据包,这在高速率的端到端数据通信中能较大程度的节省网络带宽。如最近数据中心中普及的10Gbps带宽,此时传输链路上两个最长的以太帧之间时间间隔为1.2us,网络状态在1.2us内发生变化的可能性很小,因此每个数据包都进行网络状态的收集是不必要的。\n[0083] 第二轮抽样称为内部轮询抽样,该机制可以将每一跳可编程交换机收集的网络状态分散插入到多个INT数据包中,比如当某一跳可编程交换机收集的网络状态为:电层的拥塞程度,排队时延,链路利用率以及光层的光信噪比以及能量,此时可以将这些网络状态依次轮询分散地插入到每一个INT数据包中。此时每一个INT数据包只携带一个网络状态,避免了因为插入过多INT数据域而造成数据包的长度过长,加重网络带宽负载。\n[0084] 该灵活光电跨层网络监测系统可以使得网络管理员在运行时动态的改变外部抽样的抽样率,给系统增加了更大的灵活性。通过在运行时动态的调节抽样率,可以使得网络管理员根据需求,在保证正确收集网络状态的前提下,尽可能的降低网络带宽负载。\n[0085] 与上述的光电跨层网络监测系统相对应的,本申请另一实施例还公开了一种应用于上述光电跨层网络监测系统中的可编程交换机的数据处理方法。\n[0086] 需要说明的是,参见图3所示,光电跨层网络中存在大量的可编程交换机节点,本申请实施例所提出的光电跨层网络监测系统是基于网络中的各跳可编程交换机节点,搭建包含可编程交换机、光网络监测模块和数据分析模块的监测系统,用于对整个光电跨层网络的监测。\n[0087] 可以理解,当网络数据在上述光电跨层网络中传输时,会依次经过多跳可编程交换机的数据处理pipeline,基于各跳可编程交换机的数据转发流水线,实现从信源客户端到目的客户端的传输过程。鉴于对网络状态监测的需求,当数据流经各跳可编程交换机时,由可编程交换机的光电跨层网络监测系统执行网络状态信息的插入。\n[0088] 本申请实施例提出的适用于光电跨层网络监测系统的可编程交换机的数据处理方法,是按照数据从信源客户端到目标客户端的传输过程,由传输路径的各节点位置处的光电跨层网络监测系统的可编程交换机,分别对数据进行处理的方法。\n[0089] 但是需要特别说明的是,网络中的交换机的角色可能随时变化,某一位置处的交换机在本次数据传输时可能作为入口交换机,而在下次数据传输时又可能作为中间节点交换机或出口交换机。由于无法完全穷举各种情况分别介绍交换机的数据处理过程,因此本申请实施例仅以单次数据传输过程为例,介绍数据流经各节点交换机时,交换机对数据所进行的处理,当交换机所处节点位置不同时,其数据处理过程可以在本申请实施例公开的数据处理方法所示的处理过程范围内发生适应性调整。\n[0090] 参见图4所示,本申请实施例提出的数据处理方法,包括:\n[0091] S401、从数据流中选择带内遥测数据包;\n[0092] 具体的,参见图5所示的数据传输处理过程示意图,当数据包离开信源客户端,到达入口交换机的数据包处理pipeline时,从数据包处理pipeline的数据流中选择带内遥测INT数据包,以便插入光电网络状态信息。\n[0093] 首先,可编程交换机先从数据流中选择出需要做带内遥测的数据流;\n[0094] 参见图5所示,当数据流进入入口交换机的数据包处理pipeline后,先进入解析器,在解析器中数据包被解析为多个Packet元数据,在匹配转发流表(Match‑Action Table)中匹配特定的元数据,比如数据包的网络层信息以及传输层信息等,并根据匹配结果判定需要做带内遥测INT的数据流。\n[0095] 其中,需要做带内遥测INT的数据流进入下一步处理,不需要做带内遥测INT的数据流直接进入转发器,转发到特定的数据端口。\n[0096] 然后,可编程交换机根据带内遥测决策器分配的令牌,从选择出的需要做带内遥测的数据流中,选出带内遥测数据包。\n[0097] 同样参见图5所示,需要做带内遥测INT的数据流的数据包进入INT选择器,根据INT决策器分配的令牌数据(Token),决定是否成为INT数据包。\n[0098] 比如,当一个数据包被分配了一个值为0的Token时,那么其不是INT数据包,如果被分配了一个值为1的Token,则其会成为INT数据包。对于没有被选为INT数据包的数据包,则直接进入转发器,转发到特定数据端口。\n[0099] S402、向所述带内遥测数据包中插入带内遥测数据域;\n[0100] 具体的,参见图5所示,当数据包被选为INT数据包时,进入INT添加器,添加可编程交换机的INT代理中分配的各种类型的INT数据域,并且转发。\n[0101] 当数据包离开入口交换机,进入中间节点交换机的数据包处理pipeline后,先进入解析器,数据包被解析为多个Packet元数据,在Match‑Action Table(匹配转发流表)中匹配特定的元数据判断该数据包是否是INT数据包,如果不是INT数据包,则直接进入转发器,转发到特定数据端口。\n[0102] 如果是INT数据包,则进入INT添加器,插入不同类型的INT代理收集到的INT数据域,如电层交换机的队列信息,光层交换机的噪声信息等,并且经由转发器转发到特定的数据端口。\n[0103] S403、对插入了带内遥测数据域的带内遥测数据包进行复制得到两份数据包,其中一份数据包作为光电跨层网络监测数据包,另一份数据包在去除带内遥测数据域后转发给客户端。\n[0104] 具体的,如图5所示,当数据包达到出口交换机的数据包处理pipeline后,先进入解析器,数据包被解析为多个Packet元数据,在Match‑Action Table(匹配转发流表)中匹配特定的元数据判断该数据包是否是INT数据包,如果不是直接进入转发器,转发到特定数据端口。\n[0105] 如果是INT数据包,则进入INT添加器,插入INT代理收到的不同类型的INT数据域,包括电层交换机的队列信息以及光层交换机的噪声信号等信息。\n[0106] 通过上述介绍可见,基于本申请实施例设置的位于各网络节点的网络监测系统,当数据包在依次流经入口交换机、中间节点交换机和出口交换机时,分别按照上述步骤S401、S402的介绍,进行INT数据包的识别,以及对INT数据包进行INT数据域的添加。\n[0107] 其中,当INT数据包进入出口交换机后,由于下一步需要将数据包数据发送给目的客户端,同时还需要将INT数据包中携带的网络状态信息进行采集,因此,对于进入了出口交换机的INT数据包,本申请实施例设定对其进行如上上述步骤S403所示的复制处理。\n[0108] 具体的,当INT数据包进入出口交换机的数据包处理pipeline并且插入INT数据域后,本申请实施例对插入了带内遥测数据域的带内遥测数据包进行复制得到两份数据包,其中一份数据包作为光电跨层网络监测数据包,进入转发器转发给数据收集器,用于解析确定网络状态;另一份数据包在去除每一跳可编程交换机添加的带内遥测数据域,以及每一跳可编程交换机对数据包原数据域的修改后,转发给客户端,保障正常的数据通信。\n[0109] 通过上述介绍可见,本申请实施例提出的数据处理方法,应用于设置于不同网络节点的光电跨层网络监测系统的可编程交换机,当数据包在传输过程中流经各可编程交换机节点时,从数据流中选择带内遥测数据包,并向带内遥测数据包中插入带内遥测数据域;\n对于没有被选为带内遥测数据包的数据包,则直接转发到特定的数据端口;最后,对插入了带内遥测数据域的带内遥测数据包进行复制得到两份数据包,其中一份数据包作为光电跨层网络监测数据包,另一份数据包在去除带内遥测数据域后转发给客户端。上述数据处理过程实现了灵活地向光电跨层网络的数据包中插入带内遥测数据域,在不影响正常数据通信的基础上,实现了对网络状态信息的采集,即实现了对网络状态的监测。\n[0110] 与上述数据处理方法相对应的,本申请另一实施例还公开了一种数据处理装置,参见图6所示,该装置包括:\n[0111] 数据包选择单元100,用于从数据流中选择带内遥测数据包;\n[0112] 数据域插入单元110,用于向所述带内遥测数据包中插入带内遥测数据域;\n[0113] 数据包处理单元120,用于对插入了带内遥测数据域的带内遥测数据包进行复制得到两份数据包,其中一份数据包作为光电跨层网络监测数据包,另一份数据包在去除带内遥测数据域后转发给客户端。\n[0114] 上述数据处理装置可应用于本申请上述任一实施例公开的光电跨层网络监测系统的可编程交换机中。本申请实施例公开的光电跨层网络监测系统,是基于网络节点中的可编程交换机而搭建的监测系统,当网络数据在网络中传输时,会经过网络的可编程交换机节点,也就是经过位于各网络节点处的光电跨层网络监测系统,此时,可编程交换机中的上述数据处理装置即可对数据进行处理,实现光电跨层网络监测系统对网络数据的监测功能。\n[0115] 需要特别说明的是,本申请实施例公开的上述数据处理装置的各个单元的工作内容,是针对不同的数据传输阶段而对数据进行相应处理。例如,上述数据包选择单元100,用于当数据到达入口交换机时,从数据流中选在带内遥测数据包;上述数据域插入单元110,在数据到达入口交换机、中间节点交换机和出口交换机时,均会向带内遥测数据包插入带内遥测数据域;上述数据包处理单元120,主要用于当数据包进入出口交换机时,对插入了带内遥测数据域的带内遥测数据包进行复制得到两份数据包,其中一份数据包作为光电跨层网络监测数据包,另一份数据包在去除带内遥测数据域后转发给客户端。\n[0116] 可以理解,可编程交换机所在的网络节点位置,根据数据传输任务变化而变化,对于某一可编程交换机来说,在本次数据传输时可能作为入口交换机,而在下一次数据传输时,又可能作为出口交换机或中间节点交换机。当本申请实施例提出的上述数据处理装置所在的可编程交换机所处的网络节点位置不同时,其各单元可以适应性的选择工作或不工作。例如,当上述数据处理装置在某一次数据传输过程中所在的可编程交换机作为入口交换机时,上述的数据包处理单元120可以不用工作,而当该数据处理装置作为出口交换机时,其数据包处理单元120就需要工作,但是数据包选择单元100就可以不工作。而当上述数据处理装置同时参与多种数据传输任务时,其各功能单元可以根据需求同时工作,即同时针对多种数据传输任务执行相应处理。\n[0117] 本申请实施例仅示例性的介绍上述数据处理装置的各个单元的功能,各单元具体工作与否可在实际应用中灵活选择。\n[0118] 可选的,在本申请另一实施例中还公开了,上述数据包选择单元100,包括:\n[0119] 第一选择单元,用于从数据流中选择出需要做带内遥测的数据流;\n[0120] 第二选择单元,用于根据带内遥测决策器分配的令牌,从选择出的需要做带内遥测的数据流中,选出带内遥测数据包。\n[0121] 可选的,在本申请的另一个实施例中还公开了,所述装置还包括:\n[0122] 数据转发单元,用于将所述数据流中未被选择为带内遥测数据包的数据包转发到特定的数据端口。\n[0123] 具体的,上述各数据处理装置实施例中的各个单元的具体工作内容,请参见上述方法实施例的内容,此处不再赘述。\n[0124] 对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。\n[0125] 需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。\n对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。\n[0126] 本申请各实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。\n[0127] 本申请各实施例种装置及终端中的模块和子模块可以根据实际需要进行合并、划分和删减。\n[0128] 本申请所提供的几个实施例中,应该理解到,所揭露的终端,装置和方法,可以通过其它的方式实现。例如,以上所描述的终端实施例仅仅是示意性的,例如,模块或子模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个子模块或模块可以结合或者可以集成到另一个模块,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。\n[0129] 作为分离部件说明的模块或子模块可以是或者也可以不是物理上分开的,作为模块或子模块的部件可以是或者也可以不是物理模块或子模块,即可以位于一个地方,或者也可以分布到多个网络模块或子模块上。可以根据实际的需要选择其中的部分或者全部模块或子模块来实现本实施例方案的目的。\n[0130] 另外,在本申请各个实施例中的各功能模块或子模块可以集成在一个处理模块中,也可以是各个模块或子模块单独物理存在,也可以两个或两个以上模块或子模块集成在一个模块中。上述集成的模块或子模块既可以采用硬件的形式实现,也可以采用软件功能模块或子模块的形式实现。\n[0131] 专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。\n[0132] 结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件单元,或者二者的结合来实施。软件单元可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD‑ROM、或技术领域内所公知的任意其它形式的存储介质中。\n[0133] 最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。\n[0134] 对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。\n对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
法律信息
- 2022-07-15
- 2019-08-16
实质审查的生效
IPC(主分类): H04L 12/26
专利申请号: 201910343542.1
申请日: 2019.04.26
- 2019-07-23
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有引用任何外部专利数据! |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |