开源PCRF、PCRF体验与PCRF实现
什么是PCRF?
PCRF是LTE网络EPC子系统中策略与计费控制(PCC)子系统中的网络实体。LTE网络或EPC网络的规范文档可到参考3GPP官方网站,ETSI欧洲标准,FTP下载地址。与PCC相关的规范是:
3GPP TS 23.203; 3GPP TS 29.208-3GPP TS 29.219.如图:

简单而言,PCRF就是利用Diameter协议通过Rx接口从AF(IMS),Sp接口从SPR,Sy接口从OCS获取相关信息,利用这些信息制定一种策略与计费相关的规则。然后,通过Gx将这些规则提供给PCEF执行(其他接口,实现中未涉及,暂不提及)。
Diameter协议实现
Diameter协议栈,是实现PCRF必须的组件。开源的Diameter协议栈不少OpenIMSCore中就包含C语言版本的CDiameter协议栈和JAVA版的JDiameter协议栈。OpenIMSCore是LTE网络中IMS系统中的CSCF及HSS的实验版本,可参考相关设计及作为开发测试工具。功能描述如下图:

该开源项目的官网提供了详细的设计文档和使用手则。向开源而又提供详细文档的无私奉献者致以崇高的敬意。另外,Trillium & CCPU (Continuous Computing)公司的商用Diameter,Sip等LTE相关协议相比开源的协议,则提供了更细化的功能,更好的封装及性能。Developing Solutions官网提供的Diameter Dictionary 对于利用Diameter实现LTE网络中相关的Diameter接口,是一个方便而又精美的资源。
开源的PCRF
人们在做一件事之前,都习惯参考现有经验。牛顿谓之:站在巨人的肩上。实现软件,借用或修整现有的“车轮”不是为一种快捷的手段。受能力所限,能找到的真正开源的pcrf实现,是 UCT PCF是由南非开普敦大学的JAVA实现。该版本只是简单实现了策略控制功能。其Diameter协议使用的是OpenIMSCore中的JAVA版,其测试平台也配合OpenIMSCore系统搭建。该软件时间久远,极度难找。近期在CDSN资源库可以下载。 基于OpenIMSCore衍生了一系列商用LTE网络,如OpenEPC,Open5GCore。他们都来自同一个组织:FOKUS.
功能完善的PCRF体验版
freePCRF,官方网站.别被这个名字所欺骗。这里的free不是open source,而是该公司提供了一个可以供体验的pcrf版本。通过VM Image模式提供使用。下载如下图:

【注】貌似最近官网不能下载了 百度盘备份地址:FreePCRF FreeDRA
选择属性的镜像文件下载,启动后即可使用体验。网站提供了详尽近乎优雅的文档,如果看了问题还有疑问,可去官网的论坛中查找或咨询。鄙人将另立一文,记录freePCRF的安装与体验心得。该软件提供了商业版本。
开源PCRF、PCRF体验与PCRF实现的更多相关文章
- 阿里VS华为-开源镜像站体验及评测
最近对阿里和华为的开源镜像站做了深度体验,并将评测结果分享给大家: 一.评测产品: 华为开源镜像站(https://mirrors.huaweicloud.com/)以下简称 华为 阿里开源镜像站(h ...
- Laravel 开源电商体验与部署
体验 开源项目已经部署了体验环境,开源通过扫描下方小程序码进行体验: 我们部署了 Laravel API demo 环境,访问地址:https://demo-open-admin.ibrand.cc/ ...
- Fragment为载体可自己主动布局的CardView(GitHub上写开源项目初体验)
转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持! 开篇废话: 前些天一直在看Android5.0 的Material Desgin,里面新增 ...
- 2015 ETSI NFV用例指南
译者简介:忍忍鱼,曾经从SDNLAB获取了很多知识,现在努力为SDNLAB贡献自己的力量.爱学习,求进步!SDNLAB,么么哒! ETSI NFV ISG已经确定了9个潜在的NFV用例.本章节简单介绍 ...
- 策略和计费控制(PCC)系统研究
策略和计费控制(PCC)系统研究 研究内容 [TOC "float:left"] 策略与计费控制(PCC)框架1 [架构图](achitecture.png "Archi ...
- 微软TTS尝试系列之开篇杂谈(仅思路)
第一次写博客,不知道如何下手,思路也乱,就先聊聊怎么进的园子吧,但愿不会浪费大家太多的宝贵时间>_<. 与博客园结缘应该是大三刚开始的时候.当时学校教务处想开发一个教务安排系统,为了省钱就 ...
- ABAP,学习不一样的EXCEL导出----XLSX Workbench
这个工具是在查找ABAP导出EXCEL资料的时候发现,是国外的一位大牛自己开发的开源项目,体验了一番,确实很好用. 工具特点: No ABAP Programming Skills are requi ...
- JavaFX桌面应用-SpringBoot + JavaFX
SpringBoot对于Java程序员来说可以是一个福音,它让程序员在开发的时候,大大简化了各种spring的xml配置. 那么在JavaFX项目使用SpringBoot会是怎么样的体验呢? 这次使用 ...
- MME、PGW、SGW和PCRF的介绍
1.简介原文连接:https://blog.csdn.net/Rong_Toa/article/details/94983607 用户面和控制面板分离2.什么是HSS?HSS有什么主要功能?HSS与H ...
随机推荐
- Java How to Iterate Map
常用iterate 方法 Map<Integer, String> m = new HashMap<Integer, String>(); for(Map.Entry<I ...
- 学习动态性能表(20)--v$waitstat
学习动态性能表 第20篇--V$WAITSTAT 2007.6.15 本视图保持自实例启动所有的等待事件统计信息.常用于当你发现系统存在大量的"buffer busy waits" ...
- NuGet学习笔记(2)——vs2015搭建本地NuGet服务器
搭建本地服务器特别简单,新建一个web空项目,按照下图所示搜索安装即可,之后设置hosts 将www.mynuget.com执向本机 运行里面输入c:\windows\system32\drivers ...
- 解决windows下tomcat端口被占用[Address already in use: JVM_Bind]
有时候电脑比较卡,项目比较大的情况下,eclipse没有完全停止tomcat的情况下,下次启动会出现tomcat的端口被占用无法启动的情况,主要报如下错误 解决方案 window下打开命令窗口(快捷键 ...
- HDOJ4768(二分区间)
Flyer Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submi ...
- 最小LINUX系统下U盘的挂载及卸载
U盘挂载命令U盘插入的时候会显示启动信息,启动信息中sda: sda1指U盘的设备名为sda1dev设备目录下有一个sda1设备文件,此设备文件就是我们插入的U盘,我们将这个设备文件挂载到Linux系 ...
- Rails:rails链接多个数据库【转】
之前查到Rails应用中连接多个数据库的方式如下: class Cookie < ActiveRecord::Base establish_connection :typo ... end 这样 ...
- sql 的积累
sql的积累 By:山高似水深 原创 转载注明出处 .REVERSE() 反转 例如: Hive 可用 2016年12月3日11:31:59 2.instr(str,'.')位置 结果:得出在str中 ...
- java飞机大战之子弹的自动生成
import java.awt.Graphics; import java.util.ArrayList; import javax.swing.JFrame; import javax.swing. ...
- c++primer-p100.用迭代器进行二分法搜索
#include <vector> #include <iostream> using namespace std; int main() { vector<int> ...