一种网络通信中控制建立终端连接的方法

文档序号:7643861阅读:191来源:国知局
专利名称:一种网络通信中控制建立终端连接的方法
技术领域
本发明涉及一种网络通信中控制建立终端连接的方法。
背景技术
随着网络用户的不断增长,利用网络进行大数据量业务的传输得到了广泛的应用,例如个人用户之间常常利用网络进行文件传输、音视频聊天等。
目前,网络用户之间进行大数据量业务的传输时通常以端对端的方式连接,具体的连接的方式有直连和通过服务器中转连接,直连又包括传输控制协议(Transmission Control Protocol,TCP)直连、用户数据报协议(User Datagram Protocol,UDP)直连、点对点(point to point,P2P)连接等,通过服务器中转连接包括TCP服务器中转、UDP服务器中转等,各种连接的通信质量、适用场合和传输特性各自不同,如何利用不同类型连接以在端对端之间建立高质稳定的连接通道,同时尽量减少对服务器的通信压力,成了以上大数据量传输业务能否高质量运行的关键。
现有技术中,在端与端进行连接时,通常同时尝试所有可能的连接方式,若某一种连接成功后就一直使用这种连接进行通信,直到连接断开或者业务结束。
但是,现有技术的这种连接方法具有无法有效控制连接建立的过程、及连接建立后无法对连接进行动态切换的缺点,以下分别具体说明这两个缺点。
现有技术无法有效控制连接建立的过程,具体包括以下两个方面1、无法根据业务需求选择符合需求的连接;如前所述,各种连接的通信质量、适用场合和传输特性各自不同,所以应当根据不同的业务需求设定连接方法,让更适合的连接可以更早启动并成为首选连接。但是由于现有只能使用将所有的连接同时进行,最早成功的连接则为最终连接的方式,所示无法实现根据业务需求来设定连接方法;例如,当进行音视频聊天业务时,使用UDP连接较适合该业务,但是,若TCP连接比UDP连接提前连接成功,则无法选择UDP连接;2、直连或通过服务器连接都可以的情况下,没有正确的机制可以保证连接方式为较优的直连,增加了服务器的通信压力;同样是由于所有的连接同时进行,最早成功的连接就会是最终的连接方式;例如,如果TCP服务器中转连接首先成功,则不会再进行其他连接,这样就会增加服务器的通信压力。
现有技术在连接后无法对连接进行动态切换的缺点,具体包括以下两个方面1、连接异常断开时,无法创建新的连接来继续维持通信;2、连接质量较差时无法创建质量更好的新连接替换掉现有连接;例如,TCP直接连接的方式带宽很低,文件传输很慢,此时使用现有技术无法通过尝试建立服务器中转连接或者其他连接来提高传输速度。

发明内容
本发明要解决的技术问题是提供一种网络通信中控制建立终端连接的方法,通过该方法可以有效控制连接建立的过程并在连接建立后可以对连接进行动态切换。
为解决上述技术问题,本发明的目的是通过以下技术方案实现的一种网络通信中控制建立终端连接的方法,包括按照预置的顺序启动多个连接;当任一连接成功后,停止其他排序靠后的连接,设置该连接为首选连接。
从以上技术方案可以看出,由于本发明可以使各种连接按照预置的顺序启动,进而可以有效控制连接建立的过程并可以在建立连接后对连接进行动态切换。


图1为本发明一种网络通信中控制建立终端连接的方法第一实施例的流程图;
图2为本发明一种网络通信中控制建立终端连接的方法第二实施例的流程图;图3为本发明一种网络通信中控制建立终端连接的方法第三实施例的流程图。
具体实施例方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述。
本发明的方法核心思想为按照预置的顺序启动多个连接;当任一连接成功后,停止其他排序靠后的连接,设置该连接为首选连接。
基于本发明的核心思想,针对实际中经常出现的几种情况,本发明给出了具体方案,以下分别详细说明。
首先,说明本发明的第一实施例,本发明第一实施例举例具体说明了当网络中的计算机开始互相连接时的连接方法。
本发明首先预置了各种连接的启动时间和优先级,连接时根据所述预置的启动时间和优先级管理各个连接的启动和替换关系。本发明第一实施例预置各种连接的优先级和启动时间如表一所示。
表一

