Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

用于订阅者调配和计费的 JSRC

瞻博网络会话和资源控制 (SRC) 和 JSRC 概述

瞻博网络会话和资源控制 (SRC) 环境提供了用于管理订阅者及其服务的中央管理点。SRC 软件在瞻博网络 C 系列控制器上运行。SRC 软件使用 Diameter 协议在瞻博网络路由平台上的本地 SRC 对等方和 C 系列控制器上的远程 SRC 对等方之间进行通信。本地 SRC 对等方称为 JSRC,是 AAA 应用程序的一部分。远程 SRC 对等方是服务激活引擎 (SAE);SAE 充当 SRC 环境中的控制代理。JSRC 和 SAE 联合提供远程控制实施功能 (RCEF)。

JSRC 负责以下工作:

  • 请求 SAE 的地址授权。

  • 向 SAE 请求服务激活。

  • 按照 SAE 指定的激活和停用服务。JSRC 可以使用相同的服务(动态配置文件)名称激活多个策略。

  • 或者,报告服务核算的流量统计信息。

  • 根据 SAE 指定的退出订阅者。

  • 将 SAE 更新为新服务激活和停用的状态。

  • 与 SAE 同步订阅者状态和服务信息。

  • 订阅者退出时通知 SAE。

SRC 软件使 SAE 能够激活和停用订阅者服务(由 SRC 策略所述)并退出订阅者。SAE 只能控制通过 SAE 调配的资源。因此,SAE 仅接收有关 JSRC 从 SAE 请求调配的订阅者的信息。例如,当订阅者登录,但配置不要求会话激活路径包括 SAE 调配时,SAE 不会接收有关此订阅者的信息,并且无法控制订阅者会话。

同样,SAE 只能控制已激活的订阅者服务。当服务不是从 SAE 激活(例如 RADIUS 激活的服务)激活时,SAE 不会收到有关该服务的信息,并且无法控制该服务。

SAE 还可以指示 JSRC 收集每个服务会话的计费统计信息。

注意:

多个基于 Diameter 的应用程序(功能)可以在一个路由器上同时运行。

使用 JSRC 的优势

  • 允许使用 MX 系列路由器充当瞻博网络会话和资源控制 (SRC) 环境中的本地对等方,以集中管理订阅者及其服务。

用于订阅者访问的 JSRC 硬件要求

瞻博网络 MX 系列 5G 通用路由平台支持 JSRC。JSRC 当前支持静态和动态接口上的订阅者会话。

了解 JSRC-SAE 交互

本主题介绍 JSRC(本地 SRC 对等方)和 SAE(远程 SRC 对等方)之间为订阅者访问执行以下任务而相互交换的 Diameter 消息序列:

  • 订阅者登录

  • 服务激活

  • 服务停用

  • 重新同步

  • SAE 发起的订阅者退出

  • 统计数据收集和报告

  • 订阅者发起的退出

订阅者登录

JSRC 授权适用于不同订阅者类型:

  • 当您同时在访问配置文件中配置这authentication-orderauthorization-order jsrc种配置时,授权顺序仅适用于受配置文件影响的 DHCP 订阅者,而身份验证顺序仅适用于非 DHCP 订阅者。

  • 如果仅在 authorization-order jsrc 访问配置文件中配置,则授权顺序将应用于受此配置文件影响的所有订阅者。

当订阅者尝试登录时,协议守护程序会向 AAA 发送身份验证请求。而 JSRC 则向 SAE 发送 Diameter AA-Request 消息。SAE 会返回 Diameter AA-Answer 消息,其中可包括帧 IP 地址属性和瞻博网络-DHCP-Option AVP(AVP 代码 2010)。JSRC 会忽略此 AA-答案消息中包含的任何其他可选 AVP。

当您在层次结构级别包含 provisioning-order 语句 [edit access profile profile-name] 时,可为 DHCP(和 SSC) 订阅者启用 JSRC 调配。当应用程序请求 AAA 激活订阅者的会话时,JSRC 会发送一条 AA-Request 消息,其中包含瞻博网络请求类型 AVP(AVP 代码 2050),值表示从 SAE 请求服务配置。

