一种登陆voip网络的方法及鉴权服务器的制作方法

文档序号:7764890阅读:359来源:国知局
专利名称:一种登陆voip网络的方法及鉴权服务器的制作方法
技术领域
本发明涉及移动通信技术领域,尤其涉及一种登陆VOIP网络的方法及鉴权服务
O
背景技术
VOIP (Voice over Internet Protocol,网络电话)是将模拟声音讯号(Voice)数 字化,以数据封包的形式在IP数据网络上做实时传递。VOIP最大的优势是能广泛地采用 Internet和全球IP互连的环境,提供比传统业务更多、更好的服务。通常客户端登陆VOIP网络的方式有多种,例如正常登陆、通过http (HyperText Transfer Protocol,超文本传输协议)隧道登陆和通过SVN隧道登陆等。每种登陆方式适 应不同的场景,但在客户端登陆VOIP网络之前均需要首先通过鉴权服务器的鉴权。其中,正常登陆方式即客户端通过SIPGession Initiation Protocol)信令发 送登陆请求消息至鉴权服务器,待鉴权通过后,客户端通过SIP消息实现到VOIP网络的登 陆,SIP消息体中携带有地址信息,客户端和对端根据这些地址进行报文的应答,消息体中 还承载媒体流通道的地址和端口号,该地址和端口号都是在信令交互协商过程中动态分配 的。在通过VOIP方式提供SIP通话能力情况下,由于用户网络情况复杂,极易导致客户端 采用该正常登陆方式无法登陆到VOIP网络。在正常登陆方式无法实现登陆的情况下,客 户端可以选择其它登陆方式,但是各登陆方式应用于不同的场景,且在一定的条件下才能 实现登陆,例如,通过http隧道登陆的方式应用于客户端和VOIP网络之间具有中间设备 SIP ALG(Session Initiation Protocol ALG, SIP协议的应用层网关)设备的场景下;通 过SVN(Subversion)隧道登陆的方式,应用在校园网采用特殊拨号软件上网场景中。由于客户端无法获知所处的网络场景,因此,现有技术中客户端在进行登陆方式 的选择时,需要采用逐个试验的方式直至碰到适合的登陆方式才能登陆至VOIP网络,所以 登陆至VOIP网络的方法效率很低。

发明内容
本发明实施例提供一种登陆VOIP网络的方法及鉴权服务器,能够节省客户端登 陆至VOIP网络的时间,提高登陆效率。为了解决上述技术问题,本发明实施例的技术方案如下本发明实施例提供一种登陆VOIP网络的方法,包括接收客户端发送的登陆请求消息,所述请求消息中包括所述客户端的标识信息;查询与所述客户端的标识信息对应的探测记录,所述探测记录中包括探测客户端 的标识信息和用于表明所述探测客户端登陆方式的对应信息;根据查询结果及所述探测记录返回所述客户端的登陆方式,以使所述客户端根据 所述登陆方式登陆至VOIP网络。本发明实施例还提供一种鉴权服务器,包括
消息接收单元,用于接收客户端发送的登陆请求消息,所述请求消息中包括所述 客户端的标识信息;记录查询单元,用于查询与所述客户端的标识信息对应的探测记录,所述探测记 录中包括探测客户端的标识信息和用于表明所述探测客户端登陆方式的对应信息;结果反馈单元,用于根据查询结果及所述探测记录返回所述客户端的登陆方式, 以使所述客户端根据所述登陆方式登陆至VOIP网络。现有技术中,客户端在无法采用正常登陆方式登陆VOIP网络时,需要在多种登陆 方式中逐一选择,直至能够实现登陆,该方法效率极低,极大的浪费了登陆时间,降低了客 户体验。而本发明实施例中,通过鉴权服务器中的探测记录,可以直接向客户端提供适合的 登陆方式以登陆至VOIP网络,节省了客户端登陆至VOIP网络的时间,提高了登陆效率,改 善了用户体验。


