A cosa serve il metodo ACK
Il metodo ACK – che ricordiamo far parte del documento RFC3261 – è utilizzato per confermare la risposta finale al metodo INVITE (clicca qui se ti sei perso l’articolo a riguardo) ed è sempre inviato da chi richiede la sessione.
Se durante l’INVITE non si definisce un SDP, viene effettuata un’offerta insieme alla risposta “200 OK” e confermata nella risposta di conferma ACK:
![Flusso SIP con offerta SDP dallo UAS](https://blog.beevoip.it/wp-content/uploads/2022/03/sdp_ack.jpg)
Nel flusso che segue, invece, notiamo che l’ACK viene sempre inviato da parte dello UAC (User Agent che manda le richieste) a seguito di una o più risposte provenienti dallo UAS (User Agent che risponde alle richieste).
![Flusso SIP con ACK](https://blog.beevoip.it/wp-content/uploads/2022/03/INVITE-ACK-1.png)
Com’è composto?
![Analisi campi di intestazione pacchetto ACK](https://blog.beevoip.it/wp-content/uploads/2022/03/Ack-header.png)
Proprio come il metodo INVITE, nella prima riga è contenuto il nome del metodo; mentre le righe che seguono sono una lista di campi di intestazione uguali a quelli contenuti nell’INVITE, proprio per confermare la richiesta iniziale.
Possiamo quindi vedere che i campi Via, To e From sono uguali all’INVITE e che fa riferimento allo stesso Call-ID della sessione generata precedentemente