SAE 在接受请求时会返回一条 AA-Answer 消息,其中包含一个 ACK,如果请求被拒绝,则返回 NAK。如果接受请求,AA-Answer 消息将包含 Juniper-Policy-Install AVP(AVP 代码 2020),用于指定连接到订阅者接口的服务。当包含此 AVP 时,SAE 会将结果代码 AVP 设置为 1001 (DIAMETER_MULTI_ROUND_AUTH)。此代码意味着 JSRC 必须向 SAE 发送另一条 AA-Request 消息,以报告 AAA 的策略实例化(服务激活)的成功或失败。JSRC 会忽略此 AA-答案消息中包含的任何其他可选 AVP。SAE 会返回一条 AA-Answer 消息,用于确认第二条 AA 请求消息。

订阅者服务激活和停用

SAE 策略调配订阅者服务。订阅者登录后,SAE 可以向 JSRC 发送 PPR 消息,以激活或停用服务。给定的 PPR 可以包括用于激活服务的 Juniper-Policy-Install AVP(AVP 代码 2020),以及用于停用服务所需的瞻博网络 Policy-Remove AVP(AVP 代码 2027),或者两者同时停用(针对不同服务)。一个 PPR 可以包含不超过三个 AFP(安装、移除或混合)。

JSRC 在完成 PPR 中请求的任务后,向 SAE 发送 PPA 消息。PPA 表示 PPR 中请求的操作的成功或失败。

注意:

如果您使用 RADIUS 或 CLI 停用 SAE 服务,SAE 将与路由引擎上的订阅者状态不同步。

订阅者重新同步

在重新同步期间,JSRC 通知 SAE 对已配置订阅者处于活动状态的服务。JSRC 或 SAE 会启动重新同步。

  • 由于资源限制或主 SAE 上的条件,SAE 在启动时或备份 SAE 接管会话控制时,SAE 会开始重新同步。SAE 清除其所有条目的数据库,为同步做好准备。

  • JSRC 在 JSRC 启动时启动重新同步,例如当 AAA 启动或重新启动时。

    JSRC 还可以在另一种情况下启动重新同步。当多 SAE 环境中的 SAE 处于活动状态时,它必须将 SRQ 发送到 JSRC 作为其第一条消息。然后,JSRC 锁定活动 SAE 的源主机 AVP。如果 JSRC 收到来自任何其他 SAE 的消息(如源主机 AVP 指示),则随后会触发重新同步。如果活动 SAE 与备用 SAE 之间的通信中断,可能会发生此类事件。

两个实体都通过发送 SRQ 消息来启动重新同步。接收方会通过 SRR 消息进行响应。发送 SRR 后,无论 SAE 还是 JSRC 启动同步,JSRC 都会为会话数据库中的每个已配置订阅者向 SAE 发送 AA-Request 消息。AA-Request 消息包括活动服务的瞻博网络策略安装 AVP。SAE 会返回一封带有 ACK 的 AA-Answer 消息,用于确认收到。

由 SAE 终止的订阅者会话

当 SAE 终止订阅者会话时,它会向 JSRC 发送 ASR 消息。JSRC 会使 AAA 向 DHCP(或 SSC) 客户端应用程序发送退出请求。当 DHCP 客户端应用程序接受退出请求时,JSRC 在发送至 SAE 的 ASR 消息中包含 ACK,以表示成功。如果 DHCP 客户端应用程序不接受请求,则 JSRC 在 ASR 中包括一个 NAK,以表示失败。DHCP 客户端应用程序负责使用 AAA 启动实际的退出顺序。

按服务规则收集和报告统计数据

统计信息可以从路由器发送到 SAE,或从 SAE 发送到路由器。Diameter 计费请求 (ACR) 和计费 -答案 (ACA) 消息都包括 Juniper-Acct-Record AVP(AVP 代码 2053),用于标识请求会计信息的策略(服务)。

订阅者退出

当 DHCP(或 SSC) 客户端应用程序向 AAA 发送订阅者退出通知时,JSRC 会发送一条 STR 消息,以通知 SAE 已配置订阅者会话将终止。SAE 向 JSRC 返回 STA 消息,JSRC 通知 DHCP 退出已完成。

面向双堆栈订阅者的 JSRC 调配

