本发明涉及通信领域技术领域,具体涉及一种基于ipsec的边界会话控制器的设置方法。
背景技术:
会话边界控制器(sessionbordercontroller,sbc)是ip语音网络的边界大门,主要用于解决语音会话在网络地址转换时的穿越问题,提供安全的ip通讯支持,并能提供对语音质量的保障。在fc5853的定义中,sbc被定义为一个b2buas(back-to-backuseragents),它可以实现对某些sip(sessioninitiationprotocol,会话初始协议)头域消息和sdp媒体协商信息进行修改,同时支持对融合通信的业务能力,包括未来业务的升级和拓展。
ipsec是ip层的一种安全协议,主要作用就是为了解决网络通信中的安全问题。在网络通信中,暴露很多安全问题,比如说数据包被监听窃取,被篡改,以及伪造身份,拒绝服务等。利用fpga的高性能和低功耗的特点,同时支持多种加密(md5/aes/sae)算法,通过设定系统线程池的方式,对底层系统资源进行调度,在保证数据加密的同时,提升整个边界会话控制系统资源的利用率。
在ims域中,由于终端用户的多样性,终端用户很难控制对端网络,对网络服务,语音质量,安全机制失了可控性。缺乏统一管理的平台机制,导致网络设置和安全机制的设置缺乏一个统一的管理机制。
技术实现要素:
本发明要解决的技术问题是:本发明针对以上问题,提供一种基于ipsec的边界会话控制器的设置方法。
本发明所采用的技术方案为:
一种基于ipsec的边界会话控制器的设置方法,在边界会话控制器中,根据通信协议支持的媒体通道数目,设定固定数目的线程池,当发生媒体协商时,利用线程池灵活调度系统资源,完成对数据加密传输。
所述边界会话控制器包含有系统支持的最大线程配置表。
所述边界会话控制器包含有fpga芯片。
所述边界会话控制器在进行加密时,通过fpga芯片对媒体协商携带的媒体信息进行加解密,防止媒体协商数据包被监听窃取篡改及伪造身份、拒绝服务等,保证用户会话过程中通信的安全性。
所述边界会话控制器通过pcie接口与系统的cpu连接,并处理收到cpu的加解密请求指令消息。
所述系统支持的最大线程的配置根据当前ims域sip协议支持的最大媒体协商通道数进行配置。
当呼叫接通或者发生媒体协商时,所述边界会话控制器收到主叫侧或被叫侧的媒体网关mgw(mediagateway)携带的媒体协商信息(比如:invite/200)后,根据当前消息中携带的媒体通道数目,启动空闲的系统线程,利用fpga对媒体通道携带的sdp信息进行加密,完成媒体数据的加密。
所述边界会话控制器会话媒体通道加密流程包括内容如下:
边界会话控制器启动后,根据sip媒体协商支持的通道数配置空闲线程数据信息,启动并创建一个一定数目的空闲的业务处理线程池,并创建一个文件描述符句柄,制定侦听事件的大小(即系统能够处理的并发请求消息的能力);
当呼叫接通或发生媒体协商时,边界会话控制器侦听到来自用户的媒体协商消息,将侦听到的文件描述添加到任务队列中,并唤醒一个空闲的任务进程进行业务处理;
边界会话控制器通过调用opencl接口,传入待加密的媒体协商信息(sdp)至fpga中进行加密,并将加密后信息返回至cpu中,cpu通过调用sip协议栈消息接口,加密整个数据包。
所述边界会话控制器以ipsec传输模式进行数据传输时,媒体数据部分是封装传送,ip报头不封装即被传送。
所述边界会话控制器以ipsec隧道模式进行传输时,在加密的封包上增加新的头部即是sbc的ip地址和端口号,完成ipsec媒体数据加密信息的封装,进行网络传输。
本发明的有益效果为:
本发明方法在发生媒体协商时,利用线程池灵活调度系统资源,完成对数据加密传输,在进行加密时,利用fpga对媒体协商携带的媒体信息进行加解密,防止媒体协商数据包被监听窃取篡改及伪造身份、拒绝服务等,保证用户会话过程中通信的安全性。
附图说明
图1为本发明基于ipsec的边界会话控制器结构意图;
图2为基于ipsec的边界会话控制器会话媒体通道加密流程图。
具体实施方式
下面根据说明书附图,结合具体实施方式对本发明进一步说明:
实施例1:
如图1所示,一种基于ipsec的边界会话控制器的设置方法,其特征在于,在边界会话控制器中,根据通信协议支持的媒体通道数目,设定固定数目的线程池,当发生媒体协商时,利用线程池灵活调度系统资源,完成对数据加密传输。
所述边界会话控制器包含有系统支持的最大线程配置表。
所述边界会话控制器包含有fpga芯片。
所述边界会话控制器在进行加密时,通过fpga芯片对媒体协商携带的媒体信息进行加解密,防止媒体协商数据包被监听窃取篡改及伪造身份、拒绝服务等,保证用户会话过程中通信的安全性。
所述边界会话控制器通过pcie接口与系统的cpu连接,并处理收到cpu的加解密请求指令消息。
所述系统支持的最大线程的配置根据当前ims域sip协议支持的最大媒体协商通道数进行配置。
当呼叫接通或者发生媒体协商时,所述边界会话控制器收到主叫侧或被叫侧的媒体网关mgw(mediagateway)携带的媒体协商信息(比如:invite/200)后,根据当前消息中携带的媒体通道数目,启动空闲的系统线程,利用fpga对媒体通道携带的sdp信息进行加密,完成媒体数据的加密。
实施例2
如图2所示,所述边界会话控制器会话媒体通道加密流程包括内容如下:
边界会话控制器启动后,根据sip媒体协商支持的通道数配置空闲线程数据信息,启动并创建一个一定数目的空闲的业务处理线程池,并创建一个文件描述符句柄,制定侦听事件的大小(即系统能够处理的并发请求消息的能力);
当呼叫接通或发生媒体协商时,边界会话控制器侦听到来自用户的媒体协商消息,将侦听到的文件描述添加到任务队列中,并唤醒一个空闲的任务进程进行业务处理;
边界会话控制器通过调用opencl接口,传入待加密的媒体协商信息(sdp)至fpga中进行加密,并将加密后信息返回至cpu中,cpu通过调用sip协议栈消息接口,加密整个数据包。
所述边界会话控制器以ipsec传输模式进行数据传输时,媒体数据部分是封装传送,ip报头不封装即被传送。
所述边界会话控制器以ipsec隧道模式进行传输时,在加密的封包上增加新的头部即是sbc的ip地址和端口号,完成ipsec媒体数据加密信息的封装,进行网络传输。
实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。