一种在即时通信工具中穿越防火墙的方法

文档序号:7696221阅读:184来源:国知局
专利名称:一种在即时通信工具中穿越防火墙的方法
技术领域
本发明涉及计算机设计与应用技术领域,特别是涉及一种在即时 通信工具中穿越防火墙的方法。
背景技术
目前,通过即时通讯工具进行文本聊天或音频、视频会议以及实 况播送时,不同的协议发送不同的数据类型数据。具体文本聊天通常 是使用传输控制协议(TCP)来进行发送的,而音频、视频会议以及 实况播送的音频、视频通常使用用户数据报协议(UDP)来进行发送 的。直接与互联网相联的服务器而进行的通信通过不会受到客户端防 火墙的阻碍,登录到服务器上的操作通常会打开一条从服务器经防火 墙的返回路径。然而,防火墙同创汇阻拦直接进行的客户端-客户端 的通信,大部分即时通讯工具,只能连接服务器的一个监听端口,如 MSN是1863,设置防火墙时,很难突破防火墙的限制,导致客户端无 法连接服务器。

发明内容
本发明为解决上述问题不足之处,提供一种在即时通信工具中穿 越防火墙的方法,当用户端设置代理服务器或企业设置了防火墙进行 了网络限制时,客户端尝试各种方法穿越防火墙,连接和登录服务器, 完成即时通讯的功能。 包括以下步骤
第一步客户端首先直接连接服务器的监听端口; 第二步当上述连接失败,则通过代理连接服务器;第三步当第二步连接不上,客户端通过80端口连接服务器; 第四步上述三步都无法连接服务器,则客户端通过http协议封装 网络数据,连接服务器,发送http请求,获取服务器的响应。
所述第二步还包括客户端检测本机是否设置了代理,如果设置了 代理,则通过代理连接服务器。
所述第三步,当80端口连接不通,则连接443端口。 所述步骤四中,使用HUp失败,则使用Https连接和发送请求。 上述四步都不能连接,则需要通过手工干预。 本发明的优点
客户端自动检测和穿越防火墙,因此可以适应大部分用户的网络 环境,不影响用户登录服务器使用即时通讯功能。


图1是本发明实现文档协同处理方法的一实施例的流程图。
具体实施例方式
本发明的中心思想是,当用户端设置代理服务器或企业设置了防 火墙进行了网络限制时,客户端尝试多种方法穿越防火墙,连接和登 录服务器,完成即时通讯的功能。
实现多种方法穿越防火墙连接服务器的前提
A, 用户能上网,而且没有网络故障;
B, 服务器端支持高可用性,即双机热备或负载平衡,即服务器 不会中断服务;
C, 如果用户本机有防火墙,则应该4巴客户端加入"允许连接,, 的列表,否则客户端无法连接服务器。某些防火墙具备协商的功能, 但不是所有防火墙都支持。如图1所示, 一种在即时通信工具中穿越防火墙的方法,包括如
下步骤
101. 直连
无论本机是否设置代理,或企业是否有防火墙,客户端先尝试 直连,即直接连接服务器的监听端口,假设是5222。
在一般网络环境下,即这些用户没有使用代理上网,防火墙也 没有设置对5222的限制,是可以成功登录的。
102. 通过代理连接
如果直连失败,则客户端检测本机是否设置了代理,如果设置 了代理,则通过代理连接服务器。
某些在局域网内上网的企业,可能是通过代理服务器上网,对于这 些企业的用户,如果没有设置防火墙限制, 一般是可以成功登录的。
103. 穿越防火墙对服务器监听端口的限制 如果经过以上2步,仍然不能连接服务器,则可能是企业在网关设
置了防火墙,限制了局域网连接Internet的某些地址或端口。
由于用户要浏览网页,所以至少80或443端口肯定是开放的,因 此客户端尝试通过80端口连接服务器(服务器是多端口监听的, 5222、 80、 443都支持),如果80不通,则尝试连4妄443端口 。 对于一般的企业防火墙,这种方法是可以成功登录的。
104. 通过http(s)协议封装网络数据,连接服务器 如果以上尝试仍然无法连接服务器,则有可能是企业防火墙限制了
局域网用户只能通过http十办i义连4妄Internet。
因此客户端通过http(s)协议封装网络数据,连接服务器,发送 http(s)请求,获取服务器的响应(服务器端支持http(s)协议)。如果4吏用http失败,则使用https尝试连4姿和发送请求。 105.如果经过l一4步骤后仍然无法连接JI良务器,则客户端记录连接 日志,通过界面提示用户无法登录服务器,用户手工干预,可能是网 络故障、代理设置有误等。
权利要求
1.一种在即时通信工具中穿越防火墙的方法,其特征在于第一步客户端首先直接连接服务器的监听端口;第二步当上述连接失败,则通过代理连接服务器;第三步当第二步连接不上,客户端通过80端口连接服务器;第四步上述三步都无法连接服务器,则客户端通过http协议封装网络数据,连接服务器,发送ht tp请求,获取服务器的响应。
2. 根据权利要求1所述的方法,其特征在于所述第二步还包括客户端检 测本机是否设置了代理,如果设置了代理,则通过代理连接服务器。
3. 根据权利要求1所述的方法,其特征在于所述第三步,当80端口连接 不通,则连4矣443端口。
4. 根据权利要求1所述的方法,其特征在于所述步骤四中,使用HUp失 败,则使用Https连接和发送请求。
5. 根据权利要求1所述的方法,其特征在于上述四步都不能连接,则需 要通过手工干预。
全文摘要
本发明提供一种在即时通信工具中穿越防火墙的方法,包括以下步骤,第一步客户端首先直接连接服务器的监听端口;第二步当上述连接失败,则通过代理连接服务器;第三步当第二步连接不上,客户端通过80端口连接服务器;第四步上述三步都无法连接服务器,则客户端通过http协议封装网络数据,连接服务器,发送http请求,获取服务器的响应。本发明客户端自动检测和穿越防火墙,因此可以适应大部分用户的网络环境,不影响用户登录服务器使用即时通讯功能。
文档编号H04L29/08GK101656754SQ200810118758
公开日2010年2月24日 申请日期2008年8月21日 优先权日2008年8月21日
发明者霍文旌 申请人:北京亿企通信息技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1