суббота, 16 марта 2013 г.

load sharing vs load balancing

Хотелось бы уточнить некоторые нюансы терминологии.

Мне представляется неверным использование термина 'load balancing' (балансировка нагрузки) в контексте наличия нескольких путей перенаправления (форвардинга) трафика между его источником и пунктом назначения. В частности, при использовании агрегации физических портов в один логический (bonding в linux, teaming в windows, trunking у HP) или при наличии нескольких L3-маршрутов (equal cost multipath). Само слово 'балансировка' подразумевает, по моему мнению, динамическое изменение одного параметра (next-hop или выходной интерфейс) в зависимости от некоей метрики нагрузки. Подобным образом работают решения вроде F5 LTM, ACE и прочая. Например, если отклик одного из множества серверов или количество соединений на нем меньше, чем у остальных, следующий запрос будет направлен на него. В случае агрегации портов и l3-ecmp выбор пути, по которому будет направлен пакет, происходит, как правило, при помощи подсчета хэша от неких полей пакета. В некоторых случаях возможна, к примеру, полная утилизация одного из линков-членов агрегированного линка и низкая утилизация других.

Поэтому в этих контекстах уместнее говорить именно о 'разделении' нагрузки, load sharing.

Комментариев нет:

Отправить комментарий