以下对表一进行详细说明UDP直连启动时间为0,表示立即启动;连接优先级为4,比其他连接的优先级都高,表示该连接一旦成功则设置其为首选连接,并要停止其他低优先级的连接;若其连接成功时已经有低优先级的连接成功,则停止该低优先级的连接,设置该连接为首选连接;UDP服务器中转启动时间为4,表示过4秒后才启动;连接优先级为3,比UDP直连低,比其他连接的优先级都高,表示该连接一旦成功且UDP直连没有成功则为首选连接,并要停止其他低优先级的连接;若其连接成功时已经有低优先级的连接成功,则停止该低优先级的连接,设置该连接为首选连接;TCP直连启动时间为0,表示立即启动;连接优先级为2,比UDP直连和UDP服务器中转低,比TCP服务器中转的优先级高,表示该连接一旦成功且UDP直连与UDP服务器中转都未成功时则为首选连接,并要停止其他低优先级的连接;若其连接成功时已经有低优先级的连接成功,则停止该低优先级的连接,设置该连接为首选连接;TCP服务器中转启动时间为0xFFFFFFF,表示不与其他连接同步启动,而是在所有比它高优先级的连接都失败后才启动该连接;连接优先级为1,是最低优先级。
如图1所示为本发明第一实施例的流程图,包括101、启动UDP直连和TCP直连;为了可以迅速获得连接,本实施例采用将所有连接在流程一开始就在各自预置的启动时间后启动的方式进行连接,由于UDP直连和TCP直连的启动时间都是0,所以它们是立即启动的;102、当UDP直连成功,则设置UDP直连为首选连接,停止TCP直连,流程结束;当TCP直连成功且UDP直连失败,则设置TCP直连为首选连接;103、UDP直连和TCP直连启动4秒后且UDP直连未成功,启动UDP服务器中转连接;104、当UDP直连、TCP直连与UDP服务器中转连接中任一成功且没有比该成功连接优先级高的连接成功后,设置该连接为首选连接,停止比该连接优先级低的连接;具体为当UDP直连成功,则设置UDP直连为首选连接,停止TCP直连与UDP服务器中转连接,流程结束;当UDP服务器中转连接成功且UDP直连未成功,则设置UDP服务器中转连接为首选连接,停止TCP直连,流程结束;当TCP直连成功且UDP直连与UDP服务器中转连接都未成功,则设置TCP直连为首选连接,流程结束;105、当UDP直连、TCP直连与UDP服务器中转都失败后,启动TCP服务器中转连接;一般地,具体是当UDP直连、TCP直连与UDP服务器中转都超时失败后,启动TCP服务器中转连接;106、当TCP服务器中转连接成功,则设置TCP服务器中转连接为首选连接,流程结束。
本发明第一实施例提出了一种连接方法,该方法是根据表一的设置进行建立连接的,实际应用中适用于网络用户间音视频聊天的需求。
实际应用时,可以根据不同的需求,预置不同的启动时间和优先级。如表二所示为针对网络服务器负载大时对启动时间和优先级的设置表,其将UDP服务器中转的优先级降低并设置了一定的启动时间,可以让直连的成功概率远大于通过服务器中转连接成功的概率,进而明显减少服务器的通信压力。应用本发明原理,可以针对不同的应用情况使用不同的优先级与启动时间的设置,可以根据业务需求选择符合需求的连接。
表二

上述为本发明的第一实施例,其针对用户之间刚开始连接时的情况提出了解决方案。当连接建立成功后需要重新建立连接时,也可以应用本发明的方法,以下进行详细说明。
一般地,用户之间已经连接后,当连接异常断开或者连接质量不符合要求时,利用本发明的方法可以重新建立连接。
此时,应当根据预置的各个连接的顺序控制各个连接的启动顺序,可以使合适的连接方式更早的启动和连接成功。
例如当当前连接异常断开时, 按照预置的顺序启动与该连接排序相同的连接,当没有这样的连接或这样的连接全部失败后,按照预置的顺序启动该连接之后的连接,当任一排序相同的连接全部失败后则按照预置的顺序启动排序靠后的连接;当当前连接质量不符合要求时, 可以按照预置的顺序启动与该连接相比排序靠后的连接,当任一排序相同的连接全部失败后则按照预置的顺序启动排序靠后的连接。
以下结合具体实施例详细说明。
具体地,本发明实施例以用户根据实际需要预先设置的各个连接的启动序号来体现顺序,启动序号较小的即为排序靠前的,启动序号较大的即为排序靠后的。当连接异常断开后,首先应当找到所要断开的连接的启动序号,然后启动与该连接启动序号相同的其他连接或者启动比该连接启动序号大的连接,若连接不成功,则启动下一启动序号的连接,直到连接成功。以下举例说明。
表三为针对此种情况本发明预置的各个连接的启动序号与启动时间表。
表三


