扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
Windows server系统(Windows 2000高级服务器版本、Windows server 2003所有版本)中提供了网络负载均衡(NLB)功能。NLB的操作模式有单播和多播两种,它们之间有什么区别呢?
首先,给大家介绍一下NLB的工作原理:当客户向
NLB群集(NLB的虚拟IP地址)发起请求时,其实客户的请求数据包是发送到所有的NLB节点,然后运行在NLB节点上的NLB服务根据同样的NLB算法来确定是否应该由自己进行处理,如果不是则丢弃客户的请求数据包,如果是则进行处理。
如何将请求数据包发送到所有的NLB节点是NLB运行的关键之处,单播和多播这两种操作模式就是用于实现这一需求。NLB不支持单个NLB群集中的单播/多播的混合环境;在每一个NLB群集中,该群集中的所有节点都必须配置为多播或单播,否则,此NLB群集将无法正常工作。
单播和多播的运行方式和不同之处分别为:
单播
在单播模式下,NLB重新对每个NLB节点中启用NLB的网络适配器分配MAC地址(此MAC地址称为群集MAC地址),并且所有的NLB节点均使用相同的MAC地址(均使用群集MAC地址),同时NLB修改所有发送的数据包中的源MAC地址,从而使交换机不能将此群集MAC地址绑定在某个端口上。
工作在单播模式下的NLB可以在所有网络环境下正常运行,但是由于它的工作特性,具有以下两个限制:
由于NLB所使用的群集MAC地址没有绑定在某个具体的交换机端口上,所以所有的NLB通讯均通过在交换机的所有端口上广播进行,而不管此端口是否连接了NLB节点,这造成了额外的网络流量负担;
由于所有的NLB节点具有相同的MAC地址,NLB节点之间不能通过自己原有的专用IP地址进行通讯。
多播
在多播模式下,NLB不会修改NLB节点启用NLB的网络适配器的MAC地址,而是为它再分配一个二层多播MAC地址专用于NLB的通讯(此MAC地址称为群集MAC地址),这样NLB节点之间可以通过自己原有的专用IP地址进行通讯。但是在多播模式中,NLB节点发送的针对群集IP地址MAC地址ARP请求的ARP回复会将群集IP地址映射到多播MAC地址,而许多路由器或者交换机(包括CISCO的产品)会拒绝这一行为。当出现这种情况时,你必须在路由器和交换机上手动添加静态映射,将群集IP地址映射到群集的多播MAC地址。
Windows Server 2003提供了一个新的特性,称为IGMP 多播,它可以通过使用IGMP协议支持来使交换机只将NLB通讯发送到连接NLB节点的端口,而不是所有交换机端口。但是此特性必须要求交换机支持IGMP侦听,并且要求群集工作在多播模式下。
ISA企业版防火墙中提供的集成NLB服务依赖于Windows server系统中的NLB,并且从兼容性考虑,NLB工作在单播模式下,你不能修改这一配置。你可以在Windows server中的网络负载平衡管理器中修改NLB的操作模式为多播,但是此时NLB就不再是和ISA防火墙集成工作的了。
从上面单播模式的工作原理可以看出,ISA企业版中NLB节点之间不能通过自己原有的专用IP地
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者