带你读《软件定义网络之旅:构建更智能、更快速、更灵活的未来网络》第三章网络功能虚拟化3.1(一)

简介: 《软件定义网络之旅:构建更智能、更快速、更灵活的未来网络》第三章网络功能虚拟化3.1

网络功能虚拟化(NFV)是由网络和操作系统(OSOperating   System)两个独立学科开发活动所构建的一组软件功能。早期,网络和计算机都非常昂贵。因此,共享联网计算机变得必不可少虽然每个用户的成本显著降低,但当新用户加入网络时,网络价值与联网用户数的平方成正比(梅特卡夫定律。随着计算机数量的增加,网络设计变得更加复杂,其中交换机和路由器可用于将来自源端的流量引导到目的端,网络技术促进了局域网和广域网中的数据流动。

这里提到的网络技术是指以太网SpurgeonandZimmerman,2000IPComer,2014,它们支持创建多用户共享的网络。以太网交换机和 IP   路由器采用硬件和软件构建,以实现单层网络协议。但是,以太网和 IP都未被设计成能够在用户(主机)或用户组之间提供足够的隔离功能。除非两个用户直接进行通信,否则,需要通过隔离来实现某个用户相对于其他用户的隐私和保护。以太网依赖于广播发现协议。IP路由的寻址架构导致每个用户对同一网络上其他用户都是“可见” 或可达的。NFV支持在大量用户之间安全、高效地共享网络,同时在用户组之间提供高级隔离功能。

除了共享和隔离之外,NFV    还需要第三种属性,我们称其为功能解耦。用于实现以太网和IP的交换机和路由器是单片元件,旨在提供非常高的性能高数据分组吞吐量和非常短的数据分组交换时间(数据分组处理、排队和传输时延的总和。随着互联网的发展,交换机和路由器变得越来越复杂。它们使用复杂的定制特殊应用集成电路(ASICApplicationSpecificIntegratedCircuit)进行数据分组转发和专用操作系统,以实现各种网络协议和功能。NFV要求将网络功能

(转发、控制和管理平面)与单层网络硬件分离。此外,NFV在软件中实现分组转发。硬件变为通用x86或商用芯片,且软件与硬件分离。在深入研究NFV之前,我们将对这些技术进行综述。

 

 

3.1   虚拟化

 

在本节中,我们将讨论与网络和计算环境相关的虚拟化,重点关注网络功能虚拟化,它既适用于网络虚拟化,又适用于计算虚拟化。


3.1.1      网络虚拟化

封闭式用户组(CUGClosedUserGroup)支持一组相互隔离的用户与网络中其他用户进行通信。网络支持创建多个 CUG。每个CUG正常工作时,就像整个网络都属于特定 CUG一样,不会受到同一网络上可能存在的其他CUG的干扰。我们将支持此类CUG的技术称为网络虚拟化。每个CUG在其虚拟网络上运行,与同一物理网络上的其他虚拟网络共存。

以太网和 IP网络设计用于支持多个用户进行通信并共享公共物理网络。但是,以太网和 IP

的原始定义中并不包含 CUG概念。

以太网定义了共享媒体上的广播域概念。虚拟局域网(VLANVirtualLocalAreaNetwork)是一种广播域,可以对虚拟局域网进行分区,并将它与其他虚拟局域网和关联广播域区分开。要将网络划分为多个虚拟局域网,需要配置网络交换机或路由器。虚拟局域网允许网络管理员将主机组合成一个广播域或虚拟网络。虚拟局域网成员资格可以通过软件进行配置。在不存在虚拟局域网的情况下,对用户(主机)进行分组需要在物理上重新定位网络交换机并将站点连接到交换机的光缆。虚拟局域网通过对局域网进行虚拟化,可大大简化网络设计和网络部署(如图 3.1所示

image.png

 

3.1    使⽤虚拟局域⽹(VLAN)的简单以太⽹虚拟⽹络

虚拟专线业务VPWSVirtualPrivateWireService和虚拟专用局域网服务VPLSVirtualPrivateLANServiceRekhter,2007)是广泛用于校园或多位置广域网的第二层虚拟网服务(Anderson,2006VPWS定义了点对点服务,而VPLS定义了多点服务。以太网虚拟专用网(EVPNEthernetVirtualPrivateNetworkSajassi,2015是为以太网终端构建和提供CUG服务的最新标准。

IP 路由定义了一组协议,这些协议计算数据分组所遵循的路径,以便跨多个网络从数据分组的源端传输到目的端。数据通过一系列路由器从其源端路由到目的端,且通常跨多个网络。IP路由协议支持路由器构建转发表,该表将目的端与下一跳地址关联起来。在基本 IP路由协议中,所有源端和目的端通过路由协议都是相互可见的。

为了在 IP网络上创建 CUG,我们需要采用一种通常称为叠加网络的方法。叠加网络是一种在单层 IP网络上实现的虚拟网络。存在两种用于创建叠加 IP网络的常见技术:IP隧道和虚拟路由转发(VRFVirtualRouteForwarding)。

IP隧道Simpson, 1995)用于连接两个相互之间没有路由路径的虚拟IP端点(如图 3.2所示隧道采用跨公共中间IP传输网的路由协议。IP隧道是端点和公共中间传输网之间的虚拟叠加网络连接(有时也称其为单层网络。可以使用一组IP隧道在一组 IP端点之间创建 CUG,我们称其为虚拟专用网(VPN)。

image.png

 

3.2使⽤IP隧道的虚拟⽹络连接

VRF是一种能够在 IP网络中创建多个路由表实例的技术 [Rosen,BGP/MPLSIP VirtualPrivateNetworksVPNs, RFCs4364and2547,2006]。路由表由 IP网络中的每台路由器维护。在沿着分组路径的每一跳处执行路由表查找以确定分组的下一跳。在原始 IP网络架构中,使用单路由表来定义路由逻辑,有时称其为全局路由表。VRF定义了路由表的多个实例,其中每个实例都可以定义一个 CUG。这是一种非常高效的 VPN创建方法(如图 3.3所示

image.png


3.3使⽤VRFIP⽹络虚拟化

 

相关文章
|
12天前
|
20天前
|
存储 安全 算法
网络安全与信息安全:构建安全数字生活的基石
【10月更文挑战第5天】 在数字化时代,网络安全与信息安全已成为维护个人隐私、企业机密和国家安全的重要防线。本文旨在探讨网络安全漏洞的形成与防范、加密技术的应用及其重要性,以及提升公众安全意识的必要性。通过深入浅出的方式,帮助读者理解网络安全的核心要素,并强调每个人都是网络安全生态中不可或缺的一环。
45 1
|
21天前
|
搜索推荐 程序员 调度
精通Python异步编程:利用Asyncio与Aiohttp构建高效网络应用
【10月更文挑战第5天】随着互联网技术的快速发展,用户对于网络应用的响应速度和服务质量提出了越来越高的要求。为了构建能够处理高并发请求、提供快速响应时间的应用程序,开发者们需要掌握高效的编程技术和框架。在Python语言中,`asyncio` 和 `aiohttp` 是两个非常强大的库,它们可以帮助我们编写出既简洁又高效的异步网络应用。
98 1
|
9天前
|
安全 网络架构
MPLS线路构建稳定、高效网络的优选方案
【10月更文挑战第17天】MPLS线路构建稳定、高效网络的优选方案
33 5
|
16天前
|
存储 安全 5G
|
22天前
|
安全 算法 网络安全
网络安全与信息安全:守护数字世界的坚盾在这个高度数字化的时代,网络安全和信息安全已成为全球关注的焦点。无论是个人隐私还是企业数据,都面临着前所未有的风险和挑战。本文将深入探讨网络安全漏洞、加密技术以及安全意识的重要性,旨在为读者提供实用的知识,帮助构建更加安全的网络环境。
【10月更文挑战第4天】 在数字化浪潮中,网络安全与信息安全成为不可忽视的议题。本文通过分析网络安全漏洞的类型与成因,探讨加密技术的原理与应用,并强调提升安全意识的必要性,为读者提供一套全面的网络安全知识框架。旨在帮助个人和企业更好地应对网络威胁,保护数字资产安全。
107 65
|
6天前
|
运维 供应链 安全
SD-WAN分布式组网:构建高效、灵活的企业网络架构
本文介绍了SD-WAN(软件定义广域网)在企业分布式组网中的应用,强调其智能化流量管理、简化的网络部署、弹性扩展能力和增强的安全性等核心优势,以及在跨国企业、多云环境、零售连锁和制造业中的典型应用场景。通过合理设计网络架构、选择合适的网络连接类型、优化应用流量优先级和定期评估网络性能等最佳实践,SD-WAN助力企业实现高效、稳定的业务连接,加速数字化转型。
SD-WAN分布式组网:构建高效、灵活的企业网络架构
|
1天前
|
数据采集 存储 机器学习/深度学习
构建高效的Python网络爬虫
【10月更文挑战第25天】本文将引导你通过Python编程语言实现一个高效网络爬虫。我们将从基础的爬虫概念出发,逐步讲解如何利用Python强大的库和框架来爬取、解析网页数据,以及存储和管理这些数据。文章旨在为初学者提供一个清晰的爬虫开发路径,同时为有经验的开发者提供一些高级技巧。
5 1
|
12天前
|
消息中间件 监控 网络协议
Python中的Socket魔法:如何利用socket模块构建强大的网络通信
本文介绍了Python的`socket`模块,讲解了其基本概念、语法和使用方法。通过简单的TCP服务器和客户端示例,展示了如何创建、绑定、监听、接受连接及发送/接收数据。进一步探讨了多用户聊天室的实现,并介绍了非阻塞IO和多路复用技术以提高并发处理能力。最后,讨论了`socket`模块在现代网络编程中的应用及其与其他通信方式的关系。
|
11天前
|
存储 Linux 调度
KVM 虚拟化的功能特性
【10月更文挑战第13天】虚拟化技术创建实体资源的虚拟版本,提升资源利用率。KVM(Kernel-based Virtual Machine)作为全虚拟化解决方案,借助Linux内核实现Hypervisor功能,通过模块化方式提供高效的虚拟化环境。