aMule Forum

English => aMule News => Topic started by: Kry on July 26, 2005, 09:28:26 PM

Title: About Kademlia
Post by: Kry on July 26, 2005, 09:28:26 PM
Use daily CVS tarball and configure using

Code: [Select]
./configure --enable-kad-compile
and the rest of your usual configure flags.

Have fun :)

Kad is enabled by default, you can select the networks you want to use on Preferences->Connection.

It's still on testing phase, probably doesn't work yet on big-endian (like Mac) and search with parameters does NOT work.

But you can still test it.
Title: Re: About Kademlia
Post by: Vollstrecker on July 26, 2005, 10:29:47 PM
Are there now additional binaries?
Title: Re: About Kademlia
Post by: Kry on July 27, 2005, 12:07:23 AM
Obviously not.
Title: Re: About Kademlia
Post by: a-snu on July 27, 2005, 01:45:14 AM
First -> Nice move!

I don't know what kind of tests you mean ... but

PRO
- i got kad ok [not firewalled]
- lots of sources found through kad net
- found files through the search [no param]
- downloads @ full bandwidth

CON
- monolythic bin is not rock-solid, [completing files or starting downloading a new file lockup amule]

*probably in todo list
- two buttons for [dis]connecting kad/ed2k
- bootstrap from a known client
- nodes status
Title: Error compiling with gcc 4.0.1
Post by: andre.goddard on July 27, 2005, 05:15:36 AM
amule-ExternalConn.o: In function `Get_EC_Response_Search_Results(CObjTagMap&)':
/mnt/hda5/downloads/amule-cvs/src/ExternalConn.cpp:690: undefined reference to `CEC_SearchFile_Tag::CEC_SearchFile_Tag(CSearchFile*, CValueMap&)'
amule-ExternalConn.o: In function `Get_EC_Response_GetUpQueue(CObjTagMap&)':
/mnt/hda5/downloads/amule-cvs/src/ExternalConn.cpp:452: undefined reference to `CEC_UpDownClient_Tag::CEC_UpDownClient_Tag(CUpDownClient const*, CValueMap&)'
amule-ExternalConn.o: In function `Get_EC_Response_GetWaitQueue(CObjTagMap&)':
/mnt/hda5/downloads/amule-cvs/src/ExternalConn.cpp:405: undefined reference to `CEC_UpDownClient_Tag::CEC_UpDownClient_Tag(CUpDownClient const*, CValueMap&)'
amule-ExternalConn.o: In function `Get_EC_Response_GetSharedFiles(CFileEncoderMap&, CObjTagMap&)':
/mnt/hda5/downloads/amule-cvs/src/ExternalConn.cpp:358: undefined reference to `CEC_SharedFile_Tag::CEC_SharedFile_Tag(CKnownFile const*, CValueMap&)'
amule-ExternalConn.o: In function `Get_EC_Response_Search_Results(CECPacket const*)':
/mnt/hda5/downloads/amule-cvs/src/ExternalConn.cpp:675: undefined reference to `CEC_SearchFile_Tag::CEC_SearchFile_Tag(CSearchFile*, EC_DETAIL_LEVEL)'
amule-ExternalConn.o: In function `Get_EC_Response_GetSharedFiles(CECPacket const*, CFileEncoderMap&)':
/mnt/hda5/downloads/amule-cvs/src/ExternalConn.cpp:330: undefined reference to `CEC_SharedFile_Tag::CEC_SharedFile_Tag(CKnownFile const*, EC_DETAIL_LEVEL)'
amule-ExternalConn.o: In function `Get_EC_Response_GetUpQueue(CECPacket const*)':
/mnt/hda5/downloads/amule-cvs/src/ExternalConn.cpp:434: undefined reference to `CEC_UpDownClient_Tag::CEC_UpDownClient_Tag(CUpDownClient const*, EC_DETAIL_LEVEL)'
amule-ExternalConn.o: In function `Get_EC_Response_GetWaitQueue(CECPacket const*)':
/mnt/hda5/downloads/amule-cvs/src/ExternalConn.cpp:387: undefined reference to `CEC_UpDownClient_Tag::CEC_UpDownClient_Tag(CUpDownClient const*, EC_DETAIL_LEVEL)'
amule-ExternalConn.o: In function `Get_EC_Response_GetDownloadQueue(CECPacket const*, CFileEncoderMap&)':
/mnt/hda5/downloads/amule-cvs/src/ExternalConn.cpp:495: undefined reference to `CEC_PartFile_Tag::CEC_PartFile_Tag(CPartFile*, EC_DETAIL_LEVEL)'
amule-ExternalConn.o: In function `Get_EC_Response_GetDownloadQueue(CFileEncoderMap&, CObjTagMap&)':
/mnt/hda5/downloads/amule-cvs/src/ExternalConn.cpp:468: undefined reference to `CEC_PartFile_Tag::CEC_PartFile_Tag(CPartFile*, CValueMap&)'
amule-ExternalConn.o: In function `ExternalConn::ProcessRequest2(CECPacket const*, CFileEncoderMap&, CFileEncoderMap&, CObjTagMap&)':
/mnt/hda5/downloads/amule-cvs/src/ExternalConn.cpp:994: undefined reference to `CEC_ConnState_Tag::CEC_ConnState_Tag(EC_DETAIL_LEVEL)'
/mnt/hda5/downloads/amule-cvs/src/ExternalConn.cpp:1068: undefined reference to `CEC_Server_Tag::CEC_Server_Tag(CServer const*, EC_DETAIL_LEVEL)'
/mnt/hda5/downloads/amule-cvs/src/ExternalConn.cpp:1109: undefined reference to `CEC_Prefs_Packet::CEC_Prefs_Packet(unsigned int, EC_DETAIL_LEVEL, EC_DETAIL_LEVEL)'
/mnt/hda5/downloads/amule-cvs/src/ExternalConn.cpp:1112: undefined reference to `CEC_Prefs_Packet::Apply()'
/mnt/hda5/downloads/amule-cvs/src/ExternalConn.cpp:1119: undefined reference to `CEC_Category_Tag::Create()'
/mnt/hda5/downloads/amule-cvs/src/ExternalConn.cpp:1127: undefined reference to `CEC_Category_Tag::Apply()'
/mnt/hda5/downloads/amule-cvs/src/ExternalConn.cpp:1193: undefined reference to `CEC_Tree_Tag::CEC_Tree_Tag(tree > >::sibling_iterator const&)'
/usr/lib/libbfd.a(cache.o): In function `bfd_open_file':
: undefined reference to `unlink_if_ordinary'
collect2: ld returned 1 exit status
make[4]: ** [amule] Erro 1
Title: Re: About Kademlia
Post by: andre.goddard on July 27, 2005, 05:37:35 AM
Problem solved! Thanks anyway!
Title: Re: About Kademlia
Post by: thedude0001 on July 27, 2005, 06:04:04 AM
Quote
Originally posted by a-snu
First -> Nice move!

