Articles of tcp

尽pipe安装了用于SQL2008的SQL Server Native Client,SQLCMD仍未被识别

这个小问题是我想解决的一个更大的问题的一部分: SQLCMD是否需要单独安装,还是包含在Microsoft SQL Server 2008 Native Client(我刚安装在我的Web服务器上)中。 也许这只是一个不正确的path问题。 这是我试过的: C:\>sqlcmd -S tcp:devmojito\mssqlserver2008,1433 'sqlcmd' is not recognized as an internal or external command, operable program or batch file. C:\> 这个相同的语法在我的SQL Server机器上的C驱动器上执行时工作。 编辑: path如下: C:> echo%PATH%C:\ oracle \ product \ 10.2.0 \ client_1 \ bin; C:\ Program Files \ Support Tools \; C:\ FileNET \ Fnsw \ […]

DMZ中持续的TCP连接

供应商正在请求允许DMZ中的服务器与内部networking之间的持续tcp(而不是端口80)连接。 我对这个设置没有太多的经验。 任何人都可以阐明允许持久连接的缺点吗? 指导是非常apprciated。

TCP RST在Windows 2003 sp2上每5分钟重置一次

最近我有一个Web开发人员来找我,问他为什么在他的应用程序正在访问一个SQL数据库接收连接错误。 所以,我通过正常的故障排除步骤来隔离或重现问题。 我发现,如果我使用查询分析器连接到数据库,并让连接空闲5分钟,它将断开连接。 含义…我将不再能够在查询分析器中的对象浏览器中刷新我的表或任何其他对象/节点。 我将不得不右键单击实例并刷新它重新build立连接。 接下来我去了wireshark并在客户端pc的nic卡上进行了捕获。 如果连接空闲时间超过5分钟,那么它每5分钟就会收到一次TCP RST复位。 我也在SQL Server上运行了捕获,并注意到了TCP RST重置命令。 下面附加的是从客户端机器捕获。 如果有人可以请协助…那太好了。 我检查了所有设置在SQL Server 2000对另一台服务器,他们都似乎是相同的。 – 如果我连接到任何其他SQL Server 2000服务器不会发生问题。 如果连接到服务器本身的SQL,则不会发生问题…所以只能通过networking。 – 我咨询了networking团队,这是回应:在SQL Server和桌面之间没有防火墙或代理。 stream量如下:Desktop-> Access Switch-> Distro Switch-> Core Switch-> Datacenter Switch-> SQL Server交换机上没有configuration安全ACL 他们也说NAT没有打开。 与SQL Server企业pipe理器不会发生问题。 – 同时处理SQL Profiler,在RST期间没有看到任何exception情况 我在谷歌上search到了高分辨率和低分辨率的文章。 没有运气! 我的问题是: 什么可能导致这个? 错误的序列号? 设置在路由器或交换机上的networking团队可能看过? 在Windows中设置? SQL Server 2000中的设置,我已经看了? 更好的方法来利用Wireshark来find更多的答案? RST从底部大约10。 编号时间源目标协议信息 258 […]

为什么在tcpdumplogging了数据包之后丢包?

我们遇到一些奇怪的丢包,想知道这个的原因。 我们有一个图像服务器和一个服务器来强调图像服务器。 两者都位于同一个数据中心 首先我们运行一个像这样的负载testing(缩短了可读性的命令): ab -n 50 -c 5 http://testserver/img/de.png 该图像只有大约300字节。 结果是非常快速的回应: Connection Times (ms) min mean[+/-sd] median max Connect: 0 0 0.1 0 0 Processing: 1 3 0.7 3 4 Waiting: 1 3 0.7 3 3 Total: 1 3 0.7 3 4 当我们增加并发时,我们看到一些滞后(为了可读性缩短命令): sudo ab -n 500 -c 50 http://testserver/img/de.png 结果与并发50: Connection Times (ms) […]

如何查看tcp发送和接收缓冲区的实际大小?

我们正在使用debian系统,并试图根据我们的需要调整tcp / ip堆栈。 我们都知道你可以用一些内核参数来设置最大的tcp缓冲区大小: net.ipv4.tcp_wmem = 4096 16384 4194304 net.ipv4.udp_wmem_min = 4096 net.core.wmem_max = 261071 为了计算你需要的最大缓冲区大小,你只需要计算它。 (见http://fasterdata.es.net/TCP-tuning/ ) 但是因为我们不知道用户的往返时间,所以相当困难。 假设20到60毫秒之间可能是可以的。 但是对于一个移动networking来说,就像100-300毫秒(用我的手机testing)。 所以很难知道有多less数据可能是“上线”的。 我们希望看到实际的缓冲区大小和利用率。 有谁知道如何进入实际的TCP写入和接收缓冲区?

Solaris上的TCP故障

我最近遇到了Solaris服务器无法在端口2126上build立TCP套接字的问题。从数据包捕获中我看到了这一点(注意:A是Solaris服务器,B是路由器): A向B发送SYN B向SYN发送SYN,ACK 注意A(Solaris)不会从B确认SYN。 由于问题的业务影响,我不得不重新启动服务器来解决问题。 这就是说,我想知道下一次发生问题,我能做些什么来获得根本原因(即在服务器重启之前)? 提前致谢。

有没有一个包装来限制一个可执行文件,以便它只能监听某些端口?

有没有一个封装,将阻止可执行文件侦听端口? 或者,是否有一个包装将重新映射端口,以便可执行文件认为它正在侦听80,但实际上正在侦听8080 我的梦想指挥线将是: server:~ # remapper -f 80 -t 8080 /usr/bin/some_binary

RWIN(TCP接收窗口)是否可以在Windows Server 2008 R2中手动设置?

在禁用“接收窗口自动调节”function后,是否有办法在Windows Server 2008 R2中手动设置接收窗口大小(RWIN)?

硬件不会响应对方的ARP请求

我有两个硬件(embedded式设备),我已经设置为通过以太网以TCP / TCP方式进行通信。 networking的拓扑结构如下: —– | S ||=|== Debug PC (w/ Wireshark) 192.168.10.41 | W ||=|== Hardware 1 TCP Client 192.168.10.42 | I ||=|== Hardware 2 TCP Server 192.168.10.40 | T | | C | | H | —– 硬件1尝试向服务器发送数据包Hardware 2时,首先发送一个ARP数据包,获取硬件2的MAC地址: No. Time Source Destination Protocol Length Info 157 11772.776136 Microchi_13:c3:6a Broadcast ARP 60 Who […]

closuresTCP端口没有进程

我在TCP端口处于侦听模式下,没有分配进程。 有没有办法closures这个端口,而不重新启动服务器? 检查端口状态: me> netstat -tan | grep 8888 tcp 0 0 :::8888 :::* LISTEN 寻找负责的stream程: me> lsof -i -P | grep 8888 以上命令不返回