Articles of tcp

强制转发器的DNS请求到TCP模式

我已经在多宿主服务器上的SLES10上build立了DNS服务器(当前绑定9.6)。 该服务器可以从所有内部networking查询,并为所有内部networking提供答案。 我们有两个独立的DNS“主”区域。 每个区域都由许多权威的Windows-DNS服务器提供服务。 现在我的linux服务器是这些区域之一(私有内部区域)的辅助DNS服务器,并充当其他区域(公共内部区域)的转发器。 直到最近这个设置工作没有问题。 现在我开始查询公共内部区域(例如,通过Linux客户机上的host命令)查看错误消息 ;; 截断,在TCP模式下重试 一个wireshark转储揭示了这个原因:第一个查询以UDP模式出去,答案不适合UDP(由于权威NS的列表很长),然后在TCP模式下重试,提供正确的答案。 现在的问题是:我可以configuration我的绑定查询转发器在TCP模式下,而不先尝试UDP? 更新:尝试我的手在ASCII艺术… +————–+ +————–+ +—————–+ | W2K8R2 DNS | | SLES 10 DNS | | W2K8R2 DNS | | Zone private +—+ All internal +—+ Zone public | | internal 2x | | Zones | | internal 30+ x | +————–+ +-+———-+-+ +—————–+ | | […]

如何检查特定TCP端口上当前打开了多less个连接?

我正在做一些彗星的基准,并希望看到我有多less个开放的连接。 其实我使用netstat: netstat -ant | grep 8080 | grep EST | wc -l 但是需要大概4-6分钟才能列出号码,是否有任何可以实时显示的工具? 打开的连接数量在100'000 – 250'000之间。

为什么WireShark认为这个帧是一个重组PDU的TCP段

请在这里find一个小的pcap文件,说明我的问题。 我有一个三方TCP握手,其次是两个FIXlogin。 (FIX是交易中使用的协议。)第一个FIXlogin(第4帧)由WireShark解释和parsing,但第二次login(第6帧)被解释为TCP segment of a reassembled PDU的TCP segment of a reassembled PDU 。 但是,帧6 不是重组PDU的TCP段。 它包含一个完整的TCP PDU,应该被解释和parsing为一个FIXlogin。 我已经检查过序列号,ACK号码,IP总长度等都是好的。 为什么帧6被解释为重组PDU的TCP段?

HTTP,TCP,UDP和无连接

最近我对HTTP有些困惑。 有些事实是,TCP可以操作连接或无连接,这我明白了。 TCP虽然是面向连接的,而UDP是无连接的,当消息本身可以适合单个消息时使用。 题: 如果HTTP使用TCP,并且TCP为多个消息交换提供可靠的连接,并且HTTP被认为是无连接的,那么这怎么可能? TCP是面向连接的吗? 那么HTTP如何无连接?

在TCP / IP方面,一个办公室的下载速度限制器是如何工作的?

假设一个人的办公室,他们希望限制HTTP下载到他们的互联网连接速度的最大40%带宽,以便它不阻挡其他stream量。 我们说“这不是你的防火墙支持的”,他们说“我们曾经可以用我们的Netgear / DLink / DrayTek做到这一点”是不可避免的。 想想看,下载是这样的: HTTP GET request Server sends file data as TCP packets Client acknowledges receipt of TCP packets Repeat until download finished. 速度取决于服务器向您发送数据的速度,以及您承认速度的速度。 所以,为了限制下载速度,你有两个select: 1)指示服务器向你发送数据更慢 – 我不认为有任何协议function要求在TCP或HTTP。 2)通过限制上传速度更慢地确认数据包,同时也破坏了上传速度。 设备如何做到这一限制? 有没有标准的方法?

如何configurationiptables,使不需要的端口不被过滤

我想阻止其他人看到我的端口在nmap标准扫描(非特权)过滤。 假设我打开了以下端口:22,3306,995和一个像这样configuration的防火墙: -A INPUT -p tcp -m tcp –dport 22 -j DROP -A INPUT -p tcp -m tcp –dport 3306 -j DROP -A INPUT -p tcp -m tcp –dport 995 -j DROP 这是nmap扫描的结果: [+] Nmap scan report for XXXX Host is up (0.040s latency). Not shown: 90 closed ports PORT STATE SERVICE 22/tcp filtered ssh […]

