Windows 双网卡链路聚合解决方案

Windows 双网卡链路聚合解决方案

  • 链路聚合
  • 方案1:Metric
    • 介绍
    • 操作
  • 方案2:NetSwitchTeam
    • 介绍
    • 操作
  • 方案3:NIC
    • 介绍
    • 操作
  • 方案4:Intel® PROSet

链路聚合

指将多个物理端口汇聚在一起,形成一个逻辑端口,以实现出/入流量吞吐量在各成员端口的负荷分担,交换机根据用户配置的端口负荷分担策略决定网络封包从哪个成员端口发送到对端的交换机。当交换机检测到其中一个成员端口的链路发生故障时,就停止在此端口上发送封包,并根据负荷分担策略在剩下的链路中重新计算报文的发送端口,故障端口恢复后再次担任收发端口。链路聚合在增加链路带宽、实现链路传输弹性和工程冗余等方面是一项很重要的技术。

方案1:Metric

介绍

  • 在任务管理器中看到两个网卡都有数据流量,这并非说明操作系统支持自动带宽叠加,这是默认策略导致的。

  • 例如操作系统会发送简单的请求以判断网络连接的可用性。这就可能导致看到两个网卡都有少量的数据流量。

  • 在默认情况下,无论路由优先级(Metric)如何,所有的操作系统都会优先访问对应网卡默认网关所在的网段。例如网卡1的默认网关是192.168.1.1,网卡2的默认网关是10.10.10.1,而子网掩码都是255.255.255.0,此时我们访问10.10.10.2,则系统默认直接由网卡2进行访问。这就是路由表的默认规则。因此我们设置外网使用哪个网卡,就是设置到指定网关地址Metric最低的网卡即可。

  • 在windows操作系统中,如果两个网卡速率相同,设置相同跃点数的方案可以实现负载均衡和外网带宽叠加,但是点对点速率不会有提升。例如内网传输文件到NAS的速度不会有叠加,但是在迅雷下载的时候速度会有明显提升。如果希望内网传输文件到NAS的速度进行叠加,可以在NAS和win10中同时启用SMB3.0实现多通道负载均衡。

操作

  • 首先在本地电脑查看路由信息,拿win10系统举例子,在左下角开始菜单,点击右键,打开命令窗口。
    在这里插入图片描述

  • 在命令窗口输入:route print 查看它的跃点数,如果两个数不一样,说明电脑只是用了一个网卡。我的一个是55,一个是25。
    在这里插入图片描述

  • 修改成相同的跃点数,系统就让两个网卡一起工作,带宽叠加使用,网速起飞。

    • 右击鼠标属性;
    • 选择internet版本协议IPv4;
    • 再点击属性;
    • 弹窗选择高级;
    • 取消勾选;
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
  • 同样的方法,把第二个网卡跃点数也改成跟之前网卡相同的跃点数即可。

  • 再次命令窗口输入:route print 查看它的跃点数,两个网卡的就会相同。

  • 在任务管理器中查看性能,有线和WIFI在同时工作。

在这里插入图片描述
在这里插入图片描述

方案2:NetSwitchTeam

介绍

  • NetSwitchTeam是实现链路聚合的推荐方案。同样的,该方案不会叠加内网点对点传输的速率。

操作

  • 通过Windows PowerShell(管理员),执行Get-NetAdapter查看当前网卡列表详情。
  • 创建一个NetSwitchTeam:
New-NetSwitchTeam -Name "SwitchTeam01" -TeamMembers "Ethernet 2","Ethernet 3"

Ethernet 2和Ethernet 3就是Get-NetAdapter得到的Name值,可以是中文,例如以太网 4。
在这里插入图片描述

  • 此时访问网络连接状态,可以看到SwitchTeam01的速度是2.0Gbps。
    在这里插入图片描述

  • 此时通过外网测速能够看到明显的叠加效果。
    在一个SwitchTeam以内的两个网卡是自动相互协助的,不需要再点击切换到Team。

  • 删除聚合使用

Remove-NetSwitchTeam –Name "SwitchTeam01"

方案3:NIC

