Subject: RE: [Diffserv] Re: FlowId and FlowIdOrAny

From: "Wijnen, Bert (Bert)" <[email-masked]>
Date: Tue, 21 Jan 2003 16:21:47 +0100

OK, so if I understand you correctly, then the newly proposed
TCs would also be useable for the Intserv MIB when they do
a revision, right? And again that can then be considered
a bug fix. 

So we now have a conflict in that if we make it Integer32, 
then diffserv MIB needs to deprecate and create a new object
If we make it Unsigned32, then Intserv MIB needs to deprecate
and create a new object.

It then seems to me that making it Integer32 as suggested by
Juergen then makes the most sense, since that seems to be
then more consistent with how we have done this at other
places (that is, used a -1 value to mean any).

Comments?

Thanks,
Bert 

> -----Original Message-----
> From: Brian E Carpenter [mailto:[email-masked]]
> Sent: dinsdag 21 januari 2003 15:18
> To: Juergen Schoenwaelder
> Cc: [email-masked]; [email-masked]; [email-masked]
> Subject: Re: [Diffserv] Re: FlowId and FlowIdOrAny
> 
> 
> The flow label in IPv6 was 24 bits at one time. So that looks like
> a minor obsolescence in the Intserv MIB.
> 
>     Brian
> 
> Juergen Schoenwaelder wrote:
> > 
> > >>>>> Wijnen, Bert (Bert) writes:
> > 
> > Bert> Now... if we do this, then this could still be used by the
> > Bert> framework pib.  However, for the diffserv-mib it 
> would mean they
> > Bert> must deprecate a current object and create a new one 
> (switching
> > Bert> from Unsigned to Integer32 causes a change on the wire!).
> > 
> > Oops, I missed that part of the picture. So if there is concensus to
> > change the range as a bug fix in the DIFFSERV0MIB without 
> introducing
> > a new object (which formally the SMIv2 would require to do), then
> > using Unsigned32 makes some sense. Note that this will also most
> > likely include the definition of a DEFVAL which is in fact the new
> > value.  However, if we decided that it is safer to use deprecate the
> > filter obejct and introduce a new one, I prefer to use Integer32.
> > 
> > BTW, this is what I found in the INTEGRATED-SERVICES-MIB:
> > 
> >     intSrvFlowFlowId OBJECT-TYPE
> >         SYNTAX      INTEGER (0..16777215)
> >         MAX-ACCESS  read-only
> >         STATUS      current
> >         DESCRIPTION
> >            "The flow ID that  this  sender  is  using,  if
> >            this  is  an IPv6 session."
> >        ::= { intSrvFlowEntry 11 }
> > 
> > Note that this range is [0..2^24-1] while the other 
> definitions under
> > discussion use a range of [0..2^20-1]. Note that RFC 2460 says:
> > 
> > :    Flow Label           20-bit flow label.  See section 6.
> > 
> > /js
> > 
> > --
> > Juergen Schoenwaelder    
> <http://www.informatik.uni-osnabrueck.de/schoenw/>
>

---

From: "Wijnen, Bert (Bert)" <[email-masked]>
Date: Thu, 23 Jan 2003 02:51:55 +0100

I checked with authors and WG chair of SSPM MIB

I have a request outstanding to author(s) of ipsec-conf-mib

Thanks,
Bert 

-----Original Message-----
From: Andy Bierman [mailto:[email-masked]]
Sent: woensdag 22 januari 2003 23:15
To: Wijnen, Bert (Bert)
Cc: Dan Romascanu (E-mail); Carl Kalbfleisch (E-mail); Bob Cole (E-mail)
Subject: Re: FW: FlowId and FlowIdOrAny

At 04:31 PM 1/22/2003 +0100, Wijnen, Bert (Bert) wrote:
>Are you following RAP or DIFFSERV WG mailing lists?

I am on the diffserv list.
Thanks for bringing this to our attention.

To be consistent with previous decisions related to
the DSMON MIB, the RMONMIB WG would prefer it if the
WG owning IPv6 flow standards would publish a MIB
module containing the appropriate TCs, so we can import
them into the SSPM MIB.

thanks,
Andy

