Modify equo repo mirrorsort

Discuss all artwork and development - Suggestions needed

Moderator: Moderators

Modify equo repo mirrorsort

Postby Stupot » Fri May 27, 2011 22:35

This has been mentioned a number of different times by a number of different people.

The command 'equo repo mirrorsort' is a great idea that does not always produce desirable results. It seems to sort the list of mirrors solely on ping responses, which does not take into account bandwidth. Often times, mirrors with great pings will have very poor bandwidth and the user would be better off going somewhere else.

I'm bringing this up on the forums as opposed to a filing a bug for now because I think some brainstorming might be required as to what the correct step is.

From a user's perspective, they would want to have bandwidth tested from all of the mirrors and have them sorted accordingly. However, that sort of mechanism might not correctly balance the load for the mirrors, not to mention it would take much longer to run for the user. I don't think mirrorsort is run that often that using extra bandwidth should be a concern, but perhaps it is as well.

I'm not really sure how practical it is to implement something serverside/mirrorside as far as gathering statistics so that the mirror could give some sort of useful information for someone who does a mirrorsort is. A quick thought I came up with is if a mirror could somehow rate it's performance and the mirrorsort could use a combination of the server's score and ping/bandwidth results to sort. To be honest, I don't know what sort of information would be useful for having a server rate its performance, as I said it was just a quick thought that came to mind.

That said, it is also entirely possible that using pings is the best system to use as far as mirrors are concerned, regardless of whether it is not the best for users. And if this is the case, then it would be better to keep the mirror system happy than break it in an effort to make users happier. But perhaps some sort of compromise could be struck.

Also, I think it would be appropriate if an 'equo repo mirrorsort' ran as a part of the installation or first boot or first time entropy is run. This might already be the case though, I haven't have to install Sabayon for years now. :)
Stupot
Sagely Hen
 
Posts: 1012
Joined: Wed Feb 14, 2007 3:44
Location: St. Louis, MO, USA

Re: Modify equo repo mirrorsort

Postby micia » Sat May 28, 2011 9:53

I think another way to do this is client side. Some sort of dynamic mirror sorting.

1) Initial sorting according to ping rate
2) when it downloads the packages it keeps track of the download speed, response time and success (for example if the package was found, not found or corrupted) for each mirror.
3) according to the data collected in step 2 it determines the best mirror sorting for the next downloads
4) repeat from step 2

I am not an expert in network protocols or in network programming, it is just an idea and it could be a very bad one :mrgreen:
Obviously the official mirror would need to be constantly the last resort since it would always have packages and in Italy it would always be the fastest and most responsive.
(also there are some users that enjoy forcing it to be the default even if clearly this must not be done)
The data would probably need to be collected for some time before performing another sort, for example it would sort the packages after 100MB downloaded, or after 10-15 packages downloads.
User avatar
micia
Sagely Hen
 
Posts: 2710
Joined: Wed Nov 26, 2008 16:41

Re: Modify equo repo mirrorsort

Postby Stupot » Sat May 28, 2011 18:09

I do like the concept of having the mirrors sort themselves client side as a part of standard package installations! No need to run the mirror sort if it's sort of done in that manner and users would be automatically happier.
Stupot
Sagely Hen
 
Posts: 1012
Joined: Wed Feb 14, 2007 3:44
Location: St. Louis, MO, USA

Re: Modify equo repo mirrorsort

Postby albfneto » Wed Jun 01, 2011 5:00

I use the Brazilian Mirrors as default, becuase I lives in Brazil.

Therefore, i dont use the command mirrorsort.

But, nearly one year, i suggested here, in this Forum, that an Entropy version of command for manually choose of mirrors may be useful.
Example, similar to the known command for Gentoo:

Code: Select all
mirroselect


but aplicable to Entropy. In this manner, the users may select the mirrors in their Country, or near their Country, as default, without the necessity to edit the repositories.conf file manually.
Image
ALBERTO FEDERMAN NETO
albfneto
albfneto@fcfrp.usp.br
Favorite Distros: Sabayon, Gentoo, Mandriva and OpenSUSE
User avatar
albfneto
Sagely Hen
 
Posts: 1297
Joined: Fri Nov 16, 2007 1:15
Location: Ribeirão Preto City, São Paulo State, Brazil


Return to Artwork and Development Suggestions

Who is online

Users browsing this forum: No registered users and 0 guests