Presentation is loading. Please wait.

Presentation is loading. Please wait.

GRUU Mechanism Jonathan Rosenberg. Status Draft-rosenberg-sipping-gruu-reqs-01 defines the problem Draft-rosenberg-sip-gruu submitted with proposed solution.

Similar presentations


Presentation on theme: "GRUU Mechanism Jonathan Rosenberg. Status Draft-rosenberg-sipping-gruu-reqs-01 defines the problem Draft-rosenberg-sip-gruu submitted with proposed solution."— Presentation transcript:

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


Download ppt "GRUU Mechanism Jonathan Rosenberg. Status Draft-rosenberg-sipping-gruu-reqs-01 defines the problem Draft-rosenberg-sip-gruu submitted with proposed solution."

Similar presentations


Ads by Google