Bi-Directional affinity (BDA) team configuration problem detected

Microsoft.Windows.NetworkLoadBalancing.10.0.BiDirectional.affinity.team.configuration.problem.detected (Rule)

Knowledge Base article:

Summary

Bi-directional affinity creates multiple instances of Network Load Balancing (NLB) on the same host, which work in tandem to ensure that responses from published servers are routed through the appropriate ISA servers in a cluster. Bi-directional affinity is commonly used when NLB is configured with Internet Security and Acceleration (ISA) servers. If bi-directional affinity is not consistent across all NLB hosts or if NLB fails to initialize bi-directional affinity, the NLB cluster will remain in the converging state until a consistent teaming configuration is detected.

Resolutions

The bi-directional affinity (BDA) configuration must be identical on all cluster hosts. The team in which this cluster participates will be marked inactive and this cluster will remain in the converging state until consistent teaming configuration is achieved. You should first reconfigure the BDA configuration, and then restart the NLB cluster.

Reconfigure the bi-directional affinity configuration

Reconfigure the bi-directional affinity settings by using the server application tools. If the Network Load Balancing (NLB) cluster is an Internet Security and Acceleration Server (ISA Server) cluster, use the ISA Server configuration. For more information about configuring bi-directional affinity, see the  ISA Server documentation.

Restart the NLB cluster

To restart the NLB cluster:

You can also reload the configuration and restart the cluster node using the links below:

Reload configuration

Stop NLB node

Start NLB node

Element properties:

TargetMicrosoft.Windows.NetworkLoadBalancing.10.0.ServerRole
CategoryAlert
EnabledTrue
Alert GenerateFalse
RemotableTrue

Member Modules:

ID Module Type TypeId RunAs 
DS DataSource Microsoft.Windows.NetworkLoadBalancing.EventProvider Default
WA WriteAction Microsoft.Windows.NetworkLoadBalancing.10.0.GenerateAlert.SuppressByDescription Default
WriteToDB WriteAction Microsoft.Windows.NetworkLoadBalancing.10.0.CollectEvent Default

Source Code:

<Rule ID="Microsoft.Windows.NetworkLoadBalancing.10.0.BiDirectional.affinity.team.configuration.problem.detected" Enabled="true" Target="Microsoft.Windows.NetworkLoadBalancing.10.0.ServerRole" ConfirmDelivery="true" Remotable="true" Priority="Normal" DiscardLevel="100">
<Category>Alert</Category>
<DataSources>
<DataSource ID="DS" TypeID="NLBLibrary!Microsoft.Windows.NetworkLoadBalancing.EventProvider">
<Criteria>
<RegExExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>MatchesRegularExpression</Operator>
<Pattern>^(57|56|55|114)$</Pattern>
</RegExExpression>
</Criteria>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="WA" TypeID="Microsoft.Windows.NetworkLoadBalancing.10.0.GenerateAlert.SuppressByDescription">
<Priority>1</Priority>
<Severity>2</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.Windows.NetworkLoadBalancing.10.0.BiDirectional.affinity.team.configuration.problem.detected.AlertMessage"]$</AlertMessageId>
<EnableAlert>true</EnableAlert>
</WriteAction>
<WriteAction ID="WriteToDB" TypeID="Microsoft.Windows.NetworkLoadBalancing.10.0.CollectEvent">
<CollectEvent>false</CollectEvent>
</WriteAction>
</WriteActions>
</Rule>