一种无线分组网络中语音通信呼叫接续信令协议的制作方法

文档序号:7612337阅读:122来源:国知局
专利名称:一种无线分组网络中语音通信呼叫接续信令协议的制作方法
技术领域
本发明属于通信网络技术领域,是一种无线分组网络中语音通信呼叫接续信令的实现方法。

背景技术
随着IEEE 802.16标准的提出和MPLS网络技术的成熟,使得在无线接入的分组网络上提供电信级语音服务成为可能。文献[1]Carl Eklund,Roger B.Marks,“IEEE Standard 802.16A Technical Overview of theWirelessMANTM Air Interface for Broadband Wireless Access”,IEEEC802.16-02/05,2002。文献[2]Ray Blair,“Introduction to MPLS”,CiscoSystems。传统的分组网络上常用的语音通信呼叫接续信令协议如H.323、SIP等,仅仅提供最简单的呼叫接续功能,并没有涉及资源预留、信道分配、认证计费等内容,因而无法提供电信级的服务质量保证。文献[3]“Overview of H.323”,Cisco IOS Release。文献[4]J.Rosenberg,H.Schulzrinne,“SIPSession Initiation Protocol”,IETF RFC3261。


发明内容
本发明的目的在于提供一种无线分组网络中语音通信呼叫接续信令的实现方法。
通过引入资源预留、信道分配、身份认证、加密协商、计费等新型机制,保证了无线接入分组网络中语音通信的安全性、可靠性、合理性和服务质量。
本发明建立在无线接入的分组网络之上,网络由移动台(手机、固定电话、个人数字助理、笔记本电脑、台式机等)、基站、有线接入路由器、注册服务器、3A服务器、管理服务器等功能实体组成。网络可以划分为无线接入网、无线核心网、有线核心网和有线骨干网四个层次。其中,移动台通过无线方式连接基站,基站经过一跳或者多跳连接到有线接入路由器,从而接入有线核心网,实现城域内的话音通信,在城市与城市之间通过有线骨干网络相连,从而实现不同城市之间的话音通信。见图1。
本发明是一种无线分组网络中语音通信呼叫接续信令的实现方法。当移动台开机后,根据其目前所属的网段配置IP地址,并向所在小区的基站发送加入请求,基站把移动台的加入请求通知核心网上的3A服务器,3A服务器保存了所有合法移动台的设备和身份认证信息,它向申请加入网络的移动台发送认证请求,移动台对认证请求进行处理并向3A服务器发送认证回复,3A服务器检查回复消息,如果消息合法,就把该移动台的当前地址告知核心网上的注册服务器,注册服务器对移动台的地址信息进行注册,同时3A服务器把该移动台的鉴权信息传递给移动台当前所属的基站,然后由基站通知移动台入网成功;当一个移动台想要发起对另一个移动台的语音呼叫时,它需要首先为本次通话产生一个通话标志符,通话标志符由“主叫号码+被叫号码+主叫内部标志符”组成,通话标志符能够唯一地标志网络上的一次通话,然后主叫移动台需要通过基站发起的身份认证,接下来主叫移动台向核心网上的注册服务器发送地址请求消息,注册服务器回复该地址请求消息把被叫移动台的当前地址和公钥告知主叫移动台,收到被叫方的当前地址和公钥后,主叫移动台就可以向网络发送连接建立信令消息,该信令消息中包含了通话标志符、通话双方的电话号码、通话双方的当前地址、主叫方指定的本次通话的服务等级、主叫方指定的本次通话的加密算法、会话密钥、以及加密算法和会话密钥的摘要等信息,其中加密算法、会话密钥和摘要三部分内容在连接建立信令消息中是以被叫方的公钥加密后的密文形式存放的,网络节点收到主叫移动台发起的呼叫邀请后,会根据移动台提出的服务等级需求预留足够的有线和无线资源以保证语音通信的服务质量,如果资源预留失败,失败的网络节点会通知主叫移动台呼叫失败,如果资源预留成功,则会把呼叫邀请转发给被叫移动台所属基站,然后被叫基站会发送寻呼消息查找被叫移动台,被叫移动台收到寻呼消息后,会用自己的私钥解密寻呼消息中包含的加密算法、会话密钥和摘要,如果解密出现错误,被叫移动台会向主叫方发送相应的错误通知,否则,被叫移动台会向被叫基站发送寻呼响应,被叫基站收到寻呼响应后会启动和主叫方一侧同样的认证和无线信道分配过程,如果上述过程全部成功,被叫基站就会向被叫移动台发送响铃信令,同时向主叫方基站发送呼叫确认信令,主叫方基站收到呼叫确认信令后会通知主叫移动台产生回铃音,当被叫移动台响铃后,用户可以选择接听或者拒绝接听,如果用户拒绝接听,那么被叫移动台就向网络发送通话结束信令,反之如果被叫接听,就向网络发送连接信令,当主叫移动台得知被叫方摘机应答后就停止回铃,双方进入通话过程,同时主叫方基站会通知3A服务器开始计费;当通话结束一方挂机后,会向另一方发送通话结束信令,当网络节点收到通话结束信令后就会释放为本次通话预留的有线和无线资源,当主叫所属基站收到任何一方发来的通话结束信令后,会通知3A服务器停止计费,3A服务器会把本次通话结束后通话双方最新的余额信息通过计费终止确认信令告知它们当前所属的基站,一次语音通话过程结束。
本发明的无线分组网络中语音通信呼叫接续信令的实现方法,包括 一种无线分组网络中语音通信呼叫接续信令协议,信令协议包括三个部分,移动台开机后,申请加入网络并进行注册的步骤;当移动台成功加入网络后,一次语音通话的具体步骤;当移动台关机时,离开网络的步骤;移动台开机后,向网络发出加入请求,位于核心网上的认证授权计费服务器(3A服务器)对该移动台的身份进行认证,如果通过认证,3A服务器就把该移动台的相关信息下载到移动台当前所属基站,同时,3A服务器把该移动台的当前地址告知核心网上的注册服务器,注册服务器对移动台的地址信息进行注册,最后基站把入网结果告知移动台;当一个移动台发起对另一个移动台的语音呼叫时,它需要首先通过基站发起的身份认证,然后从核心网上的注册服务器得到被叫移动台的当前地址和公钥,最后主叫移动台为本次语音通信指定服务等级、加密算法和会话密钥,并把这些信息包含在连接建立信令消息中发送给网络,网络节点根据移动台提出的服务等级需求预留足够的有线和无线资源以保证语音通信的服务质量,并把呼叫邀请逐跳向被叫移动台转发,当被叫移动台最终收到主叫方发来的呼叫邀请后,向主叫方发出确认,然后通信双方就可以利用网络上已经为本次通话建立的资源预留路径进行语音通信,语音通信可以利用双方协商好的加密算法和会话密钥进行加密,以提高安全性,在通话过程中由基站负责通知3A服务器开始或终止计费;当通话结束后,移动台发送通话结束信令,网络节点收到此信令后释放为本次通话预留的网络资源。
当移动台开机后,根据其目前所属的网段配置IP地址,并向所在小区的基站发送加入请求,基站把移动台的加入请求通知核心网上的3A服务器,3A服务器保存了所有合法移动台的设备和身份认证信息,它向申请加入网络的移动台发送认证请求,移动台对认证请求进行处理并向3A服务器发送认证回复,3A服务器检查回复消息,如果消息合法,就把该移动台的当前地址告知核心网上的注册服务器,注册服务器对移动台的地址信息进行注册,同时3A服务器把该移动台的鉴权信息传递给移动台当前所属的基站,然后由基站通知移动台入网成功;当一个移动台想要发起对另一个移动台的语音呼叫时,它需要首先为本次通话产生一个通话标志符,通话标志符由“主叫号码+被叫号码+主叫内部标志符”组成,通话标志符能够唯一地标志网络上的一次通话,然后主叫移动台需要通过基站发起的身份认证,接下来主叫移动台向核心网上的注册服务器发送地址请求消息,注册服务器回复该地址请求消息把被叫移动台的当前地址和公钥告知主叫移动台,收到被叫方的当前地址和公钥后,主叫移动台就可以向网络发送连接建立信令消息,该信令消息中包含了通话标志符、通话双方的电话号码、通话双方的当前地址、主叫方指定的本次通话的服务等级、主叫方指定的本次通话的加密算法、会话密钥、以及加密算法和会话密钥的摘要等信息,其中加密算法、会话密钥和摘要三部分内容在连接建立信令消息中是以被叫方的公钥加密后的密文形式存放的,网络节点收到主叫移动台发起的呼叫邀请后,会根据移动台提出的服务等级需求预留足够的有线和无线资源以保证语音通信的服务质量,如果资源预留失败,失败的网络节点会通知主叫移动台呼叫失败,如果资源预留成功,则会把呼叫邀请转发给被叫移动台所属基站,然后被叫基站会发送寻呼消息查找被叫移动台,被叫移动台收到寻呼消息后,会用自己的私钥解密寻呼消息中包含的加密算法、会话密钥和摘要,如果解密出现错误,被叫移动台会向主叫方发送相应的错误通知,否则,被叫移动台会向被叫基站发送寻呼响应,被叫基站收到寻呼响应后会启动和主叫方一侧同样的认证和无线信道分配过程,如果上述过程全部成功,被叫基站就会向被叫移动台发送响铃信令,同时向主叫方基站发送呼叫确认信令,主叫方基站收到呼叫确认信令后会通知主叫移动台产生回铃音,当被叫移动台响铃后,用户可以选择接听或者拒绝接听,如果用户拒绝接听,那么被叫移动台就向网络发送通话结束信令,反之如果被叫接听,就向网络发送连接信令,当主叫移动台得知被叫方摘机应答后就停止回铃,双方进入通话过程,同时主叫方基站会通知3A服务器开始计费;当通话结束一方挂机后,会向另一方发送通话结束信令,当网络节点收到通话结束信令后就会释放为本次通话预留的有线和无线资源,当主叫所属基站收到任何一方发来的通话结束信令后,会通知3A服务器停止计费,3A服务器会把本次通话结束后通话双方最新的余额信息通过计费终止确认信令告知它们当前所属的基站,一次语音通话过程结束。
本发明中涉及的各种信令消息定义如下 (1)加入消息JOINtypedef struct{ int node_num; //移动台电话号码 struct in6_addr node_addr;//移动台当前地址 }Join; (2)接入请求消息ACC_REQtypedef struct{ int node_num; //请求加入的移动台的电话号码 struct in6_addr node_addr;//请求加入的移动台的当前地址}AccReq; (3)身份验证消息IDEN_TESTtypedef struct{ int node_num; //移动台电话号码 BN random_num; //随机数 time_t time;//时间戳}IdenTest; (4)身份验证回复消息IDEN_REStypedef struct{ int node_num; //移动台电话号码 unsigned char* encrypted_content;//移动台签名,私钥加密的随机数+时间戳}IdenRes; (5)授权添加消息AUTH_ADDtypedef struct{ int node_num; //移动台电话号码 Byte auth_service; //该移动台授权的服务 int auth_class;//该移动台授权的服务等级 int surplus_money; //该移动台当前余额 unsigned char* key; //该移动台公钥}AuthAdd; (6)授权撤销消息AUTH_REtypedef struct{ int node_num; //移动台电话号码 }AuthRe; (7)加入完成消息JOIN_COMtypedef struct{ enum{SUCCESS,FAIL}join_res;//移动台入网结果 int error_code; //如果入网失败,记录错误码}JoinCom; (8)注册消息REGISTERtypedef struct{int node_num; //移动台电话号码struct in6_addr node_addr; //移动台当前地址unsigned char* node_key;//移动台公钥}Register; (9)注册确认消息REGIS_CONFtypedef struct{ int node_num; //移动台电话号码}RegisConf; (10)服务请求消息SERVE_REQtypedef struct{ char* call_id; //呼叫标志符 int caller_num; //请求服务的主叫电话号码}ServeReq; (11)认证回复消息AUTH_RESenum AuthResult{PASS,FAIL};PASS表示认证成功,FAIL表示失败。typedef struct{ enum AuthResult result; //认证结果}AuthRes; (12)连接建立消息SET_UP   typedef struct{char* call_id; //呼叫标志符int caller_num; //主叫电话号码int callee_num; //被叫电话号码struct in6_addr caller_addr;//主叫地址struct in6_addr callee_addr;//被叫地址int class;//服务等级unsigned char* algorithm; //加密算法索引值(密文)unsigned char* session_key; //会话密钥(密文)unsigned char* digest; //algorithm+session_key的摘要,散列算法生成(密文)<!-- SIPO <DP n="7"> --><dp n="d7"/>}SetUp; (13)地址请求消息ADDR_REQtypedef struct{ char* call_id; //呼叫标志符}AddrReq; (14)地址回复消息ADDR_REStypedef struct{ char* call_id; //呼叫标志符 struct in6_addr address;//被叫移动台地址 unsigned char* key; //被叫移动台公钥}AddrRes; (15)呼叫邀请消息INVITE   typedef struct{char* call_id; //呼叫标志符int caller_num; //主叫电话号码int callee_num; //被叫电话号码struct in6_addr caller_addr;//主叫地址struct in6_addr callee_addr;//被叫地址int class; //服务等级unsigned char* algorithm; //加密算法索引值(密文)unsigned char* session_key; //会话密钥(密文)unsigned char* digest; //algorithm+session_key的摘要,散列算法生成(密文)}Invite; (16)寻呼请求消息PAGE_REQ   typedef struct{char* call_id;//呼叫标志符int caller_num; //主叫电话号码int callee_num; //被叫电话号码struct in6_addr caller_addr;//主叫地址<!-- SIPO <DP n="8"> --><dp n="d8"/>int class;//服务等级unsigned char* algorithm; //加密算法索引值(密文)unsigned char* session_key;//会话密钥(密文)unsigned char* digest; //algorithm+session_key的摘要,散列算法生成(密文)}PageReq; (17)寻呼响应消息PAGE_REStypedef struct{ char* call_id; //呼叫标志符 int callee_num;//被叫号码}PageRes; (18)分配请求消息ASSIGN_REQtypedef struct{ char*call_id;//呼叫标志符 int req_num; //请求分配无线信道的移动台号码}AssignReq; (19)信道分配消息ASSIGN_CMDtypedef struct{ char*call_id;//呼叫标志符 int node_num;//移动台电话号码}AssignCmd; (20)分配完成消息ASSIGN_COMtypedef struct{ char* call_id; //呼叫标志符 int node_num; //移动台电话号码}AssignCom; (21)呼叫确认消息ACKtypedef struct{ char* call_id; //呼叫标志符}Ack; (22)回铃消息ALERTtypedef struct{ char* call_id; //呼叫标志符}Alert; (23)响铃消息RINGtypedef struct{ char* call_id; //呼叫标志符}Ring; (24)连接消息CONNtypedef struct{ char* call_id; //呼叫标志符}Conn; (25)连接确认消息CONN_ACKtypedef struct{ char* call_id; //呼叫标志符}ConnAck; (26)被叫应答消息ANStypedef struct{ char* call_id; //呼叫标志符}Ans; (27)计费启动消息PRI_START   enum ServiceType{VOICE,VEDIO,DATA};typedef struct{char* call_id; //呼叫标志符int caller_num; //主叫号码int callee_num; //被叫号码struct in6_addr caller_addr;//主叫地址struct in6_addr callee_addr;//被叫地址enum ServiceType type; //服务的类型int class; //服务等级<!-- SIPO <DP n="10"> --><dp n="d10"/>}PriStart; (28)计费启动确认消息PRI_START_ACKtypedef struct{ char* call_id;//呼叫标志符 time_t start_time; //计费起始时间}PriStartAck; (29)计费终止消息PRI_ENDtypedef struct{ char* call_id;//呼叫标志符}PriEnd; (30)计费终止确认消息PRI_END_ACKtypedef struct{ char* call_id;//呼叫标志符 time_t start_time; //计费起始时间 time_t end_time; //计费终止时间 int caller_surplus_money;//主叫余额 int callee_surplus_money;//被叫余额}PriEndAck; (31)通话结束消息BYEtypedef struct{ char* call_id;//呼叫标志符}Bye; (32)被叫忙消息BUSYtypedef struct{ char* call_id;//呼叫标志符}Busy; (33)错误消息ERRORtypedef struct{ int error_code; //错误码,记录出错信息 void* parameter; //其它的错误信息}Error; (34)关机消息SHUT_DOWNtypedef struct{ int node_num; //移动台电话号码}ShutDown; (35)离开消息LEAVEtypedef struct{ int node_num; //离开网络的移动台号码}Leave; (36)离开确认消息LEAVE_CONFtypedef struct{ int node_num; //离开网络的移动台号码}LeaveConf; 比较本发明和传统的分组网络上使用的呼叫接续信令协议如SIP、H.323等,可以看出本发明具有以下优点 1.提出服务等级的概念,使得用户可以订制自己所需要的话音通信服务质量。
2.将资源预留过程加入信令流程,使得话音通信具有服务质量保证。
3.增加了认证过程,提高了可靠性。
4.增加了加密算法、会话密钥的协商,提高了话音通信的安全性。
5.计费策略依据不同的服务类型和服务等级有所不同,计费具有合理性。



图1为无线分组网络拓扑结构图。
图2为移动台开机成功入网的流程图。
图3为一次成功的语音通话呼叫接续流程图。
图4为移动台关机离网的流程图。

具体实施例方式 图2中,移动台开机后,申请加入网络并进行注册,具体步骤如下 步骤S2.1移动台配置IP地址,并向所属基站发送加入消息JOIN,JOIN消息中包含了移动台的电话号码和当前地址; 步骤S2.2基站收到移动台发来的JOIN消息后,会代表移动台向核心网上的认证、授权、计费服务器(3A服务器)发送接入请求消息ACC_REQ,该消息中包含了要求入网的移动台的电话号码和当前地址; 步骤S2.33A服务器收到ACC_REQ消息后,会产生一个随机数,并连同时间戳和移动台的电话号码一起包含在身份验证消息IDEN_TEST中发送给请求入网的移动台; 步骤S2.4移动台收到IDEN_TEST消息,用私钥对随机数和时间戳进行签名,并向3A服务器发送身份验证回复消息IDEN_RES,该消息包含了移动台的电话号码和签名; 步骤S2.53A服务器收到IDEN_RES消息,用该移动台的公钥检查签名的合法性,如果非法,3A服务器向该移动台所属基站发送错误消息ERROR,进入S2.8;否则,3A服务器向注册服务器发送注册消息REGISTER,把移动台的电话号码、当前地址、公钥通知注册服务器; 步骤S2.6注册服务器收到REGISTER消息,完成移动台的地址和公钥注册,并向3A服务器发送注册确认消息REGIS_CONF; 步骤S2.73A服务器向该移动台当前所属基站发送授权添加消息AUTH_ADD,AUTH_ADD消息中包含了3A服务器上保存的该移动台的授权信息包括移动台的电话号码、移动台申请的服务类型、移动台授权的服务等级、移动台的余额、移动台的公钥等; 步骤S2.8如果基站收到AUTH_ADD消息,将移动台的授权信息添加到数据库中,移动台鉴权通过,反之基站收到ERROR消息,移动台鉴权失败,最后基站向移动台发送加入完成消息JOIN_COM将入网结果通知移动台; 步骤S2.9移动台收到JOIN_COM消息,判断入网结果,移动台开机入网过程结束。
图3中,当移动台成功加入网络后,就可以进行话音通信了,其一次通话的具体步骤如下 步骤S3.1主叫移动台为本次通话产生通话标志符,通话标志符由“主叫号码+被叫号码+主叫内部标志符”组成,主叫移动台向所属基站发送服务请求消息SERVE_REQ,该消息中包含了通话标志符和主叫号码; 步骤S3.2基站收到SERVE_REQ消息后,会产生一个随机数,并连同时间戳和移动台的电话号码一起包含在身份验证消息IDEN_TEST中发送给请求服务的移动台; 步骤S3.3移动台收到IDEN_TEST消息,用私钥对随机数和时间戳进行签名,并向基站发送身份验证回复消息IDEN_RES,该消息包含了移动台的电话号码和签名; 步骤S3.4基站收到IDEN_RES消息,用该移动台的公钥检查签名的合法性,并把认证结果通过发送认证回复消息AUTH_RES告知移动台; 步骤S3.5移动台收到AUTH_RES消息后,判断基站的认证结果,如果认证通过,则向核心网上的注册服务器发送地址请求消息ADDR_REQ,该消息中包含通话标志符,如果认证不通过,则本次语音通话失败; 步骤S3.6注册服务器收到ADDR_REQ消息,检索数据库,把被叫移动台的地址和公钥通过地址回复消息ADDR_RES告知主叫移动台,如果被叫已关机,则地址填全零地址; 步骤S3.7主叫移动台收到ADDR_RES消息得知被叫方当前的地址和公钥,然后主叫移动台为本次语音通话指定服务等级、加密算法和会话密钥,并计算加密算法和会话密钥的摘要,接着,主叫移动台利用被叫移动台的公钥加密“加密算法”“会话密钥”和“摘要”三个字段,最后主叫移动台向基站发送连接建立消息SET_UP,该信令消息中包含了通话标志符、通话双方的电话号码、通话双方的当前地址、主叫方指定的本次通话的服务等级以及用被叫公钥加密过的本次通话的加密算法、会话密钥、摘要信息; 步骤S3.8基站收到SET_UP消息,会根据SET_UP消息中指明的通话的服务等级为主叫移动台分配无线信道,如果分配失败,则向主叫移动台发送错误消息ERROR,如果分配成功,向主叫移动台发送信道分配消息ASSIGN_CMD,该消息中含有通话标志符和主叫号码; 步骤S3.9主叫移动台收到ASSIGN_CMD消息,向基站发送分配完成消息ASSIGN_COM结束无线信道的分配过程,ASSIGN_COM消息中包含了通话标志符和主叫号码; 步骤S3.10主叫基站收到ASSIGN_COM消息,向被叫移动台所属基站发送呼叫邀请消息INVITE,该消息中包含了通话标志符、通话双方的电话号码、通话双方的当前地址、主叫方指定的本次通话的服务等级以及用被叫公钥加密过的本次通话的加密算法、会话密钥、摘要信息; 步骤S3.11被叫基站收到INVITE消息,首先判断被叫移动台是否空闲,如果不空闲,则向主叫方发送被叫忙消息BUSY,该消息中包含了通话标志符,否则,基站根据自己所保存的被叫移动台的授权信息判断被叫移动台是否支持主叫方指定的服务等级,如果不支持,就向主叫方发送相应的错误消息ERROR,如果支持,则被叫移动台启动核心网络的资源预留过程为本次语音通话建立双向的资源预留路径; 步骤S3.12资源预留路径成功建立后,被叫基站在小区内发送寻呼请求消息PAGE_REQ,通知被叫移动台有呼叫邀请到来,PAGE_REQ消息包含了通话标志符、通话双方的电话号码、主叫方的当前地址、主叫方指定的本次通话的服务等级以及用被叫公钥加密过的本次通话的加密算法、会话密钥和摘要信息; 步骤S3.13被叫移动台收到PAGE_REQ消息,用私钥解密相关字段,并作完整性检查,如果完整性检查通过并且被叫移动台支持主叫移动台选定的加密算法,那么被叫移动台就向被叫基站发送寻呼响应消息PAGE_RES,否则,被叫移动台发送相应的错误消息; 步骤S3.14被叫基站收到PAGE_RES消息后,会产生一个随机数,并连同时间戳和移动台的电话号码一起包含在身份验证消息IDEN_TEST中发送给被叫移动台; 步骤S3.15被叫移动台收到IDEN_TEST消息,用私钥对随机数和时间戳进行签名,并向基站发送身份验证回复消息IDEN_RES,该消息包含了被叫移动台的电话号码和签名; 步骤S3.16被叫基站收到IDEN_RES消息,用被叫移动台的公钥检查签名的合法性,并把认证结果通过发送认证回复消息AUTH_RES告知被叫移动台; 步骤S3.17被叫移动台收到AUTH_RES消息后,判断基站的鉴权结果,如果鉴权通过,则向基站发送分配请求消息ASSIGN_REQ,该消息中包含通话标志符和被叫电话号码,如果鉴权不通过,则向主叫方发送错误消息ERROR; 步骤S3.18被叫基站收到ASSIGN_REQ消息,会根据本次通话的服务等级为被叫移动台分配无线信道,如果分配失败,则发送相应的错误消息ERROR,如果分配成功,向被叫移动台发送信道分配消息ASSIGN_CMD,该消息中含有通话标志符和被叫号码; 步骤S3.19被叫移动台收到ASSIGN_CMD消息,向基站发送分配完成消息ASSIGN_COM结束无线信道的分配过程,ASSIGN_COM消息中包含了通话标志符和被叫号码; 步骤S3.20被叫基站收到ASSIGN_COM消息后,向被叫移动台发送响铃消息RING,同时被叫基站向主叫基站发出呼叫确认消息ACK,ACK消息中包含了通话标志符; 步骤S3.21主叫基站收到被叫基站发来的ACK消息后,向主叫移动台发送回铃消息ALERT该消息中包含了通话标志符; 步骤S3.22主叫移动台收到ALERT消息后,发出回铃音,通知主叫用户通话连接建立成功; 步骤S3.23被叫移动台收到RING消息后,发出振铃,通知被叫用户有呼叫邀请到达,如果被叫用户拒绝接听此次通话,则向基站发送通话结束消息BYE,转到S3.30,反之,如果被叫用户接听通话,则向基站发送连接消息CONN,CONN消息包含了通话标志符; 步骤S3.24被叫基站收到CONN消息后,向被叫移动台发送连接确认消息CONN_ACK,通知被叫移动台进入通话状态,同时被叫基站向主叫基站发送被叫应答消息ANS,ANS消息包含了通话标志符; 步骤S3.25主叫基站收到被叫基站发来的ANS消息后,向核心网上的3A服务器发送计费启动消息PRI_START,该消息中包含了通话标志符、通话双方的电话号码和地址、服务类型以及通话的服务等级; 步骤S3.263A服务器收到PRI_START消息后,根据消息中指定的服务类型和等级为本次通话开始计费,同时向主叫基站发送计费启动确认消息PRI_START_ACK,该消息中包含了通话标志符和计费起始时间;步骤S3.27主叫基站收到PRI_START_ACK消息后,向主叫移动台发送连接消息CONN; 步骤S3.28主叫移动台收到CONN消息后停止回铃,并向基站发送连接确认消息CONN_ACK,主叫方进入通话状态,通信双方开始通话; 步骤S3.29通话结束后一方关机,则需要向基站发送通话结束消息BYE,BYE消息包含了通话标志符; 步骤S3.30通话一方的基站收到BYE消息,释放相应的无线信道和网络资源,并把BYE消息向另一方基站转发; 步骤S3.31主叫基站第一次收到BYE消息后,向3A服务器发送计费终止消息PRI_END,该消息包含了通话标志符; 步骤S3.323A服务器收到PRI_END消息,终止计费过程,更新通话双方的余额信息,并把最新的余额信息通过计费终止确认消息PRI_END_ACK发送给主叫和被叫移动台当前所属的基站,PRI_END_ACK消息包含了通话标志符,通话计费起始和终止时间,以及通话双方的最新余额; 步骤S3.33主叫和被叫收到3A服务器发来的PRI_END_ACK消息后,更新数据库记录,一次语音过程结束。
图4中,当移动台关机时,向基站发送关机消息,通知基站移动台已离开网络,其具体步骤如下 步骤S4.1移动台向基站发送关机消息SHUT_DOWN,该消息中包含了移动台的电话号码; 步骤S4.2基站收到SHUT_DOWN消息后,将移动台的状态置为关机,并向注册服务器发送离开消息LEAVE,该消息中包含了离开网络的移动台电话号码; 步骤S4.3注册服务器收到LEAVE消息后,将数据库中该移动台的状态置为关机,并向基站发送离开确认消息LEAVE_CONF,该消息中包含了离开网络的移动台电话号码; 步骤S4.4基站收到LEAVE_CONF消息,删除该移动台的记录。
权利要求
1.一种无线分组网络中语音通信呼叫接续信令协议,其特征在于,信令协议包括三个部分,移动台开机后,申请加入网络并进行注册的步骤;当移动台成功加入网络后,一次语音通话的具体步骤;当移动台关机时,离开网络的步骤;移动台开机后,向网络发出加入请求,位于核心网上的认证授权计费服务器对该移动台的身份进行认证,如果通过认证,3A服务器就把该移动台的相关信息下载到移动台当前所属基站,同时,3A服务器把该移动台的当前地址告知核心网上的注册服务器,注册服务器对移动台的地址信息进行注册,最后基站把入网结果告知移动台;当一个移动台发起对另一个移动台的语音呼叫时,它需要首先通过基站发起的身份认证,然后从核心网上的注册服务器得到被叫移动台的当前地址和公钥,最后主叫移动台为本次语音通信指定服务等级、加密算法和会话密钥,并把这些信息包含在连接建立信令消息中发送给网络,网络节点根据移动台提出的服务等级需求预留足够的有线和无线资源以保证语音通信的服务质量,并把呼叫邀请逐跳向被叫移动台转发,当被叫移动台最终收到主叫方发来的呼叫邀请后,向主叫方发出确认,然后通信双方就可以利用网络上已经为本次通话建立的资源预留路径进行语音通信,语音通信可以利用双方协商好的加密算法和会话密钥进行加密,以提高安全性,在通话过程中由基站负责通知3A服务器开始或终止计费;当通话结束后,移动台发送通话结束信令,网络节点收到此信令后释放为本次通话预留的网络资源。
2.根据权利要求1所述的无线分组网络中语音通信呼叫接续信令协议,其特征是
当移动台开机后,根据其目前所属的网段配置IP地址,并向所在小区的基站发送加入请求,基站把移动台的加入请求通知核心网上的3A服务器,3A服务器保存了所有合法移动台的设备和身份认证信息,它向申请加入网络的移动台发送认证请求,移动台对认证请求进行处理并向3A服务器发送认证回复,3A服务器检查回复消息,如果消息合法,就把该移动台的当前地址告知核心网上的注册服务器,注册服务器对移动台的地址信息进行注册,同时3A服务器把该移动台的鉴权信息传递给移动台当前所属的基站,然后由基站通知移动台入网成功;当一个移动台想要发起对另一个移动台的语音呼叫时,它需要首先为本次通话产生一个通话标志符,通话标志符由“主叫号码+被叫号码+主叫内部标志符”组成,通话标志符能够唯一地标志网络上的一次通话,然后主叫移动台需要通过基站发起的身份认证,接下来主叫移动台向核心网上的注册服务器发送地址请求消息,注册服务器回复该地址请求消息把被叫移动台的当前地址和公钥告知主叫移动台,收到被叫方的当前地址和公钥后,主叫移动台就可以向网络发送连接建立信令消息,该信令消息中包含了通话标志符、通话双方的电话号码、通话双方的当前地址、主叫方指定的本次通话的服务等级、主叫方指定的本次通话的加密算法、会话密钥、以及加密算法和会话密钥的摘要等信息,其中加密算法、会话密钥和摘要三部分内容在连接建立信令消息中是以被叫方的公钥加密后的密文形式存放的,网络节点收到主叫移动台发起的呼叫邀请后,会根据移动台提出的服务等级需求预留足够的有线和无线资源以保证语音通信的服务质量,如果资源预留失败,失败的网络节点会通知主叫移动台呼叫失败,如果资源预留成功,则会把呼叫邀请转发给被叫移动台所属基站,然后被叫基站会发送寻呼消息查找被叫移动台,被叫移动台收到寻呼消息后,会用自己的私钥解密寻呼消息中包含的加密算法、会话密钥和摘要,如果解密出现错误,被叫移动台会向主叫方发送相应的错误通知,否则,被叫移动台会向被叫基站发送寻呼响应,被叫基站收到寻呼响应后会启动和主叫方一侧同样的认证和无线信道分配过程,如果上述过程全部成功,被叫基站就会向被叫移动台发送响铃信令,同时向主叫方基站发送呼叫确认信令,主叫方基站收到呼叫确认信令后会通知主叫移动台产生回铃音,当被叫移动台响铃后,用户可以选择接听或者拒绝接听,如果用户拒绝接听,那么被叫移动台就向网络发送通话结束信令,反之如果被叫接听,就向网络发送连接信令,当主叫移动台得知被叫方摘机应答后就停止回铃,双方进入通话过程,同时主叫方基站会通知3A服务器开始计费;当通话结束一方挂机后,会向另一方发送通话结束信令,当网络节点收到通话结束信令后就会释放为本次通话预留的有线和无线资源,当主叫所属基站收到任何一方发来的通话结束信令后,会通知3A服务器停止计费,3A服务器会把本次通话结束后通话双方最新的余额信息通过计费终止确认信令告知它们当前所属的基站,一次语音通话过程结束。
3.根据权利要求1所述的无线分组网络中语音通信呼叫接续信令协议,其移动台开机入网的具体步骤如下
步骤S2.1移动台配置IP地址,并向所属基站发送加入消息JOIN,JOIN消息中包含了移动台的电话号码和当前地址;
步骤S2.2基站收到移动台发来的JOIN消息后,会代表移动台向核心网上的认证、授权、计费服务器(3A服务器)发送接入请求消息ACC_REQ,该消息中包含了要求入网的移动台的电话号码和当前地址;
步骤S2.33A服务器收到ACC_REQ消息后,会产生一个随机数,并连同时间戳和移动台的电话号码一起包含在身份验证消息IDEN_TEST中发送给请求入网的移动台;
步骤S2.4移动台收到IDEN_TEST消息,用私钥对随机数和时间戳进行签名,并向3A服务器发送身份验证回复消息IDEN_RES,该消息包含了移动台的电话号码和签名;
步骤S2.53A服务器收到IDEN_RES消息,用该移动台的公钥检查签名的合法性,如果非法,3A服务器向该移动台所属基站发送错误消息ERROR,进入S2.8;否则,3A服务器向注册服务器发送注册消息REGISTER,把移动台的电话号码、当前地址、公钥通知注册服务器;
步骤S2.6注册服务器收到REGISTER消息,完成移动台的地址和公钥注册,并向3A服务器发送注册确认消息REGIS_CONF;
步骤S2.73A服务器向该移动台当前所属基站发送授权添加消息AUTH_ADD,AUTH_ADD消息中包含了3A服务器上保存的该移动台的授权信息包括移动台的电话号码、移动台申请的服务类型、移动台授权的服务等级、移动台的余额、移动台的公钥等;
步骤S2.8如果基站收到AUTH_ADD消息,将移动台的授权信息添加到数据库中,移动台鉴权通过,反之基站收到ERROR消息,移动台鉴权失败,最后基站向移动台发送加入完成消息JOIN_COM将入网结果通知移动台;
步骤S2.9移动台收到JOIN_COM消息,判断入网结果,移动台开机入网过程结束。
4.根据权利要求1所述的无线分组网络中语音通信呼叫接续信令协议,其一次语音通话的具体步骤如下
步骤S4.1主叫移动台为本次通话产生通话标志符,通话标志符由“主叫号码+被叫号码+主叫内部标志符”组成,主叫移动台向所属基站发送服务请求消息SERVE_REQ,该消息中包含了通话标志符和主叫号码;
步骤S4.2基站收到SERVE_REQ消息后,会产生一个随机数,并连同时间戳和移动台的电话号码一起包含在身份验证消息IDEN_TEST中发送给请求服务的移动台;
步骤S4.3移动台收到IDEN_TEST消息,用私钥对随机数和时间戳进行签名,并向基站发送身份验证回复消息IDEN_RES,该消息包含了移动台的电话号码和签名;
步骤S4.4基站收到IDEN_RES消息,用该移动台的公钥检查签名的合法性,并把认证结果通过发送认证回复消息AUTH_RES告知移动台;
步骤S4.5移动台收到AUTH_RES消息后,判断基站的认证结果,如果认证通过,则向核心网上的注册服务器发送地址请求消息ADDR_REQ,该消息中包含通话标志符,如果认证不通过,则本次语音通话失败;
步骤S4.6注册服务器收到ADDR_REQ消息,检索数据库,把被叫移动台的地址和公钥通过地址回复消息ADDR_RES告知主叫移动台,如果被叫已关机,则地址填全零地址;
步骤S4.7主叫移动台收到ADDR_RES消息得知被叫方当前的地址和公钥,然后主叫移动台为本次语音通话指定服务等级、加密算法和会话密钥,并计算加密算法和会话密钥的摘要,接着,主叫移动台利用被叫移动台的公钥加密“加密算法”“会话密钥”和“摘要”三个字段,最后主叫移动台向基站发送连接建立消息SET_UP,该信令消息中包含了通话标志符、通话双方的电话号码、通话双方的当前地址、主叫方指定的本次通话的服务等级以及用被叫公钥加密过的本次通话的加密算法、会话密钥、摘要信息;
步骤S4.8基站收到SET_UP消息,会根据SET_UP消息中指明的通话的服务等级为主叫移动台分配无线信道,如果分配失败,则向主叫移动台发送错误消息ERROR,如果分配成功,向主叫移动台发送信道分配消息ASSIGN_CMD,该消息中含有通话标志符和主叫号码;
步骤S4.9主叫移动台收到ASSIGN_CMD消息,向基站发送分配完成消息ASSIGN_COM结束无线信道的分配过程,ASSIGN_COM消息中包含了通话标志符和主叫号码;
步骤S4.10主叫基站收到ASSIGN_COM消息,向被叫移动台所属基站发送呼叫邀请消息INVITE,该消息中包含了通话标志符、通话双方的电话号码、通话双方的当前地址、主叫方指定的本次通话的服务等级以及用被叫公钥加密过的本次通话的加密算法、会话密钥、摘要信息;
步骤S4.11被叫基站收到INVITE消息,首先判断被叫移动台是否空闲,如果不空闲,则向主叫方发送被叫忙消息BUSY,该消息中包含了通话标志符,否则,基站根据自己所保存的被叫移动台的授权信息判断被叫移动台是否支持主叫方指定的服务等级,如果不支持,就向主叫方发送相应的错误消息ERROR,如果支持,则被叫移动台启动核心网络的资源预留过程为本次语音通话建立双向的资源预留路径;
步骤S4.12资源预留路径成功建立后,被叫基站在小区内发送寻呼请求消息PAGE_REQ,通知被叫移动台有呼叫邀请到来,PAGE_REQ消息包含了通话标志符、通话双方的电话号码、主叫方的当前地址、主叫方指定的本次通话的服务等级以及用被叫公钥加密过的本次通话的加密算法、会话密钥和摘要信息;
步骤S4.13被叫移动台收到PAGE_REQ消息,用私钥解密相关字段,并作完整性检查,如果完整性检查通过并且被叫移动台支持主叫移动台选定的加密算法,那么被叫移动台就向被叫基站发送寻呼响应消息PAGE_RES,否则,被叫移动台发送相应的错误消息;
步骤S4.14被叫基站收到PAGE_RES消息后,会产生一个随机数,并连同时间戳和移动台的电话号码一起包含在身份验证消息IDEN_TEST中发送给被叫移动台;
步骤S4.15被叫移动台收到IDEN_TEST消息,用私钥对随机数和时间戳进行签名,并向基站发送身份验证回复消息IDEN_RES,该消息包含了被叫移动台的电话号码和签名;
步骤S4.16被叫基站收到IDEN_RES消息,用被叫移动台的公钥检查签名的合法性,并把认证结果通过发送认证回复消息AUTH_RES告知被叫移动台;
步骤S4.17被叫移动台收到AUTH_RES消息后,判断基站的鉴权结果,如果鉴权通过,则向基站发送分配请求消息ASSIGN_REQ,该消息中包含通话标志符和被叫电话号码,如果鉴权不通过,则向主叫方发送错误消息ERROR;
步骤S4.18被叫基站收到ASSIGN_REQ消息,会根据本次通话的服务等级为被叫移动台分配无线信道,如果分配失败,则发送相应的错误消息ERROR,如果分配成功,向被叫移动台发送信道分配消息ASSIGN_CMD,该消息中含有通话标志符和被叫号码;
步骤S4.19被叫移动台收到ASSIGN_CMD消息,向基站发送分配完成消息ASSIGN_COM结束无线信道的分配过程,ASSIGN_COM消息中包含了通话标志符和被叫号码;
步骤S4.20被叫基站收到ASSIGN_COM消息后,向被叫移动台发送响铃消息RING,同时被叫基站向主叫基站发出呼叫确认消息ACK,ACK消息中包含了通话标志符;
步骤S4.21主叫基站收到被叫基站发来的ACK消息后,向主叫移动台发送回铃消息ALERT该消息中包含了通话标志符;
步骤S4.22主叫移动台收到ALERT消息后,发出回铃音,通知主叫用户通话连接建立成功;
步骤S4.23被叫移动台收到RING消息后,发出振铃,通知被叫用户有呼叫邀请到达,如果被叫用户拒绝接听此次通话,则向基站发送通话结束消息BYE,转到S4.30,反之,如果被叫用户接听通话,则向基站发送连接消息CONN,CONN消息包含了通话标志符;
步骤S4.24被叫基站收到CONN消息后,向被叫移动台发送连接确认消息CONN_ACK,通知被叫移动台进入通话状态,同时被叫基站向主叫基站发送被叫应答消息ANS,ANS消息包含了通话标志符;
步骤S4.25主叫基站收到被叫基站发来的ANS消息后,向核心网上的3A服务器发送计费启动消息PRI_START,该消息中包含了通话标志符、通话双方的电话号码和地址、服务类型以及通话的服务等级;
步骤S4.263A服务器收到PRI_START消息后,根据消息中指定的服务类型和等级为本次通话开始计费,同时向主叫基站发送计费启动确认消息PRI_START_ACK,该消息中包含了通话标志符和计费起始时间;
步骤S4.27主叫基站收到PRI_START_ACK消息后,向主叫移动台发送连接消息CONN;
步骤S4.28主叫移动台收到CONN消息后停止回铃,并向基站发送连接确认消息CONN_ACK,主叫方进入通话状态,通信双方开始通话;
步骤S4.29通话结束后一方关机,则需要向基站发送通话结束消息BYE,BYE消息包含了通话标志符;
步骤S4.30通话一方的基站收到BYE消息,释放相应的无线信道和网络资源,并把BYE消息向另一方基站转发;
步骤S4.31主叫基站第一次收到BYE消息后,向3A服务器发送计费终止消息PRI_END,该消息包含了通话标志符;
步骤S4.323A服务器收到PRI_END消息,终止计费过程,更新通话双方的余额信息,并把最新的余额信息通过计费终止确认消息PRI_END_ACK发送给主叫和被叫移动台当前所属的基站,PRI_END_ACK消息包含了通话标志符,通话计费起始和终止时间,以及通话双方的最新余额;
步骤S4.33主叫和被叫收到3A服务器发来的PRI_END_ACK消息后,更新数据库记录,一次语音过程结束。
5.根据权利要求1所述的无线分组网络中语音通信呼叫接续信令协议,其移动台关机离开的具体步骤如下
步骤S5.1移动台向基站发送关机消息SHUT_DOWN,该消息中包含了移动台的电话号码;
步骤S5.2基站收到SHUT_DOWN消息后,将移动台的状态置为关机,并向注册服务器发送离开消息LEAVE,该消息中包含了离开网络的移动台电话号码;
步骤S5.3注册服务器收到LEAVE消息后,将数据库中该移动台的状态置为关机,并向基站发送离开确认消息LEAVE_CONF,该消息中包含了离开网络的移动台电话号码;
步骤S5.4基站收到LEAVE_CONF消息,删除该移动台的记录。
6.根据权利要求3、权利要求4、权利要求5所述的无线分组网络中语音通信呼叫接续信令协议的呼叫接续流程,其中包含的各种信令消息定义如下
(1)加入消息JOIN
typedef struct{
int node_num; //移动台电话号码
struct in6_addr node_addr;//移动台当前地址
}Join;
(2)接入请求消息ACC_REQ
typedef struct{
int node_num; //请求加入的移动台的电话号码
struct in6_addr node_addr;//请求加入的移动台的当前地

}AccReq;
(3)身份验证消息IDEN_TEST
typedef struct{
int node_num;//移动台电话号码
BN random_num; //随机数
time_t time; //时间戳
}IdenTest;
(4)身份验证回复消息IDEN_RES
typedef struct{
int node_num; //移动台电话号码
unsigned char* encrypted_content;//移动台签名,私钥加密的随机数+时间戳
}IdenRes;
(5)授权添加消息AUTH_ADD
typedef struct{
int node_num; //移动台电话号码
Byte auth_service;//该移动台授权的服务
int auth_class; //该移动台授权的服务等级
int surplus_money;//该移动台当前余额
unsigned char*key;//该移动台公钥
}AuthAdd;
(6)授权撤销消息AUTH_RE
typedef struct{
int node_num; //移动台电话号码
}AuthRe;
(7)加入完成消息JOIN_COM
typedef struct{
enum{SUCCESS,FAIL}join_res; //移动台入网结果
int error_code; //如果入网失败,记录错误码
}JoinCom;
(8)注册消息REGISTER
typedef struct{
int node_num;//移动台电话号码
struct in6_addr node_addr; //移动台当前地址
unsigned char*node_key; //移动台公钥
}Register;
(9)注册确认消息REGIS_CONF
typedef struct{
int node_num;//移动台电话号码
}RegisConf;
(10)服务请求消息SERVE_REQ
typedef struct{
char*call_id;//呼叫标志符
int caller_num; //请求服务的主叫电话号码
}ServeReq;
(11)认证回复消息AUTH_RES
enum AuthResult{PASS,FAIL};
PASS表示认证成功,FAIL表示失败。
typedef struct{
enum AuthResult result; //认证结果
}AuthRes;
(12)连接建立消息SET_UP
typedef struct{
char*call_id;//呼叫标志符
int caller_num; //主叫电话号码
int callee_num; //被叫电话号码
struct in6_addr caller_addr; //主叫地址
struct in6_addr callee_addr; //被叫地址
int class; //服务等级
unsigned char*algorithm; //加密算法索引值(密文)
unsigned char*session_key; //会话密钥(密文)
unsigned char*digest;//algorithm+session_key的摘
要,散列算法生成(密文)
}SetUp;
(13)地址请求消息ADDR_REQ
typedef struct{
char*call_id;//呼叫标志符
}AddrReq;
(14)地址回复消息ADDR_RES
typedef struct{
char*call_id; //呼叫标志符
struct in6_addr address;//被叫移动台地址
unsigned char*key; //被叫移动台公钥
}AddrRes;
(15)呼叫邀请消息INVITE
typedef struct{
char*call_id; //呼叫标志符
int caller_num;//主叫电话号码
int callee_num;//被叫电话号码
struct in6_addr caller_addr; //主叫地址
struct in6_addr callee_addr; //被叫地址
int class; //服务等级
unsigned char*algorithm; //加密算法索引值(密文)
unsigned char*session_key; //会话密钥(密文)
unsigned char*digest; //algorithm+session_key的摘要,散列算法生成(密文)
}Invite;
(16)寻呼请求消息PAGE_REQ
typedef struct{
char*call_id; //呼叫标志符
int caller_num; //主叫电话号码
int callee_num; //被叫电话号码
struct in6_addr caller_addr; //主叫地址
int class; //服务等级
unsigned char*algorithm; //加密算法索引值(密文)
unsigned char*session_key; //会话密钥(密文)
unsigned char*digest; //algorithm+session_key的摘要,散列算法生成(密文)
}PageReq;
(17)寻呼响应消息PAGE_RES
typedef struct{
char*call_id; //呼叫标志符
int callee_num; //被叫号码
}PageRes;
(18)分配请求消息ASSIGN_REQ
typedef struct{
char*call_id; //呼叫标志符
int req_num;//请求分配无线信道的移动台号码
}AssignReq;
(19)信道分配消息ASSIGN_CMD
typedef struct{
char*call_id; //呼叫标志符
int node_num; //移动台电话号码
}AssignCmd;
(20)分配完成消息ASSIGN_COM
typedef struct{
char*call_id; //呼叫标志符
int node_num; //移动台电话号码
}AssignCom;
(21)呼叫确认消息ACK
typedef struct{
char*call_id;//呼叫标志符
}Ack;
(22)回铃消息ALERT
typedef struct{
char*call_id; //呼叫标志符
}Alert;
(23)响铃消息RING
typedef struct{
char*call_id; //呼叫标志符
}Ring;
(24)连接消息CONN
typedef struct{
char*call_id; //呼叫标志符
}Conn;
(25)连接确认消息CONN_ACK
typedef struct{
char*call_id; //呼叫标志符
}ConnAck;
(26)被叫应答消息ANS
typedef struct{
char*call_id;//呼叫标志符
}Ans;
(27)计费启动消息PRI_START
enum ServiceType{VOICE,VEDIO,DATA};
typedef struct{
char*call_id; //呼叫标志符
int caller_num; //主叫号码
int callee_num; //被叫号码
struct in6_addr caller_addr; //主叫地址
struct in6_addr callee_addr;//被叫地址
enum ServiceType type; //服务的类型
int class; //服务等级
}PriStart;
(28)计费启动确认消息PRI_START_ACK
typedef struct{
char*call_id; //呼叫标志符
time_t start_time; //计费起始时间
}PriStartAck;
(29)计费终止消息PRI_END
typedef struct{
char*call_id; //呼叫标志符
}PriEnd;
(30)计费终止确认消息PRI_END_ACK
typedef struct{
char*call_id; //呼叫标志符
time_t start_time; //计费起始时间
time_t end_time; //计费终止时间
int caller_surplus_money; //主叫余额
int callee_surplus_money; //被叫余额
}PriEndAck;
(31)通话结束消息BYE
typedef struct{
char*call_id;//呼叫标志符
}Bye;
(32)被叫忙消息BUSY
typedef struct{
char*call_id; //呼叫标志符
}Busy;
(33)错误消息ERROR
typedef struct{
int error_code; //错误码,记录出错信息
void*parameter; //其它的错误信息
}Error;
(34)关机消息SHUT_DOWN
typedef struct{
int node_num; //移动台电话号码
}ShutDown;
(35)离开消息LEAVE
typedef struct{
int node_num;//离开网络的移动台号码
}Leave;
(36)离开确认消息LEAVE_CONF
typedef struct{
int node_num; //离开网络的移动台号码
}LeaveConf;
全文摘要
本发明属于通信网络技术领域,是无线分组网络中语音通信呼叫接续信令的实现方法,本信令协议包含认证、授权、计费、资源预留、加密等过程,能够提高无线分组网络环境下语音通信的安全性和可靠性,并且确保语音通信的服务质量。方法步骤包括移动台开机后,需要通过认证授权计费服务器的认证,并把它的当前地址注册到注册服务器;当一个移动台发起对另一个移动台的语音呼叫时,首先需要通过基站的认证,然后从注册服务器得到被叫移动台的地址和公钥,最后将语音通信的服务等级和安全性信息封装到连接建立信令消息中发送给网络,网络节点预留足够的有线和无线资源,并最终把呼叫请求转发给被叫移动台,从而实现两个移动台之间的语音通信。
文档编号H04W76/02GK1674712SQ20051001160
公开日2005年9月28日 申请日期2005年4月21日 优先权日2005年4月21日
发明者孙毅, 胡金龙, 金鑫, 周继华, 石晶林 申请人:中国科学院计算技术研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1