Русская Википедия:Large receive offload

Материал из Онлайн справочника
Версия от 18:50, 15 июля 2023; EducationBot (обсуждение | вклад) (Новая страница: «{{Русская Википедия/Панель перехода}} В компьютерных сетях '''large receive offload''' ('''LRO''') — это способ увеличения входящей пропускной способности сетевого интерфейса за счёт снижения нагрузки на CPU|центральный п...»)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)
Перейти к навигацииПерейти к поиску

В компьютерных сетях large receive offload (LRO) — это способ увеличения входящей пропускной способности сетевого интерфейса за счёт снижения нагрузки на центральный процессор. Он заключается в агрегировании нескольких входящих пакетов из одного потока в буфер большего размера до передачи их выше по сетевому стеку, что позволяет уменьшить количество пакетов, требующих обработки.

Large receive offload

Реализация в ядре Linux обычно использует LRO в связке с New API (NAPI) для того, чтобы также сократить и количество прерываний.

По данным бенчмарков, даже будучи реализованным полностью на программном уровне LRO может значительно увеличить производительность сетевой подсистемы.[1][2][3] По состоянию на апрель 2007, ядро Linux поддерживает LRO для TCP только на программном уровне. FreeBSD 8 поддерживает LRO на аппаратном уровне при использовании сетевых адаптеров, имеющих такую функциональность.

LRO не должен применяться на узлах сети, выступающих в роли маршрутизатора, так как это нарушает принцип end-to-end и может оказать существенное влияение на производительность.

Generic receive offload

Generic receive offload (GRO) — это программная реализация обобщённой LRO, не ограничивающаяся одним только TCP/IPv4 и свободная от некоторых проблем LRO.[4]

См. также

Примечания

Шаблон:Примечания