从 Junos OS 18.1R1 版开始,您可以在层次结构级别包括 dualstack-support 该语句 [edit jsrc] ,以配置双堆栈订阅者的 JSRC 调配,以便使用单个 JSRC 会话报告有关给定订阅者的单独堆栈的信息。在早期版本中,DHCPv4 和 DHCPv6 堆栈被视为单个订阅者:无法通知远程 SRC 对等方 (SAE) 是否只有一个系列或两个系列处于活动状态。这些统计数据是两个家族的汇总,而不是按家族分开。在 Junos OS 18.1R1 版中,默认行为与早期版本中的行为相同。

这种双堆栈调配行为不向后兼容其他版本。第 2 页的 表 1 列出了配置双堆栈支持时和未配置(默认)时的一些行为差异。

表 1:按版本分列的 JSRC 双堆栈行为差异

配置的双堆栈支持

未配置双堆栈支持

激活第一个网络系列后,仅在初始请求中将该家族的地址发送至配置服务器。

激活第一个网络系列后,请求从调配服务器 (SAE;远程 SRC 对等方)进行调配。

激活第二个网络系列后,发送一个特殊的家族激活数据包,通知配置服务器该系列处于活动状态。

激活第二个网络家族后,不会向配置服务器报告任何报告。

当“最后一个网络系列”停用时,会发送一个特殊的系列停用数据包,以通知配置服务器该系列不再处于活动状态。

当“倒置”网络系列停用时,配置服务器不报告任何内容。

单独报告 IPv4 和 IPv6 统计信息。

将订阅者和服务统计信息报告为 IPv4 和 IPv6 统计信息的聚合。

JSRC 双堆栈调配的优势

  • 使 SAE 能够了解用户当前处于活动状态的网络家族。

  • 支持为每个地址系列收集准确的计费统计数据,而不是包含两个系列的统计信息的聚合计数,无区别。

配置双堆栈支持时的 AA 请求消息

配置后 dualstack-support ,发送至 SAE 的 Diameter AA 请求 (AAR) 调配消息包括以下内容:

  • 当前活动网络家族的 IPv4 或 IPv6 地址,以及正在激活的家族。如果 AAR 消息中不包含任一地址类型,则表示相应的网络家族未处于活动状态,且在发送请求时不会激活。

  • 对于 IPv4 寻址,当订阅者的会话数据库条目中提供以下 Diameter AVP 时:

    • 帧 IP 地址 (AVP 8)

    • 帧 IP 网络掩码 (AVP 9)

  • 对于 IPv6 寻址,当订阅者的会话数据库条目中提供以下 Diameter AVP 和瞻博网络 Diameter AVP 时:

    • 帧 IPv6 地址 (AVP 168)

    • 帧 IPv6 前缀 (AVP 97)

    • 委托 IPv6 前缀 (AVP 123)

    • Juniper-IPv6-Ndra-Prefix (AVP 2200)

    • Juniper-Framed-IPv6-Netmask (AVP 2201)

  • 当订阅者的会话数据库条目中提供以下瞻博网络 Diameter AVP 时:

    • Juniper-Agent-Circuit-Id (AVP 2202)

    • Juniper-Remote-Circuit-Id (AVP 2203)

  • Juniper-Request-Type AVP (2636:2050) 中的以下新值之一,当非活动网络系列激活或现有网络家族停用时通知 SAE:

    • 4 — NETWORK_FAMILY_ACTIVATE

    • 5 — NETWORK_FAMILY_DEACTIVATE

    通知中仅包含被激活或停用的家族的寻址。

    注意:

    不会为激活的第一个网络系列发送激活通知。不会为最后一个停用系列发送停用通知。

  • 使用 AAR 消息进行同步和恢复时,仅该订阅者的当前活动地址族的寻址。AAR 消息不包括已停用族的寻址。

配置双堆栈支持时的计费请求消息

配置后 dualstack-support ,Diameter 计费请求 (ACR) 消息始终同时包含 IPv4 和 IPv6 统计信息,即使该值为零也是如此。

报告的统计信息包括订阅者会话的生命周期,而不仅仅是网络家族会话的整个生命周期。当其中一个网络族处于非活动状态时,JSRC 会继续使用活动网络家族的当前统计信息报告该非活动族的最后统计信息。如果停用的族再次处于活动状态,则新的族统计信息将添加到现有值中。

