ADC

电信订户管理

电信网络中的用户数量正以前所未有的速度增长,管理这些用户已成为服务提供商面临的挑战。更新、更快、更智能的设备对网络和订户管理系统提出了很高的要求。向每个订户提供相同标准的服务已不再可行,迫切需要在每个订户的基础上进行流量处理。

NetScaler 设备根据存储在策略和计费规则功能 (PCRF) 中的信息为订阅者提供情报。当移动订阅者连接到 Internet 时,数据包网关将 IP 地址与订阅者关联并将数据包转发到设备。设备动态接收订户信息,或者您可以配置静态订阅者。这些信息使设备能够在每个订阅者基础上应用其丰富的流量管理功能,例如内容交换、集成缓存、重写和响应程序,来管理流量。

在配置 NetScaler 设备以管理订阅者之前,必须为存储订阅者会话的模块分配内存。对于动态订阅者,必须配置一个接口,设备通过该接口接收会话信息。必须为静态订阅者分配 ID,并且您可以将它们与策略相关联。

您也可以执行以下操作:

  • 订户策略的执行和管理。
  • 将设备配置为仅使用 IPv6 前缀而不是完整的 IPv6 地址来唯一识别订阅者。
  • 使用策略优化动态和静态订阅者的 TCP 流量。这些策略将不同的 TCP 配置文件与不同类型的用户相关联。
  • 管理 NetScaler 设备上的空闲会话。
  • 启用登录到日志服务器。
  • 删除已删除的订阅者会话的 LSN 会话。

为订阅者会话存储模块分配内存

每个订阅者会话条目消耗 1 KB 的内存。在任何时间点存储 500,000 个订阅者会话需要 500 MB 的内存。必须将此值添加到最低内存要求中,该要求显示为“show extendedmemoryparam”命令输出的一部分。在以下示例中,输出是具有 3 个数据包引擎和 8 GB 内存的 NetScaler VPX 实例。

要在此设备上存储 500,000 个订阅者会话,配置的内存必须为 2058+500 MB(500,000 x 1 KB = 500 MB。)

注意

配置的内存必须为 2 MB 的倍数,并且不得超过最大内存使用限制。必须重新启动设备才能使更改生效。

示例

show extendedmemoryparam
       Extended Memory Global Configuration. This memory is utilized by LSN and Subscriber Session Store Modules:
        Active Memory Usage: 0 MBytes
        Configured Memory Limit: 0 MBytes
        Minimum Memory Required: 2058 MBytes
        Maximum Memory Usage Limit: 2606 MBytes
    Done
    set extendedmemoryparam -memLimit 2558
    Done
    show extendedmemoryparam
            Extended Memory Global Configuration. This memory is utilized by LSN and Subscriber Session Store Modules:

            Active Memory Usage: 2558 MBytes
            Configured Memory Limit: 2558 MBytes
            Minimum Memory Required: 2058 MBytes
            Maximum Memory Usage Limit: 2606 MBytes
    Done
<!--NeedCopy-->

为动态订阅者配置接口

NetScaler 设备通过以下任何类型的接口动态接收订阅者信息:

注意

  • 从 NetScaler 版本 12.0 版本 57.19 开始,群集部署支持 Gx 接口。有关详细信息,请参阅 群集拓扑中的 Gx 接口

  • 在 HA 设置中,订阅者会话在辅助节点上持续同步。如果发生故障转移,则订阅者信息在辅助节点上仍然可用。

Gx 接口

Gx 接口(如 3GPP 29.212 中所述)是基于 Diameter 协议的标准接口,允许在电信网络中的 PCRF 与策略和收费执法功能 (PCEF) 实体之间交换策略控制和收费规则。

建立 IP-CAN 会话时,数据包网关会将订阅者 ID(例如 MSISDN)和有关订阅者的框架 IP 地址信息作为 Diameter 消息转发给 PCRF。当数据包从分组网关 (PGW) 到达设备时,设备使用订阅者 IP 地址查询 PCRF 以获取订阅者信息。这也称为辅助 PCEF 功能。

设备通过 Gx 接口接收的策略和计费控制 (PCC) 规则在订阅者会话期间存储在设备上,也就是说,直到 PCRF 发送带有 Session-Release-Cause AVP 的重新授权请求 (RAR) 消息或者订阅者会话从 CLI 或配置实用程序终止为止。如果现有订阅者有任何更新,PCRF 会在 RAR 消息中发送更新。订阅者会话在订阅者登录网络时启动,在订阅者注销时终止。

注意:如果 PCRF 服务器关闭,NetScaler 设备会为待处理或传入的 Gx 订阅者请求创建负面会话。当 PCRF 服务器再次备份时,NetScaler 设备会等待负面会话过期,然后再执行特定的订阅者请求,从而防止请求风暴。

