用于EPC系统的多媒体调度台集成方法与流程

文档序号:12479585阅读:482来源:国知局

本发明属于通信领域,涉及一种在EPC系统中集成多媒体调度台的方法。



背景技术:

传统的专业集群通讯往往局限于语音通信,早已不能满足各行各业对于有数据、视频等大宽带的需求。由于LTE(Long Term Evolution,长期演进)具有高速率、广覆盖、低时延、并发多、高稳定、快速移动等特性,基于LTE的宽带应急通信成为产业发展共识。

纵观目前LTE应急通信市场,大多数方案都采用了“拿来主义”,采用了公网的LTE基站(BBU、RRU)、小型核心网、第三方多媒体调度台、天线等设备集成。这种解决方案各个设备自成一体,设备较多、体积大、重量重,保守估计至少有5种设备以上,需要进行车辆改装,集成难度大。而应急通信系统体积过大,将难以在灾害发生的第一时间开赴救灾现场。因此,如何在保障功能完备的情况下集成通信设备,缩小体积,减轻重量,是应急通信发展的一个方向,但目前尚未有实用的技术方案出现。



技术实现要素:

本发明的目的在于针对应急通信场景中提供一种在EPC(Evolved Packet Core:演进分组核心网)系统中集成多媒体调度台的方法,以缓解EPC系统和多媒体调度台设备自成一体,造成应急通信系统集成难度大,体积过大的问题。

为实现上述目的,本发明采用的技术方案为一种用于EPC系统的多媒体调度台集成方法,设置一体机,所述一体机中设置EPC模块和多媒体调度台模块、虚拟网络设备;

EPC模块启动初始化时,增加对TUN虚拟网络设备的初始化,包括注册一个虚拟网络设备,同时为该虚拟网络设备设置ip地址,并根据ue所在的网段设置回程路由;

将EPC模块中原来通过物理链路将数据包发往多媒体调度台模块的接口,修改为通过TUN虚拟网络设备实现数据的发送;

将EPC模块中原来通过物理链路接收来自多媒体调度台模块的数据包的接口,修改为通过TUN虚拟网络设备实现数据的接收;

将多媒体调度台模块中核心网通信的接口设置为TUN虚拟网络设备。

而且,所述注册一个虚拟网络设备,包括通过open(“/dev/net/tun”,O_RDWR)打开/dev/net/tun设备,然后设置网络设备的属性为(IFF_TUN|IFF_NO_PI),利用ioctl的TUNSETIFF命令创建一个点对点的虚拟网络设备。

而且,所述为虚拟网络设备设置ip地址,通过网络套接字的方式实现。

而且,所述根据ue所在的网段设置回程路由,是通过网络套接字的方式为到达ue的下行数据设置一条路径,将从多媒体调度台发出的ue数据包路由到ue。

而且,所述通过TUN虚拟网络设备实现数据的发送,是使用write()系统调用向TUN虚拟网络设备写入数据,将数据从用户空间传送到内核空间处理。

而且,所述通过TUN虚拟网络设备实现数据的接收,是使用read()系统调用从TUN虚拟网络设备中读取数据,将数据从内核空间传送到用户空间供用户程序使用。

本发明技术方案的主要改进为:

1.使用本发明方案,不需要修改多媒体调度台的实现。

2.引进点对点设备TUN作为核心网和多媒体调度台之间的交互的通道,数据不会经过双绞线到达网络,而只是在用户空间和内核空间之间进行传递。

所述技术方案相对于其他集成方案的优势在于:

相对于直接硬件集成的方案来说,本发明可以有效减少应急通信设备的体积和重量,使设备更便于携带,同时也能够减少一台硬件设备的采购。

相对于将多媒体调度台安装在虚拟机上的应急通信集成方案来说,本发明更节省系统资源,不需要单独为多媒体调度台创建一个具有完整硬件系统功能、运行于完全隔离环境中的计算机系统。

因此,本发明实现方便,节省成本,具有重要的市场价值,是保障应急通信的实用方案。

附图说明

图1是本发明的原理框图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

如图1所示,是本发明的一个实施例,提供了一种在小型核心网中集成多媒体调度台的方法。

本发明技术方案运行的平台为内核支持TUN虚拟网络设备并已成功加载TUN模块的linux操作系统。实施例中,EPC和调度台一体机130是一台安装了centos6.5系统的linux主机,并已成功加载TUN内核模块。在本发明方案中,EPC程序132和调度台程序133将同时运行于该设备之上。EPC和调度台一体机130通过网口0(131)和eNodeB进行通信,通信连接采用网线1实现。

eNodeB(120)为LTE基站,为ue(110)在一定范围内提供无线覆盖和信息传递,具体实施时,该设备可以和EPC和调度台一体机130集成在一起,也可以自成一体。本实施例中,eNodeB(120)的S1-C/S1-U共用一个通信口,ip设置为172.16.114.18;EPC和调度台一体机130的S1-C/S1-U共用一个通信口,ip设置为172.16.114.240。

ue(110)为LTE终端,通过eNodeB(120)和EPC和调度台一体机130从调度台程序133中获取服务。

安装在EPC和调度台一体机130中的EPC程序132,功能代码需要在“EPC应用程序初始化”和“接收/发送数据”两部分做出修改处理。