以下瞻博网络 Diameter AVP(IANA 企业编号 2636)用于报告 IPv6 统计信息:

  • 计费-IPv6-输入八位位组属性 (2204)

  • 计费-IPv6-输出八位位组属性 (2205)

  • 计费-IPv6-Input-Pkts 属性 (2206)

  • 计费-IPv6-Output-Pkts 属性 (2207)

未配置时 dualstack-support ,不会使用这些 IPv6 AVP。在这种情况下,IPv6 统计信息会与相应 IPv4 AVP 中的 IPv4 统计信息进行聚合。

配置双堆栈支持时的网络家族激活和停用通知

以下序列描述激活网络家族时的客户端和身份验证进程(守护程序)行为:

  1. 订阅者开始登录。

  2. 路由器上的客户端应用程序(如 PPP 或 DHCP)向已验证发送身份验证和授权 (AA) 请求。

  3. 经过身份验证的进程根据配置发送 AA 请求,并将响应返回到客户端应用,然后客户端应用程序向订阅者返回响应。

  4. 客户端应用程序使用客户端动态配置文件的信息在路由器上构建和配置订阅者的接口。

  5. 客户端应用发送第一个网络家族激活请求进行验证。

  6. 经过身份验证的进程向 SAE 发送调配请求,其中包含要激活的家族的地址。由于 authd 会发送第一个家庭激活的调配请求,因此没有理由也发送家族激活通知。

  7. SAE 会为订阅者返回经过身份验证以激活的策略(服务)。

  8. 经过身份验证的过程会激活这些服务,并向客户端应用发送家族激活 ACK 响应。

  9. 客户端应用程序可能会发送针对其他网络家族的家族激活请求。

    1. 验证进程会激活该特定网络系列的任何服务,然后向客户端应用发送家族激活 ACK 响应。

    2. 然后,经过身份验证的进程向 SAE 发送家族激活通知,其中包含第二个家族的地址。AAR 消息包括值 4 (NETWORK_FAMILY_ACTIVATE) 的瞻博网络请求类型 AVP (2636:2050)。通知仅包含此家族的地址。

对于停用,仅当两个网络家族都处于活动状态时,客户端应用程序才会发送家族停用请求。经过身份验证的进程会根据需要停用网络系列(以及任何相关服务),并向 SAE 发送带有该家族地址的家族停用通知。AAR 消息包括值 5 (NETWORK_FAMILY_DEACTIVATE) 的瞻博网络请求类型 AVP (2636:2050)。通知仅包含此家族的地址。

但是,当最后一个网络家族停用时,客户端会发送终止请求,这会使经身份验证向 SAE 发送 JSRC-Acct-Stop 消息。因此,无需通过身份验证发送家族停用通知。

JSRC 配置概述

您可以将 JSRC 客户端配置为与会话和资源控制 (SRC) 配合使用,以集中管理订阅者和服务。JSRC 从远程 SRC 对等方 (SAE) 请求地址和服务授权,激活和停用 SAE 指定的服务,注销 SAE 指定的订阅者,并与 SAE 同步订阅者状态和服务信息。

要配置 JSRC:

  1. 配置 JSRC 分区。

    请参阅 配置 JSRC 分区

  2. 分配 JSRC 分区。
  3. 为订阅者配置 JSRC 授权。
  4. 为订阅者配置 JSRC 配置。
  5. (可选)配置 JSRC 以从发送至 SAE 的消息中排除 AVP。
  6. 通过 JSRC 配置服务计费。
  7. 为双堆栈订阅者配置 JSRC 支持。
  8. 将 JSRC 事件跟踪配置为常规身份验证服务跟踪操作的一部分。

配置 JSRC 分区

JSRC 在特定逻辑系统内工作:路由实例上下文,称为分区。

注意:

目前,仅支持一个分区;您必须在默认逻辑系统:路由实例上下文中对其进行配置。

配置 JSRC 分区之前,请执行以下操作:

  • 在层次结构级别配置 Diameter 实例 [edit diameter] 。请参阅 配置 Diameter

JSRC 分区的配置包括命名分区,然后将 Diameter 实例、SAE 主机名以及 SAE 域与分区关联。

