Приветствую, русское сообщество :) По работе стало необходимо получать/отправлять пакеты 1530 байт (соответственно, 1548 и больше байт ethernet кадры) на моем ноутбуке. Карточка следующая: 03:00.0 Ethernet controller: Broadcom Corporation BCM4401-B0 100Base-TX (rev 02) В драйвере b44.c жестко прописаны макросы: #define B44_MAX_MTU 1500 #define RX_PKT_BUF_SZ (1536 + RX_PKT_OFFSET) и проверка в функции приема кадра: if ((len > (RX_PKT_BUF_SZ - RX_PKT_OFFSET)) ... drop_it: Из этого вижу, что можно уставить максимум MTU 1500 и принять ethernet кадр до 1536 байт. Вопрос второстепенный: может ли кто-то объяснить, почему по умолчанию выделяется 1536 байт? Понятно, что предусматриваются теги 802.1Q, MPLS метки и тп. Но подобный функционал зашит во множество сетевого оборудования и это критично для сети провайдера. Просто хочется понять... Мною были выполнены следующие действия: - B44_MAX_MTU увеличено до 1530 - RX_PKT_BUF_SZ увеличено до (1548 + RX_PKT_OFFSET) После этого сетевуха работает нормально с пакетами 1530 байт по обычной ethernet сети. Теперь основной вопрос: есть ли какие-то подводные камни подобного решения (пока рассматриваю заголовок ethernet 18байт) и, если все работает, почему в ядре стоит жесткое ограничение на 1500 байт? Буду рад услышать ответы/мнения/предположения. Спасибо.