[Nml-wg] Two proposals for Adaptation
Jeroen van der Ham
vdham at uva.nl
Tue May 29 05:24:02 EDT 2012
+1 from me too.
Jeroen.
On 10 May 2012, at 13:41, Jason Zurawski wrote:
> I believe this makes the most sense as a service, I will add this comment into the ticket as well.
>
> -jason
>
> On 5/10/12 6:05 AM, thus spake Freek Dijkstra:
>> My apologies. The XML for example #2 in my previous mail was wrong.
>>
>>
>> Here are two proposals how to describe adaptation (encoding of a client
>> layer Port in a server layer Port).
>>
>>
>> Option 1: As adaptation service. (similar to a switching service)
>> -----------------------------------------------------------------
>> egress server layer Port --(hasService)--> adaptation Service
>> adaptation Service --(providesPort)--> egress client layer Port*
>>
>> ingress server layer Port --(hasService)--> de-adaptation Service
>> de-adaptation Service --(providesPort)--> ingress client layer Port*
>>
>>
>> Option 2: As Adaptation or DeAdaptation object (similar to a Link)
>> ------------------------------------------------------------------
>> egress client layer Port* --(isSource)--> Adaptation
>> egress server layer Port --(isSink)--> Adaptation
>>
>> ingress server layer Port --(isSource)--> DeAdaptation
>> ingress client layer Port* --(isSink)--> DeAdaptation
>>
>>
>> *Port or PortGroup, if we decide to allow descriptions of multiple Ports
>> -eg. all VLANs- as a group for efficiency purposes.
>>
>> Option 1 is more natural choice for dynamic adaptations, e.g. VLANs in
>> Ethernet.
>> Option 2 is more natural choice for static adaptations, e.g. Ethernet
>> over a wavelength.
>>
>> We can even allow both: option 1 for dynamic adaptations, and option 2
>> for static adaptations. But I rather just pick one of the two.
>>
>> Please let me know your preference, or alternative proposal.
>> Feedback can also be made at https://forge.ogf.org/sf/go/artf6514
>>
>>
>> XML examples follows. Sorry for the quoting, otherwise my mail client
>> would have wrapped the lines. If you like the raw XML, you can get it at
>> https://forge.ogf.org/svn/repos/nml-examples/201205-adaptation/adaptation.xml
>> and are copied below.
>>
>>
>>
>> XML example option 1 (as Service)
>> ---------------------------------
>> (example taken from nml-examples/201109-switchservice/2vlans_option2.xml)
>>
>> egress server layer Port --(hasService)--> adaptation Service
>> adaptation Service --(providesPort)--> egress client layer Port
>>
>> ingress server layer Port --(hasService)--> de-adaptation Service
>> de-adaptation Service --(providesPort)--> ingress client layer Port
>>
>> Adaptation type (here: 802.1Q) is described with a nml:adptationFunction
>> XML element.
>>
>>>
>>> <!-- ATLA ge-6/0/0 egress server layer Port -->
>>> <nml:Port id="urn:ogf:network:internet2.edu:rtr.atla.net:ge-6-0-0_out">
>>> <nml:name>ge-6/0/0 out</nml:name>
>>> <nml:capacity units="bps">10000000000</nml:capacity>
>>> <nml:Relation type="hasService">
>>> <nml:Service idRef="urn:ogf:network:internet2.edu:rtr.atla.net:ge-6-0-0_out_adaptation" />
>>> </nml:Relation>
>>> </nml:Port>
>>>
>>> <!-- ATLA ge-6/0/0 adaptation Service -->
>>> <nml:Service type="adaptation" id="urn:ogf:network:internet2.edu:rtr.atla.net:ge-6-0-0_out_adaptation">
>>> <nml:name>VLAN adaptation service</nml:name>
>>> <nml:adptationFunction>IEEE-802.1q</nml:adptationFunction>
>>> <nml:Relation type="providesPort">
>>> <nml:Port idRef="urn:ogf:network:internet2.edu:rtr.atla.net:ge-6-0-0.42_out" />
>>> </nml:Relation>
>>> </nml:Service>
>>>
>>> <!-- ATLA ge-6/0/0 ingress server layer Port -->
>>> <nml:Port id="urn:ogf:network:internet2.edu:rtr.atla.net:ge-6-0-0_in">
>>> <nml:name>ge-6/0/0 in</nml:name>
>>> <nml:capacity units="bps">10000000000</nml:capacity>
>>> <nml:Relation type="hasService">
>>> <nml:Service idRef="urn:ogf:network:internet2.edu:rtr.atla.net:ge-6-0-0_in_deadaptation" />
>>> </nml:Relation>
>>> </nml:Port>
>>>
>>> <!-- ATLA ge-6/0/0 Deaptation Service -->
>>> <nml:Service type="deadaptation" id="urn:ogf:network:internet2.edu:rtr.atla.net:ge-6-0-0_in_deadaptation">
>>> <nml:name>deadaptation service</nml:name>
>>> <nml:adptationFunction>IEEE-802.1q</nml:adptationFunction>
>>> <nml:Relation type="providesPort">
>>> <nml:Port idRef="urn:ogf:network:internet2.edu:rtr.atla.net:ge-6-0-0.42_in" />
>>> </nml:Relation>
>>> </nml:Service>
>>
>>
>>
>> XML example option 2 (as Adaptation object)
>> -------------------------------------------
>> egress client layer Port --(isSource)--> Adaptation
>> egress server layer Port --(isSink)--> Adaptation
>>
>> ingress server layer Port --(isSource)--> DeAdaptation
>> ingress client layer Port --(isSink)--> DeAdaptation
>>
>> Adaptation type (here: 802.1Q) is described with a type XML attribute.
>>
>>> <!-- ATLA ge-6/0/0 egress server layer Port -->
>>> <nml:Port id="urn:ogf:network:internet2.edu:rtr.atla.net:ge-6-0-0_out">
>>> <nml:name>ge-6/0/0 out</nml:name>
>>> <nml:capacity units="bps">10000000000</nml:capacity>
>>> <nml:Relation type="isSink">
>>> <nml:Adaptation idRef="urn:ogf:network:internet2.edu:rtr.atla.net:ge-6-0-0_out_adaptation" />
>>> </nml:Relation>
>>> </nml:Port>
>>>
>>> <!-- ATLA ge-6/0/0 VLAN 42 egress client layer Port -->
>>> <nml:Port id="urn:ogf:network:internet2.edu:rtr.atla.net:ge-6-0-0.42_out">
>>> <nml:Relation type="isSource">
>>> <nml:Adaptation idRef="urn:ogf:network:internet2.edu:rtr.atla.net:ge-6-0-0_out_adaptation" />
>>> </nml:Relation>
>>> </nml:Port>
>>>
>>> <!-- ATLA ge-6/0/0 adaptation Service -->
>>> <nml:Adaptation type="IEEE-802.1q" id="urn:ogf:network:internet2.edu:rtr.atla.net:ge-6-0-0_out_adaptation">
>>> <nml:name>VLAN adaptation service</nml:name>
>>> </nml:Adaptation>
>>>
>>> <!-- ATLA ge-6/0/0 ingress server layer Port -->
>>> <nml:Port id="urn:ogf:network:internet2.edu:rtr.atla.net:ge-6-0-0_in">
>>> <nml:name>ge-6/0/0 in</nml:name>
>>> <nml:capacity units="bps">10000000000</nml:capacity>
>>> <nml:Relation type="isSource">
>>> <nml:DeAdaptation idRef="urn:ogf:network:internet2.edu:rtr.atla.net:ge-6-0-0_in_deadaptation" />
>>> </nml:Relation>
>>> </nml:Port>
>>>
>>> <!-- ATLA ge-6/0/0 VLAN 42 ingress client layer Port -->
>>> <nml:Port id="urn:ogf:network:internet2.edu:rtr.atla.net:ge-6-0-0.42_in">
>>> <nml:Relation type="isSink">
>>> <nml:DeAdaptation idRef="urn:ogf:network:internet2.edu:rtr.atla.net:ge-6-0-0_in_deadaptation" />
>>> </nml:Relation>
>>> </nml:Port>
>>>
>>> <!-- ATLA ge-6/0/0 Deaptation Service -->
>>> <nml:DeAdaptation type="IEEE-802.1q" id="urn:ogf:network:internet2.edu:rtr.atla.net:ge-6-0-0_in_deadaptation">
>>> <nml:name>deadaptation service</nml:name>
>>> </nml:DeAdaptation>
>> _______________________________________________
>> nml-wg mailing list
>> nml-wg at ogf.org
>> https://www.ogf.org/mailman/listinfo/nml-wg
> _______________________________________________
> nml-wg mailing list
> nml-wg at ogf.org
> https://www.ogf.org/mailman/listinfo/nml-wg
More information about the nml-wg
mailing list