>We are discussing a common set of TCs to be used by multiple
>MIB and PIB modules.
>
>If your not up to date, you may want to check the mailing lists 
>archives. Discussion was over teh last week or two.
>
>Thanks,
>Bert 
>p.s. I know I have this doc in AD review.... but you may
>want to check this part of it yet
>
>From: Juergen Schoenwaelder [mailto:[email-masked]]
>Sent: woensdag 22 januari 2003 15:19
>To: [email-masked]; [email-masked]
>Subject: Re: FlowId and FlowIdOrAny
>
>
>
>I found some more objects that seem to model a flow label. It turns
>out that MIB authors are really creative...
>
>draft-ietf-ipsp-ipsec-conf-mib-05.txt:
>
>  ihfIPv6FlowLabel OBJECT-TYPE
>      SYNTAX      OCTET STRING (SIZE(3))
>      MAX-ACCESS  read-create
>      STATUS      current
>      DESCRIPTION
>          "The IPv6 Flow Label that the packet must match against.
>          This object is only used if ipv6FlowLabel is set in ihfType."
>      ::= { ipHeaderFilterEntry 13 }
>
>  They obviously have another mechanism to control whether the
>  object participates in a match.
>
>draft-ietf-rmonmib-sspm-mib-06.txt:
>
>   sspmSourceProfileFlowLabel OBJECT-TYPE
>       SYNTAX      Integer32 (0..1048575)     -- 20-bit range (0 to 0xfffff)
>       MAX-ACCESS  read-create
>       STATUS      current
>       DESCRIPTION
>           "This object is  used to specify the Flow Label  in a IPv6
>            packet (RFC 2460) to force special handling by the IPv6 routers for
>            non-default quality-of-service.
>
>            This object is meaningful only when sspmSourceDestAddressType is
>            ipv6(2).  The value of this object defaults to zero if not
>            set."
>       DEFVAL { 0 }
>       ::= { sspmSourceProfileEntry 7 }
>
>  This object seems to actually control how the flow label looks like
>  in packets coming from a synthetic traffic source.
>
>Note that these objects are called flow label rather than flowid and
>hence I did not find them the first time...
>
>/js
>
>-- 
>Juergen Schoenwaelder    <http://www.informatik.uni-osnabrueck.de/schoenw/>

---

From: Branislav Meandzija <[email-masked]>
Date: Mon, 27 Jan 2003 15:10:17 -0800

[ post by non-subscriber.  with the massive amount of spam, it is easy to miss
  and therefore delete posts by non-subscribers.  if you wish to regularly
  post from an address that is not subscribed to this mailing list, send a
  message to <listname>[email-masked] and ask to have the alternate
  address added to the list of addresses from which submissions are
  automatically accepted. ]

Procedurally, very complex fix for something very simple but it seems the best possible one.

Branislav

  > 
  > My proposal is to do the following:
  > 
  > - Someone creates a new ID that contains a small MIB module
  >   that contains two TCs:
  > 
  >   FlowId            TEXTUAL-CONVENTION
  >       DISPLAY-HINT "d"
  >       STATUS        current
  >       DESCRIPTION  "The flow identifier or flow Label in an IPv6
  >                     header that may be used to discriminate traffic
  >                     flows.
  >                    "
  >       SYNTAX        Integer32 (0..1048575)
  > 
  >   FlowIdOrAny       TEXTUAL-CONVENTION
  >       DISPLAY-HINT "d"
  >       STATUS        current
  >       DESCRIPTION  "The flow identifier or flow lable in an IPv6 
  >                     header that may be used to discriminate traffic
  >                     flows.  The value of -1 is used to indicate a
  >                     wildcard, i.e. any value.
  >                    "
  >       SYNTAX        Integer32 (-1 | 0..1048575)

---

From: "Sahita, Ravi" <[email-masked]>
Date: Thu, 30 Jan 2003 13:33:30 -0800

Bert,

Of the choices you provided, I am tending towards this resolution 
for the frwkIpFilterFlowId object. When the TCs are eventually put 
in a different ID and RFC'ed, we can update the type for this object.

Ravi

frwkIpFilterFlowId OBJECT-TYPE
   SYNTAX        Integer32 (-1 | 0..1048575)
   DESCRIPTION
   "The flow identifier or flow label in an IPv6 header 
    that may be used to discriminate traffic flows.
    The value of -1 for this attribute MUST imply that 
    any flow label value in the IPv6 header will match, 
    resulting in the flow label field of the IPv6 header 
    being ignored for matching this filter entry."

