aMule Forum

Please login or register.

Login with username, password and session length
Advanced search  

News:

We're back! (IN POG FORM)

Author Topic: aMule sends weird "Get Sources" to server.  (Read 3440 times)

dummy00001

  • Approved Newbie
  • *
  • Karma: 0
  • Offline Offline
  • Posts: 48
aMule sends weird "Get Sources" to server.
« on: May 16, 2005, 10:11:07 AM »

On course of other bug/feature investigation I have caught an interesting packet with four requests. But only for two files - every file had a two requests in the packet.

Packet layout was like this:
   message(proto=0xe3, len=21, req=0x19/get_sources, hash1),
   message(proto=0xe3, len=21, req=0x19/get_sources, hash2),
   message(proto=0xe3, len=21, req=0x19/get_sources, hash1),
   message(proto=0xe3, len=21, req=0x19/get_sources, hash2),

Albeit being no ed2k protocol guru, I think this is wrong.

Most interesting part, is that next request for this sources was Okay - it had only two messages inside for hash1 & hash2.

P.S. Did I got it right that this request doesn't require any answer? or to put another way - server sends response when it is ready. I have noticed that server normally replies with status message. and some time later comes sources found.
Logged

Kry

  • Ex-developer
  • Retired admin
  • Hero Member
  • *****
  • Karma: -665
  • Offline Offline
  • Posts: 5795
Re: aMule sends weird "Get Sources" to server.
« Reply #1 on: May 16, 2005, 02:20:23 PM »

Did you just add those files to dl?
Logged

dummy00001

  • Approved Newbie
  • *
  • Karma: 0
  • Offline Offline
  • Posts: 48
Re: aMule sends weird "Get Sources" to server.
« Reply #2 on: May 17, 2005, 08:33:15 AM »

Yes. I'm not sure was it first request for those files or not.
Logged

Kry

  • Ex-developer
  • Retired admin
  • Hero Member
  • *****
  • Karma: -665
  • Offline Offline
  • Posts: 5795
Re: aMule sends weird "Get Sources" to server.
« Reply #3 on: May 17, 2005, 04:10:14 PM »

Probably. When you added them, they got automatically added to the request queue, and then they got requested again by proper timer ticks.

I will try to avoid the duplicates on those packets.
Logged

dummy00001

  • Approved Newbie
  • *
  • Karma: 0
  • Offline Offline
  • Posts: 48
Re: aMule sends weird "Get Sources" to server.
« Reply #4 on: May 17, 2005, 04:21:42 PM »

If it is that minor as it sounds from your words, then it is Okay.
It just looked bit weird in Ethereal dump.
And it was sad that server had no sources for my downloads. Especially when I asked twice in the same packet  ;)

P.S. I'd better had some improvements for rare downloads. I think it is more important. I'm not sure why aMule is that different from eMule - but with eMule I never had such problems. Thou I'm not able to verify it right now - no Windoz to run eMule.
Logged

Kry

  • Ex-developer
  • Retired admin
  • Hero Member
  • *****
  • Karma: -665
  • Offline Offline
  • Posts: 5795
Re: aMule sends weird "Get Sources" to server.
« Reply #5 on: May 17, 2005, 05:14:56 PM »

What do you exactly mean by "improvements for rare downloads"?
Logged

dummy00001

  • Approved Newbie
  • *
  • Karma: 0
  • Offline Offline
  • Posts: 48
Re: aMule sends weird "Get Sources" to server.
« Reply #6 on: May 17, 2005, 06:05:28 PM »

Well, it was thread about something else, but anyway.

That's actually how I end up hanged on Ethereal.

Let say there are ed2k 80 servers. And let say I have download with only 3 sources (some freaky ebook I'm fourth person in the world interested, for example).

I have searched globally for file and found it. I have started downloading it. But it doesn't start up. Why? Because aMule doesn't pick-up sources from search and request sources only from current server. What chances are that this three sources are known to my server? - 3/80 - very very low. So I added download but it is never getting any sources, since all found sources are connected to some other server.

I'm not ed2k protocol guru, as was stated above. I might be mistaken. You souldn't listen for my explanations - but only for facts they accompany ;). I have, for example, presumption that "Get Sources" gets sources only from current server.

For some reasons (I was unable to identify) aMule is able to get sources on relaunch. Ethereal log with server I'm connecting to has no search nor get sources request.

Okay, I relaunched aMule and it had found (God knows where from) this 3 sources. As source goes offline/ip address changes - it is dropped. And since it is reconnects not to my server, I'm not able to see it ever again. So I have started with three sources, and e.g. in 24 hours I got zero. So I have to relaunch aMule again so it will search again for this file again and pick those 3 sources again.

And with rare file, there is no other downloaders - so all benefits of source exchange generally applicapable to popular files are negated here: I'm the only downloader and I'm the only keeper of sources. I doubt uploader cares about downloaders.

Solution could be that: i) if file is downloaded from just performed search - aMule sould pick sources from the search; ii) if for some time we are getting no sources for file from connected server (and source exchage is not available - no other downloaders), aMule should perform search/global search.

Something like that. Second part sounds huge, but first I hope in most situations would be suffiecient. Most of rare files are small. Once I tried to download iso image from singe source who was about 2 hours per day on-line - that was horrible, I do not do such crazy things anymore  ;)

P.S. The option "keep 5 sources for rare downloads" was activated all the time - I have no clue why it didn't worked for me. And to be honest, have no clue what it does.

P.P.S. I can assure you that I had waited long enough. Some downloads were sitting with no sources for more than day, since I didn't wanted to interrupt other ongoing downlods.
Logged

ken

  • Hero Member
  • *****
  • Karma: 4
  • Offline Offline
  • Posts: 825
Re: aMule sends weird "Get Sources" to server.
« Reply #7 on: May 17, 2005, 07:11:43 PM »

Well, since this thread is wandering away from topic, I thought I'd help it get further.  ;)

By the way, this is the primary thread for this problem.

Quote
Originally posted by dummy00001
Solution could be that: i) if file is downloaded from just performed search - aMule sould pick sources from the search;
However, searching and asking a server for sources are two different operations.  A search (local or global) only gets back the matching files' descriptions (names, hashes, etc.) and a count of sources (and complete sources).  There is no list of sources, just a count.

Quote
ii) if for some time we are getting no sources for file from connected server (and source exchage is not available - no other downloaders), aMule should perform search/global search.
Again, a search isn't exactly what you want/need.  You need to ask servers for sources.  And aMule should be doing this.  I never saw in the other thread a specific response to my question about opening the UDP port (TCP+3) in your firewall.

Quote
P.S. The option "keep 5 sources for rare downloads" was activated all the time - I have no clue why it didn't worked for me. And to be honest, have no clue what it does.
This means "keep across restarts of aMule".  When aMule shuts down, it will write 5 sources out to a file so that when it starts up again it will immediately reconnect to those sources.  Since you don't have any sources, this wouldn't help you.  :)
Logged

dummy00001

  • Approved Newbie
  • *
  • Karma: 0
  • Offline Offline
  • Posts: 48
Re: aMule sends weird "Get Sources" to server.
« Reply #8 on: May 17, 2005, 07:53:01 PM »

Quote
Well, since this thread is wandering away from topic, I thought I'd help it get further.  

Okay. Then I declare complete misunderstanding of what is going on. All symptoms I see go straight against plain logic. Mine logic...
Logged

ken

  • Hero Member
  • *****
  • Karma: 4
  • Offline Offline
  • Posts: 825
Re: aMule sends weird "Get Sources" to server.
« Reply #9 on: May 17, 2005, 10:35:58 PM »

Um, I didn't mean to discourage you.  We want to solve this.  I hope you'll keep providing us with more info.  :)

I'll post more on the original thread.
Logged