CN113037573B - 网络管理系统及方法 - Google Patents

网络管理系统及方法 Download PDF

Info

Publication number
CN113037573B
CN113037573B CN202110569737.5A CN202110569737A CN113037573B CN 113037573 B CN113037573 B CN 113037573B CN 202110569737 A CN202110569737 A CN 202110569737A CN 113037573 B CN113037573 B CN 113037573B
Authority
CN
China
Prior art keywords
network
data
uploading
network equipment
rate
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110569737.5A
Other languages
English (en)
Other versions
CN113037573A (zh
Inventor
李科
肖端良
王喜祝
陈政
王周锋
陈秋平
董启凡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Yilian Unlimited Technology Co ltd
Original Assignee
Shenzhen Comnect Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Comnect Technology Co ltd filed Critical Shenzhen Comnect Technology Co ltd
Priority to CN202110569737.5A priority Critical patent/CN113037573B/zh
Publication of CN113037573A publication Critical patent/CN113037573A/zh
Application granted granted Critical
Publication of CN113037573B publication Critical patent/CN113037573B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0631Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/069Management of faults, events, alarms or notifications using logs of notifications; Post-processing of notifications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0894Packet rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/08Protocols for interworking; Protocol conversion

Abstract

本申请提供了一种网络管理系统,可包括:速率检测模块用于检测并上传多个网络设备的网络速率。设备检测模块用于分别确定并上传网络设备对不同芯片类型的接入端口的使用速率特征。故障检测模块用于对网络设备的工作状态进行分析,检测出异常工作状态,并上传异常工作状态对应的错误栈日志。芯片数据备份模块用于构造并上传适用不同芯片类型的接入端口的配置脚本。内核功能检测模块用于根据接入终端的通用串行总线支持的网络设备的类型确定并上传蓝牙适配器的通信协议。数据管理模块用于分别分析网络速率、使用速率特征、错误栈日志、配置脚本以及通信协议,并生成数据流程。

Description

网络管理系统及方法
技术领域
本申请涉及计算机应用技术领域,尤其涉及一种网络管理系统及方法。
背景技术
随着网络设备的数量日益增多和网络服务质量的改善,各种类型的家庭网络终端层出不穷,应运而生的终端设备更是从xDSL(x Digital Subscriber Line,x数字用户线)猫到路由器再到FTTH(Fibre To The Home,光纤到户)猫,飞速地进行着更新换代。因此,迫切需要一种能够适应家庭网络设备更新换代的软件系统,实现接入终端设备的再集成。
基于上述现状,现有技术中提出SDN(Software Defined Network,软件定义网络)。SDN具有数据平面、控制平面和应用平面,其中数据平面由交换机等网络通用硬件组成。控制平面和数据平面之间通过CDPI(control-data -plane interface,控制数据平面接口)进行通信,且具有统一的通信标准,主要负责将控制平面中的转发规则下发至数据平面,其最主要应用的通信标准是OpenFlow协议。OpenFlow协议通过将网络设备的控制平面与数据平面分离开,从而实现了网络流量的灵活控制,使得网络作为管道变得更加智能,为核心网络及应用的创新提供了良好的平台。
但是,SDN中数据平面和控制平面之间的通信标准是OpenFlow协议,也就是说需要终端设备支持openflow协议,以致该软件系统的通用性不强。另外,从局端到终端开发完善openflow协议需要大量的人力物力财力的投入,开发成本较高。
发明内容
本申请提供了一种网络管理系统及方法,以期解决或部分解决背景技术中涉及的上述问题或现有技术中的其它至少一个不足。
本申请提出了这样一种网络管理系统,可包括:
速率检测模块,用于检测并上传多个网络设备的网络速率;其中,速率检测模块的执行步骤包括:分别对多个网络设备传输数据包的流量进行采样和识别,轮询计算各个网络设备的传输速率峰值,并将传输速率峰值分别与对应的发生时刻进行匹配,生成第一记录数据;通过地址解析协议,将网络设备的互联网协议地址映射为多个媒体存取控制地址,并将媒体存取控制地址分别与对应的映射时刻进行匹配,生成第二记录数据;以及将第一记录数据和第二记录数据进行匹配,并上传至数据管理模块;
设备检测模块,用于分别确定并上传网络设备对不同芯片类型的接入端口的使用速率特征;
故障检测模块,用于对网络设备的工作状态进行分析,检测出异常工作状态,并上传异常工作状态对应的错误栈日志;
芯片数据备份模块,用于构造并上传适用不同芯片类型的接入端口的配置脚本;
内核功能检测模块,用于根据接入终端的通用串行总线支持的网络设备的类型确定并上传蓝牙适配器的通信协议;以及
数据管理模块,用于分别分析网络速率、使用速率特征、错误栈日志、配置脚本以及通信协议,并生成数据流程;其中,数据管理模块的执行步骤包括:创建用于进程通信的服务器;创建用于向服务器发送网络速率、使用速率特征、错误栈日志、配置脚本以及通信协议的客户端;由服务器对网络速率、使用速率特征、错误栈日志、配置脚本以及通信协议分别进行分析,并生成数据流程。
在一些实施方式中,速率检测模块的具体执行步骤包括:
创建第一定时器,用于查询网桥信息,并显示连接的网络设备,识别网络设备的接口的流量,并周期性采集和统计接口的流量,轮询计算接口的最大上传速率和最大下载速率,将接口的最大上传速率和最大下载速率分别与各自的发生时刻进行匹配,生成第一记录数据;
创建第二定时器,遍历linux文件系统的目录和地址解析协议表,识别接入端口以及接入端口的网络互连协议地址,查看链接跟踪表、linux文件系统的目录、net文件和ip_conntrack文件,周期性采样链接四元组,将多个媒体存取控制地址分别与对应的映射时刻进行匹配,生成第二记录数据;
创建第三定时器,周期性读取第一记录数据和第二记录数据,并创建一个用于分析网络设备的速率特征的数据模型,形成网络设备的特征图,实现第一记录数据和第二记录数据的匹配,生成匹配结果并上传。
在一些实施方式中,设备检测模块的执行步骤包括:
根据地址解析协议,采集接入端口接入网络设备的状态,并分析接入端口的芯片类型;
分别确定不同芯片类型的接入端口接入的多个网络设备处于不同状态的数量,并分别将网络设备与对应的状态调整时刻进行匹配,生成第三记录数据;以及
读取并分析第三记录数据,确定网络设备的对不同芯片类型的接入端口的使用速率特征。
在一些实施方式中,故障检测模块的执行步骤包括:
读取linux文件系统,获取linux的不同文件系统对不同网络设备的配置信息;
将不同芯片类型的接入端口对应的故障消除方法与配置信息进行结合,确定网络设备的工作状态;以及
检测出网络设备的异常工作状态,生成并上传异常工作状态对应的错误栈日志。
在一些实施方式中,芯片数据备份模块的执行步骤包括:
调用linux内核模块,并查看linux文件系统所支持的网络设备,以确定接入终端的通用串行总线支持的网络设备的类型;
通过linux文件系统确定其内置蓝牙适配器的挂载位置;以及
根据接入终端的通用串行总线支持的网络设备的类型,将蓝牙适配器的通信协议转换为点对点协议或动态主机配置协议。
在一些实施方式中,网络设备响应数据流程,并进行网络服务。
本申请还提供了这样一种网络管理方法,可包括:
采集管理网络设备的管理参数;以及
分别分析管理参数,并生成数据流程,
其中,采集管理网络设备的管理参数包括:
检测并上传多个网络设备的网络速率,其中具体步骤包括:分别对多个网络设备传输数据包的流量进行采样和识别,轮询计算各个网络设备的传输速率峰值,并将传输速率峰值分别与对应的发生时刻进行匹配,生成第一记录数据;通过地址解析协议,将网络设备的互联网协议地址映射为多个媒体存取控制地址,并将媒体存取控制地址分别与对应的映射时刻进行匹配,生成第二记录数据;以及将第一记录数据和第二记录数据进行匹配及上传,
分别确定并上传网络设备对不同芯片类型的接入端口的使用速率特征,
对网络设备的工作状态进行分析,检测出异常工作状态,并上传异常工作状态对应的错误栈日志,
构造并上传适用不同芯片类型的接入端口的配置脚本,以及
根据接入终端的通用串行总线支持的网络设备的类型确定并上传蓝牙适配器的通信协议;
分别分析管理参数,并生成数据流程的具体步骤包括:
创建用于进程通信的服务器,创建用于向服务器发送网络速率、使用速率特征、错误栈日志、配置脚本以及通信协议的客户端,以及由服务器对网络速率、使用速率特征、错误栈日志、配置脚本以及通信协议分别进行分析,并生成数据流程。
在一些实施方式中,检测并上传多个网络设备的网络速率,包括如下更具体的步骤:
创建第一定时器,用于查询网桥信息,并显示连接的网络设备,识别网络设备的接口的流量,并周期性采集和统计接口的流量,轮询计算接口的最大上传速率和最大下载速率,将接口的最大上传速率和最大下载速率分别与各自的发生时刻进行匹配,生成第一记录数据;
创建第二定时器,遍历linux文件系统的目录和地址解析协议表,识别接入端口以及接入端口的网络互连协议地址,查看链接跟踪表、linux文件系统的目录、net文件和ip_conntrack文件,周期性采样链接四元组,将多个媒体存取控制地址分别与对应的映射时刻进行匹配,生成第二记录数据;
创建第三定时器,周期性读取第一记录数据和第二记录数据,并创建一个用于分析网络设备的速率特征的数据模型,形成网络设备的特征图,实现第一记录数据和第二记录数据的匹配,生成匹配结果并上传。
在一些实施方式中,分别确定并上传网络设备对不同芯片类型的接入端口的使用速率特征,包括:根据地址解析协议,采集接入端口接入网络设备的状态,并分析接入端口的芯片类型;分别确定不同芯片类型的接入端口接入的多个网络设备处于不同状态的数量,并分别将网络设备与对应的状态调整时刻进行匹配,生成第三记录数据;以及读取并分析第三记录数据,确定网络设备的对不同芯片类型的接入端口的使用速率特征。
在一些实施方式中,对网络设备的工作状态进行分析,检测出异常工作状态,并上传异常工作状态对应的错误栈日志,包括:读取linux文件系统,获取linux的不同文件系统对不同网络设备的配置信息;将不同芯片类型的接入端口对应的故障消除方法与配置信息进行结合,确定网络设备的工作状态;以及检测出网络设备的异常工作状态,生成并上传异常工作状态对应的错误栈日志。
根据上述的实施方式的技术方案可至少获得以下至少一个有益效果。
根据本申请一实施方式的网络管理系统及方法,通过设置速率检测模块和故障检测模块,对用户的网络设备和用户行为进行针对性地分析,改善了用户的上网体验,有利于合理地规划网络资源。本申请还能够有效地减少接入终端的浪费,使得每一个接入终端都有统一的服务方式。另外,本申请还有效地减少了开发接入终端的工作量,减轻了协议开发和维护的成本。并且,本申请通过设置内核功能检测模块,还能够针对外设定制扩展方式,提升用户体验感。
附图说明
通过阅读参照以下附图所作的对非限制性实施例的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1是根据本申请的示例性实施方式的网络管理系统的结构示意图;
图2是根据本申请的示例性实施方式的速率检测模块的运行流程示意图;
图3是根据本申请的示例性实施方式的设备检测模块的运行流程示意图;
图4是根据本申请的示例性实施方式的故障检测模块的运行流程示意图;
图5是根据本申请的示例性实施方式的芯片数据备份模块的运行流程示意图;
图6是根据本申请的示例性实施方式的内核功能检测模块的运行流程示意图;
图7是根据本申请的示例性实施方式的数据管理模块的运行流程示意图;以及
图8是根据本申请的示例性实施方式的网络管理方法流程图。
具体实施方式
为了更好地理解本申请,将参考附图对本申请的各个方面做出更详细的说明。应理解,这些详细说明只是对本申请的示例性实施方式的描述,而非以任何方式限制本申请的范围。在说明书全文中,相同的附图标号指代相同的元件。表述“和/或”包括相关联的所列项目中的一个或多个的任何和全部组合。
在附图中,为了便于说明,已稍微调整了元素的大小、尺寸和形状。附图仅为示例而并非严格按比例绘制。如在本文中使用的,用语“大致”、“大约”以及类似的用语用作表近似的用语,而不用作表程度的用语,并且旨在说明将由本领域普通技术人员认识到的、测量值或计算值中的固有偏差。另外,在本申请中,各步骤处理描述的先后顺序并不必然表示这些处理在实际操作中出现的顺序,除非有明确其它限定或者能够从上下文推导出的除外。
还应理解的是,诸如“包括”、“包括有”、“具有”、“包含”和/或“包含有”等表述在本说明书中是开放性而非封闭性的表述,其表示存在所陈述的特征、元件和/或部件,但不排除一个或多个其它特征、元件、部件和/或它们的组合的存在。此外,当诸如“...中的至少一个”的表述出现在所列特征的列表之后时,其修饰整列特征,而非仅仅修饰列表中的单独元件。此外,当描述本申请的实施方式时,使用“可”表示“本申请的一个或多个实施方式”。并且,用语“示例性的”旨在指代示例或举例说明。
除非另外限定,否则本文中使用的所有措辞(包括工程术语和科技术语)均具有与本申请所属领域普通技术人员的通常理解相同的含义。还应理解的是,除非本申请中有明确的说明,否则在常用词典中定义的词语应被解释为具有与它们在相关技术的上下文中的含义一致的含义,而不应以理想化或过于形式化的意义解释。
需要说明的是,在不冲突的情况下,本申请中的实施方式及实施方式中的特征可以相互组合。下面将参考附图并结合实施方式来详细说明本申请。
图1是根据本申请的示例性实施方式的网络管理系统的结构示意图。
如图1所示,本申请提供了一种网络管理系统,包括:速率检测模块1、设备检测模块2、故障检测模块3、芯片数据备份模块4、内核功能检测模块5以及数据管理模块6。具体地,速率检测模块1用于检测并上传多个网络设备的网络速率;其中,速率检测模块1的执行步骤包括:分别对多个网络设备传输数据包的流量进行采样和识别,轮询计算各个网络设备的传输速率峰值,并将传输速率峰值分别与对应的发生时刻进行匹配,生成第一记录数据;通过地址解析协议,将网络设备的互联网协议地址映射为多个媒体存取控制地址,并将媒体存取控制地址分别与对应的映射时刻进行匹配,生成第二记录数据;以及将第一记录数据和第二记录数据进行匹配,并上传至数据管理模块。设备检测模块2用于分别确定并上传网络设备对不同芯片类型的接入端口的使用速率特征。故障检测模块3用于对网络设备的工作状态进行分析,检测出异常工作状态,并上传异常工作状态对应的错误栈日志。芯片数据备份模块4用于构造并上传适用不同芯片类型的接入端口的配置脚本。内核功能检测模块5用于根据接入终端的通用串行总线支持的网络设备的类型确定并上传蓝牙适配器的通信协议。以及数据管理模块6用于分别分析网络速率、使用速率特征、错误栈日志、配置脚本以及通信协议,并生成数据流程;其中,数据管理模块6的执行步骤包括:创建用于进程通信的服务器;创建用于向服务器发送网络速率、使用速率特征、错误栈日志、配置脚本以及通信协议的客户端;由服务器对网络速率、使用速率特征、错误栈日志、配置脚本以及通信协议分别进行分析,并生成数据流程。
在一些实施方式中,在网络设备中数据传输的方向包括TX(transport,发送或上传)和RX(receive,接收或下载)。网络设备之间通过MAC(Media Access Control Address,媒体存取控制地址)来识别彼此的物理位置。另外,IP(Internet Protocol,网际互联协议)为网络设备提供了一种无连接的数据包传输服务,能够实现大规模、异构网络的互联互通,还能够分割顶层网络应用和底层网络技术之间的耦合关系,以实现两者的独立发展。IP的设计提高了网络的可扩展性,在本申请中网络设备之间通过IP通信。基于此,IP、MAC、TX以及RX与网络设备存在着对应关系,因此,通过在离散时间序列上的分析,能够对网络设备的网络速率进行识别,进而达到检测网络速率的目的。
在一些实施方式中,数据包传送的关键是将目标节点的IP地址映射到各个中间节点的MAC地址。IP地址与MAC地址的映射要通过ARP(Address Resolution Protocol,地址解析协议)来完成,它可将网络中的IP地址映射到网络设备的MAC地址,如交换机可以根据网络中的IP地址来找到网络设备的MAC地址。具体过程是:当交换机接收到来自网上一个数据包时,会根据该数据包的目标IP地址,查看交换机内部是否有跟该IP地址对应的MAC地址,如果有上次保留下来的对应的MAC地址,就会将该数据包转发到对应MAC地址的网络设备上去。如果在交换机内部没有与目标IP地址对应的MAC地址,则交换机会根据ARP协议将目标IP地址按照“表”中的对应关系映射成MAC地址,数据包就被转送到对应的MAC地址的网络设备上。
图2是根据本申请的示例性实施方式的速率检测模块的运行流程示意图。基于此,本申请设置有速率检测模块1。速率检测模块1执行检测网络速率的步骤如图2所示,包括:步骤S110,分别对多个网络设备传输数据包的流量进行采样和识别,轮询计算各个网络设备的传输速率峰值,并将传输速率峰值分别与对应的发生时刻进行匹配,生成第一记录数据。步骤S120,通过地址解析协议,将网络设备的互联网协议地址映射为多个媒体存取控制地址,并将媒体存取控制地址分别与对应的映射时刻进行匹配,生成第二记录数据。以及步骤S130,将第一记录数据和第二记录数据进行匹配,并上传至数据管理模块6。
更具体地,在步骤S110中,速率检测模块1首先创建第一定时器,用于查询网桥信息,显示连接的网络设备。进一步地,识别网络设备的接口流量,并周期性地采集并统计该接口的流量。更进一步地,轮询计算该接口的最大TX速率和最大RX速率。最终,列出该接口最大TX速率和发生时刻的对应关系,以及其最大RX速率和发生时刻的对应关系,生成第一记录数据。在步骤S120中,速率检测模块1还创建第二定时器,首先遍历proc文件系统和ARP表。具体地,proc文件系统是linux文件系统中包含系统信息的目录,并可以改变系统内核的初始参数。由于linux文件系统的信息是动态改变的,例如进程,所以读取proc文件系统时,proc文件系统将动态地从linux文件系统内核读出所需信息并提交。进一步地,识别接入端口以及该接入端口的IP地址。更进一步地,查看链接跟踪表、proc文件、net文件和ip_conntrack文件,需要说明的是,net子系统是linux系统的一部分,net文件包含net子系统的信息集合,可以查看各种网卡配置、网卡收发包情况,协议配置,还有网络状态;ip_conntrack子系统是linux系统中记录网络包状态的一个模块,ip_conntrack文件包含跟踪、处理和反馈当前各种网络通讯协议的信息。更进一步地,周期性地采样链接四元祖,链接四元组包括源IP地址、目的IP地址、源端口、目的端口,链接四元祖相当于记录一个连接会话基本的数据单元。最后将MAC地址与对应的映射时刻进行匹配,生成第二记录数据。在步骤S130中,速率检测模块1还创建第三定时器,首先周期性地读取第一记录数据和第二记录数据。进一步地创建一个关于IP、MAC、速率的数据模型,用于分析网络设备的速率特征,形成网络设备的特征图,以实现第一记录数据与第二记录数据的匹配,即将各个网络设备的最大下载速率和最大上传速率分别与其对应的MAC地址进行匹配。最终,将获得的匹配结果列表上传至数据管理模块6。
在一些实施方式中,接入终端作为网络边缘设备,给企业级或者家庭单位提供网络接入服务。接入终端周边有着不同的网络设备,例如局端的交换机、OLT(optical lineterminal,光线路终端)、DSLAM(Digital Subscriber Line Access Multiplexer,数字用户线路接入复用器)、BRAS(Broadband Access Server,宽带接入服务器)等设备,或者本地的投影仪、手机、电视等设备。通过ARP表可查看网络设备的接入情况,分析该网络设备对应的接入终端的芯片类型,即厂商类型。在记录局端设备和本地设备后,可使得接入终端与对应的网络设备构成一个动态的整体。最终实现外设管理的功能,包括上下行速率管理、服务质量管理、优先级管理、黑白名单管理和时间控制管理等。
图3是根据本申请的示例性实施方式的设备检测模块的运行流程示意图。基于此,本申请提供了设备检测模块2。具体地,设备检测模块2的执行过程如图3所示,包括:步骤S210,创建oui文件,读取该文件并创建链表。步骤S220,根据ARP表,采集接入端口接入网络设备的状态,并分析接入端口的芯片类型。进一步地,分别确定不同芯片类型的接入端口接入的多个网络设备处于不同状态的数量,并分别将网络设备与对应的状态调整时刻进行匹配,生成第三记录数据。以及步骤S230,读取并分析第三记录数据,确定网络设备的对不同芯片类型的接入端口的使用速率特征。
具体地,首先创建oui(Organizationally unique identifier)文件,以及读取该文件并创建链表。设备检测模块2创建了第三定时器,首先读取proc文件系统、net文件以及ARP表。进而创建APR和MAC地址的映射链表。进一步地,周期性地更新APR和MAC地址的映射链表。进一步地,匹配oui文件,更新网络设备对应的接入端口的芯片类型。最终分别列出各芯片类型的接入端口连接的在线设备的数量和离线设备的数量,并将网络设备与调整其状态(即在线状态或离线状态)的时刻进行匹配,生成第三记录数据。设备检测模块2还创建了第四定时器,首先周期性地读取第三记录数据。进一步地,创建一个时间、设备、速率的数据模型,用于分析出各个接入设备的使用速率特征。最终将该使用速率特征上传至数据管理模块6。
在一些实施方式中,网络设备的故障通常与网络连接状态有关,例如报文错误、报文被丢弃、系统负载过大导致的网络延迟、无线数据转发异常导致的无线STA(Single-threaded apartment,单线程单元)掉线、组播数据转发异常导致的STB(Set Top Box,数字视频变换盒)客户端掉线、QOS(Quality of Service,服务质量)状态异常导致虚拟专用网络无法正常工作、网络状态异常导致上联设备无法正常连接、STA设备接入方法错误导致数据转发异常等。目前,接入端口的芯片厂商都提供了相应的从驱动到内核再到应用层的DEBUG(排错)手段。利用linux系统文件可以读取接口状态、报文进入协议栈后的状态、组播配置状态,利用iptables、tc、ebtables、ip6tables、top、ps、ifconfig分别读取安全转发策略、服务质量策略、进程状态、广域网服务进程、接口状态等,需要说明的是,iptables是linux系统自带的优秀且完全免费的基于包过滤的防火墙工具,可以对流入、流出及流经服务器的数据包进行精细的控制,并且不受限于设备的配置状态;tc是linux系统内核的流量控制,主要是通过在输出端口外建立一个队列来实现流量控制的;ebtables是以太网桥防火墙,以太网桥在数据链路层工作,用于过滤数据链路层的数据包;ip6tables通常是用来建立、维护、检查linux系统内核ipv6包过滤表,且支持128为的地址;top是linux系统中常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况;ps用于显示当前的进程状态;ifconfig用于设置网络设备的状态,以及显示目前的设置情况。利用各大芯片方案厂商已有DEBUG方法,结合故障检测栈,能够清楚的了解设备的工作状态,当错误发生时,对错误栈日志进行上传,达到故障检测的功能。
基于此,本申请提出了故障检测模块3。故障检测模块3的具体运行方式为:读取linux文件系统,获取linux的不同文件系统对不同网络设备的配置信息。将不同芯片类型的接入端口对应的故障消除方法与配置信息进行结合,确定网络设备的工作状态。以及检测出网络设备的异常工作状态,生成并上传异常工作状态对应的错误栈日志。
图4是根据本申请的示例性实施方式的故障检测模块的运行流程示意图。如图4所示故障检测模块3创建了第五定时器,用于创建故障检测栈,进而实现对网络状态、系统状态、无线状态、组播状态、QOS状态、iptables状态、连接设备状态和接口状态的读取,以确定网络设备的工作状态。故障检测模块3还创建了故障日志服务器和故障检测客户端,同时绑定了客户端的IP地址和端口。进一步地,检测网络设备的异常工作状态,即由第五定时器周期地执行故障检测栈,记录各栈的错误栈日志和对应的时刻,将错误栈日志和其发生的时刻匹配,并保存为错误数据。进一步地,创建第六定时器,将错误数据周期性地发送给故障日志服务器。再有日志服务器将异常工作状态对应的错误栈日志上传至数据管理模块6。
在一些实施方式中,接入端口的芯片类型是整个系统工作的基础。目前接入端口的主流芯片方案有博通、瑞昱、联发科、中兴微和高通等。主流的操作系统为linux。通过构造不同方案的配置脚本,适应每种芯片类型的数据管理方式,是一种简单且高效的方法。基于此,本申请提出了芯片数据备模块4,其执行方式包括:调用linux内核模块,并查看linux文件系统所支持的网络设备,以确定接入终端的通用串行总线支持的网络设备的类型。通过linux文件系统确定其内置蓝牙适配器的挂载位置。根据接入终端的通用串行总线支持的网络设备的类型,将蓝牙适配器的通信协议转换为点对点协议或动态主机配置协议。
图5是根据本申请的示例性实施方式的芯片数据备份模块的运行流程示意图。如图5所示,首先查看proc文件和cpuinfo文件,匹配接入端口的芯片厂商及芯片方案,提取方案的备份脚本,写入配置过程。进一步地,创建芯片方案配置脚本,并分配该配置脚本。最后,创建配置栈,实现Xdsl(X数字用户线)、gpon(Gigabit-Capable Passive OpticalNetworks,具有千兆位功能的无源光网络)、epon(Ethernet Passive Optical Network,以太网无源光网络)、ethernet(以太网)的配置。完成二层vlan(Virtual Local AreaNetwork,虚拟局域网)的配置,三层ppp(Point to Point Protocol,点对点协议)等的配置以及四层NTP(Network Time Protocol,网络时间协议)、wlan(Wireless Local AreaNetwork,无线局域网)、iptv(交互式网络电视)、voip(Voice over Internet Protocol,网络电话)、qos(Quality of Service,服务质量)、iptables、ebtables、ssh(Secure Shell,安全外壳协议)等的配置。换言之,不同的芯片方案都有基于linux系统的芯片信息,不同的芯片方案定制不同的配置脚本,因为不同的芯片的集成度不同,比如数据管理的方式、有线或无线芯片的配置接口等,因此本申请采用芯片数据备份模块4根据不同的芯片厂商定制上层接口。
在一些实施方式中,本申请是基于linux操作系统而设置的。具体地,linux系统的内核模块中外设相关的是无线芯片外设和USB(Universal Serial Bus,通用串行总线)host(主设备)控制器,大部分网络设备都具备上述两个外设。通过USB做硬件资源扩展可以使终端转换成3G或4G路由器。基于此,本申请提出了内核功能检测模块5,用于实现扩展外设的目的。具体地,内核功能检测模块5的运行方式为根据接入终端的通用串行总线支持的网络设备的类型确定并上传蓝牙适配器的通信协议。
图6是根据本申请的示例性实施方式的内核功能检测模块的运行流程示意图。如图6所示,内核功能检测模块5首先遍历linux文件系统,查看支持的ko文件,并查看USB接口,将其记录到实时操作系统kernel.data中。进一步地,创建dongle(蓝牙适配器)的状态机,执行检测USB接口、转换USB接口、拉起dongle状态机等操作;进而由dongle状态机响应正在连接、已连接、失去连接等状态。
在一些实施方式中,本申请还设置有数据管理模块6。数据管理模块6用于接收上述模块的数据并分别分析网络速率、使用速率特征、错误栈日志、配置脚本以及通信协议,并生成一套完整的数据流程。
图7是根据本申请的示例性实施方式的数据管理模块的运行流程示意图。如图7所示,数据管理模块6首先创建用于进程通信的服务器;进一步地创建用于向服务器发送网络速率、使用速率特征、错误栈日志、配置脚本以及通信协议的客户端;由服务器对网络速率、使用速率特征、错误栈日志、配置脚本以及通信协议分别进行分析,并生成数据流程。最终,创建第七定时器,周期跟踪数据路由状态,产生数据路由文件。
最终,由网络设备响应数据管理模块6生成的数据流程,并进行网络服务。
根据本申请一实施方式的网络管理系统,通过设置速率检测模块和故障检测模块,对用户的网络设备和用户行为进行针对性地分析,改善了用户的上网体验,有利于合理地规划网络资源。本申请还能够有效地减少接入终端的浪费,使得每一个接入终端都有统一的服务方式。另外,本申请还有效地减少了开发接入终端的工作量,减轻了协议开发和维护的成本。并且,本申请通过设置内核功能检测模块,还能够针对外设定制扩展方式,提升用户体验感。
图8是根据本申请的示例性实施方式的网络管理方法流程图。
如图8所示,本申请还提出了一种网络管理方法,采集管理网络设备的管理参数;以及分别分析管理参数,并生成数据流程,
其中,采集管理网络设备的管理参数包括:
检测并上传多个网络设备的网络速率,其中具体步骤包括:分别对多个网络设备传输数据包的流量进行采样和识别,轮询计算各个网络设备的传输速率峰值,并将传输速率峰值分别与对应的发生时刻进行匹配,生成第一记录数据;通过地址解析协议,将网络设备的互联网协议地址映射为多个媒体存取控制地址,并将媒体存取控制地址分别与对应的映射时刻进行匹配,生成第二记录数据;以及将第一记录数据和第二记录数据进行匹配及上传。
分别确定并上传网络设备对不同芯片类型的接入端口的使用速率特征。
对网络设备的工作状态进行分析,检测出异常工作状态,并上传异常工作状态对应的错误栈日志。
构造并上传适用不同芯片类型的接入端口的配置脚本。
根据接入终端的通用串行总线支持的网络设备的类型确定并上传蓝牙适配器的通信协议。
分别分析管理参数,并生成数据流程的具体步骤包括:
创建用于进程通信的服务器,创建用于向服务器发送网络速率、使用速率特征、错误栈日志、配置脚本以及通信协议的客户端,以及由服务器对网络速率、使用速率特征、错误栈日志、配置脚本以及通信协议分别进行分析,并生成数据流程。
在一些实施方式中,检测并上传多个网络设备的网络速率,包括如下更具体的步骤:创建第一定时器,用于查询网桥信息,并显示连接的网络设备,识别网络设备的接口的流量,并周期性采集和统计接口的流量,轮询计算接口的最大上传速率和最大下载速率,将接口的最大上传速率和最大下载速率分别与各自的发生时刻进行匹配,生成第一记录数据。创建第二定时器,遍历linux文件系统的目录和地址解析协议表,识别接入端口以及接入端口的网络互连协议地址,查看链接跟踪表、linux文件系统的目录、net文件和ip_conntrack文件,周期性采样链接四元组,将多个媒体存取控制地址分别与对应的映射时刻进行匹配,生成第二记录数据。创建第三定时器,周期性读取第一记录数据和第二记录数据,并创建一个用于分析网络设备的速率特征的数据模型,形成网络设备的特征图,实现第一记录数据和第二记录数据的匹配,生成匹配结果并上传。
在一些实施方式中,分别确定并上传网络设备对不同芯片类型的接入端口的使用速率特征,包括:根据地址解析协议,采集接入端口接入网络设备的状态,并分析接入端口的芯片类型。分别确定不同芯片类型的接入端口接入的多个网络设备处于不同状态的数量,并分别将网络设备与对应的状态调整时刻进行匹配,生成第三记录数据。以及读取并分析第三记录数据,确定网络设备的对不同芯片类型的接入端口的使用速率特征。
在一些实施方式中,对网络设备的工作状态进行分析,检测出异常工作状态,并上传异常工作状态对应的错误栈日志,包括:读取linux文件系统,获取linux的不同文件系统对不同网络设备的配置信息。将不同芯片类型的接入端口对应的故障消除方法与配置信息进行结合,确定网络设备的工作状态。检测出网络设备的异常工作状态,生成并上传异常工作状态对应的错误栈日志。
本申请的网络管理方法是基于上述实施方式的网络管理系统而提出的,即网络管理系统中各个模块的运行步骤即为网络管理方法的内容。因此,具体方法步骤及原理可参考上述网络管理系统,在此不再赘述。
根据本申请一实施方式的网络管理方法,通过对用户的网络设备和用户行为进行针对性地分析,改善了用户的上网体验,有利于合理地规划网络资源。本申请还能够有效地减少接入终端的浪费,使得每一个接入终端都有统一的服务方式。另外,本申请还有效地减少了开发接入终端的工作量,减轻了协议开发和维护的成本。并且,本申请还能够针对外设定制扩展方式,提升用户体验感。
如上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明。应理解的是,以上所述仅为本发明的具体实施方式,并不用于限制本发明。凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等均应包含在本发明的保护范围之内。

Claims (10)

1.一种网络管理系统,其特征在于,包括:
速率检测模块,用于检测并上传多个网络设备的网络速率;其中,所述速率检测模块的执行步骤包括:分别对多个所述网络设备传输数据包的流量进行采样和识别,轮询计算各个所述网络设备的传输速率峰值,并将所述传输速率峰值分别与对应的发生时刻进行匹配,生成第一记录数据;通过地址解析协议,将所述网络设备的互联网协议地址映射为多个媒体存取控制地址,并将所述媒体存取控制地址分别与对应的映射时刻进行匹配,生成第二记录数据;以及将所述第一记录数据和所述第二记录数据进行匹配,并上传至数据管理模块;
设备检测模块,用于分别确定并上传所述网络设备对不同芯片类型的接入端口的使用速率特征;
故障检测模块,用于对所述网络设备的工作状态进行分析,检测出异常工作状态,并上传所述异常工作状态对应的错误栈日志;
芯片数据备份模块,用于构造并上传适用不同芯片类型的所述接入端口的配置脚本;
内核功能检测模块,用于根据接入终端的通用串行总线支持的所述网络设备的类型确定并上传蓝牙适配器的通信协议;以及
数据管理模块,用于分别分析所述网络速率、所述使用速率特征、所述错误栈日志、所述配置脚本以及所述通信协议,并生成数据流程;其中,所述数据管理模块的执行步骤包括:创建用于进程通信的服务器;创建用于向所述服务器发送所述网络速率、所述使用速率特征、所述错误栈日志、所述配置脚本以及所述通信协议的客户端;由所述服务器对所述网络速率、所述使用速率特征、所述错误栈日志、所述配置脚本以及所述通信协议分别进行分析,并生成数据流程。
2.根据权利要求1所述的网络管理系统,其特征在于,所述速率检测模块的具体执行步骤包括:
创建第一定时器,用于查询网桥信息,并显示连接的所述网络设备,识别所述网络设备的接口的流量,并周期性采集和统计所述接口的流量,轮询计算所述接口的最大上传速率和最大下载速率,将所述接口的最大上传速率和最大下载速率分别与各自的发生时刻进行匹配,生成所述第一记录数据;
创建第二定时器,遍历linux文件系统的目录和地址解析协议表,识别所述接入端口以及所述接入端口的网络互连协议地址,查看链接跟踪表、linux文件系统的目录、net文件和ip_conntrack文件,周期性采样链接四元组,将多个所述媒体存取控制地址分别与对应的映射时刻进行匹配,生成所述第二记录数据;
创建第三定时器,周期性读取所述第一记录数据和所述第二记录数据,并创建一个用于分析所述网络设备的速率特征的数据模型,形成所述网络设备的特征图,实现所述第一记录数据和所述第二记录数据的匹配,生成匹配结果并上传。
3.根据权利要求1所述的网络管理系统,其特征在于,所述设备检测模块的执行步骤包括:
根据地址解析协议,采集所述接入端口接入所述网络设备的状态,并分析所述接入端口的芯片类型;
分别确定不同芯片类型的所述接入端口接入的多个所述网络设备处于不同状态的数量,并分别将所述网络设备与对应的状态调整时刻进行匹配,生成第三记录数据;以及
读取并分析所述第三记录数据,确定所述网络设备的对不同芯片类型的所述接入端口的使用速率特征。
4.根据权利要求1所述的网络管理系统,其特征在于,所述故障检测模块的执行步骤包括:
读取linux文件系统,获取linux的不同文件系统对不同所述网络设备的配置信息;
将不同芯片类型的所述接入端口对应的故障消除方法与所述配置信息进行结合,确定所述网络设备的工作状态;以及
检测出所述网络设备的异常工作状态,生成并上传所述异常工作状态对应的错误栈日志。
5.根据权利要求1所述的网络管理系统,其特征在于,所述芯片数据备份模块的执行步骤包括:
调用linux内核模块,并查看linux文件系统所支持的所述网络设备,以确定所述接入终端的通用串行总线支持的所述网络设备的类型;
通过linux文件系统确定其内置蓝牙适配器的挂载位置;以及
根据所述接入终端的通用串行总线支持的所述网络设备的类型,将所述蓝牙适配器的通信协议转换为点对点协议或动态主机配置协议。
6.根据权利要求1所述的网络管理系统,其特征在于,所述网络设备响应所述数据流程,并进行网络服务。
7.一种网络管理方法,其特征在于,包括:
采集管理网络设备的管理参数;以及
分别分析所述管理参数,并生成数据流程,
其中,所述采集管理所述网络设备的管理参数包括:
检测并上传多个所述网络设备的网络速率,其中具体步骤包括:分别对多个所述网络设备传输数据包的流量进行采样和识别,轮询计算各个所述网络设备的传输速率峰值,并将所述传输速率峰值分别与对应的发生时刻进行匹配,生成第一记录数据;通过地址解析协议,将所述网络设备的互联网协议地址映射为多个媒体存取控制地址,并将所述媒体存取控制地址分别与对应的映射时刻进行匹配,生成第二记录数据;以及将所述第一记录数据和所述第二记录数据进行匹配及上传,
分别确定并上传所述网络设备对不同芯片类型的接入端口的使用速率特征,
对所述网络设备的工作状态进行分析,检测出异常工作状态,并上传所述异常工作状态对应的错误栈日志,
构造并上传适用不同芯片类型的所述接入端口的配置脚本,以及
根据所述接入终端的通用串行总线支持的所述网络设备的类型确定并上传蓝牙适配器的通信协议;
所述分别分析所述管理参数,并生成数据流程的具体步骤包括:
创建用于进程通信的服务器,
创建用于向所述服务器发送所述网络速率、所述使用速率特征、所述错误栈日志、所述配置脚本以及所述通信协议的客户端,以及
由所述服务器对所述网络速率、所述使用速率特征、所述错误栈日志、所述配置脚本以及所述通信协议分别进行分析,并生成数据流程。
8.根据权利要求7所述的网络管理方法,所述检测并上传多个所述网络设备的网络速率,其特征在于,包括如下更具体的步骤:
创建第一定时器,用于查询网桥信息,并显示连接的所述网络设备,识别所述网络设备的接口的流量,并周期性采集和统计所述接口的流量,轮询计算所述接口的最大上传速率和最大下载速率,将所述接口的最大上传速率和最大下载速率分别与各自的发生时刻进行匹配,生成所述第一记录数据;
创建第二定时器,遍历linux文件系统的目录和地址解析协议表,识别所述接入端口以及所述接入端口的网络互连协议地址,查看链接跟踪表、linux文件系统的目录、net文件和ip_conntrack文件,周期性采样链接四元组,将多个所述媒体存取控制地址分别与对应的映射时刻进行匹配,生成所述第二记录数据;
创建第三定时器,周期性读取所述第一记录数据和所述第二记录数据,并创建一个用于分析所述网络设备的速率特征的数据模型,形成所述网络设备的特征图,实现所述第一记录数据和所述第二记录数据的匹配,生成匹配结果并上传。
9.根据权利要求7所述的网络管理方法,所述分别确定并上传所述网络设备对不同芯片类型的接入端口的使用速率特征,其特征在于,包括:
根据地址解析协议,采集所述接入端口接入所述网络设备的状态,并分析所述接入端口的芯片类型;
分别确定不同芯片类型的所述接入端口接入的多个所述网络设备处于不同状态的数量,并分别将所述网络设备与对应的状态调整时刻进行匹配,生成第三记录数据;以及
读取并分析所述第三记录数据,确定所述网络设备的对不同芯片类型的所述接入端口的使用速率特征。
10.根据权利要求7所述的网络管理方法,所述对所述网络设备的工作状态进行分析,检测出异常工作状态,并上传所述异常工作状态对应的错误栈日志,其特征在于,包括:
读取linux文件系统,获取linux的不同文件系统对不同所述网络设备的配置信息;
将不同芯片类型的所述接入端口对应的故障消除方法与所述配置信息进行结合,确定所述网络设备的工作状态;以及
检测出所述网络设备的异常工作状态,生成并上传所述异常工作状态对应的错误栈日志。
CN202110569737.5A 2021-05-25 2021-05-25 网络管理系统及方法 Active CN113037573B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110569737.5A CN113037573B (zh) 2021-05-25 2021-05-25 网络管理系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110569737.5A CN113037573B (zh) 2021-05-25 2021-05-25 网络管理系统及方法

Publications (2)

Publication Number Publication Date
CN113037573A CN113037573A (zh) 2021-06-25
CN113037573B true CN113037573B (zh) 2021-07-30

Family

ID=76455663

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110569737.5A Active CN113037573B (zh) 2021-05-25 2021-05-25 网络管理系统及方法

Country Status (1)

Country Link
CN (1) CN113037573B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104159244A (zh) * 2014-08-05 2014-11-19 王强 一种便携式无线网络探测取证系统
CN105323111A (zh) * 2015-11-17 2016-02-10 南京南瑞集团公司 一种运维自动化系统及方法
CN109361548A (zh) * 2018-11-20 2019-02-19 国家电网有限公司 一种基于主动安全的ims网络行为诊断预警方法及装置
CN110278102A (zh) * 2018-03-15 2019-09-24 勤智数码科技股份有限公司 一种it自动化运维系统和方法
CN110741603A (zh) * 2017-06-16 2020-01-31 思科技术公司 拓扑探测器
CN110912887A (zh) * 2019-11-22 2020-03-24 上海交通大学 一种基于Bro的APT监测系统和方法
US10812317B1 (en) * 2015-03-06 2020-10-20 Sprint Communcations Company L.P. Telecommunication network trouble ticket system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10313212B2 (en) * 2015-09-22 2019-06-04 Veniam, Inc. Systems and methods for detecting and classifying anomalies in a network of moving things

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104159244A (zh) * 2014-08-05 2014-11-19 王强 一种便携式无线网络探测取证系统
US10812317B1 (en) * 2015-03-06 2020-10-20 Sprint Communcations Company L.P. Telecommunication network trouble ticket system
CN105323111A (zh) * 2015-11-17 2016-02-10 南京南瑞集团公司 一种运维自动化系统及方法
CN110741603A (zh) * 2017-06-16 2020-01-31 思科技术公司 拓扑探测器
CN110278102A (zh) * 2018-03-15 2019-09-24 勤智数码科技股份有限公司 一种it自动化运维系统和方法
CN109361548A (zh) * 2018-11-20 2019-02-19 国家电网有限公司 一种基于主动安全的ims网络行为诊断预警方法及装置
CN110912887A (zh) * 2019-11-22 2020-03-24 上海交通大学 一种基于Bro的APT监测系统和方法

Also Published As

Publication number Publication date
CN113037573A (zh) 2021-06-25

Similar Documents

Publication Publication Date Title
CN104993947B (zh) 批量升级固件的方法
CN110178342A (zh) Sdn网络的可扩缩应用级别监视
EP1301864A1 (en) Network management method and system
CN101505191A (zh) 一种以太网无源光网络的故障处理方法及系统
CN106685733A (zh) 一种fc‑ae‑1553网络快速配置与自动化测试方法
CN112866018A (zh) 物联网管理系统及方法
CN112769602A (zh) 一种白盒交换机统一配置管理系统、方法和网络操作系统
CN106850268B (zh) 一种线性保护倒换的实现装置及方法
CN103200067A (zh) 用以隔离数据的动态虚拟lan
US7733800B2 (en) Method and mechanism for identifying an unmanaged switch in a network
CN113037573B (zh) 网络管理系统及方法
CN110620775A (zh) 一种抓取并解析gpon控制管理协议数据包的方法
WO2015196694A1 (zh) 单板日志信息的存储方法及系统
WO2017167076A1 (zh) 设备管理方法及装置
CN112929211B (zh) 非ip管控设备接入ip dcn网络被代管的实现方法
CN110955537B (zh) 一种物理机纳管方法及装置
WO2016197729A1 (zh) 数据发送方法及装置
Wang et al. A SDN-based heterogeneous networking scheme for profinet and Modbus Networks
KR20010055482A (ko) 통합망 환경에서 서비스관리시스템의 관리명령을 교환기명령어로 변환하는 방법
JP2020155888A (ja) 加入者回線集約機器、pon局側装置、ponシステムおよび加入者回線集約機器の制御方法
CN107248935A (zh) 一种网管发现并监控网元的系统及方法
JP3917050B2 (ja) Macコントロールフレームによる装置管理方法
KR20050076406A (ko) 통신 관리 네트워크에서 네트워크 소자에 대한 관리시스템 및 그 관리 방법
CN114024895B (zh) 一种基于tr069的网络路线优化方法和系统
EP3684011B1 (en) Method for an improved and simplified operation and architecture of a central office point of delivery within a broadband access network of a telecommunications network, for the enhanced execution of network attachment tasks, further functional or configuration tasks within the central office point of delivery, telecommunications system, program and computer-readable medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: No.308, warehouse 2, Baisha logistics company, 3011 Shahe West Road, Shuguang community, Xili street, Nanshan District, Shenzhen City, Guangdong Province 518000

Patentee after: Shenzhen Yilian Unlimited Technology Co.,Ltd.

Country or region after: China

Address before: No.308, warehouse 2, Baisha logistics company, 3011 Shahe West Road, Shuguang community, Xili street, Nanshan District, Shenzhen City, Guangdong Province 518000

Patentee before: SHENZHEN COMNECT TECHNOLOGY CO.,LTD.

Country or region before: China