CN106330483A - 信息获取方法、客户端设备和服务端设备 - Google Patents

信息获取方法、客户端设备和服务端设备 Download PDF

Info

Publication number
CN106330483A
CN106330483A CN201510341069.5A CN201510341069A CN106330483A CN 106330483 A CN106330483 A CN 106330483A CN 201510341069 A CN201510341069 A CN 201510341069A CN 106330483 A CN106330483 A CN 106330483A
Authority
CN
China
Prior art keywords
icmp
message
field
user
order
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.)
Granted
Application number
CN201510341069.5A
Other languages
English (en)
Other versions
CN106330483B (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.)
ZTE Corp
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Priority to CN201510341069.5A priority Critical patent/CN106330483B/zh
Priority to PCT/CN2016/079062 priority patent/WO2016202066A1/zh
Publication of CN106330483A publication Critical patent/CN106330483A/zh
Application granted granted Critical
Publication of CN106330483B publication Critical patent/CN106330483B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements
    • 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/34Signalling channels for network management communication

Abstract

本发明公开了一种信息获取方法、客户端设备和服务端设备,包括:构造ICMP Echo报文,将用户输入命令设置在ICMP Echo报文的数据区;将ICMP Echo报文发送给服务端;接收服务端发送的与所述ICMP Echo报文对应的ICMP Reply报文;解析ICMP Reply报文的数据区携带的针对用户输入命令的响应信息。通过本发明的方案,基于ICMP协议的Reply和Echo报文的交互方式,将用户输入命令承载到ICMP Echo报文的数据区中,在网关的服务端解析完用户输入命令后,将用户输入命令的响应信息承载到ICMP Reply报文的数据区,从而利用通过网络传输的ICMP报文实现响应信息的传输,提供了一种基于ICMP协议的新颖诊断方式,可以解决诸如串口卡死或无法使用等情况下的诊断困难问题,从而保证网关故障诊断的顺利进行。

Description

