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?
cspiroAsked:
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

x
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

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

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
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
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
TCP/IP

From novice to tech pro — start learning today.