Topology算法
两种可应用Topology位置:
《1》wideIP对应多个pool
*需要定义Dest为pool或者pool Region的Topology记录
*如果不定义,F5 DNS采取Pool RR
《2》pool对应多个VS
*需要定义Dest为DC,IP,IP Subnet或以上集合构成的Region的Topology记录
*如果未定义,则Topology算法Miss
Topology记录分为三列
*LDNS,Destination,Score/Weight
*LDNS,Destination作为输入
*Score/Weight作为输出
F5 DNS匹配WideIP后,在选择pool时会将pool name分别与LDNS组合成对;
*只要给出LDNS,POOL name就可以在topolgy表中找到对应的Score/Weight值;
*然后将这个值作为对Pool name的Score评分;
最后根据Score的高低,决定选择哪个pool
F5确定pool后,在选择解析哪个VS地址作为DNS Response时,会将pool内的VS分别与LDNS组合成对:
*只要给出的LDNS,VS IP就可以在topology表中找到对应的Score/Weight值;
*然后将这个值作为对VS的Score评分
最后根据Score/Weight的高低,决定选择哪个VS,Weight值高的优先
关于topology的对象:
《1》Request source:定义LDNS的ip地址满足的条件,包括continent(大陆)、country、ISP、IP Subnet、Region(地区)、State(州)
logest match:
F5 DNS上topology默认启用logest match,以加快Topology Record的匹配速度。在longest match启用下,F5 DNS会自动对Topology Record进行排序,无法手动更改Topology条目顺序。而且一旦匹配到满足条件的记录将不再向下匹配
使用以下命令查看Topology的排序情况:tmsh list /gtm topology all
排序原则:
IP Subnet>DC>POOL>Region>ISP>State>Country>Continent>LDNS Request Source negatior>Wildcard
当logest match被取消时,F5会匹配全部的所有的满足的记录,而不是只匹配到第一个满足的就不再向下匹配,如所有满足的记录有多条,则按照Weight值高得优先被选择。
负载均衡算法--RTT
实现原理:当任意一台F5 DNS收到LDNS请求时,由于RTT需要F5 DNS发起到LDNS的动态探测,所以F5 DNS先使用Falback算法中的GA算法将序号为0的地址返回给LDNS,同时从不同链路发起探测,并将探测结果写到内存中,当同样的LDNS再次发起解析请求时,F5 DNS使用RTT算法返回一个VS地址给LDNS;
负载均衡算法--QOS
使用virtual server当前各项参数指标综合计算后通过分数来做最优选择。
参数指标包括:
*Round trip time
*Hops
*Connection rate
*Packet rate
*topology
*Link capacity
*VS capacity
*Kilobytes/Second
对于简单的配置,可以使用默认的设置,需要iquery查询big-ip vs的性能。
当前位置:网站首页>GLSB涉及负载均衡算法
GLSB涉及负载均衡算法
2020-11-09 10:49:00 【Key-Network】
版权声明
本文为[Key-Network]所创,转载请带上原文链接,感谢
https://www.cnblogs.com/key-network/p/13947169.html
边栏推荐
- 作业2020.11.7-8
- 解决python调用 ffmpeg时 ‘ffmpeg‘ 不是内部或外部命令,也不是可运行的程序
- A few lines of code can easily transfer traceid across systems, so you don't have to worry about losing the log!
- How to get started with rabbitmq
- How does semaphore, a thread synchronization tool that uses an up counter, look like?
- 捕获冒泡?难道浏览器是鱼吗?
- Share API on the web
- 寻找性能更优秀的动态 Getter 和 Setter 方案
- 为什么我们不使用GraphQL? - Wundergraph
- Three ways to operate tables in Apache iceberg
猜你喜欢

From the practice, this paper discusses the problems caused by the inconsistent design of ruby syntax.

Deng Junhui's notes on data structure and algorithm learning - Chapter 9

程序人生|从网瘾少年到微软、BAT、字节offer收割机逆袭之路

Programmers should know the URI, a comprehensive understanding of the article

Several common playing methods of sub database and sub table and how to solve the problem of cross database query

解决python调用 ffmpeg时 ‘ffmpeg‘ 不是内部或外部命令,也不是可运行的程序

彩虹排序 | 荷兰旗问题

Depth first search and breadth first search

1450. 在既定时间做作业的学生人数

C / C + + Programming Notes: pointer! Understand pointer from memory, let you understand pointer completely
随机推荐
1486. Array XOR operation
1.操作系统是干什么的?
A solution to the problem that color picker (palette) cannot use shortcut keys in sublime Text3 plug-in
Linked blocking queue based on linked list
23张图,带你入门推荐系统
20201108 programming exercise exercise 3
自然语言处理(NLP)路线图 - kdnuggets
Android 解决setRequestedOrientation之后手机屏幕的旋转不触发onConfigurationChanged方法
EasyNTS上云网关设备在雪亮工程项目中的实战应用
商品管理系统——SPU检索功能
Salesforce connect & external object
C++之异常捕获和处理
Why choose f for the back end of dark website? - darklang
The vowels in the inverted string of leetcode
Do you know how the computer starts?
Apache Iceberg 中三种操作表的方式
Bifrost 之 文件队列(一)
Deng Junhui's notes on data structure and algorithm learning - Chapter 9
How does FC game console work?
Elasticsearch原理解析与性能调优