CN103618741A - 一种tcp长连接通信***及方法 - Google Patents

一种tcp长连接通信***及方法 Download PDF

Info

Publication number
CN103618741A
CN103618741A CN201310662760.4A CN201310662760A CN103618741A CN 103618741 A CN103618741 A CN 103618741A CN 201310662760 A CN201310662760 A CN 201310662760A CN 103618741 A CN103618741 A CN 103618741A
Authority
CN
China
Prior art keywords
tcp
data
module
message
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.)
Pending
Application number
CN201310662760.4A
Other languages
English (en)
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.)
Huizhou Foryou General Electronics Co Ltd
Original Assignee
Huizhou Foryou General Electronics 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 Huizhou Foryou General Electronics Co Ltd filed Critical Huizhou Foryou General Electronics Co Ltd
Priority to CN201310662760.4A priority Critical patent/CN103618741A/zh
Publication of CN103618741A publication Critical patent/CN103618741A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Computer And Data Communications (AREA)

Abstract

本发明提供一种TCP长连接通信***及方法,***包括:TCP通信模块,接收终端设备发送的数据请求,根据请求信息调用业务逻辑处理模块中相应的业务逻辑处理接口,并接收消息、数据管理模块返回的运算结果,向终端设备发送TCP通信数据、指令或控制语法;消息、数据管理模块,用于调用业务逻辑处理接口进行消息、数据的管理及运算;信息数据存储模块,管理设备信息及通信***业务数据;分布式内存缓存模块,为开源分布式内存缓存***;负载分流模块,接收到新的TCP连接请求时,动态的将当前请求分派到当前负载最小的服务器上。本发明提供一种抽象的、事件驱动的、异步的位于各种传输协议之上的TCP长连接通信***及方法,支持高并发、高实时性,可动态扩展。

Description

