users@shoal.java.net

Re: [Shoal-Users] Cross-Subnet-Support

From: Joseph Fialli <Joseph.Fialli_at_Sun.COM>
Date: Thu, 10 Jul 2008 20:13:23 -0400
Joseph Fialli wrote:
Mike Wannamaker wrote:



------------------------------------------------------------------------

*From:* Shreedhar.Ganapathy@Sun.COM [mailto:Shreedhar.Ganapathy@Sun.COM]
*Sent:* July 7, 2008 2:58 PM
*To:* users@shoal.dev.java.net
*Subject:* Re: [Shoal-Users] Cross-Subnet-Support

Hi Mike
Thanks.
Joe Fialli is trying to reproduce this in our env. I would wait for his analysis.

I have recreated the issue using crosssubnetdemo.sh (that is part of shoal source distribution).
I was able to get the crosssubnetdemo working by simply using a port that was between start and stop listed in the following Shoal
FINE level warning message.  I was using port 4001.  But I saw the following fragment that lead me to believe that the port
that I set was not in the correct range.  Once I changed the port to 9701, the crosssubnetdemo.sh started to work.

Obviously, better detection of the port being out of range needs to be done to make this more user friendly,
but I wanted to pass along a workaround so you would not be blocked by this.

Xml Fragment containing information that port that was out of range.

<jxta:TransportAdvertisement xmlns:jxta="http://jxta.org" xml:space="preserve" type="jxta:TCPTransportAdvertisement">
      <Protocol>tcp</Protocol>
      <ClientOff/>
      <ConfigMode>auto</ConfigMode>
      <Port start="9701" end="9799">4001</Port>
      <MulticastAddr>229.9.1.1</MulticastAddr><MulticastPort>2299</MulticastPort><MulticastSize>65536</MulticastSize>           
</jxta:TransportAdvertisement>

