多种因素可导致接口不可用,例如接口出现故障或接口处于脱机状态以进行维护。如果没有 IPMP,便无法再使用与不可用的接口相关联的任何 IP 地址联系系统。而且,使用这些 IP 地址的现有连接也会中断。
通过 IPMP,可以将多个 IP 接口配置到一个 IPMP 组中。组在功能上类似于使用数据地址发送或接收网络通信流量的 IP 接口。如果组中的一个底层接口出现故障,数据地址会在组中的其余底层活动接口之间重新分配。因此,尽管某个接口出现故障,组仍能保持网络连接。使用 IPMP 时,只要组中至少有一个接口可用,网络连接就始终可用。
通过自动在 IPMP 组的一组接口中分配传出网络通信流量,IPMP 还提高了总体网络性能。此过程称为传出负荷分配。系统还通过为应用程序未指定其 IP 源地址的包执行源地址选择,间接控制传入负荷分配。但是,如果应用程序明确选择了 IP 源地址,则系统不会改变该源地址。
请注意以下有关 IPMP 为传入和传出负荷分配强制实施的策略的重要信息:
对于链路上 IP 地址,IPMP 随机选择一个活动 IP 接口来到达该 IP 地址。在给定链路上 IP 地址具有多个不同连接的情况下,这些所有连接将使用同一个传出 IP 接口。此外,如果 IP 接口随时间发生更改,则这种更改将影响到该 IP 地址的所有连接。
对于链路下 IP 地址,IPMP 随机选择一个 IP 接口来到达链路上 IP 路由器的 IP 地址,通过该路由器访问链路下 IP 地址。此策略实际上意味着给定 IPMP 组的所有链路下 IP 地址使用单个 IP 接口。
链路聚合执行与 IPMP 类似的功能以提高网络性能和可用性。要比较这两项技术,请参见在 Oracle Solaris 11.2 中管理网络数据链路 中的附录 A 链路聚合和 IPMP:功能比较。