一种TCP长连接通信***及方法
技术领域
本发明涉及网络通信技术领域,具体涉及一种抽象的、事件驱动的、异步的、位于各种传输协议(如TCP/IP和UDP/IP)之上的TCP长连接通信***及方法。
背景技术
基于TCP/IP进行网络通信的***应用中,在进行真正的读写操作之前,服务端(Server)与客户端(Client)之间必须建立一个连接,当读写操作完成后,双方不再需要这个连接时它们可以释放这个连接,连接的建立需要三次握手,而释放则需要四次握手,在每一次的TCP网络通信过程中,每个连接的建立和释放都是需要资源消耗和时间消耗的,如图1、2所示:
1、建立TCP连接的三次握手:
第一次握手:建立连接时,客户端发送SYN包(SYN=J)到服务器,并进入SYN_SEND状态,等待服务器确认;
第二次握手:服务器收到SYN包,必须确认客户的SYN(ack=J+1),同时自己也发送一个SYN包(SYN=K),即SYN+ACK包,此时服务器进入SYN_RECV状态;
第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=K+1),此包发送完毕,客户端和服务器进入确定(ESTABLISHED)状态,完成三次握手。
完成三次握手,客户端与服务器开始传送数据。
2、释放TCP连接的四次握手:
数据传输结束后,通信的双方都可释放连接,客户应用进程先向其TCP发出连接释放报文段,并停止再发送数据,主动关闭TCP连接。
第一次握手:客户端发送FIN包,用来关闭客户端到服务器的数据传送;
第二次握手:服务器接收FIN包,发回ACK包,确认序号为收到的序号M加1,一个FIN包占用一个序号;
第三次握手:服务器关闭客户端的连接,发送FIN包给客户端;
第四次握手:客户端发回ACK报文确认,并将确认序号设置为收到序号加1。
上述传统的TCP短连接网络通信模式中,如:Web,都是由客户端(Client)主动向服务端(Server)发送连接请求,服务端接收请求并回应客户端,双方建立连接,完成一次读写操作,双方任何一个都可以发起关闭(close)操作,如图2所示,一般都是客户端先发起关闭操作。TCP短连接通信模式一般只会在客户端与服务端之间传递一次读写操作后即关闭连接,如需再次进行读写操作,则要再次建立连接并释放连接,而每个连接的建立和释放都需要资源消耗和时间消耗的,因此,TCP短连接通信模式实时性不高。
而物联网时代特别是基于GIS的车辆位置监控等应用场景中,客户端(Client)端与服务端(Server)的数据交换实时性要求非常高,同时还要求服务端(Server)能主动向客户端(Client)发送请求或指令数据。
在TCP长连接通信模式中,客户端向服务端发起连接请求,服务端接收客户端连接请求,双方建立连接。客户端与服务端完成一次读写之后,它们之间的连接并不会主动关闭,后续的读写操作会继续使用这个连接。因此,TCP长连接通信模式可实现数据传输的高实时性。
综上所述,单纯的TCP短连接通信模式已经不能满足要求了,寻找支持高并发、高实时性、可动态扩展的基于TCP长连接通信模式的技术方案已经成为
Socket通信领域新的发展方向。
发明内容
本发明的目的是通过Java网络接口对象(Network Interface Object,NIO)提供一个抽象的、事件驱动的、异步的位于各种传输协议(如TCP/IP和UDP/IP)之上的TCP网络通信方案,具体为支持高并发、高实时性、可动态扩展的TCP长连接通信***及方法。
本发明是通过以下技术方案来实现的:
本发明一方面提供一种TCP长连接通信***,包括:
TCP通信模块,接收终端设备发送的数据请求,根据请求信息调用业务逻辑处理模块中相应的业务逻辑处理接口,并接收消息、数据管理模块返回的运算结果,向终端设备发送TCP通信数据、指令或控制语法;
消息、数据管理模块,用于调用业务逻辑处理接口进行消息、数据的管理及运算;
信息数据存储模块,使用关系型数据库或非关系型数据库,管理设备信息及通信***业务数据;
分布式内存缓存模块,为开源分布式内存缓存***Memcached;
负载分流模块,用于动态计算分布式集群内各服务器当前建立TCP连接的有效连接数及资源消耗,接收到新的TCP连接请求时,动态的将当前请求分派到当前负载最小的服务器上。
进一步地,所述TCP通信模块的TCP消息通信模型包括:
I/O服务器,用于执行与网络对等体的数据I/O操作;
I/O过滤器,用于进行网络传输过程中软件对象、数据结构到字节流的转换,或者字节流到软件对象、数据结构的转换;多个I/O过滤器串联形成I/O过滤器链,作为消息协议的编解码器;
I/O处理器:用于执行具体的业务逻辑,对接收到的消息进行处理;
进一步地,所述TCP长连接通信***还包括:
安全认证模块,用于在信息交互过程中,对信息进行加密和认证处理。
进一步地,所述TCP长连接通信***还包括:
智能监控模块,用于当监测到某网络套接字挂起或访问延迟时,及时修复该套接字。
进一步地,所述TCP长连接通信***还包括:
入侵检测模块,用于监控服务器和网络的状态。
本发明另一方面提供一种TCP长连接通信方法,其特征在于,包括:
终端设备发送TCP连接请求;
负载分流模块动态计算分布式集群内各服务器当前建立TCP连接的有效连接数及资源消耗,接收到新的TCP连接请求时,动态的将当前请求分派到当前负载最小的服务器上,为终端设备分配地址、端口;
终端设备发送数据请求;
TCP通信模块接收终端设备发送的数据请求,根据请求信息调用业务逻辑处理模块中相应的业务逻辑处理接口;
消息、数据管理模块调用业务逻辑处理接口进行消息、数据的管理及运算;
TCP通信模块接收所述消息、数据管理模块返回的运算结果,向终端设备发送TCP通信数据、指令或控制语法。
进一步地,所述TCP通信方法的TCP消息通信流程包括:
I/O服务器执行来自网络对等体的JAVA对象数据输入操作;
I/O过滤器进行网络传输过程中软件对象、数据结构到字节流的转换,将所述JAVA对象数据编码为二进制数据;
I/O处理器执行具体的业务逻辑,对接收到的消息进行处理;
I/O过滤器进行网络传输过程中字节流到软件对象、数据结构的转换,将二进制数据解码为JAVA对象数据;
I/O服务器执行JAVA对象数据的输出操作。
进一步地,所述的TCP长连接通信方法还包括:
安全认证步骤:在信息交互过程中,对信息进行加密和认证处理。
进一步地,所述的TCP长连接通信方法还包括:
智能监控步骤:当监测到某网络套接字挂起或访问延迟时,及时修复该套接字。
进一步地,所述的TCP长连接通信方法还包括:
入侵检测步骤:监控服务器和网络的状态。
本发明相比现有技术具有以下优点及有益效果:
(1)采用TCP长连接通信模式实现了数据传输的高实时性;TCP长连接通信***平台完全遵循TCP/IP网络通信协议,理论上支持任何自定义的基于TCP的消息通信协议,实际使用时仅需按照消息协议的技术规范开发相应的消息编解码器即可以实现对消息的编码、解码、解析;
(2)TCP长连接通信***平台采用了分布式内存缓存***Memcached,可以极大的提高通信平台的响应速度并支持高并发能力;
(3)TCP长连接通信***平台基于智能的动态负载计算,可以减少通信平台的配置、管理工作量,极大的提高通信平台的水平扩展能力,实现可动态扩展;
(4)所述终端设备与TCP长连接通信***平台可以运行于虚拟专用网络的环境中建立连接,使终端设备与通信平台的网络与公网实现隔离,且每一次通讯都经过加密处理,使终端设备与通信平台的网络更加安全可靠;
(5)TCP长连接通信***平台还包括智能监控模块,用于监控通信平台各承载网络套接字的稳定性和可访问性。当监测到某套接字出现线程挂起或访问延迟时,智能监控模块及时维护该套接字以确保接口的稳定性和可靠性;
(6)TCP长连接通信***平台对Java中的socket和NIO进行了有效和清晰的封装,方便开发人员开发TCP/UDP程序,从而抛开在使用原始的socket时需要考虑的各种繁杂而又麻烦的问题(线程、性能、会话等),把更多精力专著在应用中的业务逻辑的开发上;
(7)TCP长连接通信***平台采用纯Java6的开发语言,使所述通信平台具有良好的兼容性,理论上可兼容Linux/Windows/Unix/Solaris等操作***。
附图说明
图1是现有的TCP短连接的通信流程示意图;
图2是现有的TCP短连接释放的通信流程示意图;
图3是本发明的TCP长连接通信***的结构示意图;
图4是本发明的TCP长连接通信***进一步实施方式的结构示意图;
图5是本发明的TCP消息通信模型的结构示意图;
图6是本发明的TCP消息通信模型的消息编、解码原理示意图;
图7是本发明的TCP长连接通信方法的流程示意图;
图8是本发明的TCP长连接通信方法的通信过程示意图;
图9是本发明的TCP长连接通信方法的进一步实施方式的流程示意图。
具体实施方式
下面结合附图具体阐明本发明的实施方式,附图仅供参考和说明使用,不构成对本发明专利保护范围的限制。
如图3所示,在本实施例中,本发明一方面提供一种TCP长连接通信***,包括:
TCP通信模块,接收终端设备发送的数据请求,根据请求信息调用业务逻辑处理模块中相应的业务逻辑处理接口,并接收消息、数据管理模块返回的运算结果,向终端设备发送TCP通信数据、指令或控制语法;所述TCP通信模块基于JavaNIO理念设计;
消息、数据管理模块,用于在IO处理器中调用业务逻辑处理接口进行消息、数据的管理及运算;包括基于TCP/IP网络协议的消息协议及编解码器,所述TCP长连接通信平台理论上支持任何自定义的消息通信协议,针对自定义的协议通信协议,开发人员只需要在通信平台自定义对应的消息协议编解码器即可实现对网络消息的编解码处理及消息解析;
信息数据存储模块,使用关系型数据库或非关系型数据库,管理设备信息及通信***业务数据;采用MySQL、Oracle、SQLServer或MongoDB等数据存储管理***,以实现TCP通信***平台对接入设备的信息查询、存储、管理、计算;
分布式内存缓存模块,为开源分布式内存缓存***Memcached;通过键/值对的HashMap在服务器内存中缓存常用及临时数据以减少数据库***的查询压力以提高平台的响应速度及并发能力;
负载分流模块,用于动态计算分布式集群内各服务器当前建立TCP连接的有效连接数及资源消耗,接收到新的TCP连接请求时,动态的将当前请求分派到当前负载最小的服务器上;所述负载分流模块及分流算法基于服务器TCP连接临界计算,TCP连接实时接入数计算,动态为终端设备分配当前服务器集群中负载最轻的地址和端口以备设备接入,同时通过该算法极大的提高了通信平台的水平扩展能力,当管理人员发现集群中所有的服务器负载都接近临界值时,只需要增加服务器设备及服务器节点配置即可以应对不断上升的并发访问。
所述信息数据存储模块结合Memcached分布式内存缓存数据库通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高数据库并发、减少数据库服务器的压力;在服务器硬件方面使用磁盘RAID5及全局热备方法保存数据,确保服务数据的安全可靠及服务器磁盘阵列的稳定运行。
终端设备与TCP长连接通信平台可以在虚拟专用网络的环境中建立连接,使终端设备与通信平台的网络与公网实现隔离[如:GRE或L2TP(Layer2Tunneling Protocol,第二层隧道协议)等隧道协议的接入点(Access Point Name,APN)网络],且每一次通讯都经过加密处理,使终端设备与通信平台的网络更安全可靠,也可以在3G等移动公网建立TCP连接实现设备与通信平台的消息交互、数据传输。
在本发明的实施例中,终端设备与所述TCP长连接通信***平台的通信基于TCP/IP协议。
所述TCP长连接通信平台能根据业务逻辑需要主动断开任一已建立连接的终端设备的TCP连接。所述通信平台还包括TCP连接线程监控模块,用于准实时监控当前已建立TCP连接的连接状态,并自动释放按应用配置定义为已经失效的TCP连接资源。
所述TCP长连接通信平台将终端设备的相关信息、通信记录等信息存储至分布式内存缓存***及数据库服务器中。
所述TCP长连接通信平台采用纯Java6的开发语言,使所述通信平台具有较好的兼容性,可兼容Linux/Windows/Unix/Solaris等操作***。
在本发明的实施例中,对于所述TCP通信模块的TCP消息通信模型说明如下:
异步I/O模型大体上可以分为两种,反应式(Reactive)模型和前摄式(Proactive)模型:
传统的select/epoll/kqueue模型,以及Java NIO模型,都是典型的反应式模型,即应用代码对I/O描述符进行注册,然后等待I/O事件。当某个或某些I/O描述符所对应的I/O设备上产生I/O事件(可读、可写、异常等)时,***将发出通知,于是应用便有机会进行I/O操作并避免阻塞。由于在反应式模型中应用代码需要根据相应的事件类型采取不同的动作,最常见的结构便是嵌套的if{...}else{...}或switch,并常常需要结合状态机来完成复杂的逻辑。
前摄式模型则恰恰相反。在前摄式模型中,应用代码主动地投递异步操作而不管I/O设备当前是否可读或可写。投递的异步I/O操作被***接管,应用代码也并不阻塞在该操作上,而是指定一个回调函数并继续自己的应用逻辑。当该异步操作完成时,***将发起通知并调用应用代码指定的回调函数。在前摄式模型中,程序逻辑由各个回调函数串联起来:异步操作A的回调发起异步操作B,B的回调再发起异步操作C,以此往复。
Reactor反应器和Proactor前摄器同为事件驱动I/O模型,其本质区别在于事件触发时机:Reactor在I/O设备就绪,即可以立即执行I/O调用而无需阻塞时触发,只有这时才可以放心大胆的执行I/O调用;而Proactor则允许在任意时刻发起I/O调用请求,并在I/O调用完成时触发事件。
Proactor可以直接利用***提供的aio、IOCP等异步I/O机制实现。不过鉴于一时之间各种平台上aio接口实现的兼容性、功能、性能等方面的表现都还比较不靠谱,常见平台里还是Win32IOCP对Proactor的原生支持最好。当***不提供原生的异步I/O机制时,也可以使用Reactor模拟实现。本设计方案正是借由Java NIO的Reactor实现的模拟Proactor模型。Boost.Asio的Proactor内核在非NT Win32平台上也是利用select()/kqueue()/epoll等Reactor模拟实现的。
Reactor按照事件触发方式又可分为level-triggered(LT)和edge-triggered(ET)两种,其区别详见epoll的man page。传统的select()/poll()都属于LTReactor;kqueue()则是ET Reactor;epoll则LT/ET语义通吃。
前摄式模型相较于反射式模型往往更加难以编程。然而在具有原生异步I/O支持的操作***中(例如支持IO Completion Port的Win32***),采用前摄式模型往往可以取得比反应式模型更佳的效率。在没有原生异步I/O支持的***中,也可以使用传统的反应式API对前摄式模型予以模拟。在现代的软硬件***中,使用epoll和kqueue的前摄式模型实现同样可以轻松解决C10K问题。前摄式模型的一个显著优势是在实现复杂逻辑的时候不需要借助于状态机。因为状态机已经隐含在由回调串联起来的异步操作链当中了。
在进行TCP/IP网络通信时,网络传输的数据都是二进制数据(byte),而在程序中面向的是JAVA对象,这就需要在发送数据时将JAVA对象编码二进制数据,接收数据时将二进制数据解码为JAVA对象。这就是平台的编解码部份,编解码器是以过滤器的形式安插在过滤器链上的,通信平台一次完整的TCP消息通信模型如下:
如图5、6所示,所述TCP通信模块的TCP消息通信模型包括:
I/O服务器,用于执行与网络对等体的数据I/O操作;由TCP通信平台提供一系列支持不同协议的I/O服务,如TCP/IP、UDP/IP等。实际使用中,开发人员也可以通过接口实现自己的I/O服务。
I/O过滤器,用于进行网络传输过程中软件对象、数据结构到字节流的转换,或者字节流到软件对象、数据结构的转换;多个I/O过滤器串联形成I/O过滤器链,作为消息协议的编解码器,实现IO操作的封装;I/O服务能够传输的是字节流,而上层应用需要的是特定的对象与数据结构,I/O过滤器用来完成这两者之间的转换。I/O过滤器的另外一个重要作用是对输入输出的数据进行处理,满足横切的需求。
I/O处理器:用于执行具体的业务逻辑,对接收到的消息进行处理;
如图4所示,所述TCP长连接通信***还包括:
安全认证模块,用于在信息交互过程中,对信息进行加密和认证处理,从而对用户信息、终端设备信息、服务接入信息进行安全认证。
智能监控模块,用于当监测到某网络套接字挂起或访问延迟时,及时修复该套接字。智能监控模块用于通信平台网络套接字的稳定性和可访问性。
入侵检测模块,用于监控服务器和网络的状态。
本发明的基于Java NIO的TCP长连接通信***基于TCP/IP协议访问并采用C/S技术架构,***通过TCP/IP网络协议与终端设备进行消息交互、数据传输,TCP长连接通信***提供TCP监听端口,终端设备通过移动通信网络与通信平台指定的相关端口进行消息通信并传输或获取相关信息,TCP长连接通信***结合关系型或非关系型数据库管理***、分布式内存缓存***Memcached等实现通信平台的负载分流、接入用户认证、鉴权等操作,同时各类之间通过SpringFramework的控制反转(IOC,Inversion of Control)及面向方面编程(Aspect Oriented Programming,AOP)等技术实现松耦合架构设计。
如图7、8所示,本发明另一方面提供一种TCP长连接通信方法,其特征在于,包括:
终端设备发送TCP连接请求;
负载分流模块动态计算分布式集群内各服务器当前建立TCP连接的有效连接数及资源消耗,接收到新的TCP连接请求时,动态的将当前请求分派到当前负载最小的服务器上,为终端设备分配地址、端口;
终端设备发送数据请求;
TCP通信模块接收终端设备发送的数据请求,根据请求信息调用业务逻辑处理模块中相应的业务逻辑处理接口;
消息、数据管理模块调用业务逻辑处理接口进行消息、数据的管理及运算;
TCP通信模块接收所述消息、数据管理模块返回的运算结果,向终端设备发送TCP通信数据、指令或控制语法。
如图5、6所示,所述TCP通信方法的TCP消息通信流程包括:
I/O服务器执行来自网络对等体的JAVA对象数据输入操作;
I/O过滤器进行网络传输过程中软件对象、数据结构到字节流的转换,将所述JAVA对象数据编码为二进制数据;
I/O处理器执行具体的业务逻辑,对接收到的消息进行处理;
I/O过滤器进行网络传输过程中字节流到软件对象、数据结构的转换,将二进制数据解码为JAVA对象数据;
I/O服务器执行JAVA对象数据的输出操作。
如图9所示,所述的TCP长连接通信方法还包括:
安全认证步骤:在信息交互过程中,对信息进行加密和认证处理。
智能监控步骤:当监测到某网络套接字挂起或访问延迟时,及时修复该套接字。当监测到某网络服务套接字线程挂起或访问延迟时,智能监控模块将及时重启通信服务,确保网络套接字的稳定性和可靠性。
入侵检测步骤:监控服务器和网络的状态。若服务器或网络出现异常,入侵检测模块自动发送邮件或手机短信给运维管理人员,确保服务器或网络的异常尽快修复。例如,若网络遭非法入侵或暴力破解等,反入侵软件将访问者加入黑名单列表以保障服务器及网络的安全;若硬件设备等导致的服务器、网络故障,网络运维管理人员也能第一时间知道当前出现故障的节点和原因,同时备份服务器将接管相应的服务。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