介绍

  • 此方案仅支持 Windows Server 平台

  • 什么是NIC组合
    简单来讲,NIC组合就是把同一台服务器上的多个物理网卡通过软件绑定成一个虚拟的网卡,也就是说,对于外部网络而言,这台服务器只有一个可见的网卡。对于任何应用程序,以及本服务器所在的网络,这台服务器只有一个网络链接或者说只有一个可以访问的IP地址。 微软NIC组合,也称为负载平衡/故障转移 (LBFO),允许多个网络适配器组合成一个,这样做的目的可以带来带宽聚合、解决网络连接失败过程中的故障转移;它应用于Windows Server 2012的所有版本中,包括核心版和图形界面完全版;NIC组合在 Windows 8 中是不可用的,但是 NIC组合的用户界面和 NIC组合的 Windows PowerShell Cmdlet命令行 都可以运行 Windows 8, 以便于 Windows 8 PC 可以用于管理一个或多个 Windows Server 2012主机上的NIC组合。利用NIC组合技术,除了可以提高网络速度以外,还可以实现不同网卡之间的负载均衡(Load balancing)和网卡冗余(Fault tolerance)。如图所示,NIC实现的具体功能:
    1)带宽聚合提高网络速度并在不同网卡之间进行负载均衡
    2)进行流量故障转移,以防止在网络组件发生故障时失去连接。
    在这里插入图片描述

  • NIC组合要求:
    NIC 组合允许多个网络适配器组合成一个,该适配器可以用于分离使用 VLAN 的流量,对于集群服务器可支持多组(比如业务组和私网心跳组)。通过故障转移提供故障保护的所有模式都至少需要两个以太网网络适配器。Windows Server 2012 在一个组中可支持多达 32 个网络适配器

  • 成组模式:

    • 静态成组(IEEE 802.3ad draft v1):此模式配置交换机和主机之间需要哪种链接组合形式,由于这是一个静态配置的解决方案有任何附加协议,所以就不会因为交换机或主机因为电缆的插入错误或其它错误而导致组合的形成。此种模式中,网卡可以工作于不同的速度,就是说可以用不通速度的网卡建立组合, 但同样要求交换机完全支持IEEE 802.3ad 标准,一般情况下,服务器级别的交换机通常支持此模式。

    • 交换机独立:这是配置时的默认值,此模式不要求交换机参与组合配置,由于独立模式下的交换机不知道网卡是主机上组合一部分,网卡可以连接到不同的交换机。

    • LACA动态组合(IEEE 802.1ax, LACP):LACA动态组合是到同一台交换机的链路聚合,只不过不是静态配置的,而是动态构成(也就是自动协商)的。它是通过一种智能的链路协商协议LACP (Link Aggregation Control Protocol)来实现的。LACP原本用于交换机和交换机之间的链路聚合,启用了LACP协议的2台交换机会相互发送LACP的协商报文,当发现2者之间有多条可用的链路的时候,自动将这些链路组合成一条带宽更大的逻辑链路,从而利用负载均衡来实现加宽交换机间链路带宽的目的。

  • 负载平衡模式:

    • 地址哈希:默认,这是一个基于哈希算法的处理负载平衡的模式。
      可以指定哈希函数的输入包括以下组件:
      源和目的MAC地址
      源和目标IP地址
      源和目的TCP端口和源IP和目的IP地址、
      启用该方式后,数据包到达Teaming后,会根据目的地址信息(MAC地址,IP地址和端口号)执行哈希算法,通过算法的结果,NIC Team决定由哪块物理网卡发送数据包。这种方式无法控制流量的走向,如果有大量数据是流向一个目标地址,那么只会通过一块物理网卡来发送。

    • Hyper-v端口:
      由于虚拟机有独立的 MAC 地址,它的MAC地址或端口可以根据流量将它连接到的Hyper-V交换机,使用这个方案的虚拟化还有一个优势,因为相邻的交换机总是能看到一个特定的MAC地址对一个且只有一个连接的端口,交换机将基于目标 MAC (VM MAC) 地址的多个链路上分发入口负载(通信量从交换机到主机),如果主机只有几台虚拟机,当虚拟机的队列(VMQs)被用作一个队列可以放置在特定的达到流量预期NIC上,这是特别有用的,此模式对负载平衡来说,十分精确。这种模式也总是将限制在一个单独的 VM (亦即,从单个交换机端口的通信量) 到一个单一的界面上的可用带宽。Windows Server 2012以Hyper-V 交换机端口作为标识符,而不是源MAC地址,在某些情况下,在交换机上的端口上,虚拟机可以使用一个以上的MAC地址。
      Hyper-V的模式,与无法控制的地址哈希相比,这种方式效率更高,数据会通过绑定虚拟网卡的不同物理网卡传输,同时这种绑定是基于每个虚拟网卡,而不是每台虚拟机的。如果是使用Hyper-V外部虚拟交换机建议选择这种方式。

    • 动态
      这种方式是在Windows Server 2012 R2中新引入的方式,也是最优化的方式,数据会被平分到所有的成员网卡上,最大效率的利用带宽。
      其它属性——备用适配器:
      可以让其中的一个网卡当备用网卡;也可以让所有网卡都处于活动状态。