如图2所示为本发明第二实施例的流程图,该实施例举例说明了当TCP直连异常断开后,按照表三预置的启动序号和启动时间,进行重新连接的方法,包括201、查找断开的连接的启动序号;通过表三进行查找,找到TCP直连的启动序号为1;202、启动与该断开的连接启动序号相同的所有连接;表三中启动序号为1的有UDP直连和TCP直连,所以此时先启动UDP直连,然后根据表三中设置的启动时间,在2秒后启动TCP直连;203、当UDP直连或TCP直连任一个首先成功,则设置该连接为首选连接,停止其他连接,流程结束;当UDP直连与TCP直连的连接未成功,则启动UDP服务器中转连接;204、当UDP服务器中转连接成功,则设置该连接为首选连接,流程结束;当UDP服务器中转连接未成功,则启动TCP服务器中转连接;205、当TCP服务器中转连接成功,则设置该连接为首选连接,流程结束;当TCP服务器中转连接未成功,则结束。
以上举例具体说明了当连接异常断开后进行重新连接的方法,下面举例说明当连接质量不符合要求时进行重新连接的方法。
当连接质量不符合要求时,首先应当找到该连接的启动序号,然后启动比该启动序号大一级的全部连接,若有连接成功则设置该成功连接为首选连接,若没有一个连接成功,则启动再下一启动序号更大的全部连接,直到有连接成功。以下举例说明。
表四为针对此种情况本发明预置的各个连接的启动序号与启动时间表。
表四

如图3所示为本发明第三实施例的流程图,该实施例举例说明了当TCP直连的连接质量不符合要求后,按照表四预置的启动序号和启动时间,进行重新连接的方法,包括301、查找断开的连接的启动序号;通过表四进行查找,找到TCP直连的启动序号为1;302、启动比该连接启动序号大一级的所有连接;表四中启动序号为2的是UDP服务器中转连接,启动UDP服务器中转连接;303、当UDP服务器中转连接成功,则设置该连接为首选连接,流程结束;当UDP服务器中转连接未成功,则启动TCP服务器中转连接;304、当TCP服务器中转连接成功,则设置该连接为首选连接,流程结束;当TCP服务器中转连接未成功,则返回。
以上对本发明所提供的一种网络通信中控制建立终端连接的方法进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式
及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
权利要求
1.一种网络通信中控制建立终端连接的方法,其特征在于,包括按照预置的顺序启动多个连接;当任一连接成功后,停止其他排序靠后的连接,设置该连接为首选连接。
2.如权利要求1所述的网络通信中控制建立终端连接的方法,其特征在于所述按照预置的顺序启动多个连接的步骤包括所有连接在各自预置的延迟时间后启动;所述排序靠后的连接具体为根据预置的优先级顺序比该连接的优先级低的连接。
3.如权利要求1所述的网络通信中控制建立终端连接的方法,其特征在于所述按照预置的顺序启动多个连接的步骤包括当当前连接异常断开时,按照预置的顺序启动与该连接排序相同的连接,当没有这样的连接或这样的连接全部失败后,按照预置的顺序启动该连接之后的连接,当任一排序相同的连接全部失败后则按照预置的顺序启动排序靠后的连接。
4.如权利要求1所述的网络通信中控制建立终端连接的方法,其特征在于所述按照预置的顺序启动多个连接的步骤包括当当前连接质量不符合要求时,按照预置的顺序启动与该连接相比排序靠后的连接,当任一排序相同的连接全部失败后则按照预置的顺序启动排序靠后的连接。
5.如权利要求1所述的网络通信中控制建立终端连接的方法,其特征在于所述预置的顺序为用户根据不同业务的需要而设置的各个连接的顺序。
全文摘要
本发明提供了一种网络通信中控制建立终端连接的方法,包括按照预置的顺序启动多个连接;当任一连接成功后,停止其他排序靠后的连接,设置该连接为首选连接。通过本发明,可以使各种连接按照预置的顺序启动,进而可以有效控制连接建立的过程并可以在建立连接后对连接进行动态切换。
文档编号H04L12/56GK101068147SQ200710005030
公开日2007年11月7日 申请日期2007年2月9日 优先权日2007年2月9日
发明者黄建华 申请人:腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1