下图显示了高级流量。它假设数据层面的流量是 HTTP。设备通过 Gx 接口向 PCRF 服务器发送信用控制请求 (CCR),并在信用控制答案 (CCA) 中接收 PCC 规则以及适用于特定订阅者的其他信息,例如无线接入技术 (RAT) 类型。PCC 规则包括一个或多个策略(规则)名称和其他参数。设备使用此信息来检索存储在设备上的预定义规则,并引导流量。在订阅者会话期间,它还将这些信息存储在订阅者策略和执法管理系统中。订阅者会话终止后,设备会丢弃有关订阅者的所有信息。

本地化后的图片

以下示例显示了配置 Gx 接口的命令。这些命令以粗体显示。

要设置 Gx 接口,请执行以下任务

为每个 Gx 接口添加 DIAMETER 服务。例如:

add service pcrf-svc1 203.0.113.1 DIAMETER 3868

add service pcrf-svc2 203.0.113.2 DIAMETER 3868
<!--NeedCopy-->

添加不可寻址的 DIAMETER 负载平衡虚拟服务器,并将步骤 1 中创建的服务绑定到该虚拟服务器。对于多个服务,请指定 persistenceType 和 persistaVPNO,以便特定会话由同一 PCRF 服务器处理。例如:

add lb vserver vdiam DIAMETER 0.0.0.0 0 -persistenceType DIAMETER -persistAVPno 263

bind lb vserver vdiam pcrf-svc1

bind lb vserver vdiam pcrf-svc2
<!--NeedCopy-->

配置 NetScaler 直径身份和领域。在 Gx 客户端发送的 diameter 消息中,Identity 和 realm 被用作 Origin-Host 和 Origin-Realm 的 AVP。例如:

set ns diameter –identity netscaler.com –realm com
<!--NeedCopy-->

配置 Gx 接口以使用在步骤 2 中创建的虚拟服务器作为 PCRF 虚拟服务器。在 Gx 客户端发送的 diameters 消息中指定 PCRF 领域用作 Diametors-Realm AVP。例如:

set subscriber gxInterface -vServer vdiam -pcrfRealm pcrf.com
<!--NeedCopy-->

将订阅者接口类型设置为 GxOnly。例如:

set subscriber param -interfaceType GxOnly
<!--NeedCopy-->

要查看 Gx 接口配置和状态,请键入:

show subscriber gxinterface
<!--NeedCopy-->

示例

show subscriber gxinterface
    Gx Interface parameters:
        PCRF Vserver: vdiam (DOWN)
        Gx Client Identity...:  netscaler1.com
        Gx Client Realm ..........:  com
        PCRF Realm: epc.mnc030.mcc234.3gppnetwork.org
        Hold Packets On Subscriber Absence: YES
        CCR Request Timeout: 4 Seconds
        CCR Request Retry Attempts: 1
        Gx HealthCheck enabled: NO
        Gx HealthCheck TTL : 30 Seconds
        CER Request Timeout: 10 Seconds
        RevalidationTimeout: 30 Seconds
        NegativeTTL: 60 Seconds
        NegativeTTL Limited Success: NO
        Purge SDB on Gx Failure: YES
        ServicePath AVP code: 262099    ServicePath AVP VendorID: 3845
        PCRF Connection State: PCRF is not ready
    Done

<!--NeedCopy-->

ARGUMENTS

vServer

建立 Gx 连接的负载平衡或内容交换虚拟服务器的名称。虚拟服务器的服务类型必须是 DIAMETER 或 SSL_DIAMETER。此参数与服务参数互斥。因此,您无法在 Gx 界面中同时设置服务和虚拟服务器。

服务

与建立 Gx 连接的 PCRF 对应的 DIAMETER 或 SSL_DIAMETER 服务的名称。此参数与虚拟服务器参数互斥。因此,您无法在 Gx 接口中同时设置服务和虚拟服务器。

pcrfRealm

消息要路由到的 PCRF 域。这是 NetScaler Gx 客户端(作为 Diameter 节点)在 Destination-Realm AVP 中使用的领域。

holdOnSubscriberAbsence

设置为“是”,在从 PCRF 服务器获取订阅者会话信息之前保存数据包。如果设置为“否”,则在从 PCRF 服务器获取订阅者会话信息之前,将应用默认订阅者配置文件。如果未配置默认订阅者配置文件,则会为使用订阅者属性的表达式引发 UNDEF。

requestTimeout

Gx CCR 请求必须在此时间内完成,以秒为单位。如果请求未在这段时间内完成,则将按照 requestRetryTepts 参数中指定的次数重新传输请求。如果即使在重新传输后请求仍未完成,则默认订阅者配置文件将应用于该订阅者。如果未配置默认订阅者配置文件,则会为使用订阅者属性的表达式引发 UNDEF。零禁用超时。默认值:10

requestRetryAttempts

指定如果请求未在 requestTimeout 参数中指定的值内完成,则必须重新传输请求的次数。默认值:3。

healthCheck

设置为“是”以启用 Gx 对等体的内联运行状况检查。启用后,NetScaler 会向 PCRF 服务器发送 DWR 数据包。当 Gx 会话处于空闲状态时,HealthCheck 计时器将过期,并启动 DWR 数据包以检查 PCRF 服务器是否处于活动状态。默认值:否。 注意: NetScaler 12.1 版本 51.xx 及更高版本支持此参数。