要配置 JSRC 分区:

  1. 创建分区。
  2. 为 JSRC 分区指定 Diameter 实例。
    注意:

    目前,仅支持默认 Diameter 实例 master

  3. 为 JSRC 分区配置目标主机。
  4. 配置 JSRC 分区的目标域。

将分区分配给 JSRC

您必须将配置的 JSRC 分区与要配置的 JSRC 实例相关联。

将分区分配给 JSRC 之前,请执行以下操作:

要分配 JSRC 分区:

  • 指定分区名称。

使用 JSRC 授权订阅者

当 AAA 验证 DHCP 订阅者是否可以访问路由器时,您可以将 AAA 配置为在 SRC 环境中使用 JSRC,从 SAE 请求授权。配置 JSRC 授权后,AAA 会忽略所有配置的身份验证顺序设置。

配置 JSRC 授权之前,请执行以下操作:

  • 在层次结构级别创建订阅者访问配置文件 [edit access profile]

  • 使用 DHCP 本地服务器或 DHCP 中继的 username-include 身份验证配置中的语句定义订阅者用户名。

要配置 JSRC 授权:

  • 指定 jsrc 为配置文件中的授权方法。

使用 JSRC 配置订阅者

您可以将 AAA 配置为在 SRC 环境中使用 JSRC,从 SAE 请求调配,以便为经过身份验证的订阅者实例化服务。

为订阅者配置 JSRC 调配之前,请执行以下操作:

  • 在层次结构级别创建订阅者访问配置文件 [edit access profile]

要配置 JSRC 调配:

  • 指定 jsrc 为配置文件中的调配方法。

为双堆栈订阅者配置 JSRC

默认情况下,针对双堆栈订阅者的 JSRC 配置会将 DHCPv4 和 DHCPv6 堆栈视为单个订阅者。无法通知远程 SRC 对等方 (SAE) 是否只有一个家族或两个系列处于活动状态。这些统计数据是两个家族的汇总,而不是按家族分开。

从 Junos OS 18.1R1 版开始,您可以配置双堆栈支持,以便 JSRC 使用单个 JSRC 会话为给定订阅者报告有关单独堆栈的信息。

配置对 JSRC 的双堆栈支持时,Diameter AA-Request (AAR) 调配消息会包括 Diameter AVP (IANA 企业编号 2636),以传输会话数据库中提供的 IPv4 和 IPv6 寻址信息。

对于 IPv4,包括以下 AFP:

  • 帧 IP 地址 (AVP 8)

  • 帧 IP 网络掩码 (AVP 9)

对于 IPv6,其中包括以下 AFP:

  • 帧 IPv6 地址 (AVP 168)

  • 帧 IPv6 前缀 (AVP 97)

  • 委托 IPv6 前缀 (AVP 123)

  • Juniper-IPv6-Ndra-Prefix (AVP 2200)

  • Juniper-Framed-IPv6-Netmask (AVP 2201)

如果会话数据库中提供,JSRC 还会通过瞻博网络代理-Circuit-Id (AVP 2202) 和瞻博网络远程-电路-ID (AVP 2203) 提供有关接入线路的信息。

激活第一个网络系列后,JSRC 仅将初始请求中该家族的地址发送至调配服务器。激活第二个网络系列时,AAR 消息将值 4 的 Juniper-Request-Type AVP (2050) 括起来,表示家族激活。当“最后一个系列”停用时,同一 AVP 会发送一个值 5,表示已停用。

要配置 JSRC 配置以按系列报告双堆栈订阅者信息:

  • 启用双堆栈支持。

从 Diameter 消息中排除 JSRC 的 AVP

从 Junos OS 14.2 版开始,您可以将路由器配置为从从 JSRC 发送到 SAE 的 Diameter 消息中排除 AVP。

注意:

目前,仅支持用户名 (1) AVP。

要配置 JSRC 以在 Diameter 消息中排除 AVP:

  1. 指定要在访问配置文件中配置 JSRC 设置。
  2. 指定要配置 Diameter 属性用法。
  3. 配置路由器以从指定消息中排除指定的 AVP。以下示例从授权和调配 AAR 消息中排除了用户名 AVP。

使用 JSRC 实现服务计费