Complete Shoal FINE logging showing the port out of range.
[#|2008-07-10T18:08:57.204-0400|FINE|Shoal|ShoalLogger|_ThreadID=11;_ThreadName=ApplicationServer;ClassName=NetworkManager;MethodName=startDomain;|node config adv = <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE jxta:CP>
<jxta:CP xml:space="default" type="jxta:PlatformConfig" xmlns:jxta="http://jxta.org">
    <PID>
        urn:jxta:uuid-6D043FA8D4844273A93CA989569622497987FC1134E54090AB24B0C9E01AD7DF03
    </PID>
    <Name>
        instance1
    </Name>
    <Desc>
        Created by Jxta Cluster Management NetworkManager
    </Desc>
    <Svc>
        <MCID>
            urn:jxta:uuid-DEADBEEFDEAFBABAFEEDBABE0000000A05
        </MCID>
        <Parm>
            <jxta:TransportAdvertisement xmlns:jxta="http://jxta.org" xml:space="preserve" type="jxta:HTTPTransportAdvertisement">
<Protocol>http</Protocol><ConfigMode>auto</ConfigMode><Port>9700</Port><ServerOff/>            </jxta:TransportAdvertisement>
        </Parm>
    </Svc>
    <Svc>
        <MCID>
            urn:jxta:uuid-DEADBEEFDEAFBABAFEEDBABE0000000905
        </MCID>
        <Parm>
            <jxta:TransportAdvertisement xmlns:jxta="http://jxta.org" xml:space="preserve" type="jxta:TCPTransportAdvertisement">
<Protocol>tcp</Protocol><ClientOff/><ConfigMode>auto</ConfigMode><Port start="9701" end="9799">4001</Port><MulticastAddr>229.9.1.1</MulticastAddr><MulticastPort>2299</MulticastPort><MulticastSize>65536</MulticastSize>            </jxta:TransportAdvertisement>

        </Parm>
    </Svc>
    <Svc>
        <MCID>
            urn:jxta:uuid-DEADBEEFDEAFBABAFEEDBABE0000000505
        </MCID>
        <Parm type="jxta:PSEConfig" xmlns:jxta="http://jxta.org" xml:space="preserve"/>
    </Svc>
    <Svc>
        <MCID>
            urn:jxta:uuid-DEADBEEFDEAFBABAFEEDBABE0000000605
        </MCID>
        <Parm type="jxta:RdvConfig" xmlns:jxta="http://jxta.org" xml:space="preserve" config="rendezvous">
<seeds useOnlySeeds="true"><addr>tcp://129.148.6.95:4001</addr></seeds>        </Parm>
    </Svc>
    <Svc>
        <MCID>
            urn:jxta:uuid-DEADBEEFDEAFBABAFEEDBABE0000000F05
        </MCID>
        <Parm type="jxta:RelayConfig" xmlns:jxta="http://jxta.org" xml:space="preserve" server="true">
<client/><server/>        </Parm>
    </Svc>
    <Svc>
        <MCID>
            urn:jxta:uuid-DEADBEEFDEAFBABAFEEDBABE0000000105
        </MCID>
        <Parm type="jxta:PeerGroupConfigAdv" xmlns:jxta="http://jxta.org" xml:space="preserve">
<PeerGroupID>urn:jxta:uuid-6D043FA8D4844273A93CA9895696224959616261646162614E5047205032503302</PeerGroupID><PeerGroupName>mygroup</PeerGroupName><PeerGroupDesc>mygroup Infrastructure Group Name</PeerGroupDesc>        </Parm>
    </Svc>
</jxta:CP>
|#]
-Joe Fialli



I will follow up to list when I have a diagnosis on what the issue is.
(Since I am out tomorrow, earliest that I will have any more info is Weds.)

-Joe Fialli


Thanks
Shreedhar

Mike Wannamaker wrote:

I hooked up Ethereal. I saw tcp packets from my other machine but it looked like the destination was port 3741 even though I had configured 5200? I changed to use 3741 and still not working. I see the messages coming but I also see a lot of errors sent back saying incorrect checksum.

Any other info I can provide to you?

------------------------------------------------------------------------

*From:* Shreedhar.Ganapathy@Sun.COM <mailto:Shreedhar.Ganapathy@Sun.COM> [mailto:Shreedhar.Ganapathy@Sun.COM]
*Sent:* July 7, 2008 11:57 AM
*To:* users@shoal.dev.java.net <mailto:users@shoal.dev.java.net>
*Subject:* Re: [Shoal-Users] Cross-Subnet-Support

Hi Mike

Mike Wannamaker wrote:

Hi Shreedhar

I’m trying to test the cross-subnet support.

It seems really easy when reading the document below.

Two properties set and away you go.

However I have done this and trying to get two machines clustered from different subnets it don’t seem to work?

Basically I just added this to my test application?

_properties.put(ServiceProviderConfigurationKeys.IS_BOOTSTRAPPING_NODE, "true");

_properties.put( ServiceProviderConfigurationKeys.VIRTUAL_MULTICAST_URI_LIST, "tcp://10.6.2.89:5200");

//initialize Group Management Service

m_GMS = initializeGMS(_properties);

10.6.2.89 is my local machine here. Does it matter if bootstrapping is true on the other machine but its IP is not in the list?

The bootstrapping needs to be set to false on the other machine if its address is not on the list. Could you try that ? The cross subnet support work is yet to thoroughly tested. Its not battle tested yet.



Doesn’t matter commented that line out and ran that code on the other machine which is on another domain within our company and it doesn’t seem to work. The machine can ping my machine so it can see it.

What do I do now? How do I debug this or how do I tell if it is being setup correctly for cross-subnet?

You could take a tcp dump and load the file in Ethereal/wireshark to see if communications are happening between the two machines on port 5200.


Or am I doing something wrong?

The bootstrap node value should be either true or false. Could you try that and let me know?


TIA

--ekiM

------------------------------------------------------------------------

*From:* Shreedhar.Ganapathy@Sun.COM <mailto:Shreedhar.Ganapathy@Sun.COM> [mailto:Shreedhar.Ganapathy@Sun.COM]
*Sent:* June 28, 2008 12:44 PM
*To:* users@shoal.dev.java.net <mailto:users@shoal.dev.java.net>
*Subject:* Re: [Shoal-Users] Questions and Documentation?

Hi Mike
Wrt your recent question below:

Mike Wannamaker wrote:

Hi I have a few questions

Was wondering if there is any documentation on bootstrapping the JXTA in order to facilitate cross sub-net/firewall communications?

Here's a document I wrote up. Please let me know if this is helpful and works as described.

http://wikis.sun.com/display/shoal/Shoal+How-To+-+Configuring+for+cross+subnet+support

Thanks
Shreedhar





---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@shoal.dev.java.net
For additional commands, e-mail: users-help@shoal.dev.java.net