Claims (10)

1.一种TCP长连接通信***,其特征在于,包括: 
TCP通信模块,接收终端设备发送的数据请求,根据请求信息调用业务逻辑处理模块中相应的业务逻辑处理接口,并接收消息、数据管理模块返回的运算结果,向终端设备发送TCP通信数据、指令或控制语法; 
消息、数据管理模块,用于调用业务逻辑处理接口进行消息、数据的管理及运算; 
信息数据存储模块,使用关系型数据库或非关系型数据库,管理设备信息及通信***业务数据; 
分布式内存缓存模块,为开源分布式内存缓存***Memcached; 
负载分流模块,用于动态计算分布式集群内各服务器当前建立TCP连接的有效连接数及资源消耗,接收到新的TCP连接请求时,动态的将当前请求分派到当前负载最小的服务器上。 
2.根据权利要求1所述的TCP长连接通信***,其特征在于: 
所述TCP通信模块的TCP消息通信模型包括: 
I/O服务器,用于执行与网络对等体的数据I/O操作; 
I/O过滤器,用于进行网络传输过程中软件对象、数据结构到字节流的转换,或者字节流到软件对象、数据结构的转换;多个I/O过滤器串联形成I/O过滤器链,作为消息协议的编解码器; 
I/O处理器:用于执行具体的业务逻辑,对接收到的消息进行处理。
3.根据权利要求1所述的TCP长连接通信***,其特征在于,还包括: 
安全认证模块,用于在信息交互过程中,对信息进行加密和认证处理。 
4.根据权利要求1所述的TCP长连接通信***,其特征在于,还包括: 
智能监控模块,用于当监测到某网络套接字挂起或访问延迟时,及时修复该套接字。 
5.根据权利要求1所述的车辆实时视频监控***,其特征在于,还包括:入侵检测模块,用于监控服务器和网络的状态。 
6.一种TCP长连接通信方法,其特征在于,包括: 
终端设备发送TCP连接请求; 
负载分流模块动态计算分布式集群内各服务器当前建立TCP连接的有效连 接数及资源消耗,接收到新的TCP连接请求时,动态的将当前请求分派到当前负载最小的服务器上,为终端设备分配地址、端口; 
终端设备发送数据请求; 
TCP通信模块接收终端设备发送的数据请求,根据请求信息调用业务逻辑处理模块中相应的业务逻辑处理接口; 
消息、数据管理模块调用业务逻辑处理接口进行消息、数据的管理及运算; 
TCP通信模块接收所述消息、数据管理模块返回的运算结果,向终端设备发送TCP通信数据、指令或控制语法。 
7.根据权利要求6所述的TCP长连接通信方法,其特征在于: 
所述TCP通信方法的TCP消息通信流程包括: 
I/O服务器执行来自网络对等体的JAVA对象数据输入操作; 
I/O过滤器进行网络传输过程中软件对象、数据结构到字节流的转换,将所述JAVA对象数据编码为二进制数据; 
I/O处理器执行具体的业务逻辑,对接收到的消息进行处理; 
I/O过滤器进行网络传输过程中字节流到软件对象、数据结构的转换,将二进制数据解码为JAVA对象数据; 
I/O服务器执行JAVA对象数据的输出操作。 
8.根据权利要求6所述的TCP长连接通信方法,其特征在于,还包括: 
安全认证步骤:在信息交互过程中,对信息进行加密和认证处理。 
9.根据权利要求6所述的TCP长连接通信方法,其特征在于,还包括: 
智能监控步骤:当监测到某网络套接字挂起或访问延迟时,及时修复该套接字。 
10.根据权利要求6所述的TCP长连接通信方法,其特征在于,还包括: 
入侵检测步骤:监控服务器和网络的状态。 
CN201310662760.4A 2013-12-09 2013-12-09 一种tcp长连接通信***及方法 Pending CN103618741A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310662760.4A CN103618741A (zh) 2013-12-09 2013-12-09 一种tcp长连接通信***及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310662760.4A CN103618741A (zh) 2013-12-09 2013-12-09 一种tcp长连接通信***及方法

