Home / Call flows that operators actually trace / Two different ACK rules
Two different ACK rules
The ACK for a non-2xx is hop by hop inside the INVITE transaction, and the ACK for a 2xx is a new end-to-end transaction.
Learn in 5 minutes
- Reuse the INVITE branch only for a non-2xx ACK
- Send a 2xx ACK end to end with a new branch
- Keep the CSeq number and change the method token to ACK
Visual
Look at the status code first, then the branch.
Worked example
Whose branch is on the ACK? Inspect both ACKs. Each one repeats the branch of the INVITE on that hop.
- Step to the proxy-to-peer ACK.
- Read its branch.
- Compare it with the caller-to-proxy ACK.
Fault
A proxy generates an ACK toward the caller for a 200 OK and never forwards the caller's ACK. The UAS keeps retransmitting 200 OK.
Only non-2xx ACKs are built by the transaction on each hop. The 2xx ACK belongs to the dialog.
Quiz
Ecosystem
Glossary, sister systems, and the integration seam for this room.
Workforce management WFM forecasts volume and builds schedules. It consumes contact-center events. It does not parse Via headers. When a forecast is wrong, the SIP symptom is usually queue delay and 480 or carrier congestion, not a broken dialog ID.
Sources and go deeper
- RFC 3261 §17 — last checked 2026-10
- RFC 3261 §8.1.1.7 — last checked 2026-10
- RFC 3261 §13 — last checked 2026-10
- RFC 6026 — last checked 2026-10
- RFC 3261 §8 — last checked 2026-10
- RFC 3261 §16 — last checked 2026-10