操作

* 默认情况下,NIC组合是禁用的,如下:

wKiom1f44aqCcGl7AABNuG9Chug638.jpg

wKiom1f44aqCcGl7AABNuG9Chug638.jpg

  • 将其启用,然后进行新建NIC组合

wKioL1f44gnj7rycAAAp2uqNLok615.jpg

  • 点击组中“任务”—新建。选择需要组合的网卡,其他属性中,设定交换机独立及哈希地址。

wKioL1f44pWD72cuAACBJzfQdxM566.jpg-wh_50

  • 配置成功后:

在这里插入图片描述

  • 我们再来看一下网络连接情况:两个以太网变成了 NEW NIC,即NIC组合。

在这里插入图片描述

  • 然后再设置NEW NIC的IP地址、掩码和网关等信息就可以正常通信联网了。
    另外Windows Server 2012 R2 中的网卡捆绑还能用于虚拟机。这样虚拟机即可通过虚拟网络适配器连接到多个 Hyper-V 交换机,就算该交换机下的一个网络适配器断开也能维持连接。在使用单根 I/O 虚拟化(SR-IOV)等功能时,这一特性尤为重要,因为 SR-IOV 通讯并不通过 Hyper-V 交换机传输,因此无法受到 Hyper-V 交换机中网卡捆绑的保护。通过对虚拟机本身进行捆绑,管理员可设置最多两个 Hyper-V 交换机,每个连接到一个支持 SR-IOV 的专用网络适配器。这样即可实现:

    • 每个虚拟机通过支持 SR-IOV 的一个或多个网络适配器安装虚拟 Function,随后一旦有网络适配器断开,虚拟机依然可从主要虚拟 Function 故障转移到后备虚拟 Function。

    • 或者虚拟机可通过一个网络适配器获得一个虚拟 Function,并通过非虚拟 Function 网络适配器连接到其他交换机。如果关联虚拟 Function 的网络适配器断开,通讯即可不断开直接故障转移到其他交换机。

  • 备用适配器下,默认为“无(所有网络适配器处于活动状态,即active-active)”
    如果管理员希望网络接口具有VLAN功能,则点击“默认VLAN”以打开VLAN对话框以便选择相应的VLAN ID

  • 最后就是使用Windows PowerShell也可以创建NIC Teaming

    • 以管理员身份打开Windows PowerShell
    • 使用“Get-NetAdapter”查询当前主机所有网卡信息

在这里插入图片描述

- 使用“New-NetLbfoTeam”命令将NIC1和NIC2添加到NIC组“AppNIC”中

在这里插入图片描述

- 使用“Get-NetLbfoTeam”查看NIC Teaming信息

在这里插入图片描述

- 使用“Set- NetLbfoTeam”修改NIC Teaming成组模式

在这里插入图片描述

- 使用“Set- NetLbfoTeam”修改NIC Teaming负载平衡模式

在这里插入图片描述

- 使用一下命令设置NIC Teaming的模式为交换机独立模式,负载平衡模式为Transporports(地址哈希)

在这里插入图片描述

- 使用“Get-NetLbfoTeammember”查看NIC Teaming网络适配器状态,当前显示的active-active

在这里插入图片描述

- 使用“Set-NetLbfoTeammember”修改NIC为standby模式

