ipoe: implemented new load balancing mechanism

News of development process
Post Reply
Dmitry
Администратор
Posts: 954
Joined: 09 Oct 2014, 10:06

ipoe: implemented new load balancing mechanism

Post by Dmitry »

Code: Select all

commit 1d6f68a518cd7f8cc182080b57d76ed16dc3973a
Author: Dmitry Kozlov <xeb@mail.ru>
Date:   Wed Dec 27 13:19:48 2017 +0300

    ipoe: implemented new load balancing mechanism
    
    new config options:
    [ipoe]
    weight=N - global weight
    interface=ethX,weight=N - per-interface weight
    
    How it works:
    On reception of DHCPDISCOVER accel-ppp sends broadcast DHCP message to port 67 with same xid and add special vendor-specific option
    where encodes its current session count multipled by weight.
    On reception of such message accel-ppp searches session with same xid and compares weight.
    If received weight is less than session's weight then it terminates this session.
    per-interface weight=0 has special meaning as backup (fail-over) interface, f.e. it terminates session on any received weight.
    
    By default weight based load balancing is disabled.
    To enable need to specify global or/and per-interface weight.
Реализован новый способ распределения нагрузки основанный на весах.
Работает следующим образом:
в конфиге задаётся
[ipoe]
weight=N - глобальный вес
interface=ethX,weight=N - интерфейсный вес

при получении DHCPDISCOVER accel-ppp отправляет широковещательный DHCP пакет с таким-же xid и добавляет спец. venodor-specific опцию
куда записывает свой вес: глобальный weight умноженный на общее кол-во сессий, либо, если задан интерфейсный вес, то интрефейсный вес умноженный на кол-во сессий на интерфейсе.
Получив такое сообщение от другого accel-ppp, происходит поиск сессий по xid и сравнивается её вес с принятым, если принятый вес меньше, то сессия останавливается.
Интерфейсный weight=0 является специальным, используется для обозначения интерфейса который будет резервным, т.е. при получении любого веса от другого сервера, сессия будет останавливаться,
таким образом сессия запустится только если никто больше не отвечает.
uesleycorrea
Posts: 17
Joined: 27 Nov 2017, 13:37

Re: ipoe: implemented new load balancing mechanism

Post by uesleycorrea »

I need testing this. In this case, both accel-ppp communicates? And swap information for weight, how it works? I don't understand this.

Regards,
Dmitry
Администратор
Posts: 954
Joined: 09 Oct 2014, 10:06

Re: ipoe: implemented new load balancing mechanism

Post by Dmitry »

they communicate by special broadcast dhcp messages
brodayga
Posts: 95
Joined: 23 Oct 2014, 06:13

Re: ipoe: implemented new load balancing mechanism

Post by brodayga »

Данный механизм работает до или после попытке авторизации?
dimka88
Posts: 839
Joined: 13 Oct 2014, 05:51
Contact:

Re: ipoe: implemented new load balancing mechanism

Post by dimka88 »

После, т.е. обращение к RADIUS будет, если речь об этом.
Post Reply