healthCheckTTL

为监视程序监督定义的时间(以秒为单位)。运行状况检查 TTL 时间到期后,系统会发送 DWR 来检查 PCRF 服务器的状态。任何 CCR、CCA、RAR 或 RAA 消息都会重置计时器。 最小值:6 秒。默认值:30 秒。 注意: NetScaler 12.1 版本 51.xx 及更高版本支持此参数。

cerRequestTimeout

为重新传输功能交换请求定义的时间(以秒为单位)。如果 NetScaler 在这段配置的时间内没有收到来自 PCRF 的 CEA,它会启动新的 CER 消息。 如果未收到来自 PCRF 服务器的响应,则设备会尝试发送 CER 消息 5 次。如果即使在 5 条 CER 消息之后仍没有响应,则设备将关闭 TCP 连接并报告故障。如果将超时值设置为 0,则禁用应用程序运行状况检查功能。 最小值:0 秒。默认值:0 秒。 注意: NetScaler 12.1 版本 51.xx 及更高版本支持此参数。

revalidationTimeout

时间,以秒为单位,在此之后在会话中进行任何 PCRF 活动后发送 Gx CCR-U 请求。任何 RAR 或 CCA 消息都会重置计时器。零值禁用空闲超时。

negativeTTL

时间,以秒为单位,在此时间之后,对于因服务器停机、没有响应或收到失败响应而未被 PCRF 解析的会话,重新发送 Gx CCR-I 请求。负的 TTL 不是持续轮询 PCRF 服务器,而是让设备保持未解析的会话。对于负面会话,如果配置了默认订户配置文件,则设备继承了默认订户配置文件的属性;如果收到了 RADIUS 记账消息,则继承该属性。零值禁用负会话。即使无法获取订阅者会话,设备也不会安装负面会话。默认值:600

negativeTTLLimitedSuccess

设置为“是”,为部分成功响应代码创建否定会话 (2002)。如果设置为“否”,则创建常规会话。默认值:否。

NetScaler 12.1 版本 49.xx 及更高版本支持此参数。

purgeSDBonGxFailure

设置为“是”以在 Gx 接口出现故障时刷新订阅者数据库。Gx 接口故障包括 DWR 监视(如果已启用)和网络运行状况检查(如果已启用)。如果设置为“是”,则清除所有订阅者会话。 默认值:否。 注意: NetScaler 12.1 版本 51.xx 及更高版本支持此参数。

servicePathAVP

PCRF 发送适用于订阅者的服务路径的 AVP 代码。

servicePathVendorid

AVP 的供应商 ID,PCRF 在其中发送适用于订阅者的服务路径。

使用 GUI 配置 Gx 接口

  1. 导航到“流量管理”>“订阅者”>“参数”
  2. 单击“配置订阅者参数”。
  3. 在接口类型中,选择 GxOnly。
  4. 指定所有必需参数的值。
  5. 单击确定

通过已建立 Gx 连接检测传输故障

注意: NetScaler 12.1 版本 51.xx 及更高版本支持此功能。

可以将 NetScaler 设备配置为通过使用设备监视程序请求 (DWR) 和设备监视程序应答 (DWA) 消息检测已建立的 Gx 连接上的传输故障。

建立 Gx 会话后,将触发预定义计时器以检测会话是否处于空闲状态。在空闲时间计时器到期后发送 DWR 消息。每当 NetScaler 设备通过已建立的 Gx 会话收到消息时,都会重置空闲时间计时器。发送 DWR 消息后,基于 DWA 消息确认对等方的可用性。

  • 如果收到 DWA,则确认对等方的可用性并重置监视程序计时器。
  • 如果未收到 DWA 且监视程序计时器连续两次过期,则会话被视为已关闭且对等不可用。设备关闭会话并尝试与 Gx 对等方建立新会话。

当监视程序计时器在没有响应的情况下两次过期时,NetScaler 设备会将 Gx 连接视为错误并启动连接关闭。连接关闭后,不会向 Gx 对等方发送其他监视器请求。NetScaler 设备使用下一个可用的 Gx 会话来处理任何 PCRF 请求。

使用 CLI 检测已建立 Gx 连接上的传输故障

在命令提示符下,键入:

set subscriber gxInterface [-vServer <string>] [-service <string>] [-healthCheck ( YES | NO )] [-healthCheckTTL<positive_integer>][-cerRequestTimeout <positive_integer>] [-purgeSDBonGxFailure ( YES | NO )]
<!--NeedCopy-->

示例:

set subscriber gxInterface set subscriber gxInterface -vServer vdiam -healthCheck YES -healthCheckTTL 31 -cerRequestTimeout 15 purgeSDBonGxFailure  YES
<!--NeedCopy-->

使用 GUI 检测已建立的 Gx 连接上的传输故障

  1. 导航到“流量管理”>“订阅者”>“参数”
  2. 单击“配置订阅者参数”。
  3. 接口类型中,选择 GxOnly
  4. 为所有必需参数指定值。
  5. 选择 运行状况检查 ,为运行 状况检查 TTLCER 请求超时指定值。
  6. 单击确定