| -----Original Message-----
| From: Wijnen, Bert (Bert) [mailto:[email-masked]] 
| Sent: Monday, January 27, 2003 1:49 PM
| To: Rap-wg (E-mail); [email-masked]
| Subject: [Diffserv] RE: FW: FlowId and FlowIdOrAny
| 
| 
| I am not hearing much progress.
| 
| Appology for a long email posting. But I think it 
| addresses all the issues and occurences of flowId
| or flowLabel (at least till someone tells me they
| found yet another one ;-))
| 
| The biggest problem exists for the RAP WG document
| for the framework PIB, cause it is in RFC 48-hour
| author call (for over a month already).
| 
| The DIFFSERV PIB (also in RFC 38-hour author call
| for the same amount of time) of course cannot be
| published since it depends on the framework pib.
| 
| The issue at hand is the question on how to specify
| that a flowID be ignored (wild-carded) for a filter.
| I think we've come to the conclusion that both the
| MIB and the PIB solutions need this. So we need
| a common solution.
| 
| We've also found 3 other places where a flowID 
| or a flowLabel (but the same thing is meant) is
| being used. That is in:
| 
|  - draft-ietf-ipsp-ipsec-conf-mib-05.txt
|    which uses a 3-byte octet string and that seems wrong 
|       SYNTAX  OCTET STRING (SIZE(3))
| 
|  - draft-ietf-rmonmib-sspm-mib-06.txt
|    which uses an Integer32:
|       SYNTAX  Integer32 (0..1048575) -- 20-bit range (0 to 0xfffff)
| 
|  - Integrated services MIB (RFC 2213)
|    which uses INTEGER
|       SYNTAX  INTEGER (0..16777215)
| 
| The Diffserv MIB (RFC3289) and the framework PIB were
| using an Unsigned 32, namely
|       SYNTAX  Unsigned32 (0..1048575)
| 
| The framework PIB authors were suggesting a modification
|       SYNTAX  Unsigned32 (4294967295 | 0..1048575)
| So that the value 4294967295 would mean any (in other words
| one would ignore the flowID in when filtering).
| 
| Fred (amin editor of the Diffserv MIB) wanted to add a 
| boolean mib object to indicate if the flowID should be
| ignored when filtering.
| 
| What I as OPS AD for the NM side see is that we have
| - too many different ways to represent a flowID or flowLabel.
| - there is currently no way to define a flowID or any
| - we need need a facility to specify flowIdOrAny.
| - we prefer to have one solution.
| - we have some docs that are still IDs and can easily
|   be changed. 
| - we have two docs that are difficult to change, namely
|   the DIFSERV and the INTEGRATED SERVICES MIB.
|   The difficulty is that if we change the encoding on the
|   wire that we need to deprecate existing object and add 
|   a new one. If we keep the wire encoding the same, I think
|   we can defend that it is a bug fix and the fact that some
|   potential new values are now valid is acceptable; at least
|   it would be less of a problem than having to deprecate
|   an object and add a new one.
| - But even the two RFCs have different SYNTAX, so at least
|   one of them needs to change if we want to specify
|   flowID in a consistent way.
| 
| So what do people want to do.
| 
| My proposal is to do the following:
| 
| - Someone creates a new ID that contains a small MIB module
|   that contains two TCs:
| 
|   FlowId            TEXTUAL-CONVENTION
|       DISPLAY-HINT "d"
|       STATUS        current
|       DESCRIPTION  "The flow identifier or flow Label in an IPv6
|                     header that may be used to discriminate traffic
|                     flows.
|                    "
|       SYNTAX        Integer32 (0..1048575)
| 
|   FlowIdOrAny       TEXTUAL-CONVENTION
|       DISPLAY-HINT "d"
|       STATUS        current
|       DESCRIPTION  "The flow identifier or flow lable in an IPv6 
|                     header that may be used to discriminate traffic
|                     flows.  The value of -1 is used to indicate a
|                     wildcard, i.e. any value.
|                    "
|       SYNTAX        Integer32 (-1 | 0..1048575)
| 
| We probably want to run this quickly by the IPv6 WG.
| 
| What it would mean for the various documents is the following:
| 
| - For the INTEGRATED-SERVICES-MIB (RFC2213), I see Fred as a 
|   co-author/editor..., whenever a new revision is done:
|    - import the new FlowId TC
|    - replace 
|            intSrvFlowFlowId OBJECT-TYPE
|            SYNTAX      INTEGER (0..16777215)
|      with 
|            intSrvFlowFlowId OBJECT-TYPE
|            SYNTAX      FlowId 
|      I think we can consider this a BUG fix and allow this change
|      that reduces the range of possible values.
|    - by the way, I when I see intSrvFlowIfAddr, then probably
|      we would want that to be done with the TCs from the
|      INET-ADDRESS-MIB. I also wonder about the Port TC in that
|      module
| 
| - For the DIFFSERV-MIB (RFC3289), Fred is main editor, whenever
|   a new revision is done, I think we need to:
|    - import the new FlowIdOrAny TC
|    - deprecate object diffServMultiFieldClfrFlowId
|    - define a new object diffServMultiFieldClfrFlowLabel ??
|      or maybe diffServMultiFieldClfrFlowIdOrAny
|      with syntax FlowIdOrAny
|    - deprecate current MODULE-COMPLIANCEs, define a new one
|      to remove ... FlowId and add ...FlowLable
| 
| - For the draft-ietf-rap-frameworkpib-09.txt (or better the
|   RFC-to-be) the final fix would be to make this change:
|    - import FlowIdOrAny TC
|    - replace 
|          frwkIpFilterFlowId OBJECT-TYPE
|          SYNTAX         Unsigned32 (0..1048575)
|      with 
|          frwkIpFilterFlowId OBJECT-TYPE
|          SYNTAX         FlowIdOrAny
|    - we can consider this as a last minute bug fix.
|   If we agree that the final change may take too long, then we
|   can make a temp fix:
|    - replace 
|          frwkIpFilterFlowId OBJECT-TYPE
|          SYNTAX         Unsigned32 (0..1048575)
|      with 
|          frwkIpFilterFlowId OBJECT-TYPE
|          SYNTAX        Integer32 (-1 | 0..1048575)
|          DESCRIPTION  "The flow identifier or flow lable in an IPv6 
|                        header that may be used to discriminate traffic
|                        flows.  The value of -1 is used to indicate a
|                        wildcard, i.e. any value.
|                        "
|    - whenever the RFC gets revised, then this can be replaced
|      with the final fix, cause it does not change anything on 
| the wire.
| 
| - For draft-ietf-ipsp-ipsec-conf-mib-05.txt, main Editor
|   Wes Hardaker, we can fix it as follows
|    - import FlowId
|    - replace
|            ihfIPv6FlowLabel OBJECT-TYPE
|            SYNTAX      OCTET STRING (SIZE(3))
|      with 
|            ihfIPv6FlowLabel OBJECT-TYPE
|            SYNTAX      FlowId
|    - this is still an ID, so the change is OK.
|      Also, they use a BITS mask to indicate if the flowlabel
|      must be ignored or not. So this works. It is a bit different
|      than it is done in diffserv mib and framework pib, but at least
|      it uses the same spec for FlowId. (or flowLabel)
| 
| - for draft-ietf-rmonmib-sspm-mib-06.txt, not sure who is main editor
|   it would mean
|    - import FlowId
|    - replace
|         sspmSourceProfileFlowLabel OBJECT-TYPE
|         SYNTAX      Integer32 (0..1048575)  -- 20-bit range 
| (0 to 0xfffff)
|      with
|         sspmSourceProfileFlowLabel OBJECT-TYPE
|         SYNTAX      FlowId
|    - this is still an ID, so the change is OK
| 
| 
| Thanks,
| Bert 
| _______________________________________________
| diffserv mailing list
| [email-masked] https://www1.ietf.org/mailman/listinfo/diffserv
| Archive: 
| http://www.ietf.org/mail-archive/working-groups/diffserv/curre
nt/maillist.html

---

From: "Wijnen, Bert (Bert)" <[email-masked]>
Date: Thu, 30 Jan 2003 23:14:12 +0100

Right, that seems an approach by which your RFC does not have 
to get held up for too long (well, at least not too much longer 
than has already happened). 
Not sure if you saw this, but I have also posted the mail
on FlowLabel and FlowLabelOrAny on the [email-masked]
list, so that we get dicsussion from other MIB folk as well.
ANd I posted it to the authors of the other documents that 
were mentioned.

All seems to be fine except for one question.
And that is: if the range is indeed the correct one.
Let me try and drive to consensus on that on the mibs mailing
list. Pls do join in in the discussion there when you see fit.

Thanks,
Bert 

> From: Sahita, Ravi [mailto:[email-masked]]
> Sent: donderdag 30 januari 2003 22:34
> To: 'Wijnen, Bert (Bert)'; Rap-wg (E-mail)
> Subject: RE: [Diffserv] RE: FW: FlowId and FlowIdOrAny
> 
> 
> Bert,
>