Citrix ADC

用户感知服务链

随着通过电信网络的数据流量大幅增加,服务提供商已不再可能通过所有增值服务 (VAS) 引导所有流量。服务提供商应该能够优化 VAS 的使用,并智能地引导流量,以改善用户体验。例如,不包含视频的流量不需要视频优化。此外,如果订阅者连接到 4G 网络,则可以通过高清 (HD) 流式传输内容,并且可能不需要视频优化。但是,视频优化改善了 3G 网络中用户的体验。同样,缓存提供了更快、更好的用户体验,并且可以根据订阅者计划启用。VAS 的另一个例子是家长控制。如果父母向未成年子女提供移动手机,他们希望对其子女访问的网站进行某种控制。

为了做到上述和更多,服务供应商必须能够按每个用户提供增值服务。换句话说,服务提供商网络中的实体必须能够提取订阅者信息,并根据这些信息智能地指导数据包。

服务链确定了来自订阅者的流量必须通过的服务集,然后才能进入 Internet。Citrix ADC 不会将所有流量发送到所有服务,而是根据为订阅者定义的策略智能地将来自订阅者的所有请求路由到特定服务集。

下图显示了参与服务链接的实体。显示的值在图后面的过程中进行配置。Citrix ADC 设备上的内容交换虚拟服务器将请求引导到增值服务或跳过这些服务,具体取决于定义的规则,然后在执行 LSN 后将数据包发送到 Internet。

本地化后的图片

使用 CLI 为上述部署配置服务链

添加设备的子网 IP (SNIP) 地址。

示例:

add ns ip 192.168.10.1 255.255.255.0 -type snip

add ns ip 192.168.20.1 255.255.255.0 -type snip

add ns ip 192.168.30.1 255.255.255.0 -type snip

add ns ip 192.168.40.1 255.255.255.0 -type snip

add ns ip 192.168.50.1 255.255.255.0 -type snip

add ns ip 192.168.60.1 255.255.255.0 -type snip

add ns ip 100.1.1.1 255.0.0.0 -type snip

add ns ip 200.201.1.1 255.0.0.0 -type snip

添加 VLAN。VLAN 可帮助设备识别流量的源。将 VLAN 绑定到接口和子网 IP 地址。为每个 VAS 添加一个入口和一个导出 VLAN。

示例:

add vlan 10

add vlan 20

add vlan 30

add vlan 40

add vlan 50

add vlan 60

add vlan 100

add vlan 200

bind vlan 10 -ifnum 1/4 -tagged -IPAddress 192.168.10.1 255.255.255.0

bind vlan 20 -ifnum 1/4 -tagged -IPAddress 192.168.20.1 255.255.255.0

bind vlan 20 -ifnum 1/4 -tagged -IPAddress 192.168.30.1 255.255.255.0

bind vlan 20 -ifnum 1/4 -tagged -IPAddress 192.168.40.1 255.255.255.0

bind vlan 20 -ifnum 1/4 -tagged -IPAddress 192.168.50.1 255.255.255.0

bind vlan 20 -ifnum 1/4 -tagged -IPAddress 192.168.60.1 255.255.255.0

bind vlan 100 -ifnum 1/2 -tagged -IPAddress 100.1.1.1 255.0.0.0

bind vlan 200 -ifnum 1/3 -tagged -IPAddress 200.201.1.1 255.0.0.0

指定订阅者流量到达设备上的 VLAN。指定服务路径 AVP,用于告诉设备在订阅者会话中查找服务路径名称的位置。对于主 PCEF 功能,请将 interfaceType 指定为 RadiusAndGx。

示例:

set ns param -servicePathIngressVLAN 100

set subscriber gxinterface -servicepathAVP 1001 1005 -servicepathVendorid 10415

set subscriber param -interfaceType RadiusAndGx

配置 Diameter 类型的服务和虚拟服务器,并将服务绑定到虚拟服务器。然后,指定 PCRF 领域和订阅者 Gx 接口参数。对于主 PCEF 功能,请配置 RADIUS 侦听器服务和 RADIUS 接口。

示例:

add service sd1 10.102.232.200 DIAMETER 3868

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

bind lb vserver vdiam sd1

set ns diameter -identity netscaler.sc1.net -realm pcrf1.net

set subscriber gxInterface -vServer vdiam -pcrfRealm pcrf1.net -holdOnSubscriberAbsence YES -idleTTL 1200 -negativeTTL 120

add service srad1 10.102.232.236 RADIUSListener 1813

set subscriber radiusInterface -listeningService srad1

添加服务函数以将 VAS 与入口 VLAN 关联。添加服务路径来定义链,即指定数据包必须发送到的 VAS 以及数据包必须转到该 VAS 的顺序。服务路径名称通常由 PCRF 发送。但是,如果以下任何情况为真,则默认订阅者配置文件 (*) 的服务路径应用:

  • PCRF 没有订阅者信息。
  • 订阅者信息不包括此 AVP。
  • 设备无法查询 PCRF。例如,代表 PCRF 的服务是向下。

必须将包含此名称的服务路径 AVP 配置为早期全局配置的一部分。将服务函数绑定到服务路径。服务索引指定 VAS 添加到链中的顺序。最高数字 (255) 表示链的开始。

