Включить GRO для UDP-порта явно

Включить GRO для UDP-порта явно

Я реализую простое приложение сокета на python и мне нужно, чтобы оно получало пакеты UDP с включенным GRO. Я проверил, что запущена только служба Python и что GRO включен через

eththool -k eth0 | egrep 'generic'

Показывает, что включены как GSO, так и GRO.

Кроме того, я использую scapy для отправки UDP-пакетов, подобных нижеприведенному. Они намеренно не имеют полезной нагрузки.

send(IP(dst="123.456.789.123")/UDP(dport=5000),count=10)

Вот что я написал на Python на данный момент

import socket, select

s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM, socket.IPPROTO_UDP)
s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 0)

s.bind(('123.456.789.123',5000))

while True:
  result = select.select([s],[],[])
  output = result[0][0].recv(512)
  print (output)

Итак, это выводит полезную нагрузку пакета каждый раз, когда он отправляется (просто для целей мониторинга). Это работает и путем проверки портов с помощью

netstat -tulpen

Показывает, что порт работает, открыт для UDP.

Теперь я хотел бы принудительно включить GRO на этом порту, как это сделать? Есть ли какая-то поддержка, чтобы сделать что-то подобное?

Я использую Linux Ubuntu с ядром версии 5.0.

Связанный контент