信息获取方法、客户端设备和服务端设备
技术领域
本发明涉及通信领域,尤指一种信息获取方法、客户端设备和服务端设备。
背景技术
互联网时代下,家庭网关依然已成为家庭内计算机和各种移动终端联系的纽带,然而,家庭网关设备是一个非常复杂的系统,主要由底层操作系统和上层应用协议组成。系统的复杂性必然带来故障诊断的复杂性。
在网关设备的开发过程中,如果网关设备的调试运行出现故障,开发人员通常通过shell命令方式对设备故障进行诊断,shell命令方式是指通过操作系统的命令行工具输入指令的方式。
具体地,开发人员从网关设备的串口以shell命令的方式输入诊断命令,网关设备对诊断命令进行处理和响应,并根据开发人员的需要,将当前设备的上下文情况作为响应信息通过串口进行输出,因此,开发人员可以通过串口了解当前网关设备运行的上下文情况,从而进行故障诊断。
然而,网关设备可能会出现串口卡死的情况,在这种情况下,开发人员无法通过shell命令方式了解当前设备运行的上下文情况,给故障诊断带来了困难。
此外,有些网关设备没有设置串口,例如,普通家庭使用的网关设备普遍没有设置串口,如果这些网关设备出现故障,维修人员也无法通过串口了解当前设备运行的上下文情况,从而难以完成网关设备故障诊断。
发明内容
为了解决上述问题,本发明提出了一种信息获取方法、客户端设备和服务端设备,能够实现串口卡死或无法使用串口的情况下的网关故障诊断中用户输入命令对应的响应信息的获取,从而保证网关故障诊断的顺利进行。
为了达到上述目的,本发明提出了一种信息获取方法,所述方法包括:
构造ICMP Echo报文,将用户输入命令设置在ICMP Echo报文的数据区;
将ICMP Echo报文发送给服务端;
接收服务端发送的与所述ICMP Echo报文对应的ICMP Reply报文;
解析ICMP Reply报文的数据区携带的针对用户输入命令的响应信息。
优选地,在所述解析ICMP Reply报文的数据区携带的针对用户输入命令的响应信息之后,所述信息获取方法还包括:
将所述针对用户输入命令的响应信息展示给用户。
优选地,所述ICMP Echo报文和ICMP Reply报文均为ICMP报文;ICMP报文包括报文头部和数据区,其中,报文头部包括报文类型标识和代码字段;数据区包括:Magic字段、长度字段和信息承载字段;
所述构造ICMP Echo报文,将用户输入命令设置到ICMP Echo报文的数据区具体包括:
设置ICMP Echo报文的报文类型标识和代码字段;
填充ICMP Echo报文的Magic字段;
计算用户输入命令的长度,将计算得到的长度填充到ICMP Echo报文的长度字段,
将用户输入命令填充到ICMP Echo报文的信息承载字段。
优选地,所述解析ICMP Reply报文的数据区携带的针对用户输入命令的响应信息包括:
检测ICMP Echo报文的Magic字段与ICMP Reply报文中的Magic字段是否匹配;
当检测结果为匹配时,根据ICMP Reply报文的长度字段,读取ICMPReply报文的信息承载字段中携带的响应信息。
优选地,所述将ICMP Echo报文发送给服务端具体包括:
通过网络连接端口将ICMP Echo报文发送给服务端。
为了达到上述目的,本发明还提出了一种信息获取方法,所述方法包括:
接收客户端发送的ICMP Echo报文;
解析ICMP Echo报文中携带的用户输入命令;
对用户输入命令进行处理,并生成针对用户输入命令的响应信息;
构造ICMP Reply报文,将针对用户输入命令的响应信息设置在ICMP报文的数据区;
将ICMP Reply报文发送给客户端。
优选地,所述解析ICMP Echo报文中携带的用户输入命令具体包括:
检测ICMP Echo报文的Magic字段是否为指定的Magic字段;
当测ICMP Echo报文的Magic字段是指定的Magic字段时,根据ICMPEcho报文的长度字段,读取ICMP Echo报文的信息承载字段中携带的用户输入命令;
所述构造ICMP Reply报文,将针对用户输入命令的响应信息设置在ICMP报文的数据区具体包括:
设置ICMP Reply报文的报文类型标识和代码字段;
填充ICMP Reply报文的Magic字段;
计算响应信息的长度,将计算得到的长度填充到ICMP Reply报文的长度字段,
将响应信息填充到ICMP Reply报文的信息承载字段。
为了达到上述目的,本发明还提出了一种客户端设备,设置在终端上,其特征在于,所述客户端设备包括:
第一构造单元,用于构造ICMP Echo报文,将用户输入命令设置在ICMPEcho报文的数据区;
第一发送单元,用于将ICMP Echo报文发送给服务端;
第一接收单元,用于接收服务端发送的与所述ICMP Echo报文对应的ICMP Reply报文;
第一解析单元,用于解析ICMP Reply报文的数据区携带的针对用户输入命令的响应信息。
优选地,还包括:
展示单元,用于将所述针对用户输入命令的响应信息展示给用户。
优选地,所述ICMP Echo报文和ICMP Reply报文均为ICMP报文;ICMP报文包括报文头部和数据区,其中,报文头部包括报文类型标识和代码字段;数据区包括:Magic字段、长度字段和信息承载字段;
所述第一构造单元具体用于:
设置ICMP Echo报文的报文类型标识和代码字段;
填充ICMP Echo报文的Magic字段;
计算用户输入命令的长度,将计算得到的长度填充到ICMP Echo报文的长度字段,
将用户输入命令填充到ICMP Echo报文的信息承载字段。
优选地,所述第一解析单元具体包括:
第一检测模块,用于检测ICMP Echo报文的Magic字段与ICMP Reply报文中的Magic字段是否匹配;
第一读取模块,用于当检测结果为匹配时,根据ICMP Reply报文的长度字段,读取ICMP Reply报文的信息承载字段中携带的响应信息。
优选地,所述第一发送单元具体用于:通过网络连接端口将ICMP Echo报文发送给服务端。
为了达到上述目的,本发明还提出了一种服务端设备,设置在网关设备上,其特征在于,所述服务端设备包括:
第二接收单元,用于接收客户端发送的ICMP Echo报文;
第二解析单元,用于解析ICMP Echo报文中携带的用户输入命令;
处理单元,用于对用户输入命令进行处理,并生成针对用户输入命令的响应信息;
第二构造单元,用于构造ICMP Reply报文,将针对用户输入命令的响应信息设置在ICMP报文的数据区;
第二发送单元,用于将ICMP Reply报文发送给客户端。
优选地,所述第二解析单元具体包括:
第二检测模块,用于检测ICMP Echo报文的Magic字段是否为指定的Magic字段;
第二读取模块,用于当测ICMP Echo报文的Magic字段是指定的Magic字段时,根据ICMP Echo报文的长度字段,读取ICMP Echo报文的信息承载字段中携带的用户输入命令;
所述第二构造单元具体用于:
设置ICMP Reply报文的报文类型标识和代码字段;
填充ICMP Reply报文的Magic字段;
计算响应信息的长度,将计算得到的长度填充到ICMP Reply报文的长度字段,
将响应信息填充到ICMP Reply报文的信息承载字段。
与现有技术相比,本发明提供的技术方案包括:构造ICMP Echo报文,将用户输入命令设置在ICMP Echo报文的数据区;将ICMP Echo报文发送给服务端;接收服务端发送的与所述ICMP Echo报文对应的ICMP Reply报文;解析ICMP Reply报文的数据区携带的针对用户输入命令的响应信息。通过本发明的方案,根据ICMP协议,通信网络中的设备在收到ICMP Echo报文时,将对应回复ICMP Reply报文,本发明方案中,基于ICMP协议的Reply和Echo报文的交互方式,将用户输入命令承载到ICMP Echo报文的数据区中,在网关的服务器解析完诊断命令后,将用户输入命令的响应信息承载到ICMP Reply报文的数据区,从而利用通过网络传输的ICMP报文实现用户输入命令对应的响应信息的传输,从而能够通过响应信息完成网关故障诊断,通过上述技术方案,提供了一种串口卡死或无法使用串口的情况下的网关故障诊断中用户输入命令对应的响应信息的获取方法,从而保证网关故障诊断的顺利进行。
附图说明
下面对本发明实施例中的附图进行说明,实施例中的附图是用于对本发明的进一步理解,与说明书一起用于解释本发明,并不构成对本发明保护范围的限制。
图1为现有技术中ICMP报文格式定义示意图;
图2为本发明提出了一种信息获取方法的流程示意图;
图3为本发明提出的另一种信息获取方法的流程示意图;
图4A为应用实例中根据ICMP Echo报文据构造的IP报文的结构示意图;
图4B为应用实例中根据ICMP Reply报文据构造的IP报文的结构示意图;
图5为本发明实施例提出的客户端设备的结构示意图;
图6为本发明实施例提出的服务端设备的结构示意图。
具体实施方式
为了便于本领域技术人员的理解,下面结合附图对本发明作进一步的描述,并不能用来限制本发明的保护范围。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的各种方式可以相互组合。
在介绍本发明实施例提出的信息获取方法之前,首先对ICMP(InternetControl Message Protocol,Internet控制报文协议)报文进行简单介绍。ICMP协议是TCP/IP协议族的一个子协议,用于在IP(Internet Protocol,网络互联协议)主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息,这些控制消息并不传输用户数据。根据ICMP协议,通信网络中的设备在收到ICMP Echo报文时,将对应回复ICMP Reply报文,其中一个典型应用就是Ping诊断,通过Ping命令可以查看网络的是否联通,具体地,为了判断设备A和设备B之间的网络联通性,设备A向设备B发送ICMP Echo报文之后,如果设备A能够收到设备B发送的ICMP Reply报文,则说明判断设备A和设备B之间的网络联通。。ICMPEcho报文和ICMP Reply报文都是ICMP报文中的一种,和其他类型的ICMP报文不同的是,ICMP Echo报文和ICMP Reply报文的数据区为随机数据。
参见图1A,为现有技术中ICMP报文格式定义示意图。如图1所示,ICMP报文包括报文头部和数据区(ICMP数据),其中,报文头部包括报文类型标识(8位类型)、代码字段(8位代码),以及16位的校验和。当ICMP报文的报文头部的报文类型标识和代码字段均设置为0时,ICMP报文为ICMP Echo报文或ICMP Reply报文。当ICMP报文为ICMP Echo报文或ICMPReply报文时,其数据区为随机数据,不包含有效信息。
参见图2,本发明提出了一种信息获取方法,包括:
步骤110,构造ICMP Echo报文,将用户输入命令设置在ICMP Echo报文的数据区;
其中,ICMP Echo报文为ICMP报文的一种;参见图1B,为本发明实施例提供的ICMP报文格式定义示意图。如图1所示,本发明实施例提供的ICMP报文包括报文头部和数据区(ICMP数据),ICMP报文包括报文头部和数据区,其中,报文头部包括报文类型标识和代码字段,还包括16位的校验和;数据区包括:Magic字段、长度字段和信息承载字段。在图1B中示例性的,报文类型标识为8位类型,代码字段为8位代码,对于用于诊断命令请求的ICMP Echo报文,信息承载字段中携带相应的诊断命令。ICMP报文前加上IP首部构成IP报文。
步骤110中,构造ICMP Echo报文,将用户输入命令设置到ICMP Echo报文的数据区具体包括:
设置ICMP Echo报文的报文类型标识和代码字段;
填充ICMP Echo报文的Magic字段;
计算用户输入命令的长度,将计算得到的长度填充到ICMP Echo报文的长度字段,
将用户输入命令填充到ICMP Echo报文的信息承载字段。
其中,设置ICMP Echo报文的报文类型标识和代码字段具体为将报文类型标识和代码字段均设置为0。
通过步骤110上述过程,实现了将用户输入命令设置到ICMP Echo报文的数据区中,通过Magic字段,使得服务端能够获知该ICMP Echo报文携带有用户输入指令,通过长度字段,使得服务端能够正确地解析ICMP Echo报文携带的用户输入指令。
其中,在执行网关故障诊断之前,客户端可以和服务端事先约定一个指定的Magic字段,在客户端构造ICMP Echo报文时,将指定的Magic字段设置在ICMP Echo报文的Magic字段位置,在服务端接收到ICMP Echo报文时,通过判断ICMP Echo报文的Magic字段是否为指定的Magic字段,来判断是否需要解析数据区中的用户输入命令,如果没有Magic字段,则按照普通的ICMP Echo报文进行处理即可。
本实施例中的用户输入命令尤其指用于故障诊断的诊断命令。在步骤110之前,信息获取方法还包括,接收用户输入的用户输入命令。
步骤120,将ICMP Echo报文发送给服务端;
步骤130,接收服务端发送的与ICMP Echo报文对应的ICMP Reply报文;
步骤140,解析ICMP Reply报文的数据区携带的针对用户输入命令的响应信息。
步骤140中,ICMP Reply报文为ICMP报文的一种。解析ICMP Reply报文的数据区携带的针对用户输入命令的响应信息包括:
检测ICMP Echo报文的Magic字段与ICMP Reply报文中的Magic字段是否匹配;
当检测结果为匹配时,根据ICMP Reply报文的长度字段,读取ICMPReply报文的信息承载字段中携带的响应信息。
当检测结果为不匹配时,将接收的ICMP Reply报文丢弃。
同样地,当用户接收到ICMP Reply报文时,通过ICMP Reply报文中的Magic字段,能够获知该ICMP Reply报文中携带有用户输入指令对应的响应信息,通过长度字段,使得服务端能够正确地解析ICMP Echo报文携带的用户输入指令对应的响应信息。
优选的,在步骤140之后,该信息获取方法还包括:
步骤150,将针对用户输入命令的响应信息展示给用户。
本发明实施例中,上述将ICMP Echo报文发送给服务端具体包括:
通过网络连接端口将ICMP Echo报文发送给服务端。
基于与上述方法实施例相同或相似的构思,本发明实施例还提供一种信息获取方法,参见图3,为本发明提出的信息获取方法的流程示意图,如图3所示,所述信息获取方法包括:
步骤210,接收客户端发送的ICMP Echo报文;
步骤220,解析ICMP Echo报文中携带的用户输入命令;
步骤220中,所述解析ICMP Echo报文中携带的用户输入命令具体包括:
检测ICMP Echo报文的Magic字段是否为指定的Magic字段;
当测ICMP Echo报文的Magic字段是指定的Magic字段时,根据ICMPEcho报文的长度字段,读取ICMP Echo报文的信息承载字段中携带的用户输入命令。
其中,在执行网关故障诊断之前,客户端可以和服务端事先约定一个指定的Magic字段,在客户端构造ICMP Echo报文时,将指定的Magic字段设置在ICMP Echo报文的Magic字段位置,在服务端接收到ICMP Echo报文时,通过判断ICMP Echo报文的Magic字段是否为指定的Magic字段,来判断是否需要解析数据区中的用户输入命令,如果没有Magic字段,则按照普通的ICMP Echo报文进行处理即可。
步骤230,对用户输入命令进行处理,并生成针对用户输入命令的响应信息;本步骤根据现有技术的处理方法对用户输入命令进行处理。
步骤240,构造ICMP Reply报文,将针对用户输入命令的响应信息设置在ICMP报文的数据区;
步骤240中,所述构造ICMP Reply报文,将针对用户输入命令的响应信息设置在ICMP报文的数据区具体包括:
设置ICMP Reply报文的报文类型标识和代码字段;
填充ICMP Reply报文的Magic字段;
计算响应信息的长度,将计算得到的长度填充到ICMP Reply报文的长度字段,
将响应信息填充到ICMP Reply报文的信息承载字段。
在图1B中,示例性的,对于用于实现诊断命令输出的ICMP Reply报文,信息承载字段中携带有诊断命令对应的响应信息。
其中,设置ICMP Reply报文的报文类型标识和代码字段具体为将报文类型标识和代码字段均设置为0。
步骤250,将ICMP Reply报文发送给客户端。
其中,通过网络连接端口将ICMP Reply报文发送给客户端。
下面,结合一个具体的示例进行说明。
网管设备的场景模拟系统在运行某些业务一段时间后,会出系统重启的情况,推测可能系统内存不足导致,因此开发人员希望了解网关设备中系统各个进程内存占用情况,可以由客户端通过本发明提供的信息获取方法来了解系统各个进程内存占用情况。诊断命令的约定为,用户输入PS,服务端回应当前系统进程列表以及状态。
参见图4A,为上述应用实例中根据ICMP Echo报文据构造的IP报文的结构示意图。如图4A所示,将ICMP Echo报文的报文类型标识和代码字段均设置为0,将Magic字段填充为33448899共两个字节,将ICMP Echo报文的长度字段设置为2共1个字节,将诊断命令ps填充到数据区的剩余部分,数据区剩余不足的补0,就完成了ICMP Echo报文的构造,然后根据ICMPEcho报文据构造IP报文,具体为将构造的ICMP Echo报文承载到IP报文的数据部分并发送。根据ICMP Echo报文据构造的IP报文的内容如图4A所示。其中,33448899即为指定的Magic字段,该数值为示例性说明,Magic字段也可以是其他的数值。
服务端收到ICMP Echo报文之后,解析并处理ICMP Echo报文,具体地,检查Magic字段是否为指定的Magic字段33448899,如果与指定的Magic字段不一致,则走协议栈正常ICMP流程,否则,对用户输入命令进行提取,根据命令长度字段,提取对应的用户输入命令,本示例中,长度字段为2,根据两个字节提取的用户输入命令为ps,然后,根据查询注册到系统的服务端命令处理函数,如果找到,直接调用命令处理函数(遍历内核进程表,记录每个任务的上下文信息,包含内存占用、进程标识符、名称等)对用户输入命令ps进行处理,将处理结果作为响应信息,然后,服务端构造ICMP Reply报文,其中,将ICMP Reply报文的Magic字段填充为指定的Magic字段33448899,计算命令执行结果长度,本示例中为512,并保存到长度字段,拷贝处理结果到ICMP数据区命令输出部分。构造的ICMP Reply报文内容如图4B所示,同样,将构造的ICMP Reply报文承载到IP报文的数据部分并发送。
客户端接收到服务端发送的ICMP Reply报文之后,检查Magic字段是否33448899,如果不一致,则丢弃,否则,提取ICMP Reply报文的长度字段,根据ICMP Reply报文的长度字段,读取ICMP Reply报文的信息承载字段中携带的响应信息,并格式化显示到命令行工具上供用户查看。用户分析PS命令输出的进程信息,查看各个进程vmsize,检查是否有异常数据值,即可大致分析出哪个进程执行不太正常。
本发明实施例提供的基于ICMP协议的信息获取方法实现简单,通过对命令的扩展可以更多的了解网关内部系统的运行情况,对于诊断网关设备的运行情况有很好的实用性。
基于与上述方法实施例相同或相似的构思,本发明实施例还提供一种客户端设备,设置在终端上,用于网关故障诊断,参见图5,为本发明实施例提出的客户端设备的结构示意图,如图5所示,该客户端设备包括:
第一构造单元11,用于构造ICMP Echo报文,将用户输入命令设置在ICMP Echo报文的数据区;
第一发送单元12,用于将ICMP Echo报文发送给服务端;
第一接收单元13,用于接收服务端发送的与所述ICMP Echo报文对应的ICMP Reply报文;
第一解析单元14,用于解析ICMP Reply报文的数据区携带的针对用户输入命令的响应信息。
本发明实施例中,所述客户端设备还包括:
展示单元15,用于将所述针对用户输入命令的响应信息展示给用户。
本发明实施例中,所述ICMP Echo报文和ICMP Reply报文均为ICMP报文;ICMP报文包括报文头部和数据区,其中,报文头部包括报文类型标识和代码字段;数据区包括:Magic字段、长度字段和信息承载字段;
第一构造单元11具体用于:
设置ICMP Echo报文的报文类型标识和代码字段;
填充ICMP Echo报文的Magic字段;
计算用户输入命令的长度,将计算得到的长度填充到ICMP Echo报文的长度字段,
将用户输入命令填充到ICMP Echo报文的信息承载字段。
本发明实施例中,所述第一解析单元14具体包括:
第一检测模块141,用于检测ICMP Echo报文的Magic字段与ICMPReply报文中的Magic字段是否匹配;
第一读取模块142,用于当检测结果为匹配时,根据ICMP Reply报文的长度字段,读取ICMP Reply报文的信息承载字段中携带的响应信息。
本发明实施例中,所述第一发送单元12具体用于:通过网络连接端口将ICMP Echo报文发送给服务端。
基于与上述方法实施例相同或相似的构思,本发明实施例还提供一种服务端设备,设置在网关设备上,用于网关故障诊断,参见图6,为本发明实施例提出的服务端设备的结构示意图,如图6所示,该服务端设备包括:
第二接收单元21,用于接收客户端发送的ICMP Echo报文;
第二解析单元22,用于解析ICMP Echo报文中携带的用户输入命令;
处理单元23,用于对用户输入命令进行处理,并生成针对用户输入命令的响应信息;
第二构造单元24,用于构造ICMP Reply报文,将针对用户输入命令的响应信息设置在ICMP报文的数据区;
第二发送单元25,用于将ICMP Reply报文发送给客户端。
本发明实施例中,所述第二解析单元22具体包括:
第二检测模块221,用于检测ICMP Echo报文的Magic字段是否为指定的Magic字段;
第二读取模块222,用于当测ICMP Echo报文的Magic字段是指定的Magic字段时,根据ICMP Echo报文的长度字段,读取ICMP Echo报文的信息承载字段中携带的用户输入命令;
所述第二构造单元24具体用于:
设置ICMP Reply报文的报文类型标识和代码字段;
填充ICMP Reply报文的Magic字段;
计算响应信息的长度,将计算得到的长度填充到ICMP Reply报文的长度字段,
将响应信息填充到ICMP Reply报文的信息承载字段。
其中,第二发送单元25具体用于通过网络连接端口将ICMP Reply报文发送给客户端。
需要说明的是,以上所述的实施例仅是为了便于本领域的技术人员理解而已,并不用于限制本发明的保护范围,在不脱离本发明的发明构思的前提下,本领域技术人员对本发明所做出的任何显而易见的替换和改进等均在本发明的保护范围之内。

