TCP Packets are not working well.


Question

I'm using TCP packets and I'm having some problems. What settings should I use?

Solution

Packet Size

Native TCP SYN packets are 40 bytes. PingPlotter allows you to manipulate this and create larger packets, but these packets do not follow normal standards, and they might be discarded by a firewall. If you're having problems getting TCP to work, the very first thing you should do is set your packet size to 40 bytes (Edit -> Options menu, in the Packet or Engine settings section).

Timeout settings

Use 3000ms or less for your Timeout Speed. TCP is an error recovering protocol, so if a packet doesn't make it through, TCP is built to retry until it does. This affects our ability to measure packets. In particular, it causes problems if a packet makes it to a remote server and then is lost on the way back. The remote server will try to send it again. Usually this is done after 3 seconds. If you're getting occasional 3100ms pings when using TCP, this is the likely problem.

To fix this, just set your timeout speed so these packets are marked as lost, rather than 3000+ ms.

Problem Routers

Some routers have problems doing TCP Traceroute. If this is the case, then one of the symptoms is lots of route changes, and also lots of packet loss that doesn't occur using ICMP pings.

The most likely router for problems is your cable or DSL modem (if that's what you have), or a consumer grade device that does Network Address Translation (NAT). It's possible there might be a BIOS available for this piece of hardware that solves the problem. 

Similar reports have been made that point to routers which perform TCP load-balancing. 

We've run into this problem with the QWest-supplied Actiontec 701gw DSL modem. We've been unable to get reliable TCP traceroutes to work with this hardware (although ICMP works just fine!).   



Article ID: 49
Created On: November 22, 2005
Last Updated On: August 19, 2020

Online URL: https://www.pingman.com/kb/article/tcp-packets-are-not-working-well-49.html