[Ace-users] Re: [tao-bugs] LOCATION_FORWARD and multiple network interfaces bug

Johnny Willemsen jwillemsen at remedy.nl
Tue Jun 19 13:32:27 CDT 2007


Hi,
 
This is not really a bug, more a feature. The endpoints are added to the IOR
in the order the OS returns them. If you have multiple NICs, you should
specify the ones explicitly. An option option is to use
-ORBUseParallelConnects 1 on the linux node, then it will try to connect to
all 3 nics at the same moment. 

Another option is to look at the TAO_Optimized_Connection_Endpoint_Selector
in the TAO/tao/Strategies library, with the location forward it then doesn't
make a new connection.

Regards,

Johnny Willemsen
Remedy IT
Postbus 101
2650 AC  Berkel en Rodenrijs
The Netherlands
www.theaceorb.nl / www.remedy.nl  

*** Integrated compile and test statistics see http://remedy.nl ***
*** Commercial service and support for ACE/TAO/CIAO             ***
*** See http://www.theaceorb.nl/en/support.html                 ***


________________________________

	From: tao-bugs-bounces at cse.wustl.edu
[mailto:tao-bugs-bounces at cse.wustl.edu] On Behalf Of Benjamin Schüle
	Sent: Monday, June 18, 2007 3:16 PM
	To: tao-bugs at cs.wustl.edu
	Subject: [tao-bugs] LOCATION_FORWARD and multiple network interfaces
bug
	
	

	    TAO VERSION: 1.5.8 
	    ACE VERSION: 5.5.8 

	    HOST MACHINE and OPERATING SYSTEM: 
	        mixed Linux (debian-sarge-2.6) and Windows XP   


	    THE $ACE_ROOT/ace/config.h FILE 
	----------begin windows -------- 
	#define ACE_HAS_STANDARD_CPP_LIBRARY 1 
	#define ACE_HAS_MFC 1 

	#include "ace/config-win32.h" 
	----------end windows -------- 

	----------begin linux -------- 
	#include "ace/config-linux.h" 
	----------end linux -------- 


	    THE $ACE_ROOT/include/makeinclude/platform_macros.GNU FILE 
	----------begin linux -------- 
	include  $ACE_ROOT/include/makeinclude/platform_linux.GNU 
	----------end linux -------- 

	
	    DOES THE PROBLEM AFFECT: 
	        COMPILATION? 
	            NO 

	        LINKING? 
	        NO 

	        EXECUTION? 
	        YES 

	    SYNOPSIS: 
	the ACE/TAO Library has a bug in a mixed Linux and Windows
environment if the Windows machine 
	has multiple network interfaces. 

	    DESCRIPTION: 
	If i have a setup like: 

	[windows if1 192.168.1.19/24]   <----------->   [linux machine
192.168.1.101] 
	[windows if2 192.168.84.1/24] 
	[windows if3 192.168.17.1/24] 


	no I try to connect from the linux machine to the windows machine: 

	        std::string s =
"corbaloc::192.168.1.19:60002/ConnectionController"; 

	        CORBA::Object_var  obj =
m_varORB->string_to_object(s.c_str()); 

	        ORICS::IConnectionController_var iConnectionController = 
	
ORICS::IConnectionController::_narrow(obj); 

	and capture following on network: 

	    490 14:46:00.214537 192.168.1.101         192.168.1.19
TCP      1803 > 60002 [SYN] 
	    491 14:46:00.214628 192.168.1.19          192.168.1.101
TCP      60002 > 1803 [SYN, ACK] 
	    492 14:46:00.214758 192.168.1.101         192.168.1.19
TCP      1803 > 60002 [ACK] 
	    493 14:46:00.215003 192.168.1.19          192.168.1.101
TCP      [TCP Dup ACK 491#1] 
	    495 14:46:00.216847 192.168.1.101         192.168.1.19
GIOP     GIOP 1.0 Request 1 (two-way): _is_a 
	    496 14:46:00.218972 192.168.1.19          192.168.1.101
GIOP     GIOP 1.0 Reply 1: Location Forward 
	    497 14:46:00.219159 192.168.1.101         192.168.1.19
TCP      1803 > 60002 [ACK] 
	    500 14:46:00.239772 192.168.1.101         192.168.84.1
TCP      2001 > 60002 [SYN] 

	the ace-tao corba library tries to connect the windows machine on
the wrong ip address. 


	the log file of the linux machine is: 

	<<070718 log.txt>> 

	  
	    SAMPLE FIX/WORKAROUND: 
	My workaround is to start the windows program with
"-ORBListenEndpoints iiop://192.168.1.19:60002". 




	Mit freundlichen Grüssen / best regards 

	Benjamin Schüle 
	Senior Systems Engineer 
	ORICS - Operating Room Information and Communication System 

	BERCHTOLD Consulting GmbH
	Rheinweg 5
	CH-8200 Schaffhausen 

	Tel     ++41 (0) 52 633 09 12
	Fax    ++41 (0) 52 633 09 09 
	benjamin.schuele at berchtold-consulting.ch 
	http://www.berchtold.de 






More information about the Ace-users mailing list