forum

Computer Network Report(One of Week 13 Todolist)

posted
Total Posts
2
Topic Starter
Hanaoka_Yuzu
这里记录一下计算机网络理论课报告的一些工作
临时保存一下当前的待办信息~(为什么感觉把自己正在做的事情放在这个Board里好有成就感和动力)
(感觉这也为osu!的论坛添加了一道别致的风景线呢~)
Refs:
[1] https://www.redhat.com/zh/topics/hyperconverged-infrastructure/what-is-software-defined-networking(可能介绍太少了)
[2] https://zh.wikipedia.org/zh-hans/%E8%BB%9F%E9%AB%94%E5%AE%9A%E7%BE%A9%E7%B6%B2%E8%B7%AF(虽然是维基百科...但是没阐述为什么会有SDN)
[3] https://blog.csdn.net/qinshangwy/article/details/105162286 half ~summer 为什么需要SDN?
[4] https://zhuanlan.zhihu.com/p/36114654 主流软件负载均衡器对比(LVS、Nginx、HAproxy)
[5] https://www.cloudflare.com/zh-cn/learning/performance/what-is-dns-load-balancing/

--这里摘录一下Wikipedia的内容--[2]

软件定义网络(英语:software-defined networking,缩写作 SDN)是一种新型网络架构。它利用OpenFlow协定将路由器的控制平面(control plane)从数据平面(data plane)中分离,改以软件方式实作,从而使得将分散在各个网络设备上的控制平面进行集中化管理成为可能 ,该架构可使网路管理员在不更动硬件装置的前提下,以中央控制方式用程序重新规划网路,为控制网路流量提供了新方案,也为核心网路和应用创新提供了良好平台。SDN可以按使用领域分为:SD-WAN, SD-LAN, SD-DC, SDN将人工智能引入到网络系统里来,将是未来几年最热门的网络前沿技术之一。[1]

Facebook与Google都在他们的数据中心中使用OpenFlow协定,并成立了开放网路基金会来推动这个技术。[2][3]

那么在选题前言当中,对于软件定义网络是如何去说的呢?

软件定义网络是一种将数据转发功能与控制逻辑进行解耦的新型网络架构,具有下面的特点。
  1. 集中式控制
  2. 可编程性
  3. 开放性
  4. 灵活的网络管理
也许你们知道了软件定义网络是把路由器控制平面(控制逻辑功能)和数据平面(转发功能)进行分离(解耦)的功能,但是为什么我们要这样去做呢?
接下来的这段时间我们就来解决这个问题
网络业务发展趋势
随着全球化竞争的压力迫使各个企业和组织要不断利用技术创建来提高自己的竞争力,这些技术包括但不限于服务器虚拟化,存储虚拟化,云计算以及配套的一些自动化工具和业务流程化工具,通过对这些工具的使用来加速产品推出时间和提高服务质量,从而扩大自己的竞争优势,干物妹小埋也不例外,开始学习起了计算机网络技术来吸引更多的粉丝。这个过程中,IT技术不断演进,转变,来适应这种需求
IT技术的这种演进和转发无论是从云服务提供商,电信运营商还是企业网来看都在显著地发生着。比如数据中心里面的多租户环境的创建,从应用的角度来看很好,很强大。小埋在这种变化的过程中,逐渐意识到,这种变化给早已不堪负重的传统网络架构带来了沉重的压力,传统的网络架构其实很难适应这种新的需求,分析影响数据中心/企业网的一些显著的变化趋势:
1、数据中心的合并。越来越多的企业将自己的网络都移到了公有云提供商处,可以认为越来越多的中小数据中心被合并为一个很大的数据中心,对于大数据中心而已,就意味着更多的设备,更复杂的布线和更多的网络流量。
2、服务器虚拟化;为了降低成本,充分利用资源,减少宕机事件,越来越多的数据中心里面部署了服务器虚拟化,大量的虚拟服务器和用于访问它们的虚拟网络被广泛地集成到了物理框架基础中。



