People taking multiple slots

Use this forum to flesh out your feature request before you enter it in <a href="http://dcpp.net/bugzilla/">Bugzilla</a>.

Moderator: Moderators

Locked
lordadmira
Posts: 52
Joined: 2003-03-12 00:06
Location: Zinzinnati

People taking multiple slots

Post by lordadmira » 2006-06-20 08:56

We have got to do something about people taking up multiple slots. I routinely have to close connections of people downloading two files at the same time. I even had somebody downloading three times. I got so sick of it I banned his IP on the firewall. One guy I'm fighting now is in two hubs but has two CIDs. Same nick, same ip, same client, how can the CID be different? I thought that was supposed to be a globally unique identifier. The way it is now people can monopolize ur client.

LA
Last edited by lordadmira on 2006-06-21 10:31, edited 1 time in total.
Anata ga baka da! Repent!

ullner
Forum Moderator
Posts: 333
Joined: 2004-09-10 11:00
Contact:

Post by ullner » 2006-06-20 16:53

The CID in NMDC hubs is constructed with nick+hub. However, the CID in ADC hubs should be identical if it is infact the same user.

lordadmira
Posts: 52
Joined: 2003-03-12 00:06
Location: Zinzinnati

Post by lordadmira » 2006-06-20 17:30

When I check my own CID in the userlist it's the same in all the hubs I'm in. Why is my CID the same and the other guy's is different. What reason is there to include a hub component in calculating the CID? Seems everything would be better if DC didn't do that.

LA
Anata ga baka da! Repent!

Pothead
Posts: 223
Joined: 2005-01-15 06:55

Post by Pothead » 2006-06-20 19:16

lordadmira wrote:When I check my own CID in the userlist it's the same in all the hubs I'm in. Why is my CID the same and the other guy's is different.
Because your client knows your proper CID, whereas it's making one for other people
lordadmira wrote:What reason is there to include a hub component in calculating the CID? Seems everything would be better if DC didn't do that.
Not really. This way is much better than the "guess a user" it used to do.

Maybe a "getCID" extension for the nmdc protocol could help, so then it can properly identify users, and maybe match them up, to different hubs they maybe be in. :)

lordadmira
Posts: 52
Joined: 2003-03-12 00:06
Location: Zinzinnati

Post by lordadmira » 2006-06-20 20:02

So ur saying that the CID is something my client generates and not something the remote clients push out? That seems very flaky. It's just a glorified version of nick+hubname. If a hub changes its name, wham I lost all my sources from that hub. I don't see how this way is better than the old way. What did this "fix" that was so "wrong" with the old way? Atleast then it knew that two people on different hubs were the same. How precisely is the CID generated?

LA
Anata ga baka da! Repent!

ullner
Forum Moderator
Posts: 333
Joined: 2004-09-10 11:00
Contact:

Post by ullner » 2006-06-20 20:40

All users are identified by CID because that is how ADC does it. This is the reason for the change. I would assume the CID is created by Base32.encrypt(Tiger.hash(nickname + hubname)) == CID. Ugly indeed, but that's what we get for using NMDC.

lordadmira
Posts: 52
Joined: 2003-03-12 00:06
Location: Zinzinnati

Post by lordadmira » 2006-06-20 21:40

ullner wrote:All users are identified by CID because that is how ADC does it.

This isn't ADC. There is only NMDC.

ullner wrote:Ugly indeed, but that's what we get for using NMDC.

That's a specious argument. There's nothing besides NMDC so u can't offload responsibility onto those who are using it. That's like deriding African villagers for eating bugs, but that's all there is! It's that or nothing. ADC is a draft and an alpha tree, not an alternative to NMDC. Products should strive to be as functional as possible and as user friendly as possible within the current environment. If the current environment is really so bad then development on it should be stopped. The current CID pragma hasn't improved the usability of the environment, it's decreased it. NMDC cannot be evolved into ADC.

So I'ld like to hear it from Arne, why was CID implemented now? What did it fix that was broken before? It seems to me that the current CID implementation is a major design flaw.

LA
Anata ga baka da! Repent!

Carraya
Posts: 112
Joined: 2004-09-21 11:43

Post by Carraya » 2006-06-21 03:25

lordadmira wrote:There's nothing besides NMDC so u can't offload responsibility onto those who are using it.


Umm say what, my ADC hub runs just fine :)

lordadmira wrote:If the current environment is really so bad then development on it should be stopped.


It's very close to being stopped already. Not sure exactly what you are implying, but you seem to be yelling at someone for something you know nothing about...
<random funny comment>

Pothead
Posts: 223
Joined: 2005-01-15 06:55

Post by Pothead » 2006-06-21 03:31

lordadmira wrote:Atleast then it knew that two people on different hubs were the same.
Nope. It chose the first occurance of that nick it found. Could be a totally different user. So you got 1 bug with it this way, beats the many it used to have, from being unable to identify users.
e.g. having to go through every hub a certain nick was in, granting slots to each one, until they actually got the slot, was very annoying.

ullner
Forum Moderator
Posts: 333
Joined: 2004-09-10 11:00
Contact:

Post by ullner » 2006-06-21 06:27

lordadmira: You don't understand. The change was because DC++ (in ADC) must identify users by CID, which doesn't exist natively in the NMDC protocol. For a work around, DC++ will now create a CID for every user based on nick and hubname (this could potientially even make multi-share possible, though there might be still some problems I can imagine), all because the internal user identification scheme should use a common denominator.

As far as ADC not being complete... What information do you have to backup that "ADC isn't an alternative"? DC++ has plenty ADC support. (There are only few things it doesn't have, which is negligible in the bigger picture.) (And, FYI, ADCH++ might be released soon so everyone can try it out.)

Quattro
Posts: 166
Joined: 2006-01-11 09:23

Post by Quattro » 2006-06-21 09:24

ullner wrote:(And, FYI, ADCH++ might be released soon so everyone can try it out.)


damn there's a might there
:roll:
You can send a message around the world in 1/7 of a second; yet it may take several years to move a simple idea through a 1/4 inch of human skull.

lordadmira
Posts: 52
Joined: 2003-03-12 00:06
Location: Zinzinnati

Post by lordadmira » 2006-06-21 10:30

Ur right, I don't have information and that's why I'm beating my head against the wall here. No one's provided a reason why DC can't figure out commonality of users between hubs. This problem of people taking multiple slots has annoyed me to the point of speaking out. No one has said "it's impossible because..." and I think it's quite possible. No one's even acknowledged the problem as a problem! Nor has anybody stated "we should do something about that".

LA
Anata ga baka da! Repent!

ullner
Forum Moderator
Posts: 333
Joined: 2004-09-10 11:00
Contact:

Post by ullner » 2006-06-21 10:42

Do something about what? User identification in NMDC? There are plenty of threads concerning multi-share where user identification is discussed.

Quattro: The might is there because I don't have an exact time table of when it will be released; "might soon". It will (eventually) be.

lordadmira
Posts: 52
Joined: 2003-03-12 00:06
Location: Zinzinnati

Post by lordadmira » 2006-06-21 10:51

ullner wrote:Do something about what?

Something to stop people from taking up multiple slots. I can't believe u just asked that.
Anata ga baka da! Repent!

ullner
Forum Moderator
Posts: 333
Joined: 2004-09-10 11:00
Contact:

Post by ullner » 2006-06-21 13:09

What difference does it make anyway? You would (or I assume) use the bandwidth regardless who it is. So, what is the problem? That other users don't get a slot? So? I don't get the "omg he is downloading from me from three places". A better solution for your "problem" would be to allow people to download multiple items from you as long as there aren't anyone else waiting for a slot. That sound a lot better to me than restricting multiple downloads.

lordadmira
Posts: 52
Joined: 2003-03-12 00:06
Location: Zinzinnati

Post by lordadmira » 2006-06-21 13:24

That's an even more complicated solution than what I proposed. But yes, these people are keeping out other users. I'll have no free slots and some prick dl'ing off me 2 or 3 times. Even if there are other free slots it still messes up the overall network. It increases the time needed to get a file. I've had my own client dl twice from one person. That slows down *my* file transfer. I want to get one file as fast as possible. The fact that the overall download time for all the files is similar is no consolation.

LA
Anata ga baka da! Repent!

poy
Posts: 83
Joined: 2006-04-03 15:55

Post by poy » 2006-06-21 20:51

could IP be a better way to uniquely identify users in NMDC? of course, if there are 2 people with 2 computers behind the same router, there might be some problem, but i think "nick+IP" seems better than "nick+hub". i may be wrong :?:

lordadmira
Posts: 52
Joined: 2003-03-12 00:06
Location: Zinzinnati

Post by lordadmira » 2006-06-21 23:02

I suggested that a while back but it was poo pooed. Actually IP alone is the easiest way to fix this. Just disallow multiple connections from the same IP. People can have different nicks in different hubs. It's true that different people could share an IP but that is a really small number and the odds that two such people would want to download off u at the same time are vanishingly small.

LA
Anata ga baka da! Repent!

Todi
Forum Moderator
Posts: 699
Joined: 2003-03-04 12:16
Contact:

Post by Todi » 2006-06-22 02:15

lordadmira wrote:It's true that different people could share an IP but that is a really small number and the odds that two such people would want to download off u at the same time are vanishingly small.

You have researched this matter closely? Could we see some statistics? How would you deal with hubs with many University users for instance, who often share the same IP?

Quattro
Posts: 166
Joined: 2006-01-11 09:23

Post by Quattro » 2006-06-22 02:32

i'm ona university connection most of the time but we all have different IP's
that's the case here in holland.
all the universitys connections have huge ip pools.
complete 145.x.x.x ranges for instance
and that's only one of the ranges
You can send a message around the world in 1/7 of a second; yet it may take several years to move a simple idea through a 1/4 inch of human skull.

poy
Posts: 83
Joined: 2006-04-03 15:55

Post by poy » 2006-06-22 05:18

Todi wrote:
lordadmira wrote:It's true that different people could share an IP but that is a really small number and the odds that two such people would want to download off u at the same time are vanishingly small.

You have researched this matter closely? Could we see some statistics? How would you deal with hubs with many University users for instance, who often share the same IP?


if you don't use only IP but "nick+IP" to identify users, i don't think such a problem can happen. if it does, it will be if 2 users of the same campus go on 2 different hubs with the same nick, which is really really rare i think :)

Todi
Forum Moderator
Posts: 699
Joined: 2003-03-04 12:16
Contact:

Post by Todi » 2006-06-22 06:06

Nick+IP is just as broken as just Nick, since having different nicks in each hubs you're in (which many do) would circumvent it. Just set your Slots to 1 and you won't have any problem with users downloading too much from you..

Pothead
Posts: 223
Joined: 2005-01-15 06:55

Post by Pothead » 2006-06-22 06:18

This can be sorted for downloads which start with getting a filelist. Since for a while now the filelist has contained the users CID. So suppose could use that to match users up, and replace the "made" cid (from hub and nick) with the actual cid. :)

TheParanoidOne
Forum Moderator
Posts: 1420
Joined: 2003-04-22 14:37

Post by TheParanoidOne » 2006-06-22 07:55

poy wrote:could IP be a better way to uniquely identify users in NMDC? of course, if there are 2 people with 2 computers behind the same router, there might be some problem


We have had support requests here from users whose ISPs use NATed connections. So while it is not commonplace in the grand scheme of things, the problems does exist.
The world is coming to an end. Please log off.

DC++ Guide | Words

GargoyleMT
DC++ Contributor
Posts: 3212
Joined: 2003-01-07 21:46
Location: .pa.us

Post by GargoyleMT » 2006-07-03 18:12

lordadmira wrote:No one's provided a reason why DC can't figure out commonality of users between hubs.

ADC's CID was meant to end the guessing. DC++ had to guess on NMDC hubs, since user identification wasn't something that Jon had to consider much when designing the protocol.

DC++ could implement more elaborate user guessing, but it would fail in some circumstances. Share size, for instance, may not be current, given the treatment of $MyINFO (the hub doesn't always have the current size of the hash, and the hub doesn't always let clients know if it does). IPs could be shared by multiple users (the probability of this varies widely by what type of hubs you are on) [IP isn't broadcast in MyINFO, only in UserIP, which I thought was still not widely deployed by NMDC hubs - something about security issues for broadcasting user IPs. a discussion may be archived here]. Nick is, well, nick. As for Email, Description, or Connection Type, nobody has seriously considered these, since they're not used much and can be changed very easily.

Asc3nti0n
Account Disabled Due to Policy
Posts: 15
Joined: 2003-01-24 21:42
Location: AUST
Contact:

Post by Asc3nti0n » 2006-07-05 03:34

Back in the days that I was admin of a small LAN only internal hub on a university network, I played with script design to identify and log users attempts at circumventing bans. This would involved tracking their IP, Nick and Sharesize, and time between connection attempts. I was using SDCH and i never quite got to coding a working beta. But this was on the hub side, not the client side. It was my ability to code it mself, it isn't here. The adminship code in what they will make the client better, and If there is multiple connections getting through, then yes, something should be done. But sheez, pick a good day to share your problem on here.

Qn: Getting someones filelist updates the icon from Green to Blue how? Similarly can this also update the CID in the filelist, in the local client at all? Surely this is easy and more useful than not in the future?

Now realise, getting the other guys list isn't going to stop his client trying, we're then putting into our client blocking/banning code... which isn't right. The hacked clients will implement this throughout the place, making them even more popular with the riff-raff users around.

Case Study: You're the "other" guy.
- Has their client just "searched for alternates" and picked up another connection. In this case this is a Bug Report.
- Are they using a Hack client of which the guys here have almost no control over. in this case, we're stuffed.

The Qn above may solve an inadvertant picking up the extra same-user slots but not in a hack client, code can be deleted in source and recompiled.

Soln?: If the local client detects a same IP, same username, same sharesize from a connection, can the connection be dropped and/or added to "Waiting Users" ... i assume this is not a queue as such, but just a sniffer of access attempts, not to go as far as ban a connection attempt, but simply to delay it till after the first one has finished, they shouldn't know the different, it'll be as though you're out of slots.

a remote close of a connection, by default, the next time you go to pickup that file again, does the local client get the filelist again. Or is the get file list before a file download only active for certain settings/file-dl-initiations... (i only download from a search window, i find browsing tiresome)

ok, enough brainstorming. food for thought.
coz MacsRBest

LordSqueak
Posts: 10
Joined: 2003-11-04 18:02
Location: Sweden
Contact:

Post by LordSqueak » 2006-07-12 04:27

this CID stuff,, *sigh*
seems to me its not working as intended.

as it is now, whenever your client finds a hit on an search , it will start to download the users filelist,,, from all hubs at the same time.
annoying as hell.

reading this topic didnt exactly explain much either, except that it works this way because nmdc sucks.
well,, since nmdc is what all the available hubs use , I'd say its a bit premature to implement this "feature" yet.
and even if that adch hub something is released, i doubt everyone is suddenly going to migrate to it.
Image

poy
Posts: 83
Joined: 2006-04-03 15:55

Post by poy » 2006-07-12 06:27

(edited, i was wrong...)
Last edited by poy on 2006-07-12 11:16, edited 1 time in total.

lordadmira
Posts: 52
Joined: 2003-03-12 00:06
Location: Zinzinnati

Post by lordadmira » 2006-07-12 10:15

I think he was talking about the dl-list-to-get-cid thing. Not queue automatch.

I still say one connection per IP is the way to go here. Simple and can't be spoofed. For the people on IP sharing, tough. "Oh God no, I can't get my file RIGHT NOW!!" They'll get the file eventually. In exchange for a small incovenience to a tiny number of people a big annoying problem is solved. How is that wrong??

If u want to go with the "elegant" solution why not just implement a protocol extension to $getCID. Heck everything else is an extension, what's wrong with one more. As people upgrade everything will fall into place.

LA
Anata ga baka da! Repent!

ullner
Forum Moderator
Posts: 333
Joined: 2004-09-10 11:00
Contact:

Post by ullner » 2006-07-12 18:19

lordadmira wrote:In exchange for a small incovenience to a tiny number of people a big annoying problem is solved. How is that wrong??
You obviously haven't (a) been to any hubs where operators kick for lack of downloading file lists ("omg, I can't download the list, CHEATER!") and/or (b) don't know that there are VERY many people on the same IP.
lordadmira wrote:If u want to go with the "elegant" solution why not just implement a protocol extension to $getCID. Heck everything else is an extension, what's wrong with one more. As people upgrade everything will fall into place.
The problem is that people don't upgrade... And I'd say your suggestion is quite hack-ish and not very "elegant".

LordSqueak
Posts: 10
Joined: 2003-11-04 18:02
Location: Sweden
Contact:

Post by LordSqueak » 2006-07-13 01:29

the thing i dont get about this cid stuff... why does it use hubname to generate a personal checksum??

as i understand it , it's supposed to be an unique identifyer, but if you use hubname , its obvious it will generate different cid's for different hubs.

the only reason for doing this would be if dc++ plans to implement different shares for different hubs.
but reading through this thread, this does not seem likely.

How about an option to enable/disable this cid stuff, old method works better for now atleast.
Image

Quattro
Posts: 166
Joined: 2006-01-11 09:23

Post by Quattro » 2006-07-13 02:47

LordSqueak wrote:the thing i dont get about this cid stuff... why does it use hubname to generate a personal checksum??

as i understand it , it's supposed to be an unique identifyer, but if you use hubname , its obvious it will generate different cid's for different hubs.

the only reason for doing this would be if dc++ plans to implement different shares for different hubs.
but reading through this thread, this does not seem likely.

How about an option to enable/disable this cid stuff, old method works better for now atleast.

different shares per hub will be possible with the ADC protocol...
and the CID will get unique when using ADC only
You can send a message around the world in 1/7 of a second; yet it may take several years to move a simple idea through a 1/4 inch of human skull.

GargoyleMT
DC++ Contributor
Posts: 3212
Joined: 2003-01-07 21:46
Location: .pa.us

Post by GargoyleMT » 2006-07-14 19:32

LordSqueak wrote:this CID stuff,, *sigh*
seems to me its not working as intended.

The CID was never intended to work on NMDC - it's a feature of the ADC protocol. DC++ has been rewritten for ADC, so it makes its own CIDs up for users on NMDC hubs based on their nick and the hub name (I hope I was careful enough to say "pseudo-CID" earlier).

lordadmira wrote:I still say one connection per IP is the way to go here. Simple and can't be spoofed.

That solution may work fine for you, but if we implemented it, it would result in confusion and support requests when it got triggered.

Quattro
Posts: 166
Joined: 2006-01-11 09:23

Post by Quattro » 2006-07-15 01:14

make it a setting in advanced which defaults to three or something like that?
or the amount of slots set for uploading, people can then change it when they are really sick of one user downloading theyre files all the time.
You can send a message around the world in 1/7 of a second; yet it may take several years to move a simple idea through a 1/4 inch of human skull.

lordadmira
Posts: 52
Joined: 2003-03-12 00:06
Location: Zinzinnati

Post by lordadmira » 2006-07-15 12:59

Yes
Anata ga baka da! Repent!

GargoyleMT
DC++ Contributor
Posts: 3212
Joined: 2003-01-07 21:46
Location: .pa.us

Post by GargoyleMT » 2006-07-15 20:12

Quattro wrote:make it a setting in advanced which defaults to three or something like that?

Making it a setting wouldn't really lessen the confusion that users have when it is triggered, will it?

And if it is allowed to be set to 1, I suspect most people will set it to 1.

lordadmira
Posts: 52
Joined: 2003-03-12 00:06
Location: Zinzinnati

Post by lordadmira » 2006-07-15 20:47

Users that are that easily confused won't be looking around in the advanced settings in the first place. It's just another way of turning over power to the user. Concentration of power is bad. :)



LA
Anata ga baka da! Repent!

HappyTheMan
Posts: 10
Joined: 2006-08-28 18:45

Post by HappyTheMan » 2006-09-11 23:55

Todi wrote:Nick+IP is just as broken as just Nick, since having different nicks in each hubs you're in (which many do) would circumvent it. Just set your Slots to 1 and you won't have any problem with users downloading too much from you..

And what about somthing like IP+computer name (usually desk) in the network ? I think on one university network behing a proxy each computer has a different name doesn't it ? But I don't know if DC++ can have access to that information

ullner
Forum Moderator
Posts: 333
Joined: 2004-09-10 11:00
Contact:

Post by ullner » 2006-09-12 04:34

I doubt many users would want others to know what their computer is called. Major security hole.

Guitarm
Forum Moderator
Posts: 385
Joined: 2004-01-18 15:38

Post by Guitarm » 2006-09-12 05:26

Lordadmira,

You seem to be a man with a eager mind and alot of energy. Why not spend that energy on making the patches you want (and suggest them) instead of writing whole essays on why the application isn't up to your standards?
"Nothing really happens fast. Everything happens at such a rate that by the time it happens, it all seems normal."

GargoyleMT
DC++ Contributor
Posts: 3212
Joined: 2003-01-07 21:46
Location: .pa.us

Post by GargoyleMT » 2006-09-29 19:14

HappyTheMan wrote:But I don't know if DC++ can have access to that information
It doesn't have access to that information on remote computers.

nickez
Posts: 18
Joined: 2004-07-18 11:47
Location: Sweden
Contact:

Post by nickez » 2006-10-05 15:43

ullner wrote:I doubt many users would want others to know what their computer is called. Major security hole.
I think he meant that the hash could be built with IP+Comp name. you cant backtrace a hash..
//NickeZ

ullner
Forum Moderator
Posts: 333
Joined: 2004-09-10 11:00
Contact:

Post by ullner » 2006-10-06 05:05

ADC's CID is already constructed with the MAC address.

Carraya
Posts: 112
Joined: 2004-09-21 11:43

Post by Carraya » 2006-10-06 06:22

ullner wrote:ADC's CID is already constructed with the MAC address.
Oh but it's easy to fake :)
<random funny comment>

ullner
Forum Moderator
Posts: 333
Joined: 2004-09-10 11:00
Contact:

Post by ullner » 2006-10-07 04:50

Easy to fake your own MAC? Yes, and? What's your point?

Carraya
Posts: 112
Joined: 2004-09-21 11:43

Post by Carraya » 2006-10-07 06:36

ullner wrote:Easy to fake your own MAC? Yes, and? What's your point?
Was more talking about how easy it is to change CID...
<random funny comment>

ullner
Forum Moderator
Posts: 333
Joined: 2004-09-10 11:00
Contact:

Post by ullner » 2006-10-08 05:47

There's even an easier way to change PID/CID. Just look in Experts only.

Locked