所述修改“EPC应用程序初始化”部分,是指在EPC程序132启动初始化时,增加对TUN虚拟网络设备的初始化,注册一个虚拟网络设备,同时为该虚拟网络设备设置ip地址,并根据ue所在的网段设置回程路由。

所述虚拟网络设备,是一种工作在IP层的点对点设备。该设备作为用户空间(用户态)和内核空间(核心态)交换数据的接口。内核空间,就是内核的运行空间,是操作系统为了保护自己不被用户程序破坏,而定义的只允许内核访问的虚拟地址空间;用户空间,就是用户程序的运行空间,用户程序如果要访问内核空间就需要经过内核访问。

在数据交互时用户不需要关心MAC地址的处理。所述对虚拟网络设备初始化,具体操作为:通过open打开/dev/net/tun设备,然后通过ioctl的TUNSETIFF命令创建一个名为tun0(134)的虚拟网络设备。

所述的设置ip地址,是指通过网络套接字的方式利用ioctl的SIOCSIFADDR命令和SIOCSIFNETMASK来为tun0(134)设置ip地址。

所述的设置回程路由,是因为ue和多媒体调度台不在同一个网段,因此需要通过网络套接字的方式利用ioctl的SIOCADDRT命令来为到达ue的下行数据设置一条路径,将从多媒体调度台发出的ue数据包路由到ue。

实施例具体包含如下步骤:

通过open(“/dev/net/tun”,O_RDWR)打开/dev/net/tun设备,然后设置网络设备的属性为(IFF_TUN|IFF_NO_PI),利用ioctl的TUNSETIFF命令创建一个点对点的虚拟网络设备tun0(134)。

创建一个udp socket,以socket的方式利用ioctl的SIOCSIFFLAGS、SIOCSIFADDR、SIOCSIFNETMASK命令启用tun0(134),并将其ip设置为10.10.10.1,掩码设置为255.255.255.0。

创建一个udp socket,以socket的方式利用ioctl的SIOCADDRT命令为多媒体调度台设置一条到达ue(110)网络的路由。本实施例中,ue(110)的ip地址为30.30.0.1,掩码为255.255.255.0,因此在EPC和调度台一体机130中应设置这样一条回程路由:目的网段为30.30.0.0的数据包,下一跳应交给tun0(134)处理。

所述修改“接收/发送数据”部分,是指修改EPC程序132与调度台133交互数据的方式,;将EPC应用程序中原来通过物理链路将数据包发往多媒体调度台的接口/收取来自多媒体调度台的数据包的接口,修改为通过TUN虚拟网络设备来实现数据的发送/接收。将EPC应用程序中原来通过物理链路将数据包发往多媒体调度台的接口,修改为通过tun0(134)来实现数据的发送;将EPC应用程序中原来通过物理链路收取来自多媒体调度台的数据包的接口,修改为通过tun0(134)实现数据的接收。所述的通过tun0(134)实现数据的发送,指的是使用write()系统调用向tun0(134)写入数据,将数据从用户空间传送到内核空间处理。所述通过tun0(134)实现数据的接收,指的是使用read()系统调用从tun0(134)中读取数据,将数据从内核空间传送到用户空间供用户程序使用。实施例具体实现包括:

将原EPC程序132中和调度台程序133交互的发送数据部分,修改为通过write系统命令将数据写入tun0(134)发送。该数据来自ue(110),经由eNodeB(120)后通过网口0(131)传递给EPC程序,由EPC去掉GTPU头后形成。

将原EPC程序132中和调度台程序133交互的接收数据部分,修改为通过read系统命令从tun0(134)中接收来自调度台程序133的数据,由EPC程序132将数据进行GTPU封装后经由eNodeB(120)发给ue(110)。

以上均是要对核心网应用程序做出修改,因此在这些修改完成之后,需要重新编译后安装到linux主机。

最后,将多媒体调度台应用程序133安装在EPC和调度台一体机130上。所述多媒体调度台应用程序,不需要对程序做修改,但是需要设置自启动脚本,将调度台程序133的启动顺序置于EPC程序132启动之后,使得调度台程序133的通信接口能够正确绑定在tun0(134)上,和EPC应用程序132通过socket通信。

具体实施时,本领域技术人员可采用软件方式实现以上技术方案,即可实现基于EPC和调度台一体机的自动通信。与现有直接硬件集成技术相比,本发明能够有效减少集成设备的体积和重量,减少硬件设备的采购;与现有虚拟机集成方案相比,本发明更节省系统资源。

EPC程序132和调度台程序133可采用模块化方式提供,分别记为EPC模块和多媒体调度台模块,可在一体机中设置EPC模块和调度台模块,实施例的实现如下:

EPC模块启动初始化时,增加对TUN虚拟网络设备的初始化,包括注册一个虚拟网络设备,同时为该虚拟网络设备设置ip地址,并根据ue所在的网段设置回程路由;

将EPC模块中原来通过物理链路将数据包发往多媒体调度台模块的接口,修改为通过TUN虚拟网络设备实现数据的发送;

将EPC模块中原来通过物理链路接收来自多媒体调度台模块的数据包的接口,修改为通过TUN虚拟网络设备实现数据的接收;

将多媒体调度台模块中核心网通信的接口设置为TUN虚拟网络设备。

具体实现与软件实现方式一致,本发明不予赘述。

相关符号含义见下表1:

表1命令和字符释义

以上所述仅为本发明的实施例之一,并不用于限制本发明,凡在本发明的神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1