3、新的应用框架,很多组织大量部署基于服务和基于web的应用,这些应用促使数据中心要创建大量服务器到服务器之间的通信连接,而且要求不同应用之间要相互隔离,数据中心从传统的基于数据转发的模式转换到基于服务的递交模式,使得数据中心变得更加趋向于动态,复杂,传统的网络架构不再合适。
4、云计算的应用,要求企业能够用更加敏捷有效的技术来快速响应云计算业务需求,也对网络架构提出新的要求
5、BYOD,bring your own device,给现有企业无线网络的流量,安全,管理带来了压力。
总结:
网络业务的发展要求管理员能够管理越来越复杂的网络和设备,部署各种各样的复杂应用,以及应对越来越大的数据流量,那么如何能够方便地部署和管理这些应用,设备,网络,减少操作失误和操作时间,减少网络故障概率和恢复时间,就变得尤为重要。以上的变化趋势主要发生在数据中心,大型企业网内部,运营商,特别是数据中心。所以说是数据中心激发了SDN兴起
传统网络面临的问题
传统网络都是一个一个设备去管理的,而且管理员对网络中发生的很多事情都不可见,这是因为不同厂家的设备,很难有一个统一的管理平台
如果有了新的业务需求,要求对网络中的部分设备改动,可是设备对于管理员来说就是黑盒子,不仅设备本身是,就网络而言,转发路径都是通过动态协议(距离向量、链路状态路由等算法)计算的,很难清楚知道那个业务的报文走了哪条路径,以至于不知道哪里发生了拥塞,又是否有更优的路由存在,而且如果有,也很难把这个业务切换到更优的路径上,因为路径不是管理员指定的,而是协议计算的。这样一来,基于网络拓扑的自动化部署就更加无从谈起。
以下是管理员常见的问题:


也可以选择这张照片

这些问题带来的直接结果就是,网络中要部署一新业务的时候,通常历时很久,所以企业为了部署新业务,不得不经常做的一个事情就是升级网络。总而言之,传统网络架构在新的形势下,已经达到了能力的极限。
所以,小埋为了解决她吸引粉丝出现的问题,她也开始学习了SDN的技术并部署应用。

SDN如何解决问题
SDN解决问题的核心:
改变传统网络对数据流进行控制的方式,在传统网络中,报头从源转发到目的的过程中,报文转发行为是逐跳独立完成的,独立的进行配置,有自己特定的处理能力和配置方式,这种控制完全是分布式的。

而SDN是把每天设备的控制面从设备里面剥离出来,放到一个统一的外部服务器,由这个服务器通过统一的指令来集中管理转发路径上的所有设备,这个集中控制器知道所有必需的信息,而且这个控制器可以提供开放的API被上层应用程序通过编程控制,这样就可以消除大量手动配置的过程,添加管理员对全网的整体视图,提高业务部署的效率。

(小埋:这样应该会好一点吧~^_^)
比如在网络虚拟化中,当要添加一个新的租户或者为一个组合增加一个新的虚拟机时,通过元计算管理平台,比如OpenStack或者cloudstack,只要管理员把该租户或者虚拟机的属性填写好,云计算管理平台会自动计算所有需要的资源和配置,对涉及到的网络资源部分,可以在内部通过调用controller的API,自动配置到需要配置的交换节点上,而没有SDN,那么云计算管理平台需要发现每台设备的能力和配置方式,针对不同类型的设备都要提供不同类型的编程接口,这种要求特殊设备特殊对待的方式,对一个统一平台来说是致命的且不可扩展的。
SDN的引入,还可以防止厂商锁定,这样因为业务需求对设备进行改造,就不用管设备属于哪个厂商,只要它支持SDN,可以编程,那就可以直接通过开放的南向接口来改变设备里面的转发行为。这也是很多公司比如Google,Facebook想引入SDN的动力之一。厂商锁定问题普遍存在于数据中心/运营商网络,不仅带来成本问题,更主要的是网络改造和创新能力受限,甚至有时候必须找厂商的技术人员来帮忙。有了SDN之后,管理员需要学习的知识可以大大减少,因为异构设备,动态协议和私有协议都可以大大减少。
不难看出,SDN有这样的一些好处:
1、集中控制,入侵检测服务器检查到攻击之后,通过controller统一控制所有路由器和数据清洗设备(OpenFlow交换机)
2、灵活定义硬件转发行为,根据源+目的来过滤而不是仅仅目的,可以根据需要改写目的IP
3、通用性,不需要改变现有网络架构就可以部署新业务,并且可以防止厂商锁定(只要大家都支持OpenFlow的规定的功能)
4、自动化,完全可以通过应用层软件来自动化该业务的部署和进行
5、低成本,由于不需要特殊设备,不依赖特定厂家,可以使用通用设备,成本很低。

小埋:SDN不仅解决了技术瓶颈,同时让网络更加安全啦~ 好高兴~

负载均衡的Motivation
有一天小埋在吃甜甜圈,在思考自己的网络与CDN结合以后如何更快的传输
于是...
她看了这个流程图,很显然她知道SDN的性能取决于控制中心如何把工作平均分配到每一个收货仓库当中...
由此“负载均衡”的概念也被科学家们提出来,以最大限度调度和利用网络中的资源,提升利用率。
Corne2Plum3
(moved from General Discussion as English is only supported here)
Please sign in to reply.

New reply