Publications (1)

Publication Number Publication Date
CN103618741A true CN103618741A (zh) 2014-03-05

Family

ID=50169445

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310662760.4A Pending CN103618741A (zh) 2013-12-09 2013-12-09 一种tcp长连接通信***及方法

Country Status (1)

Country Link
CN (1) CN103618741A (zh)

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103986733A (zh) * 2014-06-04 2014-08-13 苏州科达科技股份有限公司 一种网络接口模式和基于该网络接口模式的数据通信方法
CN105262745A (zh) * 2015-10-10 2016-01-20 广州市万世德智能装备科技有限公司 一种基于tcpip通信协议的自定义帧格式驱动方法及程序
CN105391747A (zh) * 2014-09-03 2016-03-09 苏州派尔网络科技有限公司 一种云端智能设备管理方法
CN106102101A (zh) * 2016-08-25 2016-11-09 上海斐讯数据通信技术有限公司 一种无线接入点与无线接入控制器连接的处理方法及***
CN106572132A (zh) * 2015-10-09 2017-04-19 中兴通讯股份有限公司 分发建链方法、装置和***
CN107070752A (zh) * 2017-04-25 2017-08-18 上海斐讯数据通信技术有限公司 一种长连接容量的测试方法及测试***
CN107612760A (zh) * 2017-11-03 2018-01-19 睿石网云(北京)科技有限公司 一种业务服务的中断监测方法及***
CN108848175A (zh) * 2018-06-25 2018-11-20 网宿科技股份有限公司 一种创建tcp连接的方法及装置
CN108984318A (zh) * 2018-06-22 2018-12-11 广州唯品会信息科技有限公司 基于驱动模型的消息投递方法、装置及可读存储介质
CN109067698A (zh) * 2018-06-05 2018-12-21 中国平安人寿保险股份有限公司 一种协议文件的变更方法及设备
CN109831324A (zh) * 2019-01-22 2019-05-31 深圳壹账通智能科技有限公司 基于云技术的服务监控方法、***、设备和存储介质
CN110572474A (zh) * 2019-09-26 2019-12-13 四川长虹电器股份有限公司 用于嵌入式终端长连接通讯的方法
CN111815245A (zh) * 2020-07-21 2020-10-23 上海东普信息科技有限公司 数据通信方法、装置、***、设备及存储介质
CN111970128A (zh) * 2020-10-21 2020-11-20 中国电力科学研究院有限公司 一种高速套接字接收方法及***
CN112073963A (zh) * 2020-09-16 2020-12-11 武汉虹旭信息技术有限责任公司 通信交互数据传输方法及装置
CN113326307A (zh) * 2021-06-15 2021-08-31 浪潮云信息技术股份公司 一种基于Java和Mysql数据库的即时通讯***及方法
CN113452568A (zh) * 2020-03-25 2021-09-28 上汽通用汽车有限公司 车辆通信方法、通信***、车辆以及存储介质
CN113923249A (zh) * 2021-10-12 2022-01-11 工银科技有限公司 一种高性能网络长连接建立方法及装置
CN115086101A (zh) * 2022-05-13 2022-09-20 广东电力通信科技有限公司 一种支持海量modbus tcp连接的分布式***及方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030014650A1 (en) * 2001-07-06 2003-01-16 Michael Freed Load balancing secure sockets layer accelerator
CN101296238A (zh) * 2008-06-17 2008-10-29 杭州华三通信技术有限公司 一种保持安全套接层会话持续性的方法及设备
CN102185900A (zh) * 2011-04-18 2011-09-14 北京新媒传信科技有限公司 一种应用服务平台***和一种开发应用服务的方法
CN102427470A (zh) * 2011-11-10 2012-04-25 山东浪潮齐鲁软件产业股份有限公司 一种云监控中心的架构方法
CN103369601A (zh) * 2013-07-15 2013-10-23 厦门卓讯信息技术有限公司 为手机客户端提供大并发处理及流量控制的方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030014650A1 (en) * 2001-07-06 2003-01-16 Michael Freed Load balancing secure sockets layer accelerator
CN101296238A (zh) * 2008-06-17 2008-10-29 杭州华三通信技术有限公司 一种保持安全套接层会话持续性的方法及设备
CN102185900A (zh) * 2011-04-18 2011-09-14 北京新媒传信科技有限公司 一种应用服务平台***和一种开发应用服务的方法
CN102427470A (zh) * 2011-11-10 2012-04-25 山东浪潮齐鲁软件产业股份有限公司 一种云监控中心的架构方法
CN103369601A (zh) * 2013-07-15 2013-10-23 厦门卓讯信息技术有限公司 为手机客户端提供大并发处理及流量控制的方法