在这里插入图片描述

方案4:Intel® PROSet

* 右键网卡的属性,打开配置,点击分组,进行设置-模式的话一般选择下面的三个选项:
   1.负载均衡(次选)英文名称为Load Balance   
   2.动态链路聚合(优选)英语:Dynamic Link Aggregation
   3.静态链路聚合

* 选择好模式之后,选择主设备和副设备,然后确定即可。

    设置好分组之后,要更新对应网卡英特尔官网驱动。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/304272.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

多级缓存、OpenResty缓存、Redis分布式缓存、进程缓存

目录标题 一、预期表现二、环境配置1、nginx环境2、OpenResty环境3、redis环境3.1 安装redis3.2 配置启动命令3.3 配置主从3.4 哨兵 4、进程缓存环境 三 、主要编码工作3.1、缓存主要问题解决3.1.1 缓存穿透3.1.2 缓存雪崩3.1.3 缓存击穿 3.2、OpenResty编码3.2.1 openresty/ng…

JavaWeb——后端AOP面向特定方法编程

七、AOP 1. 概述 AOP(Aspect Oriented Programming):面向切面编程、面向方法编程,其实就是面向特定方法编程 场景: 案例部分功能运行较慢,定位执行耗时较长的业务方法,此时需要统计每个业务…

了解ASP.NET Core 中的文件提供程序

写在前面 ASP.NET Core 通过文件提供程序来抽象化文件系统访问。分为物理文件提供程序(PhysicalFileProvider)和清单嵌入的文件提供程序(ManifestEmbeddedFileProvider)还有复合文件提供程序(CompositeFileProvider );其中PhysicalFileProvider 提供对物理文件系统…

echarts - xAxis.type设置time时该如何使用formatter的分级模板

echarts 文档中描述了x轴的多种类型 一、type: ‘value’ ‘value’ 数值轴,适用于连续数据。 此时x轴数据是从零开始,有数据大小的区分。 【注意】 因为xAxis.data是为category服务的,所以xAxis.data里面设置的数据无效。 二、type: ‘ca…

计算机配件杂谈-鼠标

目录 基础知识鼠标的发展鼠标的左右手鼠标的显示样式鼠标的移动和可见性移动可见性 现在的我们的生活工作都基本上离不开电脑了,不管是你平时玩玩游戏,上班工作等等; 今天将关于鼠标的一些小的技巧分享出来,共勉! 基础…

【SPDK】【NoF】使用SPDK实现NVMe over Fabrics Target

本文使用两台PC,一台做NVMe over Fabrics Target(服务端),一台做NVMe over Fabrics initiator(客户端)。首先使用SoftRoCE来实现底层的rdma传输,然后使用SPDK来实现NVMe over Fabrics Target。 …

同一局域网如何共享文件

一、Windows文件共享设置步骤 1.在需要共享文件的电脑上,右击要共享的文件夹,选择“属性” 2.在“共享”选项卡中,点击“高级共享” 3.勾选“共享此文件夹”并设定共享名称,点击“权限”设置具体访问权限。 4.在其他电脑上&#x…

Stable Diffusion初体验

体验了下 Stable Diffusion 2.0 的图片生成,效果还是挺惊艳的,没有细调prompt输入,直接输入了下面的内容: generate a Elimination Game image of burnning tree, Cyberpunk style 然后点击生成,经过了10多秒的等待就输…

跨国文件传输网络丢包的四大原因和修复方式

在全球化的影响下,跨国传输在企业和个人的日常工作中发挥着越来越重要的作用。然而,由于各种原因,网络丢包问题时有发生。本文将详细分析跨国文件传输网络丢包的四大原因,并介绍相应的修复方式。 一、跨国文件传输网络丢包的四大原…

pytorch09:可视化工具-TensorBoard,实现卷积核和特征图可视化

目录 一、TensorBoard简介二、TensorBoard安装三、TensorBoard运行可视化四、TensorBoard详细使用4.1 SummaryWriter4.2 add_scalar()4.3 add_scalars()4.4 add_histogram()4.4.1实际项目开发使用 4.5 add_image()4.6 torchvision.utils.make_grid4.7 卷积核和特征图可视化4.7.…

Android开发Flutter使用SharedPreferences示例

文章目录 SharedPreferences具体使用 SharedPreferences Android原生开发经常会用SharedPreferences来保存一些设置,Flutter用什么来保存这些设置呢? 在Flutter中,你可以使用shared_preferences插件来实现类似Android原生开发中的SharedPref…

低抖动可编程SPXO SG-8200CG, SG-8201CG -高稳定性和低抖动特性

描述 SG-8200CG和SG-8201CG (sg -8201系列)利用爱普生新的低噪声分n锁相环技术&#xff0c;与上一代爱普生可编程晶体振荡器相比&#xff0c;稳定性提高了约2x&#xff0c;相位抖动降低了<1/25。sg -8201系列可编程为1.2MHz至170MHz的任何频率&#xff0c;工作温度范围可达…

tcp/ip协议2实现的插图,数据结构6 (24 - 章)

(142) 142 二四1 TCP传输控制协议 tcpstat统计量与tcp 函数调用链 (143) 143 二四2 TCP传输控制协议 宏定义与常量值–上 (144) 144 二四3 TCP传输控制协议 宏定义与常量值–下 (145) 145 二四4 TCP传输控制协议 结构tcphdr,tcpiphdr (146) 146 二四5 TCP传输控制协议 结构 tcp…

【MATLAB】ICEEMDAN_LSTM神经网络时序预测算法

有意向获取代码&#xff0c;请转文末观看代码获取方式~也可转原文链接获取~ 1 基本定义 ICEEMDAN-LSTM神经网络时序预测算法是一种结合了改进的完全扩展经验模态分解&#xff08;ICEEMDAN&#xff09;和长短期记忆神经网络&#xff08;LSTM&#xff09;的时间序列预测方法。 …

x-cmd pkg | raku - 渐进类型的、多范式的编程语言

目录 简介首次用户技术特点相关的术语进一步阅读 简介 Raku 是 Perl 家族中的一种编程语言&#xff0c;原名 Perl 6&#xff0c;主要设计者为 Larry Wall&#xff0c;从2000年开始开发&#xff0c;2019年10月更名为 Raku&#xff0c;是一种通用的、渐进类型的、多范式的编程语…

C++常用库函数大小写转换

在我们在编写代码时大小写转换是基础知识&#xff0c;这篇博客将通过介绍C常用库函数来回顾和学习一种不一样的大小写转换 目录 一、islower/isupper函数二、tolower/toupper函数三、ASCLL码 一、islower/isupper函数 islower和isupper函数是C标准库中的字符分类函数&#xff…

什么是检索增强生成 (RAG)

什么是 RAG RAG&#xff0c;即检索增强生成&#xff0c;是一种将预训练的大型语言模型的功能与外部数据源相结合的技术。这种方法将 GPT-3 或 GPT-4 等 LLM 的生成能力与专用数据搜索机制的精确性相结合&#xff0c;从而形成一个可以提供细微响应的系统。 本文更详细地探讨了…

搭建Eureka服务注册中心

前言 我们在别的章节中已经详细讲解过eureka注册中心的作用&#xff0c;本节会简单讲解eureka作用&#xff0c;侧重注册中心的搭建。 Eureka作为服务注册中心可以进行服务注册和服务发现&#xff0c;注册在上面的服务可以到Eureka上进行服务实例的拉取&#xff0c;主要作用就是…

加载符号文件

1、加载符号文件 当程序突发崩溃时&#xff0c;当我们尝试通过core文件分析原因时&#xff0c;通常会遇到以下问题&#xff0c;那么这种情况该怎么解决呢&#xff1f; 适用场景 二进制文件与符号文件分离的情况。 # 将test中的调试信息以外的数据剥离&#xff0c;生成符号文…

性能分析与调优: Linux 文件系统观测工具

目录 一、实验 1.环境 2.mount 3.free 4.top 5.vmstat 6.sar 7.slabtop 8.strace 9.opensnoop 10.filetop 11.cachestat 二、问题 1.Ftrace实例如何实现 2.Function trace 如何跟踪实例 3.function_graph Trace 如何跟踪实例 4.trace event 如何跟踪实例 5.未…