Martha's comments
yakov@watson.ibm.com Fri, 08 May 1992 21:13 UTC
Received: from nri.nri.reston.va.us by ietf.NRI.Reston.VA.US id aa07241;
8 May 92 17:13 EDT
Received: from nri.reston.va.us by NRI.Reston.VA.US id aa11983;
8 May 92 17:19 EDT
Received: from PARK-STREET.BBN.COM by NRI.Reston.VA.US id aa11967;
8 May 92 17:19 EDT
Received: from park-street by PARK-STREET.bbn.COM id aa09024;
8 May 92 16:55 EDT
Received: from BBN.COM by PARK-STREET.BBN.COM id aa09019; 8 May 92 16:53 EDT
Received: from watson.ibm.com by BBN.COM id aa19788; 8 May 92 16:47 EDT
Received: from YKTVMV by watson.ibm.com (IBM VM SMTP V2R2) with BSMTP id 6259;
Fri, 08 May 92 16:47:08 EDT
Date: Fri, 8 May 92 16:46:00 EDT
From: yakov@watson.ibm.com
To: idpr-wg@bbn.com
Subject: Martha's comments
Message-ID: <9205081719.aa11967@NRI.Reston.VA.US>
Martha,
Thanks for your reply. I am glad that you found my comments useful.
I hope few other members of the group would agree with your assessment
of my comments and take a constructive look at them (like you did),
rather than just flaming, accusing me of all mortal sins and implicating me
in all kinds of conspiracy....
Well, on a constructive side here are my specific suggestions
that I would propose to put in the architecture document.
They mostly based on your note.
>
>Transit Policies
>------- --------
>
>Transit policies include offered qualities of service, cost of
>service, and domain access restrictions. For IDPR, we selected the
>"distribute restrictions" rather than "restrict distribution" paradigm
>because we thought it would make a more manageable implementation and
>because we wanted sources to make their route selection based on as
>much information as they could obtain. By making transit policies
>public, domains can distribute the range of service offerings and
>costs to IDPR entities (route servers in particular) that act on
>behalf of users to generate and select appropriate routes.
It would be quite useful to put the above in the architecture document.
I would also suggest to augment it by the following text:
"On a negative side by choosing "distribute restrictions"
rather than "restrict distribution" paradigm IDPR forces
domains to participate in processing and distribution of
information that may be of no use to them; thus placing
an unjustifiable burden on their resources."
>
>Yes, the IDPR architecture allows different domains to express
>monetary cost in different units (eg., charge per byte or session
>time). And yes, this does complicate the route selection procedures.
I think that "complicate the route selection procedure" is
gross understatement. In fact, in certain cases such computation
is just impossible, regardless of complexity. For instance,
unless the route computation procedure knows A PRIORI the exact properties
of the traffic you intended to send in terms of how many bytes,
how many packets, and the duration of a session, there is
no way, regardless of complexity, to compute an optimal cost route.
So, to begin with, allowing different domains to express cost
in different units in conjuction with promise to compute minimum
cost routes assumes that the route selection knows
IN ADVANCE numbers of bytes, number of packets (and packet sizes as well),
and the duration of a session; otherwise, an optimal cost route
can not be compute, regardless of the incurred complexity.
Now let's put aside the feasibility of having all this
information know a priori, and
let's assume that all this information is available.
Specifically, the routes server knows in advance the number of bytes,
number of packets (as well as size of each packet) and the duration
of a session, and let's take a closer
look at the complexity of the computation. I can't see how
you can claim to compute an optimal cost route with anything less
exponential complexity.
Thus, to clarify the issue I would suggest to add the following
text to the architecture document :
"In presence of heterogeneous charging schemes (e.g. cost per
byte, cost per packet, cost per session), computation
of a minimum cost route requires a priori knowledge
by the entity that performs computation
of the number of bytes, number of packets and sizes of each
packet, and the duration of a session. If all that
information is not available, computation of a minimum
cost route is impossible. That, but itself,
is likely to make computation of a minimum cost route
in presence of heterogeneous charging schemes impractical.
Even if one assumes that such information is available,
the computational complexity of selecting a minimum cost
route would be exponential, thus making it impractial for
all, but small internets.
Thus, while the architecture can provide information about
heterogeneous charging schemes supported by various domains,
the architecture can not realistically support computation of a minimum
cost route unless all the domains throughout the Internet
employ the same charging scheme."
>Right now, most of the monetary cost related policies are serving as
>best-guess place holders only, until we learn more about how they will
>be used.
That would be quite useful to include in the text.
>Source Policies
>------ --------
>
>In its current version, IDPR does NOT require any changes to hosts.
>User service requirements are collected from various sites in the
>domain by the administrator of that domain. They may be described in
>text files or telephone conversations or whatever, but there is no
>network protocol for collecting this information. The domain
>administrator then configures the domain's source policies based on
>the service requirements collected and distributes this information to
>each policy gateway in the domain.
>
>In the future, we may wish to add to hosts the ability to specify
>their own service requirements. For IP hosts, perhaps there will be a
>set of special options for describing service requirements. The path
>agents would interpret these service requirements and pass them on to
>the route servers for generation of routes with the requested
>services. However, for now, IDPR does not expect hosts to communicate
>their service requirements through any protocol.
There is a confusion between "user service requirements" and
"hosts requirements". The first paragraph talks about "user
service requirements"; the second about "host service requirements".
To clarify the issue I would also suggest to add the following text
(mostly from the second paragraph above):
"In its current version, IDPR does not support service requirements
with granularity of an individual user, unless there is a one-to-one
mapping between a user and a host.
In the future, we may wish to add to hosts the ability to specify
user own service requirements. For IP hosts, perhaps there will be a
set of special options for describing service requirements. The path
agents would interpret these service requirements and pass them on to
the route servers for generation of routes with the requested
services. However, for now, IDPR does not expect users to communicate
their service requirements through any protocol.
To summarize, support for user service requirements for IP hosts
can not be implemented without host software modifications."
>
>Routing Generation and Selection
>------- ---------- --- ---------
>
>IDPR route servers are capable of generating routes that are optimal
>with respect to a given criteria such as delay and according to the
>information contained in their routing information databases (which
>need not be complete). However, we believe that in most cases users
>are not as interested in optimal routes as they are in routes whose
>services are within given bounds. That is, a user would accept any
>route within a given set of bounds and does not necessarily require
>the best route within those bounds.
>
>Removing the requirement for optimal routes means that a route server:
> - need not maintain a complete routing information database,;
> - can terminate route generation when the first satisfactory route
> has been generated;
If the route computation procedure is capable of computing
routes within given bounds, then it is rather easy to show
that the route computation procedure can also produce optimal
routes with not too much added computational complexity
(the added complexity is logarithmic to the possible range of
a metric).
So, if the route computation procedure is capable
of guaranteeing that it can compute a route within a given set
of bounds, if such a route is present, then the same procedure
can be used for computing an optimal route.
To summarize, in a general case there is not too much difference in
computational complexity between computing an optimal route
and computing a route whose services are within given bounds.
Thus removing the requirement for optimal routes is not
that different from removing the requirement for routes
whose services are within given bounds.
To fix confusion on the subject of optimal route computation
versus maintaining only partial informaion database
I would suggest to add the following text:
"It can be shown that under rather general assumptions
computing optimal routes is not much more expensive
that computing routes whose services are within given
bounds. Since computation of an optimal route
can not be performed in presence of only partial
routing information, it follows that computation of
routes whose services are within given bounds
can not be performed in presence of partial routing
information either.
To summarize, computing routes whose services are within
given bounds and maintaining only partial routing information
database are two mutually unsatisfiable requirements."
>Complexity
>----------
>
>When comparing link state routing/source specified forwarding and
>distance vector routing/hop-by-hop forwarding for policy routing, I
>concentrated on the differences in functionality provided rather than
>storage, communication, and computational complexity. The reason was
>not that I was trying to hide the exorbitant cost of link state
>routing, but rather that when comparing IDPR to BGP, I found that
>there was very little difference in the amount of resources needed for
>each of these approaches, under anticipated network conditions.
I wonder why did you pick up BGP ? Why not IDRP. I don't
think you'll be able to make such claims with respect to
storage complexity as you made if
you'll use IDRP. As a matter of fact, I would suggest
you to look at the storage complexity overhead for IDRP
that was published in the April's issue of CCR.
I hope that would change your conclusions.
With respect to the computational overhead,
as you pointed out further in your message, even with BGP
you are likely to get less computational overhead than
with IDPR. The difference would be even more striking
if you'll use IDRP. I really don't understand why did
you pick up BGP ?
In view of the above, your assumption about "very little difference"
seems incorrect from any point of view when you'll consider
IDRP vs IDPR. Therefore, it might be useful to
revisit all this and focus not only on the functionality
but on the cost associated with the functionality.
>I will send a follow-on to cover the rest of the comments.
I am looking forward to see them.
Yakov.
- Martha's comments yakov
- Re: Martha's comments Noel Chiappa
- Martha's comments yakov