Score:0

Finding root cause for TCP retransmissions

cn flag

We have an product based on a 3rd party application, running on an apache server connected to a firebird (v2.5.3) database.

Unfortunately, we got to a point were we are getting timeouts when users try to make requests to the server. When opening devtools->network tab, we see that the packets are droped.

For debugging this issue, we recorded wireshark traffic on the server, and we see a lot of retransmission events. Some of the http packets are passed ok, but some are getting these retransmission, and I suspect that this is causing the timeout.

The server cpu is high (50-100%), mostly because of the firebird database. The cloud provider where the server is hosted doesn't have SSD disks, and we are aware that this can be an issue.

One weird thing is that on the wireshark recording we don't see the http requests from the users. This is how it looks for packets that are received:

enter image description here

When I tried to catch requests from one specific IP that failed, I got only TCP retransmission (so I don't see the request itself). Not sure if it is significant, but connection is on port 443. This is an example how it looks:

enter image description here

  1. Is it possible that because firebird database is busy/cpu is high, http packets are dropped on a lower (after 4-5 seconds) even without registering the http request in wireshark?

  2. Since we can't change disks to SSD, do you think that upgrading CPU might help with this issue?

  3. Is there any apache or firebird configuration that might improve the performance?

Any other information that I can try to gather in order to get more info about the problem?

Arden Smith avatar
pe flag
What OS are you using?
vidarlo avatar
ar flag
How and where are you capturing? Is what you're showing filtered?
justadev avatar
cn flag
It is a windows server. I am capturing using wireshark. The first image (ok packets) is filtering for 'http' , the second (bad packets) is filtering by `ip.addr==123.123.123.123 & tcp.port==443`
mangohost

Post an answer

Most people don’t grasp that asking a lot of questions unlocks learning and improves interpersonal bonding. In Alison’s studies, for example, though people could accurately recall how many questions had been asked in their conversations, they didn’t intuit the link between questions and liking. Across four studies, in which participants were engaged in conversations themselves or read transcripts of others’ conversations, people tended not to realize that question asking would influence—or had influenced—the level of amity between the conversationalists.