内容

  • PCC规则定义
  • PCC规则运行
  • PCC规则模板

PCC规则定义

**参考文档: **3gpp ts 23.203-be0 条款6.3

策略与计费控制规则(PCC Rule),即一系列相关信息与一系列相关操作的集合,通常包含3大类信息:

  • 服务数据流检查信息
  • 策略控制信息
  • 计费相关信息

其中:服务数据流指,利用PCC规则中的业务数据流模板进行检测的分组数据;

PCC规则可以分为两类:

  • 动态PCC规则
  • 静态预定义PCC规则

动态PCC规则通过PCRF的Gx下发给PCEF执行,PCRF可以建立、修改、删除这类规则;预定义PCC规则由PCEF预配,PCRF只能引用这类规则;

PCC规则如下表所示:

注意: 同一个P-CAN会话中PCC规则ID标识符是唯一的;如果动态PCC规则与预定义PCC规则相同,则后者将被前者覆盖(替换);

PCC业务数据流模板(PCC Service Data Flow Template)可能包含任何数目的业务数据流过滤器(Service Data Flow Filter);

PCC优先顺序(PCC Precedence)定义了在PCEF中进行服务数据流检测时,同一个IP-CAN会话中已激活的PCC规则的执行先后顺序;

特别声明: 其余指标说明请参考相关文档[SR_68-2010_策略和计费控制(PCC)系统技术研究]

PCC规则运行

PCC规则运行主要指:

  • 动态PCC规则的创建、激活、修改、去激活、删除等过程
  • 预定义PCC规则的引用过程

激活

  • 激活动态PCC规则,通过Gx接口向PCEF提供PCC规则信息;
  • 激活预定义的PCC规则,通过Gx接口向PCEF提供关联的PCC规则标识符;
  • 激活PCRF不知道的预定义PCC规则,PCEF根据运营商策略进行;

激活的PCC规则

  • 使用业务数据流模板(PCC Service Data Flow Template)检查业务数据流(Service Data Flow)
  • 使用业务数据流模板将下行分组数据映射到承载绑定(Binder)的IP-CAN承载
  • 使用业务数据流模板检查承载绑定的IP-CAN上的上行分组
  • 记录业务数据流的使用数据
  • 调用与PCC规则相关的策略(如果有)

注意:

  • 预定义的PCC规则至少在一个接入点范围内是已知的
  • 多个IP-CAN会话中,能够为多个IP-CAN承载激活相同的预定义PCC规则
  • 包含有下行服务数据流过滤器的预定义的PCC规则,只能在每一个IP-CAN会话中激活一次
  • 只包含有上行服务数据流过滤器的预定义PCC规则,能够在同一个IP-CAN会话的多个IP-CAN承载建立时激活;去激活该类PCC规则时,将从每一个IP-CAN承载中删除该PCC规则
  • PCRF可以在任何时候修改一个激活的、动态PCC规则
  • PCRF可以在任何时候通过Gx接口去激活PCEF中活动的PCC规则;并在IP-CAN承载终止时,该承载上的所有活动的PCC规则,都应该不去激活,而不用PCRF显示执行

PCC规则模板

<?xml version='1.0' encoding='UTF-8' ?>

<PolicyDef xmlns='http://www.yota.ru/shemes/rules' version='1'>

    <Policy Name="online_charging">
