Справочник системных ошибок и решений

Windows Server, Active Directory, 1С:Предприятие, СУБД, Linux, Cisco, MikroTik, Asterisk.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты на сайте предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, программного обеспечения, баз данных, сетевого оборудования и других компонентов инфраструктуры. Перед выполнением действий создайте резервную копию и по возможности протестируйте изменения в безопасной среде. Пользователь самостоятельно оценивает риски и несет ответственность за результат. При отсутствии необходимых знаний обратитесь к квалифицированному ИТ-специалисту.

MSSQL_17836 1С:Предприятие и СУБД

MSSQL Error 17836: Length specified in network packet payload did not match bytes read — Решение

Обновлено: 25.08.2026 · Официальная документация ↗
  • В журнале SQL Server Errorlog появляется ошибка: Error: 17836, Severity: 20, State: 17. Length specified in network packet payload did not match number of bytes read; the connection has been closed.
  • Клиенты 1С:Предприятие аварийно завершают работу с сообщением: «Удаленный хост принудительно разорвал существующее подключение» или «Ошибка сетевого взаимодействия с сервером 1С».
  • В системном журнале Windows System/Application фиксируются события Schannel или разрывы TCP-сессий с кодом Event ID 36888 / 36874.
  • Сбои происходят преимущественно при передаче больших выборок данных (выгрузка отчетов, регламентные задания фонового обновления).

1. Анализ сетевых параметров и фрагментации пакетов (Jumbo Frames / MTU)

Несоответствие размера полезной нагрузки TDS (Tabular Data Stream) часто вызвано аппаратной фрагментацией или включенными функциями разгрузки сетевой карты (Offloading).

# Проверка текущего MTU на сетевых интерфейсах
Get-NetIPInterface | Select-Object InterfaceAlias, NlMtu, AddressFamily

# Отключение аппаратных оптимизаций NIC, вызывающих повреждение пакетов TDS
Disable-NetAdapterLso -Name "*" -IPv4 -IPv6
Disable-NetAdapterChecksumOffload -Name "*"
Disable-NetAdapterRsc -Name "*"

2. Проверка и фиксация размера сетевого пакета в SQL Server

По умолчанию 1С:Предприятие и MSSQL согласовывают размер сетевого пакета (Network Packet Size) 4096 байт. Не рекомендуется завышать этот параметр глобально на сервере.

-- Проверка глобального размера сетевого пакета
EXEC sp_configure 'show advanced options', 1;
RECONFIGURE;
EXEC sp_configure 'network packet size';

-- Возврат к эталонному значению по умолчанию (4096 байт)
EXEC sp_configure 'network packet size', 4096;
RECONFIGURE WITH OVERRIDE;

3. Исключение промежуточных инспекторов трафика (IPS / Antivirus / TLS Inspection)

Антивирусные экраны и межсетевые экраны нового поколения (NGFW), выполняющие глубокую инспекцию пакетов (Deep Packet Inspection), могут модифицировать TDS-заголовки. Добавьте порты SQL Server (по умолчанию TCP 1433) и процессы sqlservr.exe, ragent.exe, rmngr.exe, rphost.exe в исключения сканирования сетевой активности.

4. Трассировка сбоя через Extended Events

CREATE EVENT SESSION [Track_TDS_Errors] ON SERVER 
ADD EVENT sqlserver.error_reported(
    ACTION(package0.last_error, sqlserver.client_app_name, sqlserver.client_hostname, sqlserver.session_id)
    WHERE ([error_number]=(17836))
)
ADD TARGET package0.ring_buffer
WITH (MAX_MEMORY=4096 KB, EVENT_RETENTION_MODE=ALLOW_SINGLE_EVENT_LOSS);
GO
ALTER EVENT SESSION [Track_TDS_Errors] ON SERVER STATE = START;
💡 Практика специалистов: В 90% случаев при связке 1С + MSSQL ошибка 17836 возникает из-за включенного Large Send Offload (LSO) на виртуальных сетевых адаптерах гипервизора. Отключайте LSO на уровне ОС и самого виртуального коммутатора.

Частые вопросы (FAQ)

Что вызывает ошибку 17836 на уровне протокола TDS?

Протокол TDS предписывает передачу 8-байтового заголовка в каждом пакете, где указана общая длина пакета. Ошибка 17836 возникает, когда ядро SQL Server вычитывает из сокета меньше байтов, чем заявлено в полученном заголовке.

Может ли ошибка 17836 быть вызвана нестабильностью сетевой карты гипервизора (VMXNET3 / Hyper-V Network Adapter)?

Да, устаревшие версии драйверов VMXNET3 или включенные функции LSO/TSO (Large Send/Task Offload) в гостевой ОС часто приводят к искажению смещений в сетевых буферах.

Связана ли данная ошибка с шифрованием TLS/SSL в SQL Server?

Да, если на стороне SQL Server активирован параметр Force Encryption, а клиентские компоненты (ODBC/OLE DB драйверы на сервере 1С) не поддерживают согласованную версию TLS (например, TLS 1.2/1.3), рукопожатие может завершиться повреждением пакета.

Требуется ли перезапуск экземпляра SQL Server после изменения MTU или отключения LSO?

Перезапуск СУБД не обязателен, но рекомендуется сбросить сетевой адаптер или выполнить перезагрузку сервера в технологическое окно для сброса пулов TCP-соединений.

Полезные материалы
Рекомендуем