Skip to main content
开放网络的先行者与推动者—星融元
加入我们技术支持(Support)  TEL:(+86)4000989811

什么是三层交换机 (Layer 3 Switch)

更多相关内容


什么是三层交换机 (Layer 3 Switch)

随着网络规模和复杂度的不断增加,传统的二层交换机已经无法满足大规模网络的需求。为了满足更高级别的网络需求,三层交换机应运而生。本文将介绍三层交换机的基本概念、特点和应用场景。

什么是三层交换机

三层交换机是一种可以实现网络层(第三层)路由功能的网络设备。它可以通过IP地址学习和转发数据包,实现不同子网之间的通信。三层交换机通常具有多个端口,每个端口可以连接一个子网。当一个数据包到达一个端口时,交换机会将其IP地址学习到交换机的路由表中,并将数据包转发到目标子网中。

三层交换机的应用场景

三层交换机广泛应用于需要实现不同子网之间的通信的网络场景,简化了局域网下跨IP子网的数据传输配置,也能提高VLAN间路由的性能。

在传统VLAN中,交换机对VLAN流量进行标记,只有同一VLAN中的设备才能相互通信。如果不同 VLAN 上的设备需要通信,它们将需要连接到路由器的trunk口,经由路由器上实现VLAN 间路由,此时这个trunk端口就可能会产生性能瓶颈。但使用三层交换机时,交换机背板的带宽远大于单个或多个以太网口的带宽,从而消除瓶颈。

三层交换机和专用路由器有什么区别?

三层交换机的工作方式和路由器非常相似,都是通过查找IP路由表完成转发。但一般来说,三层交换机和高性能的路由器都是使用硬件(交换芯片)转发路由数据包,通用的路由器使用软件模拟执行路由功能。三层交换机比专用路由器拥有更多的以太网端口,但是没有WAN口,而且当数据包不需要跨子网,三层交换机也可以充当二层交换机使用,现在也有将三层交换机叫做多层交换机(multilayer switch)的说法。三层交换机非常适合需要子网之间高速互连的网络。

路由器通常用于家庭和企业中,用于将局域网 (LAN) 相互连接或连接到广域网 (WAN)。此外路由器承担着非常重要的NAT(网络地址转换)功能,它允许 LAN 上具有私有 IP 地址的设备通过将其私有 IP 转换为单个公共 IP 来与公共互联网上的设备进行通信。另外是各种安全功能,例如防火墙规则、访问控制列表 (ACL) 和虚拟专用网络 (VPN) 连接。一般来说路由器更适合需要高级流量管理功能,例如QoS或虚拟专用网络 (VPN))的更复杂的网络。

但现在随着交换机技术的发展,高性能的三层交换机和路由器的区别已经不大了——在开放网络技术或者网络可编程的趋势下,基于容器化软件架构(例如SONiC)和通用白盒硬件的交换机已经具备了丰富的L2,L3网络功能和QoS以及各类安全特性,甚至一些流量处理和网络安全监控等功能也可十分便捷地集成进交换机内部。新一代的开放架构盒式三层交换机相比于专用的路由器,尤其是机框式的高性能路由设备,在价格和组网灵活性和扩展性上优势明显。

了解更多方案

什么是二层交换机 (Layer 2 Switch)

更多相关内容


什么是二层交换机

二层交换机是一种可以实现局域网内不同设备之间通信的网络设备。它可以通过MAC地址学习和转发数据包,以实现局域网内不同设备之间的快速和可靠的数据传输。

二层交换机通常具有多个端口,每个端口可以连接一个局域网中的设备。当一个数据包到达一个端口时,交换机会将其MAC地址学习到交换机的MAC地址表中,并将数据包转发到目标设备所在的端口。

二层交换机与三层交换机的区别

根据它们在 OSI 模型中的运行位置,我们区分出了二层交换机和三层交换机。 二层交换机也被称为多端口桥接交换机(Multiport bridge switches,),而第 3 层交换机有时也被称为多层交换机(Multi-layer switches)。

二层交换机可以智能地将数据帧从一个端口移动到同一 VLAN 上的另一个端口,但如果跨VLAN 传输数据(也称作 VLAN 间路由)则需要一个可以路由 IP 数据包的设备。在仅有二层交换机的局域网,这一步骤通常由使用额外单臂旁挂的路由器完成。

对于拥有多个 VLAN 并在它们之间进行大量路由选择的大型网络来说,将二层交换机和路由器的功能整合到单个软硬件设备中通常会更简单、更高效。这正是三层交换机的功能。三层交换机无需依赖外部设备来路由 VLAN 之间的流量,而是可以配置为使用自身交换硬件进行路由。因此,对于需要路由的局域网,采用三层交换机可减少网络设备占用空间并提高性能。

参考:https://www.techtarget.com/searchnetworking/answer/What-are-the-different-types-of-network-switches

如果园区网没有二层交换机?

当我们需要建设一张园区网络,或许你已经形成这样的思维惯性:园区网络架构分为三层,接入,汇聚,核心。其中,接入层采用二层交换机,汇聚层采用三层交换机。如果网络规模更大,或许还需要添置高性能的核心机框路由,作为核心层,如下图所示。