服务会话代表特定订阅者的服务。服务会话存在于订阅者会话的上下文中。JSRC 会激活和停用 SAE(远程 SRC 对等方)指定的服务。JSRC 可以按数量收集和报告服务会计数据。JSRC 核算要求配置经典防火墙过滤器或快速更新的防火墙过滤器来对服务数据包进行计数 — 服务数据包信息提供流量统计信息。

注意:

JSRC 仅支持服务会话的容量统计。不支持时间统计信息和订阅者计费。

JSRC 服务计费既支持基于服务激活/停用的计费,也支持中期计费。

  • 服务激活/停用计费 — 启用计费后,JSRC 会在 SAE 激活服务时向 SAE 发送计费开始消息,并在服务停用时发送计费停止消息。启动消息会启动计费会话,并提供有关服务会话的初始信息。stop 消息会终止计费会话并报告最终(累计)计费数据。

  • 临时核算 — 当为服务会话启用临时计费时,JSRC 按指定的间隔向 SAE 发送临时核算消息,以报告当时可用的累计计费信息。当相应服务会话未启用核算时,将忽略临时计费。

当服务被激活时,JSRC 就会开始计算服务,并在服务处于活动状态时继续有效。SAE 指定要使用瞻博网络策略安装 AVP(AVP 代码 2020)为订阅者激活的服务(策略)。当此 AVP 包含 Juniper-Acct-Collect AVP(AVP 代码 2054)时,JSRC 会启动该服务的服务激活/停用核算。

当瞻博网络策略安装 AVP 包括 Acct-临时-Interval AVP(AVP 代码 85)时,JSRC 会启动临时计费。在这种情况下,JSRC 按 AVP 指定的间隔(600 到 86,400 秒)更新计费值。报告双堆栈情况下的聚合计数器。

JSRC 和 SAE 交换 Diameter Accounting-Request (ACR) 和计费-答案 (ACA) 消息,以通信计费数据。这两条消息都包括 Juniper-Acct-Record AVP(AVP 代码 2053),用于识别请求核算信息的服务。

JSRC 发送 ACR 消息,向 SAE 报告计费数据。ACR 消息包括会计记录类型 AVP(AVP 代码 480),用于指定其发送的会计记录类型。激活服务时,此 AVP 的START_RECORD值。服务停用时,其值为STOP_RECORD。对于临时计费,ACR 消息按指定的计费间隔发送,AVP 的值为 INTERIM_RECORD。

除了指定核算记录类型外,ACR 消息还包含用于指定所需统计信息的标准 RADIUS 属性:Acct-Input-Octets [42]、Acct-Output-Octets [43]、Acct-Input-Packets [47]、Acct-Output-Packets [48] 和 Acct-Session-Time [46]。

SAE 会将 ACA 消息返回到 JSRC,以确认收到 ACR 消息。

访问配置文件用于指定订阅者访问身份验证和计费参数。通过 JSRC 激活服务时,会计报告可以发送到 SAE 或 RADIUS。默认配置会将报告发送至 SAE;您还可以通过在访问配置文件中包含语句 service accounting-order activation-protocol 来配置此语句要改为将报告发送到 RADIUS 服务器,请将语句 service accounting-order radius 包含在访问配置文件中。

通过 RADIUS 而非 JSRC 激活服务时,服务会话的计费报告将被发送到 RADIUS 服务器。

使用 JSRC 配置服务计费

除了此处所示的配置外,JSRC 服务计费的网络上下文还包括防火墙过滤器的配置,用于对统计信息、Diameter、JSRC、订阅者服务、RADIUS 和 SRC 进行计数。

您可以配置 JSRC 来报告服务会话的计费统计信息。

要通过 JSRC 配置服务计费:

  1. 配置 JSRC 以调配订阅者服务。
  2. 配置由调配服务的应用程序提供的服务核算 —JSRC。
版本历史记录表
释放
描述
18.1R1
从 Junos OS 18.1R1 版开始,您可以在层次结构级别包括 dualstack-support 该语句 [edit jsrc] ,以配置双堆栈订阅者的 JSRC 调配,以便使用单个 JSRC 会话报告有关给定订阅者的单独堆栈的信息。
14.2
从 Junos OS 14.2 版开始,您可以将路由器配置为从从 JSRC 发送到 SAE 的 Diameter 消息中排除 AVP。