<Default>
<AddToCCA>
<Online Value="ENABLE_ONLINE" />
<Offline Value="DISABLE_OFFLINE" />
</AddToCCA>
<AddToRAR>
<Online Value="ENABLE_ONLINE" />
<Offline Value="DISABLE_OFFLINE" />
</AddToRAR>
</Default>
</Policy> <Policy Name="failover">
<Default>
<AddToCCA_I>
<CC-Session-Failover Value="FAILOVER_SUPPORTED" />
</AddToCCA_I>
</Default>
</Policy> <!-- this is policy for users w/o any policy " -->
<Policy Name="Default">
<CiscoSCE PackageInstall="0" Real_Time_Monitor="1"/>
<Default>
<QoSes>
<QoS-Information>
<APN-Aggregate-Max-Bitrate-DL Value="2048000"/>
<APN-Aggregate-Max-Bitrate-UL Value="2048000"/>
</QoS-Information>
<Default-EPS-Bearer-QoS>
<QoS-Class-Identifier Value="QCI_6"/>
<Allocation-Retention-Priority>
<Priority-Level Value="1"/>
<Pre-emption-Capability Value="PRE_EMPTION_CAPABILITY_ENABLED"/>
<Pre-emption-Vulnerability Value="PRE_EMPTION_VULNERABILITY_DISABLED"/>
</Allocation-Retention-Priority>
</Default-EPS-Bearer-QoS>
</QoSes>
</Default>
</Policy> <Policy Name="Limited">
<CiscoSCE PackageInstall="1" Real_Time_Monitor="1"/>
<Default>
<QoSes>
<QoS-Information>
<APN-Aggregate-Max-Bitrate-DL Value="64000"/>
<APN-Aggregate-Max-Bitrate-UL Value="64000"/>
</QoS-Information>
<Default-EPS-Bearer-QoS>
<QoS-Class-Identifier Value="QCI_6"/>
<Allocation-Retention-Priority>
<Priority-Level Value="1"/>
<Pre-emption-Capability Value="PRE_EMPTION_CAPABILITY_ENABLED"/>
<Pre-emption-Vulnerability Value="PRE_EMPTION_VULNERABILITY_DISABLED"/>
</Allocation-Retention-Priority>
</Default-EPS-Bearer-QoS>
</QoSes>
</Default>
</Policy> <Policy Name="Turbo">
<CiscoSCE PackageInstall="2" Real_Time_Monitor="1"/>
<Default>
<QoSes>
<QoS-Information>
<APN-Aggregate-Max-Bitrate-UL Value="10240000"/>
<APN-Aggregate-Max-Bitrate-DL Value="10240000"/>
</QoS-Information>
<Default-EPS-Bearer-QoS>
<QoS-Class-Identifier Value="QCI_6"/>
<Allocation-Retention-Priority>
<Priority-Level Value="1"/>
<Pre-emption-Capability Value="PRE_EMPTION_CAPABILITY_ENABLED"/>
<Pre-emption-Vulnerability Value="PRE_EMPTION_VULNERABILITY_DISABLED"/>
</Allocation-Retention-Priority>
</Default-EPS-Bearer-QoS>
</QoSes>
<Rules>
<Charging-Rule-Base-Name Value="Turbo"/>
<Charging-Rule-Name Value="Turbo_1"/>
<Charging-Rule-Name Value="Turbo_2"/>
</Rules>
</Default>
</Policy> <Policy Name="VideoTurbo">
<Default>
<Rules>
<Charging-Rule-Definition>
<Charging-Rule-Name Value="video_turbo"/>
<Service-Identifier Value="5"/>
<Rating-Group Value="8"/>
<Flow-Description Value="permit in ip from any to 10.2.44.215"/>
<Flow-Description Value="permit out ip from 10.2.44.215 to any"/>
<Flow-Status Value="ENABLED"/>
<QoS-Information>
<QoS-Class-Identifier Value="QCI_7"/>
<Max-Requested-Bandwidth-UL Value="8192000"/>
<Max-Requested-Bandwidth-DL Value="8192000"/>
<Guaranteed-Bitrate-UL Value="8192000"/>
<Guaranteed-Bitrate-DL Value="8192000"/>
<Allocation-Retention-Priority>
<Priority-Level Value="1"/>
<Pre-emption-Capability Value="PRE_EMPTION_CAPABILITY_DISABLED"/>
<Pre-emption-Vulnerability Value="PRE_EMPTION_VULNERABILITY_ENABLED"/>
</Allocation-Retention-Priority>
</QoS-Information>
<Precedence Value="1"/>
</Charging-Rule-Definition>
</Rules>
</Default>
</Policy> <Policy Name="Default_IOT">
<CiscoSCE PackageInstall="3" Real_Time_Monitor="1"/>
<Default>
<QoSes>
<QoS-Information>
<APN-Aggregate-Max-Bitrate-UL Value="2048000"/>
<APN-Aggregate-Max-Bitrate-DL Value="2048000"/>
</QoS-Information>
<Default-EPS-Bearer-QoS>
<QoS-Class-Identifier Value="QCI_6"/>
<Allocation-Retention-Priority>
<Priority-Level Value="1"/>
<Pre-emption-Capability Value="PRE_EMPTION_CAPABILITY_ENABLED"/>
<Pre-emption-Vulnerability Value="PRE_EMPTION_VULNERABILITY_DISABLED"/>
</Allocation-Retention-Priority>
</Default-EPS-Bearer-QoS>
</QoSes>
<Rules>
<Charging-Rule-Definition>
<Charging-Rule-Name Value="iot"/>
<Service-Identifier Value="211"/>
<Rating-Group Value="211"/>
<Flow-Description Value="permit in ip from any to any"/>
<Flow-Description Value="permit out ip from any to any"/>
<Reporting-Level Value="SERVICE_IDENTIFIER_LEVEL"/>
<Metering-Method Value="VOLUME"/>
<Online Value="ENABLE_ONLINE"/>
<Offline Value="DISABLE_OFFLINE"/>
<Flow-Status Value="ENABLED"/>
<QoS-Information>
<QoS-Class-Identifier Value="QCI_6"/>
<Max-Requested-Bandwidth-UL Value="2048000"/>
<Max-Requested-Bandwidth-DL Value="2048000"/>
<Guaranteed-Bitrate-UL Value="2048000"/>
<Guaranteed-Bitrate-DL Value="2048000"/>
<Allocation-Retention-Priority>
<Priority-Level Value="6"/>
<Pre-emption-Capability Value="PRE_EMPTION_CAPABILITY_DISABLED"/>
<Pre-emption-Vulnerability Value="PRE_EMPTION_VULNERABILITY_DISABLED"/>
</Allocation-Retention-Priority>
</QoS-Information>
<Precedence Value="0"/>
</Charging-Rule-Definition>
</Rules>
</Default>
</Policy> <HuaweiAccums>
<!-- This is special accum used only for per location usage monitoring -->
<Accum Name="CONGESTION">
<Monitoring-Key Name="congestion" Direction="Downlink" Delta="1000000" Monitor-Level="SESSION" />
</Accum>
</HuaweiAccums> <DefaultAccums>
<!-- please don't delete this accum. It used for perfomance tests -->
<Accum Name="perf_accum_test">
<Monitoring-Key Name="test_mkey" Direction="Downlink" Delta="1000000"/>
</Accum>
<Accum Name="perf_accum_D">
<Monitoring-Key Name="test_mkey" Direction="Uplink" Delta="500000"/>
</Accum>
<Accum Name="perf_accum_M">
<Monitoring-Key Name="test_mkey2" Direction="Both" Delta="100000"/>
</Accum>
<Accum Name="general">
<Monitoring-Key Name="up_mkey" Direction="Uplink" Delta="1000000"/>
<Monitoring-Key Name="down_mkey" Direction="Downlink" Delta="1000000"/>
</Accum>
<Accum Name="general_up">
<Monitoring-Key Name="general_mkey" Direction="Uplink" Delta="1000000"/>
</Accum>
<!-- please don't delete this accum. It used in FreePCRF image -->
<Accum Name="general_down">
<Monitoring-Key Name="general_mkey" Direction="Downlink" Delta="1000000"/>
</Accum>
</DefaultAccums> <ProceraAccums>
<Accum Name="perf_accum_test">
<Monitoring-Key Name="test_mkey" Direction="Downlink" Delta="1000000"/>
</Accum>
</ProceraAccums>
</PolicyDef>