群集拓扑中的 Gx 接口

NetScaler 设备支持群集拓扑中的 Gx 接口。

本地化后的图片

群集中的 NetScaler 节点通过 Gx 接口与外部 PCRF 服务器通信。当节点收到客户端流量时,设备会执行以下操作:

  • 向 PCRF 服务器发送 CCR-I 请求以获取订阅者信息。
  • PCRF 服务器使用 CCR-A 进行响应。
  • 然后,NetScaler 节点将收到的订阅者信息存储在其订阅者存储中,并将规则应用于客户端流量。

每个节点维护一个独立的订阅者存储,订阅者会话不同步到其他节点。

根据 Diameter 基本协议 RFC 6733,必须为每个对等体配置唯一的直径身份,才能通过 diameter 协议与其他对等体进行通信。因此,在群集部署中,可以发现直径身份的配置。可以使用 GUI 或 CLI 单独配置每个节点的直径参数(身份、领域、服务器关闭传播)。

将节点添加到群集时,它会采用默认直径参数 (identity=netscaler.com, realm=com, serverClosePropogation=NO)。添加节点后,必须配置每个节点的直径参数。

使用 GUI 配置直径参数

  1. 导航到“系统”>“设置”
  2. 在详细信息窗格中,单击“更改Diameter 参数”。
  3. 在Diameter 参数页面中,选择要为其配置直径参数的 NetScaler 节点,然后单击“配置”。
  4. 在配置Diameter 参数页面中,为选定节点配置直径身份、直径范围和服务器关闭传播。
  5. 单击确定

使用 CLI 配置直径参数

在命令提示符下,键入:

set ns diameter [-identity <string>] [-ownerNode <positive_integer>]
<!--NeedCopy-->
ARGUMENTS
身份

Diameter 标识用于唯一标识Diameter 节点。在设置直径配置之前,必须为 NetScaler 设备(作为 Diameter 节点)分配一个唯一的直径标识。

例如,set ns diameter -identity netscaler.com -ownerNode 1。因此,每当 NetScaler 系统需要在直径 消息中使用身份时,它都会使用“netscaler.com”作为 RFC3588 中定义的 Origin-Host AVP。

最大长度:255

OwnerNode

OwnerNode 表示为其设置直径 ID 的群集节点的 ID。只能通过 CLIP 配置 OwnerNode。

最小值:0

最大值:31

示例:

set ns diameter -identity netscaler1.com -ownerNode 1

注意:

ownerNode 选项还添加到 show ns diameter 命令中。

示例:

show diameter -ownerNode <0-31>
<!--NeedCopy-->

执行 show ns diameter 命令时,它会显示给定节点的直径参数。

为群集部署配置 Gx 接口

要设置 Gx 接口,请执行以下任务:

为每个 Gx 接口添加 DIAMETER 服务。

示例:

add service pcrf-svc1 203.0.113.1 DIAMETER 3868
add service pcrf-svc2 203.0.113.2 DIAMETER 3868
<!--NeedCopy-->

添加 DIAMETER 负载平衡虚拟服务器并将步骤 1 中创建的服务绑定到该虚拟服务器。

示例:

add lb vserver vdiam DIAMETER 0.0.0.0 0 -persistenceType DIAMETER -persistAVPno 263

bind lb vserver vdiam pcrf-svc1

bind lb vserver vdiam pcrf-svc2
<!--NeedCopy-->

在所有群集节点上配置 NetScaler 直径身份和领域。在 Gx 客户端发送的 diameter 消息中,Identity 和 realm 被用作 Origin-Host 和 Origin-Realm 的 AVP。

示例:

set ns diameter -identity node0.netscaler.com -realm netscaler.com -ownerNode 0

set ns diameter -identity node1.netscaler.com -realm netscaler.com -ownerNode 1
<!--NeedCopy-->

将 Gx 接口配置为使用在步骤 2 中创建的虚拟服务器作为 PCRF 虚拟服务器,并设置 PCRF 领域。

示例:

set subscriber gxInterface -vServer vdiam -pcrfRealm pcrf.com

Set the subscriber interface type to GxOnly.
<!--NeedCopy-->

示例:

set subscriber param -interfaceType GxOnly
<!--NeedCopy-->

要查看 Gx 接口配置和状态,请键入:

show subscriber gxinterface
<!--NeedCopy-->

RADIUS接口

使用 RADIUS 接口,建立 IP-CAN 会话时,数据包网关通过 RADIUS 接口将 RADIUS 会计开始消息中的订阅者信息转发到设备。RadiusListener 类型的服务处理 RADIUS 会计消息。为 RADIUS 客户端添加共享密钥。如果未配置共享密钥,则 RADIUS 消息将被静默删除。以下示例显示了配置 RADIUS 接口的命令。这些命令以粗体显示。

要设置 RADIUS 接口,请执行以下任务:

在接收 RADIUS 消息的 SNIP 地址创建 RADIUS 侦听器服务。例如:

add service srad1 192.0.0.206 RADIUSLISTENER 1813
<!--NeedCopy-->

配置订阅者 RADIUS 接口以使用此服务。例如:

set subscriber radiusInterface -listeningService srad1
<!--NeedCopy-->

将订阅者接口类型设置为 RadiusOnly。例如:

set subscriber param -interfaceType RadiusOnly
<!--NeedCopy-->

添加 RADIUS 客户端,指定子网和共享密钥。例如:

add radius client 192.0.2.0/24 -radkey client123
<!--NeedCopy-->

子网为 0.0.0.0/0 表示它是所有客户端的默认共享密钥。要查看 RADIUS 接口配置和状态,请键入:

show subscriber radiusInterface
<!--NeedCopy-->

RADIUS 接口参数:

Radius 侦听器服务:srad1(UP)

完成

示例:

add service pcrf-svc1 203.0.113.1 DIAMETER 3868

add service pcrf-svc2 203.0.113.2 DIAMETER 3868
<!--NeedCopy-->

ARGUMENTS

ListeningService

处理 RADIUS 记账请求的 RADIUS 监听服务的名称。

svrState

RADIUS 监听服务的状态。

下图显示了高级流量。

本地化后的图片

使用 GUI 配置 radiusOnly 接口

  1. 导航到“流量管理”>“订阅者”>“参数”
  2. 单击“配置订阅者参数”。
  3. 在接口类型中,选择 RadiusOnly
  4. 指定所有必需参数的值。
  5. 单击确定

RADIUS 和 Gx 接口

使用 RADIUS 和 Gx 接口,建立 IP-CAN 会话时,数据包网关会通过 RADIUS 接口将订阅者 ID(例如 MSISDN)和有关订阅者的框架 IP 地址信息转发给设备。设备使用此订阅者 ID 在 Gx 接口上查询 PCRF 以获取订阅者信息。这被称为主要 PCEF 功能。以下示例显示了配置 RADIUS 和 Gx 接口的命令。

set subscriber param -interfaceType RadiusandGx
add service pcrf-svc 203.0.113.1 DIAMETER 3868
add lb vserver vdiam DIAMETER 0.0.0.0 0 -persistenceType DIAMETER -persistAVPno 263
bind lb vserver vdiam pcrf-svc
set subscriber gxInterface -vServer vdiam -pcrfRealm testrealm1.net -holdOnSubscriberAbsence YES -revalidationTimeout 60 -negativeTTL 120
add service srad1 192.0.0.206 RADIUSLISTENER 1813    set subscriber radiusInterface -listeningService srad1
<!--NeedCopy-->

下图显示了高级流量。

本地化后的图片

使用 GUI 配置 radiusandGX 接口

  1. 导航到“流量管理”>“订阅者”>“参数”
  2. 单击“配置订阅者参数”。
  3. 在接口类型中,选择 RadiusAndGx
  4. 指定所有必需参数的值。
  5. 单击确定

配置静态订阅者

您可以使用命令行或配置实用程序在 NetScaler 设备上手动配置订阅者。您可以通过分配唯一的订阅者 ID 并选择将策略与每个订阅者关联来创建静态订阅者。以下示例显示了用于配置静态订阅者的命令。

在以下示例中,s ubscriptionIdValu e 指定了国际电话号码,而 s ubscriptionIdTyp e(本示例中为 E164)指定了国际电话号码的通用格式。

    add subscriber profile 203.0.113.6 -subscriberRules policy1 policy2 -subscriptionIdType E164 -subscriptionIdvalue 98767543211
    add subscriber profile 2002::a66:e8d3/64 -subscriberRules policy1 policy3 -subscriptionIdtype E164 -subscriptionIdvalue 98767543212
    add subscriber profile 203.0.24.2 10 -subscriberRules policy2 policy3 -subscriptionIdtype E164 -subscriptionIdvalue 98767543213
<!--NeedCopy-->

要查看已配置的订户配置文件,请键入:

show subscriber profile

    > show subscriber profile

    1)  Subscriber IP: 203.0.24.2 VLAN:10
        Profile Attributes:
                Active Rules: policy2, policy3
                Subscriber Id Type: E164
                Subscriber Id Value: 98767543213
    2)  Subscriber IP: 2002::/64
        Profile Attributes:
                Active Rules: policy1, policy3
                Subscriber Id Type: E164
                Subscriber Id Value: 98767543212
    3)  Subscriber IP: 203.0.113.6
        Profile Attributes:
                Active Rules: policy1, policy2
                Subscriber Id Type: E164
                Subscriber Id Value: 98767543211

     Done
<!--NeedCopy-->

默认订阅者个人资料

如果在设备的订阅者会话存储中找不到订户 IP 地址,则使用默认的订户配置文件。在以下示例中,添加了带有订阅者规则策略1 的默认订阅者配置文件。

    > add subscriber profile * -subscriberRules policy1
<!--NeedCopy-->

查看和清除订阅者会话

使用以下命令显示所有静态和动态订阅者会话。

