CN103297390A - 服务器反向连接客户端的实现方法 - Google Patents
服务器反向连接客户端的实现方法 Download PDFInfo
- Publication number
- CN103297390A CN103297390A CN2012100454664A CN201210045466A CN103297390A CN 103297390 A CN103297390 A CN 103297390A CN 2012100454664 A CN2012100454664 A CN 2012100454664A CN 201210045466 A CN201210045466 A CN 201210045466A CN 103297390 A CN103297390 A CN 103297390A
- Authority
- CN
- China
- Prior art keywords
- client
- server end
- message
- server
- operating state
- 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
Links
Images
Landscapes
- Computer And Data Communications (AREA)
Abstract
一种用于实现网络服务器反向连接客户端的设计方案,该设计允许两个或者多个位于不同IP网段内的客户端在不知道对方端口号的情况下进行一对一,一对多,多对一及多对多等不同模式的网络通信。在整个通信过程中,服务器会负责循环检查并处理新的客户端的接入请求,同时并对所有已连接的客户端进行统一的资源管理,状态探测,数据嗅探,请求报文的检验及转发等任务的操作。
Description
技术领域
本发明属于计算机网络数据通信技术领域,该发明采用TCP/IP半双工异步通信机制及I/O复用模型技术。它能够根据对服务器端口上的请求进行监听和检索进而实现反向连接客户端,并实现数据快速转发的目的。
背景技术
目前,大多数的网络通信连接方式还留守在较为传统的服务器到客户端或者P2P对等模式这两种类型当中。其中,前者类型的典型代表模式为C/S及B/S体系结构,后者类型的典型代表模式为对等网络结构。
这两种类型都有自己的优势和劣势,前者中的C/S结构的最大优势在于它可以充分的发挥客户端CPU的处理效率,大大地降低应用服务器的运行负荷,使得服务器的响应速度明显加快,而它的劣势在于数据库服务器为了能够保持两地客户端数据的同步,因而就需要实时地保证两地数据库服务器的在线运行,这就加大了网管的工作量和复杂度;而与它归属同一类型的B/S结构,其特色优势在于服务器可以对客户端数据进行集中化管理,而无需频繁的进行区域级服务器的数据同步,因而它保证了数据的一致性和实时性,而它的劣势在于因为服务器要对所有的数据进行集中化管理,所以服务器需要承受的压力将会以指数倍的速度加重,这时如果数据库服务器发生崩溃,那么后果将会不堪设想,因此,企业就需要添置更多高配置的服务器来应对这种“危机”,不过这种解决方案最终所导致的后果将会是大幅度的提高企业服务器后期的维护成本。
P2P作为目前的一种较为新型的网络通信方式,于1997年7月正式步入发展阶段。该通信方式最大优势在于每个P2P客户端即可作为资源的索取者又可以作为资源和服务的提供者,即一端担任两重角色,这就使得互联网上的信息内容变得更为丰富,网络搜索范围更为宽广,大规模的分布计算更为快速。不过,此种通信方式也存在很大的劣势,例如运行结构很容易引发错误和故障,P2P网络共享的安全标准不统一,存在较大的安全隐患。另外,也会加大企业的运营成本和风险。再加之P2P网络用户众多,因此也会造成网络垃圾数据的增多,从而降低了网络搜索的精准度,最终造成的结果就是吞噬了大量的网络带宽,降低了局域网的办公效率。
发明内容
本发明是在以上两种原有的网络通信服务类型的基础上,后经个人的改造创新而提出来的一种全新的网络连接通信服务类型,它旨在降低服务器数据处理负荷,提高客户端通信效率,加强网络通信安全,缩减企业服务运营成本。它具体的实现内容如下:
当客户端连接服务器成功以后,服务器端会在指定的时间段内给客户端发送过去一个探测报文,然后开始等待对方的应答。如果对方没有应答,服务器端则会继续探测,直到探测次数超出限制为止,此时,服务器端则会选择主动关闭掉等待已经超时了的客户端;否则,服务器端则会重置该客户端的工作状态,并开始检查该客户端是否有请求报文到来?如果有请求报文到来的话,服务器端则会解析该报文,然后再根据解析结果从中获取到它想要到达的目的客户端的主机地址,进而再来判断这个目的端主机是否已经上线?如果没有上线,服务器端则会丢弃该报文,并转而告知该客户端此报文转发失败了;否则的话,服务器端则会把该报文放置到目的客户端的报文缓冲区里面,然后通知它来取走。当目的客户端取走别的客户端发给自己的请求报文以后,它会按照此报文中的地址然后立即将其转发出去,这时便完整的完成了一次报文的转发过程。在此过程中,如果报文转发失败的话,服务器端则会重置目的客户端的工作状态,继而给它发送去一个探测报文,并等待它的应答,接着,继续开始重复以上步骤中所述的工作内容。
从以上的表述当中可以明显地看出,本发明将服务器与客户端各自的业务流程清晰地分离开来了,这样以来,我们就无需在服务器上面对数据库的部署和调优等工作付诸过多的精力,转而可以将这部分的工作完全迁移到另一个经指定过的客户端上面去,让它代为处理。由此以来,就能够大幅度地提升服务器的响应速度,保证数据的实时性及一致性,降低服务器集群维护成本,克服各种因CPU处理性能不足而造成的诸多瓶颈问题。
附图说明
图1为本发明方案实施的系统框架图,图中各标号的含义为:1表示服务器,2表示位于不同网段内的客户端主机,3表示服务器发送给目的客户端的探测及远端主机的请求报文,4表示客户端主机发往服务器的连接、请求及应答报文等数据内容。
图2为本发明软件实施的程序流程图。
具体实施方式
按照附图1中的框架设计方案,本发明在实施过程中的首要任务就是需要打通不同网段主机之间的通信道路。当该步目标实现以后,服务器将会同时开始扮演监护者和转发者两种任务角色。接下来,服务器将会对客户端队列中已连接的客户机进行统一的管理,并让处在不同网段内的两端客户端主机能够间接地实现通信。
在监护者和转发者两种任务工作模式里,服务器将会对客户端的请求报文进行转发,并对它的工作状态进行实时检测,以保证通信服务的畅通和有效,其具体详细的实施过程如附图2中的软件流程图所示。
如果在通信的过程中出现客户端请求失败的情况,那么它的报文也将会被服务器丢弃掉。这个过程当中,服务器并不会明确地告诉客户端它的请求已经失败了,因此,客户端就需要在短时间内检测自己的这个请求报文是否有回复,如果没有回复,那么它就会收到来自服务器端的一个探测报文。注意,这个探测报文是在服务器端丢弃掉客户端请求失败的报文,并在重置过它的工作状态,后又在等待客户端应答超时之后才发出去的,因此,客户端在请求失败的时候它首先收到的报文也许并不是来自目的客户端的回复报文,也有可能为服务器端的探测报文。所以,在实施客户端软件设计的时候需要多加注意这点。
Claims (6)
1.根据路由表中提供的不同网段的IP地址及对应的端口号,然后分别建立起一个基于服务器端的非阻塞模式的TCP流套接字接口,接着,设置已建立成功的服务器端套接字的长连接选项参数,使其进入长连接工作模式。
2.根据权利要求1所完成的情况,然后对客户端队列进行初始化。
3.根据权利要求2所完成的情况,然后开始进入到服务器长轮询工作状态,在长轮询工作状态里,服务器端会在绑定的端口上监听是否有新的客户端接入?如果有接入,则把新接入的客户端加入到客户端队列的尾部位置上;否则,则检查当前已建立连接的客户端的总数量,如果总数量为0,则开始监听下一个端口上是否有新的客户端接入?否则的话,则开始嗅探当前已连接的客户端里是否有请求报文到来?如果有报文,服务器端则会开始对此报文进行格式解析,以此来获悉它所要到达的目的客户端的主机地址信息,如果获取地址信息失败,服务器端则会丢弃该报文,并且会将拥有此报文的客户端的工作状态置为“主机不可达”;如果获取成功,则该报文将会被放到目的客户端的包裹缓冲区里面,并且服务器端会将此目的客户端的工作状态置为“请求中”,如果客户端没有报文,并且服务器端也已经等待超时的话,那么服务器端将会将此客户端的工作状态置为“等待中”。
4.根据权利要求3所述的内容,然后开始进入到服务器监控工作状态,在监控工作状态里,服务器端会负责检查每个已连接客户端当前所在的状态,如果检查到的状态类型为“主机不可达”,则服务器端就会立即给处在此状态上的客户端发去一个探测报文,然后开始进入到该客户端的“等待中”的状态里持续的等待它的应答;如果该客户端在服务器端重复探测指定的次数之后还是没有应答的话,服务器端则会认定该客户端已经下线,继而主动地去关闭此连接,并释放掉相应的内存资源;如果服务器端在重复探测指定的次数之内收到了该客户端发来的应答报文的话,那么服务器端则会立即重置该客户端当前的工作状态,然后开始准备探测下一个客户端的工作状态类型,如果服务器端检查到的状态类型为“请求中”,则服务器端就会把该客户端的报文进行一下解析,以获取它所要到达的目的客户端的主机地址,最后,服务器端会根据这个地址再将此报文转发给相应的客户端。
5.根据权利要求3,4中所述的内容,服务器端会负责对通信过程中所传输的报文格式的有效性进行严格的判断,以防止网络黑客的非法潜入,进而往服务器端注入大批量恶意数据,造成网络阻塞或瘫痪,导致数据传输失败。
6.根据权利要求5所述,在本套方案里,服务器端会对报文格式的有效性进行智能判断,如敏感数据是否已经经过加密?如果没有,服务器端则会判断报文中的数据内容是否为敏感数据类型,如果是,服务器端则丢弃该报文然后重复权利要求3中所述的内容;如果不是,服务器端则会重复权利要求3,4中所述的内容,继续开始工作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012100454664A CN103297390A (zh) | 2012-02-27 | 2012-02-27 | 服务器反向连接客户端的实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2012100454664A CN103297390A (zh) | 2012-02-27 | 2012-02-27 | 服务器反向连接客户端的实现方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103297390A true CN103297390A (zh) | 2013-09-11 |
Family
ID=49097718
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2012100454664A Pending CN103297390A (zh) | 2012-02-27 | 2012-02-27 | 服务器反向连接客户端的实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103297390A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104954327A (zh) * | 2014-03-27 | 2015-09-30 | 东华软件股份公司 | 用于终端连接控制的服务器及方法、终端及方法、和系统 |
CN106941522A (zh) * | 2017-03-13 | 2017-07-11 | 广州五舟科技股份有限公司 | 轻量级分布式计算平台及其数据处理方法 |
CN108092993A (zh) * | 2017-12-29 | 2018-05-29 | 税友软件集团股份有限公司 | 一种网络数据传输控制方法和系统 |
CN111193796A (zh) * | 2019-12-26 | 2020-05-22 | 深圳证券交易所 | 基于延迟队列的会话保持方法、服务器及可读存储介质 |
CN111241523A (zh) * | 2020-01-08 | 2020-06-05 | 中国联合网络通信集团有限公司 | 认证处理方法、装置、设备和存储介质 |
CN111511041A (zh) * | 2019-01-31 | 2020-08-07 | 大唐移动通信设备有限公司 | 一种远程连接方法及装置 |
CN112988416A (zh) * | 2021-03-02 | 2021-06-18 | 杭州迪普科技股份有限公司 | 报文处理方法、装置、设备及计算机可读存储介质 |
CN113395355A (zh) * | 2021-07-06 | 2021-09-14 | 上海通联金融服务有限公司 | 复数长连接双通道后台的报文转接系统 |
CN115361442A (zh) * | 2022-10-18 | 2022-11-18 | 北京京东拓先科技有限公司 | 一种消息推送方法及装置、存储介质及电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1941722A (zh) * | 2006-08-29 | 2007-04-04 | 杭州华为三康技术有限公司 | 通过探测客户端维护dhcp安全特性表的方法与装置 |
CN101431669A (zh) * | 2008-12-10 | 2009-05-13 | 北京中星微电子有限公司 | 视频监控系统及该系统中建立媒体流传输连接的控制方法 |
CN101577723A (zh) * | 2009-06-03 | 2009-11-11 | 杭州华三通信技术有限公司 | 一种防止邻居发现协议报文攻击的方法及装置 |
CN101576848A (zh) * | 2008-05-09 | 2009-11-11 | 北京世纪拓远软件科技发展有限公司 | 模拟系统 |
-
2012
- 2012-02-27 CN CN2012100454664A patent/CN103297390A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1941722A (zh) * | 2006-08-29 | 2007-04-04 | 杭州华为三康技术有限公司 | 通过探测客户端维护dhcp安全特性表的方法与装置 |
CN101576848A (zh) * | 2008-05-09 | 2009-11-11 | 北京世纪拓远软件科技发展有限公司 | 模拟系统 |
CN101431669A (zh) * | 2008-12-10 | 2009-05-13 | 北京中星微电子有限公司 | 视频监控系统及该系统中建立媒体流传输连接的控制方法 |
CN101577723A (zh) * | 2009-06-03 | 2009-11-11 | 杭州华三通信技术有限公司 | 一种防止邻居发现协议报文攻击的方法及装置 |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104954327A (zh) * | 2014-03-27 | 2015-09-30 | 东华软件股份公司 | 用于终端连接控制的服务器及方法、终端及方法、和系统 |
CN104954327B (zh) * | 2014-03-27 | 2019-02-22 | 东华软件股份公司 | 用于终端连接控制的服务器及方法、终端及方法、和系统 |
CN106941522B (zh) * | 2017-03-13 | 2019-12-10 | 广州五舟科技股份有限公司 | 轻量级分布式计算平台及其数据处理方法 |
CN106941522A (zh) * | 2017-03-13 | 2017-07-11 | 广州五舟科技股份有限公司 | 轻量级分布式计算平台及其数据处理方法 |
CN108092993B (zh) * | 2017-12-29 | 2020-12-18 | 税友软件集团股份有限公司 | 一种网络数据传输控制方法和系统 |
CN108092993A (zh) * | 2017-12-29 | 2018-05-29 | 税友软件集团股份有限公司 | 一种网络数据传输控制方法和系统 |
CN111511041A (zh) * | 2019-01-31 | 2020-08-07 | 大唐移动通信设备有限公司 | 一种远程连接方法及装置 |
CN111511041B (zh) * | 2019-01-31 | 2022-03-29 | 大唐移动通信设备有限公司 | 一种远程连接方法及装置 |
CN111193796A (zh) * | 2019-12-26 | 2020-05-22 | 深圳证券交易所 | 基于延迟队列的会话保持方法、服务器及可读存储介质 |
CN111241523A (zh) * | 2020-01-08 | 2020-06-05 | 中国联合网络通信集团有限公司 | 认证处理方法、装置、设备和存储介质 |
CN111241523B (zh) * | 2020-01-08 | 2022-07-26 | 中国联合网络通信集团有限公司 | 认证处理方法、装置、设备和存储介质 |
CN112988416A (zh) * | 2021-03-02 | 2021-06-18 | 杭州迪普科技股份有限公司 | 报文处理方法、装置、设备及计算机可读存储介质 |
CN112988416B (zh) * | 2021-03-02 | 2023-06-30 | 杭州迪普科技股份有限公司 | 报文处理方法、装置、设备及计算机可读存储介质 |
CN113395355A (zh) * | 2021-07-06 | 2021-09-14 | 上海通联金融服务有限公司 | 复数长连接双通道后台的报文转接系统 |
CN115361442A (zh) * | 2022-10-18 | 2022-11-18 | 北京京东拓先科技有限公司 | 一种消息推送方法及装置、存储介质及电子设备 |
CN115361442B (zh) * | 2022-10-18 | 2023-03-07 | 北京京东拓先科技有限公司 | 一种消息推送方法及装置、存储介质及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103297390A (zh) | 服务器反向连接客户端的实现方法 | |
WO2020253786A1 (zh) | 一种去中心化处理的方法、通信代理、主机以及存储介质 | |
US8677011B2 (en) | Load distribution system, load distribution method, apparatuses constituting load distribution system, and program | |
US9794370B2 (en) | Systems and methods for distributed network-aware service placement | |
CN105207853B (zh) | 一种局域网监控管理方法 | |
CN101247353B (zh) | 流老化方法及网络设备 | |
US10148565B2 (en) | OPENFLOW communication method and system, controller, and service gateway | |
CN103036732B (zh) | 一种网络监控处理的方法、系统和设备 | |
JP2015503274A (ja) | 仮想レーンの動的割り当てを用いてファットツリートポロジにおける輻輳を緩和するためのシステムおよび方法 | |
KR101480126B1 (ko) | 네트워크 기반 고성능 sap 모니터링 시스템 및 방법 | |
CN104394080A (zh) | 实现安全组功能的方法及装置 | |
Hyun et al. | Real‐time and fine‐grained network monitoring using in‐band network telemetry | |
US20090316600A1 (en) | Telecommunications system and server apparatus | |
CN104468633B (zh) | 一种sdn南向安全代理产品 | |
CN104270302A (zh) | 在线订单的传送系统及传送方法 | |
CN106533894B (zh) | 一种全新的安全的即时通信体系 | |
CN106993286A (zh) | 一种无线网中无线接入设备接入云端ac的方法及系统 | |
CN104463670A (zh) | 一种基于Websocket的银行前置交易系统的搭建方法 | |
Wang et al. | CDLB: a cross-domain load balancing mechanism for software defined networks in cloud data centre | |
Turchetti et al. | NFV‐FD: Implementation of a failure detector using network virtualization technology | |
CN103516794A (zh) | 一种分布式服务器的网络架构及其实现方法 | |
CN103428269A (zh) | 一种分布式环境下的资源快速部署方法 | |
CN107094157A (zh) | 一种基于sdn的radius安全认证方法及系统 | |
US11595419B2 (en) | Communication monitoring system, communication monitoring apparatus, and communication monitoring method | |
CN101657994B (zh) | 发现分布式通信网络中的断开组件 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20130911 |