Cited By (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103986733A (zh) * 2014-06-04 2014-08-13 苏州科达科技股份有限公司 一种网络接口模式和基于该网络接口模式的数据通信方法
CN105391747A (zh) * 2014-09-03 2016-03-09 苏州派尔网络科技有限公司 一种云端智能设备管理方法
CN106572132A (zh) * 2015-10-09 2017-04-19 中兴通讯股份有限公司 分发建链方法、装置和***
CN106572132B (zh) * 2015-10-09 2020-12-29 中兴通讯股份有限公司 分发建链方法、装置和***
CN105262745B (zh) * 2015-10-10 2019-05-10 佛山市湘德智能科技有限公司 一种基于tcpip通信协议的自定义帧格式驱动方法及程序
CN105262745A (zh) * 2015-10-10 2016-01-20 广州市万世德智能装备科技有限公司 一种基于tcpip通信协议的自定义帧格式驱动方法及程序
CN106102101A (zh) * 2016-08-25 2016-11-09 上海斐讯数据通信技术有限公司 一种无线接入点与无线接入控制器连接的处理方法及***
CN107070752A (zh) * 2017-04-25 2017-08-18 上海斐讯数据通信技术有限公司 一种长连接容量的测试方法及测试***
CN107070752B (zh) * 2017-04-25 2020-07-24 深圳市世纪福科技有限公司 一种长连接容量的测试方法及测试***
CN107612760A (zh) * 2017-11-03 2018-01-19 睿石网云(北京)科技有限公司 一种业务服务的中断监测方法及***
CN107612760B (zh) * 2017-11-03 2021-08-24 睿石网云(北京)科技有限公司 一种业务服务的中断监测方法及***
CN109067698A (zh) * 2018-06-05 2018-12-21 中国平安人寿保险股份有限公司 一种协议文件的变更方法及设备
CN108984318A (zh) * 2018-06-22 2018-12-11 广州唯品会信息科技有限公司 基于驱动模型的消息投递方法、装置及可读存储介质
CN108984318B (zh) * 2018-06-22 2022-06-07 广州唯品会信息科技有限公司 基于驱动模型的消息投递方法、装置及可读存储介质
CN108848175A (zh) * 2018-06-25 2018-11-20 网宿科技股份有限公司 一种创建tcp连接的方法及装置
CN109831324A (zh) * 2019-01-22 2019-05-31 深圳壹账通智能科技有限公司 基于云技术的服务监控方法、***、设备和存储介质
CN110572474A (zh) * 2019-09-26 2019-12-13 四川长虹电器股份有限公司 用于嵌入式终端长连接通讯的方法
CN110572474B (zh) * 2019-09-26 2021-09-21 四川长虹电器股份有限公司 用于嵌入式终端长连接通讯的方法
CN113452568A (zh) * 2020-03-25 2021-09-28 上汽通用汽车有限公司 车辆通信方法、通信***、车辆以及存储介质
CN111815245A (zh) * 2020-07-21 2020-10-23 上海东普信息科技有限公司 数据通信方法、装置、***、设备及存储介质
CN112073963A (zh) * 2020-09-16 2020-12-11 武汉虹旭信息技术有限责任公司 通信交互数据传输方法及装置
CN111970128B (zh) * 2020-10-21 2021-02-02 中国电力科学研究院有限公司 一种高速套接字接收方法及***
CN111970128A (zh) * 2020-10-21 2020-11-20 中国电力科学研究院有限公司 一种高速套接字接收方法及***
CN113326307A (zh) * 2021-06-15 2021-08-31 浪潮云信息技术股份公司 一种基于Java和Mysql数据库的即时通讯***及方法
CN113923249A (zh) * 2021-10-12 2022-01-11 工银科技有限公司 一种高性能网络长连接建立方法及装置
CN115086101A (zh) * 2022-05-13 2022-09-20 广东电力通信科技有限公司 一种支持海量modbus tcp连接的分布式***及方法
CN115086101B (zh) * 2022-05-13 2024-04-12 广东电力通信科技有限公司 一种支持海量modbus tcp连接的分布式***及方法

Similar Documents

Publication Publication Date Title
CN103618741A (zh) 一种tcp长连接通信***及方法
US10868767B2 (en) Data transmission method and apparatus in optoelectronic hybrid network
CN104753817B (zh) 一种云计算消息队列服务本地模拟方法和***
CN102761864A (zh) 一种数据传输的方法、***及设备
US12034604B2 (en) MQTT protocol simulation method and simulation device
CN105516221A (zh) 信息推送***及方法
CN103209392A (zh) 一种跨进程多应用消息推送方法及装置
CN102932453A (zh) 一种基于云计算的数据中心安全体系实现方法
CN102196011A (zh) 一种利用推送服务提供应用信息的方法及***
WO2023056713A1 (zh) 物联网卡的云平台绑定方法、***、设备及介质
WO2011044786A1 (zh) 一种统一消息调度***、业务消息通知方法及***
KR20220074971A (ko) 블록체인 기반 데이터 프로세싱 방법, 장치 및 디바이스, 그리고 판독가능 저장 매체
CN104994061A (zh) 智能变电站过程层交换机mms安全通信的装置及方法
CN112954392A (zh) 一种自动实现视频格式转换处理的平台
CN110365729A (zh) 响应式消息推送、接收方法和响应式消息推送***
Sun et al. Research on distributed feeder automation communication based on XMPP and GOOSE
WO2024103943A1 (zh) 一种业务处理方法、装置、存储介质及设备
CN108092993A (zh) 一种网络数据传输控制方法和***
CN109831404A (zh) 一种兼容多终端的即时通讯***及方法
CN116192863B (zh) 微服务流量处理方法、dpu服务网格部署方法及***
WO2023179102A1 (zh) 一种应用可信身份的确认方法、管理单元及设备
CN115361455B (zh) 一种数据传输存储方法、装置以及计算机设备
CN111342932B (zh) 数据传输的方法、装置、设备及计算机可读存储介质
CN114070606B (zh) 一种基于国产操作***的网络安全终端装置及工作方法
Yan et al. Design and Application of Security Gateway for Transmission Line Panoramic Monitoring Platform based on Microservice Architecture

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20140305