show subscriber sessions

    > show subscriber sessions
    1)  Subscriber IP: 2002::/64
        Session Attributes:
                Active Rules: policy1, policy3
                Subscriber Id Type: E164
                Subscriber Id Value: 98767543212
    2)  Subscriber IP: *
        Session Attributes:
                Active Rules: policy1
    3)  Subscriber IP: 203.0.24.2 VLAN:10
        Session Attributes:
                Active Rules: policy2, policy3
                Subscriber Id Type: E164
                Subscriber Id Value: 98767543213
    4)  Subscriber IP: 203.0.113.6
        Session Attributes:
                Active Rules: policy1, policy2
                Subscriber Id Type: E164
                Subscriber Id Value: 98767543211
    5)  Subscriber IP: 192.168.0.11
        Session Attributes:
                Idle TTL remaining: 361 Seconds
                Active Rules: policy1
                Subscriber Id Type: E164
                Subscriber Id Value: 1234567811
                Service Path: policy1
                AVP(44): 34 44 32 42 42 38 41 43  2D 30 30 30 30 30 30 31 31
                AVP(257): 00 01 C0 A8 0A 02
                PCRF-Host: host.pcrf.com
                AVP(280): 74 65 73 74 2E 63 6F 6D

    Done
<!--NeedCopy-->

使用以下命令清除单个会话或整个会话存储。如果您未指定 IP 地址,则会清除完整的订阅会话存储。

clear subscriber sessions <ip>
<!--NeedCopy-->

订户策略执行和管理系统

NetScaler 设备使用订阅者的 IP 地址作为订阅者策略实施和管理系统的密钥。

您可以添加订阅者表达式来读取订户策略执行和管理系统中可用的订阅者信息。这些表达式可以与为 NetScaler 功能(例如集成缓存、重写、响应程序和内容切换)配置的策略规则和操作一起使用。

以下命令是添加基于订阅者的响应者操作和策略的示例。如果订阅者规则值为“pol1”,则策略的评估结果为 true。

    add responder action error_msg respondwith '"HTTP/1.1 403 OKrnrn" + " You are  not authorized to access Internet"'
    add responder policy no_internet_access "SUBSCRIBER.RULE_ACTIVE("pol1")" error_msg
<!--NeedCopy-->

以下示例显示了添加基于订阅者的重写操作和策略的命令。该操作在订阅者会话中使用 AVP (45) 的值插入 HTTP 标头“x-nokia-msisDN”。

    > add rewrite action AddHDR-act insert_http_header X-Nokia-MSISDN "SUBSCRIBER.AVP(45).VALUE"
    > add rewrite policy AddHDR-pol "HTTP.REQ.HOSTNAME.APPEND(HTTP.REQ.URL).EQUALS_ANY("patset-test")" AddHDR-act
<!--NeedCopy-->

在以下示例中,在设备上配置了两个策略。当设备检查订阅者信息且订阅者规则为 cache_enable 时,它会执行缓存。如果订阅者规则为 cache_disable,则设备不执行缓存。

    > add cache policy nocachepol -rule "SUBSCRIBER.RULE_ACTIVE("cache_disable")" - action NOCACHE
    > add cache policy cachepol -rule "SUBSCRIBER.RULE_ACTIVE("cache_enable")" - action CACHE -storeInGroup cg1
<!--NeedCopy-->

有关以“订阅者”开头的表达式的完整列表。请参阅策略配置指南。

重要信息

:当订阅者接口设置为 GxOnly 时,NetScaler 软件版本 12.1 支持 IPANDVLAN 密钥查找方法。有关详细信息,请参阅 IP 地址和 VLAN ID 密钥查找方法

基于 IPv6 前缀的订阅者会话

电信用户由 IPv6 前缀而不是完整的 IPv6 地址标识。NetScaler 设备现在使用前缀而不是完整的 IPv6 地址 (/128) 来识别数据库(订阅者存储)中的订阅者。为了与 PCRF 服务器通信(例如,在 CCR-I 消息中),设备现在使用带框架 IPv6 前缀 AVP 而不是完整的 IPv6 地址。默认前缀长度为 /64,但您可以将设备配置为使用不同的值。

使用命令行配置 IPv6 前缀

set subscriber param [-ipv6PrefixLookupList <positive_integer> ...]

下面的第一个示例命令设置了单个前缀,第二个示例命令设置了多个前缀。

    set subscriber param -ipv6PrefixLookupList 64
    set subscriber param -ipv6PrefixLookupList 64 72 96
<!--NeedCopy-->

使用配置实用程序配置 IPv6 前缀

  1. 导航到“流量管理”>“订阅者”>“参数”
  2. 在详细信息窗格的“设置”下,单击“配置订户参数”,然后在 IPv6 前缀查询列表中指定一个或多个前缀。

IP 地址和 VLAN ID 密钥查找方法

