采用JMeter Traffic testing tool 测试LTM基于Application ID的Diameter分发
2020-06-26 00:49:16
邹善
在F5 Support网站中,有一个应用案例Migrating MBLB
Functionality to MRF Functionality:
https://techdocs.f5.com/kb/en-us/products/big-ip_ltm/manuals/product/bigip-mblb-to-mrf-migration-12-0-0/2.html
这个案例对于理解LTM的Diameter能力非常有帮助。为了理解这个案例,最近采用Traffic-testing-tool-dev-123模拟工具实现了此用例,供大家参考。
一、测试拓扑:
两个不同的diameter client,F5上一个VS,对应两个diameter pool:pool1和pool2,Application ID为10000的分发到poo1上,applicaiont ID为20000的分发到pool2上。Pool1有两个成员,pool2上有一个成员。同一个application id的diameter消息,根据session ID实现会话保持。
二、测试版本
F5 LTM: BIG-IP 15.1.0.3 Build 0.0.12 Point Release
3
traffix-testing-tool-dev-123
client1: 10.1.10.120
client2: 10.1.10.199
vip: 10.1.10.100:3868
snat ip: 10.1.20.188
diameter_pool_1: 10.1.20.252:3868
10.1.20.252:3802
Diameter_pool_2: 10.1.20.252:3803
三、测试配置
1)
在F5上创建配置:
a) 创建diameter_pool_1和diameter_pool_2,为了减少包的干扰,diameter pool中没有关联health monitor:
b) 创建diameter session profile,根据session-id 做会话保持:
c) 创建Transport config profile,应用diameter-session-proifle和tcp profile(diameter采用TCP协议
d) 创建diameter peer:
e) 创建diameter route:
f) 创建diameter-router profile:
g) 创建diameter VS:
2)
配置diameter server:
a)
在LAMP server中,通过Traffic-testing-tool-dev启用3个diameter server:
分别为:10.1.20.252:3868/10.1.20.252:3802/10.1.20.252:3803
10.1.20.252:3868设置CCA消息中的application-id为10000
10.1.20.252:3802设置CCA消息中的application-id为10000
10.1.20.252:3803设置CCA消息中的application-id为20000
b)
在client1上通过Traffic-testing-tool-dev启用diameter client1:
设置目的VIP和自己IP地址
设置CCR的applicatioid为10000
c)
在client2上通过Traffic-testing-tool-dev启用diameter client2:
设置目的VIP和自己IP地址
设置CCR 的applicationid为20000
四、测试
a)
启用三个diameter server:
b)
启用client1:
c)
启用client2:
d)
检查JMeter server和client的CCR/CCA收发情况:
Server:
每个server CCR/CCA消息都有增长
e) 两个client的CCR/CCA也有增长:
f) 停止diameter server和diameter client,在F5上运行tcpdump抓包,启用diameter
server,启用client1和client2,运行一段时间,然后停用client1和client2,再停用diameter
server,查看抓包的情况:
A.
CER/CEA消息数量:总共有5对CRE/CEA,和我们有2个client,3个server,消息数量一致。
B 查看applicationid=10000的数量包是否只发给了diameter
server1和diameter server2,可以看到applicationid
为10000的CCR都发给了server1和server2。
C.
查看applicationid=20000的消息包,是否都发给了server3?可以看出applicationid=20000的数据包都发给了server3。
D.
检查同一个session-id的数据包,是否都发给了同一个server,如下图,都发给了同一台server
五、测试结果
从测试结果看,F5 LTM可以实现基于Diameter消息的消息负载均衡,可以根据applicaitonid分发到不同的diameter server,同时可以做到基于session-id的会话保持。
发布评论 加入社群
相关文章
5G从云原生开始
梁勇
2020-12-09 09:23:21 550
回复评论
发布评论