注: 规则模板的说明请参考freePCRF手册文档:《Telexir PCRF 3.5.2 Policy Library.pdf》

策略与计费控制规则(Policy and Charging Control Rule-PCC Rule)解析及模板样例的更多相关文章

  1. 策略和计费控制(PCC)系统研究

    策略和计费控制(PCC)系统研究 研究内容 [TOC "float:left"] 策略与计费控制(PCC)框架1 [架构图](achitecture.png "Archi ...

  2. 策略与计费控制(PCC)流程与信令流程

    该文为3GPP TS23.203-be0 条款6-7译文 策略与计费控制(PCC)流程[^4] IP-CAN 会话有三种显著的场景: 无网关控制会话需求,不会出现网关控制建立 需要网关控制会话支持:B ...

  3. 控制反转(Inversion of Control)之我的理解

    关于控制反转(Inversion of Control),在具体实现上也有许多其它的叫法,如依赖倒置(Dependency Inversion Principles, DIP).依赖注入(Depend ...

  4. 策略模式——MFC样例

    Context(应用场景): 1.须要使用ConcreteStrategy提供的算法. 2.内部维护一个Strategy的实例. 3. 负责动态设置执行时Strategy详细的实现算法. 4.负责跟S ...

  5. IOC 控制反转(Inversion of Control,英文缩写为IoC)

    在采用面向对象方法设计的软件系统中,它的底层实现都是由N个对象组成的,所有的对象通过彼此的合作,最终实现系统的业务逻辑. 在这样的齿轮组中,因为是协同工作,如果有一个齿轮出了问题,就可能会影响到整个齿 ...

  6. 控制反转(Inversion of Control,英文缩写为IoC),另外一个名字叫做依赖注入(Dependency Injection,简称DI)

    控制反转(Inversion of Control,英文缩写为IoC),另外一个名字叫做依赖注入(Dependency Injection,简称DI),是一个重要的面向对象编程的法则来削减计算机程序的 ...

  7. java I/O进程控制,重定向 演示样例代码

    java I/O进程控制,重定向 演示样例代码 package org.rui.io.util; import java.io.*; /** * 标准I/O重定向 */ public class Re ...

  8. Phalcon 訪问控制列表 ACL(Access Control Lists ACL)

    Phalcon在权限方面通过 Phalcon\Acl 提供了一个轻量级的 ACL(訪问控制列表). Access Control Lists (ACL) 同意系统对用户的訪问权限进行控制,比方同意訪问 ...

  9. 【Java_Spring】控制反转IOC(Inversion of Control)

    1. IOC的概念 控制反转IoC(Inversion of Control)是一种设计思想,而DI(依赖注入)是实现IoC的一种方法.在没有使用IOC的程序中,对象间的依赖关系是靠硬编码的方式实现的 ...

随机推荐

  1. 冒泡排序的JavaScript实现

    1. 普通冒泡 思想 假设有n个数,按从小到大排序: 进行n-1次外循环,每次外循环会排好当前处理的数中的最大数,即进行第一次外循环排好所有数中的最大数,进行第二次外循环排好所有数中的次大数....直 ...

  2. javascript中原型学习

    学习地址:http://www.cnblogs.com/wangfupeng1988/tag/%E5%8E%9F%E5%9E%8B/

  3. 关于在windows server 2008 上部署wampserver2.5部署的问题

    1.关闭windows自带防火墙 2.httpd.conf文件权限 apache 2.4.9 外网访问的问题参考此文: http://blog.csdn.net/lysc_forever/articl ...

  4. unidac使用演示

    unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms ...

  5. Delphi从Internet下载文件

    Delphi从Internet下载文件   今天在做拍卖系统的时候,因考虑到网络状况问题,需要将拍品所有信息下载到本机,包括拍品图片,因此需要实现从Internet下载文件的功能.      下面是代 ...

  6. Python3 的urllib实例

    在Python3中合并了 urllib 和 urllib2, 统一命名为 urllib 了,我觉得这样更加合理了.让我们可以像读取本地文件一样读取WEB上的数据.封装了一个类,供以后方便使用吧!并附带 ...

  7. 拦截导弹简单版(读入一串整数时getline(cin,s) stringstream is(s);)

    拦截导弹简单版 时间限制: 1 Sec  内存限制: 128 MB提交: 40  解决: 16[提交][状态][讨论版][命题人:外部导入] 题目描述 某国为了防御敌国的导弹袭击,发展出一种导弹拦截系 ...

  8. zufeoj 花生(The Peanuts)

    花生(The Peanuts) 时间限制: 1 Sec  内存限制: 128 MB提交: 3  解决: 2[提交][状态][讨论版] 题目描述 鲁宾逊先生和他的宠物猴,多多,非常喜欢花生.有一天,他们 ...

  9. python开发进程:共享数据&进程池

    一,共享数据 展望未来,基于消息传递的并发编程是大势所趋 即便是使用线程,推荐做法也是将程序设计为大量独立的线程集合 通过消息队列交换数据.这样极大地减少了对使用锁定和其他同步手段的需求, 还可以扩展 ...

  10. 虚拟机之 LNMP

    LNMP就是Linux nginx mysql php 一.mysql 下载安装mysql转至 LAMP (点击“LAMP”即可跳转) 也可以从快照跳转至mysql安装ok 二.php 下载同上, 1 ...