I don't know what kind of tests you mean ... but

[...]

CON
- monolythic bin is not rock-solid, [completing files or starting downloading a new file lockup amule]

If you can provide us with a gdb backtrace when this happens that would be exactly the kind of help we are looking for. It's really quite simple, all Information you need is here: http://www.amule.org/wiki/index.php/Backtraces

If amule has locked up it might be necessary to do a ctrl+c to get to the gdb prompt. In addition to 'bt' and 'bt full' the output of 'thread apply all bt' might be interesting.

And even the pure Information that "there might be something wrong somewhere because..." is already a useful information :)
Title: Re: About Kademlia
Post by: wuischke on July 27, 2005, 10:27:37 AM
I've encountered a bug in connection with amuleweb (amule cvs 20050727) and one with the KAD-search.
KAD status is OK (after being around a minute firewalled) and the search works.
I've kompiled with --enable-optimize --disable-debug --enable-webserver --enable-kad-compile
With amuleweb (My nb is currently running under windows) I could log in, but could not do more, back at my server I saw that amule crashed (is no more running, no message) and amuleweb consumes all my CPU without doing sth.
The second crash (without amuleweb) was when I closed the tab with the Kad-search-results. Dunno why.

And something very strange: My graphs background is red.

I hope i can help with this informations, I'll try to run a 24h test (until cvs 20050728 ;) ) and tell you if something strange happens.
Title: Re: About Kademlia
Post by: stefanero on July 27, 2005, 10:41:10 AM
there is a big time EC bug atm in current cvs, because Kry is trying to fix EC connection from windows using remote-gui....thats why ti crashes

atm just dont use any external programms such as webserver, amulecmd or remote-gui with current cvs

stefanero
Title: Re: About Kademlia
Post by: GonoszTopi on July 27, 2005, 11:27:48 AM
Quote
And something very strange: My graphs background is red.
edit your amule.conf file and remove all 'StatColorX=nnn' lines
Title: Re: About Kademlia
Post by: nonamez78 on July 27, 2005, 08:55:35 PM
could anybody tell me how to enable kad-support? in every cvs is a comment like " --enable-kad-compile      compile Kademlia code (DOES NOT WORK YET!))".

after using the "--enable..." switch the summary tells the same.

the compilation doesn't change anything, kad-support doesn't work :-(
Title: Re: About Kademlia
Post by: nonamez78 on July 27, 2005, 09:11:57 PM
wow, seems to be my fault. after updating to wxwidgets 2.6 the "does not work" comment is still readable, but now i can compile it.

sorry ;-)
Title: Re: About Kademlia
Post by: deltaHF on July 27, 2005, 09:34:39 PM
Quote
Originally posted by nonamez78
 "does not work" comment is still readable

fixed  :P
Title: Re: About Kademlia
Post by: wuischke on July 27, 2005, 10:21:52 PM
I runs fine until now. Just a little inconsistency: I've set up amule to connect only to KAD.
During connecting I get KAD status firewalled and amule claims, that I've received a LowID and shows the earth with yellow arrows. After some seconds the KAD status changes into OK, but the LowID stays with the text no connection... (or similar) behind it.
Title: Re: About Kademlia
Post by: deltaHF on July 27, 2005, 10:26:40 PM
will be fixed aswell, don't worry ;)

cheers
Title: Re: About Kademlia
Post by: geearf on July 27, 2005, 11:40:02 PM
good news, I hope i can feel kad again before leaving the net :)

Also I've just seen Kry beeing mention on 0.46c released, first time I think (may be wrong) congratulation on this too :)
Title: Re: About Kademlia
Post by: Kry on July 28, 2005, 02:55:29 AM
YEah, I'm twice on 0.46c, but I was there before ;) Thanks for noticing anyway!
Title: Re: About Kademlia
Post by: Axl_Mas on July 28, 2005, 10:05:19 AM
How i have to set my firewall to use kad?
I have to open the udp port 4673 both in input and output?

There are my actual rules for amule:

#aMule INPUT
iptables -A INPUT -p tcp -m tcp --dport 4662 -j ACCEPT  
iptables -A INPUT -p udp -m udp --dport 4672 -j ACCEPT
iptables -A INPUT -p udp -m udp --dport 4665 -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

#aMule OUTPUT
iptables -A OUTPUT -p tcp -m tcp --dport 4661 -j ACCEPT
iptables -A OUTPUT -p tcp -m tcp --sport 4662 -j ACCEPT
iptables -A OUTPUT -p udp -m udp --sport 4662 -j ACCEPT
Title: Re: About Kademlia
Post by: thedude0001 on July 28, 2005, 10:46:44 AM
Works fine here without any additional ports opened...
Title: Re: About Kademlia
Post by: Axl_Mas on July 28, 2005, 10:52:33 AM
How ports have you open?
With my rules kad is firewalled !  :(
Title: Re: About Kademlia
Post by: thedude0001 on July 28, 2005, 11:42:39 AM
5662 tcp, 5665 and 5672 udp (the ports which are set / shown in preferences)
Title: Re: About Kademlia
Post by: wuischke on July 28, 2005, 01:26:20 PM
Maybe you just gotta wait a minute. I realised that the KAD status changes from firewalled to OK after a short period. Try waiting.
BTW: Don't you need Port 4661? I've opened 4661 + 4662 TCP and 4665 + 4672 UDP.
Title: Re: About Kademlia
Post by: stefanero on July 28, 2005, 01:50:03 PM
well you need that port open which is setup in your amule-preferences...so it can be ANY port ;)

and no you dont need 4661

default is 4662/tcp 4665/udp and 4672/udp,I guess thedude just had a typo
Title: Re: About Kademlia
Post by: thedude0001 on July 28, 2005, 02:43:03 PM
No, I just changed them a while ago when there were two *mules running on this network and never changed them back to defaults ;)
Title: Re: About Kademlia
Post by: stefanero on July 28, 2005, 04:25:10 PM
well then dont confuse the pople with your "wrong" values :P
Title: Re: About Kademlia
Post by: frankenbenni on July 28, 2005, 10:49:19 PM
check preferences - connection - client udp port
if you forward this port (udp) kad should not be firewalled anymore, at least it was for me (at the beginning it is  for a short time, though)
Title: Re: About Kademlia
Post by: trep on August 10, 2005, 12:34:16 PM
Just a quick report: I'm using the latest CVS tarball (as today) on a FC2 system and it all seems to work fine  :)

I had to install this file to be able to compile it:
wxGTK-2.6.0-1.i586-SuSE_8.2-9.0-9.1.rpm

it installed automatically without any problem on my FC2 machine, while the rpm precompiled for FC3 gave me errors.
(Just in case this info may be of some use to somebody else)

Thanks for your work!
Title: Re: About Kademlia
Post by: scorpio2002 on August 14, 2005, 01:36:49 PM
So, how is it going? looks like kad implemantation is quite done now. I'm looking forward to seeing it work on my machine :D
Great job guys, thank you!!!
Title: Re: About Kademlia
Post by: PunkSC on October 20, 2005, 04:03:38 AM
i will try it too! Kad r0x! I really missed kad on amule...
Title: Re: About Kademlia
Post by: lfroen on October 20, 2005, 08:49:26 AM
Kad implementation is slow like hell. Be warned.
Title: Re: About Kademlia
Post by: Kry on October 20, 2005, 11:59:48 AM
No, it isn't. But lfroen seems to have problems with it.
Title: Re: About Kademlia
Post by: lfroen on October 21, 2005, 06:35:30 AM
Kry: i don't know how about you, but I actually measured it. Amule takes about 40% cpu where most of time it spends in main loop -> kad code.
I will have more results when oprofile will finally work for me.
Title: Re: About Kademlia
Post by: PunkSC on October 21, 2005, 06:44:16 AM
2248 amule     15   0 76328  42m  15m S 25.1 27.1  96:03.60 amule
25% CPU usage on PII 300Mhz. Its more then amule without kad (about 10% cpu usage). Maybe kad code needs some improvements, but works fine. Thats a HUGE step! Tks guys for the hard work!
Title: Re: About Kademlia
Post by: Kry on October 21, 2005, 01:43:15 PM
If you guys are using debug builds, Kad does serious use of stl classes, which are very heavy on debug.
Title: Re: About Kademlia
Post by: GhePeU on October 23, 2005, 11:44:17 AM
Quote
Originally posted by PunkSC
2248 amule     15   0 76328  42m  15m S 25.1 27.1  96:03.60 amule
25% CPU usage on PII 300Mhz. Its more then amule without kad (about 10% cpu usage). Maybe kad code needs some improvements, but works fine. Thats a HUGE step! Tks guys for the hard work!


well, have to second this, switching from 20051014 CVS to 20051022 CVS my CPU usage increased of ~4x, only when Kad is running. Roughly, from ~1.5% to ~6% on an athlon xp 1700+

compiled with --disable-debug, wxGTK 2.6.2 + gtk 2.8.6
Title: Re: About Kademlia
Post by: Kry on October 23, 2005, 04:06:46 PM
That was caused by Kad gui, is not strange.


And lfroen, Xaignar measured it and it's nowhere near the time on the core timer even a 5% used on Kad.
Title: Re: About Kademlia
Post by: GhePeU on October 23, 2005, 07:34:06 PM
Quote
Originally posted by Kry
That was caused by Kad gui, is not strange.

is it temporary, I hope?
Title: Re: About Kademlia
Post by: Kry on October 23, 2005, 08:00:46 PM
well Kad gui is going to be reworked... again ;) So yes.