Предлагаю клиенту выбирать 1 хаб максимально близкий.
Его характеристики:
1 Маленький пинг.
2 Наименьшее количество узлов между клиентом и хабом.
3 Наибольшая скорость обмена данными.
Таким образом на хабе и ближайших к нему будут собираться локальные клиенты. Также сам хаб должен следуя этой же логике соединяться с 2-3мя ближайшими хабами. Остальные выбираются случайно.
Это уменьшит спам в сети и увеличит результативность поиска локального контента.