图1是本发明实施例一种VOIP网络的方法流程图;图2是本发明实施例一的方法流程图;图3是本发明实施例二的方法流程图;图4是本发明实施例三的方法流程图;图5是本发明实施例一种鉴权服务器的结构示意图;图6是本发明实施例另一种鉴权服务器的结构示意图;图7是本发明实施例另一种鉴权服务器的结构示意图。
具体实施例方式为了使本领域技术人员能进一步了解本发明的特征及技术内容,请参阅以下有关 本发明的详细说明与附图,附图仅提供参考与说明,并非用来限制本发明。下面结合附图和实施例,对本发明的技术方案进行描述。参照图1,为本发明实施例一种VOIP网络的方法流程图。该方法可以包括步骤101,接收客户端发送的登陆请求消息。在客户端登陆至VOIP网络之前,均需要先通过鉴权服务器的鉴权,现有技术中, 该鉴权服务器仅用于对客户端的鉴权,在本发明实施例中,还用于向客户端返回适合该客 户端登陆VOIP网络的登陆方式,以节省客户端对登陆方式的试验和选择时间。客户端可以采用正常登陆流程,也即向鉴权服务器发送SIP消息以请求登陆,在 鉴权服务器接收到客户端的登陆请求消息后,可以先对请求消息中包含的信息进行鉴权, 该信息可以是预先分配至客户端的鉴权随机数等,此处为现有技术,不再赘述。鉴权通过 后,或者接收到请求消息后直接转入下一步骤,该请求消息中包括客户端的标识信息,以便 于鉴权服务器根据该标识信息查询探测记录,标识信息可以是客户端的手机号或ID等。步骤102,查询与所述登陆请求消息中的标识信息对应的探测记录。探测记录为预先由鉴权服务器获得的,该探测记录中记录了一些探测客户端的标 识信息和用于表明探测客户端登陆方式的对应信息,例如可以直接记录有一些客户端标识信息和分别适合这些客户端登陆VOIP网络的登陆方式,或者记录有客户端标识信息和与 这些客户端对应的网络场景,其中,客户端的网络场景也就决定了客户端可采用的登陆方 式。该探测记录可以是以数据表或其它形式存储在鉴权服务器的登陆方式数据库或java 向量对象中。该探测记录的具体获得可以是鉴权服务器通过预先接收探测客户端发送的探 测报文后,建立的与探测报文中的客户端标识信息对应的探测记录,具体过程请参见后续 实施例的描述。鉴权服务器在接收到客户端的请求消息后,获得该请求消息中包含的用于标识该 客户端的标识信息,例如该客户端的手机号、身份标识ID或电子邮件E-mail地址等,然后 根据该标识信息去查询探测记录。步骤103,根据查询结果及探测记录返回客户端的登陆方式,以使客户端根据登陆 方式登陆至VOIP网络。本步骤中,鉴权服务器根据是否查询到该客户端的探测记录,以及若查询到后,探 测记录中的用于表明该客户端登陆方式的信息,最终确定适合该客户端采用的登陆方式, 然后返回该客户端,客户端从而可以应用该登陆方式登陆至VOIP网络。现有技术中,客户端在无法采用正常登陆方式登陆VOIP网络时,需要在多种登陆 方式中逐一选择,直至能够实现登陆,该方法效率极低,极大的浪费了登陆时间,降低了客 户体验。而本发明实施例中,通过鉴权服务器中的探测记录,可以直接向客户端提供适合的 登陆方式以登陆至VOIP网络,节省了客户端登陆至VOIP网络的时间,提高了登陆效率,改 善了用户体验。下面通过具体实例对上述方法进行说明。参见图2,为本发明实施例一的方法流程图。本实施例中,客户端A要登陆至VOIP网络,登陆方法可以包括步骤201,探测客户端向鉴权服务器发送invite报文。本实施例中,探测客户端通过向鉴权服务器发送invite报文作为探测报文,来探 测客户端和鉴权服务器之间是否存在SIP ALG,从而可以确定探测客户端的网络场景,进而 可以确定适合探测客户端的登陆方式。由于SIP LAG设备会对消息体中IP地址进行修改,完成私网穿越,所以在invite 报文经过SIP LAG设备时,报文的哈希值会发生变化,所以如果invite报文从客户端传输 至鉴权服务器后,报文的hash值发生变化,则说明传输过程中存在SIPALG,所以,本实施例 中,可以由客户端向鉴权服务器发送invite报文的第一哈希值,该报文第一哈希值的发送 可以通过以下方式实现。首先,探测客户端将其标识信息,例如手机号等,添加至invite消息模板中生 成invite报文。具体的,探测客户端可以使用一个通常的invite消息模板进行组包,在 branch为0的情况下计算invite报文净荷的第一哈希值,然后还可以将该哈希值放入 branch值的前16位,后面填入探测客户端向鉴权服务器认证时使用的随机值。步骤202,鉴权服务器接收探测客户端发送的invite报文。步骤203,鉴权服务器建立与invite报文中的标识信息对应的探测记录。鉴权服务器接收到探测客户端发送的invite报文后,在数据库中建立探测记录, 首先,将该报文中探测客户端的手机号和该报文的源IP地址记入记录,然后取出branch值的前16位,将branch值填0后计算报文的净荷的第二哈希值,然后比较第一哈希值和第二 哈希值,以确定探测客户端所处的网络场景,如果两值相同,则说明,该invite报文在传输 过程中未经过SIP ALG设备,然后,在探测记录中记录用于表明invite报文传输过程中不 存在SIPALG设备的信息;如果不同,也即报文的哈希值发生变化,则说明在传输过程中存 在SIP ALG设备,然后,在探测记录中记录用于表明invite报文传输过程中存在SIPALG设 备的信息。在本实施例中,通过在数据库中标记invite正确值的字段来表明是否存在 SIPALG设备,例如,若两哈希值相同,则说明不存在SIPALG设备,将invite正确值的字段标 记为1 ;若不同,则说明存在SIPALG设备,将invite正确值的字段标记为0。本实施例中鉴权服务器建立的多个探测客户端的探测记录可以为探测客户端1的手机号一invite正确值字段“1”探测客户端2的手机号一invite正确值字段“0”探测客户端3的手机号一invite正确值字段“1”......以上步骤201 203为鉴权服务器通过接收探测客户端的探测报文,然后建立该 探测客户端的探测记录的过程。以上步骤与后续步骤的顺序可以根据需要进行调整。步骤204,鉴权服务器接收客户端A发送的登陆请求消息。客户端A向鉴权服务器发起正常的登陆流程,可以通过SIP消息向鉴权服务器发 送登陆请求,该请求中包含了用于标识该客户端A的标识信息,在本实施例中可以是客户 端A的手机号等。步骤205,鉴权服务器查询与标识信息对应的探测记录。鉴权服务器根据客户端A的手机号码,在数据库中查询对应的探测记录,如步骤 203中所示的探测记录。步骤206,根据查询结果及探测记录向客户端A返回对应的登陆方式。如果客户端A在步骤204之前未向鉴权服务器发起过探测报文,则在本步骤中,鉴 权服务器无法查询到与客户端A手机号对应的探测记录,在该情况下,鉴权服务器会向客 户端A发送使用SVN隧道登陆的登陆方式,客户端A即可根据该登陆方式登陆至VOIP网络。如果客户端A在步骤204之前已经通过步骤201发送了探测报文,并且鉴权服务 器通过步骤202 203建立了客户端A的探测记录,则在本步骤中,如果查询到探测记录 为客户端A的手机号一invite正确值字段“1”,则说明在客户端A到鉴权服务器之间不 存在SIP ALG,则鉴权服务器会向客户端A返回SIP登陆方式,客户端A即可根据该登陆方 式登陆至VOIP网络。如果查询到的探测记录为客户端A的手机号一invite正确值字段“0”,则说明在 客户端A到鉴权服务器之间存在SIP ALG,则鉴权服务器会向客户端A返回HTTP+RTP登陆 方式,客户端A即可根据该登陆方式登陆至VOIP网络。本实施例通过探测客户端发送invite报文作为探测报文,可以使得鉴权服务器 直接判断出目前客户端所处的网络环境,待客户端发送登陆请求时,鉴权服务器可以根据 探测记录,直接向客户端提供适合的登陆方式以登陆至VOIP网络,将客户端探测网络环境 的时间从以前的十多秒缩减至Is内即可完成,节省了客户端登陆至VOIP网络的时间,提高了登陆效率,改善了用户体验。参照图3,为本发明实施例二的方法流程图。本实施例中,客户端B要登陆至VOIP网络,登陆方法可以包括步骤301,探测客户端a向鉴权服务器发送RTP (Real-time TransportProtocol, 实时传输协议)报文。在本实施例中,探测客户端a通过向鉴权服务器发送RTP报文作为探测报文,来探 测网络中的媒体通道UDP^ser Datagram Protocol,用户数据包协议)端口是否为打开状 态,从而可以确定探测客户端a的网络场景,进而可以确定适合探测客户端a的登陆方式。由于UDP端口很多,例如IMS使用的语音流端口从10000-65534,防火墙不一定会 全部开放这些端口,所以在探测客户端a发送RTP报文之前,首先探测客户端a与鉴权服务 器进行协商,以确定发送RTP报文的端口,还可以在鉴权服务器中记录协商的探测客户端a 的标识信息作为预存标识信息,本实施例中,预存标识信息为探测客户端a的手机号。本实 施例中以端口 15000、30000、45000为例作为协商确定的UDP端口。首先,探测客户端a将标识信息添加至通用的RTP报文中,本实施例中,探测值为 探测客户端a的手机号。具体的,探测客户端a采用通用的RTP报文,在此报文的净荷中, 前15位填入探测客户端a的手机号,剩余位填入探测客户端a向鉴权服务器认证时使用的 随机值,然后探测客户端a将生成的RTP报文分别发送至端口 15000、30000、45000中。步骤302,鉴权服务器监控与探测客户端a协商确定的UDP端口。步骤303,鉴权服务器在UDP端口接收探测客户端a发送的RTP报文。步骤304,鉴权服务器建立与RTP报文中的探测客户端的标识信息对应的探测记 录。在本实施例中,假设鉴权服务器在端口 15000没有接收到RTP报文,则说明该端 口处于封闭状态,则在鉴权服务器中可以记录用于表明该UDP端口封闭的信息,本实施例 中通过设置端口号的验证字段值为0,来表示封闭状态,建立的该探测客户端a的探测记录 为探测客户端a手机号一端口 15000验证字段“0”若在端口 30000、45000中能接收到RTP报文,还可以进一步判断接收到的RTP报 文是否为协商的探测客户端a发送的报文,具体的可以判断RTP报文中的标识信息与鉴权 服务器中的预存标识信息是否相同,在本实施例中也即在鉴权服务器记录的协商的探测客 户端a的手机号中查找是否有该RTP报文中携带的手机号,若有,则说明该端口对该探测客 户端a为开放状态,则在鉴权服务器中记录用于表明该UDP端口开放的信息,本实施例中通 过设置端口号的验证字段值为1,来表示开放状态,则本步骤中建立的该探测客户端a的探 测记录为探测客户端a手机号一端口 30000验证字段“ 1,,探测客户端a手机号一端口 45000验证字段“ 1,,若在鉴权服务器记录的协商的探测客户端a的手机号中查找不到该RTP报文中携 带的手机号,也即在端口 30000、45000没有接收到探测客户端a的RTP报文,同时接收到的 RTP报文为另一探测客户端b发送的报文,则在本步骤中除了可以记录该探测客户端a的探 测记录为
探测客户端a手机号一端口 30000验证字段“0”探测客户端a手机号一端口 45000验证字段“0”还可以创建与RTP报文中的标 识信息对应的探测记录,也即创建探测客户端b的探测记录探测客户端b手机号一端口 30000验证字段“ 1,,
探测客户端b手机号一端口 45000验证字段“ 1,,以便于探测客户端b有登陆需求时,由鉴权服务器直接根据该探测记录将相应的 登陆方式返回至探测客户端b。以上步骤301 304为鉴权服务器通过接收探测客户端的探测报文,然后建立该 探测客户端的探测记录的过程。以上步骤与后续步骤的顺序可以根据需要进行调整。步骤305,鉴权服务器接收客户端B发送的登陆请求消息。客户端B向鉴权服务器发起正常的登陆流程,可以通过SIP消息向鉴权服务器发 送登陆请求,该请求中包含了用于标识该客户端B的标识信息,在本实施例中可以是客户 端B的手机号。步骤306,鉴权服务器查询与标识信息对应的探测记录。鉴权服务器根据客户端B的手机号码,在数据库中查询对应的探测记录,如步骤 304中所示的探测记录。步骤307,根据查询结果及探测记录向客户端B返回对应的登陆方式。如果客户端B在步骤305之前未向鉴权服务器发起过探测报文,则在本步骤中,鉴 权服务器无法查询到与客户端B手机号对应的探测记录,在该情况下,鉴权服务器会向客 户端B发送使用SVN隧道登陆的登陆方式,客户端B即可根据该登陆方式登陆至VOIP网络。如果客户端B在步骤305之前已经通过步骤301发送了探测报文,并且鉴权服务 器通过步骤302 304建立了客户端B的探测记录,则在本步骤中,如果查询到探测记录 为客户端B的手机号一端口 30000验证字段“1”,则说明在端口 30000对客户端B开放, 则鉴权服务器会向客户端B返回SIP登陆方式(正常方式),该登陆方式中还可以包括开放 的端口号,以使客户端B根据该登陆方式从开放的端口号登陆至VOIP网络。本实施例通过探测客户端发送RTP报文作为探测报文,可以使得鉴权服务器直接 判断出目前UDP端口对客户端的开放状态,待客户端发送登陆请求时,鉴权服务器可以根 据探测记录,直接向客户端提供适合的登陆方式以登陆至VOIP网络,将客户端探测网络环 境的时间从以前的十多秒缩减至Is内即可完成,节省了客户端登陆至VOIP网络的时间,提 高了登陆效率,改善了用户体验。参照图4,为本发明实施例三的方法流程图。本实施例中,客户端C要登陆至VOIP网络,登陆方法可以包括步骤401,探测客户端向鉴权服务器发送SIP协议的invite报文作为探测报文。该步骤与前述实施例中的步骤201类似,此处不再赘述。步骤402,探测客户端向鉴权服务器发送RTP报文作为探测报文。该步骤与前述实施例中的步骤301类似,此处不再赘述。步骤403,鉴权服务器接收探测报文,并创建与探测报文中的标识信息对应的探测记录。本步骤与前述实施例中的步骤202 203以及步骤302 304类似,此处不再赘述。在本步骤中,创建的探测记录时可以根据接收到的invite报文和RTP报文创建探 测客户端的探测记录。如果接收到的invite报文的第一哈希值与后续计算的invite报文的第二哈希值 不同,则在探测记录中记录用于表明invite报文传输过程中存在SIPALG设备的信息;若第 一哈希值与第二哈希值相同,则记录用于表明invite报文传输过程中不存在SIPALG设备 的信息。如果在协商的UDP端口接收到RTP报文,且RTP报文中的标识信息与预存标识信 息相同,则在探测记录中记录用于表明UDP端口开放的信息;若在协商的UDP端口接收不到 RTP报文,或接收到的RTP报文中的标识信息与预存标识信息不同,则在探测记录中记录用 于表明UDP端口封闭的信息。假设鉴权服务器通过上述步骤创建了多个探测客户端的探测记录为探测客户端c手机号一invite正确值字段“1”一端口 30000验证字段“1”探测客户端d手机号一invite正确值字段“0”一端口 45000验证字段“0”探测客户端e手机号一invite正确值字段“1”一端口 30000验证字段“0”探测客户端f手机号一invite正确值字段“0”一端口 45000验证字段“1”......以上步骤401 403为鉴权服务器通过接收探测客户端的探测报文,然后建立该 探测客户端的探测记录的过程。以上步骤与后续步骤的顺序可以根据需要进行调整。步骤404,鉴权服务器接收客户端C发送的登陆请求消息。客户端C向鉴权服务器发起正常的登陆流程,可以通过SIP消息向鉴权服务器发 送登陆请求,该请求中包含了用于标识该客户端C的标识信息,在本实施例中可以是客户 端C的手机号。步骤405,鉴权服务器查询与标识信息对应的探测记录。鉴权服务器根据客户端C的手机号码,在数据库中查询对应的探测记录,如步骤 403中所示的探测记录。步骤406,根据查询结果及探测记录向客户端C返回对应的登陆方式。如果客户端C在步骤403之前未向鉴权服务器发起过探测报文,则在本步骤中,鉴 权服务器无法查询到与客户端C的手机号对应的探测记录,在该情况下,鉴权服务器会向 客户端C发送使用SVN隧道登陆的登陆方式,客户端C即可根据该登陆方式登陆至VOIP网如果客户端C在步骤403之前已经通过步骤401发送了探测报文,并且鉴权服务 器通过步骤402 403建立了客户端C的探测记录,则在本步骤中,鉴权服务器可以根据探 测记录向客户端C返回适合的登陆方式,以使客户端C登陆至VOIP网络。若查询到与客户端C的手机号对应的探测记录,且探测记录中包括用于表明 invite报文传输过程中存在SIP ALG设备的信息,和/或探测记录中包括表明所述UDP端 口封闭的信息,则向客户端C返回使用SVN隧道登陆方式;若查询到与客户端C的手机号 对应的探测记录,且探测记录中包括用于表明invite报文传输过程中不存在SIP ALG设备 的信息,和/或探测记录中包括用于表明所述UDP端口开放的信息,则向客户端C返回使用SIP登陆方式;若查询到与客户端C的手机号对应的探测记录,且探测记录中包括用于表明 invite报文传输过程中不存在SIPALG设备的信息,且探测记录中还包括表明UDP端口封闭 的信息,则向客户端C返回使用SVN登陆方式。根据步骤403中的探测记录,在本实施例中,具体返回的登陆方式如下如果查询到探测记录为客户端C的手机号一invite正确值字段“1”一端口 30000验证字段“0”;则鉴权服务器会向客户端C返回SVN登陆方式;如果查询到探测记录为客户端C的手机号一invite正确值字段“0”一端口 30000验证字段“1” ;则鉴权服务器会向客户端C返回HTTP+RTP登陆方式;如果查询到探测记录为客户端C的手机号一invite正确值字段“1”一端口 30000验证字段“1”;则鉴权服务器会向客户端C返回正常登陆方式(SIP);如果查询到探测记录为客户端C的手机号一invite正确值字段“0”一端口 30000验证字段“0” ;则鉴权服务器会向客户端C返回SVN隧道登陆方式。本实施例通过探测客户端发送探测报文,可以使得鉴权服务器直接判断出目前客 户端所处的网络环境,待客户端发送登陆请求时,鉴权服务器可以根据探测记录,直接向客 户端提供适合的登陆方式以登陆至VOIP网络,将客户端探测网络环境的时间从以前的十 多秒缩减至Is内即可完成,节省了客户端登陆至VOIP网络的时间,提高了登陆效率,改善 了用户体验。而且,使选择登陆方式的过程对用户透明,也避免了所有私网用户都采用SVN 或SVN隧道方式登陆,从而减轻了对隧道和网络性能的要求。以上是对登陆VOIP网络的方法的详细说明,下面对应用所述方法的设备或系统 进行介绍。参照图5,为本发明实施例一种鉴权服务器的结构示意图。该鉴权服务器可以包括消息接收单元501,用于接收客户端发送的登陆请求消息,该请求消息中包括所述 客户端的标识信息。记录查询单元502,用于查询与标识信息对应的探测记录,探测记录中包括探测客 户端的标识信息和用于表明探测客户端登陆方式的对应信息。结果反馈单元503,用于根据查询结果及探测记录返回客户端的登陆方式,以使客 户端根据登陆方式登陆至VOIP网络。鉴权服务器的消息接收单元501接收到客户端的登陆请求消息后,可以先对请求 消息中包含的信息进行鉴权,该请求消息中包括客户端的标识信息,以便于鉴权服务器根 据该标识信息查询探测记录,标识信息可以是客户端的手机号或ID等。鉴权服务器的消息 接收单元501在接收到客户端的请求消息后,获得该请求消息中包含的用于标识该客户端 的标识信息,例如该客户端的手机号或ID等,然后由记录查询单元502根据该标识信息去 查询探测记录。该探测记录为预先由鉴权服务器获得的,该探测记录中记录了一些探测客 户端的标识信息和用于表明探测客户端登陆方式的对应信息,例如可以直接记录有一些客 户端标识信息和分别适合这些客户端登陆VOIP网络的登陆方式,或者记录有客户端标识 信息和与这些客户端对应的网络场景,其中,客户端的网络场景也就决定了客户端可采用 的登陆方式。该探测记录可以是以数据表或其它形式存储在鉴权服务器的登陆方式数据库 或java向量对象中。该探测记录的具体获得可以是鉴权服务器通过预先接收探测客户端发送的探测报文后,建立的与探测报文中的客户端标识信息对应的探测记录。结果反馈单 元503根据是否查询到该客户端的探测记录,以及若查询到后,探测记录中的用于表明该 客户端登陆方式的信息,最终确定适合该客户端采用的登陆方式,然后返回该客户端,客户 端从而可以应用该登陆方式登陆至VOIP网络。本发明实施例中,通过鉴权服务器的上述单元,可以直接向客户端提供适合的登 陆方式以登陆至VOIP网络,节省了客户端登陆至VOIP网络的时间,提高了登陆效率,改善 了用户体验。参见图6,为本发明实施例另一种鉴权服务器的结构示意图。该鉴权服务器除了可以包括消息接收单元601、记录查询单元602和结果反馈单 元603之外,还可以包括报文接收单元604,用于接收探测客户端发送的探测报文,所述探测报文中包括所 述探测客户端的标识信息。记录建立单元605,用于建立与所述探测客户端的标识信息对应的探测记录。本实施例中,报文接收单元604,具体用于接收探测客户端发送的invite报文的
第一哈希值。记录建立单元605包括计算子单元6051,用于计算所述invite报文的第二哈希值。记录子单元6052,用于当所述第一哈希值与所述第二哈希值不同时,记录与所述 探测客户端的标识信息对应的探测记录,所述探测记录中包括用于表明所述invite报文 传输过程中存在SIP ALG设备的信息;当所述第一哈希值与所述第二哈希值相同时,记录 与所述探测客户端的标识信息对应的探测记录,所述探测记录中包括用于表明所述invite 报文传输过程中不存在SIPALG设备的信息。本实施例中,探测客户端通过向鉴权服务器发送invite报文作为探测报文,来探 测客户端和鉴权服务器之间是否存在sip lag,从而可以确定探测客户端的网络场景,进而 可以确定适合探测客户端的登陆方式。鉴权服务器的报文接收单元604接收到探测客户端 发送的invite报文的第一哈希值后,由记录建立单元605在数据库中建立探测记录,具体 的,由计算子单元6051计算invite报文的第二哈希值,然后由记录子单元6052根据第一 哈希值和第二哈希值的比较结果,建立探测记录。在鉴权服务器的消息接收单元601接收 到客户端的登陆请求消息后,由记录查询单元602根据该标识信息去查询探测记录。结果 反馈单元603根据是否查询到该客户端的探测记录,以及若查询到后,探测记录中的用于 表明该客户端登陆方式的信息,最终确定适合该客户端采用的登陆方式,然后返回该客户 端,客户端从而可以应用该登陆方式登陆至VOIP网络。本实施例通过上述单元可以直接判断出目前客户端所处的网络环境,待客户端发 送登陆请求时,鉴权服务器可以根据探测记录,直接向客户端提供适合的登陆方式以登陆 至VOIP网络,将客户端探测网络环境的时间从以前的十多秒缩减至Is内即可完成,节省了 客户端登陆至VOIP网络的时间,提高了登陆效率,改善了用户体验。参见图7,为本发明实施例另一种鉴权服务器的结构示意图。该鉴权服务器也可以包括消息接收单元701、记录查询单元702、结果反馈单元 703、报文接收单元704和记录建立单元705。
本实施例中,报文接收单元704包括监控子单元7041,用于监控与探测客户端协商确定的UDP端口。接收子单元7042,用于在所述UDP端口接收所述探测客户端发送的RTP报文。记录建立单元705,具体用于当接收到所述RTP报文,且所述RTP报文中的所述标 识信息与预存标识信息相同时,则记录与所述RTP报文中的标识信息对应的探测记录,所 述探测记录中包括用于表明所述UDP端口开放的信息;当接收不到所述RTP报文,或接收到 的RTP报文中的所述标识信息与预存标识信息不同时,则记录与所述RTP报文中的所述标 识信息对应的探测记录,所述探测记录中包括用于表明所述UDP端口封闭的信息。本实施例中,探测客户端通过向鉴权服务器发送RTP报文作为探测报文,来探测 网络中的媒体通道UDP端口是否为打开状态,从而可以确定探测客户端的网络场景,进而 可以确定适合探测客户端的登陆方式。监控子单元7041,对与探测客户端协商确定的UDP 端口进行监控,当接收子单元7042在监控的UDP端口接收到探测客户端发送的RTP报文 后,由记录建立单元705建立探测记录。在鉴权服务器的消息接收单元701接收到客户端 的登陆请求消息后,由记录查询单元702根据该标识信息去查询探测记录。结果反馈单元 703根据是否查询到该客户端的探测记录,以及若查询到后,探测记录中的用于表明该客户 端登陆方式的信息,最终确定适合该客户端采用的登陆方式,然后返回该客户端,客户端从 而可以应用该登陆方式登陆至VOIP网络。本实施例通过上述单元直接判断出目前UDP端口对客户端的开放状态,待客户端 发送登陆请求时,鉴权服务器可以根据探测记录,直接向客户端提供适合的登陆方式以登 陆至VOIP网络,将客户端探测网络环境的时间从以前的十多秒缩减至Is内即可完成,节省 了客户端登陆至VOIP网络的时间,提高了登陆效率,改善了用户体验。上述装置实施例中各单元的具体实现过程请参见前述方法实施例中相应部分的 描述,此处不再赘述。以上所述的本发明实施方式,并不构成对本发明保护范围的限定。任何在本发明 的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明的权利要求保护范 围之内。
权利要求
1.一种登陆VOIP网络的方法,其特征在于,包括接收客户端发送的登陆请求消息,所述请求消息中包括所述客户端的标识信息; 查询与所述客户端的标识信息对应的探测记录,所述探测记录中包括探测客户端的标 识信息和用于表明所述探测客户端登陆方式的对应信息;根据查询结果及所述探测记录返回所述客户端的登陆方式,以使所述客户端根据所述 登陆方式登陆至网络电话VOIP网络。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括接收探测客户端发送的探测报文,所述探测报文中包括所述探测客户端的标识信息; 建立与所述探测客户端的标识信息对应的探测记录。
3.根据权利要求2所述的方法,其特征在于,所述探测报文为会话初始协议SIP的 invite报文和/或实时传输协议RTP的RTP报文。
4.根据权利要求3所述的方法,其特征在于, 所述接收探测客户端发送的探测报文包括接收探测客户端发送的invite报文的第一哈希值; 所述建立与所述探测客户端的标识信息对应的探测记录,包括 计算所述invite报文的第二哈希值;若所述第一哈希值与所述第二哈希值不同,记录与所述探测客户端的标识信息对应的 探测记录,所述探测记录中包括用于表明所述invite报文传输过程中存在SIP协议的应用 层网关SIP ALG设备的信息;若所述第一哈希值与所述第二哈希值相同,记录与所述探测 客户端的标识信息对应的探测记录,所述探测记录中包括用于表明所述invite报文传输 过程中不存在SIP ALG设备的信息。
5.根据权利要求3所述的方法,其特征在于, 所述接收探测客户端发送的探测报文包括监控与探测客户端协商确定的用户数据包协议UDP端口 ; 在所述UDP端口接收所述探测客户端发送的RTP报文; 所述建立与所述探测客户端的标识信息对应的探测记录,包括 若接收到所述RTP报文,且所述RTP报文中的所述标识信息与预存标识信息相同,则记 录与所述RTP报文中的标识信息对应的探测记录,所述探测记录中包括用于表明所述UDP 端口开放的信息;若接收不到所述RTP报文,或接收到的RTP报文中的所述标识信息与预存 标识信息不同,则记录与所述RTP报文中的所述标识信息对应的探测记录,所述探测记录 中包括用于表明所述UDP端口封闭的信息。
6.根据权利要求4或5所述的方法,其特征在于,所述根据查询结果及所述探测记录返 回所述客户端的登陆方式,包括若查询不到与所述客户端的标识信息对应的探测记录,则向所述客户端返回使用SVN 隧道登陆的登陆方式;若查询到与所述客户端的标识信息对应的探测记录,且所述探测记录中包括用于表明 所述invite报文传输过程中存在SIP ALG设备的信息,和/或所述探测记录中包括表明所 述UDP端口封闭的信息,则向所述客户端返回使用SVN隧道登陆的登陆方式;若查询到与所述客户端的标识信息对应的探测记录,且所述探测记录中包括用于表明所述invite报文传输过程中不存在SIP ALG设备的信息,且所述探测记录中还包括表明所 述UDP端口封闭的信息,则向所述客户端返回使用SVN隧道登陆的登陆方式。
7.根据权利要求4或5所述的方法,其特征在于,所述根据查询结果及所述探测记录返 回所述客户端的登陆方式,包括若查询到与所述客户端的标识信息对应的探测记录,且所述探测记录中包括用于表明 所述invite报文传输过程中不存在SIP ALG设备的信息,和/或所述探测记录中包括用于 表明所述UDP端口开放的信息,则向所述客户端返回使用SIP消息登陆的登陆方式。
8.根据权利要求4或5所述的方法,其特征在于,所述根据查询结果及所述探测记录返 回所述客户端的登陆方式,包括若查询到与所述客户端的标识信息对应的探测记录,且所述探测记录中包括用于表明 所述invite报文传输过程中存在SIP ALG设备的信息,且所述探测记录中还包括表明所 述UDP端口开放的信息,则向所述客户端返回使用超文本传输协议HTTP隧道登陆的登陆方 式。
9.根据权利要求1至5中任意一项所述的方法,其特征在于,所述标识信息包括手机 号、身份标识ID或电子邮件E-mail地址。
10.一种鉴权服务器,其特征在于,包括消息接收单元,用于接收客户端发送的登陆请求消息,所述请求消息中包括所述客户 端的标识信息;记录查询单元,用于查询与所述客户端的标识信息对应的探测记录,所述探测记录中 包括探测客户端的标识信息和用于表明所述探测客户端登陆方式的对应信息;结果反馈单元,用于根据查询结果及所述探测记录返回所述客户端的登陆方式,以使 所述客户端根据所述登陆方式登陆至VOIP网络。
11.根据权利要求10所述的鉴权服务器,其特征在于,还包括报文接收单元,用于接收探测客户端发送的探测报文,所述探测报文中包括所述探测 客户端的标识信息;记录建立单元,用于建立与所述探测客户端的标识信息对应的探测记录。
12.根据权利要求11所述的鉴权服务器,其特征在于,所述报文接收单元,具体用于接收探测客户端发送的invite报文的第一哈希值;所述记录建立单元包括计算子单元,用于计算所述invite报文的第二哈希值;记录子单元,用于当所述第一哈希值与所述第二哈希值不同时,记录与所述探测客户 端的标识信息对应的探测记录,所述探测记录中包括用于表明所述invite报文传输过程 中存在SIP ALG设备的信息;当所述第一哈希值与所述第二哈希值相同时,记录与所述探 测客户端的标识信息对应的探测记录,所述探测记录中包括用于表明所述invite报文传 输过程中不存在SIP ALG设备的信息。
13.根据权利要求11所述的鉴权服务器,其特征在于,所述报文接收单元包括监控子单元,用于监控与探测客户端协商确定的UDP端口 ;接收子单元,用于在所述UDP端口接收所述探测客户端发送的RTP报文;所述记录建立单元,具体用于当接收到所述RTP报文,且所述RTP报文中的所述标识信 息与预存标识信息相同时,则记录与所述RTP报文中的标识信息对应的探测记录,所述探 测记录中包括用于表明所述UDP端口开放的信息;当接收不到所述RTP报文,或接收到的 RTP报文中的所述标识信息与预存标识信息不同时,则记录与所述RTP报文中的所述标识 信息对应的探测记录,所述探测记录中包括用于表明所述UDP端口封闭的信息。
全文摘要
本发明实施例提供一种登陆VOIP网络的方法及鉴权服务器。一种登陆VOIP网络的方法,包括接收客户端发送的登陆请求消息,所述请求消息中包括所述客户端的标识信息;查询与所述客户端的标识信息对应的探测记录,所述探测记录中包括探测客户端的标识信息和用于表明所述探测客户端登陆方式的对应信息;根据查询结果及所述探测记录返回所述客户端的登陆方式,以使所述客户端根据所述登陆方式登陆至VOIP网络。本发明实施例中,通过鉴权服务器中的探测记录,可以直接向客户端提供适合的登陆方式以登陆至VOIP网络,节省了客户端登陆至VOIP网络的时间,提高了登陆效率,改善了用户体验。
文档编号H04L29/06GK102137090SQ20101053889
公开日2011年7月27日 申请日期2010年11月10日 优先权日2010年11月10日
发明者郑洪伟 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1