[发明专利]一种基于数据链路层的通讯方法有效
申请号: | 201711326024.6 | 申请日: | 2017-12-13 |
公开(公告)号: | CN108055323B | 公开(公告)日: | 2020-11-20 |
发明(设计)人: | 王召;郭欧杰;许元元;冯勋亮;王冬 | 申请(专利权)人: | 中核控制系统工程有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08;H04L1/18 |
代理公司: | 核工业专利中心 11007 | 代理人: | 张雅丁 |
地址: | 100176 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 数据链 通讯 方法 | ||
1.一种基于数据链路层的通讯方法,其特征在于:
通过本通讯方法实现安全功能的网络访问,调用硬件的收、发驱动,为上层提供应用级的收发接口、完整的发送和接收服务、有效的接收信息;具体包括以下两方面的设计:
(1)确定发送函数流程
发送函数不仅发送数据,内部还接收数据,由参数recvpkt返回接收到的数据包;连续发送同一数据包15次,并启动计时器,超过一定时间未收到数据,就重新发送该数据包15次,重复该发送步骤,1秒内仍未收到数据,则返回接收数据超时错误;
如果收到数据,则将收到的数据包的帧序号与刚发送的数据包的帧序号进行比较,若相等,则将数据经recvpkt参数传递给上层函数,若不相等则重复发送步骤,1秒内仍未接收到正确数据,则返回未收到正确数据的错误;发送成功一个数据包就将帧序号加1,其步骤如下:
第1.1步,上层程序调用通讯接口开始;
第1.2步,为传来的数据包头部添加mac地址,并进入下一步;
第1.3步,判断发送次数是否超限,如果没有超过发送次数,则进入第1.4步,否则,返回错误信息,发送结束;
第1.4步,连续发送数据并等待接收,并进入下一步;
第1.5步,如果接收数据超时,则进入第1.6步,否则进行第1.7步;
第1.6步,等待设定的时间,并将发送次数加1,进入第1.3步;
第1.7步,比较发送和接收的帧序号,并进入下一步;
第1.8步,判断帧序号是否相等,如果帧序号相等,进入第1.9步,否则进入第1.6步;
第1.9步,返回接收到的数据,发送数据成功,发送结束;
(2)确定接收函数流程
当上层应用程序被动接收数据时调用该函数,在此之前首先调用查询函数查询控制器工作模式,确定是运行模式时,调用接收函数;
接收函数创建一个接收线程,等待接收控制器发来的数据;该线程一直扫描网卡上的缓冲区,如果是控制器发来的数据就取出该部分数据放入到一块共享数据区;
上层函数每间隔设定时间读一次该共享数据区,接收线程每间隔设定时间写一次该共享数据区;
接收数据线程的步骤如下:
第2.1步,上层程序调用通讯接口开始;
第2.2步,创建接收线程,并进入下一步;
第2.3步,判断创建接收线程是否成功,如果失败,则返回创建失败错误信息,并结束程序,否则进入第2.4步;
第2.4步,创建程序处理其他任务;
接收函数接收数据步骤如下:
第3.1步,创建程序创建接收线程开始;
第3.2步,判断接收网卡数据是否成功,如果失败,则返回错误信息,线程结束,否则,进入第3.3步;
第3.3步,扫描从控制器接收到的数据,并进入下一步;
第3.4步,判断是否找到目的数据,如果未找到,则进行第3.5步,否则进入第3.6步;
第3.5步,等待设定时间,进入第3.2步;
第3.6步,将目的数据写入缓冲区相应位置,并进入下一步;
第3.7步,判断写入是否成功,如果写入失败,则返回错误信息,线程结束,否则,进入第3.5步。
2.如权利要求1所述的一种基于数据链路层的通讯方法,其特征在于:信息分组和拼接提供无差别传输的接口。
3.如权利要求1所述的一种基于数据链路层的通讯方法,其特征在于:网络的发送方和接收方使用同步通信方式,采用一问一答的形式;发送方在首次发送某帧以后,接收方收到后回复一帧,当发送方在规定时间内没有收到回复帧或收到的回复帧未通过校验的情况下,进行第二次发送;以此类推,若连续发送设定次数后都没有收到回复帧,则认为该帧发送失败。
4.如权利要求1所述的一种基于数据链路层的通讯方法,其特征在于:上层应用程序进行分包,发送函数不再分包。
5.如权利要求1所述的一种基于数据链路层的通讯方法,其特征在于:信息分组和拼接提供无差别传输的接口;网络的发送方和接收方使用同步通信方式,采用一问一答的形式;发送方在首次发送某帧以后,接收方收到后回复一帧,当发送方在规定时间内没有收到回复帧或收到的回复帧未通过校验的情况下,进行第二次发送;以此类推,若连续发送设定次数后都没有收到回复帧,则认为该帧发送失败;上层应用程序进行分包,发送函数不再分包。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中核控制系统工程有限公司,未经中核控制系统工程有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711326024.6/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种神经剪
- 下一篇:动态播放电视节目的方法、智能电视及存储介质