CN115022384B - 一种hsms通信连接方法和装置 - Google Patents
一种hsms通信连接方法和装置 Download PDFInfo
- Publication number
- CN115022384B CN115022384B CN202210481148.6A CN202210481148A CN115022384B CN 115022384 B CN115022384 B CN 115022384B CN 202210481148 A CN202210481148 A CN 202210481148A CN 115022384 B CN115022384 B CN 115022384B
- Authority
- CN
- China
- Prior art keywords
- connection
- tcp
- client
- state
- server
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/143—Termination or inactivation of sessions, e.g. event-controlled end of session
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
- H04L69/162—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Communication Control (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明实施例提供了一种HSMS通信连接方法和装置,应用于服务端,所述方法包括:在HSMS通信的主动模式下与客户端建立TCP/IP连接,将HSMS通信状态由未连接状态切换为连接状态中的未被选择状态;向客户端发送选择请求消息;若在第一预设时间内接收到客户端返回的选择请求响应消息,则将HSMS通信状态切换为连接状态中的被选择状态,HSMS通信连接建立;若未接收到客户端返回的选择请求响应消息,则向客户端发送第一连接异常消息,以使客户端在接收到第一连接异常消息后对TCP/IP连接进行检测,并在检测到TCP/IP连接异常时,切断TCP/IP连接并重新建立TCP/IP连接。本发明实施例由客户端检测TCP/IP连接是否异常来确定是否切断连接并进行重连,从而减少由于定时器异常造成HSMS断连的问题。
Description
技术领域
本发明涉及通信技术领域,特别是涉及一种HSMS通信连接方法和一种HSMS通信连接装置。
背景技术
HSMS(High-speed SECS Message Service,高速SECS消息通信服务,SECS(SEMIEquipment Communication standard,SEMI(Semiconductor Equipment and MaterialsInstitute,国际半导体产业协会)制定的半导体设备通讯标准接口))定义了使用TCP/IP(Transmission Control Protocol/Internet Protocol,传输控制协议/网际协议)作为物理传输媒介时的通信接口,在半导体制造厂中,HSMS可以用于工厂端与客户端之间的通信,HSMS使用TCP/IP流支持,可以提供连续字节流的可靠的双向同步传输。
在建立HSMS连接的过程中,当用于切换HSMS通信状态的请求消息在定时时间内没有回复时,会切断HSMS连接。然而,当定时器异常时,会出现HSMS连接正常、但定时时间异常而导致HSMS连接被切断的问题。
发明内容
鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种HSMS通信连接方法和一种HSMS通信连接装置。
为了解决上述问题,本发明实施例公开了一种HSMS通信连接方法,应用于服务端,所述方法包括:
在HSMS通信的主动模式下与客户端建立TCP/IP连接;
将HSMS通信状态由未连接状态切换为连接状态中的未被选择状态;
向所述客户端发送选择请求消息;
若在第一预设时间内接收到所述客户端返回的选择请求响应消息,则将所述HSMS通信状态由所述连接状态中的所述未被选择状态切换为所述连接状态中的被选择状态,所述HSMS通信连接建立;
若在所述第一预设时间内未接收到所述客户端返回的选择请求响应消息,则向所述客户端发送第一连接异常消息,以使所述客户端在接收到所述第一连接异常消息后对所述TCP/IP连接进行检测,并在检测到所述TCP/IP连接异常时,切断所述TCP/IP连接并重新建立TCP/IP连接。
可选地,所述向所述客户端发送选择请求消息之后,所述方法还包括:
启动会话定时器;
基于所述会话定时器的计时,判断是否在所述第一预设时间内接收到所述客户端返回的所述选择请求响应消息;
在所述将所述HSMS通信状态由所述连接状态中的所述未被选择状态切换为所述连接状态中的被选择状态之前,所述方法还包括:
关闭所述会话定时器。
可选地,在所述将所述HSMS通信状态由所述连接状态中的所述未被选择状态切换为所述连接状态中的被选择状态之后,所述方法还包括:
向所述客户端发送心跳测试请求消息;
若在所述第一预设时间内未接收到所述客户端返回的心跳测试响应消息,则向所述客户端发送第二连接异常消息,以使所述客户端在接收到所述第二连接异常消息后对所述TCP/IP连接进行检测,当检测到所述TCP/IP连接异常时,切断所述TCP/IP连接并重新建立TCP/IP连接。
可选地,所述在HSMS通信的主动模式下与客户端建立TCP/IP连接包括:
配置所述服务端的连接模式为所述HSMS通信的主动模式;
创建服务端TCP/IP连接套接字;
通过所述服务端TCP/IP连接套接字向所述客户端发送TCP/IP连接建立请求;
接收到所述客户端返回的连接响应消息,与所述客户端建立所述TCP/IP连接。
本发明实施例还公开了另一种HSMS通信连接方法,应用于客户端,所述方法包括:
在HSMS通信的被动模式下与服务端建立TCP/IP连接;
将HSMS通信状态由未连接状态切换为连接状态中的未被选择状态;
若在第二预设时间内接收到所述服务端发送的选择请求消息,则返回选择请求响应消息,并将所述HSMS通信状态由所述连接状态中的所述未被选择状态切换为所述连接状态中的被选择状态,所述HSMS通信连接建立;
若在所述第二预设时间内未接收到所述服务端发送的选择请求消息,则切断所述TCP/IP连接并重新建立TCP/IP连接;
若在所述第二预设时间内接收到所述服务端发送的第一连接异常消息,则对所述TCP/IP连接进行检测,并在检测到所述TCP/IP连接异常时,切断所述TCP/IP连接并重新建立TCP/IP连接。
可选地,所述切断所述TCP/IP连接并重新建立TCP/IP连接,包括:
切断所述TCP/IP连接;
清除接收缓存区中在建立TCP/IP连接时接收的数据;
向所述服务端发起TCP/IP连接套接字创建请求,以使所述服务端再次创建服务端TCP/IP连接套接字,并在HSMS通信的主动模式下再次向所述客户端发送TCP/IP连接建立请求。
可选地,在所述将HSMS通信状态由未连接状态切换为连接状态中的未被选择状态之后,所述方法还包括:
启动连接定时器;
基于所述连接定时器的计时,判断是否在所述第二预设时间内接收到所述服务端发送的所述选择请求消息或所述第一连接异常消息;
在所述返回选择请求响应消息之后,所述方法还包括:
关闭所述连接定时器。
可选地,在所述将所述HSMS通信状态由所述连接状态中的所述未被选择状态切换为所述连接状态中的被选择状态之后,所述方法还包括:
若接收到所述服务器发送的第二连接异常消息,则对所述TCP/IP连接进行检测,并在检测到所述TCP/IP连接异常时,切断所述TCP/IP连接并重新建立TCP/IP连接。
可选地,所述在HSMS通信的被动模式下与服务端建立TCP/IP连接,包括:
配置所述客户端的连接模式为所述HSMS通信的被动模式;
创建客户端TCP/IP连接套接字;
通过所述客户端TCP/IP连接套接字开启监听服务的端口以等待所述服务端连接;
接收到所述服务端发送的TCP/IP连接建立请求,发送连接响应消息至所述服务端,以与所述服务端建立TCP/IP连接。
本发明实施例还公开了一种HSMS通信连接装置,应用于服务端,所述装置包括:
主动模式模块,用于在HSMS通信的主动模式下与客户端建立TCP/IP连接;
状态切换模块,用于将HSMS通信状态由未连接状态切换为连接状态中的未被选择状态;
请求消息发送模块,用于向所述客户端发送选择请求消息;
连接模块,用于若在第一预设时间内接收到所述客户端返回的选择请求响应消息,则将所述HSMS通信状态由所述连接状态中的所述未被选择状态切换为所述连接状态中的被选择状态,所述HSMS通信连接建立;
异常消息发送模块,用于若在所述第一预设时间内未接收到所述客户端返回的选择请求响应消息,则向所述客户端发送第一连接异常消息,以使所述客户端在接收到所述第一连接异常消息后对所述TCP/IP连接进行检测,并在检测到所述TCP/IP连接异常时,切断所述TCP/IP连接并重新建立TCP/IP连接。
可选地,所述装置还包括:
会话定时器启动模块,用于启动会话定时器;
响应消息判断模块,用于基于所述会话定时器的计时,判断是否在所述第一预设时间内接收到所述客户端返回的所述选择请求响应消息;
所述装置还包括:
会话定时器关闭模块,用于关闭所述会话定时器。
可选地,所述装置还包括:
心跳测试请求发送模块,用于向所述客户端发送心跳测试请求消息;
第二连接异常消息发送模块,用于若在所述第一预设时间内未接收到所述客户端返回的心跳测试响应消息,则向所述客户端发送第二连接异常消息,以使所述客户端在接收到所述第二连接异常消息后对所述TCP/IP连接进行检测,当检测到所述TCP/IP连接异常时,切断所述TCP/IP连接并重新建立TCP/IP连接。
可选地,所述主动模式模块包括:
主动模式配置子模块,用于配置所述服务端的连接模式为所述HSMS通信的主动模式;
服务端套接字创建子模块,用于创建服务端TCP/IP连接套接字;
连接建立请求发送子模块,用于通过所述服务端TCP/IP连接套接字向所述客户端发送TCP/IP连接建立请求;
连接建立子模块,用于接收到所述客户端返回的连接响应消息,与所述客户端建立所述TCP/IP连接。
本发明实施例还公开了另一种HSMS通信连接装置,应用于客户端,所述装置包括:
被动模式模块,用于在HSMS通信的被动模式下与服务端建立TCP/IP连接;
通信状态切换模块,用于将HSMS通信状态由未连接状态切换为连接状态中的未被选择状态;
响应消息返回模块,用于若在第二预设时间内接收到所述服务端发送的选择请求消息,则返回选择请求响应消息,并将所述HSMS通信状态由所述连接状态中的所述未被选择状态切换为所述连接状态中的被选择状态,所述HSMS通信连接建立;
重连模块,用于若在所述第二预设时间内未接收到所述服务端发送的选择请求消息,则切断所述TCP/IP连接并重新建立TCP/IP连接。
可选地,所述重连模块,包括:
连接切断子模块,用于切断所述TCP/IP连接;
数据清除子模块,用于清除接收缓存区中在建立TCP/IP连接时接收的数据;
套接字创建请求发送子模块,用于向所述服务端发起TCP/IP连接套接字创建请求,以使所述服务端再次创建服务端TCP/IP连接套接字,并在HSMS通信的主动模式下再次向所述客户端发送TCP/IP连接建立请求。
可选地,所述装置还包括:
连接定时器启动模块,用于启动连接定时器;
消息接收判断模块,用于基于所述连接定时器的计时,判断是否在所述第二预设时间内接收到所述服务端发送的所述选择请求消息或所述第一连接异常消息;
所述装置还包括:
连接定时器关闭模块,用于关闭所述连接定时器。
可选地,所述装置还包括:
连接异常检测模块,用于若接收到所述服务器发送的第二连接异常消息,则对所述TCP/IP连接进行检测,并在检测到所述TCP/IP连接异常时,切断所述TCP/IP连接并重新建立TCP/IP连接。
可选地,所述被动模式模块,包括:
被动模式配置子模块,用于配置所述客户端的连接模式为所述HSMS通信的被动模式;
客户端套接字创建子模块,用于创建客户端TCP/IP连接套接字;
等待连接子模块,用于通过所述客户端TCP/IP连接套接字开启监听服务的端口以等待所述服务端连接;
连接建立请求接收子模块,用于接收到所述服务端发送的TCP/IP连接建立请求,发送连接响应消息至所述服务端,以与所述服务端建立TCP/IP连接。
本发明实施例包括以下优点:
在本发明实施例中,服务端在预设时间内未接收到客户端返回的选择响应消息时,不会直接切断TCP/IP连接,而是通过向客户端发送第一连接异常消息,由客户端自行检测TCP/IP连接是否出现异常,来确定是否需要切断连接并进行重连,从而避免HSMS连接正常、但由于定时时间异常造成HSMS连接被切断的问题,减少由于定时器异常造成HSMS断连的问题。
附图说明
图1是一种HSMS建立通信连接的流程图;
图2是本发明实施例提供的一种HSMS通信连接方法的步骤流程图;
图3是本发明实施例提供的一种HSMS状态机上的通信状态转换示意图;
图4是本发明实施例提供的另一种HSMS通信连接方法的步骤流程图;
图5是本发明实施例提供的另一种HSMS通信连接方法的步骤流程图;
图6是本发明实施例提供的一种HSMS通信连接装置的结构框图;
图7是本发明实施例提供的另一种HSMS通信连接装置的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
为了使本领域技术人员可以更清楚地了解本发明的技术方案,下面对HSMS建立通信连接的过程进行说明。参照图1所示,为一种HSMS建立通信连接的流程图。该流程可以包括:
(1)启动HSMS连接;
(2)判断TCP/IP网络连接套接字是否连接成功;
(3)若TCP/IP网络连接套接字连接成功,即服务端与客户端建立TCP/IP网络连接,此时HSMS状态机上的通信状态由未连接状态(NOT CONNECTED)转换为连接状态(CONNECTED)下的未被选择状态(NOT SELECTED);
(4)在服务端与客户端建立TCP/IP连接后,服务端可以向客户端发送select.req消息,并同时启动T6 TimerOut定时器;
(5)服务端判断是否接收到客户端返回的select.rsp消息;
(6)若未接收到客户端返回的select.rsp消息,则判断是否到达T6定时时间;
若到达T6定时时间,则服务端关闭TCP/IP套接字,此时服务端与客户端的TCP/IP连接断开,即HSMS断连;
若没有到达T6定时时间,则再次发起查询以判断是否接收到客户端返回的select.rsp消息;
(7)若接收到客户端返回的select.rsp消息,则关闭T6 TimerOut定时器,此时HSMS状态机上的通信状态切换为选择状态(SELECTED),并向客户端发送心跳测试linktest.req消息,同时启动T6 TimerOut定时器;
服务端判断是否接收到客户端返回的linktest.rsp消息,以判断心跳测试是否正常;
若服务端未接收到客户端返回的linktest.rsp消息,则判断是否到达T6定时时间;
若到达T6定时时间,则关闭TCP/IP网络连接套接字,此时服务端与客户端的TCP/IP连接断开,即HSMS断连;
若没有到达T6定时时间,则再次发起查询以判断是否接收到客户端返回的linktest.rsp消息;
若服务端接收到客户端返回的linktest.rsp消息,则心跳测试正常,HSMS连接成功。
由上述流程可知,在建立HSMS通信连接的过程中,当select.req消息没有回复时,就会由于到达T6定时时间而断开TCP/IP连接,从而断开HSMS连接。然而在定时器出现异常时,TCP/IP连接会被直接切断,此时会出现HSMS连接正常,但由于定时时间异常而导致HSMS连接被切断的问题。
本发明实施例的核心构思在于,在预设时间内未接收到客户端返回的选择请求响应消息时,不会直接切断TCP/IP连接,而是通过向客户端发送第一连接异常消息,由客户端自行检测TCP/IP连接是否出现异常,来确定是否需要切断连接并进行重连,从而避免HSMS连接正常、但由于定时时间异常造成HSMS连接被切断的问题,减少由于定时器异常造成HSMS断连的问题。
参照图2,示出了本发明实施例提供的一种HSMS通信连接方法的步骤流程图,该方法应用于服务端,具体可以包括如下步骤:
步骤201,在HSMS通信的主动模式下与客户端建立TCP/IP连接。
本发明实施例的HSMS通信连接方法可以应用于服务端与客户端之间建立通信连接的场景中。示例性地,在半导体工厂的生产制造场景中,该HSMS通信连接方法可以应用于工厂端与客户端之间建立通信连接。
HSMS通信具有主动(active)模式和被动(passive)模式两种连接模式,在主动模式下的通信实体可以主动向其他通信实体发起连接,在被动模式下的通信实体可以监听端口以等待其他通信实体发送的连接。在本发明实施例中,设置服务端的HSMS通信模式为主动模式,服务端可以在主动模式下主动向客户端发起TCP/IP连接。
步骤202,将HSMS通信状态由未连接状态切换为连接状态中的未被选择状态。
HSMS通信状态可以用于表示HSMS建立通信的连接状态,在本发明实施例中可以将HSMS通信状态由未连接状态切换为连接状态中的未被选择状态。
下面对HSMS的状态机作简单说明。参照图3所示,为一种HSMS状态机上的通信状态转换示意图,其中,NOT-CONNECTED表示未连接状态,CONNECTED表示连接状态,NOTSELECTED表示未被选择状态,SELECTED表示被选择状态,该状态机上的通信状态转换过程可以包括:
1、当TCP/IP初始化时,HSMS的状态机处于未连接状态。在该状态下可以进行建立TCP/IP连接的初始化操作,例如套接口的初始化、绑定套接口描述字和在固定端口侦听等。
2、当服务端与客户端建立TCP/IP网络连接后,HSMS的状态机从未连接态转换为连接状态下的未被选择状态。在该状态下,服务端与客户端之间建立连接,但服务端和客户端尚未正式确认连接成功建立。
3、当服务端与客户端之间断开连接时,HSMS的状态机从连接态转换为未连接态。
4、当服务端与客户端在定时时间内通讯完成控制消息的收发时,HSMS的状态机可以从连接状态下的未被选择状态转换为选择状态,此时服务端与客户端确认连接建立,HSMS通信连接正式建立成功。
5、在选择状态下,服务端与客户端可以进行数据交换操作,当服务端与客户端没有在定时时间内完成数据交换时,HSMS的状态机可以从选择状态转换为连接状态下的未被选择状态。
6、当服务端与客户端没有在定时时间内通讯完成控制消息的收发时,HSMS的状态机可以从连接状态下的未被选择状态转换为未连接状态,此时服务端与客户端断开连接。
步骤203,向客户端发送选择请求消息。
选择请求消息可以是用于请求将HSMS通信状态切换至选择状态的消息,在将HSMS通信状态由未连接状态切换为连接状态中的未被选择状态后,服务端可以向客户端发送选择请求消息。
在本发明实施例中,当服务端在HSMS通信的主动模式下与客户端建立TCP/IP连接,且将HSMS通信状态由未连接状态切换为连接状态中的未被选择状态后,可以向客户端发送选择请求消息,从而使得服务端只有在主动模式下才发送请求消息,避免由于服务端的连接模式混乱导致请求消息收发频繁的问题,从而减少消息的收发,清晰地进行消息的解析处理过程。
步骤204,若在第一预设时间内接收到客户端返回的选择请求响应消息,则将HSMS通信状态由连接状态中的未被选择状态切换为连接状态中的被选择状态,HSMS通信连接建立。
服务端向客户端发送选择请求消息后,若在预设时间内接收到客户端返回的选择请求响应消息,则表示客户端与服务端之间成功建立连接,此时可以将HSMS通信状态由连接状态中的未被选择状态切换为连接状态中的被选择状态,HSMS通信连接成功建立。
步骤205,若在第一预设时间内未接收到客户端返回的选择请求响应消息,则向客户端发送第一连接异常消息,以使客户端在接收到第一连接异常消息后对TCP/IP连接进行检测,并在检测到TCP/IP连接异常时,切断TCP/IP连接并重新建立TCP/IP连接。
第一连接异常消息可以为HSMS通信状态为未被选择态时用于表示TCP/IP连接异常的消息。若在预设时间内没有接收到客户端返回的选择请求响应消息,则服务端与客户端建立的TCP/IP连接存在异常,可以向客户端发送第一连接异常消息,以使客户端在接收到第一连接异常消息后,对TCP/IP网络连接是否出现异常进行检测,并且在检测到TCP/IP连接异常时,切断TCP/IP连接并重新建立TCP/IP连接。
在本发明实施例中,服务端在预设时间内未接收到客户端返回的选择响应消息时,不会直接切断TCP/IP连接,而是通过向客户端发送第一连接异常消息,由客户端自行检测TCP/IP连接是否出现异常,来确定是否需要切断连接并进行重连,从而避免HSMS连接正常、但由于定时时间异常造成HSMS连接被切断的问题,减少由于定时器异常造成HSMS断连的问题。
参照图4,示出了本发明实施例提供的另一种HSMS通信连接方法的步骤流程图,该方法应用于服务端,具体可以包括如下步骤:
步骤401,配置服务端的连接模式为HSMS通信的主动模式。
在本发明实施例中,可以在服务端预先配置好HSMS通信的连接模式,可以预先配置服务端HSMS通信的连接模式为主动模式。
步骤402,创建服务端TCP/IP连接套接字。
套接字可以是支持TCP/IP协议的路通信的基本操作单元,可以用(IP地址:端口号)表示。在进行HSMS通信时,HSMS初始化连接后,可以创建一对TCP/IP连接套接字,这对连接套接字中可以包括服务端TCP/IP连接套接字,服务端TCP/IP连接套接字可以运行于服务端;还可以包括客户端TCP/IP连接套接字,客户端TCP/IP连接套接字可以运行于客户端。
步骤403,通过服务端TCP/IP连接套接字向客户端发送TCP/IP连接建立请求。
在主动模式下,可以通过服务端TCP/IP连接套接字主动向客户端发送TCP/IP连接建立请求,以主动请求与客户端建立连接。
步骤404,接收到客户端返回的连接响应消息,与客户端建立TCP/IP连接。
连接响应消息可以是为针对TCP/IP连接建立请求的响应消息。当服务端接收到客户端返回的连接响应消息时,则服务端可以与客户端建立建立TCP/IP连接。
步骤405,将HSMS通信状态由未连接状态切换为连接状态中的未被选择状态。
步骤406,向客户端发送第一请求消息。
步骤407,若在第一预设时间内接收到客户端返回的选择请求响应消息,则将HSMS通信状态由连接状态中的未被选择状态切换为连接状态中的被选择状态,HSMS通信连接建立。
步骤408,若在第一预设时间内未接收到客户端返回的选择请求响应消息,则向客户端发送第一连接异常消息,以使客户端在接收到第一连接异常消息后对TCP/IP连接进行检测,并在检测到TCP/IP连接异常时,切断TCP/IP连接并重新建立TCP/IP连接。
在一种可选的实施例中,向客户端发送选择请求消息之后,上述方法还可以包括以下子步骤S11-S12:
子步骤S11,启动会话定时器。
子步骤S12,基于会话定时器的计时,判断是否在第一预设时间内接收到客户端返回的选择请求响应消息。
在将HSMS通信状态由连接状态中的未被选择状态切换为连接状态中的被选择状态之前,上述方法还可以包括:关闭会话定时器。
会话定时器可以是用于对请求消息的会话时间进行定时的定时器。具体的,会话定时器可以为T6 TimerOut定时器。
第一预设时间可以用于表示预设的选择请求消息的会话时间可以开启的最长时间,超过该第一预设时间可以表示通信失败。具体的,第一预设时间可以为T6。
选择请求响应消息可以为针对选择请求消息的响应消息,选择请求消息和选择请求响应消息可以是一对控制消息,当服务端与客户端建立TCP/IP连接时,可以进行这对消息的收发。具体的,选择请求消息可以为select.req消息,选择请求响应消息可以为select.rsq消息。
第一连接异常消息可以为HSMS通信状态为未被选择状态时用于表示TCP/IP连接异常的消息。具体的,第一连接异常消息可以为Separate.req消息。
在一种示例中,服务端可以向客户端发送select.req消息,并同时启动T6TimerOut定时器,通过T6 TimerOut定时器的计时判断在T6时间内是否接收到客户端返回的select.rsq消息。若服务端在T6时间内接收到客户端返回的select.rsq消息,则关闭T6TimerOut定时器,此时可以将HSMS通信状态由连接状态中的未被选择状态切换为连接状态中的被选择状态,此时HSMS通信建立连接;若服务端在T6时间内没有接收到select.rsq消息,则可以向客户端发送Separate.req消息,以使客户端在接收到Separate.req消息后对TCP/IP连接情况进行检测。
在一种可选的实施例中,在将HSMS通信状态由连接状态中的未被选择状态切换为连接状态中的被选择状态之后,还可以包括以下子步骤S21-S22:
子步骤S21,向客户端发送心跳测试请求消息。
子步骤S22,若在第一预设时间内未接收到客户端返回的心跳测试响应消息,则向客户端发送第二连接异常消息,以使客户端在接收到第二连接异常消息后对TCP/IP连接进行检测,当检测到TCP/IP连接异常时,切断TCP/IP连接并重新建立TCP/IP连接。
具体的,在HSMS通信状态切换为连接状态中的被选择状态之后,可以向客户端发送心跳测试请求消息,并启动会话定时器,通过会话定时器的计时,判断是否在第一预设时间内接收到客户端返回的心跳测试响应消息。若在第一预设时间内没有接收到客户端返回的心跳测试响应消息,可以向客户端发送第二连接异常消息,以使客户端对TCP/IP连接情况进行检测。
心跳测试请求消息可以是用于测试确认服务端与客户端连接状态的请求消息,具体的,心跳测试请求消息可以为linktest.req消息。心跳测试响应消息可以为针对心跳测试请求消息的响应消息,具体的,心跳测试响应消息可以为linktest.rsp消息。心跳测试请求消息和心跳测试响应消息可以是一对控制消息,当服务端与客户端建立TCP/IP连接后,可以进行这对消息的收发。
第二连接异常消息可以为HSMS通信状态为被选择状态时用于表示TCP/IP连接异常的消息。
在一种示例中,在HSMS通信状态为被选择状态时,服务端可以向客户端发送linktest.req消息,并同时启动T6 TimerOut定时器,判断在T6时间内是否接收到客户端返回的linktest.rsp消息。若服务端在T6时间内没有接收到linktest.rsp消息,则可以向客户端发送Separate.req消息,以使客户端在接收到Separate.req消息后对TCP/IP连接情况进行检测。
本发明实施例中,若在未接收到客户端返回的选择请求响应消息或心跳测试响应消息,可以通过向客户端发送连接异常消息,从而由客户端自行检测TCP/IP连接是否出现异常,来确定是否需要切断连接并进行重连,以解决由于定时器出现异常,导致在异常的定时时间内,服务端没有接收到客户端返回的响应消息时,通信连接被直接切断的问题,从而避免HSMS连接正常、但由于定时时间异常造成HSMS连接被切断的问题,减少由于定时器异常造成HSMS断连的问题。
参照图5,示出了本发明实施例提供的另一种HSMS通信连接方法的步骤流程图,该方法应用于客户端,具体可以包括如下步骤:
步骤501,在HSMS通信的被动模式下与服务端建立TCP/IP连接。
本发明实施例的HSMS通信连接方法可以应用于服务端与客户端之间建立通信连接的场景中。示例性地,在半导体工厂的生产制造场景中,该HSMS通信连接方法可以应用于工厂端与客户端之间建立通信连接。
HSMS通信具有主动(active)模式和被动(passive)模式两种连接模式,在主动模式下的通信实体可以主动向其他通信实体发起连接,在被动模式下的通信实体可以监听端口以等待其他通信实体发送的连接。在本发明实施例中,设置客户端的HSMS通信模式为被动模式,客户端可以在被动模式下等待服务端的连接。
步骤502,将HSMS通信状态由未连接状态切换为连接状态中的未被选择状态。
步骤503,若在第二预设时间内接收到服务端发送的选择请求消息,则返回选择请求响应消息,并将HSMS通信状态由连接状态中的未被选择状态切换为连接状态中的被选择状态,HSMS通信连接建立。
客户端若在预设时间内接收到服务端发送的选择请求消息,则可以返回选择请求响应消息至服务端,此时可以将HSMS通信状态由连接状态中的未被选择状态切换为连接状态中的被选择状态,HSMS通信连接成功建立。
步骤504,若在第二预设时间内未接收到服务端发送的选择请求消息,则切断TCP/IP连接并重新建立TCP/IP连接。
客户端若在预设时间内没有接收到服务端发送的选择请求消息,可以直接切断TCP/IP连接并重新建立TCP/IP连接。
步骤505,若在第二预设时间内接收到服务端发送的第一连接异常消息,则对TCP/IP连接进行检测,并在检测到TCP/IP连接异常时,切断TCP/IP连接并重新建立TCP/IP连接。
第一连接异常消息可以为HSMS通信状态为未被选择态时用于表示TCP/IP连接异常的消息,具体的,第一连接异常消息可以为Separate.req消息。在本发明实施例中,将HSMS通信状态切换为连接状态中的未被选择状态后,若在预设时间内接收到服务端发送的第一连接异常消息,表示服务端检测到TCP/IP连接出现异常,使得客户端在接收到第一连接异常消息后,由客户端对TCP/IP连接情况进行检测,并在检测到TCP/IP连接出现异常时,切断TCP/IP连接并重新建立TCP/IP连接。
在本发明实施例中,客户端接收到服务端发送的第一连接异常消息对TCP/IP连接情况进行检测后,若检测TCP/IP连接没有出现异常,此时可能出现定时器异常的问题,此时不切断TCP/IP连接,从而避免由于定时器异常导致TCP/IP正常连接被切断的问题。
在一种可选的实施例中,步骤505可以包括以下子步骤S31-S33:
子步骤S31,切断TCP/IP连接;
子步骤S32,清除接收缓存区中在建立TCP/IP连接时接收的数据。
子步骤S33,向服务端发起TCP/IP连接套接字创建请求,以使服务端再次创建服务端TCP/IP连接套接字,并在HSMS通信的主动模式下再次向客户端发送TCP/IP连接建立请求。
接收缓存区中可以存储有建立TCP/IP连接时接收的数据,在检测到HSMS通信状态为未被选择态时的TCP/IP连接出现异常时,可以切断TCP/IP连接,即HSMS断连。如果此时对接收缓存区中的数据进行解析,则会出现数据解析异常的问题。
本发明实施例中,客户端在检测到TCP/IP连接出现异常并切断TCP/IP连接后,可以清除接收缓存区中在建立TCP/IP连接时接收的数据,并向服务端发起TCP/IP连接套接字创建请求,以促使服务端向客户端再次发送TCP/IP连接建立请求来重新建立新的TCP/IP连接,从而防止接收缓存区中的数据残留导致对数据包的解析出错,造成重连失败。
在一种可选的实施例中,在将HSMS通信状态由未连接状态切换为连接状态中的未被选择状态之后,上述方法还可以包括:启动连接定时器;基于连接定时器的计时,判断是否在第二预设时间内接收到服务端发送的选择请求消息或第一连接异常消息。可选的,在返回选择请求响应消息之后,shangshu7方法还可以包括:关闭连接定时器。
连接定时器可以是用于对请求消息的连接时间进行定时的定时器。具体的,连接定时器可以为T7 TimerOut定时器。
第二预设时间可以用于表示客户端与服务端建立TCP/IP连接后,预设的HSMS通信可以处于未被选择状态的最长时间。具体的,第二预设时间可以为T7。
选择请求响应消息可以为针对选择请求消息的响应消息,选择请求消息和选择请求响应消息可以是一对控制消息,当服务端与客户端建立TCP/IP连接时,可以进行这对消息的收发。具体的,选择请求消息可以为select.req消息,选择请求响应消息可以为select.rsq消息。
在一种示例中,在将HSMS通信状态由未连接状态切换为连接状态中的未被选择状态之后,客户端可以启动T7 TimerOut定时器,通过T7 TimerOut定时器的计时,判断在T7时间内是否接收到服务端发送的select.req消息或Separate.req消息。若客户端在T7时间内接收到服务端发送的select.req消息,则返回select.rsq消息至服务端,并关闭T7TimerOut定时器,此时可以将HSMS通信状态由连接状态中的未被选择状态切换为连接状态中的被选择状态,此时HSMS通信连接建立;若客户端在T7时间内没有接收到select.req消息,则直接切断TCP/IP连接并重新建立TCP/IP连接;若在T7时间内接收到服务端发送的Separate.req消息,则对TCP/IP连接进行检测,并在检测到TCP/IP连接异常时,切断TCP/IP连接并重新建立TCP/IP连接。
在一种可选的实施例中,在将HSMS通信状态由连接状态中的未被选择状态切换为连接状态中的被选择状态之后,上述方法还可以包括:若接收到服务器发送的第二连接异常消息,则对TCP/IP连接进行检测,并在检测到TCP/IP连接异常时,切断TCP/IP连接并重新建立TCP/IP连接。
第二连接异常消息可以为HSMS通信状态为被选择状态时用于表示TCP/IP连接异常的消息。当HSMS通信状态为被选择状态时,此时可以进行客户端与服务端之间固定时间间隔的心跳测试,在心跳测试出现异常时,客户端可以接收服务端发送的第二连接异常消息,对TCP/IP连接进行检测,并在检测到TCP/IP连接异常时,切断TCP/IP连接并重新建立TCP/IP连接。
在一种示例中,在将HSMS通信状态切换为被选择状态之后,在心跳测试出现异常时,客户端可以接收到客户端发送的Separate.req消息,对TCP/IP连接进行检测,并在检测到TCP/IP连接异常时,切断TCP/IP连接并重新建立TCP/IP连接。
在一种可选的实施例中,步骤501可以包括以下子步骤:配置客户端HSMS通信的连接模式为被动模式;创建客户端TCP/IP连接套接字;在被动模式下,通过客户端TCP/IP连接套接字开启监听服务的端口以等待服务端连接;当接收到服务端发送的TCP/IP连接建立请求时,发送连接响应消息至服务端,以与服务端建立TCP/IP连接。
可以在客户端预先配置好HSMS通信的连接模式,可以预先配置服务端HSMS通信的连接模式为被动模式。在进行HSMS通信时,HSMS初始化连接后,可以创建一对TCP/IP连接套接字,这对连接套接字中可以包括客户端TCP/IP连接套接字,客户端TCP/IP连接套接字可以运行于客户端;还可以包括服务端TCP/IP连接套接字,服务端TCP/IP连接套接字可以运行于服务端。在被动模式下,可以通过客户端端TCP/IP连接套接字开启监听服务的端口,以等待服务端连接。当客户端接收到服务端发送的TCP/IP连接建立请求时,可以发送连接响应消息至服务端,从而与服务端建立TCP/IP连接。
本发明实施例中,客户端在接收到服务端发送的第一连接异常消息或第二连接异常消息时,可以由客户端自行检测TCP/IP连接是否出现异常,来确定是否需要切断连接并进行重连。若客户端检测到TCP/IP连接异常,可以切断TCP/IP连接并重新建立TCP/IP连接;若客户端检测到TCP/IP连接正常,此时可能出现定时器异常的问题,不切断TCP/IP连接,从而避免HSMS连接正常、但由于定时时间异常造成HSMS连接被切断的问题,减少由于定时器异常造成HSMS断连的问题。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图6,示出了本发明实施例提供的一种HSMS通信连接装置的结构框图,该装置应用于服务端,具体可以包括如下模块:
主动模式模块601,用于在HSMS通信的主动模式下与客户端建立TCP/IP连接;
状态切换模块602,用于将HSMS通信状态由未连接状态切换为连接状态中的未被选择状态;
请求消息发送模块603,用于向所述客户端发送选择请求消息;
连接模块604,用于若在第一预设时间内接收到所述客户端返回的选择请求响应消息,则将所述HSMS通信状态由所述连接状态中的所述未被选择状态切换为所述连接状态中的被选择状态,所述HSMS通信连接建立;
异常消息发送模块605,用于若在所述第一预设时间内未接收到所述客户端返回的选择请求响应消息,则向所述客户端发送第一连接异常消息,以使所述客户端在接收到所述第一连接异常消息后对所述TCP/IP连接进行检测,并在检测到所述TCP/IP连接异常时,切断所述TCP/IP连接并重新建立TCP/IP连接。
在一种可选的实施例中,所述装置还包括:
会话定时器启动模块,用于启动会话定时器;
响应消息判断模块,用于基于所述会话定时器的计时,判断是否在所述第一预设时间内接收到所述客户端返回的所述选择请求响应消息;
所述装置还包括:
会话定时器关闭模块,用于关闭所述会话定时器。
在一种可选的实施例中,所述装置还包括:
心跳测试请求发送模块,用于向所述客户端发送心跳测试请求消息;
第二连接异常消息发送模块,用于若在所述第一预设时间内未接收到所述客户端返回的心跳测试响应消息,则向所述客户端发送第二连接异常消息,以使所述客户端在接收到所述第二连接异常消息后对所述TCP/IP连接进行检测,当检测到所述TCP/IP连接异常时,切断所述TCP/IP连接并重新建立TCP/IP连接。
在一种可选的实施例中,所述主动模式模块包括:
主动模式配置子模块,用于配置所述服务端的连接模式为所述HSMS通信的主动模式;
服务端套接字创建子模块,用于创建服务端TCP/IP连接套接字;
连接建立请求发送子模块,用于通过所述服务端TCP/IP连接套接字向所述客户端发送TCP/IP连接建立请求;
连接建立子模块,用于接收到所述客户端返回的连接响应消息,与所述客户端建立所述TCP/IP连接。
本发明实施例中,若在未接收到客户端返回的选择请求响应消息或心跳测试响应消息,可以通过向客户端发送连接异常消息,从而由客户端自行检测TCP/IP连接是否出现异常,来确定是否需要切断连接并进行重连,以解决由于定时器出现异常,导致在异常的定时时间内,服务端没有接收到客户端返回的响应消息时,通信连接被直接切断的问题,从而避免HSMS连接正常、但由于定时时间异常造成HSMS连接被切断的问题,减少由于定时器异常造成HSMS断连的问题。
参照图7,示出了本发明实施例提供的另一种HSMS通信连接装置的结构框图,所述装置应用于客户端,具体可以包括如下模块:
被动模式模块701,用于在HSMS通信的被动模式下与服务端建立TCP/IP连接;
通信状态切换模块702,用于将HSMS通信状态由未连接状态切换为连接状态中的未被选择状态;
响应消息返回模块703,用于若在第二预设时间内接收到所述服务端发送的选择请求消息,则返回选择请求响应消息,并将所述HSMS通信状态由所述连接状态中的所述未被选择状态切换为所述连接状态中的被选择状态,所述HSMS通信连接建立;
重连模块704,用于若在所述第二预设时间内未接收到所述服务端发送的选择请求消息,则切断所述TCP/IP连接并重新建立TCP/IP连接。
在一种可选的实施例中,所述重连模块,包括:
连接切断子模块,用于切断所述TCP/IP连接;
数据清除子模块,用于清除接收缓存区中在建立TCP/IP连接时接收的数据;
套接字创建请求发送子模块,用于向所述服务端发起TCP/IP连接套接字创建请求,以使所述服务端再次创建服务端TCP/IP连接套接字,并在HSMS通信的主动模式下再次向所述客户端发送TCP/IP连接建立请求。
在一种可选的实施例中,所述装置还包括:
连接定时器启动模块,用于启动连接定时器;
消息接收判断模块,用于基于所述连接定时器的计时,判断是否在所述第二预设时间内接收到所述服务端发送的所述选择请求消息或所述第一连接异常消息;
所述装置还包括:
连接定时器关闭模块,用于关闭所述连接定时器。
在一种可选的实施例中,所述装置还包括:
连接异常检测模块,用于若接收到所述服务器发送的第二连接异常消息,则对所述TCP/IP连接进行检测,并在检测到所述TCP/IP连接异常时,切断所述TCP/IP连接并重新建立TCP/IP连接。
在一种可选的实施例中,所述被动模式模块,包括:
被动模式配置子模块,用于配置所述客户端的连接模式为所述HSMS通信的被动模式;
客户端套接字创建子模块,用于创建客户端TCP/IP连接套接字;
等待连接子模块,用于通过所述客户端TCP/IP连接套接字开启监听服务的端口以等待所述服务端连接;
连接建立请求接收子模块,用于接收到所述服务端发送的TCP/IP连接建立请求,发送连接响应消息至所述服务端,以与所述服务端建立TCP/IP连接。
本发明实施例中,客户端在接收到服务端发送的第一连接异常消息或第二连接异常消息时,可以由客户端自行检测TCP/IP连接是否出现异常,来确定是否需要切断连接并进行重连。若客户端检测到TCP/IP连接异常,可以切断TCP/IP连接并重新建立TCP/IP连接;若客户端检测到TCP/IP连接正常,此时可能出现定时器异常的问题,不切断TCP/IP连接,从而避免HSMS连接正常、但由于定时时间异常造成HSMS连接被切断的问题,减少由于定时器异常造成HSMS断连的问题。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本申请实施例还提供了一种电子设备,包括:
包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,该计算机程序被处理器执行时实现上述HSMS通信连接方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本申请实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储计算机程序,计算机程序被处理器执行时实现上述HSMS通信连接方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种HSMS通信连接方法和装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (11)
1.一种HSMS通信连接方法,其特征在于,应用于服务端,所述方法包括:
在HSMS通信的主动模式下与客户端建立TCP/IP连接;
将HSMS通信状态由未连接状态切换为连接状态中的未被选择状态;
向所述客户端发送选择请求消息;
若在第一预设时间内接收到所述客户端返回的选择请求响应消息,则将所述HSMS通信状态由所述连接状态中的所述未被选择状态切换为所述连接状态中的被选择状态,所述HSMS通信连接建立;
若在所述第一预设时间内未接收到所述客户端返回的选择请求响应消息,则向所述客户端发送第一连接异常消息,以使所述客户端在接收到所述第一连接异常消息后对所述TCP/IP连接进行检测,并在检测到所述TCP/IP连接异常时,切断所述TCP/IP连接并重新建立TCP/IP连接。
2.根据权利要求1所述的方法,其特征在于,所述向所述客户端发送选择请求消息之后,所述方法还包括:
启动会话定时器;
基于所述会话定时器的计时,判断是否在所述第一预设时间内接收到所述客户端返回的所述选择请求响应消息;
在所述将所述HSMS通信状态由所述连接状态中的所述未被选择状态切换为所述连接状态中的被选择状态之前,所述方法还包括:
关闭所述会话定时器。
3.根据权利要求2所述的方法,其特征在于,在所述将所述HSMS通信状态由所述连接状态中的所述未被选择状态切换为所述连接状态中的被选择状态之后,所述方法还包括:
向所述客户端发送心跳测试请求消息;
若在所述第一预设时间内未接收到所述客户端返回的心跳测试响应消息,则向所述客户端发送第二连接异常消息,以使所述客户端在接收到所述第二连接异常消息后对所述TCP/IP连接进行检测,当检测到所述TCP/IP连接异常时,切断所述TCP/IP连接并重新建立TCP/IP连接。
4.根据权利要求1所述的方法,其特征在于,所述在HSMS通信的主动模式下与客户端建立TCP/IP连接包括:
配置所述服务端的连接模式为所述HSMS通信的主动模式;
创建服务端TCP/IP连接套接字;
通过所述服务端TCP/IP连接套接字向所述客户端发送TCP/IP连接建立请求;
接收到所述客户端返回的连接响应消息,与所述客户端建立所述TCP/IP连接。
5.一种HSMS通信连接方法,其特征在于,应用于客户端,所述方法包括:
在HSMS通信的被动模式下与服务端建立TCP/IP连接;
将HSMS通信状态由未连接状态切换为连接状态中的未被选择状态;
若在第二预设时间内接收到所述服务端发送的选择请求消息,则返回选择请求响应消息,并将所述HSMS通信状态由所述连接状态中的所述未被选择状态切换为所述连接状态中的被选择状态,所述HSMS通信连接建立;
若在所述第二预设时间内未接收到所述服务端发送的选择请求消息,则切断所述TCP/IP连接并重新建立TCP/IP连接;
若在所述第二预设时间内接收到所述服务端发送的第一连接异常消息,则对所述TCP/IP连接进行检测,并在检测到所述TCP/IP连接异常时,切断所述TCP/IP连接并重新建立TCP/IP连接。
6.根据权利要求5所述的方法,其特征在于,所述切断所述TCP/IP连接并重新建立TCP/IP连接,包括:
切断所述TCP/IP连接;
清除接收缓存区中在建立TCP/IP连接时接收的数据;
向所述服务端发起TCP/IP连接套接字创建请求,以使所述服务端再次创建服务端TCP/IP连接套接字,并在HSMS通信的主动模式下再次向所述客户端发送TCP/IP连接建立请求。
7.根据权利要求5所述的方法,其特征在于,在所述将HSMS通信状态由未连接状态切换为连接状态中的未被选择状态之后,所述方法还包括:
启动连接定时器;
基于所述连接定时器的计时,判断是否在所述第二预设时间内接收到所述服务端发送的所述选择请求消息或所述第一连接异常消息;
在所述返回选择请求响应消息之后,所述方法还包括:
关闭所述连接定时器。
8.根据权利要求7所述的方法,其特征在于,在所述将所述HSMS通信状态由所述连接状态中的所述未被选择状态切换为所述连接状态中的被选择状态之后,所述方法还包括:
若接收到所述服务端发送的第二连接异常消息,则对所述TCP/IP连接进行检测,并在检测到所述TCP/IP连接异常时,切断所述TCP/IP连接并重新建立TCP/IP连接。
9.根据权利要求5所述的方法,其特征在于,所述在HSMS通信的被动模式下与服务端建立TCP/IP连接,包括:
配置所述客户端的连接模式为所述HSMS通信的被动模式;
创建客户端TCP/IP连接套接字;
通过所述客户端TCP/IP连接套接字开启监听服务的端口以等待所述服务端连接;
接收到所述服务端发送的TCP/IP连接建立请求,发送连接响应消息至所述服务端,以与所述服务端建立TCP/IP连接。
10.一种HSMS通信连接装置,其特征在于,应用于服务端,所述装置包括:
主动模式模块,用于在HSMS通信的主动模式下与客户端建立TCP/IP连接;
状态切换模块,用于将HSMS通信状态由未连接状态切换为连接状态中的未被选择状态;
请求消息发送模块,用于向所述客户端发送选择请求消息;
连接模块,用于若在第一预设时间内接收到所述客户端返回的选择请求响应消息,则将所述HSMS通信状态由所述连接状态中的所述未被选择状态切换为所述连接状态中的被选择状态,所述HSMS通信连接建立;
异常消息发送模块,用于若在所述第一预设时间内未接收到所述客户端返回的选择请求响应消息,则向所述客户端发送第一连接异常消息,以使所述客户端在接收到所述第一连接异常消息后对所述TCP/IP连接进行检测,并在检测到所述TCP/IP连接异常时,切断所述TCP/IP连接并重新建立TCP/IP连接。
11.一种HSMS通信连接装置,其特征在于,应用于客户端,所述装置包括:
被动模式模块,用于在HSMS通信的被动模式下与服务端建立TCP/IP连接;
通信状态切换模块,用于将HSMS通信状态由未连接状态切换为连接状态中的未被选择状态;
响应消息返回模块,用于若在第二预设时间内接收到所述服务端发送的选择请求消息,则返回选择请求响应消息,并将所述HSMS通信状态由所述连接状态中的所述未被选择状态切换为所述连接状态中的被选择状态,所述HSMS通信连接建立;
重连模块,用于若在所述第二预设时间内未接收到所述服务端发送的选择请求消息,则切断所述TCP/IP连接并重新建立TCP/IP连接。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210481148.6A CN115022384B (zh) | 2022-05-05 | 2022-05-05 | 一种hsms通信连接方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210481148.6A CN115022384B (zh) | 2022-05-05 | 2022-05-05 | 一种hsms通信连接方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115022384A CN115022384A (zh) | 2022-09-06 |
CN115022384B true CN115022384B (zh) | 2023-10-13 |
Family
ID=83069784
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210481148.6A Active CN115022384B (zh) | 2022-05-05 | 2022-05-05 | 一种hsms通信连接方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115022384B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116319953B (zh) * | 2023-05-24 | 2023-08-08 | 深圳联友科技有限公司 | 一种半导体设备数据采集方法 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101552794A (zh) * | 2008-04-03 | 2009-10-07 | 沈阳中科博微自动化技术有限公司 | 基于semi标准的secs通信方法 |
CN101594269A (zh) * | 2009-06-29 | 2009-12-02 | 成都市华为赛门铁克科技有限公司 | 一种异常连接的检测方法、装置及网关设备 |
CN101980482A (zh) * | 2010-11-17 | 2011-02-23 | 广东威创视讯科技股份有限公司 | 一种网络连接监控方法及其*** |
US8102844B1 (en) * | 2006-09-21 | 2012-01-24 | Pivotal Systems Corporation | High-speed SECS message services (HSMS) pass-through including bypass |
CN103401714A (zh) * | 2013-08-01 | 2013-11-20 | 广东威创视讯科技股份有限公司 | 一种网络连接状态检测方法及客户端 |
CN105337947A (zh) * | 2014-08-13 | 2016-02-17 | 无锡华润微电子有限公司 | 信息分流转换工具、半导体生产***及其通信方法 |
CN106961364A (zh) * | 2017-04-24 | 2017-07-18 | 努比亚技术有限公司 | 心跳检测方法及应用服务器 |
CN109560900A (zh) * | 2017-09-27 | 2019-04-02 | 阿里巴巴集团控股有限公司 | 数据发送方法和装置 |
CN110290194A (zh) * | 2019-06-20 | 2019-09-27 | 苏州工业园区恒越自动化科技有限公司 | 一种基于semi标准的secs通信方法 |
CN110933169A (zh) * | 2019-11-25 | 2020-03-27 | 北京北方华创微电子装备有限公司 | 半导体设备的远程群组控制*** |
CN112054985A (zh) * | 2019-06-06 | 2020-12-08 | 全球能源互联网研究院有限公司 | 一种移动终端与现场检测试验设备的数据交互方法及*** |
-
2022
- 2022-05-05 CN CN202210481148.6A patent/CN115022384B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8102844B1 (en) * | 2006-09-21 | 2012-01-24 | Pivotal Systems Corporation | High-speed SECS message services (HSMS) pass-through including bypass |
CN101552794A (zh) * | 2008-04-03 | 2009-10-07 | 沈阳中科博微自动化技术有限公司 | 基于semi标准的secs通信方法 |
CN101594269A (zh) * | 2009-06-29 | 2009-12-02 | 成都市华为赛门铁克科技有限公司 | 一种异常连接的检测方法、装置及网关设备 |
CN101980482A (zh) * | 2010-11-17 | 2011-02-23 | 广东威创视讯科技股份有限公司 | 一种网络连接监控方法及其*** |
CN103401714A (zh) * | 2013-08-01 | 2013-11-20 | 广东威创视讯科技股份有限公司 | 一种网络连接状态检测方法及客户端 |
CN105337947A (zh) * | 2014-08-13 | 2016-02-17 | 无锡华润微电子有限公司 | 信息分流转换工具、半导体生产***及其通信方法 |
CN106961364A (zh) * | 2017-04-24 | 2017-07-18 | 努比亚技术有限公司 | 心跳检测方法及应用服务器 |
CN109560900A (zh) * | 2017-09-27 | 2019-04-02 | 阿里巴巴集团控股有限公司 | 数据发送方法和装置 |
CN112054985A (zh) * | 2019-06-06 | 2020-12-08 | 全球能源互联网研究院有限公司 | 一种移动终端与现场检测试验设备的数据交互方法及*** |
CN110290194A (zh) * | 2019-06-20 | 2019-09-27 | 苏州工业园区恒越自动化科技有限公司 | 一种基于semi标准的secs通信方法 |
CN110933169A (zh) * | 2019-11-25 | 2020-03-27 | 北京北方华创微电子装备有限公司 | 半导体设备的远程群组控制*** |
Non-Patent Citations (1)
Title |
---|
基于GEM/SECS协议的数据采集***设计与实现;王延辉;姜建国;王宇;;计算机工程与设计(第12期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN115022384A (zh) | 2022-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10649866B2 (en) | Method and apparatus for indirectly assessing a status of an active entity | |
US9332037B2 (en) | Method and apparatus for redundant signaling links | |
US11128663B2 (en) | Synchronizing link and event detection mechanisms with a secure session associated with the link | |
CN114422571B (zh) | 一种量子通信客户端断开重连***及方法 | |
WO2012116581A1 (zh) | 建立音视频通讯连接的方法和装置 | |
CN107454184B (zh) | Android客户端与服务器建立稳定网络连接的方法 | |
CN115022384B (zh) | 一种hsms通信连接方法和装置 | |
EP2018024B1 (en) | Call processing system and method | |
CN103001822B (zh) | 网络异常的处理方法及装置 | |
CN101848165B (zh) | 控制通信链路中断后恢复的方法和接口板 | |
KR101407597B1 (ko) | 망 부하 감소를 위한 푸시 서비스 제공 시스템 및 방법 | |
CN112714060B (zh) | 一种链路检测方法及设备 | |
CN106301835B (zh) | 一种bfd建链的方法及其装置、路由器 | |
WO2016082343A1 (zh) | 故障检测方法及装置 | |
KR101587332B1 (ko) | 컨트롤러와 네트워크 장치 간 연결 상태 확인 방법 | |
CN105337996B (zh) | 一种数据处理方法及*** | |
JP5596664B2 (ja) | 無線ネットワーク不具合切り分け支援システム | |
KR100358439B1 (ko) | 컴팩트 제어국간의 이더넷을 이용한 데이터 전송방법 | |
KR100462870B1 (ko) | 통신 교환 시스템의 동기화 설정 방법 | |
JP4086638B2 (ja) | TCPを用いた呼制御を行うVoIPシステム及びこのシステムにおける呼制御方法 | |
CN114363342A (zh) | 故障收敛方法及其相关装置和负载均衡集群 | |
CN115529208A (zh) | 用于智能设备的网关切换方法及装置、***、网关设备 | |
JP2013126205A (ja) | 通信装置、通信システム、障害判定方法及び障害判定プログラム | |
CN116800815A (zh) | 一种通信方法及装置 | |
CN114745221A (zh) | Modbus通信***及通信方法 |
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 |