Fixed issue that Cyclone does not receive multicast data on Windows when

the destination cache of the network stack is in a certain state. The issue
is resolved by binding unicast sockets (incoming unicast and all outgoing
traffic) to the address of the interface instead of inaddr_any (0.0.0.0).
Set the new configuration option internal/BindUnicastToInterfaceAddr to
false to get the old behavior.

Co-authored-by: Erik Boasson <eb@ilities.com>

Signed-off-by: Dennis Potman <dennis.potman@adlinktech.com>
This commit is contained in:
Dennis Potman 2020-02-20 14:53:54 +01:00 committed by eboasson
parent af3604dea7
commit 754eb4090e
7 changed files with 54 additions and 19 deletions

View file

@ -638,6 +638,7 @@ reserved. This includes renaming or moving options.&lt;/p&gt;</xs:documentation>
<xs:element minOccurs="0" ref="config:AccelerateRexmitBlockSize"/>
<xs:element minOccurs="0" ref="config:AssumeMulticastCapable"/>
<xs:element minOccurs="0" ref="config:AutoReschedNackDelay"/>
<xs:element minOccurs="0" ref="config:BindUnicastToInterfaceAddr"/>
<xs:element minOccurs="0" ref="config:BuiltinEndpointSet"/>
<xs:element minOccurs="0" ref="config:ControlTopic"/>
<xs:element minOccurs="0" ref="config:DDSI2DirectMaxThreads"/>
@ -716,6 +717,14 @@ of HEARTBEAT messages.&lt;/p&gt;
day.&lt;/p&gt;&lt;p&gt;The default value is: &amp;quot;1 s&amp;quot;.&lt;/p&gt;</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="BindUnicastToInterfaceAddr" type="xs:boolean">
<xs:annotation>
<xs:documentation>
&lt;p&gt;Bind unicast sockets to the address of the preferred interface; if
false, bind to 0.0.0.0 (IPv4) or its equivalent&lt;/p&gt;&lt;p&gt;The default value
is: &amp;quot;true&amp;quot;.&lt;/p&gt;</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="BuiltinEndpointSet">
<xs:annotation>
<xs:documentation>