引言
随着软件定义网络 (SDN) 技术的兴起,网络接口卡 (NIC) 在企业和数据中心网络中的作用正在发生重大转变。SDN 通过将控制平面与数据平面分离,为网络管理和自动化提供了更大的灵活性,并为优化 NIC 发挥了至关重要的作用。
SDN 对 NIC 的影响
-
增强可编程性:
SDN 使 NIC 能够进行编程,以处理网络流量并执行复杂功能,例如流量监控、负载均衡和安全。 -
虚拟化支持:
SDN 允许 NIC 在虚拟机 (VM) 和容器之间虚拟化网络资源,从而简化多租户环境的网络管理。 -
可扩展性提高:
通过 SDN,可以通过编程 NIC 轻松地添加和删除服务器,从而提高网络的可扩展性。 -
安全增强:
软件定义的安全功能可集成到 NIC 中,提供更有效的网络安全措施。 -
网络可视性提高:
SDN 控制器提供集中式网络可视性,使管理员能够监控和分析 NIC 性能和流量模式。
智能 NIC (SmartNIC) 的崛起
智能 NIC (SmartNIC) 是嵌入处理器、内存和其他处理能力的增强型 NIC。这些附加功能使 SmartNIC 能够处理更复杂的网络任务,例如:
-
网络虚拟化:
创建并管理虚拟机和容器的网络连接。 -
流量管理:
优化流量、减少延迟并提高网络吞吐量。 -
网络安全:
实施防火墙、入侵检测和数据加密等安全措施。
NIC 在 SDN 环境中的好处
-
简化的网络管理:
使用 SDN 控制器集中管理和控制 NIC,从而简化了网络配置和管理。 -
提高网络效率:
SDN 优化 NIC 利用率并减少网络开销,从而提高网络效率。 -
提高安全性:
通过在 NIC 中部署安全功能,SDN 可以增强网络安全并减少安全漏洞。 -
降低成本:
通过自动化和简化的管理,SDN 和 SmartNIC 可以降低网络运营成本。 -
提高可扩展性:
SDN 和 SmartNIC 简化了网络扩展,使企业能够轻松满足不断增长的网络需求。
选择 NIC 时需考虑的因素
企业在为 SDN 环境选择 NIC 时应考虑以下因素:
-
网络流量需求:
NIC 的吞吐量和延迟能力应与预期的网络流量相匹配。 -
所需功能:
确定所需的网络功能,例如虚拟化、安全和可编程性。 -
服务器兼容性:
确保 NIC 与服务器硬件兼容,并支持服务器的 PCIe 标准和物理尺寸。 -
管理要求:
选择具有所需管理接口和支持 SDN 控制器集成的 NIC。
结论
软件定义网络 (SDN) 正在彻底改变网络接口卡 (NIC) 的作用。SDN 通过增强可编程性、虚拟化支持和安全增强功能,使 NIC 能够发挥更重要的作用并优化网络性能。随着智能 NIC 的崛起,企业现在可以将高级网络功能集成到其 NIC 中,提高网络效率、增强安全性和降低成本。通过了解 SDN 对 NIC 的影响,企业可以做出明智的决策,选择满足其特定网络需求的最佳 NIC,并充分利用 SDN 带来的好处。
浅析SDN软件定义网络的应用范围以及未来的发展趋势
1. SDN:软件定义网络(Software Defined Networking,SDN)是一种创新网络架构,其核心思想是分离网络设备的控制面与数据面,以实现网络流量的灵活控制。
OpenFlow技术是实现这一思想的关键,它允许网络控制平面与数据平面相互独立,从而提高了网络的可编程性和灵活性。
2. SDN的发展与影响:SDN自提出以来,便受到了ICT行业的广泛关注。
其控制面抽象化的理念,使得网络管理变得更加简单,数据面的快速发展也使得网络技术得以演进。
目前,SDN的应用范围逐渐扩大,从数据中心网络到广域网,再到互联网服务提供商,SDN都在发挥其重要作用。
3. SDN的应用场景:虚拟化是SDN的一个杀手级应用。
在多租户云中心,网络Hypervisor能够满足各种复杂的网络需求,为用户提供灵活的虚拟网络拓扑。
同时,MPLS的融入也将进一步提升SDN的网络性能和可扩展性。
4. SDN的未来发展趋势:SDN的模块化特性使得网络核心和边界的功能更加明确,网络核心只需要负责报文的转发,而边界则负责访问控制和隔离等功能。
这种分离也将使得网络架构更加灵活,有助于推动网络行业的创新。
5. SDN的挑战与机遇:虽然SDN带来了许多优势,但其也面临着诸如时延、安全性等方面的挑战。
然而,随着技术的不断进步,我们有理由相信,SDN将能够克服这些挑战,为网络行业带来更多的机遇。
总结:SDN作为一种新兴的网络架构,其应用范围和未来发展前景都非常广阔。
通过本文的解析,我们可以看到SDN在网络管理、虚拟化、多租户云中心等方面的应用,以及其在未来网络发展趋势中的重要作用。
浅析SDN软件定义网络的应用范围以及未来的发展趋势
SDN:软件定义网络(Software Defined Network, SDN ),是Emulex网络一种新型网络创新架构,其核心技术OpenFlow通过将网络设备控制面与数据面分离开来,从而实现了网络流量的灵活控制。
当前,SDN(Software-Defined Networking,软件定义网络)正在成为整个ICT行业都在重点关注和津津乐道的话题,在本文中首先我想谈谈对SDN诞生的几点思考,以及经过5年研发后,我们现在对SDN的看法。
控制面抽象化
一直以来,“网络管理难”都是我们不得不解决的问题。
比如,一台交换机所需的系统管理员支持工作量比一个计算节点高一个数量级。
相比其它计算机科学技术,很难通过新增功能来实现网络技术的演进。
要构建高效的系统,就需要抽象化地将“网络管理难”问题分模块处理。
数据面的运行速度达到纳秒级,而且完全是本地的。
控制面负责决定如何配置转发状态(包括算法或手工方式)。
这个过程的处理时间从几十毫秒到几天不等,并且依赖于外部的信息输入。
因此,控制面从本质上来说是非本地的。
这种分层方式是互联网取得如此巨大成功的原因,并且让各层独立创新成为现实。
比如,在网络中部署一项新的光学技术后,网络堆栈中其它功能都将保持不变,无须重写整个网络堆栈。
这就是为什么互联网可以在架构几乎不变的情况下,在速度、规模和使用多样性方面提高了6~7个数量级。
作为SDN社区的成员,我们将数据面抽象化的做法是对的。
另一方面,由于控制面只是基于各种协议,没有可重用的抽象,因此对SDN的需求与日俱增。
在我们的定义中,SDN采用两种控制面抽象化方式:(1)提供系统实施信息的网络全局视图;(2)采用OpenFlow等转发模型的网络操作系统(这些模型在网络控制层的服务器上运行)。
这种定义带来了重大变化,原因在于控制机制现在只不过是使用网络操作系统API的图算法。
如今,网络管理和演进变得越来越简单。
数据面完全在交换机中进行运作,而控制面在使用商用硬件和第三方软件的网络服务器上运作。
此外,可以独立对控制面进行测试,无须依赖底层硬件。
这让网络呈现IT化趋势。
虚拟化:SDN的杀手级应用
我们不断探索新的、更高级的模块化类型。
我们曾认为,控制程序将计算出所有网络交换机的转发状态配置数据。
此外,我们还曾认为数据面非常简单,而且交换机在角色和功能上变得趋同。
操作员通过控制程序下发网络需求和策略。
然而,控制程序不应该负责实施这些需求。
这是因为模块化的目标之一是使系统的可重用部分变得复杂化,并且让每个应用程序的待写内容变得简单。
我们正在推出一种新的、纯逻辑的虚拟拓扑抽象和新的SDN层。
操作员可以通过配置逻辑交换机来下发流表项需求和策略。
SDN Hypervisor层将这些需求进行转化后,发送给物理交换机(可当做虚拟拓扑的编译器)。
我们已经简化了控制程序的编写方式。
同时,我们让本来就很难的编译器编写工作更加困难了。
新的SDN层就是指网络Hypervisor及其虚拟拓扑。
首先,根据拓扑和待完成任务来编写控制程序。
然后网络Hypervisor把虚拟拓扑的汇编信息融入物理网络全局视图。
最后,网络操作系统把全局视图的配置信息下发给物理交换机。
实施网络Hypervisor后,虚拟化成为SDN的杀手级应用。
多租户云中心(如Rackspace、亚马逊)的大量客户正在把网络迁移到云中。
为确保数据中心能够提供满足策略和需求的虚拟拓扑,网络Hypervisor需汇编数千条底层配置信息,以满足各租户的需求。
SDN出现以前,对数千个虚拟网络进行动态更改是不可能的。
通过简化网络管理,虚拟化为我们带来了增值,让人们愿意**SDN。
一般而言,虚拟拓扑仅仅是实施转发的逻辑网络。
融入高级功能(如鉴权)后,虚拟拓扑能传达应用层面的语义(比如,允许谁和谁通话),并且允许网络Hypervisor在网络层面实施这些策略。
如今,操作员可以通过抽象方式下发需求,网络Hypervisor可完全自行决定如何满足这些需求。
这一点非常重要。
起初,我们曾认为交换机在角色和功能上是相似的。
目前,网络使用报文头来让主机与网络通信,或者让报文与路由器或交换机通信。
收到报文后,交换机首先会问:“主机需要我把这条报文发到哪里?”之后,各个交换机会说:“根据上个问题的答案来查找转发站,决定下发路径”。
SDN为操作员提供一个清晰的全可编程方式来控制网络。
然而,SDN不会分离主机网络和报文路由器接口。
报文头仍用于查找路由器或交换机。
将MPLS融入SDN
多协议标签交换(MPLS)在区分网络边界和核心方面起到重要作用。
报文到达第一个上层路由器时,边界路由器会问:“主机想干什么?”,然后在报文中加入标签,这个标签只有在本地网络中有意义。
网络核心无须了解报文头,只是说:“从现在起,MPLS标签足以让我了解如何转发报文”。
早在5年前,我们就应该把MPLS融入SDN,让边界路由器来读取整个报文头并将MPLS标签嵌入报文,让核心路由器来读取报文。
我们目前正在努力将MPLS融入SDN。
融入MPLS后,整个网络被分解成模块。
在模块化网络中,各项任务只执行一次:网络边界完全负责主机接口;网络核心通过标签管理报文路由器接口;SDN管理操作员接口。
我们提出分离网络边界和网络核心的理由之一,是让网络核心专注于报文发送,而访问控制和隔离功能则由网络边界来完成。
显然,网络核心必须负责报文发送,包括组播和服务质量(QoS),而其它工作由网络边界来完成。
经过简化后,网络核心只用负责一项任务,即在网络边界之间发送报文。
这样一来,网络核心的工作性能得到大幅提升。
试想一下,一旦分离了网络边界和网络核心,为什么不让主机靠近网络边界呢?要实现这点,就得在主机上安装可信的硬件和软件(如主机网络接口卡)以及大量分布式系统和安全措施。
不过,我们可以想象把网络部署在只看得见由主机生成的标签的位置。
过去,网络完全由硬件交换机组成。
如今,软件交换机成为了常见的网络组成部分。
在部署包括边界和核心部分的网络时,所有边界交换机都应该是软件交换机。
这是我们的第二个激进的观点。
数据中心已经在使用虚拟交换机和Hypervisor。
Verizon、ATT和德电等大型互联网服务提供商的所有带宽都经过网络边界。
为了转发这些流量,他们要花多少钱才能买到足够的网络核心设备呢?答案是他们需要花15万美元,不及一台中型路由器的价格。
纵观其他企业的网络,我认为在网络边界采用软件转发这种方式并非行不通。
当然硬件转发和软件转发在速度上存在两个数量级的差别,我认为可以用软件来满足边界转发需求,提高边界软件的灵活性让我们受益;无需在网络核心实施软件交换,因为核心只负责根据标签来进行流量转发,而硬件就能实现转发。
边界软件转发让网络架构演进和多样化成为可能。
整个网络中,只有网络边界的软件需要了解本领域的协议,其它网络部分无须了解协议。
只需更改SDN控制程序,就能实现网络架构更新(如IPv4到IPv6)。
一切就这么简单。
可以在一个域中并行运行多个架构。
“在一个主机中并行支持多个架构”这种想法看似很激进,但所需要的改变都非常简单,都在我们的技术能力范围内。
关键在于要说服人们,让他们觉得落实这个想法是值得的。
边界软件的中间件功能
最后我还要提一点。
一直以来我们都认为网络数据面是平的,很简单。
但现在我们应该改变这种看法。
互联网数据面只是实现“尽力而为”的数据转发。
而实际上,很多中间件或网络设备都能扩大数据面,让数据面实现各种功能,如防火墙、LAN优化、网关、VPN、负载均衡和入侵检测。
数据面一点也不简单。
大中小型和超大型网络中,中间件的数量比得上路由器和交换机的数量。
有4个重要的事实值得我们注意:
第一,大多数报文是由多个中间件处理的,这些中间件检查各个报文并作出决定,如“这个报文的内容与我无关,要把它扔掉”、“需要检查报文,明确是否有人在攻击我”,或者“需要实施防火墙功能以控制链接”;
第二,中间件通常部署在网络边界;
第三,中间件通常使用x86处理架构,但并非所有情况都如此;
第四,中间件的报文处理流程比单纯的报文转发流程要复杂得多。
接受这4个事实后,还需要面对一个绝对无法回避的结论:SDN应该加强边界软件的中间件功能。
边界软件代表了从硬件到软件的彻底转变。
硬件网络退化成为“哑管道”——当初没有中间件的时候,网络就是哑管道。
SDN控制下的边界软件带来了有趣的转变。
SDN的颠覆性本质就体现在这个转变中。
SDN对控制面实施精细的模块化,让交换机、网络操作系统和控制程序各司其职。
虚拟化让控制程序和物理网络实现解耦。
作为虚拟拓扑,SDN平台能完全控制实施需求的方式,如把功能放在网络边界,让网络核心进行流量转发。
软件交换正在进行中。
如果担心时延问题,你可以算算目前中间件导致的时延。
总之,要利用软件交换这一趋势来灵活定义功能——就像虚拟数据中心领域一样。
这场转变正在改变网络行业的性质,促进创新,强化竞争并改善客户体验。
谢谢阅读,希望能帮到大家,请继续关注,我们会努力分享更多优秀的文章。
网络里面什么是SDN?
1. SDN是指软件定义网络,由美国斯坦福大学的CLean State研究组提出,代表了网络虚拟化技术的一种进步。
2. 这一架构的核心技术是OpenFlow,它通过将网络设备的控制功能与数据转发功能分离,实现了对网络流量的灵活控制。
3. SDN使得网络能够更加智能地作为数据传输的管道,为网络核心以及应用的创新提供了强大的平台支持。
4. 软件定义网络的概念,简化了网络管理,提高了网络的灵活性和可编程性,从而推动了网络技术的革新。