Claims (14)

1.一种信息获取方法,其特征在于,所述方法包括:
构造ICMP Echo报文,将用户输入命令设置在ICMP Echo报文的数据区;
将ICMP Echo报文发送给服务端;
接收服务端发送的与所述ICMP Echo报文对应的ICMP Reply报文;
解析ICMP Reply报文的数据区携带的针对用户输入命令的响应信息。
2.根据权利要求1所述的信息获取方法,其特征在于,在所述解析ICMPReply报文的数据区携带的针对用户输入命令的响应信息之后,所述信息获取方法还包括:
将所述针对用户输入命令的响应信息展示给用户。
3.根据权利要求1所述的信息获取方法,其特征在于,所述ICMP Echo报文和ICMP Reply报文均为ICMP报文;ICMP报文包括报文头部和数据区,其中,报文头部包括报文类型标识和代码字段;数据区包括:Magic字段、长度字段和信息承载字段;
所述构造ICMP Echo报文,将用户输入命令设置到ICMP Echo报文的数据区具体包括:
设置ICMP Echo报文的报文类型标识和代码字段;
填充ICMP Echo报文的Magic字段;
计算用户输入命令的长度,将计算得到的长度填充到ICMP Echo报文的长度字段,
将用户输入命令填充到ICMP Echo报文的信息承载字段。
4.根据权利要求3所述的信息获取方法,其特征在于,
所述解析ICMP Reply报文的数据区携带的针对用户输入命令的响应信息包括:
检测ICMP Echo报文的Magic字段与ICMP Reply报文中的Magic字段是否匹配;
当检测结果为匹配时,根据ICMP Reply报文的长度字段,读取ICMPReply报文的信息承载字段中携带的响应信息。
5.根据权利要求1所述的信息获取方法,其特征在于,所述将ICMP Echo报文发送给服务端具体包括:
通过网络连接端口将ICMP Echo报文发送给服务端。
6.一种信息获取方法,其特征在于,所述方法包括:
接收客户端发送的ICMP Echo报文;
解析ICMP Echo报文中携带的用户输入命令;
对用户输入命令进行处理,并生成针对用户输入命令的响应信息;
构造ICMP Reply报文,将针对用户输入命令的响应信息设置在ICMP报文的数据区;
将ICMP Reply报文发送给客户端。
7.根据权利要求6所述的信息获取方法,其特征在于,所述解析ICMPEcho报文中携带的用户输入命令具体包括:
检测ICMP Echo报文的Magic字段是否为指定的Magic字段;
当测ICMP Echo报文的Magic字段是指定的Magic字段时,根据ICMPEcho报文的长度字段,读取ICMP Echo报文的信息承载字段中携带的用户输入命令;
所述构造ICMP Reply报文,将针对用户输入命令的响应信息设置在ICMP报文的数据区具体包括:
设置ICMP Reply报文的报文类型标识和代码字段;
填充ICMP Reply报文的Magic字段;
计算响应信息的长度,将计算得到的长度填充到ICMP Reply报文的长度字段,
将响应信息填充到ICMP Reply报文的信息承载字段。
8.一种客户端设备,设置在终端上,其特征在于,所述客户端设备包括:
第一构造单元,用于构造ICMP Echo报文,将用户输入命令设置在ICMPEcho报文的数据区;
第一发送单元,用于将ICMP Echo报文发送给服务端;
第一接收单元,用于接收服务端发送的与所述ICMP Echo报文对应的ICMP Reply报文;
第一解析单元,用于解析ICMP Reply报文的数据区携带的针对用户输入命令的响应信息。
9.根据权利要求8所述的客户端设备,其特征在于,还包括:
展示单元,用于将所述针对用户输入命令的响应信息展示给用户。
10.根据权利要求8所述的客户端设备,其特征在于,所述ICMP Echo报文和ICMP Reply报文均为ICMP报文;ICMP报文包括报文头部和数据区,其中,报文头部包括报文类型标识和代码字段;数据区包括:Magic字段、长度字段和信息承载字段;
所述第一构造单元具体用于:
设置ICMP Echo报文的报文类型标识和代码字段;
填充ICMP Echo报文的Magic字段;
计算用户输入命令的长度,将计算得到的长度填充到ICMP Echo报文的长度字段,
将用户输入命令填充到ICMP Echo报文的信息承载字段。
11.根据权利要求10所述的客户端设备,其特征在于,
所述第一解析单元具体包括:
第一检测模块,用于检测ICMP Echo报文的Magic字段与ICMP Reply报文中的Magic字段是否匹配;
第一读取模块,用于当检测结果为匹配时,根据ICMP Reply报文的长度字段,读取ICMP Reply报文的信息承载字段中携带的响应信息。
12.根据权利要求8所述的客户端设备,其特征在于,所述第一发送单元具体用于:通过网络连接端口将ICMP Echo报文发送给服务端。
13.一种服务端设备,设置在网关设备上,其特征在于,所述服务端设备包括:
第二接收单元,用于接收客户端发送的ICMP Echo报文;
第二解析单元,用于解析ICMP Echo报文中携带的用户输入命令;
处理单元,用于对用户输入命令进行处理,并生成针对用户输入命令的响应信息;
第二构造单元,用于构造ICMP Reply报文,将针对用户输入命令的响应信息设置在ICMP报文的数据区;
第二发送单元,用于将ICMP Reply报文发送给客户端。
14.根据权利要求13所述的服务端设备,其特征在于,所述第二解析单元具体包括:
第二检测模块,用于检测ICMP Echo报文的Magic字段是否为指定的Magic字段;
第二读取模块,用于当测ICMP Echo报文的Magic字段是指定的Magic字段时,根据ICMP Echo报文的长度字段,读取ICMP Echo报文的信息承载字段中携带的用户输入命令;
所述第二构造单元具体用于:
设置ICMP Reply报文的报文类型标识和代码字段;
填充ICMP Reply报文的Magic字段;
计算响应信息的长度,将计算得到的长度填充到ICMP Reply报文的长度字段,
将响应信息填充到ICMP Reply报文的信息承载字段。
CN201510341069.5A 2015-06-18 2015-06-18 信息获取方法、客户端设备和服务端设备 Active CN106330483B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201510341069.5A CN106330483B (zh) 2015-06-18 2015-06-18 信息获取方法、客户端设备和服务端设备
PCT/CN2016/079062 WO2016202066A1 (zh) 2015-06-18 2016-04-12 信息获取方法、客户端设备和服务端设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510341069.5A CN106330483B (zh) 2015-06-18 2015-06-18 信息获取方法、客户端设备和服务端设备

