Re: [sop] SOP Requirements

"Ashish Dalela (adalela)" <> Wed, 29 February 2012 15:05 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 45EC121F85D0 for <>; Wed, 29 Feb 2012 07:05:11 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -7.478
X-Spam-Status: No, score=-7.478 tagged_above=-999 required=5 tests=[AWL=3.121, BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8]
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id q0si9BAR83Md for <>; Wed, 29 Feb 2012 07:05:09 -0800 (PST)
Received: from ( []) by (Postfix) with ESMTP id A123921F85CF for <>; Wed, 29 Feb 2012 07:05:08 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;;; l=5964; q=dns/txt; s=iport; t=1330527908; x=1331737508; h=mime-version:content-transfer-encoding:subject:date: message-id:in-reply-to:references:from:to:cc; bh=iOT77S5MeI5LKFSmxwRpYErcqOPWUjwVCq+ElIOdpKw=; b=lH+9Lq6uXlzvDmqDENG4kD6xOpq8QqIUIG7/Z0yadq2RMvTfXEE0DZlV 9no767yz0ZUUR5mEvjV24WigEuSdwr7LECAnXpLqLWooQt1M5enS0ZH5P f29/RN6NOubrn2Z8Gd8mi9KVekALTdAuZP0/wQu2I/6zRfV+WF0gYHava o=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-AV: E=Sophos;i="4.73,502,1325462400"; d="scan'208";a="6670166"
Received: from (HELO ([]) by with ESMTP; 29 Feb 2012 15:05:07 +0000
Received: from ( []) by (8.14.3/8.14.3) with ESMTP id q1TF57UI011382; Wed, 29 Feb 2012 15:05:07 GMT
Received: from ([]) by with Microsoft SMTPSVC(6.0.3790.4675); Wed, 29 Feb 2012 20:35:07 +0530
X-MimeOLE: Produced By Microsoft Exchange V6.5
Content-class: urn:content-classes:message
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
Date: Wed, 29 Feb 2012 20:35:04 +0530
Message-ID: <>
In-Reply-To: <>
Thread-Topic: [sop] SOP Requirements
Thread-Index: Acz27e2Pdlu84sQUQ4WS5mNi87EpiQAAjb3w
References: <><><><><><><><> <>
From: "Ashish Dalela (adalela)" <>
To: "Jamal Hadi Salim" <>
X-OriginalArrivalTime: 29 Feb 2012 15:05:07.0048 (UTC) FILETIME=[85E0A680:01CCF6F3]
Cc: Vishwas Manral <>,, Michael Hammer <>
Subject: Re: [sop] SOP Requirements
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Service Orchestration and Desciption for Cloud Services <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Wed, 29 Feb 2012 15:05:11 -0000

Hi Jamal,

I think there may be some confusion here.

There are two types of names we deal with - "types" and "instances". A
"car" is a type and car with a specific number plate is an "instance".
These are two separate things. Likewise, iaas.compute.virtual.ovf is
"type", and is an instance of a server that is OVF
capable. We won't merge these two names. A packet is generally routed in
IP world based on "instance" addresses. In SOP, a packet is routed based
on "types".

That means that a user requests a "type" and the provider routes the
request to the "instance" based on policy constraints. 

The proxy is *not* a translator. In SIP, the term Proxy is used, because
the Proxy executes a task on behalf of the requestor. The Proxy
"proxies" on behalf of the requestor. There is no translation involved.
Likewise, terms like HTTP proxy, mail proxy etc are used. These are not

>> Unfortunately, it reduces the standardized interface to be the lowest
common denominator.

I think people have gotten really confused with OF way of thinking about
a standard. We need to take a step back and see how we have built
standards in the past.
Take example of a MIB and SNMP. SNMP is standard for all MIBs. That
doesn't preclude thousands of MIBs to be created. Likewise SOP is like
SNMP. Service descriptions are like MIBs. Standard SOP doesn't preclude
thousands of service types. When you create a new MIB, you just load the
MIB in the network manager and start managing. You don't have to upgrade
the manager. That means a network manager can manage innumerable types
of services, without a software upgrade. It is made possible by
separation between SNMP and the MIB. 

We want to create the same separation between SOP and service-dependent
descriptions like OVF ..

Makes sense?

Thanks, Ashish

-----Original Message-----
From: [] On Behalf Of
Jamal Hadi Salim
Sent: Wednesday, February 29, 2012 7:54 PM
To: Ashish Dalela (adalela)
Cc: Vishwas Manral;; Michael Hammer
Subject: Re: [sop] SOP Requirements

Hi Ashish,

On Tue, Feb 28, 2012 at 9:08 PM, Ashish Dalela (adalela)
<> wrote:
> Hi Jamal,
> We will look at ForCES again since you have mentioned similarities.

If you want to take a shortcut and get quick answers, feel free
to email me or post on the ForCES list.

> Each device advertizes its capabilities - which means advertizes a set
> of "service names". In this case, the "service name" can be
> iaas.compute.virtual.ovf, which can stand for OVF capable servers.
> Another server can advertize a "service name",
> which can stand for XYZ standard for VMs. When a request for VM
> it carries the "service name" aside from the service parameters. The
> orchestrator maps the target device to the request based on this
> name, and a whole bunch of other policies (location, bandwidth,
> security, ...).
> Ideally, we should not have competing standards for the same service
> name - e.g. virtual machines, but if there are, then this is how you
> would do it.

Yes, makes sense.
[One thing thats not clear is how discovery of this services happens.
In the ForCES
approach, these services would be akin to LFBs. The node that is
providing these
LFBs (analogous to an FE if you are trying to do an NE) would connect
to the controller
(aka CE) and tell it what it can support and what capacities of each
(aka LFB) it can handle etc.]

> The goal is not to translate between OVF and XYZ, because that is so
> buggy and brittle (precisely the problem with mapping APIs). We map
> requests to OVF capable servers and XYZ to XYZ capable servers. SOP
> Proxy acts to do the routing and policy application of requests to
> targets.

When you use the term "proxy" i see "Translation" or at least the
being intelligent enough to take
and understand it to be the same thing as
I think thats not what you want to achieve, correct? You want the
to be explicit for for an OVF
knowledgeable app and for XYZ standard

> The "service names" are hierarchical, which means that the child
> inherits properties of the parent domain (like objects). That allows
> to incrementally extend domains by adding new attributes or features.
> device, may, for example, advertize
> iaas.compute.virtual.ovf.proprietary-extensions, and a user can
> a VM based on OVF and/or proprietary-extensions.


> This allows, a provider to support a new type of service with "value
> additions", while remaining compatible with standard. No protocol
> changes or changes to infrastructure / software are needed to achieve
> these things.

Yes on the "no protocol changes or infrastructure/software". This is
OF fails miserably.
While we are trying to standardize, what you are talking about is
Unfortunately, it reduces the standardized interface to be the lowest

> The Proxy may be configured with defaults for this service, or
> configured to reject requests that don't conform to what the provider
> wants to support or with rules on how a proprietary / standard service
> interacts with other services. So, the Proxy becomes an important
> at which to enforce variety of controls. The Proxy can be at customer
> and provider and service boundaries. So, there are many points where
> different rules can be applied.


> Hope I answered you question.

it does with a small caveat above.

sop mailing list