示例:

add ns servicefunction SF1 -ingressVLAN 20

add ns servicefunction SF2 -ingressVLAN 40

add ns servicefunction SF3 -ingressVLAN 60

add ns servicepath pol1

bind ns servicepath pol1 -servicefunction SF1 -index 255

bind ns servicepath pol1 -servicefunction SF2 -index 254

bind ns servicepath pol1 -servicefunction SF3 -index 253

add ns servicepath pol2

bind ns servicepath pol2 -servicefunction SF2 -index 255

add ns servicepath pol3

bind ns servicepath pol3 -servicefunction SF1 -index 255

add subscriber profile * -subscriberrules default_path

添加 LSN 配置。也就是说,定义 NAT 池并标识设备必须为其执行 LSN 的客户端。

示例:

add lsn pool pool1

bind lsn pool pool1 200.201.1.1

add lsn client client1

bind lsn client client1 -network 100.0.0.0 -netmask 255.0.0.0

add lsn group group1 -clientname client1

bind lsn group group1 -poolname pool1

默认情况下,设备执行 LSN。若要覆盖 LSN,必须创建启用 OverridelsN 参数的网络配置文件,并将此配置文件绑定到为增值服务 (VASS) 配置的所有负载平衡虚拟服务器。

示例:

add netprofile np1

set netprofile np1 -overrideLsn ENABLED

set lb vserver vs1 -netprofile np1

在设备上配置 VAS。这包括创建服务和虚拟服务器,然后将服务绑定到虚拟服务器。

示例:

add service vas1 192.168.10.2 ANY 80 -usip YES

add service vas2 192.168.30.2 ANY 80 -usip YES

add service vas3 192.168.50.2 ANY 80 -usip YES

add service sint 200.10.1.10 ANY 80 -usip YES

add lb vserver vs1 ANY -m MAC -l2Conn ON

add lb vserver vs2 ANY -m MAC -l2Conn ON

add lb vserver vs3 ANY -m MAC -l2Conn ON

add lb vserver vint ANY -m MAC -l2Conn ON

bind lb vserver vs1 vas1

bind lb vserver vs2 vas2

bind lb vserver vs3 vas3

bind lb vserver vint sint

添加内容切换 (CS) 配置。这包括虚拟服务器、策略及其相关操作。流量到达 CS 虚拟服务器,然后重定向到适当的负载平衡虚拟服务器。定义将虚拟服务器与服务函数关联的表达式。

示例:

add cs vserver cs1 ANY * 80 -l2Conn ON

add cs action csact1 -targetLBVserver vs1

add cs action csact2 -targetLBVserver vs2

add cs action csact3 -targetLBVserver vs3

add cs action csactint -targetLBVserver vint

add cs policy cspol1 -rule "SUBSCRIBER.SERVICEPATH.IS_NEXT("SF1") && SYS.VSERVER("vs1").STATE.EQ(UP)" -action csact1

add cs policy cspol2 -rule "SUBSCRIBER.SERVICEPATH.IS_NEXT("SF2") && SYS.VSERVER("vs2").STATE.EQ(UP)" -action csact2

add cs policy cspol3 -rule "SUBSCRIBER.SERVICEPATH.IS_NEXT("SF3") && SYS.VSERVER("vs3").STATE.EQ(UP)" -action csact3

bind cs vserver cs1 -policyName cspol1 -priority 110

bind cs vserver cs1 -policyName cspol2 -priority 120

bind cs vserver cs1 -policyName cspol3 -priority 130

bind cs vserver cs1 -lbvserver vint

使用 GUI 在设备上配置服务链

  1. 导航到 系统 > 网络 > IP 并添加子网 IP 地址。
  2. 导航到系统 > 网络 > VLAN并添加 VLAN,将 VLAN 绑定到接口和子网 IP 地址。
  3. 导航到 流量管理 > 服务链 > 配置服务路径入口 VLAN 并指定入口 VLAN。
  4. 导航到 流量管理 > 订阅者 > 参数 > 配置订阅者参数 并指定以下内容:
    • 接口类型:指定 RadiusAndGx
    • 配置 Diameter 虚拟服务器、PCRF 领域和订阅者 GX 接口参数。
    • 指定 RADIUS 接口参数。
  5. 导航到流量管理 > 服务链 > 服务功能,并添加服务功能以将增值服务与入口 VLAN 关联。
  6. 导航到 系统 > 网络 > 大规模 NAT 。单击 并添加池。单击 客户 端并添加客户端。单击并添加组并指定客户端。编辑组并将池绑定到此组。
  7. 导航到 系统 > 网络 > 网络配置文 件并添加网络配置文件。选择 覆盖 LSN。或者,导航到系统 > 网络 > 设置 > 配置第 3 层参数,并验证是否未选择覆盖 LSN
  8. 导航到 流量管理 > 负载平衡 > 虚拟服务器 ,并在设备上配置虚拟服务器和增值服务。将服务和网络配置文件绑定到虚拟服务器。
  9. 导航到 流量管理 > 内容交换 > 虚拟服务器 并配置虚拟服务器、策略和操作。指定目标负载平衡虚拟服务器。

用户感知服务链