This content has been machine translated dynamically.
Dieser Inhalt ist eine maschinelle Übersetzung, die dynamisch erstellt wurde. (Haftungsausschluss)
Cet article a été traduit automatiquement de manière dynamique. (Clause de non responsabilité)
Este artículo lo ha traducido una máquina de forma dinámica. (Aviso legal)
此内容已经过机器动态翻译。 放弃
このコンテンツは動的に機械翻訳されています。免責事項
이 콘텐츠는 동적으로 기계 번역되었습니다. 책임 부인
Este texto foi traduzido automaticamente. (Aviso legal)
Questo contenuto è stato tradotto dinamicamente con traduzione automatica.(Esclusione di responsabilità))
This article has been machine translated.
Dieser Artikel wurde maschinell übersetzt. (Haftungsausschluss)
Ce article a été traduit automatiquement. (Clause de non responsabilité)
Este artículo ha sido traducido automáticamente. (Aviso legal)
この記事は機械翻訳されています.免責事項
이 기사는 기계 번역되었습니다.책임 부인
Este artigo foi traduzido automaticamente.(Aviso legal)
这篇文章已经过机器翻译.放弃
Questo articolo è stato tradotto automaticamente.(Esclusione di responsabilità))
Translation failed!
配置 Diameter 负载平衡
Diameter 协议是下一代身份验证、授权和记账 (AAA) 信号协议,主要用于笔记本电脑和手机等移动设备。它是一种点对点协议,与大多数其他协议使用的传统客户端-服务器模式相反。但是,在大多数 Diameter 部署中,客户端发起请求,服务器响应请求。
在交换 Diameter 消息时,Diameter 服务器执行的处理量通常比 Diameter 客户端多得多。随着控制平面信令量的增加,Diameter 服务器成为瓶颈。因此,Diameter 消息必须对多台服务器进行负载平衡。对 Diameter 消息执行负载平衡的虚拟服务器具有以下好处:
- Diameter 服务器的负载较轻,这意味着对最终用户的响应时间更短。
- 服务器运行状况监视和更好的故障转移功能。
- 无需更改客户端配置,在添加服务器方面具有更好的可扩展性。
- High availability(高可用性)。
- Diameter 为 SSL 的卸载。
下图显示了 NetScaler 部署中的 Diameter 系统:
Diameter 系统包含以下组件:
- Diameter 客户端。除了基本协议外,还支持 Diameter 客户端应用程序。Diameter 客户端通常在网络边缘的设备中实现,并为该网络提供访问控制服务。Diameter 客户端的典型示例是网络访问服务器 (NAS) 和移动 IP 外部代理 (FA)。
- Diameter 代理。提供中继、代理、重定向或翻译服务。NetScaler 设备(配置了 Diameter 负载平衡虚拟服务器)扮演 Diameter 代理的角色。
- Diameter 服务器。处理特定领域的身份验证、授权和记账请求。除了基本协议外,Diameter 服务器还必须支持 Diameter 服务器应用程序。
在典型的 Diameter 拓扑中,当最终用户设备(例如手机)需要服务时,它会向 Diameter 客户端发送请求。每个 Diameter 客户端都与 Diameter 基本协议 RFC 6733 指定的 Diameter 服务器建立单一连接(TCP 连接——尚不支持 SCTP 连接)。该连接持续时间很长,两个 Diameter 节点(客户端和服务器)之间的所有消息都通过此连接进行交换。NetScaler 使用基于消息的负载平衡。
示例:
一家移动服务提供商使用Diameter作为其计费系统。当订阅者使用预付费号码时,Diameter 客户端会反复向服务器发送请求以检查可用余额。Diameter 协议在客户端和服务器之间建立连接,所有请求都通过该连接交换。基于连接的负载平衡毫无意义,因为只有一个连接。但是,由于连接上有大量消息,基于消息的负载平衡可以加快向预付费移动订户计费的过程。
Diameter 负载平衡的工作原理
Diameter 客户端打开与 NetScaler 设备的连接并发送 Diameter 功能交换请求 (CER) 消息。NetScaler 选择 Diameter 服务器,打开与服务器的连接,然后将 CER 消息转发给服务器。服务器读取客户机身份并确定其是否直接连接到客户端。
Diameter 服务器准备 Diameter 握手回复并将其发送到 NetScaler 设备。设备修改握手并插入自己的身份。此时,Diameter 客户端确定它已直接连接到 NetScaler(代理)。
注意:
在Diameter握手完成之前,来自客户端的所有 Diameter 请求消息都会在选定的服务器上排队。握手完成后,数据包将转发到服务器。
负载平衡 Diameter 流量
当客户端向 NetScaler 设备发送请求时,设备会解析该请求,并根据上下文将其负载平衡到基于持续 AVP 的 Diameter 服务器。设备已将客户端标识公告到服务器,因此它不添加路由条目,因为服务器直接从客户端收到消息。
服务器发起的请求不像客户端请求那样频繁。服务器发起的请求与客户端发起的请求类似,除了:
- 由于消息是从多台服务器接收的,因此设备通过向每条转发的请求消息添加一个唯一的 Hop by Hop (HbyH) 编号来保持事务状态。当消息响应到达(具有相同的 HbyH 编号)时,设备会将此 HbyH 编号转换为请求到达时在服务器上收到的 HbyH 编号。
- NetScaler 设备通过输入其身份来添加路由条目,因为客户端将设备视为中继代理。
注意:如果 Diameter 消息跨越多个数据包,则设备会将数据包累积在不完整的标头队列中,并在累积完整消息时将其转发到服务器。同样,如果单个数据包包含多条 Diameter 消息,则设备会拆分该数据包并将消息转发到由负载平衡虚拟服务器确定的服务器。
与会话断开连接
断开对等方请求 (DPR) 表示对等方打算关闭连接,并说明关闭连接的原因。对等方使用 DPA 进行回复(TCP 总是提供成功的 DPA)。
- 当 NetScaler 设备收到来自客户端的 DPR 时,它会将 DPR 广播到所有服务器,并立即使用 DPA 回复客户端。服务器使用 DPA 进行回复,但设备会忽略它们。客户端发送 FIN,设备将其广播到所有服务器。
- 当设备从服务器接收 DPR 时,它只会向该服务器回复 DPA,并且不会将服务器从重用池中移除。当服务器发送 FIN 时,设备会回复 FIN/ACK 并从重用池中删除连接。
- 如果设备收到来自客户端的 FIN,它会向客户端发送 FIN/ACK,广播 FIN,然后立即从重用池中删除服务器连接。
- 如果设备收到来自服务器的 FIN,它会发送 FIN/ACK 并将其从重用池中删除。此服务器的任何新消息都将在新的连接上发送。
为 Diameter 流量配置负载平衡
要配置 NetScaler 设备以对 Diameter 流量进行负载平衡,必须首先在设备上设置 Diameter 参数,然后添加 diameter 监视器,添加 Diameter 服务,将服务绑定到监视器,添加 diameter 负载平衡虚拟服务器,并将服务绑定到虚拟服务器。
使用命令行界面为 Diameter 流量配置负载平衡
配置 Diameter 参数。
set ns diameter -identity <string> -realm <string> -serverClosePropagation <YES|NO>
<!--NeedCopy-->
示例:
set ns diameter -identity mydomain.org -realm org -serverClosePropagation YES
<!--NeedCopy-->
添加Diameter 监视器。
add lb monitor <monitorName> DIAMETER -originHost <string> -originRealm <string>
<!--NeedCopy-->
示例:
add lb monitor diameter_mon DIAMETER -originHost mydomain.org -originRealm org
<!--NeedCopy-->
创建 Diameter 服务。
add service <name> <IP> DIAMETER <port>
<!--NeedCopy-->
示例:
add service diameter_svc0 10.102.82.86 DIAMETER 3868
add service diameter_svc1 10.102.82.87 DIAMETER 3868
add service diameter_svc2 10.102.82.88 DIAMETER 3868
add service diameter_svc3 10.102.82.89 DIAMETER 3868
<!--NeedCopy-->
将 Diameter 服务绑定到 Diameter 监视器。
bind service <name>@ monitorName <monitorName>
<!--NeedCopy-->
示例:
bind service diameter_svc0 -monitorName diameter_mon
bind service diameter_svc1 -monitorName diameter_mon
bind service diameter_svc2 -monitorName diameter_mon
bind service diameter_svc3 -monitorName diameter_mon
<!--NeedCopy-->
添加具有 Diameter 持久性的 Diameter 负载平衡虚拟服务器。
add lb vserver <name> DIAMETER <IPAddress> <port> -persistenceType DIAMETER -persistAVPno <positive_integer>
<!--NeedCopy-->
示例:
add lb vserver diameter_vs DIAMETER 10.102.112.152 3868 -persistenceType DIAMETER -persistAVPno 263
<!--NeedCopy-->
将 Diameter 服务绑定到 Diameter 负载平衡虚拟服务器。
bind lb vserver <name> <serviceName>
<!--NeedCopy-->
示例:
bind lb vserver diameter_vs diameter_svc0
bind lb vserver diameter_vs diameter_svc1
bind lb vserver diameter_vs diameter_svc2
bind lb vserver diameter_vs diameter_svc3
<!--NeedCopy-->
保存配置。
save ns config
<!--NeedCopy-->
注意:您还可以使用 SSL_DIAMETER服务类型配置 SSL 上的 Diameter 流量的负载平衡。
使用配置实用程序为 Diameter 流量配置负载平衡
- 导航到系统 > 设置 > 更改 Diameter 参数并设置 Diameter 参数。
- 导航到“流量管理”>“负载平衡”>“虚拟服务器”,然后创建 Diameter 类型的负载平衡虚拟服务器。
- 创建 Diameter 类型的服务。
- 创建 Diameter 类型的显示器。在特殊参数中,设置原始主机和原始域。
- 将监视器绑定到服务,并将服务绑定到 Diameter 虚拟服务器。
- 在高级设置中,单击持久性,指定 Diameter,然后输入持久性 AVP 编号。
- 单击 保存,然后单击 完成。
共享
共享
This Preview product documentation is Cloud Software Group Confidential.
You agree to hold this documentation confidential pursuant to the terms of your Cloud Software Group Beta/Tech Preview Agreement.
The development, release and timing of any features or functionality described in the Preview documentation remains at our sole discretion and are subject to change without notice or consultation.
The documentation is for informational purposes only and is not a commitment, promise or legal obligation to deliver any material, code or functionality and should not be relied upon in making Cloud Software Group product purchase decisions.
If you do not agree, select I DO NOT AGREE to exit.