Назад | Перейти на главную страницу

Почему функция TCP Chimney Offload на некоторых картах Ethernet не может передать некоторые сетевые пакеты в ОС?

В http://support.microsoft.com/kb/942861 Microsoft сообщает, что в некоторых ситуациях Microsoft SQL Server испытывает проблемы с сетью из-за того, что на сетевой карте включена функция TCP Chimney Offload. У меня есть другое серверное программное обеспечение, в котором возникают аналогичные проблемы. Результат такой же, как и в случае с SQL Server, выключите TCP Chimney Offload, и все вернется в норму.

Что делает эта функция TCP Chimney Offload? Что мешает определенным сетевым пакетам достигать конечного приложения?

TCP Chimney - одна из многих функций, которые помогают перенести большую часть сетевой обработки с центрального процессора на сетевую карту. Проблема в том, что некоторые сетевые карты делают это неправильно. Когда это происходит, контрольные суммы ошибаются или пакеты загадочным образом искажаются. Искаженные пакеты так же хороши, как и отброшенные пакеты, и поэтому не доходят до места назначения.

Кстати, карты Broadcom печально известны этим багом.

TCP Chimney кажется формой Механизм разгрузки TCP который работает с Windows для оптимизации TCP-трафика. Обычно разгрузка TCP намного более монолитна, тогда как Chimney, кажется, допускает метод частичной разгрузки, который упрощает некоторые вещи. Это проприетарная вещь Window. Microsoft Блог биржи есть информация о Дымоходе.