Publications (2)

Publication Number Publication Date
CN106330483A true CN106330483A (zh) 2017-01-11
CN106330483B CN106330483B (zh) 2021-04-06

Family

ID=57544824

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510341069.5A Active CN106330483B (zh) 2015-06-18 2015-06-18 信息获取方法、客户端设备和服务端设备

Country Status (2)

Country Link
CN (1) CN106330483B (zh)
WO (1) WO2016202066A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107547505A (zh) * 2017-06-21 2018-01-05 新华三技术有限公司 一种报文处理方法及装置
CN110061926A (zh) * 2019-04-26 2019-07-26 武汉思创易控科技有限公司 一种多路复用的ping方法、存储介质、终端和服务器
CN112491554A (zh) * 2020-11-19 2021-03-12 北京天融信网络安全技术有限公司 一种信息隐藏方法、装置,ip主机以及网络节点
CN112714200A (zh) * 2019-10-24 2021-04-27 中国移动通信有限公司研究院 一种设备定位、设备显示位置的方法、设备及介质

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110414651B (zh) * 2019-07-03 2023-01-17 创新先进技术有限公司 调试智能卡的方法及装置
CN113364793A (zh) * 2021-06-17 2021-09-07 北京天融信网络安全技术有限公司 一种icmp隐蔽隧道检测方法、装置及存储介质
US11824753B2 (en) 2021-09-05 2023-11-21 Cisco Technology, Inc. Network node-to-node connectivity verification including data path processing of packets within a packet switching device

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5872847A (en) * 1996-07-30 1999-02-16 Itt Industries, Inc. Using trusted associations to establish trust in a computer network
CN1716882A (zh) * 2004-06-28 2006-01-04 华为技术有限公司 一种基于rfn时间戳进行时延测试的方法
CN1794718A (zh) * 2005-12-31 2006-06-28 西安交大捷普网络科技有限公司 一种网络安全设备联动协议
CN103840976A (zh) * 2014-02-28 2014-06-04 华为技术有限公司 通信方法、光模块和网络设备

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104038553B (zh) * 2010-09-21 2018-10-30 华为终端有限公司 一种控制方法、装置和系统
CN103237071B (zh) * 2013-04-19 2016-04-13 江苏亿通高科技股份有限公司 一种无线EoC终端集中管理的方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5872847A (en) * 1996-07-30 1999-02-16 Itt Industries, Inc. Using trusted associations to establish trust in a computer network
CN1716882A (zh) * 2004-06-28 2006-01-04 华为技术有限公司 一种基于rfn时间戳进行时延测试的方法
CN1794718A (zh) * 2005-12-31 2006-06-28 西安交大捷普网络科技有限公司 一种网络安全设备联动协议
CN103840976A (zh) * 2014-02-28 2014-06-04 华为技术有限公司 通信方法、光模块和网络设备

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107547505A (zh) * 2017-06-21 2018-01-05 新华三技术有限公司 一种报文处理方法及装置
CN107547505B (zh) * 2017-06-21 2020-04-03 新华三技术有限公司 一种报文处理方法及装置
CN110061926A (zh) * 2019-04-26 2019-07-26 武汉思创易控科技有限公司 一种多路复用的ping方法、存储介质、终端和服务器
CN112714200A (zh) * 2019-10-24 2021-04-27 中国移动通信有限公司研究院 一种设备定位、设备显示位置的方法、设备及介质
CN112491554A (zh) * 2020-11-19 2021-03-12 北京天融信网络安全技术有限公司 一种信息隐藏方法、装置,ip主机以及网络节点
CN112491554B (zh) * 2020-11-19 2023-05-02 北京天融信网络安全技术有限公司 一种信息隐藏方法、装置,ip主机以及网络节点

