CN104980456B - 传输业务的方法、中间节点、终端和服务器 - Google Patents
传输业务的方法、中间节点、终端和服务器 Download PDFInfo
- Publication number
- CN104980456B CN104980456B CN201410132226.7A CN201410132226A CN104980456B CN 104980456 B CN104980456 B CN 104980456B CN 201410132226 A CN201410132226 A CN 201410132226A CN 104980456 B CN104980456 B CN 104980456B
- Authority
- CN
- China
- Prior art keywords
- server
- request information
- terminal
- business request
- business
- 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
- 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/163—In-band adaptation of TCP data exchange; In-band control procedures
-
- 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/166—IP fragmentation; TCP segmentation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种传输业务的方法、中间节点、终端和服务器。该方法包括:接收终端发送的用于请求服务器提供业务服务的第一业务请求消息;根据该第一业务请求消息,确定第二业务请求消息;当确定该第二业务请求消息的传输控制协议TCP包长度与该第一业务请求消息的TCP包长度不同时,向该终端和/或该服务器发送用于指示断开该终端与该服务器之间的TCP连接的指示信息。本发明实施例的传输业务的方法、中间节点、终端和服务器,能够避免中间节点在同一个TCP连接下对TCP包长度的重新计算和修改,从而能够有效降低对中间节点性能的影响。
Description
技术领域
本发明涉及通信领域,尤其涉及通信领域中传输业务的方法、中间节点、终端和服务器。
背景技术
随着智能终端计算能力的提升与移动网络传输能力的提升,越来越多的应用程序由桌面终端迁移到移动终端,例如邮箱应用程序由计算机迁移到手机上。但移动网络中终端的业务传输主要是基于用户手机号码、运营商分配的移动网络私网IP等信息进行的,而传统互联网中终端的IT业务传输是基于注册的用户名、互联网的公网IP等信息进行的。当传统的IT业务与移动网络融合时,就需要移动网络用户标识与IT业务标识进行融合与相互识别。
当前技术中,当需要移动网络用户标识时,通常采用由移动客户端获取移动网络用户标识后发送到网络侧的应用服务器的方式进行信息交互,但这样的信息交互存在以下三方面的问题,一是移动客户端可能无法获取到全部移动网络用户标识信息;二是移动客户端与应用服务器不是同一厂家时,信息交互、版本升级困难;三是移动客户端与应用服务器进行网络层消息互通会增加软件开发量,延迟业务发布周期。
为了解决上述问题,现有技术中采用中间网络设备(例如网关设备)解析应用层消息,将终端的相关移动网络用户标识添加到终端向服务器发送的业务请求报文中,例如终端发起超文本传输协议(HyperText Transfer Protocol,简称为“HTTP”)业务请求报文,网关设备检测到该HTTP业务请求报文,并对该HTTP业务请求报文进行HTTP头增强,将包括该终端的移动网络用户标识的HTTP业务请求报文发送给服务器。
但是,HTTP是基于传输控制协议(Transmission Control Protocol,简称为“TCP”)传输的,且HTTP v1.1及以后的HTTP版本都是使用TCP长连接进行消息传递,即始终基于初始建立的TCP连接进行业务报文的传输,同一个TCP连接下的TCP包序号是顺序连接的,因此当网关设备对HTTP请求报文进行HTTP头扩展后,在同一个TCP连接下,网关设备需要对后续所有业务报文的TCP包的包长度(起始包序号与终止包序号之差)进行重新计算与修改,频繁、大量的TCP包长度的重新计算与修改会严重影响网关设备的性能。
发明内容
本发明提供了一种传输业务的方法、中间节点、终端和服务器,能够降低对中间节点性能的影响。
第一方面提供了一种中间节点,该中间节点包括:
接收器,用于接收终端发送的用于请求服务器提供业务服务的第一业务请求消息;
处理器,用于根据所述接收器接收的所述第一业务请求消息,确定第二业务请求消息;
发送器,用于当确定所述处理器确定的所述第二业务请求消息的传输控制协议TCP包长度与所述第一业务请求消息的TCP包长度不同时,向所述终端和/或所述服务器发送用于指示断开所述终端与所述服务器之间的TCP连接的指示信息。
结合第一方面,在第一方面的第一种可能的实现方式中,所述处理器确定的所述第二业务请求消息包括下列信息中的至少一种信息:用户名、用户密码、用户上下文、用户公网互联网协议IP地址、用户私网IP地址、网络接入点名称APN、网络设备名称和网络设备编号。
结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,向所述服务器发送所述第二业务请求消息,所述第二业务请求消息包括所述指示信息。
结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第三种可能的实现方式中,所述发送器具体用于,向所述服务器发送所述第二业务请求消息;
所述接收器,用于接收所述服务器根据所述第二业务请求消息发送的第二业务响应消息;
所述发送器用于,根据所述接收器接收的所述第二业务响应消息,向所述终端发送第一业务响应消息,所述第一业务响应消息包括所述指示信息。
结合第一方面或第一方面的第一种至第三种可能的实现方式中的任意一种可能的实现方式,在第一方面的第四种可能的实现方式中,所述接收器还用于,接收所述终端在与所述服务器重新建立TCP连接之后发送的第三业务请求消息,所述第三业务请求消息与所述第一业务请求消息对应相同的会话;
所述发送器还用于,向所述服务器发送所述第三业务请求消息。
第二方面,提供了一种终端,该终端包括:
处理器,用于建立与服务器之间的传输控制协议TCP连接;
发送器,用于向中间节点发送用于请求所述服务器提供业务服务的第一业务请求消息,以便于所述中间节点根据所述第一业务请求消息,向所述服务器发送第二业务请求消息;
接收器,用于接收所述中间节点在确定所述第二业务请求消息的TCP包长度与所述第一业务请求消息的TCP包长度不同时,发送的用于指示断开所述TCP连接的指示信息;
所述处理器还用于,根据所述接收器接收的所述指示信息,断开所述TCP连接。
结合第二方面,在第二方面的第一种可能的实现方式中,所述接收器具体用于,接收所述中间节点发送的第一业务响应消息,所述第一业务响应消息用于指示所述服务器关于提供业务服务的相关信息,所述第一业务响应消息还包括所述指示信息。
结合第二方面或第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述处理器还用于,重新建立与所述服务器之间的TCP连接;
所述发送器还用于,向所述中间节点发送用于请求所述服务器提供业务服务的第三业务请求消息,所述第三业务请求消息与所述第一业务请求消息对应相同的会话。
第三方面提供了一种服务器,该服务器包括:
接收器,处理器,发送器;
所述接收器,用于接收中间节点根据终端的用于请求服务器提供业务服务的第一业务请求消息发送的第二业务请求消息;
所述处理器,用于断开与所述终端之间的传输控制协议TCP连接,或者通过所述发送器向所述中间节点发送用于指示所述终端断开所述TCP连接的第一指示信息,以便实现断开所述TCP连接;
所述接收器,还用于根据与所述终端重新建立的TCP连接,接收所述中间节点发送的从所述终端接收的第三业务请求消息,所述第三业务请求消息与所述第一业务请求消息对应相同的会话。
结合第三方面,在第三方面的第一种可能的实现方式中,所述处理器具体用于,根据所述中间节点在确定所述第二业务请求消息的传输控制协议TCP包长度与所述第一业务请求消息的TCP包长度不同时,发送的用于指示断开所述TCP连接的第二指示信息,断开所述TCP连接。
结合第三方面的第一种可能的实现方式,在第三方面的第二种可能的实现方式中,所述接收器接收的所述第二业务请求消息包括所述第二指示信息;
所述处理器具体用于,根据所述接收器接收的所述第二业务请求消息,断开所述TCP连接。
结合第三方面,在第三方面的第三种可能的实现方式中,所述处理器具体用于,当确定所述第二业务请求消息中包括下列信息中的至少一种信息:用户名、用户密码、用户上下文、用户公网互联网协议IP地址、用户私网IP地址、网络接入点名称APN、网络设备名称和网络设备编号时,断开所述TCP连接。
结合第三方面,在第三方面的第四种可能的实现方式中,所述处理器具体用于,当确定所述第二业务请求消息中包括下列信息中的至少一种信息:用户名、用户密码、用户上下文、用户公网互联网协议IP地址、用户私网IP地址、网络接入点名称APN、网络设备名称和网络设备编号时,通过所述发送器向所述中间节点发送所述第一指示信息。
结合第三方面的第四种可能的实现方式,在第三方面的第五种可能的实现方式中,所述处理器具体用于,根据所述接收器接收的所述第二业务请求消息,通过所述发送器向所述中间发送第二业务响应消息,所述第二业务响应消息包括所述第一指示信息。
第四方面提供了一种传输业务的方法,该方法包括:
接收终端发送的用于请求服务器提供业务服务的第一业务请求消息;
根据所述第一业务请求消息,确定第二业务请求消息;
当确定所述第二业务请求消息的传输控制协议TCP包长度与所述第一业务请求消息的TCP包长度不同时,向所述终端和/或所述服务器发送用于指示断开所述终端与所述服务器之间的TCP连接的指示信息。
结合第四方面,在第四方面的第一种可能的实现方式中,所述第二业务请求消息包括下列信息中的至少一种信息:用户名、用户密码、用户上下文、用户公网互联网协议IP地址、用户私网IP地址、网络接入点名称APN、网络设备名称和网络设备编号。
结合第四方面或第四方面的第一种可能的实现方式,在第四方面的第二种可能的实现方式中,所述向所述终端和/或所述服务器发送用于指示断开所述终端与所述服务器之间的TCP连接的指示信息,包括:
向所述服务器发送所述第二业务请求消息,所述第二业务请求消息包括所述指示信息。
结合第四方面或第四方面的第一种可能的实现方式,在第四方面的第三种可能的实现方式中,所述向所述终端和/或所述服务器发送用于指示断开所述终端与所述服务器之间的TCP连接的指示信息,包括:
向所述服务器发送所述第二业务请求消息;
接收所述服务器根据所述第二业务请求消息发送的第二业务响应消息;
根据所述第二业务响应消息,向所述终端发送第一业务响应消息,所述第一业务响应消息包括所述指示信息。
结合第四方面或第四方面的第一种至第三种可能的实现方式中的任意一种可能的实现方式,在第四方面的第四种可能的实现方式中,该方法还包括:
接收所述终端在与所述服务器重新建立TCP连接之后发送的第三业务请求消息,所述第三业务请求消息与所述第一业务请求消息对应相同的会话;
向所述服务器发送所述第三业务请求消息。
第五方面,提供了一种传输业务的方法,该方法包括:
建立与服务器之间的传输控制协议TCP连接;
向中间节点发送用于请求所述服务器提供业务服务的第一业务请求消息,以便于所述中间节点根据所述第一业务请求消息,向所述服务器发送第二业务请求消息;
接收所述中间节点在确定所述第二业务请求消息的TCP包长度与所述第一业务请求消息的TCP包长度不同时,发送的用于指示断开所述TCP连接的指示信息;
根据所述指示信息,断开所述TCP连接。
结合第五方面,在第五方面的第一种可能的实现方式中,所述接收所述中间节点在确定所述第二业务请求消息的TCP包长度与所述第一业务请求消息的TCP包长度不同时,发送的用于指示断开所述TCP连接的指示信息,包括:
接收所述中间节点发送的第一业务响应消息,所述第一业务响应消息用于指示所述服务器关于提供业务服务的相关信息,所述第一业务响应消息还包括所述指示信息。
结合第五方面或第五方面的第一种可能的实现方式,在第五方面的第二种可能的实现方式中,所述方法还包括:
重新建立与所述服务器之间的TCP连接;
向所述中间节点发送用于请求所述服务器提供业务服务的第三业务请求消息,所述第三业务请求消息与所述第一业务请求消息对应相同的会话。
第六方面提供了一种传输业务的方法,该方法包括:
接收中间节点根据终端的用于请求服务器提供业务服务的第一业务请求消息发送的第二业务请求消息;
断开与所述终端之间的传输控制协议TCP连接,或者向所述中间节点发送用于指示所述终端断开所述TCP连接的第一指示信息,以便实现断开所述TCP连接;
根据与所述终端重新建立的TCP连接,接收所述中间节点发送的从所述终端接收的第三业务请求消息,所述第三业务请求消息与所述第一业务请求消息对应相同的会话。
结合第六方面,在第六方面的第一种可能的实现方式中,所述断开与所述终端之间的传输控制协议TCP连接,包括:
根据所述中间节点在确定所述第二业务请求消息的传输控制协议TCP包长度与所述第一业务请求消息的TCP包长度不同时,发送的用于指示断开所述TCP连接的第二指示信息,断开所述TCP连接。
结合第六方面的第一种可能的实现方式,在第六方面的第二种可能的实现方式中,所述第二业务请求消息包括所述第二指示信息;
所述断开所述TCP连接,包括:
根据所述第二业务请求消息,断开所述TCP连接。
结合第六方面,在第六方面的第三种可能的实现方式中,所述断开与所述终端之间的传输控制协议TCP连接,包括:
当确定所述第二业务请求消息中包括下列信息中的至少一种信息:用户名、用户密码、用户上下文、用户公网互联网协议IP地址、用户私网IP地址、网络接入点名称APN、网络设备名称和网络设备编号时,断开所述TCP连接。
结合第六方面,在第六方面的第四种可能的实现方式中,所述向所述中间节点发送用于指示所述终端断开所述TCP连接的第一指示信息,包括:
当确定所述第二业务请求消息中包括下列信息中的至少一种信息:用户名、用户密码、用户上下文、用户公网互联网协议IP地址、用户私网IP地址、网络接入点名称APN、网络设备名称和网络设备编号时,向所述中间节点发送所述第一指示信息。
结合第六方面的第四种可能的实现方式,在第六方面的第五种可能的实现方式中,所述向所述中间节点发送所述第一指示信息,包括:
根据所述第二业务请求消息向所述中间发送第二业务响应消息,所述第二业务响应消息包括所述第一指示信息。
第七方面提供了一种中间节点,该方法包括:
接收模块,用于接收终端发送的用于请求服务器提供业务服务的第一业务请求消息;
确定模块,用于根据所述接收模块接收的所述第一业务请求消息,确定第二业务请求消息;
发送模块,用于当确定所述确定模块确定的所述第二业务请求消息的传输控制协议TCP包长度与所述第一业务请求消息的TCP包长度不同时,向所述终端和/或所述服务器发送用于指示断开所述终端与所述服务器之间的TCP连接的指示信息。
结合第七方面,在第七方面的第一种可能的实现方式中,所述确定模块确定的所述第二业务请求消息包括下列信息中的至少一种信息:用户名、用户密码、用户上下文、用户公网互联网协议IP地址、用户私网IP地址、网络接入点名称APN、网络设备名称和网络设备编号。
结合第七方面或第七方面的第一种可能的实现方式,在第七方面的第二种可能的实现方式中,所述发送模块具体用于,向所述服务器发送所述第二业务请求消息,所述第二业务请求消息包括所述指示信息。
结合第七方面或第七方面的第一种可能的实现方式,在第七方面的第三种可能的实现方式中,所述发送模块,包括:
发送单元,用于向所述服务器发送所述第二业务请求消息;
接收单元,用于接收所述服务器根据所述发送单元发送的所述第二业务请求消息发送的第二业务响应消息;
所述发送单元,用于根据所述接收单元接收的所述第二业务响应消息,向所述终端发送第一业务响应消息,所述第一业务响应消息包括所述指示信息。
结合第七方面或第七方面的第一种至第三种可能的实现方式中的任意一种可能的实现方式,在第七方面的第四种可能的实现方式中,所述接收模块,还用于接收所述终端在与所述服务器重新建立TCP连接之后发送的第三业务请求消息,所述第三业务请求消息与所述第一业务请求消息对应相同的会话;
所述发送模块还用于,向所述服务器发送所述第三业务请求消息。
第八方面,提供了一种终端,该终端包括:
建立模块,用于建立与服务器之间的传输控制协议TCP连接;
发送模块,用于向中间节点发送用于请求所述服务器提供业务服务的第一业务请求消息,以便于所述中间节点根据所述第一业务请求消息,向所述服务器发送第二业务请求消息;
接收模块,用于接收所述中间节点在确定所述第二业务请求消息的TCP包长度与所述发送模块发送的所述第一业务请求消息的TCP包长度不同时,发送的用于指示断开所述TCP连接的指示信息;
断开模块,用于根据所述接收模块接收的所述指示信息,断开所述TCP连接。
结合第八方面,在第八方面的第一种可能的实现方式中,所述接收模块具体用于,接收所述中间节点发送的第一业务响应消息,所述第一业务响应消息用于指示所述服务器关于提供业务服务的相关信息,所述第一业务响应消息还包括所述指示信息。
结合第八方面或第八方面的第一种可能的实现方式,在第八方面的第二种可能的实现方式中,所述建立模块还用于,重新建立与所述服务器之间的TCP连接;
所述发送模块还用于,向所述中间节点发送用于请求所述服务器提供业务服务的第三业务请求消息,所述第三业务请求消息与所述第一业务请求消息对应相同的会话。
第九方面提供了一种服务器,该服务器包括:
接收模块,用于接收中间节点根据终端的用于请求服务器提供业务服务的第一业务请求消息发送的第二业务请求消息;
断开模块,用于断开与所述终端之间的传输控制协议TCP连接,或者通过向所述中间节点发送用于指示所述终端断开所述TCP连接的第一指示信息,以便实现断开所述TCP连接;
所述接收模块还用于,根据与所述终端重新建立的TCP连接,接收所述中间节点发送的从所述终端接收的第三业务请求消息,所述第三业务请求消息与所述第一业务请求消息对应相同的会话。
结合第九方面,在第九方面的第一种可能的实现方式中,所述断开模块具体用于,根据所述中间节点在确定所述第二业务请求消息的传输控制协议TCP包长度与所述第一业务请求消息的TCP包长度不同时,发送的用于指示断开所述TCP连接的第二指示信息,断开所述TCP连接。
结合第九方面的第一种可能的实现方式,在第九方面的第二种可能的实现方式中,所述接收模块接收的所述第二业务请求消息包括所述第二指示信息;
所述断开模块具体用于,根据所述第二业务请求消息,断开所述TCP连接。
结合第九方面,在第九方面的第三种可能的实现方式中,所述断开模块具体用于,当确定所述第二业务请求消息中包括下列信息中的至少一种信息:用户名、用户密码、用户上下文、用户公网互联网协议IP地址、用户私网IP地址、网络接入点名称APN、网络设备名称和网络设备编号时,断开所述TCP连接。
结合第九方面,在第九方面的第四种可能的实现方式中,所述断开模块包括发送单元,用于当确定所述第二业务请求消息中包括下列信息中的至少一种信息:用户名、用户密码、用户上下文、用户公网互联网协议IP地址、用户私网IP地址、网络接入点名称APN、网络设备名称和网络设备编号时,向所述中间节点发送所述第一指示信息。
结合第九方面的第四种可能的实现方式,在第九方面的第五种可能的实现方式中,所述发送单元具体用于,根据所述第二业务请求消息向所述中间发送第二业务响应消息,所述第二业务响应消息包括所述第一指示信息。
基于上述技术方案,本发明实施例的传输业务的方法、中间节点、终端和服务器,能够避免中间节点在同一个TCP连接下对TCP包长度的重新计算和修改,从而能够有效降低对中间节点性能的影响。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1示出了根据本发明实施例的传输业务的方法的示意性流程图。
图2示出了根据本发明实施例的传输业务的方法的另一示意性流程图。
图3示出了根据本发明实施例的传输业务的方法的再一示意性流程图。
图4示出了根据本发明另一实施例的传输业务的方法的示意性流程图。
图5示出了根据本发明再一实施例的传输业务的方法的示意性流程图。
图6示出了根据本发明实施例的中间节点的示意性框图。
图7示出了根据本发明实施例的终端的示意性框图。
图8示出了根据本发明实施例的服务器的示意性框图。
图9示出了根据本发明实施例提供的一种中间节点的示意性框图。
图10示出了根据本发明实施例提供的一种终端的示意性框图。
图11示出了根据本发明实施例提供的一种服务器的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
应理解,本发明实施例的技术方案可以应用于各种通信系统,例如:全球移动通讯(Global System of Mobile communication,简称为“GSM”)系统、码分多址(CodeDivision Multiple Access,简称为“CDMA”)系统、宽带码分多址(Wideband CodeDivision Multiple Access,简称为“WCDMA”)系统、通用分组无线业务(General PacketRadio Service,简称为“GPRS”)、长期演进(Long Term Evolution,简称为“LTE”)系统、LTE频分双工(Frequency Division Duplex,简称为“FDD”)系统、LTE时分双工(Time DivisionDuplex,简称为“TDD”)、通用移动通信系统(Universal Mobile TelecommunicationSystem,简称为“UMTS”)或全球互联微波接入(Worldwide Interoperability forMicrowave Access,简称为“WiMAX”)通信系统等。
还应理解,在本发明实施例中,终端(Terminal)可称之为用户设备(UserEquipment,简称为“UE”)、移动台(Mobile Station,简称为“MS”)或移动终端(MobileTerminal)等,该终端可以经无线接入网(Radio Access Network,简称为“RAN”)与一个或多个核心网进行通信,例如,终端可以是移动电话(或称为“蜂窝”电话)或具有移动终端的计算机等,再例如,终端还可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置,它们与无线接入网交换语音和/或数据。
还应理解,在本发明实施例中,中间节点可以为网关(Gateway,简称为“GW”)设备,还可以是任何具有类似网关功能的设备,例如可以是交换机、路由器、及代理服务器等设备,本发明实施例中的中间节点还可以为任意处于终端与服务器之间的节点,例如对于WCDMA系统而言,本发明实施例中的中间节点可以为基站控制器;对于LTE系统而言,本发明实施例中的中间节点可以为基站设备,还可以为基站控制设备;本发明实施例的中间节点还可以为TCP功能增强实体等网络设备,本发明实施例对此不作限定。
图1示出了本发明实施例的传输业务的方法,该方法例如由中间节点执行。如图1所示,该方法100包括:
S110,接收终端发送的用于请求服务器提供业务服务的第一业务请求消息;
S120,根据该第一业务请求消息,确定第二业务请求消息;
S130,当确定该第二业务请求消息的传输控制协议TCP包长度与该第一业务请求消息的TCP包长度不同时,向该终端和/或该服务器发送用于指示断开该终端与该服务器之间的TCP连接的指示信息。
中间节点根据终端发送的第一业务请求消息确定第二业务请求消息,当确定该第二业务请求消息的TCP包长度与该第一业务请求消息的TCP包长度不同时,向该终端和/或服务器发送用于指示断开该终端与该服务器之间的TCP连接的指示信息,以实现断开当前该终端与该服务器之间的TCP连接,以便于该终端与该服务器根据重新建立的TCP连接进行后续的业务传输,应理解,该后续的业务传输与第一业务请求消息对应相同的会话。
因此,本发明实施例的传输业务的方法,当确定中间节点向服务器发送的业务请求消息的TCP包长度与终端向该中间节点发送的业务请求消息的TCP包长度不同时,断开当前该终端与该服务器之间的TCP连接,以便于根据重新建立的TCP连接进行后续的业务传输,从而能够有效避免中间节点在同一个TCP连接下对TCP包长度的重新计算和修改,能够有效降低对中间节点性能的影响。
在S110中,中间节点接收终端发送的用于请求服务器提供业务服务的第一业务请求消息。应理解,在通信领域,移动终端是通过中间节点(网关或基站)向网络侧服务器发送用于请求业务服务的业务请求消息的,相应地,服务器也是通过相应的中间节点向终端发送业务响应消息的,可以理解为,终端是通过对应的网关设备(中间节点)与服务器进行通信的。
还应理解,可选地,本发明中的业务请求消息可以为基于超文本传输协议(HyperText Transfer Protocol,简称为“HTTP”)的业务请求,也可称之为HTTP请求报文,相应地,业务请求消息对应的业务响应消息也可以称之为HTTP响应报文。其中,HTTP是互联网上广泛使用的协议,例如网页浏览、HTTP渐进下载(Progressive Download)、HTTP实时流(Live Streaming)、社交网络服务(Social Networking Services,简称为“SNS”)、微博等业务都使用HTTP协议,这些业务构成了移动互联网上的主流应用。HTTP协议采用请求-响应(Request-Response)模式工作,即客户端或终端向服务器发送HTTP请求(HTTP Request)报文以请求资源,服务器向客户端或终端发送HTTP响应(HTTP Response)报文以响应客户端或终端的请求。本发明中的业务请求消息还可以是基于HTTPS(HyperText TransferProtocol over Secure SocketLayer)协议的业务请求,相应地,业务响应消息也可以是基于HTTPS协议的业务响应。HTTPS协议是具有安全性的SSL加密传输协议,用于安全的HTTP数据传输,即HTTPS是以安全为目的HTTP通道。为了表述方便,本发明实施例中以业务请求消息为HTTP请求报文、业务响应消息为HTTP响应报文为例进行说明。
目前,HTTP请求/响应报文是基于传输控制协议(Transmission ControlProtocol,简称为“TCP”)通信链路来传输的,即终端向服务器发送HTTP请求(HTTPRequest)报文之前,要建立与服务器之间的TCP连接,具体流程为,终端首先向服务器发送一个SYN消息,然后服务器使用SYN+ACK消息应答表示接收到了SYN消息,最后终端再以ACK消息响应服务器,这样在终端和服务器之间就建立了TCP连接,可以在终端和服务器之间传输业务了。
在S120中,中间节点根据第一业务请求消息,确定第二业务请求消息,服务器为该终端提供相关业务服务,需要该终端的相关标识信息与网络侧业务标识进行融合与相互识别,因此,该第二业务请求消息包括该终端的相关标识信息,具体地,例如用户手机号码、运营商分配的移动网络私网IP地址等。
可选地,作为一个实施例,在图1所示的方法100中,该第二业务请求消息包括下列信息中的至少一种信息:用户名、用户密码、用户上下文、用户公网互联网协议IP地址、用户私网IP地址、网络接入点名称APN、网络设备名称和网络设备编号。
应理解,该第二业务请求消息中包括的上述相关标识信息,具体根据具体的请求业务类型来确定,例如业务1对应的相关标识信息为该终端的用户名和用户密码;业务2对应的相关标识信息为该终端的APN;业务3对应的相关标识信息为该终端的用户私网IP。
应理解,中间节点在通过终端发送的第一业务请求消息确定第二业务请求消息时,若确定该第一业务请求消息内容、格式完整,即包括必要的信息,可以用于请求服务器提供相关的业务服务,则可以将该第一业务请求消息直接作为该第二业务请求消息,例如,终端发送的第一业务请求消息对应的是业务3(业务3对应的标识信息为该终端的用户私网IP),且该第一业务请求消息里包括了该终端的用户私网IP信息,则中间节点检测到该第一业务请求消息后,可以直接向服务器发送该第一业务请求消息;若确定该第一业务请求消息还缺少必要的标识信息,例如,终端发送的第一业务请求消息对应的是业务3,但是该终端无法获取到该终端的用户私网IP,即向中间节点发送的第一业务请求消息中没有包括该终端的用户私网IP,这种场景下,中间节点检测到该第一业务请求消息时,可以通过解析应用层消息,获取到该终端对应的私网IP地址,并将该私网IP地址添加到向服务器发送的第二业务请求消息中,即第二业务请求消息可以看成是在第一业务请求消息的基础上增加了私网IP地址的字段。
具体地,例如终端向中间节点发送的第一业务请求消息的部分信息为如下格式:
GET/myapp/sethead.jsp HTTP/1.1
Accept:*/*
Accept-Language:zh-ch
User-Agent:Mo zilla/4.0
Host:10.74.151.59:8480
Connection:keep-Alive
该第一业务请求消息对应的业务需要提供该终端的用户私网IP,则中间节点根据该第一业务请求消息向服务器发送的第二业务请求消息的对应部分信息可以为以下格式:
GET/myapp/sethead.jsp HTTP/1.1
Accept:*/*
Accept-Language:zh-ch
User-Agent:Mo zilla/4.0
Host:10.74.151.59:8480
Connection:keep-Alive
Private IP:10.140.70.221
即第二业务请求消息相对第一业务请求消息增加了该终端的用户私网IP信息:“Private IP:10.140.70.221”,除此之外,第二业务请求消息与第一业务请求消息所包括的其它信息一致。
在S130中,中间节点在确定该第二业务请求消息的传输控制协议TCP包长度与该第一业务请求消息的TCP包长度不同时,向该终端和/或该服务器发送用于指示断开该终端与该服务器之间的TCP连接的指示信息。
应理解,当第二业务请求消息相对于第一业务请求消息增加信息字段时,二者对应的TCP包长度是不相同的,例如,上述例子中,第一业务请求消息中没有私网IP地址,而在第二业务请求消息中有私网IP地址,这时,第二业务请求消息的TCP包长度与该第一业务请求消息的TCP包长度就不同了,根据现有技术可知,这种场景下,基于当前的终端与服务器之间的TCP连接,中间节点需要对后续所有的业务传输不断地计算和修改TCP包长度。在本发明实施中,中间节点当确定该第二业务请求消息的TCP包长度与该第一业务请求消息的TCP包长度不同时,向该终端和/或该服务器发送用于指示断开该终端与该服务器之间的TCP连接的指示信息,用于实现断开当前的TCP连接,以便于该终端与服务器根据重新建立的TCP连接进行后续的业务传输(与第一业务请求消息对应同一会话)。
具体地,中间节点可以向服务器发送该用于指示断开TCP连接的指示信息,更具体地,可以是单独向服务器发送该指示信息,也可以通过向服务器发送第二业务请求时一起发送该指示信息;还可以向终端发送该指示信息,更具体地,可以单独向终端发送该指示信息,还可以通过向终端发送业务响应消息时一起发送该指示信息;还可以同时分别向终端和服务器发送该指示信息,本发明实施例对比不作限定,只要能够实现断开当前的TCP连接即可。下文将结合图2和图3进行详细说明。
具体地,以终端向服务器发送的业务请求消息所对应的业务需要提供该终端的用户私网IP,但该终端无法获取自身的用户私网IP为例。如图2所示,在S201中,终端与服务器建立TCP连接,具体地,首先终端向服务器发送一个SYN(Synchronous)消息,该SYN是建立TCP连接时使用的握手信号;然后服务器向终端发送SYN+ACK(Acknowledgement)消息,用于应答表示接收到该SYN消息;最后终端再向服务器发送ACK消息,用以响应该SYN+ACK消息,这样在终端和服务器之间建立起可靠的TCP连接,该终端和服务器可以基于该TCP连接进行数据传输;在S202中,终端向中间节点发送第一HTTP请求报文,该第一HTTP请求报文不包括该终端的用户私网IP;在S203中,中间节点检测到该第一HTTP请求报文后,根据该第一HTTP请求报文确定第二HTTP请求报文,该第二HTTP请求报文中包括该终端的用户私网IP,第二业务请求消息的TCP包长度与该第一业务请求消息的TCP包长度不同;在S204中,中间节点向服务器发送第二HTTP请求报文;在S205中,中间节点向服务器发送用于指示断开当前终端与服务器之间的TCP连接的指示信息;在S206中,中间节点接收到服务器向终端发送的第二HTTP响应报文,该第二HTTP响应报文用于指示服务器关于提供相关业务服务的相关信息;在S207中,中间节点根据该第二HTTP响应报文,确定第一HTTP响应报文;在S208中,该中间节点向终端发送该第一HTTP响应报文;在S209中,服务器主动断开与终端之间的TCP连接,具体流程为:服务器向终端发送一个FIN消息,终端向服务器响应一个ACK消息;然后终端也向服务器发送一个FIN消息,服务器也向终端发送一个ACK消息,用于响应FIN消息,这样就断开了终端与服务器之间的TCP连接。
应理解,S204和S205不限定先后顺序,可选地,S204和S205还可以同时执行,即中间节点向服务器一起发送第二HTTP请求报文和该指示信息;具体地,例如该第二HTTP请求报文中包括用于指示断开TCP连接的该指示信息。
可选地,作为一个实施例,在图1所示的方法100中,S130向该终端和/或该服务器发送用于指示断开该终端与该服务器之间的TCP连接的指示信息,包括:
向该服务器发送该第二业务请求消息,该第二业务请求消息包括该指示信息。
具体地,例如在S202中,中间节点检测到终端发送的第一HTTP请求报文如下所示:
GET/myapp/sethead.jsp HTTP/1.1
Accept:*/*
Accept-Language:zh-ch
User-Agent:Mo zilla/4.0
Host:10.74.151.59:8480
Connection:keep-Alive
在S203中,中间节点根据第一HTTP请求报文确定的包括该终端的用户私网IP的第二HTTP请求报文如下所示:
GET/myapp/sethead.jsp HTTP/1.1
Accept:*/*
Accept-Language:zh-ch
User-Agent:Mo zilla/4.0
Host:10.74.151.59:8480
Connection:Close
Private IP:10.140.70.221
即第二HTTP请求报文相对第一HTTP请求报文,增加了字段“Private IP:10.140.70.221”,并将字段“Connection:keep-Alive”更改为“Connection:Close”,即该第二HTTP请求报文中的字段“Connection:Close”用于指示服务器断开终端与服务器之间的TCP连接。
可选地,在本发明实施例中,中间节点向服务器发送的用于指示断开TCP连接的指示信息可以为该终端的相关标识信息,还以上述第一HTTP请求报文和第二HTTP请求报文为例,中间节点根据第一HTTP请求报文确定的包括该终端的用户私网IP的第二HTTP请求报文还可以是如下格式:
GET/myapp/sethead.jsp HTTP/1.1
Accept:*/*
Accept-Language:zh-ch
User-Agent:Mo zilla/4.0
Host:10.74.151.59:8480
Connection:keep-Alive
Private IP:10.140.70.221
即第二HTTP请求报文在第一HTTP请求报文的基础上增加了字段“Private IP:10.140.70.221”,在其他部分并未做任何改变,这种场景下,可以通过设置服务器,使其检测到中间节点发送的第二HTTP请求报文中包括该终端的相关标识信息时,会自动断开TCP连接,或者执行其他断开TCP连接的操作,本发明实施例对比不作限定。
应理解,中间节点向服务器发送了用于指示其断开TCP连接的指示信息,服务器通常是根据第二业务请求消息向终端发送了第二业务响应消息后,才发起断开TCP连接的操作,如图2中的S209所示。
中间节点还可以通过向终端发送指示信息,用以指示终端主动断开该TCP连接。
具体地,还以终端向服务器发送的业务请求消息所对应的业务需要提供该终端的用户私网IP,但该终端无法获取自身的用户私网IP为例。如图3所示,在S301中,终端与服务器建立TCP连接,具体地,首先终端向服务器发送一个SYN(Synchronous)消息,该SYN是建立TCP连接时使用的握手信号;然后服务器向终端发送SYN+ACK(Acknowledgement)消息,用于应答表示接收到该SYN消息;最后终端再向服务器发送ACK消息,用以响应该SYN+ACK消息,这样在终端和服务器之间建立起可靠的TCP连接,该终端和服务器可以基于该TCP连接进行数据传输;在S302中,终端向中间节点发送第一HTTP请求报文,该第一HTTP请求报文不包括该终端的用户私网IP;在S303中,中间节点检测到该第一HTTP请求报文后,根据该第一HTTP请求报文确定第二HTTP请求报文,该请求报文中包括该终端的用户私网IP;在S304中,中间节点向服务器发送第二HTTP请求报文;在S305中,中间节点接收到服务器向终端发送的第二HTTP响应报文;在S306中,中间节点根据该第二HTTP响应报文,确定第一HTTP响应报文;在S307中,该中间节点向终端发送该第一HTTP响应报文;在S308中,中间节点向终端发送用于指示断开当前终端与服务器之间的TCP连接的指示信息;在S309中,终端主动断开与终端之间的TCP连接,具体流程为:终端向服务器发送一个FIN消息,服务器向终端响应一个ACK消息;然后服务器也向终端发送一个FIN消息,终端也向服务器发送一个ACK消息,用于响应FIN消息,这样就断开了终端与服务器之间的TCP连接。
应理解,S307和S308不限定先后顺序,可选地,S307和S308还可以同时执行,即中间节点向终端一起发送第一HTTP响应报文和该指示信息;具体地,例如该第二HTTP请求报文中包括用于指示断开TCP连接的该指示信息。
可选地,作为一个实施例,在图1所示的方法100中,S130向该终端和/或该服务器发送用于指示断开该终端与该服务器之间的TCP连接的指示信息,包括:
向该服务器发送该第二业务请求消息;
接收该服务器根据该第二业务请求消息发送的第二业务响应消息;
根据该第二业务响应消息,向该终端发送第一业务响应消息,该第一业务响应消息包括该指示信息。
具体地,例如在S305中,中间节点检测到服务器发送的第二HTTP响应报文如下所示:
HTTP/1.1200OK
Server:Apache-Coyote/1.1
Connection:keep-Alive
Content-Type:text/html;charset=GB2312
Content-Lengh:241
Date:Tue,30Jul201304:04:06GMT
在S307中,中间节点根据第二HTTP响应报文确定的第一HTTP响应报文如下所示:
HTTP/1.1200OK
Server:Apache-Coyote/1.1
Connection:Close
Content-Type:text/html;charset=GB2312
Content-Lengh:241
Date:Tue,30Jul201304:04:06GMT
即第一HTTP响应报文相对第二HTTP响应报文,将字段“Connection:keep-Alive”更改为“Connection:Close”,即该第一HTTP响应报文中的字段“Connection:Close”用于指示终端断开终端与服务器之间的TCP连接。
因此,在本发明实施例中,当中间节点确定向服务器发送的业务请求消息与终端发送的业务请求消息的TCP包长度不同时,指示终端或服务器断开当前终端与服务器之间的TCP连接,以便于终端通过重新建立的TCP连接向服务器发送下一次业务请求消息,可以避免中间节点基于同一个TCP连接不断地计算和修改终端发送的业务请求消息和服务器发送的业务响应消息的TCP包长度的问题,能够有效降低对中间节点性能的影响。
应理解,在本发明实施例中,中间节点在该第二业务请求消息的传输控制协议TCP包长度与该第一业务请求消息的TCP包长度不同的场景下,均会指示断开当前的TCP连接,并不对第二业务请求消息具体包括哪些信息作特殊限定,也不特别限定第二业务请求消息相对于第一业务请求消息增加了哪些信息。
可选地,作为一个实施例,图1所示的方法100还包括:
接收该终端在与该服务器重新建立TCP连接之后发送的第三业务请求消息,该第三业务请求消息与该第一业务请求消息对应相同的会话;
向该服务器发送该第三业务请求消息。
具体地,如图2中的S210至S212,图3中的S310至S312,以图2为例,在S210中,终端与服务器重新建立二者之间的TCP连接;在S211中,终端基于重新建立的TCP连接向服务器发送第三HTTP请求报文,该第三HTTP请求报文与第一HTTP请求报文对应相同的会话;在S212中,服务器根据第三HTTP请求报文,向该终端发送第三HTTP响应报文。图3中的S310至S312的步骤与图2中的S210至S212步骤一致,为了简洁,这里不再赘述。
应理解,终端与服务器重新建立TCP连接后,中间节点检测到终端发送的第三HTTP请求报文后,可以直接将该第三HTTP请求报文转发给服务器,不再需要对其作处理与修改。因为,该第三HTTP请求报文与第一HTTP请求报文对应相同的会话,服务器可以根据该终端会话历史信息(例如用户名、私网IP、公网IP、接入点名称APN、会话ID等),识别该终端,从而为该终端提供相应的业务服务。
因此,在本发明实施例中,基于重新建立的该终端与服务器之间的TCP连接,当中间节点检测到终端发送的HTTP请求报文时,可以直接向服务器转发终端发送的HTTP请求报文,无需计算和修改该HTTP请求报文的TCP包序号或者TCP包长度或TCP包校验和等信息,且在后续转发服务器向终端发送的HTTP响应报文时,也无需重新计算和修改该HTTP响应报文的TCP包序号,能够有效降低对中间节点性能的影响。
还应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
因此,本发明实施例的传输业务的方法,当确定中间节点向服务器发送的业务请求消息的TCP包长度与终端向该中间节点发送的业务请求消息的TCP包长度不同时,断开当前该终端与该服务器之间的TCP连接,以便于根据重新建立的TCP连接进行后续的业务传输,从而能够有效避免中间节点在同一个TCP连接下对TCP包长度的重新计算和修改,能够有效降低对中间节点性能的影响。
上文中结合图1至图3,从中间节点的角度详细描述了根据本发明实施例的传输业务的方法,下面将结合图4,从终端的角度描述根据本发明实施例的传输业务的方法。
如图4所示,根据本发明实施例的传输业务的方法400,例如可以由终端执行,该方法400包括:
S410,建立与服务器之间的传输控制协议TCP连接;
S420,向中间节点发送用于请求该服务器提供业务服务的第一业务请求消息,以便于该中间节点根据该第一业务请求消息,向该服务器发送第二业务请求消息;
S430,接收该中间节点在确定该第二业务请求消息的TCP包长度与该第一业务请求消息的TCP包长度不同时,发送的用于指示断开该TCP连接的指示信息;
S440,根据该指示信息,断开该TCP连接。
因此,本发明实施例的传输业务的方法,根据中间节点发送的用于断开终端与服务器之间TCP连接的指示信息,断开当前终端与服务器之间的TCP连接,以便于终端与服务器基于重新建立的TCP连接进行后续的业务传输,能够有效避免中间节点在同一个TCP连接上对TCP包长度的重新计算和修改,从而能够有效降低中间节点的处理负担,能够提高其性能。
在S410中,建立与服务器之间的TCP连接,具体流程为,终端首先向服务器发送一个SYN消息,然后服务器使用SYN+ACK消息应答表示接收到了SYN消息,最后终端再以ACK消息响应服务器,这样在终端和服务器之间就建立了TCP连接,可以在终端和服务器之间传输业务了。
在S420中,向中间节点发送用于请求该服务器提供业务服务的第一业务请求消息,以便于该中间节点根据该第一业务请求消息,向该服务器发送第二业务请求消息。应理解,在通信领域,移动终端是通过中间节点(网关或基站)向网络侧服务器发送用于请求业务服务的业务请求消息的,相应地,服务器也是通过相应的中间节点向终端发送业务响应消息的,可以理解为,终端是通过对应的网关设备(中间节点)与服务器进行通信的。
在S430中,接收该中间节点在确定该第二业务请求消息的TCP包长度与该第一业务请求消息的TCP包长度不同时,发送的用于指示断开该TCP连接的指示信息。
具体地,如图3所示,在S308中,中间节点向终端发送用于指示断开当前终端与服务器之间的TCP连接的指示信息;在S309中,终端主动断开与终端之间的TCP连接,具体流程为:终端向服务器发送一个FIN消息,服务器向终端响应一个ACK消息;然后服务器也向终端发送一个FIN消息,终端也向服务器发送一个ACK消息,用于响应FIN消息,这样就断开了终端与服务器之间的TCP连接。
应理解,图3所示的S307和S308不限定先后顺序,可选地,S307和S308还可以同时执行,即中间节点向终端一起发送第一HTTP响应报文和该指示信息;具体地,例如该第二HTTP请求报文中包括用于指示断开TCP连接的该指示信息。
可选地,作为一个实施例,图4所示的方法400中的S430接收该中间节点在确定该第二业务请求消息的TCP包长度与该第一业务请求消息的TCP包长度不同时,发送的用于指示断开该TCP连接的指示信息,包括:
接收该中间节点发送的第一业务响应消息,该第一业务响应消息用于指示该服务器关于提供业务服务的相关信息,该第一业务响应消息还包括该指示信息。
具体地,例如在图3中的S305中,中间节点检测到服务器发送的第二HTTP响应报文如下所示:
HTTP/1.1200OK
Server:Apache-Coyote/1.1
Connection:keep-Alive
Content-Type:text/html;charset=GB2312
Content-Lengh:241
Date:Tue,30Jul201304:04:06GMT
在S307中,中间节点根据第二HTTP响应报文确定的第一HTTP响应报文如下所示:
HTTP/1.1200OK
Server:Apache-Coyote/1.1
Connection:Close
Content-Type:text/html;charset=GB2312
Content-Lengh:241
Date:Tue,30Jul201304:04:06GMT
即第一HTTP响应报文相对第二HTTP响应报文,将字段“Connection:keep-Alive”更改为“Connection:Close”,即该第一HTTP响应报文中的字段“Connection:Close”用于指示终端断开终端与服务器之间的TCP连接。
在S440中,终端断开当前与服务器之间的TCP连接,通常终端是在接收到中间节点发送的响应消息后,断开该TCP连接,如图3中的S309所示。
因此,本发明实施例的传输业务的方法,根据中间节点发送的用于断开终端与服务器之间TCP连接的指示信息,断开当前终端与服务器之间的TCP连接,以便于终端与服务器基于重新建立的TCP连接进行后续的业务传输,能够有效避免中间节点在同一个TCP连接上对TCP包长度的重新计算和修改,从而能够有效降低中间节点的处理负担,能够提高其性能。
断开终端与服务器之间的TCP连接后,当终端需要再次向服务器发起业务请求时,终端重新建立与该服务器之间的TCP连接,以进行后续的业务传输。
可选地,作为一个实施例,图4所示方法400还包括:
重新建立与该服务器之间的TCP连接;
向该中间节点发送用于请求该服务器提供业务服务的第三业务请求消息,该第三业务请求消息与该第一业务请求消息对应相同的会话。具体地,图3中的S310至S312,在S310中,终端与服务器重新建立二者之间的TCP连接;在S311中,终端基于重新建立的TCP连接向服务器发送第三HTTP请求报文;在S312中,服务器根据第三HTTP请求报文,向该终端发送第三HTTP响应报文。
因此,在本发明实施例中,基于重新建立的该终端与服务器之间的TCP连接,当中间节点检测到终端发送的HTTP请求报文时,可以直接向服务器转发终端发送的HTTP请求报文,无需计算和修改该HTTP请求报文的TCP包序号或者TCP包长度或TCP包校验和等信息,且在后续转发服务器向终端发送的HTTP响应报文时,也无需重新计算和修改该HTTP响应报文的TCP包序号,能够有效降低对中间节点性能的影响。
还应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
因此,本发明实施例的传输业务的方法,根据中间节点发送的用于断开终端与服务器之间TCP连接的指示信息,断开当前终端与服务器之间的TCP连接,以便于终端与服务器基于重新建立的TCP连接进行后续的业务传输,能够有效避免中间节点在同一个TCP连接上对TCP包长度的重新计算和修改,从而能够有效降低中间节点的处理负担,能够提高其性能。
上文中结合图1至图4,从中间节点和终端的角度详细描述了根据本发明实施例的传输业务的方法,下面将结合图5,从服务器的角度描述根据本发明实施例的传输业务的方法。
如图5所示,根据本发明实施例的传输业务的方法500,例如可以由服务器执行,该方法500包括:
S510,接收中间节点根据终端的用于请求服务器提供业务服务的第一业务请求消息发送的第二业务请求消息;
S520,断开与该终端之间的传输控制协议TCP连接,或者向该中间节点发送用于指示该终端断开该TCP连接的第一指示信息,以便实现断开该TCP连接;
S530,根据与该终端重新建立的TCP连接,接收该中间节点发送的从该终端接收的第三业务请求消息,该第三业务请求消息与该第一业务请求消息对应相同的会话。
因此,本发明实施例的传输业务的方法,通过断开与终端之间的TCP连接,或者指示该终端断开该TCP连接,以便于终端与服务器基于重新建立的TCP连接进行后续的业务传输,能够有效避免中间节点在同一个TCP连接上对TCP包长度的重新计算和修改,从而能够有效降低中间节点的处理负担,能够提高其性能。
在S520中,服务器断开与该终端之间的传输控制协议TCP连接,具体地,可以根据中间节点发送的用于指示断开该TCP连接的指示信息,断开该TCP连接;还可以在确定该第二业务请求消息包括该终端的相关标识信息的情况下,断开该TCP连接。或者当服务器在确定第二业务请求消息中包括该终端的相关标识信息的情况下,向中间节点发送用于指示该终端断开该TCP连接的第二指示信息,以实现断开该TCP连接,本发明实施例对此不作限定。
可选地,作为一个实施例,图5所示的方法500的S520断开与该终端之间的传输控制协议TCP连接,包括:
根据该中间节点在确定该第二业务请求消息的传输控制协议TCP包长度与该第一业务请求消息的TCP包长度不同时,发送的用于指示断开该TCP连接的第二指示信息,断开该TCP连接。
具体地,如图2所示,在S205中,服务器接收中间节点发送的用于指示断开TCP连接的指示信息,在S209中,服务器根据该指示信息主动断开与终端之间的TCP连接,具体流程为:服务器向终端发送一个FIN消息,终端向服务器响应一个ACK消息;然后终端也向服务器发送一个FIN消息,服务器也向终端发送一个ACK消息,用于响应FIN消息,这样就断开了终端与服务器之间的TCP连接。
应理解,图2中的S204和S205不限定先后顺序,可选地,S204和S205还可以同时执行,即中间节点向服务器一起发送第二HTTP请求报文和该指示信息;具体地,例如该第二HTTP请求报文中包括用于指示断开TCP连接的该指示信息。
可选地,图5所示的方法500中的S520该第二业务请求消息包括该第二指示信息;
该断开该TCP连接,包括:
根据该第二业务请求消息,断开该TCP连接。
具体地,例如在图2中的S202中,中间节点检测到终端发送的第一HTTP请求报文如下所示:
GET/myapp/sethead.jsp HTTP/1.1
Accept:*/*
Accept-Language:zh-ch
User-Agent:Mo zilla/4.0
Host:10.74.151.59:8480
Connection:keep-Alive
在S203中,中间节点根据第一HTTP请求报文确定的包括该终端的用户私网IP的第二HTTP请求报文如下所示:
GET/myapp/sethead.jsp HTTP/1.1
Accept:*/*
Accept-Language:zh-ch
User-Agent:Mo zilla/4.0
Host:10.74.151.59:8480
Connection:Close
Private IP:10.140.70.221
即第二HTTP请求报文相对第一HTTP请求报文,将字段“Connection:keep-Alive”更改为“Connection:Close”,即该第二HTTP请求报文中的字段“Connection:Close”用于指示服务器断开终端与服务器之间的TCP连接。
服务器也可以通过确定第二业务请求消息中包括该终端的相关标识信息,断开该TCP连接。该终端的相关标识信息例如可以为用户名、用户密码、用户上下文、用户公网互联网协议IP地址、用户私网IP地址、网络接入点名称APN、网络设备名称和网络设备编号等信息。
可选地,作为一个实施例,图5所示的方法500中的S520断开与该终端之间的传输控制协议TCP连接,包括:
当确定该第二业务请求消息中包括下列信息中的至少一种信息:用户名、用户密码、用户上下文、用户公网互联网协议IP地址、用户私网IP地址、网络接入点名称APN、网络设备名称和网络设备编号时,断开该TCP连接。
具体地,例如中间节点向服务器发送的第二业务请求消息的为如下格式:
GET/myapp/sethead.jsp HTTP/1.1
Accept:*/*
Accept-Language:zh-ch
User-Agent:Mo zilla/4.0
Host:10.74.151.59:8480
Connection:keep-Alive
Private IP:10.140.70.221
服务器可以设置成当确定第二业务请求消息包括字段“Private IP:10.140.70.221”时,断开当前的TCP连接。
在本发明实施例中,该服务器还可以设置成当确定第二业务请求消息包括该终端的相关标识信息时,向中间节点发送用于指示终端断开当前TCP连接的指示信息。
可选地,作为一个实施例,图5所示的方法500中的S520向该中间节点发送用于指示该终端断开该TCP连接的第一指示信息,包括:
当确定该第二业务请求消息中包括下列信息中的至少一种信息:用户名、用户密码、用户上下文、用户公网互联网协议IP地址、用户私网IP地址、网络接入点名称APN、网络设备名称和网络设备编号时,向该中间节点发送该第一指示信息。
具体地,服务器可以通过向中间节点根据第二业务请求消息发送第二业务响应消息来发送该第一指示信息。
可选地,作为一个实施例,图5所示的方法500中,向该中间节点发送该第一指示信息,包括:
根据该第二业务请求消息向该中间发送第二业务响应消息,该第二业务响应消息包括该第一指示信息。
具体地,例如服务器向中间节点发送的第二响应消息中包括字段“Connection:Close”,用于指示终端主动断开当前的TCP连接。
在S530中,根据与该终端重新建立的TCP连接,接收该中间节点发送的从该终端接收的第三业务请求消息,该第三业务请求消息与该第一业务请求消息对应相同的会话。
具体地,如图2中的S210至S212,在S210中,终端与服务器重新建立二者之间的TCP连接;在S211中,终端基于重新建立的TCP连接向服务器发送第三HTTP请求报文;在S212中,服务器根据第三HTTP请求报文,向该终端发送第三HTTP响应报文。
因此,在本发明实施例中,通过断开当前的TCP连接,以便于终端与服务器根据重新建立的TCP连接进行后续的业务传输(与根据当前TCP连接进行的业务传输属于同一会话),能够避免中间节点在同一TCP连接上对TCP包长度的频繁计算和修改,可以降低对中间节点性能的影响。
应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
因此,本发明实施例的传输业务的方法,通过断开与终端之间的TCP连接,或者指示该终端断开该TCP连接,以便于终端与服务器基于重新建立的TCP连接进行后续的业务传输,能够有效避免中间节点在同一个TCP连接上对TCP包长度的重新计算和修改,从而能够有效降低中间节点的处理负担,能够提高其性能。
上文中结合图1至图5,详细描述了根据本发明实施例的传输业务的方法,下面将结合图6至图8,详细描述根据本发明实施例的中间节点、终端和服务器。
图6示出了本发明实施例的中间节点600的示意性框图,该中间节点600包括:
接收模块610,用于接收终端发送的用于请求服务器提供业务服务的第一业务请求消息;
确定模块620,用于根据该接收模块接收的该第一业务请求消息,确定第二业务请求消息;
发送模块630,用于当确定该确定模块确定的该第二业务请求消息的传输控制协议TCP包长度与该第一业务请求消息的TCP包长度不同时,向该终端和/或该服务器发送用于指示断开该终端与该服务器之间的TCP连接的指示信息。
因此,本发明实施例的中间节点,当确定该中间节点向服务器发送的业务请求消息的TCP包长度与终端向该中间节点发送的业务请求消息的TCP包长度不同时,断开当前该终端与该服务器之间的TCP连接,以便于根据重新建立的TCP连接进行后续的业务传输,从而能够有效避免中间节点在同一个TCP连接下对TCP包长度的重新计算和修改,能够有效降低对中间节点性能的影响。
可选地,作为一个实施例,该确定模块确定的该第二业务请求消息包括下列信息中的至少一种信息:用户名、用户密码、用户上下文、用户公网互联网协议IP地址、用户私网IP地址、网络接入点名称APN、网络设备名称和网络设备编号。
可选地,作为一个实施例,该发送模块具体用于,向该服务器发送该第二业务请求消息,该第二业务请求消息包括该指示信息。
可选地,作为一个实施例,该发送模块,包括:
发送单元,用于向该服务器发送该第二业务请求消息;
接收单元,用于接收该服务器根据该发送单元发送的该第二业务请求消息发送的第二业务响应消息;
该发送单元,用于根据该接收单元接收的该第二业务响应消息,向该终端发送第一业务响应消息,该第一业务响应消息包括该指示信息。
可选地,作为一个实施例,该接收模块,还用于接收该终端在与该服务器重新建立TCP连接之后发送的第三业务请求消息,该第三业务请求消息与该第一业务请求消息对应相同的会话;
该发送模块还用于,向该服务器发送该第三业务请求消息。
应理解,根据本发明实施例的中间节点600可对应于本发明实施例的传输业务的方法中的中间节点,并且中间节点600中的各个模块的上述和其它操作和/或功能分别为了实现图1至图5中的各个方法的相应流程,为了简洁,在此不再赘述。
因此,本发明实施例的中间节点,当确定该中间节点向服务器发送的业务请求消息的TCP包长度与终端向该中间节点发送的业务请求消息的TCP包长度不同时,断开当前该终端与该服务器之间的TCP连接,以便于根据重新建立的TCP连接进行后续的业务传输,从而能够有效避免中间节点在同一个TCP连接下对TCP包长度的重新计算和修改,能够有效降低对中间节点性能的影响。
上文中结合图6,详细描述了根据本发明实施例的中间节点600,下面将结合图7和图8,详细描述根据本发明实施例的终端和服务器。
图7示出了本发明实施例的终端700的示意性框图,该终端700包括:
建立模块710,用于建立与服务器之间的传输控制协议TCP连接;
发送模块720,用于向中间节点发送用于请求该服务器提供业务服务的第一业务请求消息,以便于该中间节点根据该第一业务请求消息,向该服务器发送第二业务请求消息;
接收模块730,用于接收该中间节点在确定该第二业务请求消息的TCP包长度与该发送模块发送的该第一业务请求消息的TCP包长度不同时,发送的用于指示断开该TCP连接的指示信息;
断开模块740,用于根据该接收模块接收的该指示信息,断开该TCP连接。
因此,本发明实施例的终端,根据中间节点发送的用于断开终端与服务器之间TCP连接的指示信息,断开当前终端与服务器之间的TCP连接,以便于终端与服务器基于重新建立的TCP连接进行后续的业务传输,能够有效避免中间节点在同一个TCP连接上对TCP包长度的重新计算和修改,从而能够有效降低中间节点的处理负担,能够提高其性能。
可选地,作为一个实施例,该接收模块具体用于,接收该中间节点发送的第一业务响应消息,该第一业务响应消息用于指示该服务器关于提供业务服务的相关信息,该第一业务响应消息还包括该指示信息。
可选地,作为一个实施例,该建立模块还用于,重新建立与该服务器之间的TCP连接;
该发送模块还用于,向该中间节点发送用于请求该服务器提供业务服务的第三业务请求消息,该第三业务请求消息与该第一业务请求消息对应相同的会话。
应理解,根据本发明实施例的终端700可对应于本发明实施例的传输业务的方法中的终端,并且终端700中的各个模块的上述和其它操作和/或功能分别为了实现图1至图5中的各个方法的相应流程,为了简洁,在此不再赘述。
因此,本发明实施例的终端,根据中间节点发送的用于断开终端与服务器之间TCP连接的指示信息,断开当前终端与服务器之间的TCP连接,以便于终端与服务器基于重新建立的TCP连接进行后续的业务传输,能够有效避免中间节点在同一个TCP连接上对TCP包长度的重新计算和修改,从而能够有效降低中间节点的处理负担,能够提高其性能。
上文中结合图7,详细描述了根据本发明实施例的终端700,下面将结合图8,详细描述根据本发明实施例的服务器。
图8示出了本发明实施例的服务器800的示意性框图,该服务器800包括:
接收模块810,用于接收中间节点根据终端的用于请求服务器提供业务服务的第一业务请求消息发送的第二业务请求消息;
断开模块820,用于断开与所述终端之间的传输控制协议TCP连接,或者通过向所述中间节点发送用于指示所述终端断开所述TCP连接的第一指示信息,以便实现断开所述TCP连接;
所述接收模块还用于,根据与所述终端重新建立的TCP连接,接收所述中间节点发送的从所述终端接收的第三业务请求消息,所述第三业务请求消息与所述第一业务请求消息对应相同的会话。
因此,本发明实施例的服务器,通过断开与终端之间的TCP连接,或者指示该终端断开该TCP连接,以便于终端与服务器基于重新建立的TCP连接进行后续的业务传输,能够有效避免中间节点在同一个TCP连接上对TCP包长度的重新计算和修改,从而能够有效降低中间节点的处理负担,能够提高其性能。
可选地,作为一个实施例,该断开模块具体用于,根据该中间节点在确定该第二业务请求消息的传输控制协议TCP包长度与该第一业务请求消息的TCP包长度不同时,发送的用于指示断开该TCP连接的第二指示信息,断开该TCP连接。
可选地,作为一个实施例,该接收模块接收的该第二业务请求消息包括该第二指示信息;
该断开模块具体用于,根据该第二业务请求消息,断开该TCP连接。
可选地,作为一个实施例,该断开模块具体用于,当确定该第二业务请求消息中包括下列信息中的至少一种信息:用户名、用户密码、用户上下文、用户公网互联网协议IP地址、用户私网IP地址、网络接入点名称APN、网络设备名称和网络设备编号时,断开该TCP连接。
可选地,作为一个实施例,该断开模块包括发送单元,用于当确定该第二业务请求消息中包括下列信息中的至少一种信息:用户名、用户密码、用户上下文、用户公网互联网协议IP地址、用户私网IP地址、网络接入点名称APN、网络设备名称和网络设备编号时,向该中间节点发送该第一指示信息。
可选地,作为一个实施例,该发送单元具体用于,根据该第二业务请求消息向该中间发送第二业务响应消息,该第二业务响应消息包括该第一指示信息。
应理解,根据本发明实施例的服务器800可对应于本发明实施例的传输业务的方法中的服务器,并且服务器800中的各个模块的上述和其它操作和/或功能分别为了实现图1至图5中的各个方法的相应流程,为了简洁,在此不再赘述。
因此,本发明实施例的服务器,通过断开与终端之间的TCP连接,或者指示该终端断开该TCP连接,以便于终端与服务器基于重新建立的TCP连接进行后续的业务传输,能够有效避免中间节点在同一个TCP连接上对TCP包长度的重新计算和修改,从而能够有效降低中间节点的处理负担,能够提高其性能。
如图9所示,本发明实施例还提供了一种中间节点1100,该中间节点1100包括处理器1110、存储器1120、总线系统1130、接收器1140和发送器1150。其中,处理器1110、存储器1120、接收器1140和发送器1150通过总线系统1130相连,该存储器1120用于存储指令,该处理器1110用于执行该存储器1120存储的指令,以控制接收器1140接收信号,并控制发送器1150发送信号。其中,接收器1140,用于接收终端发送的用于请求服务器提供业务服务的第一业务请求消息;处理器1110,用于根据该接收器1140接收的该第一业务请求消息,确定第二业务请求消息;发送器1150,用于当确定该处理器1110确定的该第二业务请求消息的传输控制协议TCP包长度与该第一业务请求消息的TCP包长度不同时,向该终端和/或该服务器发送用于指示断开该终端与该服务器之间的TCP连接的指示信息。
因此,本发明实施例的中间节点,当确定该中间节点向服务器发送的业务请求消息的TCP包长度与终端向该中间节点发送的业务请求消息的TCP包长度不同时,断开当前该终端与该服务器之间的TCP连接,以便于根据重新建立的TCP连接进行后续的业务传输,从而能够有效避免中间节点在同一个TCP连接下对TCP包长度的重新计算和修改,能够有效降低对中间节点性能的影响。
应理解,在本发明实施例中,该处理器1110可以是中央处理单元(CentralProcessing Unit,简称为“CPU”),该处理器1110还可以是其他通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
该存储器1120可以包括只读存储器和随机存取存储器,并向处理器1110提供指令和数据。存储器1120的一部分还可以包括非易失性随机存取存储器。例如,存储器1120还可以存储设备类型的信息。
该总线系统1130除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线系统1130。
在实现过程中,上述方法的各步骤可以通过处理器1110中的硬件的集成逻辑电路或者软件形式的指令完成。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1120,处理器1110读取存储器1120中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
可选地,作为一个实施例,该处理器1110确定的该第二业务请求消息包括下列信息中的至少一种信息:用户名、用户密码、用户上下文、用户公网互联网协议IP地址、用户私网IP地址、网络接入点名称APN、网络设备名称和网络设备编号。
可选地,作为一个实施例,该发送器1150具体用于,向该服务器发送该第二业务请求消息,该第二业务请求消息包括该指示信息。
可选地,作为一个实施例,该发送器1150具体用于,向该服务器发送该第二业务请求消息;
该接收器1140,用于接收该服务器根据该第二业务请求消息发送的第二业务响应消息;
该发送器1150用于,根据该接收器1140接收的该第二业务响应消息,向该终端发送第一业务响应消息,该第一业务响应消息包括该指示信息。
可选地,作为一个实施例,该接收器1140还用于,接收该终端在与该服务器重新建立TCP连接之后发送的第三业务请求消息,该第三业务请求消息与该第一业务请求消息对应相同的会话;
该发送器1150还用于,向该服务器发送该第三业务请求消息。
应理解,根据本发明实施例的中间节点1100可对应于本发明实施例的传输业务的方法中的中间节点,也可以对应于根据本发明实施例的中间节点600,并且中间节点1100中的各个模块的上述和其它操作和/或功能分别为了实现图1至图5中的各个方法的相应流程,为了简洁,在此不再赘述。
因此,本发明实施例的中间节点,当确定该中间节点向服务器发送的业务请求消息的TCP包长度与终端向该中间节点发送的业务请求消息的TCP包长度不同时,断开当前该终端与该服务器之间的TCP连接,以便于根据重新建立的TCP连接进行后续的业务传输,从而能够有效避免中间节点在同一个TCP连接下对TCP包长度的重新计算和修改,能够有效降低对中间节点性能的影响。
如图10所示,本发明实施例还提供了一种终端1200,该终端1200包括处理器1210、存储器1220、总线系统1230、接收器1240和发送器1250。其中,处理器1210、存储器1220、接收器1240和发送器1250通过总线系统1230相连,该存储器1220用于存储指令,该处理器1210用于执行该存储器1220存储的指令,以控制接收器1240接收信号,并控制发送器1250发送信号。其中,处理器1210,用于建立与服务器之间的传输控制协议TCP连接;发送器1250,用于向中间节点发送用于请求该服务器提供业务服务的第一业务请求消息,以便于该中间节点根据该第一业务请求消息,向该服务器发送第二业务请求消息;接收器1240,用于接收该中间节点在确定该第二业务请求消息的TCP包长度与该第一业务请求消息的TCP包长度不同时,发送的用于指示断开该TCP连接的指示信息;该处理器1210还用于,根据该接收器1240接收的该指示信息,断开该TCP连接。
因此,本发明实施例的终端,根据中间节点发送的用于断开终端与服务器之间TCP连接的指示信息,断开当前终端与服务器之间的TCP连接,以便于终端与服务器基于重新建立的TCP连接进行后续的业务传输,能够有效避免中间节点在同一个TCP连接上对TCP包长度的重新计算和修改,从而能够有效降低中间节点的处理负担,能够提高其性能。
应理解,在本发明实施例中,该处理器1210可以是中央处理单元(CentralProcessing Unit,简称为“CPU”),该处理器1210还可以是其他通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
该存储器1220可以包括只读存储器和随机存取存储器,并向处理器1210提供指令和数据。存储器1220的一部分还可以包括非易失性随机存取存储器。例如,存储器1220还可以存储设备类型的信息。
该总线系统1230除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线系统1230。
在实现过程中,上述方法的各步骤可以通过处理器1210中的硬件的集成逻辑电路或者软件形式的指令完成。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1220,处理器1210读取存储器1220中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
可选地,作为一个实施例,该接收器1240具体用于,接收该中间节点发送的第一业务响应消息,该第一业务响应消息用于指示该服务器关于提供业务服务的相关信息,该第一业务响应消息还包括该指示信息。
可选地,作为一个实施例,该处理器1210还用于,重新建立与该服务器之间的TCP连接;
该发送器1250还用于,向该中间节点发送用于请求该服务器提供业务服务的第三业务请求消息,该第三业务请求消息与该第一业务请求消息对应相同的会话。
应理解,根据本发明实施例的终端1200可对应于本发明实施例的传输业务的方法中的终端,以及可以对应于根据本发明实施例的终端700,并且终端1200中的各个模块的上述和其它操作和/或功能分别为了实现图1至图5中的各个方法的相应流程,为了简洁,在此不再赘述。
因此,本发明实施例的终端,根据中间节点发送的用于断开终端与服务器之间TCP连接的指示信息,断开当前终端与服务器之间的TCP连接,以便于终端与服务器基于重新建立的TCP连接进行后续的业务传输,能够有效避免中间节点在同一个TCP连接上对TCP包长度的重新计算和修改,从而能够有效降低中间节点的处理负担,能够提高其性能。
如图11所示,本发明实施例还提供了一种服务器1300,该服务器1300包括处理器1310、存储器1320、总线系统1330、接收器1340和发送器1350。其中,处理器1310、存储器1320、接收器1340和发送器1350通过总线系统1330相连,该存储器1320用于存储指令,该处理器1310用于执行该存储器1320存储的指令,以控制接收器1340接收信号,并控制发送器1350发送信号。其中,该接收器1340,用于接收中间节点根据终端的用于请求服务器提供业务服务的第一业务请求消息发送的第二业务请求消息;该处理器1310,用于断开与该终端之间的传输控制协议TCP连接,或者通过该发送器1350向该中间节点发送用于指示该终端断开该TCP连接的第一指示信息,以便实现断开该TCP连接;该接收器1340,还用于根据与该终端重新建立的TCP连接,接收该中间节点发送的从该终端接收的第三业务请求消息,该第三业务请求消息与该第一业务请求消息对应相同的会话。
因此,本发明实施例的服务器,通过断开与终端之间的TCP连接,或者指示该终端断开该TCP连接,以便于终端与服务器基于重新建立的TCP连接进行后续的业务传输,能够有效避免中间节点在同一个TCP连接上对TCP包长度的重新计算和修改,从而能够有效降低中间节点的处理负担,能够提高其性能。
应理解,在本发明实施例中,该处理器1310可以是中央处理单元(CentralProcessing Unit,简称为“CPU”),该处理器1310还可以是其他通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
该存储器1320可以包括只读存储器和随机存取存储器,并向处理器1310提供指令和数据。存储器1320的一部分还可以包括非易失性随机存取存储器。例如,存储器1320还可以存储设备类型的信息。
该总线系统1330除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,在图中将各种总线都标为总线系统1330。
在实现过程中,上述方法的各步骤可以通过处理器1310中的硬件的集成逻辑电路或者软件形式的指令完成。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1320,处理器1310读取存储器1320中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
可选地,作为一个实施例,该处理器1310具体用于,根据该中间节点在确定该第二业务请求消息的传输控制协议TCP包长度与该第一业务请求消息的TCP包长度不同时,发送的用于指示断开该TCP连接的第二指示信息,断开该TCP连接。
可选地,作为一个实施例,该接收器1240接收的该第二业务请求消息包括该第二指示信息;
该处理器1310具体用于,根据该接收器1240接收的该第二业务请求消息,断开该TCP连接。
可选地,作为一个实施例,该处理器1310具体用于,当确定该第二业务请求消息中包括下列信息中的至少一种信息:用户名、用户密码、用户上下文、用户公网互联网协议IP地址、用户私网IP地址、网络接入点名称APN、网络设备名称和网络设备编号时,断开该TCP连接。
可选地,作为一个实施例,该处理器1310具体用于,当确定该第二业务请求消息中包括下列信息中的至少一种信息:用户名、用户密码、用户上下文、用户公网互联网协议IP地址、用户私网IP地址、网络接入点名称APN、网络设备名称和网络设备编号时,通过该发送器1250向该中间节点发送该第一指示信息。
可选地,作为一个实施例,该处理器1310具体用于,根据该接收器1240接收的该第二业务请求消息,通过该发送器1250向该中间发送第二业务响应消息,该第二业务响应消息包括该第一指示信息。
应理解,根据本发明实施例的服务器1300可对应于本发明实施例的传输业务的方法中的服务器,以及根据本发明实施例的服务器800,并且服务器1300中的各个模块的上述和其它操作和/或功能分别为了实现图1至图5中的各个方法的相应流程,为了简洁,在此不再赘述。
因此,本发明实施例的服务器,通过断开与终端之间的TCP连接,或者指示该终端断开该TCP连接,以便于终端与服务器基于重新建立的TCP连接进行后续的业务传输,能够有效避免中间节点在同一个TCP连接上对TCP包长度的重新计算和修改,从而能够有效降低中间节点的处理负担,能够提高其性能。
另外,本文中术语“系统”和“网络”在本文中常被可互换使用。本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
应理解,在本发明实施例中,“与A相应的B”表示B与A相关联,根据A可以确定B。但还应理解,根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其它信息确定B。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例技术方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者中间节点等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (28)
1.一种中间节点,其特征在于,包括:
接收器,用于接收终端发送的用于请求服务器提供业务服务的第一业务请求消息;
处理器,用于根据所述接收器接收的所述第一业务请求消息,确定第二业务请求消息;
发送器,用于当确定所述处理器确定的所述第二业务请求消息的传输控制协议TCP包长度与所述第一业务请求消息的TCP包长度不同时,向所述终端和/或所述服务器发送用于指示断开所述终端与所述服务器之间的TCP连接的指示信息。
2.根据权利要求1所述的中间节点,其特征在于,所述处理器确定的所述第二业务请求消息包括下列信息中的至少一种信息:用户名、用户密码、用户上下文、用户公网互联网协议IP地址、用户私网IP地址、网络接入点名称APN、网络设备名称和网络设备编号。
3.根据权利要求1或2所述的中间节点,其特征在于,所述发送器具体用于,向所述服务器发送所述第二业务请求消息,所述第二业务请求消息包括所述指示信息。
4.根据权利要求1或2所述的中间节点,其特征在于,所述发送器具体用于,向所述服务器发送所述第二业务请求消息;
所述接收器,用于接收所述服务器根据所述第二业务请求消息发送的第二业务响应消息;
所述发送器用于,根据所述接收器接收的所述第二业务响应消息,向所述终端发送第一业务响应消息,所述第一业务响应消息包括所述指示信息。
5.根据权利要求1所述的中间节点,其特征在于,
所述接收器还用于,接收所述终端在与所述服务器重新建立TCP连接之后发送的第三业务请求消息,所述第三业务请求消息与所述第一业务请求消息对应相同的会话;
所述发送器还用于,向所述服务器发送所述第三业务请求消息。
6.一种终端,其特征在于,包括:
处理器,用于建立与服务器之间的传输控制协议TCP连接;
发送器,用于向中间节点发送用于请求所述服务器提供业务服务的第一业务请求消息,以便于所述中间节点根据所述第一业务请求消息,向所述服务器发送第二业务请求消息;
接收器,用于接收所述中间节点在确定所述第二业务请求消息的TCP包长度与所述第一业务请求消息的TCP包长度不同时,发送的用于指示断开所述TCP连接的指示信息;
所述处理器还用于,根据所述接收器接收的所述指示信息,断开所述TCP连接。
7.根据权利要求6所述的终端,其特征在于,
所述接收器具体用于,接收所述中间节点发送的第一业务响应消息,所述第一业务响应消息用于指示所述服务器关于提供业务服务的相关信息,所述第一业务响应消息还包括所述指示信息。
8.根据权利要求6或7所述的终端,其特征在于,所述处理器还用于,重新建立与所述服务器之间的TCP连接;
所述发送器还用于,向所述中间节点发送用于请求所述服务器提供业务服务的第三业务请求消息,所述第三业务请求消息与所述第一业务请求消息对应相同的会话。
9.一种服务器,其特征在于,包括:
接收器,处理器,发送器;
所述接收器,用于接收中间节点根据终端的用于请求服务器提供业务服务的第一业务请求消息发送的第二业务请求消息;
所述处理器,用于断开与所述终端之间的传输控制协议TCP连接,或者通过所述发送器向所述中间节点发送用于指示所述终端断开所述TCP连接的第一指示信息,以便实现断开所述TCP连接;
所述接收器,还用于根据与所述终端重新建立的TCP连接,接收所述中间节点发送的从所述终端接收的第三业务请求消息,所述第三业务请求消息与所述第一业务请求消息对应相同的会话。
10.根据权利要求9所述的服务器,其特征在于,所述处理器具体用于,根据所述中间节点在确定所述第二业务请求消息的传输控制协议TCP包长度与所述第一业务请求消息的TCP包长度不同时,发送的用于指示断开所述TCP连接的第二指示信息,断开所述TCP连接。
11.根据权利要求10所述的服务器,其特征在于,所述接收器接收的所述第二业务请求消息包括所述第二指示信息;
所述处理器具体用于,根据所述接收器接收的所述第二业务请求消息,断开所述TCP连接。
12.根据权利要求9所述的服务器,其特征在于,所述处理器具体用于,当确定所述第二业务请求消息中包括下列信息中的至少一种信息:用户名、用户密码、用户上下文、用户公网互联网协议IP地址、用户私网IP地址、网络接入点名称APN、网络设备名称和网络设备编号时,断开所述TCP连接。
13.根据权利要求9所述的服务器,其特征在于,所述处理器具体用于,当确定所述第二业务请求消息中包括下列信息中的至少一种信息:用户名、用户密码、用户上下文、用户公网互联网协议IP地址、用户私网IP地址、网络接入点名称APN、网络设备名称和网络设备编号时,通过所述发送器向所述中间节点发送所述第一指示信息。
14.根据权利要求13所述的服务器,其特征在于,所述处理器具体用于,根据所述接收器接收的所述第二业务请求消息,通过所述发送器向所述中间发送第二业务响应消息,所述第二业务响应消息包括所述第一指示信息。
15.一种传输业务的方法,其特征在于,包括:
接收终端发送的用于请求服务器提供业务服务的第一业务请求消息;
根据所述第一业务请求消息,确定第二业务请求消息;
当确定所述第二业务请求消息的传输控制协议TCP包长度与所述第一业务请求消息的TCP包长度不同时,向所述终端和/或所述服务器发送用于指示断开所述终端与所述服务器之间的TCP连接的指示信息。
16.根据权利要求15所述的方法,其特征在于,所述第二业务请求消息包括下列信息中的至少一种信息:用户名、用户密码、用户上下文、用户公网互联网协议IP地址、用户私网IP地址、网络接入点名称APN、网络设备名称和网络设备编号。
17.根据权利要求15或16所述的方法,其特征在于,所述向所述终端和/或所述服务器发送用于指示断开所述终端与所述服务器之间的TCP连接的指示信息,包括:
向所述服务器发送所述第二业务请求消息,所述第二业务请求消息包括所述指示信息。
18.根据权利要求15或16所述的方法,其特征在于,所述向所述终端和/或所述服务器发送用于指示断开所述终端与所述服务器之间的TCP连接的指示信息,包括:
向所述服务器发送所述第二业务请求消息;
接收所述服务器根据所述第二业务请求消息发送的第二业务响应消息;
根据所述第二业务响应消息,向所述终端发送第一业务响应消息,所述第一业务响应消息包括所述指示信息。
19.根据权利要求15所述的方法,其特征在于,所述方法还包括:
接收所述终端在与所述服务器重新建立TCP连接之后发送的第三业务请求消息,所述第三业务请求消息与所述第一业务请求消息对应相同的会话;
向所述服务器发送所述第三业务请求消息。
20.一种传输业务的方法,其特征在于,包括:
建立与服务器之间的传输控制协议TCP连接;
向中间节点发送用于请求所述服务器提供业务服务的第一业务请求消息,以便于所述中间节点根据所述第一业务请求消息,向所述服务器发送第二业务请求消息;
接收所述中间节点在确定所述第二业务请求消息的TCP包长度与所述第一业务请求消息的TCP包长度不同时,发送的用于指示断开所述TCP连接的指示信息;
根据所述指示信息,断开所述TCP连接。
21.根据权利要求20所述的方法,其特征在于,所述接收所述中间节点在确定所述第二业务请求消息的TCP包长度与所述第一业务请求消息的TCP包长度不同时,发送的用于指示断开所述TCP连接的指示信息,包括:
接收所述中间节点发送的第一业务响应消息,所述第一业务响应消息用于指示所述服务器关于提供业务服务的相关信息,所述第一业务响应消息还包括所述指示信息。
22.根据权利要求20或21所述的方法,其特征在于,所述方法还包括:
重新建立与所述服务器之间的TCP连接;
向所述中间节点发送用于请求所述服务器提供业务服务的第三业务请求消息,所述第三业务请求消息与所述第一业务请求消息对应相同的会话。
23.一种传输业务的方法,其特征在于,包括:
接收中间节点根据终端的用于请求服务器提供业务服务的第一业务请求消息发送的第二业务请求消息;
断开与所述终端之间的传输控制协议TCP连接,或者向所述中间节点发送用于指示所述终端断开所述TCP连接的第一指示信息,以便实现断开所述TCP连接;
根据与所述终端重新建立的TCP连接,接收所述中间节点发送的从所述终端接收的第三业务请求消息,所述第三业务请求消息与所述第一业务请求消息对应相同的会话。
24.根据权利要求23所述的方法,其特征在于,所述断开与所述终端之间的传输控制协议TCP连接,包括:
根据所述中间节点在确定所述第二业务请求消息的传输控制协议TCP包长度与所述第一业务请求消息的TCP包长度不同时,发送的用于指示断开所述TCP连接的第二指示信息,断开所述TCP连接。
25.根据权利要求24所述的方法,其特征在于,所述第二业务请求消息包括所述第二指示信息;
所述断开所述TCP连接,包括:
根据所述第二业务请求消息,断开所述TCP连接。
26.根据权利要求23所述的方法,其特征在于,所述断开与所述终端之间的传输控制协议TCP连接,包括:
当确定所述第二业务请求消息中包括下列信息中的至少一种信息:用户名、用户密码、用户上下文、用户公网互联网协议IP地址、用户私网IP地址、网络接入点名称APN、网络设备名称和网络设备编号时,断开所述TCP连接。
27.根据权利要求23所述的方法,其特征在于,所述向所述中间节点发送用于指示所述终端断开所述TCP连接的第一指示信息,包括:
当确定所述第二业务请求消息中包括下列信息中的至少一种信息:用户名、用户密码、用户上下文、用户公网互联网协议IP地址、用户私网IP地址、网络接入点名称APN、网络设备名称和网络设备编号时,向所述中间节点发送所述第一指示信息。
28.根据权利要求27所述的方法,其特征在于,所述向所述中间节点发送所述第一指示信息,包括:
根据所述第二业务请求消息向所述中间发送第二业务响应消息,所述第二业务响应消息包括所述第一指示信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410132226.7A CN104980456B (zh) | 2014-04-03 | 2014-04-03 | 传输业务的方法、中间节点、终端和服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410132226.7A CN104980456B (zh) | 2014-04-03 | 2014-04-03 | 传输业务的方法、中间节点、终端和服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104980456A CN104980456A (zh) | 2015-10-14 |
CN104980456B true CN104980456B (zh) | 2018-09-21 |
Family
ID=54276557
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410132226.7A Active CN104980456B (zh) | 2014-04-03 | 2014-04-03 | 传输业务的方法、中间节点、终端和服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104980456B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108900575B (zh) * | 2018-06-06 | 2021-07-20 | 深圳蓝贝科技有限公司 | 基于移动终端的长连接分级通信方法和系统 |
CN111757511B (zh) * | 2019-03-28 | 2022-06-10 | 华为技术有限公司 | 通信方法、装置及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1586088A (zh) * | 2001-07-24 | 2005-02-23 | 株式会社Ntt都科摩 | 添加数据传输源信息到数据中的通信系统 |
CN101247352A (zh) * | 2008-03-20 | 2008-08-20 | 华为技术有限公司 | 网关设备上缓存及转发数据包的方法及网关设备 |
CN101827111A (zh) * | 2010-05-12 | 2010-09-08 | 中兴通讯股份有限公司 | Tcp链接方法、网络系统、客户端和服务器 |
CN102326374A (zh) * | 2008-12-23 | 2012-01-18 | 诺基亚西门子通信公司 | 用于在网络中处理数据的方法和设备 |
CN102843391A (zh) * | 2011-06-21 | 2012-12-26 | 中兴通讯股份有限公司 | 一种信息发送方法及网关 |
CN103139185A (zh) * | 2011-12-02 | 2013-06-05 | 中科信息安全共性技术国家工程研究中心有限公司 | 一种实现安全反向代理服务的方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050210122A1 (en) * | 2004-03-22 | 2005-09-22 | Qualcomm Incorporated | HTTP acceleration over a network link |
-
2014
- 2014-04-03 CN CN201410132226.7A patent/CN104980456B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1586088A (zh) * | 2001-07-24 | 2005-02-23 | 株式会社Ntt都科摩 | 添加数据传输源信息到数据中的通信系统 |
CN101247352A (zh) * | 2008-03-20 | 2008-08-20 | 华为技术有限公司 | 网关设备上缓存及转发数据包的方法及网关设备 |
CN102326374A (zh) * | 2008-12-23 | 2012-01-18 | 诺基亚西门子通信公司 | 用于在网络中处理数据的方法和设备 |
CN101827111A (zh) * | 2010-05-12 | 2010-09-08 | 中兴通讯股份有限公司 | Tcp链接方法、网络系统、客户端和服务器 |
CN102843391A (zh) * | 2011-06-21 | 2012-12-26 | 中兴通讯股份有限公司 | 一种信息发送方法及网关 |
CN103139185A (zh) * | 2011-12-02 | 2013-06-05 | 中科信息安全共性技术国家工程研究中心有限公司 | 一种实现安全反向代理服务的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104980456A (zh) | 2015-10-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102469124B (zh) | 基于aog的移动互联网业务的实现方法、网关、代理及系统 | |
US9571409B2 (en) | Maximum transmission unit negotiation method and data terminal | |
CN102571587B (zh) | 报文转发方法和设备 | |
CN104106303A (zh) | 用于在无线网络中在设备之间建立隧道式直接链路设立(tdls)会话的方法和装置 | |
WO2021243837A1 (zh) | 基于ursp规则的应用数据路由方法及用户设备 | |
CN110830925A (zh) | 一种用户群组的会话管理方法及装置 | |
CN109889499A (zh) | 报文发送方法及相关装置 | |
CN101534302A (zh) | 一种提供tcp服务的方法、系统和相关装置 | |
WO2010121528A1 (zh) | 一种移动终端及其基于p2p模式的数据传输方法 | |
US10812421B2 (en) | Conveying instant messages via HTTP | |
TWI672961B (zh) | 一種資料處理方法、裝置、設備及電腦可讀存儲介質 | |
CN112654070B (zh) | 用户终端间的通信方法、装置、设备及存储介质 | |
JP2013229834A (ja) | Tcp中継装置 | |
WO2017008701A1 (zh) | 数据传输方法、装置及用户设备 | |
CN102612033B (zh) | 具有瘦无线接入点功能的手机以及其通信方法 | |
WO2015085763A1 (zh) | 一种数据传输方法及路由器 | |
CN108702798A (zh) | 数据传输的方法与装置 | |
CN102882772A (zh) | 一种即时通信数据传输方法、客户端、服务器及系统 | |
US9819730B2 (en) | System and method for network access based on application layer data | |
CN104272860B (zh) | 用于通信网络中的有效信令消息处理的方法和设备 | |
CN114745456A (zh) | 报文处理方法、装置及网络地址转换设备 | |
CN102710495B (zh) | 一种监控网络用户主机建立路由信息的方法及装置 | |
CN104980456B (zh) | 传输业务的方法、中间节点、终端和服务器 | |
CN106027599B (zh) | 一种数据传输通道建立方法、系统和服务器 | |
WO2014180302A1 (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |