The current SoulSeek protocol doesn’t support multiple sources downloads. This means you have to wait in a queue till you are first and your download starts. For british people this wouldn’t be much of a problem but for the rest of the world to queue means to loose time.

In real life queues are a mysterious thing: on one hand they can be huge but you only wait five minutes but on the other hand five persons can make you wait an hour. SoulSeek is not different in this manner. You see a queue number but you don’t know how long you have to wait. Maybe you observed yourself already comparing upload-speed with the queue to get some idea how long you will have to wait. That’s all right if you like maths but for the rest of us the situation isn’t satisfying.

That’s why SolarSeek introduces the “dispatch” semantics. It’s a time indication that shows you how long it will take until your file will be dispatched or in other words downloaded. This means you don’t have to interpret an abstract queue number.

dispatch time = (( queuelength / uploadslots ) * ( totalfilesize / totalfiles )) / uploadrate

In addition a result with no queue will be rated to indicate which one has best quality at the highest speed. And all this again without concentrating on number that you would have to interpret.

dispatch rating = ( mp3rate / ( totalmp3rate / totalresults )) / ( uploadrate / ( totaluploadrate / totalresults ))

What do you think about the dispatch semantics?

Update: We probably call the column “Queue Time” instead of “Dispatch”.