Download presentation
Presentation is loading. Please wait.
Published bySybil McKinney Modified over 9 years ago
1
GRUU Mechanism Jonathan Rosenberg
2
Status Draft-rosenberg-sipping-gruu-reqs-01 defines the problem Draft-rosenberg-sip-gruu submitted with proposed solution Needed for –App interaction –Consultative transfer –Presence
3
Mechanism Summary Obtaining a GRUU –REGISTER request has Supported: gruu –Each Contact in the response has a gruu parameter with GRUU Using a GRUU –Place into Contact URI of INVITE/200 –Include Supported: gruu Registrar REGISTER Supported: gruu 200 OK Contact: Sip:a@b; gruu=c@d;
4
Open Issues GRUU lifecycle definition Dialog reuse Locally generated GRUU
5
GRUU Lifecycle Management Can GRUU change during a registration? [N] –What happens if gruu parameter is placed in REG request? [ignored] –What happens if registrar changes gruu in response? [not allowed] –Implication: registrar has to remember gruu for lifetime of registration Can be different across different registrations of the same contact GRUU is not randomized across transactions – privacy implications?
6
Dialog Reuse GRUU can allow us to eliminate dialog reuse –Many problems with it –Underspecified in RFC3261 –Bad idea Do we have GRUU spec say that you should not do dialog reuse if your peer supports GRUU? –Will need to fix REFER for that to work or except REFER –Or do we live with the mistake?
7
Locally Generated GRUU Putting a GRUU in the Contact will end direct signaling A UA can try to generate its own local GRUU and use that –But how does it know that it is reachable at that GRUU? –Proposed solution: ICE
8
ICE Approach Proxy Caller Callee INVITE Contact: sip:a@domain; alt=sip:a@ip-addr
9
ICE Approach Proxy Caller Callee INVITE Contact: sip:a@domain; alt=sip:a@ip-addr Proxy Doesn’t RR
10
ICE Approach Proxy Caller Callee 200 OK Contact: sip:b@domain; alt=sip:b@ip-addr2
11
ICE Approach Proxy Caller Callee 200 OK Contact: sip:b@domain; alt=sip:b@ip-addr2
12
ICE Approach Proxy Caller Callee OPTIONS b@ip-addr2
13
ICE Approach Proxy Caller Callee 200 OK B knows that A was able to Reach him @ip-addr2 So he can now Re-invite to update Contact
14
ICE Approach Proxy Caller Callee INVITE Contact: sip:b@ipaddr2;
15
ICE Approach Proxy Caller Callee INVITE Contact: sip:b@ipaddr2;
16
ICE Approach Proxy Caller Callee 200 OK Contact: sip:a@domain; sip:a@ip-addr
17
ICE Approach Proxy Caller Callee 200 OK Contact: sip:a@domain; sip:a@ip-addr
18
ICE Approach Proxy Caller Callee OPTIONS a@ip-addr
19
ICE Approach Proxy Caller Callee 200 OK
20
Caveats A and B both have to OPTIONS separately –Connectivity must be tested in each direction OPTIONS is not on the same dialog as INVITE Need to have randomization on OPTIONS to avoid glare Doesn’t work if a proxy record-routed INVITE –Connectivity check would need to be from outermost proxy to UA – no easy way to do this –Source routing would reuse dialog route headers – not allowed
21
Proposal Add this as an optional mechanism to the draft Recommend that this is the ONLY way you can use locally generated GRUU
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.