Subject: Re: Washington Issue 1 - Audit of Ephemerals at start up

From: Brian Rosen <[email-masked]>
Date: Tue, 16 Nov 1999 13:10:23 -0500

Actually I thought you made several important points:
1. While the system does not enforce structure, it sure will be
helpful if there is some.  I expect that we will see profiles
that mandate some structure.  Whatever the structure is, the
wildcard mechanism has to work with it.  Assuming the structure uses slashes
to separate components is unwise IMHO.

2. Indeed many gateways will use no wildcards at all.  Residential gateways
will often not have any need for wildcards.
Trunking gateways probably will.

Brian

> -----Original Message-----
> From: Ron Stoughton [mailto:[email-masked]]
> Sent: Tuesday, November 16, 1999 3:07 PM
> To: 'Brian Rosen'; [email-masked]
> Subject: RE: Washington Issue 1 - Audit of Ephemerals at start up
>
>
> I am reluctant to jump into this, but I will...
>
> > You and I have had a running battle on wildcards and "/".
> > Names don't have structure.  The "/" is just another character.
> > It might be advantageous to use it, but we can't limit use
> > of wildcard if people choose not to use it.
>
> You can declare that names do not have structure, but the
> hardware on an
> MG often does.  By forcing a flat name space we are giving up some
> efficiencies
> that may otherwise exist.  For example, foobar/foobaz/21 may
> be a valid name
> on my MG.  Allowing the MGC to say foo*baz/21 and forcing the
> MG to have to
> deal with it doesn't buy very much IMO.  foobar/*baz/21 or
> foobar/foo*z/21
> may make sense and can be efficiently processed in a
> hierarchical system.
> However, I can't see much utility in allowing foo*baz/21 in this case.
>
> Also, my belief is that the MGC is going to understand either
> very little
> or very much about the MG's they manage.  If they understand
> very little
> they will probably treat the termination name space as
> totally flat, and
> deal with it using only simple wildcard constucts -- e.g., "*".
> In the other extreme, the MGC will undertand the hierarchical
> organization
> of MG terminations and deal with them accordingly, using
> wildcard notations
> that make sense for a particular MG.
>
> Having said that, I suppose as an MG implementor I am free to
> only support
> those combinations that make sense for my MG.  Knowing that
> an MGC would
> probably never say foo*baz/21 without some advance knowledge
> about the MG it
> applies to, I am probably very safe in not supporting this.
> So, as you
> previously said, maybe we should not encumber the protocol with such
> limitations.
>
> Nevermind.
>
> >
> > I am strongly opposed to limiting the use of the wildcard.
> > This is a string matching system, and no structure of names
> > is implied.  A perfectly good example would be a circuit number
> > in the middle of a name which could be 3 or 4 characters:
> >         foo*baz/?0?0
> > matches "foo791baz/21" and it matches "foo1022baz/21"
> > String matchers using wildcards are very simple, and we don't
> > need extra rules.
> >
> > The syntax of terminationID does not allow an ip address nor
> > a domain name; no periods are allowed.
> > pathNAME        = NAME *(["/"] ["*"] ["@"] (ALPHA / DIGIT)) ["*"]
> >
> > TerminationID   = "$" / "*" / "ROOT" / pathNAME
> > NAME            = ALPHA *63(ALPHA / DIGIT / "_" )
> >
> > Brian
> >
> > > -----Original Message-----
> > > From: Abdallah Rayhan [mailto:[email-masked]]
> > > Sent: Monday, November 15, 1999 2:13 PM
> > > To: [email-masked]
> > > Subject: Re: Washington Issue 1 - Audit of Ephemerals at start up
> > >
> > >
> > > Brian,
> > >
> > > This sounds a good proposal. However, we need to tie few
> > > things to make
> > > it easier to handle. I don't see any reason for hex, let x
> > > means alphanumeric
> > > (digit or alpha). Furthermore, we need to agree on how to use
> > > "*". I propose
> > > that "*" to be between "/" only and match till end of string.
> > > Also, "*" is a
> > > trailing
> > > wildcard, e.g., things like rtp*2 are not allowed but rtp*
> > > is. Things like
> > > double "*"
> > > are not allowed.
> > >
> > > Using your example,
> > > "N77G15B/[0-2]/[00-27]/[00-23],N78G22C/[0-2]/[00-27]/[00-23],R
> > > ?x?x?x?x"
> > >
> > > 1- RTP1* : match one alphanumeric char
> > > 2- RTP*   : match one or two alphanumeric chars
> > > 3- RT*     : match one, two, or three alphanumeric chars
> > > 4- N77G15B/*/11/1* : return all terminations where the
> > first * matches
> > > "0,1,2" and 2nd * matches [0,1,2...,9].
> > >
> > > In addition to that, ipaddress can appear at the end of the
> > > termination,
> > > whether
> > > wildcarded or not, but the ipaddresses can not be wildcarded.
> > > That is they are
> > > either
> > > fully qualified or not there.
> > >
> > > I believe that we need to define these semantics to avoid any
> > > ambiguous
> > > behavior
> > > in referring to terminations and simplify processing.
> > >
> > > Abdallah Rayhan
> > >
> > >
> > > Brian Rosen wrote:
> > >
> > > > A number of issues were raised in the Washington meeting
> > > that were "send to
> > > > the
> > > > list".  This is one of these issues, with the problem and
> > > my suggested fix.
> > > >
> > > > Problem: When you boot, before you create any ephemeral
> > > terminations, how do
> > > > you know what the MG can do.  For example, how do you know
> > > if the MG has,
> > > > say
> > > > an IP interface, an ATM interface, an MPLS interface or a
> > > Frame Relay
> > > > interface for the bearers, or some combination of them.
> > > >
> > > > If you could audit something, you could look at the
> > > "network" value in
> > > > LocalControl.  That would tell you.  There are several
> > > similar problems.
> > > > The question is, how would you audit?
> > > >
> > > > Proposed Solution:
> > > > There are two aspects.  How do you find out the names of
> > > terminations when
> > > > you start, and then, how do you audit to find out the
> > > values when a specific
> > > > termination does not exist yet.  This message addresses the
> > > first issue
> > > >
> > > > For the former, we propose a property defined in the base
> > > root package
> > > > called
> > > > "TerminationNamePattern" This is a read only property, of
> > > type string.
> > > > The value is of the form "<pattern>,<pattern>,...,<pattern>"
> > > > Each pattern describes the form of a name for a group of
> > > terminations that
> > > > have
> > > > the same packages implemented on them.  The format of the
> > > pattern is a
> > > > string
> > > > of characters:
> > > >         a-z,A-Z,0-9, and "/" - the actual character in the name
> > > >         ?0 - any digit
> > > >         ?a - any alpha
> > > >         ?x - any hex digit
> > > >         [n,n,..,n] - alternatives, one of the
> alternatives listed,
> > > >                         n can be a substring of alphas or digits
> > > >         [n-n] - range, any number in the range, n can be
> > a number or
> > > >                         an alpha, for example [00-27] or [a-e]
> > > >         Note, mixing of alternatives or ranges is
> allowed, as in:
> > > >                 [0,3-5,8]
> > > > As an example, consider an MG that had 2 OC-3s, and an
> > > Ethernet interface.
> > > > Its TerminationNamePattern might be:
> > > >
> > > "N77G15B/[0-2]/[00-27]/[00-23],N78G22C/[0-2]/[00-27]/[00-23],R
> > > ?x?x?x?x"
> > > > A simple residential gateway with an analog loop and two
> > > possible rtp
> > > > ephemerals might be
> > > > "AL,RTP1,RTP2"
> > > >
> > > > Please note that in most cases, the string is a CONSTANT,
> > > or possibly
> > > > something trivially derived from a constant and
> > > provisioning data at the
> > > > MG.
> > > >
> > > > In addition to the name pattern, we need the "Controlling
> > > Audit Response"
> > > > capability, which is the subject of another message.
> > > >
> > > > Brian
> > >
>