NetScaler 设备使用订阅者的 IP 地址作为订阅者策略实施和管理系统的关键查找方法。如果 IP 地址重叠,则此方法无效。在这种情况下,您可以使用 VLAN ID 作为额外的订户查询类型。仅当用户接口设置为 GxOnly 时,才支持 IPANDVLAN 密钥查找方法。将 IPANDVLAN 配置为查找方法时,NetScaler 设备会执行以下操作:

  • 在 IPv4 订阅者的 Gx 查询中包括原始 VLAN ID。
  • 所有 Gx 响应中都包含 Gx VLAN AVP。但是,如果 VLAN ID 不匹配,设备会忽略响应。

例如,如果设备发送带有 gxSessionid-a: IPv4-b: vlan-c 的 CCR-I,并且响应包含 gxSessionid-a: IPv4-b: vlan-D,则会删除响应并创建默认订阅者条目。

注意

  • 接口类型 radiusandGX 和 RadiusOnly 无法与密钥类型 IPANDVLAN 一起配置。
  • 如果流量来自 IPv6 地址,则 NetScaler 设备使用 IP 查找方法。

使用 CLI 将 IP 或 IPANDVLAN 配置为密钥查找方法

在命令提示符下,键入:

set subscriber param [-keytype ( IP | IPANDVLAN )] [-interfaceType <interfaceType>]
<!--NeedCopy-->

示例:

set subscriber param -keytype IPANDVLAN -interfaceType GxOnly

set subscriber param -keytype IP -interfaceType GxOnly
<!--NeedCopy-->

注意

将密钥类型参数从 IP 更改为 IPANDVLAN,反之会清除所有订阅者数据。

VLAN 参数

还为以下命令添加了 VLAN 参数。

add subscriber profile <ip>@ [-vlan]

set subscriber profile <ip>@ [-vlan] [-subscriptionIdType  <subscriptionIdType>]

show subscriber profile [<ip>@] [-vlan]

rm subscriber profile <ip>@ [-vlan <positive_integer>]
<!--NeedCopy-->

参数

ip

代表订阅者 IP 地址。这是一个必填参数,添加订阅者配置文件后无法更改。

vlan

代表订阅者所在的 VLAN 号码。添加订户配置文件后,VLAN 号无法更改。

最小值:1

最大值:4096


add subscriber profile 192.0.2.23 10

set subscriber profile 192.0.2.23 10 -subscriptionIdtype E164

show subscriber profile 192.0.2.23 10

rm subscriber profile 192.0.2.23 10

<!--NeedCopy-->

使用 GUI 将 IP 或 IPANDVLAN 配置为密钥查找方法

  1. 导航到“流量管理”>“订阅者”>“参数”。
  2. 单击“配置订阅者参数”。
  3. 密钥类型中,根据您的 要求选择 IPIPANDVLAN
  4. 完成配置,然后单击“确定”

电信网络中订户会话的空闲会话管理

NetScaler 设备上的订阅者会话清理基于控制平面事件,例如 RADIUS 会计停止消息、Diameter RAR(会话释放)消息或“clear subscriber session”命令。在某些部署中,来自 RADIUS 客户端或 PCRF 服务器的消息可能无法到达设备。此外,在交通繁忙期间,消息可能会丢失。长时间处于空闲状态的订阅者会话继续消耗 NetScaler 设备上的内存和 IP 资源。空闲会话管理功能提供可配置的计时器来识别空闲会话,并根据指定的操作清理这些会话。

如果在数据平面或控制平面上未收到来自该订阅者的流量,则会话被视为空闲。您可以指定更新、终止(通知 PCRF 然后删除会话)或删除(不通知 PCRF)操作。只有在会话处于空闲状态达到 idle timeout 参数中指定的时间后,才会执行该操作。

使用命令行配置空闲会话超时和相关操作

set subscriber param [-idleTTL <positive_integer>] [-idleAction <idleAction>]
<!--NeedCopy-->

示例:

set subscriber param -idleTTL 3600 -idleAction ccrTerminate

set subscriber param -idleTTL 3600 -idleAction ccrUpdate

set subscriber param -idleTTL 3600 -idleAction delete
<!--NeedCopy-->

要禁用空闲会话超时,请将空闲超时设置为零。

设置订阅者参数 —idletTL 0

使用配置实用程序配置空闲会话超时和相关操作

  1. 导航到“流量管理”>“订阅者”>“参数”
  2. 在详细信息窗格的“设置”下,单击“配置订阅者参数”,然后指定“空 闲时间空闲操作”。

订阅者会话事件日志

如果启用订阅者日志,则可以跟踪特定于订阅者的 RADIUS 和 Gx 控制平面消息,并使用历史数据分析订阅者活动。一些关键属性是 MSISDN 和时间戳。还会记录以下属性:

  • 会话事件(安装、更新、删除、错误)
  • Gx 消息类型(CCR-I、CCR-U、CCR-T、RAR)
  • Radius 消息类型(开始、停止)
  • 订阅者 IP
  • 订阅 ID 类型(MSISDN (E164)、IMSI)
  • 订阅号 ID 值

通过使用这些日志,您可以通过 IP 地址和 MSISDN(如果有)跟踪用户。