传统网络“接入-汇聚-核心”三层架构

传统的架构当然能用,但,这会一直好用吗?不尽然,复杂的安全策略增删,广播风暴定位,WIFI频繁掉线,网络扩容困难等等自然不必多说。随着各行各业数字化转型加速,这样的惯性思维之下建设起来的复杂臃肿网络架构,也是时候改变了。

在中国云网络峰会上,星融元分享了云化园区网络建设新思路 (点击查看)云网络的技术完全可以有机“移植”到园区网络场景中,去提升园区内的网络质量和运维效率,助力云化园区网络建设。具有丰富的二三层网络功能SONiC 白盒交换机产品,结合彻底的云化网络架构和开放网络技术,可为企业办公和各行业的园区接入场景提供全新网络互联体验,在一个典型的中大型园区环境下仅需两款硬件便足以搭建起从接入层到核心层的完整网络架构。

    enterprise network architecture

    多级Spine-Leaf架构,破除网络性能瓶颈,网络更易扩展
    全三层路由组网,压缩二层域,根除广播风暴
    去堆叠/STP,充分利用带宽,不增加运维难度
    轻量级的路由隔离方案,更贴合业务,轻松实现一网多用
    软硬解耦的开放式网络,网络可随业务的发展灵活调整

    了解方案详情

    什么是PoE交换机 (PoE Switch)

    更多相关内容


    随着网络设备的不断发展,更多的设备需要通过网络连接进行供电。为了满足这些需求,PoE( Power over Ethernet)交换机应运而生。本文将介绍PoE交换机的基本概念、特点和应用场景。

    什么是PoE交换机

    PoE交换机是一种可以为网络设备提供电力供应的交换机。它可以通过网络线缆提供电力,无需使用额外的电源线路。PoE交换机通常用于需要通过网络连接进行供电的设备,如IP电话、无线接入点、监控摄像头等。PoE 技术可确保现有结构化布线的安全性同时保证网络的正常运行,大大降低了成本。

    PoE交换机的供电原理和协议介绍

    PoE交换机通过其内部的PSE实现供电,PSE本质上是一个电源管理芯片。交换机的交流电源将220V交流电转换为低压直流输出,供交换机内部器件使用,PSE芯片是其工作负载之一; PSE芯片向PD输出低压直流电,PD是其唯一的工作负载。PoE总供电量、单端口供电量、供电端口数等参数由PSE芯片决定。

    PSE is essentially a power management chip

    IEEE标准委员会为了解决不同制造商的电源和受电设备之间的适应性问题,先后发布了三个PoE标准:IEEE 802.3af标准、IEEE 802.3at标准、IEEE 802.3bt标准。那么这三个标准有什么区别呢?

    2003年6月,IEEE 802.3工作组制定了IEEE 802.3af标准,作为以太网标准的延伸,对网络电源的供电、传输和接收进行了仔细的规定。例如,IEEE 802.3af 标准规定 PSE 设备需要在每个端口上提供高达 15.4W 的直流电源。

    由于电缆中存在一定的功耗,受电设备只能获得 12.95 W 的功率。 2009年10月,IEEE 802.3at标准诞生,以对应大功率终端的需求。 IEEE 802.3at标准与802.3af标准兼容,并提供高达25.5W的功率以满足新的要求。

    2018年9月,为了进一步提升PoE供电能力并优化标准,IEEE标准委员会发布了IEEE 802.3bt标准。 IEEE 802.3bt 标准进一步增强了供电能力,Type 3 提供高达 51 W 的供电,Type 4 提供高达 71.3 W 的供电。还包括对 2.5GBASE-T、5GBASE-T 和 10GBASE-T 的支持,扩展了高性能无线接入点和监控摄像头等应用的使用范围。

    IEEE 802.3af标准对应的供电技术一般称为PoE供电,IEEE 802.3at标准对应的供电技术称为PoE+供电,IEEE 802.3bt标准对应的供电技术标准称为PoE++供电,也称为4PPoE。三种供电技术对应的参数如下表所示。

    Power Supply Technology802.3af(PoE)802.3at(PoE+)802.3bt(4PPoE/PoE++)802.3bt(4PPoE/PoE++)
    PoE TypeType1Type2Type3Type4
    Power Supply Distance100m100m100m100m
    PSE Output Voltage(typ.)44.0-57.0V(48V)50.0-57.0V(50V)50.0-57.0V52.0-57.0
    PSE Highest Output Power15.4W30.0W60W90W
    PD Minimum Received Power12.95W25.5W51W71W
    Maximum Operating Current350mA600mA600mA960mA
    Power Classification0-3(13/3.84/6.49/13)4(25.5)5-6(40/51)7-8(62/71)
    Cable RequirementsCAT3/CAT5CAT5 and BetterCAT5 and BetterCAT5 and Better
    Power Supply pair2 pair(Mode A/ModeB)2 pair(Mode A/ModeB)4 pair4 pair

    PoE交换机的应用场景

    随着物联网和智慧城市的兴起,无线AP、摄像头、IP电话等移动终端越来越多。该类终端部署位置非常灵活,有线供电方式难度较大,导致布线成本较高。另外,在许多大型局域网应用中,管理员需要同时管理多个终端设备。这些设备需要统一供电和管理。由于供电地点的限制,给供电管理带来很大不便。基于此,通过以太网本身提供电力支持的需求变得越来越迫切。供电正好解决了上述需求。

    星融元面向园区场景设计的接入交换机都提供了PoE款型,其中的智能供电单元支持设置PoE供电时间段,空闲时自动给PD设备断电,非空闲时自动给PD设备上电,提供更灵活的PoE供电方案;支持智能电源管理。当所有PD设备的供电需求超过PSE芯片组所能提供的供电需求时,系统将根据接口供电的优先级优先处理关键业务的供电需求。设备支持过载检测,实时监控PD设备工作负载,并在发生短路、电流电压超过阈值等异常情况时终止对PD设备供电。

    PoE StandardAsterfusion PoE Switch Model PortSwitch CapacityPower BudgetPSUFans
    IEEE 802.3af/atCX204Y-24GT-H PW1-M-AC24 x 1GBase-T, 4 x 10/25GE SFP28 ports124Gbps370W13
    IEEE 802.3af/at/btCX204Y-24GT-H PW2-M-AC24 x 1GBase-T, 4 x 10/25GE SFP28 ports124Gbps740W13
    IEEE 802.3af/atCX204Y-48GT-H PW1-M-AC48 x 1GBase-T, 4 x 10/25GE SFP28 ports148Gbps370W13
    IEEE 802.3af/at/btCX204Y-48GT-H PW2-M-AC48 x 1GBase-T, 4 x 10/25GE SFP28 ports148Gbps740W13
    IEEE 802.3af/at/btCX206Y-48GT-H PW2-M48 x 1GBase-T, 6 x 10/25GE SFP28 ports198Gbps370W23
    IEEE 802.3af/at/btCX206Y-48GT-H PW4-M48 x 1GBase-T, 6 x 10/25GE SFP28 ports198Gbps740W23
    IEEE 802.3af/at/btCX206Y-48GT-H PW8-M48 x 1GBase-T, 6 x 10/25GE SFP28 ports198Gbps1440W23

    全三层横向扩展的云化园区网络

    什么是数据中心交换机 (Data Center Switch)

    更多相关内容


    数据中心交换机 (Data Center Switch)

    当今互联网时代,数据中心交换机是数据中心网络架构不可或缺的一部分。集成多种功能的数据中心交换机,是支持数据中心各种应用和服务的核心设备。本文将介绍数据中心交换机的基本概念,特点和应用场景。

    什么是数据中心交换机

    数据中心交换机是连接数据中心各种设备的核心网络设备,包括服务器、存储设备、网络设备等。数据中心交换机具有高性能、高可靠性、高扩展性、高安全性等特点,可以实现快速、可靠和安全的数据交换和传输。

    数据中心交换机的功能包括数据转发、路由、安全、负载均衡、QoS等,可以满足不同数据中心网络的需求。数据中心交换机的性能通常使用端口速率、转发性能、交换能力等指标来衡量。

    在这其中,带宽和吞吐量是与交换机性能相关的两个术语。然而带宽和吞吐量这两个概念相似但不相同。网络带宽定义了在一段时间内网络中可能传输的数据量。网络吞吐量指的是数据在一段时间内的实际传输量。吞吐量和带宽有时也会跟时延同时提起,但时延是指数据通过网络到达目的地的速度。

    带宽的测量单位包括比特、千比特、兆位(Mb)和千兆位(Gb)。例如,一个网络的带宽为每秒 1 Gb(Gbps)。吞吐量指的是在整个网络中传输和处理的实际数据量,如果说带宽描述的是理论数据量,那么吞吐量描述的就是实际数据量。吞吐量的测量单位与带宽的比特率单位相同。一个网络的带宽可能是 1 Gbps,这意味着它能够处理 1 Gbps 的数据。但根据具体情况,其吞吐量可能只有 500 Mbps,网络处理能力只有其一半。

    数据中心交换机的特点

    数据中心交换机具有以下特点:

    1. 高可靠性:数据中心交换机通常采用冗余设计,包括冗余电源、风扇、端口等,以确保设备的高可靠性和稳定性。
    2. 高性能:数据中心交换机通常采用高速芯片和高速端口,以提供高效的数据转发和处理能力。
    3. 高扩展性:数据中心交换机通常支持堆叠、聚合、虚拟化等技术,以实现在不断增长的数据中心网络中的性能和容量扩展。
    4. 高安全性:数据中心交换机通常支持访问控制、安全认证、数据加密等技术,以保护数据中心网络的安全性和隐私性。

    数据中心交换机的应用场景

    数据中心交换机广泛应用于各种大规模数据中心、云计算、虚拟化等场景。在这些场景下,数据中心交换机可以提供高性能、高可靠性、高安全性的网络连接和数据传输,以满足业务和应用的需求。数据中心交换机还可以支持多种网络协议和技术,包括VLAN、VXLAN等,以满足不同业务和应用的需求。同时,数据中心交换机的管理和监控也非常重要,可以通过集中管理工具、可视化监控等方式实现。

    一个典型的数据中心overlay架构图如下所示,该方案采用高性能的单芯片盒式数据中心交换机进行Spine-leaf组网。这种基于SONiC(什么是SONiC?)+ 白盒交换机的开放网络解决方案,已成为了世界范围内最为流行的数据中心网络部署方案之一,适用于一般云业务,高性能计算(HPC)以及超大规模AI计算集群。

    星融元作为国内开放网络的先行者和推动者,提供25G/100G/200G/400G/800G的数据中心交换机,帮助构建中立、透明,易于运维、高性价比的网络基础设施。

    星融元私有云承载网络解决方案

    更多方案

    什么是虚拟扩展本地局域网协议VXLAN


    关注星融元


    VXLAN全称Virtual eXtensible Local Area Network即虚拟扩展局域网,是由IETF定义的NVO3(Network Virtualization over Layer 3)标准技术之一,是对传统VLAN协议的一种扩展。VXLAN的特点是将L2的以太帧封装到UDP报文(即L2 over L4)中,并在L3网络中传输。

    VXLAN的产生背景

    数据中心规模的壮大,虚拟机数量的快速增长与虚拟机迁移业务的日趋频繁,给传统的“二层+三层”数据中心网络带来了新的挑战:

     虚拟机规模受网络设备表项规格的限制

    对于同网段主机的通信而言,报文通过查询MAC表进行二层转发。服务器虚拟化后,数据中心中VM的数量比原有的物理机发生了数量级的增长,伴随而来的便是虚拟机网卡MAC地址数量的空前增加。一般而言,接入侧二层设备的规格较小,MAC地址表项规模已经无法满足快速增长的VM数量。

    传统网络的隔离能力有限

    VLAN作为当前主流的网络隔离技术,在标准定义中只有12比特,也就是说可用的VLAN数量只有4096。对于公有云或其它大型虚拟化云计算服务这种动辄上万甚至更多租户的场景而言,VLAN的隔离能力显然已经力不从心。

    虚拟机迁移范围受限

    虚拟机迁移,顾名思义,就是将虚拟机从一个物理机迁移到另一个物理机,但是要求在迁移过程中业务不能中断。要做到这一点,需要保证虚拟机迁移前后,其IP地址、MAC地址等参数维持不变。这就决定了,虚拟机迁移必须发生在一个二层域中。而传统数据中心网络的二层域,将虚拟机迁移限制在了一个较小的局部范围内。值得一提的是,通过堆叠、SVF、TRILL等技术构建物理上的大二层网络,可以将虚拟机迁移的范围扩大。但是,构建物理上的大二层,难免需要对原来的网络做大的改动,并且物理大二层网络的范围依然会受到种种条件的限制。

    VXLAN采用L2 over L4(MAC-in-UDP)的报文封装模式,将二层报文用三层协议进行封装,可实现二层网络在三层范围内进行扩展,同时满足数据中心大二层虚拟迁移和多租户的需求。

    VXLAN的发展历程

    协议最早由VMware、Arisa网络、Cisco提出,后期加入华为、博科、Red Hat、Intel等公司支持,IETF于2012年8月发布第一个RFC Internet Draft版本,最新的标准是2014年8月RFC 7348。

    VXLAN的相关概念

    • NVO3(Network Virtualization Over Layer3 3层之上的网络虚拟化)

    基于IP Overlay的虚拟局域网络技术统称为NVO3。

    • NVE(Network Virtrualization Edge网络虚拟边缘节点)

    是实现网络虚拟化的功能实体,VM里的报文经过NVE封装后,NVE之间就可以在基于L3的网络基础上建立起L2虚拟网络。网络设备实体以及服务器实体上的VSwitch都可以作为NVE。

    • VTEP(VXLAN Tunnel Endpoints,VXLAN隧道端点)

    VXLAN网络的边缘设备,是VXLAN隧道的起点和终点,VXLAN报文的相关处理均在这上面进行。VTEP既可以是一个独立的网络设备,也可以是虚拟机所在的服务器。

    • VNI(VXLAN Network Identifier,VXLAN 网络标识符)

    VNI类似VLAN ID,用于区分VXLAN段,不同VXLAN段的虚拟机不能直接二层相互通信。一个VNI表示一个租户,即使多个终端用户属于同一个VNI,也表示一个租户。VNI由24比特组成,支持多达16M((2^24-1)/1024^2)的租户。

    • VXLAN隧道

    “隧道”是一个逻辑上的概念,它并不新鲜,比如大家熟悉的GRE。说白了就是将原始报文“变身”下,加以“包装”,好让它可以在承载网络(比如IP网络)上传输。从主机的角度看,就好像原始报文的起点和终点之间,有一条直通的链路一样。而这个看起来直通的链路,就是“隧道”。顾名思义,“VXLAN隧道”便是用来传输经过VXLAN封装的报文的,它是建立在两个VTEP之间的一条虚拟通道。

    • BD(bridge domain),vxlan转发二层数据报文的广播域,是承载vxlan数据报文的实体。类似于传统网络中VLAN的概念,只不过在VXLAN网络中,它有另外一个名字BD。不同的VLAN是通过VLAN ID来进行区分的,那不同的BD是通过VNI来区分的。
    • VXLAN报文格式

    VXLAN报文格式

    图1: VXLAN报文格式

    VXLAN标准报文格式

    图2:VXLAN标准报文格式

    VXLAN的工作原理

    VXLAN网络中的通信过程

    结合如下示例简要说明VXLAN网络中的通信过程:

    VXLAN通信过程

    图3:VXLAN通信过程

    图3中 Host-A 和 Host-B 位于 VNI 10 的 VXLAN,通过 VTEP-1 和 VTEP-2 之间建立的 VXLAN 隧道通信。

    数据传输过程如下:

    • Host-A 向 Host-B 发送数据时,Host-B 的 MAC 和 IP 作为数据包的目标 MAC 和 IP,Host-A 的 MAC 作为数据包的源 MAC 和 IP,然后通过 VTEP-1 将数据发送出去。
    • VTEP-1 从自己维护的映射表中找到 MAC-B 对应的 VTEP-2,然后执行 VXLAN 封装,加上 VXLAN 头,UDP 头,以及外层 IP 和 MAC 头。此时的外层 IP 头,目标地址为 VTEP-2 的 IP,源地址为 VTEP-1 的 IP。同时由于下一跳是 Router-1,所以外层 MAC 头中目标地址为 Router-1 的 MAC。
    • 数据包从 VTEP-1 发送出去后,外部网络的路由器会依据外层 IP 头进行包路由,最后到达与 VTEP-2 连接的路由器 Router-2。
    • Router-2 将数据包发送给 VTEP-2。VTEP-2 负责解封数据包,依次去掉外层 MAC 头,外层 IP 头,UDP 头 和 VXLAN 头。
    • VTEP-2 依据目标 MAC 地址将数据包发送给 Host-B。

    上面的流程我们看到 VTEP 是 VXLAN 的最核心组件,负责数据的封装和解封。

    隧道也是建立在 VTEP 之间的,VTEP 负责数据的传送。

    VTEP节点工作机制

    通过以上通信步骤的描述可以看到,VTEP节点在VXLAN网络通信中起到了至关重要的作用。在VXLAN网络通信中,VTEP节的职责主要有3项:

    • 将虚拟网络通信的数据帧添加VXLAN头部和外部UDP和IP首部。
    • 将封装好的数据包转发给正确的VTEP节点。
    • 收到其他VTEP发来的VXLAN报文时,拆除外部IP、UDP以及VXLAN首部,然后将内部数据包交付给正确的终端。

    对于功能2)的实现,即VXLAN数据包的转发过程。当VTEP节点收到一个VXLAN数据包时,需要根据内部以太网帧的目的MAC地址找到与拥有该目的地址的终端直接相连的VTEP地址,因此,这里需要一个目的MAC地址和VTEP节点IP地址的映射关系,VTEP节点利用一个转发表来存储此映射关系。转发表的格式为:<VNI, Inner Dst MAC,VTEP IP>,即给定VNI和目的MAC地址后映射到一个VTEP IP地址。

    需要说明的是,映射VTEP节点IP地址时,之所以需要VNI的信息,是因为当存在多租户的情况下,各个租户将会独立组网,此时,多个租户设定的MAC地址有一定的概率会出现重叠,此时我们必须保证每个租户的网络都能独立地正常通信,因此,在为每个租户配置唯一的一个VNI的情况下,给定VNI和目的MAC地址,唯一确定一个VTEP地址。

    下图4是一个样例,对于下图中的网络拓扑,分别给出了两个VTEP节点的转发表:

    VTEP节点工作过程

    图4:VTEP节点工作过程

    上图中给出了6个终端,分别属于2个租户,其中,终端T1、T2和T4属于租户1,分配VNI为1,终端T3、T5和T6属于租户2,分配VNI为2,两个VTEP节点的转发表已在图中给出。

    每一个VTEP节点都必须拥有完整的转发表才可以正确地进行转发的功能,转发表的学习过程可以基于这样一种简单的策略:通过ARP报文学习,当收到终端发送的数据帧时,首先根据收到数据的端口判定数据发送方的VNI值,根据VNI和数据帧中的目的MAC查找对应的VTEP节点,如果查找成功,则转发,否则,在当前VXLAN网络中广播ARP请求报文,这样,连接目的MAC终端的VTEP节点就会发送ARP回答报文,这样就学习到了新的转发表项。

    需要说明的是,在多租户的环境下,基于信息安全等因素,各个租户的流量必须实现隔离,因此在发送广播ARP请求报文时,不可以直接在多租户的环境中广播,必须保证只有当前VXLAN网络的终端可以收到广播报文,因此,和物理网络中的ARP广播请求的实现有所不同,这里需要通过IP组播机制来模拟广播。

    因此,VTEP节点还需要保存对应于每个租户的VNI值的组播域,即对于每一个VNI值,存储包含当前VXLAN网络中终端的所有VTEP节点的IP,用于ARP广播时的组播操作。

     VXLAN二层网关与三层网关

    • VXLAN二层网关:用于终端接入VXLAN网络,也可用于同一VXLAN网络的子网通信。
    • VXLAN三层网关:用于VXLAN网络中跨子网通信以及访问外部网络。

    VXLAN集中式网关与分布式网关

    根据三层网关部署方式的不同,VXLAN三层网关又可以分为集中式网关和分布式网关。

    • VXLAN集中式网关

    集中式网关是指将三层网关集中部署在一台设备上,如下图所示,所有跨子网的流量都经过这个三层网关转发,实现流量的集中管理。

    5VXLAN集中式网关

    部署集中式网关的优点和缺点如下:

    • 优点:对跨子网流量进行集中管理,网关的部署和管理比较简单。
    • 缺点:转发路径不是最优:同一二层网关下跨子网的数据中心三层流量都需要经过集中三层网关绕行转发(如图中橙色虚线所示)。
    • ARP表项规格瓶颈:由于采用集中三层网关,通过三层网关转发的终端的ARP表项都需要在三层网关上生成,而三层网关上的ARP表项规格有限,这不利于数据中心网络的扩展。
    • VXLAN分布式网关

    VXLAN分布式网关是指在典型的“Spine-Leaf”组网结构下,将Leaf节点作为VXLAN隧道端点VTEP,每个Leaf节点都可作为VXLAN三层网关(同时也是VXLAN二层网关),Spine节点不感知VXLAN隧道,只作为VXLAN报文的转发节点。如下图所示,Server1和Server2不在同一个网段,但是都连接到一个Leaf节点。Server1和Server2通信时,流量只需要在Leaf1节点进行转发,不再需要经过Spine节点。

    部署分布式网关时:

    • Spine节点:关注于高速IP转发,强调的是设备的高速转发能力。
    • Leaf节点:作为VXLAN网络中的二层网关设备,与物理服务器或VM对接,用于解决终端租户接入VXLAN虚拟网络的问题。作为VXLAN网络中的三层网关设备,进行VXLAN报文封装/解封装,实现跨子网的终端租户通信,以及外部网络的访问。

    VXLAN分布式网关

    图6:VXLAN分布式网关

    VXLAN分布式网关具有如下特点:

    同一个Leaf节点既可以做VXLAN二层网关,也可以做VXLAN三层网关,部署灵活。

    Leaf节点只需要学习自身连接服务器的ARP表项,而不必像集中三层网关一样,需要学习所有服务器的ARP表项,解决了集中式三层网关带来的ARP表项瓶颈问题,网络规模扩展能力强。

    VXLAN在星融元交换机上的配置实例

    下面实例中星融元的两台CX306交换机通过配置BGP EVPN来实现VXLAN网络的建立。

    CX306交换机通过配置BGP EVPN来实现VXLAN网络的建立

    全文请注册/登录后获取:https://asterfusion.com/d-20220617/

    相关文章

    什么是 防火墙IP TABLES


    关注星融元


    IP Tables相关名词释义

    • iptablesiptables是一个用户空间工具,系统管理员可以通过它配置Linux内核防火墙的IP数据包的过滤规则,而这些规则的具体实现是由内核空间的netfilter完成的;
    • netfilternetfilter是4.x版本Linux内核开始引入的一个子系统,它作为一个通用的、抽象的框架,提供一套完整的hook函数管理机制,实现了诸如数据包过滤、网络地址转换和基于协议类型的连接跟踪等功能;
    • hook函数:Linux内核中的有一套hook函数机制,可在不同hook点位置监控网络数据包,并执行丢弃、修改等操作,Linux内核的网络防火墙就是通过此机制实现的。

    IP Tables的发展历史

    目前iptables已在2.4、2.6及3.0版本的Linux内核中集成,旧版的Linux内核则使用ipchains及ipwadm来达成类似的功能,而2014年1月19日起发行的新版Linux内核(3.13+)则使用nftables取代iptables。

    • Linux内核(2+):ipwadm;
    • Linux内核(2):ipchains;
    • Linux内核(4、2.6、3.0+):iptables;
    • Linux内核(13+):nftables。

    iptables虽然强大但是不可能永远适用于当前的技术发展,任何技术都有其局限性。位于用户空间的iptables,也在被抛弃,RHEL7/CentOS7中已经不再直接使用iptables,而选择firewalld作为他的前端配置工具。

    iptables已在Linux内核中集成

    IP Tables原理简介

    管理工具iptables是与内核网络协议栈中有包过滤功能的5个hook交互来完成工作的,这些内核hook构成netfilter框架。每个进出网络的包在经过协议栈时都会触发这些hook,数据包在内核中的处理路径如下图所示。

    数据包在内核中的处理路径

    通过iptables下发的规则,最终都会与上图中标注的5个hook点位关联。iptables将这些规则,按照不同的作用划分到不同的表中,按照划分常用的有raw、mangle、filter、nat四张表,即为四表。而关联在5个hook点位的有优先级顺序的规则链,即为五链。这种配置管理逻辑,也就是使用iptables的人都最为熟知的“四表五链”。

    下面是iptables常用的四种table类型及其具体作用:

    iptables常用的四种table类型

    • Filter table是最常用的table之一,用于判断是否允许一个包通过;
    • Nat table用于实现数据包的IP地址转换;
    • Mangle table用于修改包的IP头;
    • Raw tableiptables防火墙是有状态的,raw table其唯一目的就是让数据包绕过连接跟踪机制。

    表和链的组织逻辑是:不同的表可以作用在不同的链(hook点位)中,在具体链中多种表之间又有优先级顺序,具体如下图所示,红色箭头方向表示各表的优先级顺序依次从高到低排列。

    具体链中多种表之间又有优先级顺序

    我们通过iptables下发的规则就放置在特定table的特定chain里面,当chain被触发调用的时候,包会依次匹配chain里面的规则,每条规则都有一个匹配部分和一个动作部分。规则的匹配部分指定了一些条件,数据包必须满足这些条件才会和将要执行的动作进行关联。匹配系统非常灵活,还可以通过iptables extension扩展其功能。规则可以匹配协议类型、源目地址、源目端口、源目网段、接收或发送的网卡、协议头、连接状态等条件。这些综合起来,能够组合成非常复杂的规则来区分不同的网络流量。

    总结

    netfilter包过滤框架和iptables是Linux服务器上大部分防火墙解决方案的基础。其中,netfilter的内核hook与Linux内核协议栈配合得足够紧密,提供了数据包在经过系统时的强大控制能力。而iptables正是基于这些能力提供了一个灵活的、可扩展的、将策略需求转化到内核的方法。理解了这些不同部分是如何联系到一起的,就可以使用iptables创建出可靠的防火墙策略。

    IP Tables的应用场景

    通过上文可以清楚地了解到,iptables其实是存在于操作系统应用层,作为配置内核中安全框架netfilter的一个客户端。通过iptables可以实现常规防火墙的几乎所有的功能,包括但不限于:

    • 提供基于状态的源目IP地址、源目端口、访问时间等维度的访问控制;
    • 提供双向NAT能力,配合Linux的网络工具可以在网络出口实现链路负载均衡功能;
    • 利用iptables的limit模块,可以实现轻量的DDoS攻击防护;
    • 利用iptables的connlimit模块,可以防护CC攻击;
    • 利用iptables的string模块,对数据包中的内容进行检查,实现报文深度过滤或者数据脱敏功能;
    • 按需管理iptables的日志,可以为不同规则设置不同的日志标识,以便灵活记录数据流日志。

    除了作为常规的主机/网络防火墙外,iptables也作为重要的网络组成部分,存在于Docker、K8S、OpenStack的Neutron项目以及众多成熟且应用广泛的开源项目中。

    IP Tables的部署实例

    首先,简单了解下iptables命令的语法格式,命令格式可分解为如下几部分。

    iptables -t <table> <cmd> <pattern> <action>

    其中,-t <table>或–table <table>选项用来指定要查看或修改的表(raw、mangle、nat、filter),命令行在不使用-t参数时默认为filter表。<cmd>部分可选择对规则要进行的操作,即增删改查操作,<pattern>为规则的匹配部分,<action>为安全规则的动作部分,对匹配到的数据包做指定的动作。

    1. 屏蔽指定IP地址:若发现某个恶意攻击者并确定其IP地址,此时可以使用如下命令将指定IP的数据包丢弃。

    BLOCK_THIS_IP=”x.x.x.x”

    iptables -A INPUT -i eth0 -p tcp -s “$BLOCK_THIS_IP” -j DROP

    此命令行,<cmd>部分使用-A INPUT参数将屏蔽规则插入到filter表(默认)的INPUT链尾。

    1. 网卡流量转发:如果在某些场景下使用服务器作为网关,则可能需要两张网卡分别接内网和公网,然后需要将内网的网卡流量转发到连接到公网的网卡中,可以使用iptables实现此功能,命令行如下所示。

    iptables -A FORWARD -i eth0 -o eth1 -j ACCEPT

    1. 端口流量转发:若需要进行端口级别的流量转发,使用iptables同样可以完成,此命令会将2222端口流量转发到22。

    iptables -t nat -A PREROUTING -p tcp -d 192.168.1.5 –dport 2222 -j DNAT –to 192.168.1.5:22

    1. 使用扩展模块实现WEB流量简单负载:下面将使用nth扩展模块,将80端口流量负载均衡到三台服务器。

    iptables -A PREROUTING -i eth0 -p tcp –dport 80 -m state –state NEW -m statistic –mode nth –every 3 –packet 0 -j DNAT –to-destination 192.168.1.11:80

    iptables -A PREROUTING -i eth0 -p tcp –dport 80 -m state –state NEW -m statistic –mode nth –every 2 –packet 0 -j DNAT –to-destination 192.168.1.12:80

    iptables -A PREROUTING -i eth0 -p tcp –dport 80 -m state –state NEW -m statistic –mode nth –every 1 –packet 0 -j DNAT –to-destination 192.168.1.13:80

    在上面的命令行中,采用statistic模块的nth模式来实现轮询的负载均衡效果,参数含义如下:

    • –every n表示每n个命中就会真正执行一次;
    • –packet p表示在这条规则的第几次命中时真正执行(0<=p<=n-1)。

    需要注意的是,每条规则有独立的计数器,因此-m statistic –mode nth –every 3 –packet 0表示每三个包触发一次动作,在第0次命中时执行动作,在第1次和第2次命中后不触发动作,而是将数据包交给下一条规则处理。同理,第二个包的匹配规则为-m statistic –mode nth –every 2 –packet 0,第三个包的匹配规则为-m statistic –mode nth –every 1 –packet 0。

    1. 使用扩展模块实现DDoS流量清洗:下面将使用limit扩展模块,来实现简单的DDoS攻击流量清洗。

    iptables -A INPUT -p tcp –dport 80 -m limit –limit 5/minute –limit-burst 100 -j ACCEPT

           关于limit限速模块,各参数的含义如下:

    • –limit n/s表示s时间段内会新签发n个令牌,时间单位有秒、分、时、天;
    •  –limit-burst m表示初始令牌数量以及令牌桶的最大容量。

    IP Tables的配置总结

    IP Tables的配置

    相关文章

    在交换机上配置部署 RoCEv2 / EVPN-VXLAN / MC-LAG


    关注星融元


    本文主要描述如何在Asterfusion CX306P-48S(以下简称CX306P)搭建的模拟网络上部署如下解决方案:

    • RoCEv2:在模拟网络上承载RDMA应用,通过CX306P的PFC和ECN功能,为所承载的RDMA应用构建无损的RoCEv2环境。
    • BGP EVPN和VXLAN:在模拟网络上承载VXLAN网络,将原本在Open vSwitch上进行的封装、去封装全部从Server端卸载到CX306P内的VTEP上,并且在模拟网络上启动BGP EVPN,自动化地创建VXLAN隧道、传递虚拟网络路由。
    • MC-LAG:在模拟网络上为服务器创建一个高可靠环境,确保每台服务器都能通过标准LAG双上联到两台CX306P上,这两台CX306P通过MC-LAG被虚拟化成一台高可靠的交换节点。

    如上解决方案共用一个物理拓扑,如图1所示:

    CX-N的部署拓扑图

    部署过程中所涉及到的设备、接口及管理网口的IP地址如下表所示:

    设备名称接口IP地址
    交换机A管理口192.168.4.102
    交换机B管理口192.168.4.105
    Server1管理口192.168.4.2
    Server2管理口192.168.4.133
    Server3管理口192.168.4.150

    RoCEv2 / EVPN-VXLAN / MC-LAG部署的硬件与软件环境

    部署环境中涉及到的硬件和软件如下表所示:

    名称型号硬件指标数量备注
    交换机CX306P《参见产品彩页》2
    服务器1、至少8G内存
    2、磁盘不少于500G
    3、Server1和Server3的BIOS开启CPU嵌套虚拟化(INTEL:VT-x, AMD:AMD-V)
    3Server1和Server3各需要安装一块Mellanox ConnectX-4网卡(25G)
    光模块10GSFP+12
    100GQSFP284
    光纤多模10G/25G适用6
    多模100G适用2
    软件版本备注
    操作系统Centos7.6安装时选择Compute Node 模式,根目录/至少500G
    iperf3可以直接yum install iperf3安装,3台server均需要安装
    Mellanox网卡驱动4.7-3.2.9.0具体参考《解决方案-Mellanox网卡驱动安装-e-20200211-v1.1》
    tcpdump可以直接yum install tcpdump

    RoCEv2的配置部署

    逻辑组网与配置思路

    RoCEv2的配置部署 逻辑组网与配置思路

    配置思路:

    • 为交换机A和交换机B配置IP和路由
    • 分别为Server1、Server2、Server3配置IP和路由网关
    • 配置Server1的PFC功能
    • 配置交换机A的ACL打标DSCP功能
    • 使能交换机A和交换机B的QOS功能
    • 先在Server1发送IB流量,观察队列流量
    • 停掉Server1上的流量发送,在Server2发送普通TCP背景流量,观察队列流量
    • 观察ACL规则匹配情况
    • 将Server1和Server2的流量都打起来,观察交换机B的出口拥塞情况
    • 配置交换机A和交换机B的PFC功能
    • 观察测试PFC功能
    • 关闭交换机A和交换机B的PFC功能,配置交换机B的ECN功能
    • 配置服务器ECN相关设置
    • 测试ECN功能

    BGP EVPN和VXLAN配置部署

    逻辑组网与配置思路

    BGP EVPN和VXLAN配置部署逻辑组网与配置思路

    配置思路:

    • 配置交换机A和交换机B的HOSTNAME
    • 配置交换机A的EVPN
    • 配置交换机B的EVPN
    • Server1上创建虚机和VLAN
    • Server3上创建虚机和VLAN
    • 测试Server1和Server3的连通性
    • 查看交换机A的路由信息
    • 查看交换机B的路由信息

    MC-LAG的配置部署思路

    逻辑组网与配置思路

    MC-LAG的配置部署思路 逻辑组网与配置思路

    配置思路:

    • 分别为Server1、Server3配置LAG
    • 交换机A创建PortChannel,并添加接口
    • 交换机A创建VLAN,并添加成员
    • 交换B创建PortChannel,并添加接口
    • 交换机B创建VLAN,并添加成员
    • 交换机A配置MC-LAG
    • 交换机B配置MC-LAG
    • 测试链路故障
    • 测试设备故障

    全文请注册/登录后获取:https://asterfusion.com/d-20220617/

    相关文章

    对星融元产品感兴趣?

    立即联系!

    返回顶部

    © 星融元数据技术(苏州)有限公司 苏ICP备17070048号-2