Note also that Max-Forwards is used by proxies
(not much by UAs).  It is to tell the proxy whether
to forward the request or not.

Max-Forwards does not need to be checked by a UA
receiving a request because the UA will not forward
the SIP message anyway.

Regards,
Attila


-----Original Message-----
From: Attila Sipos 
Sent: 16 February 2007 16:35
To: 'Marco Ambu'; SIP-implementors mailing list
Subject: RE: [Sip-implementors] Is Max-Forward mandatory also in ACK and
CANCELrequests



RFC3261....

8.1.1 Generating the Request

   A valid SIP request formulated by a UAC MUST, at a minimum, contain
   the following header fields: To, From, CSeq, Call-ID, Max-Forwards,
   and Via; all of these header fields are mandatory in all SIP
   requests.

CANCEL and ACK (as you know) are SIP requests.

But....
In the SIP proxy section, there are 2 sections on Max-Forwards...

In "16.3 Request Validation"...

   3. Max-Forwards check

      The Max-Forwards header field (Section 20.22) is used to limit the
      number of elements a SIP request can traverse.

      If the request does not contain a Max-Forwards header field, this
      check is passed.

      If the request contains a Max-Forwards header field with a field
      value greater than zero, the check is passed.

      If the request contains a Max-Forwards header field with a field
      value of zero (0), the element MUST NOT forward the request.  If
      the request was for OPTIONS, the element MAY act as the final
      recipient and respond per Section 11.  Otherwise, the element MUST
      return a 483 (Too many hops) response.


and in "16.6 Request Forwarding"...

     3. Max-Forwards

         If the copy contains a Max-Forwards header field, the proxy
         MUST decrement its value by one (1).

         If the copy does not contain a Max-Forwards header field, the
         proxy MUST add one with a field value, which SHOULD be 70.

         Some existing UAs will not provide a Max-Forwards header field
         in a request.



Regards,
Attila



-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] Behalf Of Marco Ambu
Sent: 16 February 2007 15:59
To: SIP-implementors mailing list
Subject: [Sip-implementors] Is Max-Forward mandatory also in ACK and
CANCELrequests


RFC 3261 - 8.1.1.6 page 39 states that Max-Forwards header must be 
inserted by UACs in all generated requests.

I suppose all requests include also CANCEL and ACK, but I've noticed 
that some clients do not insert Max-Forwards haeder in ACK and CANCEL 
requests.
So I would like to know if these kind of requests must have this header 
or not, and if not if there is a hint in RFC 3261.

The only practical solution I see is to disable checking the presence of 
Max-Forwards header in ACK and CANCEL requests in our SIP stack.

Thanks.
-- 

Marco Ambu
R&D Software Engineering
Abbeynet S.p.A. - www.abbeynet.com <http://www.abbeynet.com>

phone: +39 070 2339331

<http://www.marco_ambu.sitofono.it>


_______________________________________________
Sip-implementors mailing list
[email protected]
https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors

_______________________________________________
Sip-implementors mailing list
[email protected]
https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors

Reply via email to