文章目录
- 概述
- 相关基础
- 核心知识
- 软件定义网络SDN
- Overlay 技术
- 安全组
- 概述
- 参考博客
概述
相关基础
- 基本概念
- 虚拟私有云VPC:是一个隔离的网络环境,每个VPC拥有专属的IP地址范围(CIDR)、路由表、网关和子网,用户可以在其中进行资源的自定义操作
- CIDR(Classless Inter-Domain Routing,无类域间路由)
- 定义:通过
IP地址/前缀长度(如 10.0.0.0/16)
表示网络部分和主机部分的IP地址范围,其中网络部分标识设备所在的网络,而主机部分标识网络中的具体设备 - VPC相关:每个VPC需分配非重叠的私有IP CIDR范围(如 10.0.0.0/16、172.16.0.0/12),确保不同VPC间IP地址无冲突
- 定义:通过
- 子网(Subnet)
- 原理:基于CIDR将一个VPC网络划分为多个子网,每个子网关联一个CIDR的网络子集
- 类型
- 公有子网:允许通过互联网网关(IGW)直接访问公网,用于Web服务器等。
- 私有子网:仅允许通过NAT网关受限出站访问,保护数据库等敏感资源
- 示例:将192.168.1.0/24(254 个主机地址)划分为两个子网:192.168.1.0/25和192.168.1.128/25,每个子网包含 126 个主机地址。
- 路由表
- 定义:存储数据包转发路径规则的集合,实现不同子网间的通信
- VPC相关:每个子网需关联一个路由表,允许同VPC内子网互通
- 优先级规则:路由匹配遵循 最长前缀匹配(如 10.0.1.0/24 优先于 10.0.0.0/16)
- 安全组:充当虚拟防火墙,控制进出实例的流量,定义允许或拒绝的协议、端口和源IP等
- 网关:通过协议转换实现异构网络的互连,是设备访问其他网络时的第一跳转发地址
- 四者在VPC中的协同工作流程:以用户访问公有子网中的Web服务器为例:
- IP分配:Web服务器部署在子网 10.0.1.0/24 中,获私有IP 10.0.1.5,绑定弹性公网IP 203.0.113.10
- 路由决策:子网关联的路由表包含规则:0.0.0.0/0 → igw-xxxx。
- 网关转发:用户请求 203.0.113.10 → IGW接收 → 转发至私有IP 10.0.1.5。
- 安全验证:流量先经子网的网络ACL(端口过滤),再经实例的安全组(细粒度规则)
- 虚拟私有云(
Virtual Private Cloud, VPC
)- 定义: 是一种以
公有云环境
为基础,通过虚拟化技术创建的逻辑隔离的虚拟网络空间
,从而提供更加安全的用户专属网络
- 原理:通过虚拟化技术将计算、存储和网络资源封装为独立的虚拟环境,使用户能够自定义网络配置,如IP地址范围、子网、路由表等,从而实现资源的灵活管理与安全隔离
- 定义: 是一种以
- 特点
- 隔离性:基于逻辑隔离技术(如隧道封装、VLAN),
不同VPC
之间默认完全隔离
,互不可见、互不干扰 - 安全性:内置安全机制(如安全组、网络访问控制列表NACLs、防火墙等),对网络进出流量精细控制,防止未经授权的访问。
- 灵活性:用户能够
按需配置网络资源
随时创建、修改、删除 VPC 及其内部的网络组件(子网、路由表、网关等),从而实现资源的灵活管理
- 隔离性:基于逻辑隔离技术(如隧道封装、VLAN),
- 作用
- 安全隔离的网络环境: VPC 的核心作用,确保用户云上资源运行在一个受保护的私有网络中,免受外部网络的直接干扰和攻击。
- 自定义构建网络拓扑: 用户可以在 VPC 内灵活设计子网、路由策略、ACL 等,实现复杂的、符合企业 IT 治理规范的多层网络架构(如 Web 层、应用层、数据库层的隔离)。
- 控制网络访问: 精细化的安全组和 NACL 策略,确保只有授权的流量才能访问特定的资源。
- 降本增效: VPC 内部资源之间的通信通常走云服务商内部高速网络,延迟低、带宽高、免费(或成本极低)。同时,通过 NAT 网关等可以优化公网访问成本。
- 支持多租户与多环境: 企业可以为不同部门、不同项目或不同环境(开发、测试、生产)创建独立的 VPC,实现资源与网络的隔离和管理。
- 原理(VPC如何实现网络隔离)
- 逻辑隔离:每个VPC被分配一个独立的逻辑网络标识符(如VXLAN的VNI),物理网络设备根据这个标识符将流量严格限制在属于同一 VPC/子网的虚拟网络内,从而实现逻辑隔离
- 物理隔离:物理隔离通常通过独立的物理网络设备(如交换机、路由器)来实现,确保不同VPC之间的网络流量完全隔离
- 传输隔离(隧道技术):当数据包需要在 VPC 内部跨越物理网络传输时,用户数据在源VPC 内被封装为独立隧道包,通过物理网络传输,到达目标 VPC 后解封装,确保传输隔离
- 安全机制
- 安全组:类似于防火墙,用于控制
虚拟机的进出流量
,用户可以根据需要设置规则以限制或允许特定流量 - 网络 ACL:更细粒度的访问控制机制,用于控制
VPC网络的进出流量
- 安全组:类似于防火墙,用于控制
- 网络虚拟化技术
- 基于 SDN(软件定义网络) 构建虚拟网络层,通过 Overlay 技术(如 VXLAN)在物理网络上封装数据包,实现逻辑隔离
- 每个 VPC 分配唯一隧道 ID,确保不同 VPC 间流量隔离
- 虚拟网络组件: 云平台通过SDN虚拟化出各种网络组件
- 虚拟交换机: 实现 VPC 内部、同一子网内实例的二层通信。
- 虚拟路由表(vRouter): 实现 VPC 内不同子网之间的三层转发,以及进出 VPC 的流量转发(依据用户自定义的路由表)
- 虚拟网关设备:提供特定的网络边界功能。
- 互联网网关:提供公网出入访问 。
- NAT 网关:实现私有子网安全访问公网 。
- 虚拟专用网关:支持 VPN/专线连接本地网络
- 软件定义控制: 整个 VPC 的创建、配置、路由策略下发、安全策略实施都是由云平台的SDN控制器集中管理和控制的。用户通过 API 或控制台发出的网络配置指令,最终由 SDN 控制器翻译并下发到各个虚拟和物理网络设备上执行
- 自定义的网络拓扑
- IP 地址范围: 用户可以自由规划 VPC 使用的私网 IP 地址段(CIDR Block),例如 10.0.0.0/16。
- 子网划分: 可以在 VPC 内划分多个子网,将资源部署在不同的子网中,实现网络分段(如业务子网、数据库子网)
- 路由策略: 用户可以自定义路由表,精确控制 VPC 内部以及进出 VPC 的流量走向(如指向 Internet 网关、VPN 网关、对等连接、NAT 网关等)。
- 网络访问控制: 通过安全组(作用于弹性网卡/实例级别,有状态防火墙)和网络访问控制列表(作用于子网级别,无状态防火墙)实施精细化的入站和出站流量控制。
核心知识
软件定义网络SDN
- 概述
- 背景:传统网络设备(如交换机和路由器)在硬件中集成紧密耦合的
数据平面
和控制平面
,导致网络配置和管理复杂且不灵活 - 核心原因:过去网络设备处理能力有限(CPU主频<100MHz),通过集成设计可以在简单网络中增加通信效率
- 劣势:网络设备是封闭的,没有提供开放的API,无法对网络设备进行配置和管理,成为大规模网络灵活性的枷锁
- 背景:传统网络设备(如交换机和路由器)在硬件中集成紧密耦合的
- SDN基本概念
- 定义:SDN(Software-Defined Networking)是一种革命性网络架构,其核心是将
控制功能
与数据转发功能
进行分离
,并将控制逻辑集中到中央软件控制器中,从而实现对网络的灵活编程和动态管理 - 作用:打破传统网络设备(交换机/路由器)控制与数据转发耦合的局限,使
网络管理从硬件依赖转向软件驱动
- 核心特点
- 控制与转发分离:通过分离控制平面(决策层)与数据转发平面(执行层),打破传统网络设备的平面耦合,使网络行为可编程化。
- 集中化的网络控制:中央控制器基于全局网络视图(如拓扑、流量状态)动态制定策略,实现资源按需分配与弹性调度
- 开放的可编程接口:第三方应用可以通过底层开放的网络API(如OpenFlow、RESTful)编程网络行为,从而实现自定义流量策略来提高资源利用效率和网络控制的灵活性,以适应云计算、大数据等动态业务需求
- 核心原理
3+2
- 3个层面(应用层、控制层、数据层)
- 2个平面(控制平面、数据平面)
- 定义:SDN(Software-Defined Networking)是一种革命性网络架构,其核心是将
- 两个平面
- 控制平面
- 作用:生成数据的转发策略,并同步至转发平面,来构建网络状态
- 原理:负责生成和维护网络状态信息(如路由表、MAC表、安全策略),通过协议(OSPF、BGP等)学习拓扑,计算转发路径
- 数据平面
- 作用:根据转发策略执行实际的转发动作
- 原理:依据控制平面下发的规则(如转发表FIB)高速转发数据包,仅处理匹配-动作操作
- 协同价值:控制平面确保转发规则的正确性,数据平面保障转发的高效性
- 控制平面
- SDN的核心组件
- SDN控制器:网络的大脑,负责下发路由决策和策略,管理网络流量。
- 南向接口:控制器与网络设备之间的通信协议,如OpenFlow。
- 北向接口:控制器与上层应用的通信接口,允许应用通过API与网络设备交互。
- 数据平面:由传统网络设备(如交换机、路由器)构成,负责数据包的转发。
- 三个层面
- 分层
- 应用层:通过
北向接口
向控制器
提交需求,从而实现相应的业务逻辑(如负载均衡、安全应用) - 控制层:
核心控制器
通过全局网络拓扑生成网络策略,通过南向接口
下发至数据层,从而实现底层网络资源配置优化 - 数据层/基础设施层:
交换机/路由器
依据策略(流表规则)进行数据包傻瓜式的转发,无独立控制逻辑
- 应用层:通过
- 核心协议(OpenFlow)
- 原理:控制器通过OpenFlow协议向交换机下发流表(Flow Table),定义匹配域(如IP/MAC地址)及动作(转发/丢弃)
- 数据层设备仅按流表处理数据包,实现"傻瓜式"转发
- 工作流程示例
- 新流量进入交换机 → 查询本地流表无匹配 → 通过OpenFlow上报控制器 → 控制器计算路径并下发新流表 → 后续流量按规则转发
- 新流量进入交换机 → 查询本地流表无匹配 → 通过OpenFlow上报控制器 → 控制器计算路径并下发新流表 → 后续流量按规则转发
- 分层
- SDN应用案例分析
- 案例一:数据中心网络虚拟化
- 背景:数据中心网络需要支持数以万计的服务和应用,这些服务对网络的需求经常变化。在传统网络架构中,网络配置通常是静态的,调整网络设置需要人工干预,这不仅耗时而且易于出错。
- SDN解决方案详解:
- 按需分配资源:在数据中心中,SDN控制器可以实时监控网络流量和服务器负载情况。当某个服务器的负载变高时,控制器可以自动调整网络流量,将部分流量重定向到负载较低的服务器,以此来平衡负载和优化性能。
- 原理:SDN控制器可以通过分析数据流量模式,动态地创建、修改或删除虚拟局域网(VLANs)、调整路由策略、分配带宽等。这些操作可以在不中断服务的情况下完成,从而提高了数据中心网络的可用性和灵活性。
- 案例二:网络安全
- 背景:网络安全是所有组织都面临的重大挑战。传统的安全措施,如固定的防火墙规则和手动配置的入侵检测系统,往往难以及时响应新的安全威胁。
- SDN解决方案详解
- 原理:SDN可以提供一种更为动态和智能的网络安全机制。SDN控制器具备全局的网络视野,能够实时收集和分析网络流量数据。当检测到异常行为或潜在的安全威胁时,控制器可以立即执行预设的安全策略。
- 示例:若检测到某个IP地址的流量异常,控制器可以自动下发规则,将来自该IP地址的流量重定向到安全设备(如IPS或IDS)进行深入分析,或者直接阻断该流量以防止潜在的攻击。此外,SDN还可以与安全信息和事件管理(SIEM)系统集成,实现更加全面的安全管理。
- 案例一:数据中心网络虚拟化
- 总结
- 核心:通过
分离控制平面与数据平面
,并在SDN控制器上集中控制
,从而快速适应网络需求变化,按需分配资源
- 中央集权控制:中央集权获取的是地方策略的生成权,而不是实际的执行权,让地方在有限制的博弈中完成目标
- 问题:分散的策略配置难以保持一致性,可能因为资源争用难以达到全局最优策略
- 解决:中央控制器以全局数据驱动策略生成,然后将一致的策略快速下发到各个网络设备,从而动态响应变化,并达到一个全局资源利用的最优决策,最终获得最大效益。
- 核心:通过
Overlay 技术
-
背景
对比项 传统底层网络Underlay 叠加网络Overlay 数据传输 通过网络设备例如路由器、交换机进行传输 沿着节点间的虚拟链路进行传输 包封装和开销 发生在网络的二层和三层 需要跨源和目的封装数据包,产生额外的开销 报文控制 面向硬件 面向软件 部署时间 上线新服务涉及大量配置,耗时多 只需更改虚拟网络中的拓扑结构,可快速部署 多路径转发 因为可扩展性低,所以需要使用多路径转发,而这会产生更多的开销和网络复杂度 支持虚拟网络内的多路径转发 扩展性 底层网络一旦搭建好,新增设备较为困难,可扩展性差 扩展性强,例如VLAN最多可支持4096个标识符,而VXLAN则提供多达1600万个标识符 协议 以太网交换、VLAN、路由协议(OSPF、IS-IS、BGP等) VXLAN、NVGRE、SST、GRE、NVO3、EVPN 多租户管理 需要使用基于NAT或者VRF的隔离,这在大型网络中是个巨大的挑战 能够管理多个租户之间的重叠IP地址 -
基本概念
- 定义:
叠加网络overlay
是一种在传统实体网络上通过虚拟化技术建立逻辑网络,从而在不改变底层物理网络的传输模式及技术时,进行更加灵活的网络资源控制,如,跨域虚拟机迁移、多租户隔离和资源动态调度 - 具体实现
- VXLAN(Virtual Extensible LAN,虚拟可扩展局域网)
- NVGRE(Network Virtualization using Generic Routing Encapsulation,基于常用路由封装的网络虚拟化)
- STT(Stateless Transport Tunneling Protocol,无状态传输隧道协议)
- 定义:
-
VXLAN(Virtual Extensible LAN,虚拟可扩展局域网)
- 定义:是一种基于 IP 网络的 Overlay 网络技术,通过将二层以太网帧封装在 UDP/IP 报文中,在三层网络上构建虚拟的二层网络,实现跨物理网段的虚拟机通信
- 目的:旨在解决传统二层网络在云计算环境下的扩展性和多租户隔离问题。
- 原理:将二层数据帧(包含源 / 目的 MAC 地址)封装在 UDP 报文中,通过三层网络传输。
- 关键组件
- VTEP(VXLAN Tunnel Endpoint,虚拟拓展局域网隧道端点):负责 VXLAN 报文的封装与解封装,每个VTEP有唯一IP地址,用于建立隧道。通常由支持overlay协议的物理交换机、服务器虚拟化软件或专用硬件设备担任
- VNI(VXLAN Network Identifier):24位标识符(支持1600万个虚拟网络),用于区分不同虚拟网络,实现租户隔离
- VXLAN隧道:逻辑点对点通道,连接两个VTEP,通过UDP端口(默认4789)传输封装后的数据
- 报文格式:
- 工作流程示例
- 封装:虚拟机 A 发送MAC数据帧到本地 VTEP,
源VTEP
将原始以太帧
添加VXLAN头+外层UDP头+外层IP头
后封装,来构建 Overlay 报文 - 传输:依赖外层 IP 路由转发,封装后的报文通过三层网络路由至
目标VTEP
- 解封:
目标VTEP
剥离外层Overlay报文的封装
,提取内层帧并根据 VNI 和 MAC 转发至目标虚拟机
- 封装:虚拟机 A 发送MAC数据帧到本地 VTEP,
-
其他两种协议
- NVGRE 协议:
- 定义:NVGRE 是一种网络虚拟化技术,最初由微软公司提出,基于通用路由封装协议(GRE),将以太网帧封装在 GRE 头内并在三层网络上传输
- 原理:NVGRE 将原始的以太网帧作为载荷,封装在 GRE 头部之后,再加上外层的 IP 头部,形成新的报文在底层网络传输。GRE 包头中的 C 和 S 位必须置 0,同时对 Key 域进行了重新定义,将前 3 个字节定义为 VSID(Virtual Sub - Network ID,虚拟子网标识),用于标识不同的虚拟网络,最多可支持 16M 个虚拟网络,实现多租户隔离。
- 特点:NVGRE 借助成熟的 GRE 协议,具有较好的兼容性和稳定性。但其没有采用标准传输协议(TCP/IP),相对 VXLAN 等技术,其在市场上的应用普及程度稍低。
- STT 协议:
- 定义:STT 是一种 MAC Over IP 的协议,和 VXLAN、NVGRE 类似,都是把二层的帧封装在一个 IP 报文的 payload 中,通过在 IP 网络上传输封装后的报文,实现虚拟网络内的二层通信。
- 原理:STT 在封装时,除了将虚拟网络的二层包放入 IP 报文的 payload 中,还会在二层包前面添加一个构造的 TCP 头和一个 STT 头。这个 TCP 头并非完整的传输层 TCP 头,只是借用其部分特性,主要用于实现流量控制和拥塞控制等功能,STT 头则包含了一些与协议相关的控制信息。通过这种方式,将二层帧封装为可以在三层 IP 网络中传输的报文,在目的端再进行解封装,还原出二层帧并转发到相应的虚拟机。
- 特点:STT 协议的一个重要特点是无状态性,即隧道端点不需要维护每个连接的状态信息,降低了设备的资源消耗和实现复杂度。同时,由于引入了类似 TCP 的机制,在网络拥塞控制和流量管理方面具有一定优势,能够更好地适应复杂的网络环境,提高网络传输的稳定性和效率。但 STT 协议相对复杂,其实现和部署需要对相关技术有深入理解,且在实际应用中的普及度不如 VXLAN 广泛。
- NVGRE 协议:
-
行业趋势:VXLAN因成熟度与生态优势(Cisco/华为等支持)成为事实标准,而STT在VMware NSX中仍有应用,NVGRE逐渐边缘化
安全组
概述
参考博客
- 一文让你彻底搞懂什么是SDN(软件定义网络)
- VPC网络架构设计:构建安全隔离的云环境
- 还有人不知道Overlay网络?看完这个你就全懂了
- SDN讲解——iuv线上公开课
- 华为VPC私有云
- 待定引用
- 待定引用
- 待定引用