[发明专利]一种基于ICMP协议的网络连通性能判断方法在审
申请号: | 202111121158.0 | 申请日: | 2021-09-24 |
公开(公告)号: | CN113890838A | 公开(公告)日: | 2022-01-04 |
发明(设计)人: | 王雨龙 | 申请(专利权)人: | 天津津航计算技术研究所 |
主分类号: | H04L43/0811 | 分类号: | H04L43/0811;H04L69/22;H04L43/50 |
代理公司: | 中国兵器工业集团公司专利中心 11011 | 代理人: | 刘二格 |
地址: | 300308 天津*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 icmp 协议 网络 连通 性能 判断 方法 | ||
本发明公开了一种基于ICMP协议的网络连通判断方法,其包括以下步骤:S1:设计一个ICMP报文头结构体struct ICMP_Header;S2:定义使用的变量以及缓冲区;S3:建立网络连接套接字;S4:设置ICMP报文发送的目的信息;S5:定义一个ICMP协议包头指针pICMP,对该指针所指的各个成员进行赋值;S6:使用网络数据发送函数sendto发送ICMP数据;S7:在while中循环等待接收ICMP消息,使用网络数据阻塞接收函数recv()接收数据;S8:对接收到的ICMP数据进行解析。本发明通过构建ICMP报文,将网络联通检测程序加载到,检测网络连通状况,可以进行网络连通性的自动化测试。
技术领域
本发明属于计算机控制技术领域,涉及一种基于ICMP协议的网络连通性能判断方法。
背景技术
ICMP是以太网控制消息协议报文,他是TCP/IP协议族的一个子协议。用在IP主机、路由器之间传递网络连通性、主机可到达性、路由可用性等这些控制消息。控制消息并不传输用户数据,但是对于用户数据传递起着重要作用。
以太网通信方式属于工业中常用总线通讯方式,在系统硬件部署初始阶段,通常需要使用测试程序测量网络的连通性能,网络的连通性能包括网络的通断以及对于接通网络的延迟。传统上测量网络连通性能的方法采用两种方式,第一种方法是系统中具有人机交互操作系统的设备,需要启动系统后通过图形化界面人工进行ping操作,ping操作可以在人机界面上显示出网络是否接通以及接通后的网络延迟时间,但是这种测试方法通常需要搭建测试环境,接入显示设备与输入设备。第二种方法对于不具有人机交互的操作系统,通常开发一个套接字程序并通过套接字发送一包UDP报文,进行报文回环操作,在报文发送和接收时刻分别记录时间,来测试网络的连通与延迟时间这种测试方法在传输层进行测试,并不具有网络测试的普适性。
发明内容
(一)发明目的
本发明的目的是:提供一种基于ICMP协议的网络连通性能判断方法,能够实现测试简单,具有网络测试的普适性。
(二)技术方案
为了解决上述技术问题,本发明提供一种基于ICMP协议的网络连通性能判断方法,过程如下:
设计一个ICMP报文结构体,结构体中包括①ICMP报文消息类型icmp_type。②CMP报文消息代码icmp_code。③ICMP报文校验和icmp_checksum。④ICMP报文请求ID号icmp_id。⑤ICMP报文序列号icmp_sequence,定义源节点地址以及端口号,目的节点地址以及端口号。
定义需要使用的套接字变量以及超时变量,定义32个字节的字符数组,定义ICMP数据缓冲区DataBuf,长度为S1中结构体的长度加上32的值。
使用系统套接字创建函数socket()创建一个套接字。协议类型设置为ICMP报文类型,使用系统套接字设置函数setsockopt()设置网络数据接收超时时间,时间为nTimeout
设置ICMP报文发送的目的信息。定义套接字地址类型变量。设置协议族成员为地址族。将IP地址成员设置为目标地址。将端口号设置为目标端口号。定义套接字地址类型变量以及长度变量。
定义一个ICMP协议包头指针pICMP,对该指针所指的各个成员进行赋值①消息类型icmp_type②消息代码icmp_code③校验和icmp_checksum④序列号icmp_sequence。将当前时间值存储在TrueData数组中。将数组中的值拷贝到ICMP报文缓冲区中国,并计算校验和赋值到pICMP中的校验和成员icmp_checksum。
使用sendto函数发送ICMP数据。套接字口的描述字设置为S。待发送数据缓冲区DataBuf。ICMP报文发送出去后,启动定时器,设置为CNT,定时器每启动一次进行减一操作,转到S7
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天津津航计算技术研究所,未经天津津航计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111121158.0/2.html,转载请声明来源钻瓜专利网。