Subject: [Sip] Re: [Simple] -05 MESSAGE and Expires header

From: "Vijay K. Gurbani" <[email-masked]>
Date: Fri, 19 Jul 2002 16:58:03 -0500

This has been an interesting discussion with more people weighing
in the 'leave it alone' category.  However, here is an additional
point to consider: Expires is one of the headers that can be
encrypted.  An S/MIME encrypted MESSAGE request containing 'Expires: 0'
arriving at a relay UAS will get the same processing as will
an unencrypted MESSAGE with 'Expires: 3600' -- probably not good.  The
Priority header, on the other hand, is not permitted to be encrypted
(Table 3, RFC 3261); thus relays can make use of it.

Jonathan Rosenberg gave a concise explanation on why Priority and
'Expires: 0' to mean immediate delivery are different:

 > I believe that priority is quite different. A message can be for
 > immediate delivery, and be either urgent ("my house is on fire") or
 > not ("leaving now for lunch"). A message can be OK for storage (some
 > non-zero expires) and be urgent ("I need that business presentation
 > by 10pm!") or non-urgent ("Did you see that movie"). The fact that two
 > things can be used orthogonally is a sign that they are, in fact, two
 > different things.

In this context, maybe Priority is not the right header, but it is
the closest we have in base SIP to impart immediate delivery.

The whole point of 'Expires: 0' in the MESSAGE I-D is for the relay UAS
and the destination UAS to act on this request immediately.  Since the
Expire header can be encrypted, the directive of immediate delivery is
lost at the relay UAS.  Priority preserves it, and in fact, to avoid any
further ambiguity,  the MESSAGE I-D can further restrict the presence of
the Priority header in only those IM messages that denote urgency of
some sort, and thus need special processing by the relays.

Regards,

- vijay
-- 
Vijay K. Gurbani  vkg@{lucent.com,research.bell-labs.com,acm.org}
Wireless Networks Group/Internet Software and Services
Lucent Technologies/Bell Labs Innovations, 2000 Lucent Lane, Rm 6G-440
Naperville, Illinois 60566     Voice: +1 630 224 0216

_______________________________________________
Sip mailing list  https://www1.ietf.org/mailman/listinfo/sip
This list is for NEW development of the core SIP Protocol
Use [email-masked] for questions on current sip
Use [email-masked] for new developments on the application of sip

---

From: Ben Campbell <[email-masked]>
Date: Mon, 22 Jul 2002 08:47:42 -0500

It seems to me that if the UAC cares about intermediaries seeing the 
expires header, it would put an expires header in the outer message.

---

From: "Vijay K. Gurbani" <[email-masked]>
Date: Mon, 22 Jul 2002 09:26:03 -0500

> expires header, it would put an expires header in the outer message.

It could; but really, why duplicate the information?

RFC 2076 (Common Internet Message Headers) says that 'Priority' can
"influence transmission speed and delivery".  Which seems to fit exactly
with what we want to do.

In fact, the more I think of it, the more I am convinced that
overloading 'Expires: 0' to mean something completely different in
MESSAGE is not a good idea; especially after a precedent has been
established by REGISTER and SUBSCRIBE to use 'Expires: 0' to mean
'no longer valid'.

It's been pointed out that Priority is not the right header, but I just
don't see why not.  Expires is deemed to be an end-to-end header; as
such, why use it for routing purposes by relays?  Whereas, Priority
appears to be exactly for this purpose.

Adam has proposed the 'Urgency' header; but I don't think we need
to make up yet another new header for this and update deployed parsers;
Priority handles many shades of urgencies and emergencies.

IMHO, giving 'Expires: 0' an overloaded meaning, while having a header
('Priority') that can be used for expedited delivery is what leads to
problems of the kind Jonathan alluded to:

 > A message can be for immediate delivery, and be either urgent ("my
 > house is on fire") or not ("leaving now for lunch"). A message can be
 > OK for storage (some non-zero expires) and be urgent ("I need that
 > business presentation by 10pm!") or non-urgent ("Did you see that
 > movie").

If, on the other hand, we simply specify 'Priority: Urgent' (or
'Priority: Emergency'), both the UA and the relays should act
immediately on that message.  No need to add new semantics to 'Expires:
0'.

In the final analysis, what is the harm if we can make the MESSAGE PDU
self explanatory?  I would think that almost everyone will agree that
'Priority: Urgent' is more self-documenting than 'Expires: 0'.  As I
suggested earlier, the MESSAGE I-D can mandate that 'Priority: Urgent'
or 'Priority: Emergency' be only used when, as 3261 says, "life, limb,
or property are in imminent danger."

Regards,

- vijay