4. Protocol Operation (Funzionamento del protocollo)
4. Protocol Operation (Funzionamento del protocollo)
Lo scambio offerta/risposta (offer/answer) presuppone l'esistenza di un protocollo di livello superiore (come SIP) capace di scambiare SDP (Session Description Protocol, protocollo di descrizione della sessione) ai fini dell'istituzione della sessione tra gli agenti.
Il funzionamento del protocollo inizia quando un agente invia un'offerta iniziale (initial offer) a un altro agente. Un'offerta è iniziale se è al di fuori di qualsiasi contesto già stabilito tramite il protocollo di livello superiore. Si assume che tale protocollo mantenga una forma di contesto che consenta di associare tra loro i vari scambi SDP.
L'agente che riceve l'offerta PUÒ generare una risposta (answer) oppure PUÒ rifiutare l'offerta. I mezzi per rifiutare un'offerta dipendono dal protocollo di livello superiore. Lo scambio offerta/risposta è atomico; se la risposta viene rifiutata, la sessione torna allo stato precedente all'offerta (che può essere l'assenza di sessione).
In qualsiasi momento, ciascun agente PUÒ generare una nuova offerta che aggiorna la sessione. Tuttavia NON DEVE generare una nuova offerta se ha ricevuto un'offerta a cui non ha ancora risposto o che non ha rifiutato. Inoltre NON DEVE generare una nuova offerta se ha già generato un'offerta precedente per la quale non ha ancora ricevuto risposta o rifiuto. Se un agente riceve un'offerta dopo averne inviata una, ma prima di riceverne la risposta, si parla di condizione di "glare" (collisione).
Il termine glare era usato originariamente nelle reti telecom a commutazione di circuito per descrivere il caso in cui due centrali tentano contemporaneamente di occupare lo stesso circuito disponibile sullo stesso tronco. Qui significa che entrambi gli agenti hanno tentato di inviare un'offerta aggiornata nello stesso momento.
Il protocollo di livello superiore deve fornire un mezzo per risolvere tali situazioni. Deve inoltre consentire l'ordinamento dei messaggi in ciascuna direzione. SIP soddisfa questi requisiti [7].