iptables的CLUSTER target以太网交换机和想法
每到周末,我会抽出一周整夜的事情的总结,无论是工作。人生,或者在上班或在锯的方式方法,并听取了抑制书评,因为无雨,周六晚上,我决定好好睡一觉,再折腾周五晚。
在给同事解释交换机和HUB的原理的时候,想到了某些时候,HUB才是更加高效的选择,你看。iptables的朴实的CLUSTER target和F5的高大上负载均衡设备之间差别不就是一台HUB和一台学习型以太网交换机之间的差别吗?我们先来看看CLUSTER target。
非常easy,例如以下图所看到的:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZG9nMjUw/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="" />
将是否处理包的决策权交给了每一台server本身,而不是集中的负载均衡设备。这是典型的BMA方式,相应到以太网上就是总线方式或者HUB方式,以太数据帧会到达每一台主机,至于是否处理该数据帧,取决于目标MAC是不是本地的,或者它是不是特殊的比方多播帧。广播帧之类的。总线,HUB时代的以太网实际上和CLUSTER target的思想是一致的。
中心设备简单。单包转发高效,决策平摊到每一台终端设备上,效率提升了不少,可是缺点是什么呢?缺点就是有效带宽的利用率减少了。由于除了一个包会被处理之外,其他的都被终端丢弃了,对于早期的总线型以太网而言,CSMA/CD的开销也不可小觑,它的开销大大超过了交换机出现后的查表开销,正是由于这个开销而不是别的。才导致了HUB/交换机的出现,学习型交换机出现后,全双工模型仅仅带来了查表的开销而已。
然而,CLUSTER target却没有这个问题。或者说带宽利用率的问题并不明显。
优点却是显而易见的。CLUSTER target省去的是中心负载均衡设备内的复杂运算以及其单点故障,带来的是部署上的简单,维护上的简单,以及高可用性。
确实。有时候,广播并非什么坏事。精确的定点传输并不一定是好事,查表也是有开销的,此时须要评估查表的效率,在某些情况下,比方硬件加速卡查表时,它带来的高效带宽利用的优势就抵消了查表开销。软实现的查表,在简单情况下,都是无益的,正由于如此。VMWare的虚拟交换机中并没有实现MAC/Port映射,即MAC地址学习。一直以来。仅仅要人们一说负载均衡。总要联系到一台设备,这个设备就是做负载均衡的。就像人们一直以来都觉得一台设备能TMD加速数据流一样(仅仅要是设备。都是减速的,加速是一场骗局,实际上用的是cache!),对于负载均衡而言,本来有N个处理节点,结果都要TMD汇集到一台所谓的负载均衡设备上,由它来决定数据的流向,这样的集中化的控制很多其他的是为了将处理节点的分发集中在一个可控的范围内。逻辑上讲。是对server本身配置的不放心不信任(怎么才干让它们合作起来呢?难道不须要跑来跑去去配置它们吗?),物理上讲。人为引入了单点问题-瓶颈以及故障,经济上,能够卖出去一台设备,为了解决单点问题。再卖出去几台设备...再卖出去几台。
以太网广播开销的问题让分布式帧接收改变成了中心式的分发控制,然而iptables的CLUSTER target又让人们看到了分布式分发的优势,在说带宽利用率低的时候。请首先计算一下高的带宽利用率是拿什么换来的。对于中毒太深的资深人员而言,他这可能是不屑一顾我的观点。但是,间,恳求不喜勿喷。
版权声明:本文博主原创文章。博客,未经同意不得转载。
iptables的CLUSTER target以太网交换机和想法的更多相关文章
- arm,iptables: No chain/target/match by that name.
最近由于项目需要,需要打开防火墙功能. 公司有 arm linux 3.0x86 linux 3.2x86 linux 2.4 的三个嵌入式.都需要打开防火墙功能. 执行“whereis iptabl ...
- hyperv 创建虚拟以太网交换机失败
问题: hyperv 创建虚拟以太网交换机失败 解决办法: 取消无线共享,重新创建虚拟以太网交换机即可
- centos6.8 docker0: iptables: No chain/target/match by that name
现象:之前docker gitlab运行的一直好好的,突然有一天访问不了,但容器却还运行着.于是我把gitlab容器重启,发现启动不了了,报错:docker0: iptables: No chain/ ...
- [转]启动container的时候出现iptables: No chain/target/match by that name
本文转自:https://blog.csdn.net/u013948858/article/details/83115388 问题: Error response from daemon: drive ...
- 启动docker容器 防火墙问题报错 ! -i docker0' failed: iptables: No chain/target/match by that name.
COMMAND_FAILED: '/sbin/iptables -t nat -A DOCKER -p tcp -d 0/0 --dport 8111 -j DNAT --to-destination ...
- iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 8001 -j DNAT --to-destination 172.17.0.5:8080 ! -i docker0: iptables: No chain/target/match by that name.
在docker容器上部署项目后,启动docker容器,出现 iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dpor ...
- 【Docker】iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 8480 -j DNAT --to-destination 172.17.0.2:80 ! -i docker0: iptables: No chain/target/match by that name
启动容器的时候,出现如下错误: Error response / --dport -j DNAT --to-destination ! -i docker0: iptables: No chain/t ...
- docker运行报错docker0: iptables: No chain/target/match by that name.
转自:https://blog.csdn.net/wohaqiyi/article/details/84450562 docker运行报错docker0: iptables: No chain/tar ...
- iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 3306 -j DNAT --to-destination 172.17.0.2:3306 ! -i docker0: iptables: No chain/target/match by that name
今天使用docker运行mysql时报错, 执行命令: docker run --restart=always --name mysql5.7 -p 3306:3306 -v /data/mysql/ ...
随机推荐
- JDK源码学习系列04----ArrayList
JDK源码学习系列04----ArrayList 1. ...
- Hive ERROR: Out of memory due to hash maps used in map-side aggregation
什么时候hive在运行大数据量的统计查询语句时.常常会出现以下OOM错误.详细错误提演示样例如以下: Possible error: Out of memory due to hash maps us ...
- ZOJ 3728 Collision
---恢复内容开始--- 今天无事水一水,结果就看到这个水题了! 题意思是 有俩个区域如图 求在俩个圆之间的运动时间 给出 初始的开始点和速度的矢量式;而且这个点 不再俩个圆之间的区域,且碰到内测园会 ...
- Kafka设计
[Apache Kafka]Kafka设计 在开始开发producer和consumer之前,先从设计的角度看一看Kafka. 由于重度依赖JMS,且实现方式各异.对可伸缩架构的支持不够,Link ...
- Mean Shift简介
Mean Shift,我们 翻译“平均漂移”. 其集群,图像平滑. 图像分割和跟踪已广泛应用.因为我现在认为追踪,因此推出Mean Shift该方法用于目标跟踪.从而MeanShift較全面的介绍. ...
- java提高篇(七)-----详解内部类
可以将一个类的定义放在另一个类的定义内部,这就是内部类. 内部类是一个非常有用的特性但又比较难理解使用的特性(鄙人到现在都没有怎么使用过内部类,对内部类也只是略知一二). 第一次见面 内部类我们从外面 ...
- servlet(jsp)中的重定向和转发
servlet(jsp)中的重定向和转发 由一个servlet(jsp)从内部转向还有一个servlet(jsp)有两种方式:转发和重定向. 转发:是由一个web组件(servlet)将未完毕的处理交 ...
- dom4j解析xml中指定元素下内容
需求:XML为例如以下样式,如今我仅仅想取得timer以下的5000和60000. 解决的方法例如以下: <?xml version="1.0" encoding=" ...
- AFHTTPRequestOperationManager当一个网络请求加入菊花
问: Can you help me to understand, how to use UIActivityIndicatorView+AFNetworking or UIProgressView+ ...
- Objective-C该Protocol
Objective-C该Protocol Protocol 简单来说就是一系列方法的列表,当中声明的方法能够被不论什么类实现,这样的模式一般称为(delegation)模式 在iOS中和OS X中,A ...