I don't see any LSAck for DBDs being sent out in this sample pcap:-
Does OSPF really send LSAck upon reception of DBD packets ?
Network Engineering Stack Exchange is a question and answer site for network engineers. It only takes a minute to sign up.Sign up to join this community
There is no Ack for a DBD packet. They are acked in their own way by setting appropriate sequence number in the next DBD packet.
The procedure is described in section 7.2 of RFC 2328.
Database Description Packets sent by the master (polls) are acknowledged by the slave through echoing of the sequence number.
you should observe the fields DD sequence and DD Description bits in the packets in your capture.
At some high level it works like this:
stage 1: routers negotiate who is master and who is slave
see packets 13, (16 seems to be a retransmission of 13) and 17
as a result router 22.214.171.124 becomes a master and sequence number is 2989.
stage 2: exchange
master (126.96.36.199) sends packets to the slave.
slave (188.8.131.52) acknowledges the packet from the master by echoing sequence number and then sending its own database description
it seems that it starts with packet 17.
in response to packet 17, 184.108.40.206. sends packet 18 with which acknowledges sequence number 2989 and contains part of database description.
next if you observe DD description packets you will see that it is packet from 220.127.116.11 followed by a packet from 18.104.22.168.
AFAIK DD packets can be empty. I.e., if master has sent all of its packets, but slave didn't, master continues to poll the slave, requesting its packets. If slave has already sent all of its packets, then it just echoes master's sequence number as response. Whether there are more packets is determined by M-bit (more) in DD-description field.
stage 3: exchange complete [please verify this part in the standard!!!]
exchange is complete when each router has send and received a DD packet with M-bit off.
these should be packets 27 and 29 in your trace.
P.S. note that there is no general OSPF Packet -- OSPF ACK concept in OSPF. Reliability is ensured in each procedure (e.g., hello, database negotiation, sending LSAs) by separate means, tailored specifically to this procedure.