[hipl-users] Re: Various problems with testing of HIPL 1.0.0

  • From: Miika Komu <miika@xxxxxx>
  • To: hipl-users@xxxxxxxxxxxxx
  • Date: Mon, 12 Jun 2006 12:49:00 +0300 (EEST)

On Fri, 9 Jun 2006, zdik.navratil@xxxxxxxxxx wrote:

Hello,

At first, congratulations to the first official HIPL release!

Actually, it is the third release, but thanks anyway :) IMHO, the most important feature of this release are the pre-patched kernel images which shorten the installation process. An additional benefit (mostly for developers) is that the binary building process is now more automatized and documented, so the threshold for creating new releases is now lower.


I was looking for some HIP implementation for Linux which implements at least some basic mobility related features, and your project seems to me as a good solution. But when I tried to test it on my machines I faced some problems. I dont' know if these problems are caused by wrong configuration or if they are (known) errors in the HIPL. Can you please look at them and give me some advice?

Sure. However, I should warn you that the mobility implementation is still work-in-progress even though basic mobility should be working fine. For example, we are still missing proper multihoming support, but Abhijit Bagri is improving it as we speak (see bugzilla ids 179-183).


My configuration:

I have two testing machines (lets say "oops" and "crash") with Fedora Core 5. On both of them I use the "2.6.16-1.2112_FC5.beet" kernel (installed from the "kernel-2.6.16-1.2112_FC5.beet.i686.rpm" downloaded from your site). Also the HIPL was installed from the package - "hipl-1.0.0-1.i386.rpm". In the DNS I added following lines:

oops            IN      AAAA    3ffe:ffff:0:2:201:2ff:fedd:4930                 
               ; base IP of oops
oops            IN      AAAA    11d6:f26c:92d3:3f85:42ab:6fb0:8e4b:e612      ; 
one of oops's HITs
crash           IN      AAAA    3ffe:ffff:0:2:201:2ff:fe9b:b4a7                 
                ; base IP of crash
crash           IN      AAAA    1192:ed41:7224:bf04:49e:bcfc:1133:c704        ; 
one of crash's HITs

As a template usage for HIP-based applications I took your "conntest-xx" programs, namely: conntest-server, conntest-server-native, conntest-client-gai and conntest-client-native.

My problems:
Problem no.1 (automatic HIT-to-IP mapping with DNS):
I started the conntest-server on the "oops" side.
Then on the side of "crash" I started conntest-client-gai with FQDN of oops and 
I got this:

AF_INET6        in6_addr=0x3f fe ff ff 00 00 00 02 02 01 02 ff fe dd 49 30
AF_INET6        in6_addr=0x11 d6 f2 6c 92 d3 3f 85 42 ab 6f b0 8e 4b e6 12
AF_INET6        in6_addr=0x11 d6 f2 6c 92 d3 3f 85 42 ab 6f b0 8e 4b e6 12

!!!! conntest.c Connecting...
.
Trying to connect to 11d6:f26c:92d3:3f85:42ab:6fb0:8e4b:e612
After call conntest.c: connect to 11d6:f26c:92d3:3f85:42ab:6fb0:8e4b:e612
connect ret=-1 errno=110
trying next
failed to connect

When I manually map the oops's IP to the HIT (using hipconfig) and try it again, then it works fine. Do you know any reason why this automatic HIT-to-IP binding doesn't work?

Do you see any network traffic besides the DNS request and reply? See e.g.

"tcpdump -n -i any esp or proto 253 or port 50500"

output both at the initiator and responder. What did the daemon output to /var/log/* files?

Problem no. 2 (IP updates - simulation of mobility)

I created connection between oops and crash. Then I tried to add and remove some IP addresses from the eth0 interface (I have currently only one interface). After adding/deleting an IP address, I could see (using normal ethereal) some communication (HIP UPDATE packets I guess) between peers, but in very few cases it led successful update of the HIT-IP bindings. Usually there were some message sent from the originator, but no response came from the terminator.

Could you be more specific and tell exactly how you simulated handovers on the command line, so that I can repeat the problem.


Unfortunately ethereal cannot decode HIP messages, so I cannot say, what was the content of them. Do you think that these changes in mappings could be done manually when the automatic update failed?

There are some patches for ethereal and tcpdump in the "patches" directory.


Problem no. 3 (native API)

When I try to run the conntest-client-native and conntest-server-native I was even unable to create the socket - I got the error message from the "socket" call: "Address family not supported by protocol". I tried to use both combination of family PF_HIP and protocol (SOCK_STREAM, SOCK_DGRAM) with the same result. Do you have any suggestion, what is wrong?

You need to compile the socket handler manually and insmod it. It is not yet included in the release.


http://hipl.hiit.fi/hipl/manual/ch18.html

If you are using the released rpm kernel, the kernel has already been patched for the HIP module.

--
Miika Komu              miika@xxxxxx          http://www.iki.fi/miika/

Other related posts: