《一种融合通信系统中客户端高效检查可用服务器的方法及系统.pdf》由会员分享,可在线阅读,更多相关《一种融合通信系统中客户端高效检查可用服务器的方法及系统.pdf(8页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 102957709 A (43)申请公布日 2013.03.06 C N 1 0 2 9 5 7 7 0 9 A *CN102957709A* (21)申请号 201210515262.2 (22)申请日 2012.12.05 H04L 29/06(2006.01) H04L 1/16(2006.01) (71)申请人广东佳和通信技术有限公司 地址 519080 广东省珠海市软件园路1号生 产加工中心5#楼四层1-4单元 (72)发明人张剑华 李艳平 (74)专利代理机构广州三环专利代理有限公司 44202 代理人温旭 (54) 发明名称 一种融合通信系统中客户端高效。
2、检查可用服 务器的方法及系统 (57) 摘要 本发明提供一种融合通信系统中客户端高效 检查可用服务器的方法,其包括以下步骤:S1、客 户端应用接收用户启动指令并启动;S2、客户端 应用同时向所有地址列表中的服务器发送检查请 求;S3、所述所有服务器接收到所述检查请求后, 分别将应答信息返回至所述客户端应用;S4、所 述客户端应用将第一个收到的应答信息对应的服 务器作为登录服务器。本发明将传统的客户端应 用对多个服务器的串行查询改为并行查询,查询 效率高,减少客户端应用花费在检查可用服务器 上耗费的时间,改善了用户的使用感受。 (51)Int.Cl. 权利要求书2页 说明书4页 附图1页 (19。
3、)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书 2 页 说明书 4 页 附图 1 页 1/2页 2 1.一种融合通信系统中客户端高效检查可用服务器的方法,其特征在于:其包括以下 步骤: S1、客户端应用接收用户启动指令并启动; S2、客户端应用同时向所有地址列表中的服务器发送检查请求; S3、所述所有服务器接收到所述检查请求后,分别将应答信息返回至所述客户端应 用; S4、所述客户端应用将第一个收到的应答信息对应的服务器作为登录服务器。 2.根据权利要求1所述的方法,其特征在于,所述S2,具体包括: S21、所述客户端应用从本地存储读取服务器列表,并创建一个UDP SOCKE。
4、T; S22、所述客户端应用从所述服务器列表中按顺序读取一个服务器地址; S23、所述客户端应用创建一个UDP 数据包,该数据包包括与所述检查请求对应的检查 请求字符、本地IP地址及服务器IP地址; 重复S22和S23,直至为每个服务器均创建了一个对应的UDP 数据包; S24、使用S21创建的UDP SOCKET,同时向每个服务器分别发送其所对应的UDP 数据 包。 3.根据权利要求2所述的方法,其特征在于,所述S3,具体包括: S31、所述服务器接收到一个UDP数据包时,检查包内数据是否包含检查请求字符; S32、如果判断结果为是,所述服务器将收到的UDP数据包的检查请求字符改成检查回 应。
5、字符,将收到的UDP数据内的From IP地址与To IP地址交换位置后,从而将所述UDP数 据包修改为应答包,再将该应答包返回至所述客户端应用。 4.根据权利要求3所述的方法,其特征在于,所述S4,具体包括: S41、所述客户端应用开始侦听S21创建的UDP SOCKET,等待服务器的应答包; S42、如果超过预设的时间阈值还没有收到任何服务器的应答包,则回到S23,如果如此 重复,达到或超过预设的次数阈值还没有收到任何服务器的应答包,则认为所有服务器都 不可达,客户端应用终止;如果在所述时间阈值内,或者在所述次数阈值内,所述客户端应 用接收到至少一个服务器的应答包,则所述客户端应用分析第一。
6、个收到的服务器应答包, 使用应答包中的 “From:”指示的IP地址作为本次的登录服务器进行登录操作。 5.一种融合通信系统中客户端高效检查可用服务器的系统,其特征在于,其包括: 客户应用端及地址列表中的多个服务器; 所述客户应用端包括一启动模块、一检查请求发送模块、一确认模块; 所述每一服务器分别包括一应答模块; 所述启动模块用于接收用户启动指令并启动; 所述检查请求发送模块用于向同时向所有地址列表中的服务器发送检查请求; 所述应答模块用于接收到所述检查请求后,分别将应答信息返回至所述客户端应用; 所述确认模块用于将第一个收到的应答信息对应的服务器作为登录服务器。 6.根据权利要求5所述的系。
7、统,其特征在于,所述发送检查请求模块包括一创建单元、 一读取单元、一数据包创建单元; 所述创建单元用于从本地存储读取服务器列表,并创建一个UDP SOCKET; 所述读取单元用于从所述服务器列表中按顺序读取所述多个服务器地址; 权 利 要 求 书CN 102957709 A 2/2页 3 所述数据包创建单元用于分别为每个服务器创建一个UDP 数据包,每一数据包包括与 所述检查请求对应的检查请求字符、本地IP地址及对应的服务器IP地址。 7.根据权利要求6所述的系统,其特征在于,所述应答模块包括: 一检查判断单元、一应答单元; 所述检查判断单元用于当所述服务器接收到一个UDP数据包时,检查判断包。
8、内数据是 否包含检查请求字符; 所述应答单元用于当判断结果为是时,将收到的UDP数据包的检查请求字符改成检查 回应字符,将收到的UDP数据内的From IP地址与To IP地址交换位置后,从而将所述UDP 数据包修改为应答包,再将该应答包返回至所述客户端应用。 8.根据权利要求7所述的系统,其特征在于,所述确认模块包括一侦听单元及一确认 单元; 所述侦听单元用于侦听S21创建的UDP SOCKET,等待服务器的应答包; 所述确认单元用于:如果超过预设的时间阈值还没有收到任何服务器的应答包,则通 知所述检查请求发送模块重新发送检查请求,如果如此重复,达到或超过预设的次数阈值 还没有收到任何服务器。
9、的应答包,则认为所有服务器都不可达,客户端应用终止;如果在所 述时间阈值内,或者在所述次数阈值内,接收到至少一个服务器的应答包,则分析第一个收 到的服务器应答包,使用应答包中的 “From:”指示的IP地址作为本次的登录服务器进行 登录操作。 权 利 要 求 书CN 102957709 A 1/4页 4 一种融合通信系统中客户端高效检查可用服务器的方法及 系统 技术领域 0001 本发明涉及通信技术领域,特别是涉及一种融合通信系统中,客户端高效检查可 用服务器的方法,及用于实现该方法的系统。 背景技术 0002 融合通信,Unified Communication,简称UC,也常翻译为统一通信。
10、。融合通信是 指,把计算机技术与传统通信技术融合一体的新通信模式,融合计算机网络与传统通信网 络在一个网络平台上,实现电话、传真、数据传输、音视频会议、呼叫中心、即时通信等众多 应用服务。融合通信中,语音终端、PC上的客户端软件(之后将其统称为客户端应用),都需 要连接或注册到服务器上才能正常工作。客户端应用常常都会存储一个可用服务器地址列 表,在启动时去寻找一个可用的服务器去连接。 0003 一般情况下,客户端应用会依次尝试连接服务器地址列表的地址,直到连接成功 为止。比如一个客户端应用存储的服务器地址列表为: 序号地址备注 1 192.168.5.789:8080公司总部 2 3 www。
11、.sdserver/repos山东服务器 客户端应用在启动后,尝试连接序号为1的服务器地址,如果服务器在一定时间内(如 30秒)无响应,则尝试连接序号为2的服务器地址,如此,直到找到可用的服务器地址为止。 如果列表上的地址都尝试过,且无响应,则认为服务器不可达。 0004 假设上面的服务器列表中,序号为3的服务器是可以连通的,序号1与序号2的服 务器是不可达的,那么,客户端应用则需要花费1分钟的时间才能连接到服务器,之后才能 正常工作。如果服务器列表中的地址数量比较多,那客户端应用在检查可用服务器所花费 的时间会更多,给用户带来了不好的使用体验。 发明内容 0005 有鉴于此,本发明所要解决的。
12、问题是提供一种检测服务器是否可用的机制,以减 少客户端应用花费在检查可用服务器上耗费的时间,改善用户的使用感受。 0006 本发明的目的是通过以下技术方案实现的: 一种融合通信系统中客户端高效检查可用服务器的方法,其包括以下步骤: S1、客户端应用接收用户启动指令并启动; S2、客户端应用同时向所有地址列表中的服务器发送检查请求; S3、所述所有服务器接收到所述检查请求后,分别将应答信息返回至所述客户端应 用; S4、所述客户端应用将第一个收到的应答信息对应的服务器作为登录服务器。 0007 所述S2,具体包括: 说 明 书CN 102957709 A 2/4页 5 S21、所述客户端应用从本。
13、地存储读取服务器列表,并创建一个UDP SOCKET; S22、所述客户端应用从所述服务器列表中按顺序读取一个服务器地址; S23、所述客户端应用创建一个UDP 数据包,该数据包包括与所述检查请求对应的检查 请求字符、本地IP地址及服务器IP地址; 重复S22和S23,直至为每个服务器均创建了一个对应的UDP 数据包; S24、使用S21创建的UDP SOCKET,同时向每个服务器分别发送其所对应的UDP 数据 包。 0008 所述S3,具体包括: S31、所述服务器接收到一个UDP数据包时,检查包内数据是否包含检查请求字符; S32、如果判断结果为是,所述服务器将收到的UDP数据包的检查请求。
14、字符改成检查回 应字符,将收到的UDP数据内的From IP地址与To IP地址交换位置后,从而将所述UDP数 据包修改为应答包,再将该应答包返回至所述客户端应用。 0009 所述S4,具体包括: S41、所述客户端应用开始侦听S21创建的UDP SOCKET,等待服务器的应答包; S42、如果超过预设的时间阈值还没有收到任何服务器的应答包,则回到S23,如果如此 重复,达到或超过预设的次数阈值还没有收到任何服务器的应答包,则认为所有服务器都 不可达,客户端应用终止;如果在所述时间阈值内,或者在所述次数阈值内,所述客户端应 用接收到至少一个服务器的应答包,则所述客户端应用分析第一个收到的服务器。
15、应答包, 使用应答包中的 “From:”指示的IP地址作为本次的登录服务器进行登录操作。 0010 本发明还提供一种用于实现上述方法的系统,其包括: 客户应用端及地址列表中的多个服务器; 所述客户应用端包括一启动模块、一检查请求发送模块、一确认模块; 所述每一服务器分别包括一应答模块; 所述启动模块用于接收用户启动指令并启动; 所述检查请求发送模块用于向同时向所有地址列表中的服务器发送检查请求; 所述应答模块用于接收到所述检查请求后,分别将应答信息返回至所述客户端应用; 所述确认模块用于将第一个收到的应答信息对应的服务器作为登录服务器。 0011 具体的,所述发送检查请求模块包括一创建单元、一。
16、读取单元、一数据包创建单 元; 所述创建单元用于从本地存储读取服务器列表,并创建一个UDP SOCKET; 所述读取单元用于从所述服务器列表中按顺序读取所述多个服务器地址; 所述数据包创建单元用于分别为每个服务器创建一个UDP 数据包,每一数据包包括与 所述检查请求对应的检查请求字符、本地IP地址及对应的服务器IP地址。 0012 所述应答模块具体包括: 一检查判断单元、一应答单元; 所述检查判断单元用于当所述服务器接收到一个UDP数据包时,检查判断包内数据是 否包含检查请求字符; 所述应答单元用于当判断结果为是时,将收到的UDP数据包的检查请求字符改成检查 回应字符,将收到的UDP数据内的F。
17、rom IP地址与To IP地址交换位置后,从而将所述UDP 说 明 书CN 102957709 A 3/4页 6 数据包修改为应答包,再将该应答包返回至所述客户端应用。 0013 所述确认模块,具体包括一侦听单元及一确认单元; 所述侦听单元用于侦听S21创建的UDP SOCKET,等待服务器的应答包; 所述确认单元用于:如果超过预设的时间阈值还没有收到任何服务器的应答包,则通 知所述检查请求发送模块重新发送检查请求,如果如此重复,达到或超过预设的次数阈值 还没有收到任何服务器的应答包,则认为所有服务器都不可达,客户端应用终止;如果在所 述时间阈值内,或者在所述次数阈值内,接收到至少一个服务器。
18、的应答包,则分析第一个收 到的服务器应答包,使用应答包中的 “From:”指示的IP地址作为本次的登录服务器进行 登录操作。 0014 与现有技术相比,本发明具备如下优点: 本发明将传统的客户端应用对多个服务器的串行查询改为并行查询,查询效率高,减 少客户端应用花费在检查可用服务器上耗费的时间,改善了用户的使用感受。 0015 附图说明 图1是本发明实施例一之流程图。 具体实施方式 0016 实施例一: 本实施例提供一种融合通信系统中客户端高效检查可用服务器的方法,一种融合通信 系统中客户端高效检查可用服务器的方法,其包括以下步骤: S1、客户端应用接收用户启动指令并启动; S2、客户端应用同。
19、时向所有地址列表中的服务器发送检查请求; S3、所述所有服务器接收到所述检查请求后,分别将应答信息返回至所述客户端应 用; S4、所述客户端应用将第一个收到的应答信息对应的服务器作为登录服务器。 0017 所述S2,具体包括: S21、所述客户端应用从本地存储读取服务器列表,并创建一个UDP SOCKET; S22、所述客户端应用从所述服务器列表中按顺序读取一个服务器地址; S23、所述客户端应用创建一个UDP 数据包,该数据包包括与所述检查请求对应的检查 请求字符、本地IP地址及服务器IP地址; 重复S22和S23,直至为每个服务器均创建了一个对应的UDP 数据包; S24、使用S21创建的。
20、UDP SOCKET,同时向每个服务器分别发送其所对应的UDP 数据 包。 0018 所述S3,具体包括: S31、所述服务器接收到一个UDP数据包时,检查包内数据是否包含检查请求字符; S32、如果判断结果为是,所述服务器将收到的UDP数据包的检查请求字符改成检查回 应字符,将收到的UDP数据内的From IP地址与To IP地址交换位置后,从而将所述UDP数 据包修改为应答包,再将该应答包返回至所述客户端应用。 0019 所述S4,具体包括: S41、所述客户端应用开始侦听S21创建的UDP SOCKET,等待服务器的应答包; 说 明 书CN 102957709 A 4/4页 7 S42、。
21、如果超过预设的时间阈值还没有收到任何服务器的应答包,则回到S24,如果如此 重复,达到或超过预设的次数阈值还没有收到任何服务器的应答包,则认为所有服务器都 不可达,客户端应用终止;如果在所述时间阈值内,或者在所述次数阈值内,所述客户端应 用接收到至少一个服务器的应答包,则所述客户端应用分析第一个收到的服务器应答包, 使用应答包中的 “From:”指示的IP地址作为本次的登录服务器进行登录操作。 0020 实施例二: 本实施例提供一种用于实现实施例一所述的方法的系统,其包括: 客户应用端及地址列表中的多个服务器; 所述客户应用端包括一启动模块、一检查请求发送模块、一确认模块; 所述每一服务器分别。
22、包括一应答模块; 所述启动模块用于接收用户启动指令并启动; 所述检查请求发送模块用于向同时向所有地址列表中的服务器发送检查请求; 所述应答模块用于接收到所述检查请求后,分别将应答信息返回至所述客户端应用; 所述确认模块用于将第一个收到的应答信息对应的服务器作为登录服务器。 0021 具体的,所述发送检查请求模块包括一创建单元、一读取单元、一数据包创建单 元; 所述创建单元用于从本地存储读取服务器列表,并创建一个UDP SOCKET; 所述读取单元用于从所述服务器列表中按顺序读取所述多个服务器地址; 所述数据包创建单元用于分别为每个服务器创建一个UDP 数据包,每一数据包包括与 所述检查请求对应。
23、的检查请求字符、本地IP地址及对应的服务器IP地址。 0022 所述应答模块具体包括: 一检查判断单元、一应答单元; 所述检查判断单元用于当所述服务器接收到一个UDP数据包时,检查判断包内数据是 否包含检查请求字符; 所述应答单元用于当判断结果为是时,将收到的UDP数据包的检查请求字符改成检查 回应字符,将收到的UDP数据内的From IP地址与To IP地址交换位置后,从而将所述UDP 数据包修改为应答包,再将该应答包返回至所述客户端应用。 0023 所述确认模块,具体包括一侦听单元及一确认单元; 所述侦听单元用于侦听S21创建的UDP SOCKET,等待服务器的应答包; 所述确认单元用于:如果超过预设的时间阈值还没有收到任何服务器的应答包,则通 知所述检查请求发送模块重新发送检查请求,如果如此重复,达到或超过预设的次数阈值 还没有收到任何服务器的应答包,则认为所有服务器都不可达,客户端应用终止;如果在所 述时间阈值内,或者在所述次数阈值内,接收到至少一个服务器的应答包,则分析第一个收 到的服务器应答包,使用应答包中的 “From:”指示的IP地址作为本次的登录服务器进行 登录操作。 说 明 书CN 102957709 A 1/1页 8 图1 说 明 书 附 图CN 102957709 A 。