• SQL Server出现错误: 4014


    SQL Server出现错误: 4014

    线下的测试机器老是报错,从errorlog里看到大量的4014错误

    A fatal error occurred while reading the input stream from the network. The session will be terminated (input error: 0, output error: 0).
    错误: 4014,严重性: 20,状态: 16

    于是谷歌了一下,发现了一篇文章:https://www.mssqltips.com/sqlservertip/3538/fixing-sql-server-fatal-error-4014/

    大家知道现在的网卡内置功能都比较厉害,有些功能甚至可以代替CPU去执行,于是微软发布了Scalable Networking Pack (SNP) 可伸缩网络包,可伸缩网络包包括了以下3个主要功能

    TCP/IP Chimney Offload
    Receive Side Scaling (RSS)
    Network Direct Memory Access (NetDMA)

    大家可以用下面命令查看上面3个功能是否是enabled

    netsh int tcp show global

    一般操作系统会默认开启Chimney Offload功能,这个是TCP/IP网络包下推功能,本来是CPU处理的现在交给网卡处理,减轻CPU负担,加快网络包处理速度

    但是不是所有网卡都支持Chimney Offload功能,由于线下测试机器是普通家用PC,所以网卡驱动并不带有这个内置功能

    解决办法是禁用Chimney Offload

    netsh int tcp set global chimney=disabled
    netsh int tcp set global rss=disabled

    禁用之后,再执行netstat命令看一下处理是否迁移回CPU

    netstat -t

    如果最后一列是InHost,那么表示数据包的处理逻辑是CPU上完成,而不是在网卡上完成

    至此,问题解决,errorlog也没有发现4014错误

    如有不对的地方,欢迎大家拍砖o(∩_∩)o 

    本文版权归作者所有,未经作者同意不得转载。

  • 相关阅读:
    python字符串的第一个字符和最后字符
    python str和repr的区别
    python list tuple知识点
    python list append 相关知识点
    python dict remove,删除
    python windows和linux下安装和配置
    python 集合的相关操作
    python list 合并连接字符串
    python中文视频教程
    小程序授权登录
  • 原文地址:https://www.cnblogs.com/lyhabc/p/5301465.html
Copyright © 2020-2023  润新知