Also Published As

Publication number Publication date
CN106330483B (zh) 2021-04-06
WO2016202066A1 (zh) 2016-12-22

Similar Documents

Publication Publication Date Title
CN106330483A (zh) 信息获取方法、客户端设备和服务端设备
CN102546266B (zh) 一种网络故障的诊断方法及平台
CN102594914B (zh) 一种基于云平台的远程调试方法
CN103138988B (zh) 网络故障的定位处理方法及装置
CN104579822A (zh) 基于Http协议的移动应用自动化性能测试系统及方法
WO2010060311A1 (zh) 可视化业务流程跟踪方法和系统、业务流程处理系统
CN101447898A (zh) 一种用于网络安全产品的测试系统及测试方法
US20040066747A1 (en) Methods and structure for automated troubleshooting of a virtual private network connection
CN102023922A (zh) 汽车电子诊断软件的测试系统及方法
CN104796298A (zh) 一种sdn网络故障分析的方法及装置
CN106209503A (zh) Rpc接口测试方法及系统
CN104796240A (zh) 一种有状态网络协议的模糊测试系统
CN103023708A (zh) 通信协议接口的测试方法及系统
US20230239375A1 (en) Deriving proxy stability without network inspection
CN108076017A (zh) 一种数据包的协议解析方法及装置
CN102833118B (zh) 远程维护系统及方法
CN101964923A (zh) 交互式命令的配置系统及方法
Wong et al. Smart debugging software architectural design in SDL
CN110532162A (zh) 一种基于协议状态机的模糊测试脚本及测试引擎
KR20120071175A (ko) 웹 플랫폼이 탑재된 이동통신 단말기와 이를 이용한 로그 정보 제공 방법 및 웹 플랫폼에 대한 검증 시스템과 이를 이용한 검증 방법
CN111147285B (zh) 一种云安全产品统一管理方法
KR20130063866A (ko) 엠투엠 단말기 진단시스템 및 방법
CN103297480A (zh) 一种应用服务自动检测系统和方法
CN113347060B (zh) 基于流程自动化的电力网络故障检测方法、装置和系统
CN106341342A (zh) 维持通信连接的方法、装置、终端及服务器

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