Ken Lai

负载均衡需要将大量的请求按照一定的权重把请求分散到各个后台服务器。得益于Hashing函数的特性 — — 确定的输入和哈希函数能够得到唯一且确定的哈希值,水平负载均衡都采用一定的哈希函数来确定入向的请求应该被重定向到哪一台后端服务器。

以三台后端服务器(A、B和C)为例,假设三台服务器权重相同。下列请求可以按如下规则来确定

这里的哈希函数我才用了MD5作为例子,并不代表实际场景中会使用同样的哈希算法。

从上面表格的结果来看,10个请求被大致平均的分配到了3台服务器。达到了我们的要求。但这种方法对后端服务器数量的变化毫无应对能力。比如我们增加或者减少一台服务器都会对所有请求的分配造成巨大影响:

--

--

我依然坚信那句软件领域的名言“No silver bullet”。简单的说就是没有任何技术和方法能够解决所有的问题。OpenFlow的诞生和崛起有它自己的历史必然性。但是并不代表任何技术都需要用它来做才是最好的方式。

(硬件)负载均衡设备在现在来看还是不太可能用OpenFlow方式来实现的:

  1. OpenFlow设备的流转发表限制。负载均衡在基于目的地这种最基本的转发方式之外,还有很多基于策略的转发。OpenFlow的转发表大小非常有限,几个T的交换机大概有2000条吧
  2. TCAM更新速度。15年的交换机大概每秒能更新1000条流信息。相信现在的OpenFlow交换机没有做到这点,因为厂商没有理由在实现的情况下不宣传这个技术优势
  3. 延迟问题。流要通过与控制器进行交互把转发信息写入交换机,这相对于传统方式延迟相当大。
  4. OpenFlow硬件实现限制。到现在还没有看到那个厂家提到了通过OpenFlow实现IP改写这个功能,那么可以推测这个功能并没有实现。理由同2.

考虑到这几点,如果是流数量小,每个流流量大的情景,OpenFlow的负载均衡还是可以一试的。否则还是算了吧。

--

--

我在工作中看过各种各样我个人认为并不合适的服饰,有些实在过于个性或者怪异;有些虽是想表现出庄重的感觉,但是无奈总体现出了一种廉价感。

知乎上葛巾有个不错的专题,谈到了各种穿衣的选择。虽然我个人并不100%的认同,但确实是对于缺乏穿衣知识的人有莫大的帮助。除此之外,我认为几点是需要特别注意的:

  • 选择经典款式。如果购衣有明显的预算,或者你不敢保证自己独特的时尚能让人欣然接受,那么经典的款式和颜色绝对是不会错误的选择;
  • 买高质量产品。做好计划,买预算内最好品质的衣物。一件好的衣物价值大于10件普通的。但是价格往往比那10件还便宜;
  • 学会保养。除了车以外,好的衣物也是需要保养的;
  • 少而精。当然,如果女性的话,可以稍微多一些。但是有品质的衣服才是最重要的,一个大衣柜里找不出好的衣服才真的是“杯具”;
  • 合身。衣物务必合身,不合身的衣物会让你穿着后的效果大打折扣。如果是男士,定做西服和衬衣并不比买一套成衣贵多少。但品质却好了很多。
  • 选择适应性广泛的衣物。如果一套衣服什么都很好,但是一年只能穿3天,那么这可能真的不适合买。这点对于居住在四季分明地方的人尤为重要。

最后一点,我想单独说明:不要按照你现在的地位来打扮,而是按照你希望达到的地位来尽力。

PS: 我刚上去找了找,发现葛巾已经退出知乎了。

--

--

不管从什么地方看到SDN的文章,都是集中于本身的实现与将来的美好愿景,似乎传统的硬件厂商在这一次的技术革新中都难逃厄运。但是我的观点是:SDN时代硬件依然重要!

我们需要认识到的一点是 — — 把一堆网络设备凑在一起拼出一个能用SDN网络是一回事,搭建一个富有弹性的,让企业能够放心使用的网络是完全另一回事。就算我们暂时不谈论控制平面的问题,但像failover,链路聚合,进程重启等工作必须由实际物理设备来完成,所以交换机/路由器仍然需要非常高的可用性和性能来执行这些关键任务。

多年前开始流行的虚拟化并没有杀死传统的服务器设备商(而是让他们作出了改变),杀死传统的诸侯开创新时代也不太应该是我们期待SDN能够做到的。相反,随着SDN的普及,网络产品可能会朝着两个不同的方向进行延伸:

  • 第一个方向,我们可能会看到越来越多的设备能够简化与自动化传统网络配置 — — 很多设备商开始支持puppet进行自动配置。由于SDN并不可能在短时间内一蹴而就,所以这些设备能够给予我们足够的时间来过渡,同时也是以一种渐进的方式让传统的网络工程师接触SDN;
  • 第二个方向,可能是针对SDN优化的各种从核心到边缘的设备。对于一些野心勃勃的企业,SDN提供了很多他们渴望依旧的功能。这些经过针对性优化的设备能够满足他们最为迫切的需求。同时设备商在与这些企业的合作过程中,又能够不断的改进自己的设备,对SDN的推广起到良性的作用。

不管从什么角度来看,SDN将会给予硬件厂商新的机会来创造自己差异化的产品。这些差异化的产品会让客户更加容易选择合适自己的产品,同时也能得到更好的ROI。

--

--

Ken Lai

Ken Lai

CCIE x 3 (Routing & Switching, Service Provider, Security); AWS Solutions Architect — Pro, DevOps — Pro; Networking Automation.