高stream量站点如何服务超过65535个TCP连接?

如果一台机器可以拥有的端口数量有限制,并且一个套接字只能绑定到一个未使用的端口号,那么服务器如何处理这个请求的数量(超过最大端口数)将会如何处理呢? 是否仅仅通过使系统分布来完成,即许多机器上的许多服务器?

在大型RTT上,从1Gbps服务器的TCP吞吐量低于100Mbps服务器的TCP吞吐量

我们的基础设施遍布世界各地 – 新加坡,伦敦和洛杉矶。 任何两个地点之间的RTT超过150毫秒。 我们最近升级了所有的服务器以使用1Gbps链路(从100Mbps)。 我们已经在不同地点的服务器之间运行了一些基于TCP的testing,并且看到了一些令人惊讶的结果。 这些结果是完全可重复的。 洛杉矶(100Mbps)到伦敦(100Mbps):〜96Mbps吞吐量 洛杉矶(100Mbps)到伦敦(1Gbps):〜96Mbps吞吐量 洛杉矶(1Gbps)到伦敦(100Mbps): 10-40Mbps吞吐量(易失性) 洛杉矶(1Gbps)到伦敦(1Gbps): 10-40Mbps吞吐量(易失性) 洛杉矶(1Gbps)到洛杉矶(1Gbps):吞吐量> 900Mbps 似乎每当发送者以1Gbps运行时,我们的吞吐量在长链接上受到非常大的影响。 之前的testing方法非常简单 – 我只是使用cURL从目标服务器下载1GB二进制文件(因此,在上述情况下,cURL客户端在伦敦服务器上运行并从洛杉矶下载,因此LA是发件人) 。 这当然是使用单个TCP连接。 使用iperf通过UDP重复相同的testing,问题消失! 洛杉矶(100Mbps)到伦敦(100Mbps):〜96Mbps吞吐量 洛杉矶(100Mbps)到伦敦(1Gbps):〜96Mbps吞吐量 洛杉矶(1Gbps)到伦敦(100Mbps):〜96Mbps吞吐量 洛杉矶(1Gbps)到伦敦(1Gbps):吞吐量> 250Mbps 这正好指出了一些TCP或NIC /端口configuration问题。 两台服务器都运行CentOS 6.x,使用TCP立方体。 最多有8MB的TCP发送和接收窗口,并且启用了TCP时间戳和select性确认。 所有testing用例都使用相同的TCPconfiguration。 完整的TCPconfiguration如下: net.core.somaxconn = 128 net.core.xfrm_aevent_etime = 10 net.core.xfrm_aevent_rseqth = 2 net.core.xfrm_larval_drop = 1 net.core.xfrm_acq_expires = 30 net.core.wmem_max = 8388608 net.core.rmem_max = 8388608 […]

我在哪里可以将专有信息embedded到第2层或第3层数据包中?

Citrix Netscaler具有一个有趣的属性,将信息embedded发送到主机的TCP数据包中。 这个属性被回显给Netscaler,Netscaler可以使用它来确定这个虚拟服务器,主机和路由必须采用哪一个。 将专有信息回显到主机的能力具有有趣的应用。 Citrix Netscaler如何实现这个function(在哪里填充这些位)以及Netscaler(或类似设备)在数据包中的其他位置可以在理论上填充数据? 什么设备将(或不会)允许这个自定义数据通过不变?

当sysctl tcp_retries1设置为3时,TCP数据包被重新传输7次 – 为什么?

Ubuntu 12.04 我试图更好地理解TCP在尝试重传数据包时没有收到目的地收到的确认信息。 看完tcp手册页后 ,看起来很清楚,这是由sysctl tcp_retries1控制的: tcp_retries1 (integer; default: 3) The number of times TCP will attempt to retransmit a packet on an established connection normally, without the extra effort of getting the network layers involved. Once we exceed this number of retransmits, we first have the network layer update the route if possible before […]