[Last Call] Learn how to a build a cloud-first strategyRegister Now

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 771
  • Last Modified:

Is it normal to have many ACKs for a SYN in TCP protocol?

In using Ethereal to capture TCP data for a web browser communicating with a web server, we are seeing a SYN begin and then many ACKs (10-20) before the ACK, FIN.  Is this normal?
0
cspiro
Asked:
cspiro
  • 2
  • 2
1 Solution
 
ravenplCommented:
Before FIN? The yes, not that normal tcp session follows

-> SYN
<- SYNC,ACK
->ACK
(repeat many times
 ->REQ_DATA
 <-ACK
 <-REPL_DATA
 ->ACK
)
->FIN
<-FIN,ACK
->ACK

Since packets may get lost in the new, some messages may be retransmitted multiple times.
Refer http://www.ssfnet.org/Exchange/tcp/Graphics/tcpStateDiagram1.gif
0
 
cspiroAuthor Commented:
Could the mulitple ACKs occur because the web server is rendering multiple frames as a result of the HTTP submission by the user on the web browser?  Or, are multiple ACKs always a sign of lost packets and retransmissions, thus an indication that there is something wrong with the network?
0
 
ravenplCommented:
Every tcp packet is ACKed, so if web server sends large data it's automatically chopped (packet cannot be larger than MTA). So in the worst case every 1.5K of data generates backACK

I said worst case, cause ACK packet is marker saying: data upto this frame is ACKed. Therefore if packets are arriving fast, OS may skip some frames and ACK last one only.
0
 
cspiroAuthor Commented:
How can I determine from the ethereal report if the ACKs are a result of chopped data vs. a network problem?  In this case the full transmission of for the TCP Stream took 1.3 seconds.  I'm trying to figure the cause of the delay.  I assume that if the answer is 'chopped data' then it's a matter of the amount of information being sent vs. a network problem.  Thanks for your assistance.
0

Featured Post

Veeam and MySQL: How to Perform Backup & Recovery

MySQL and the MariaDB variant are among the most used databases in Linux environments, and many critical applications support their data on them. Watch this recorded webinar to find out how Veeam Backup & Replication allows you to get consistent backups of MySQL databases.

  • 2
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now