您可以启用登录到本地或远程 syslog 或 nslog 服务器的订阅者会话。以下示例显示如何启用订阅者登录到远程 syslog 服务器。

    > add syslogAction sysact1 192.0.2.0 -loglevel EMERGENCY ALERT CRITICAL ERROR WARNING NOTICE INFORMATIONAL -subscriberlog enabled
<!--NeedCopy-->

从这些日志中,您可以了解与用户相关的任何活动,例如更新、删除或创建(安装)会话的时间。此外,还会记录错误消息。

示例:

  1. 以下日志条目是 RadiusandGX 会话创建、会话更新和会话删除的示例。

    09/30/2015:16:29:18 GMT Informational 0-PPE-0 : default SUBSCRIBER SESSION_EVENT 147 0 : Session Install, GX MsgType: CCR-I, RADIUS MsgType: Start, IP: 100.10.1.1, ID: E164 - 30000000001

    09/30/2015:16:30:18 GMT Informational 0-PPE-0 : default SUBSCRIBER SESSION_EVENT 148 0 : Session Update, GX MsgType: CCR-U, IP: 100.10.1.1, ID: E164 - 30000000001

    09/30/2015:17:27:56 GMT Informational 0-PPE-0 : default SUBSCRIBER SESSION_EVENT 185 0 : Session Delete, GX MsgType: CCR-T, RADIUS MsgType: Stop, IP: 100.10.1.1, ID: E164 - 30000000001

  2. 以下日志条目是故障消息的示例,例如在 PCRF 服务器上找不到订阅者以及设备无法连接到 PCRF 服务器时。

    09/30/2015:16:44:15 GMT Error 0-PPE-0 : default SUBSCRIBER SESSION_FAILURE 169 0 : Failure Reason: PCRF failure response, GX MsgType: CCR-I, IP: 100.10.1.1

    Sep 30 13:03:01 09/30/2015:16:49:08 GMT 0-PPE-0 : default SUBSCRIBER SESSION_FAILURE 176 0 : Failure Reason: Unable to connect to PCRF, GX MsgType: CCR-I, RADIUS MsgType: Start, IP: 100.10.1.1, ID: E164 - 30000000001#000#000#000#000#000#000#000#000#000#000#000#000#000#000#000#000

订阅者感知的 LSN 会话终止

在早期版本中,如果在收到 RADIUS Accounting STOP 或 PCRF-RAR 消息时删除了订阅者会话,或者由于任何其他事件(例如 TTL 到期或刷新)而删除订阅者会话,则只有在配置的 LSN 超时时间段之后才会删除订阅者的对应 LSN 会话。在此超时到期之前保持打开状态的 LSN 会话会继续消耗设备上的资源。

从版本 11.1 开始,添加了一个新参数 (subscrSessionRemoval)。如果启用此参数,并且订阅者信息已从订阅者数据库中删除,则与该订阅者对应的 LSN 会话也将被删除。如果禁用此参数,则订阅者会话将按照 LSN 超时设置的规定超时。

使用 CLI 配置订阅者感知的 LSN 会话终止

在命令提示符下,键入:

set lsn parameter -subscrSessionRemoval ( ENABLED DISABLED )
    > set lsn parameter -subscrSessionRemoval ENABLED
    Done
    > sh lsn parameter
                LSN Global Configuration:

                Active Memory Usage: 0 MBytes
                Configured Memory Limit: 0 MBytes
                Maximum Memory Usage Limit: 912 MBytes
                Session synchronization: ENABLED
                Subscriber aware session removal: ENABLED
<!--NeedCopy-->

使用 GUI 配置订阅者感知的 LSN 会话终止

  1. 导航到 系统 > 大规模 NAT
  2. 在“入门”中,单击“设置 LSN 参数”。
  3. 设置“订阅者感知会话删除”参数

故障排除

如果您的部署未按预期运行,请使用以下命令进行故障排除:

  • show subsiver gxinterface 此命令的输出可能包含以下错误消息(此处显示了建议的响应):
    • Gx 接口未配置-使用 set 订阅者 param 命令配置正确的接口类型。
    • PCRF 未配置-在 gxInterface 上配置 Diameter 虚拟服务器或服务。使用 set 订阅者 gx interface 命令为该接口分配 Diameter 虚拟服务器或服务。
    • PCRF 未准备就绪 — 请查看相应的虚拟服务器/服务了解更多详细信息——使用 show LB vserver 或 show service 命令检查服务状态。
    • NetScaler 正在等待 PCRF 与 NetScaler 之间的 PCRF 能力协商的 CEA 可能失败。这可能是间歇状态。如果问题仍然存在,请检查 PCRF 服务器上的 DIAMETER 设置。
    • 内存未配置为存储订阅者会话。请使用 ‘set extendedmemoryparam-memlimit <>’-使用 set extendedmemoryparam 命令配置扩展内存。
  • show serviser radiusinterface 如果此命令的输出为“未配置”,请使用 set 订阅者 radiusinterface 命令指定 radiusListener 服务。

如果启用了订阅者日志,则可以从日志文件中获取更多详细信息。