rfc9633.original.xml | rfc9633.xml | |||
---|---|---|---|---|
<?xml version='1.0' encoding='utf-8'?> | <?xml version='1.0' encoding='UTF-8'?> | |||
<!DOCTYPE rfc> | ||||
<?rfc toc="yes"?> | <!-- pre-edited by ST 03/11/24 --> | |||
<?rfc tocompact="yes"?> | ||||
<?rfc tocdepth="3"?> | <!-- draft submitted in xml v3 --> | |||
<?rfc tocindent="yes"?> | ||||
<?rfc symrefs="yes"?> | <!DOCTYPE rfc [ | |||
<?rfc sortrefs="yes"?> | <!ENTITY nbsp " "> | |||
<?rfc comments="yes"?> | <!ENTITY zwsp "​"> | |||
<?rfc inline="yes"?> | <!ENTITY nbhy "‑"> | |||
<?rfc compact="yes"?> | <!ENTITY wj "⁠"> | |||
<?rfc subcompact="no"?> | ]> | |||
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" category="std" docName="draft-ie | ||||
tf-detnet-yang-20" ipr="trust200902" submissionType="IETF" obsoletes="" updates= | <rfc xmlns:xi="http://www.w3.org/2001/XInclude" category="std" docName="draft-ie | |||
"" xml:lang="en" tocInclude="true" tocDepth="3" symRefs="true" sortRefs="true" v | tf-detnet-yang-20" number="9633" consensus="true" ipr="trust200902" submissionTy | |||
ersion="3"> | pe="IETF" obsoletes="" updates="" xml:lang="en" tocInclude="true" tocDepth="3" s | |||
<!-- xml2rfc v2v3 conversion 3.7.0 --> | ymRefs="true" sortRefs="true" version="3"> | |||
<front> | <front> | |||
<title abbrev="draft-ietf-detnet-yang-20">Deterministic Networking | <title abbrev="DetNet YANG Data Model">Deterministic Networking | |||
(DetNet) YANG Model</title> | (DetNet) YANG Data Model</title> | |||
<seriesInfo name="Internet-Draft" value="draft-ietf-detnet-yang-20"/> | ||||
<seriesInfo name="RFC" value="9633"/> | ||||
<author fullname="Xuesong Geng" initials="X." surname="Geng"> | <author fullname="Xuesong Geng" initials="X." surname="Geng"> | |||
<organization>Huawei Technologies</organization> | <organization>Huawei Technologies</organization> | |||
<address> | <address> | |||
<postal> | ||||
<street/> | ||||
<city/> | ||||
<code/> | ||||
<country/> | ||||
</postal> | ||||
<email>gengxuesong@huawei.com</email> | <email>gengxuesong@huawei.com</email> | |||
</address> | </address> | |||
</author> | </author> | |||
<author fullname="Yeoncheol Ryoo" initials="Y." surname="Ryoo"> | <author fullname="Yeoncheol Ryoo" initials="Y." surname="Ryoo"> | |||
<organization>ETRI</organization> | <organization>ETRI</organization> | |||
<address> | <address> | |||
<postal> | ||||
<street/> | ||||
<city/> | ||||
<region/> | ||||
<code/> | ||||
<country/> | ||||
</postal> | ||||
<phone/> | ||||
<email>dbduscjf@etri.re.kr</email> | <email>dbduscjf@etri.re.kr</email> | |||
<uri/> | ||||
</address> | </address> | |||
</author> | </author> | |||
<author fullname="Don Fedyk" initials="D." surname="Fedyk"> | <author fullname="Don Fedyk" initials="D." surname="Fedyk"> | |||
<organization>LabN Consulting, L.L.C.</organization> | <organization>LabN Consulting, L.L.C.</organization> | |||
<address> | <address> | |||
<postal> | ||||
<street/> | ||||
<city/> | ||||
<region/> | ||||
<code/> | ||||
<country/> | ||||
</postal> | ||||
<phone/> | ||||
<email>dfedyk@labn.net</email> | <email>dfedyk@labn.net</email> | |||
<uri/> | ||||
</address> | </address> | |||
</author> | </author> | |||
<author fullname="Reshad Rahman" initials="R." surname="Rahman"> | <author fullname="Reshad Rahman" initials="R." surname="Rahman"> | |||
<organization>Equinix</organization> | <organization>Equinix</organization> | |||
<address> | <address> | |||
<postal> | ||||
<street/> | ||||
<city/> | ||||
<region/> | ||||
<code/> | ||||
<country/> | ||||
</postal> | ||||
<phone/> | ||||
<email>reshad@yahoo.com</email> | <email>reshad@yahoo.com</email> | |||
<uri/> | ||||
</address> | </address> | |||
</author> | </author> | |||
<author fullname="Zhenqiang Li" initials="Z." surname="Li"> | <author fullname="Zhenqiang Li" initials="Z." surname="Li"> | |||
<organization>China Mobile</organization> | <organization>China Mobile</organization> | |||
<address> | <address> | |||
<postal> | ||||
<street/> | ||||
<city/> | ||||
<code/> | ||||
<country/> | ||||
</postal> | ||||
<email>lizhenqiang@chinamobile.com</email> | <email>lizhenqiang@chinamobile.com</email> | |||
</address> | </address> | |||
</author> | </author> | |||
<date/> | <date year="2024" month="October"/> | |||
<area>RTG</area> | ||||
<workgroup>detnet</workgroup> | ||||
<abstract> | <abstract> | |||
<t>This document contains the specification for the Deterministic Networki ng | <t>This document contains the specification for the Deterministic Networki ng | |||
YANG Model for configuration and operational data of DetNet Flows. | (DetNet) YANG data model for configuration and operational data for DetNet | |||
The model allows for provisioning of | flows. | |||
end-to-end DetNet service on devices along the path without dependency on | The model allows the provisioning of an | |||
any | end-to-end DetNet service on devices along the path without depending on a | |||
ny | ||||
signaling protocol. It also specifies operational status for flows. | signaling protocol. It also specifies operational status for flows. | |||
</t> | </t> | |||
<t>The YANG module defined in this document conforms to the Network | <t>The YANG module defined in this document conforms to the Network | |||
Management Datastore Architecture (NMDA).</t> | Management Datastore Architecture (NMDA).</t> | |||
</abstract> | </abstract> | |||
</front> | </front> | |||
<middle> | <middle> | |||
<section numbered="true" toc="default"> | <section numbered="true" toc="default"> | |||
<name>Introduction</name> | <name>Introduction</name> | |||
<t>DetNet (Deterministic Networking) provides a capability to carry | <t>DetNet (Deterministic Networking) provides the ability to carry | |||
specified unicast or multicast data flows for real-time applications | specified unicast or multicast data flows for real-time applications | |||
with extremely low packet loss rates and assured maximum end-to-end | with extremely low packet loss rates and assured maximum end-to-end | |||
delivery latency. A description of the general background and concepts | delivery latency. A description of the general background and concepts | |||
of DetNet can be found in <xref target="RFC8655" format="default"/>.</t> | of DetNet can be found in <xref target="RFC8655" format="default"/>.</t> | |||
<t>This document defines a YANG model for DetNet based on YANG data | <t>This document defines a YANG data model for DetNet based on YANG data | |||
types and modeling language defined in <xref target="RFC6991" format="defa ult"/> and | types and modeling language defined in <xref target="RFC6991" format="defa ult"/> and | |||
<xref target="RFC7950" format="default"/>. DetNet service, which is design | <xref target="RFC7950" format="default"/>.</t> | |||
ed for | ||||
describing the characteristics of services being provided for | <t>This document also includes the following:</t> | |||
application flows over a network, and DetNet configuration, which is | ||||
designed for DetNet flow path establishment, flow status reporting, and | <ul spacing="normal"> | |||
DetNet functions configuration in order to achieve end-to-end bounded | <li>The DetNet service, which is designed to | |||
latency and zero congestion loss, are both included in this | describe the characteristics of services being provided for | |||
document.</t> | application flows over a network.</li> | |||
<t> This Yang model is scoped to the description of the | <li>DetNet configuration, which is | |||
designed to provide DetNet flow path establishment, flow status reporting, | ||||
and | ||||
configuration of DetNet functions in order to achieve end-to-end bounded | ||||
latency and zero congestion loss.</li> | ||||
</ul> | ||||
<t> This YANG data model is scoped to the description of the | ||||
aggregation/disaggregation and data plane capabilities of the DetNet data | aggregation/disaggregation and data plane capabilities of the DetNet data | |||
planes defined in the DetNet Architecture | planes defined in "<xref target="RFC8655" format="title"/>" <xref target=" | |||
<xref target="RFC8655" format="default"> </xref> | RFC8655" format="default"/> | |||
and DetNet Framework <xref target="RFC8938" format="default"> </xref>. | and "<xref target="RFC8938" format="title"/>" <xref target="RFC8938" forma | |||
t="default"/>. | ||||
DetNet operates at the IP layer and delivers service over lower-layer | DetNet operates at the IP layer and delivers service over lower-layer | |||
technologies such as MPLS and IEEE 802.1 Time-Sensitive Networking (TSN). | technologies such as MPLS and IEEE 802.1 Time-Sensitive Networking (TSN). | |||
</t> | </t> | |||
</section> | </section> | |||
<section numbered="true" toc="include"> | <section anchor="abbreviations" numbered="true" toc="include"> | |||
<name slugifiedName="name-abbreviations">Abbreviations</name> | <name>Abbreviations</name> | |||
<t indent="0"> | <t>The following abbreviations are used in this document: | |||
The following abbreviations are used in this document: | ||||
</t> | </t> | |||
<dl newline="false" spacing="normal" indent="14"> | <dl newline="false" spacing="normal"> | |||
<dt>PEF</dt> | <dt>PEF:</dt> | |||
<dd>Packet Elimination Function</dd> | <dd>Packet Elimination Function</dd> | |||
<dt>PRF</dt> | <dt>POF:</dt><dd>Packet Ordering Function</dd> | |||
<dt>PRF:</dt> | ||||
<dd>Packet Replication Function</dd> | <dd>Packet Replication Function</dd> | |||
<dt>PEOF</dt> | <dt>PREOF:</dt> | |||
<dd>Packet Elimination and Ordering Functions</dd> | <dd>Packet Replication, Elimination, and Ordering Functions</dd> | |||
<dt>PERF</dt> | <dt>MPLS:</dt> | |||
<dd>Packet Elimination and Replication Functions</dd> | ||||
<dt>PREOF</dt> | ||||
<dd>Packet Replication, Elimination and Ordering Functions</dd> | ||||
<dt>MPLS</dt> | ||||
<dd>Multiprotocol Label Switching</dd> | <dd>Multiprotocol Label Switching</dd> | |||
</dl> | </dl> | |||
</section> | </section> | |||
<section numbered="true" toc="default"> | <section numbered="true" toc="default"> | |||
<name>Terminology</name> | <name>Terminology</name> | |||
<t>This document uses the terminology defined in <xref target="RFC8655" fo rmat="default"> </xref>. | <t>This document uses the terminology defined in <xref target="RFC8655" fo rmat="default"> </xref>. | |||
The terms A-label, S-label, and F-label are used in this document | The terms "A-Label", "S-Label", and "F-Label" are used in this document | |||
as defined in <xref target="RFC8964"/>. | as defined in <xref target="RFC8964"/>. | |||
</t> | </t> | |||
</section> | </section> | |||
<section numbered="true" toc="default"> | <section numbered="true" toc="default"> | |||
<name>DetNet YANG Module</name> | <name>DetNet YANG Module</name> | |||
<t>The DetNet YANG module includes DetNet App-flow, | <t>The DetNet YANG module (<xref target="detnet-yang-module"/>) includes D | |||
DetNet Service Sub-layer, and DetNet Forwarding Sub-layer | etNet App-flow, | |||
DetNet service sub-layer, and DetNet forwarding sub-layer | ||||
configuration and operational objects. | configuration and operational objects. | |||
The corresponding attributes used in different sub-layers | The corresponding attributes used in different sub-layers | |||
are defined in <xref target="appyangatt"> </xref> , | are defined in Sections <xref target="appyangatt" format="counter"> < | |||
<xref target="serviceyangatt"> </xref> , | /xref>, | |||
<xref target="forwardingyangatt"> </xref> respectively.</t> | <xref target="serviceyangatt" format="counter"></xref>, and | |||
<xref target="forwardingyangatt" format="counter"></xref>, respect | ||||
ively.</t> | ||||
<t> Layers of the objects typically occur | <t> Layers of the objects typically occur | |||
in the different data instances forming the node types defined in | in the different data instances forming the node types defined in | |||
<xref target="RFC8655" format="default"> </xref>. | <xref target="RFC8655" format="default"> </xref>. | |||
<xref target="table_layer_node" format="default"/> | <xref target="table_layer_node" format="default"/> | |||
illustrates the relationship between data instance node types and the included layers. | illustrates the relationship between data instance node types and the included layers. | |||
Node types are logical roles per DetNet service: a device along one | Node types are logical roles per DetNet service: one | |||
DetNet service can be of one node type, while another service may use | DetNet service may use a device of one node type, while another servic | |||
e may use | ||||
the same device with a different node type. | the same device with a different node type. | |||
This model is a controller based model because a controller or operato | This model is a controller-based model, because a controller or operat | |||
r | or | |||
configures all the devices to form a service. | configures all of the devices to form a service. | |||
</t> | </t> | |||
<figure anchor="table_layer_node" align="left" suppress-title="false"> | <table anchor="table_layer_node" align="left"> | |||
<name slugifiedName="detnet-layer-node-types">DetNet Layers and Node Types | <name>DetNet Layers and Node Types</name> | |||
</name> | <thead> | |||
<artwork name="" type="" align="left" alt=""><![CDATA[ | <tr> | |||
+---------------------------------------------------+ | <th colspan="3" align="center">Data Instance</th> | |||
| Instance | | </tr> | |||
+-----+-----------------+-----------------+---------------+ | <tr> | |||
| |Edge Node | Relay Node | Transit Node | | <th>Edge Node</th> | |||
+-----+-----------------+-----------------+---------------+ | <th>Relay Node</th> | |||
| L |Application | | | | <th>Transit Node</th> | |||
| a +-----------------+-----------------+---------------+ | </tr> | |||
| y |Service Sub-Layer|Service Sub-Layer| | | </thead> | |||
| e +-----------------+-----------------+---------------+ | <tbody> | |||
| r |Forwarding S-L |Forwarding S-L | Forwarding S-L| | <tr> | |||
+-----+-----------------+-----------------+---------------+ | <td>App-Flow Data Layer</td> | |||
<td></td> | ||||
]]></artwork> | <td></td> | |||
</figure> | </tr> | |||
<tr> | ||||
<td>Service Sub-layer</td> | ||||
<td>Service Sub-layer</td> | ||||
<td></td> | ||||
</tr> | ||||
<tr> | ||||
<td>Forwarding Sub-layer</td> | ||||
<td>Forwarding Sub-layer</td> | ||||
<td>Forwarding Sub-layer</td> | ||||
</tr> | ||||
</tbody> | ||||
</table> | ||||
<t> | <t> | |||
All of the layers have ingress/incoming and egress/outgoing operat ions, but any instance | All of the layers have ingress/incoming and egress/outgoing operat ions, but any instance | |||
may be configured as only unidirectional. | may be configured as unidirectional only. | |||
Ingress refers to any DetNet layer where a DetNet context is appli | "Ingress" refers to any DetNet layer where a DetNet context is app | |||
ed. Ingress allows functions such as | lied. Ingress allows functions such as | |||
switching, aggregation and encapsulation. | switching, aggregation, and encapsulation. | |||
Likewise, egress refers to any DetNet layer where a DetNet context | "Egress" refers to any DetNet layer where a DetNet context is remo | |||
is removed. Egress allows | ved. Egress allows | |||
functions such as switching, disaggregation and decapsulation. | functions such as switching, disaggregation, and decapsulation. | |||
This means that each unidirectional | This means that each unidirectional | |||
flow identifier configuration is programmed starting at the ingres s and flow status is | flow identifier configuration is programmed starting at the ingres s and flow status is | |||
reported at ingress on each end. | reported at the ingress on each end. | |||
In the MPLS cases once encapsulated, the IP 6-tuple, see <xref ta | In the case of MPLS, once encapsulated, the IP 6-tuple parameters | |||
rget="RFC8938"/>, | (see <xref target="RFC8938"/>) | |||
parameters may not be required to be programmed again. | may not be required to be programmed again. | |||
In the IP case, without encapsulation, various IP flow id paramete | In the case of IP, without encapsulation, various IP flow identifi | |||
rs must be configured along | cation parameters must be configured along | |||
the flow path. | the flow path. | |||
</t> | </t> | |||
<t> | <t> | |||
In the YANG model the terms source and destination are | In the YANG data model defined in this document, the terms "source | |||
used as flow identifiers whereas ingress and egress refer to a | " and "destination" are | |||
used as flow identifiers, whereas "ingress" and "egress" refer to | ||||
a | ||||
DetNet application direction from the application edge. | DetNet application direction from the application edge. | |||
Ingress is to the DetNet application and egress is from the applic | "Ingress" means "to the DetNet application", and "egress" means "f | |||
ation. | rom the application". | |||
The terms incoming and outgoing generally represent | The terms "incoming" and "outgoing" represent | |||
the flow direction towards the remote application. Outgoing is vie | the flow direction towards the remote application as a unidirectio | |||
wed as | nal flow. | |||
going down the stack from Application to Service sub-layer to Forw | This means the terms are used at a sub-layer to represent | |||
arding sub-layer | "incoming" to the sub-layer function and "outgoing" is viewed as le | |||
and incoming is the reverse. | aving the sub-layer. | |||
Although, | For the service sub-layer, "incoming" is typically aggregating appl | |||
in examples where there is aggregation and disaggregation | ications flows or other service | |||
outgoing relates to the aggregating output and incoming | sub-layers, etc. | |||
For the forwarding sub-layer, "incoming" is typically aggregating s | ||||
ervice sub-layers. | ||||
However, this also means for both service and forwarding sub-layers | ||||
at the egress DetNet node | ||||
"incoming" also handles external flows "incoming" to the respective | ||||
sub-layer. For MPLS, this | ||||
would usually involve the removal of a label. For IP -- where the r | ||||
epresentative sub-layer is merely an | ||||
aggregation of an IP prefix or IP tuple -- there may be | ||||
no incoming/outgoing definitions, since the arriving packet can be | ||||
handled directly | ||||
by a standard next-hop routing decision. | ||||
In examples (<xref target="Examples"/>) where both aggregation and | ||||
disaggregation take place, | ||||
at the egress of the flow "outgoing" relates to the aggregating ou | ||||
tput and "incoming" | ||||
relates to the disaggregating flows. | relates to the disaggregating flows. | |||
</t> | </t> | |||
<t> | <t> | |||
At the egress point, forwarding information is determined by the | At the egress point, forwarding information is determined by the | |||
App-flow type with all DetNet-related headers removed. The forward | App-flow type with all DetNet-related headers removed. In the case | |||
ing | of IP, the forwarding | |||
information can specify an output port, or set a next-hop-address | information can specify an output port or set a next-hop address. | |||
in case | In the case of | |||
of IP, or set an MPLS label in case of MPLS. | MPLS, it can set an MPLS label. | |||
</t> | </t> | |||
<section anchor="appyangatt" numbered="true" toc="default"> | <section anchor="appyangatt" numbered="true" toc="default"> | |||
<name>DetNet Application Flow YANG Attributes</name> | <name>DetNet Application Flow YANG Attributes</name> | |||
<t>DetNet application flow is responsible for mapping between | <t>DetNet application flows are responsible for mapping between | |||
application flows and DetNet flows at the edge node (egress/ingress | application flows and DetNet flows at the edge node (egress/ingress | |||
node). The application flows can be either layer 2 or layer 3 | node). The application flows can be either Layer 2 or Layer 3 | |||
flows. To map a flow at the User Network Interface (UNI), the | flows. To map a flow at the User-Network Interface (UNI), the | |||
corresponding attributes are defined in <xref target="RFC9016" format="d | corresponding attributes defined in <xref target="RFC9016" format="defau | |||
efault"/>.</t> | lt"/> are used.</t> | |||
</section> | </section> | |||
<section anchor="serviceyangatt" numbered="true" toc="default"> | <section anchor="serviceyangatt" numbered="true" toc="default"> | |||
<name>DetNet Service Sub-layer YANG Attributes</name> | <name>DetNet Service Sub-layer YANG Attributes</name> | |||
<t>DetNet service functions, e.g., DetNet tunnel | <t>DetNet service functions, e.g., DetNet tunnel | |||
initialization/termination and service protection, are provided in | initialization/termination and service protection, are provided in | |||
the DetNet service sub-layer. To support these functions, the following | the DetNet service sub-layer. To support these functions, the following | |||
service attributes need to be configured:</t> | service attributes need to be configured:</t> | |||
<ul spacing="normal"> | <ul spacing="normal"> | |||
<li>DetNet flow identification</li> | <li>DetNet flow identification.</li> | |||
<li>Service function indication, indicates which service function | <li>Service function type. Indicates which service function | |||
will be invoked at a DetNet edge, relay node or end station. | will be invoked at a DetNet edge, relay node, or end station. | |||
(DetNet tunnel initialization or termination are default functions | (DetNet tunnel initialization and termination are default functions | |||
in the DetNet service layer, so there is no need for explicit | in the DetNet service sub-layer, so there is no need to indicate the | |||
indication). The corresponding arguments for service functions | m explicitly.) The corresponding arguments for service functions | |||
also need to be defined.</li> | also need to be defined.</li> | |||
</ul> | </ul> | |||
</section> | </section> | |||
<section anchor="forwardingyangatt" numbered="true" toc="default"> | <section anchor="forwardingyangatt" numbered="true" toc="default"> | |||
<name>DetNet Forwarding Sub-layer YANG Attributes</name> | <name>DetNet Forwarding Sub-layer YANG Attributes</name> | |||
<t>As defined in <xref target="RFC8655" format="default"/>, DetNet forwa rding sub-layer | <t>As defined in <xref target="RFC8655" format="default"/>, the DetNet f orwarding sub-layer | |||
optionally provides congestion protection for DetNet flows over paths | optionally provides congestion protection for DetNet flows over paths | |||
provided by the underlying network. Explicit route is another | provided by the underlying network. Explicit routes provide another | |||
mechanism that is used by DetNet to avoid temporary interruptions | mechanism used by DetNet to avoid temporary interruptions | |||
caused by the convergence of routing or bridging protocols, and it is | caused by the convergence of routing or bridging protocols. Explicit rou | |||
tes are | ||||
also implemented at the DetNet forwarding sub-layer.</t> | also implemented at the DetNet forwarding sub-layer.</t> | |||
<t>To support congestion protection and explicit route, the following | <t>To support congestion protection and explicit routes, the following | |||
transport layer related attributes are necessary:</t> | transport-layer-related attributes are necessary:</t> | |||
<ul spacing="normal"> | <ul spacing="normal"> | |||
<li>Flow Specification and Traffic Requirements, as described | <li>Flow specification and traffic requirements are as described | |||
in the information model in <xref target="RFC9016" format="default"/ | in the information model provided in <xref target="RFC9016" format=" | |||
>. These may be used for | default"/>. These may be used for | |||
resource reservation, flow shaping, filtering and policing by | resource reservation, flow shaping, filtering, and policing by | |||
a control plane or other network management and control mechanisms. | a control plane or other network management and control mechanisms. | |||
</li> | </li> | |||
<li>Since this model programs the data plane existing explicit route | <li>Since this model programs the data plane, existing explicit route | |||
mechanisms can be reused. If a static MPLS tunnel is used as the | mechanisms can be reused. If a static MPLS tunnel is used as the | |||
transport tunnel, the configuration needs to be at every transit | transport tunnel, the configuration needs to be at every transit | |||
node along the path. For an IP-based path, the static configuration | node along the path. For an IP-based path, the static configuration | |||
is similar to the static MPLS case. This document provides | is similar to the static MPLS case. This document provides | |||
data-plane configuration of IP addresses or MPLS labels | data plane configuration of IP addresses or MPLS labels, | |||
but it does not provide control plane mapping or other | but it does not provide control plane mapping or other | |||
aspects. | techniques. | |||
</li> | </li> | |||
</ul> | </ul> | |||
</section> | </section> | |||
</section> | </section> | |||
<section numbered="true" toc="default"> | <section numbered="true" toc="default"> | |||
<name>DetNet Flow Aggregation</name> | <name>DetNet Flow Aggregation</name> | |||
<t> | <t> | |||
DetNet provides the capability of flow aggregation to improve | DetNet provides the ability to perform flow aggregation to improve the | |||
scalability of DetNet data, management and control planes. Aggregated | scalability of DetNet data, management, and control planes. Aggregated | |||
flows can be viewed by some DetNet nodes as individual DetNet flows. | flows can be viewed by some DetNet nodes as individual DetNet flows. | |||
When aggregating DetNet flows, the flows should be compatible: if | When aggregating DetNet flows, the flows should be compatible: if bandwidt | |||
bandwidth reservations are used, the reservation should be a reasonable | h | |||
representation of the individual reservations; if maximum delay bounds | reservation is used, the reservation should be a reasonable representation | |||
are used, the system should ensure that the aggregate does not exceed the | of | |||
delay bounds of the individual flows. | the total aggregate bandwidth; if maximum delay bounds are used, the syste | |||
m | ||||
should ensure that the total DetNet flow delay does not exceed the maximum | ||||
delay | ||||
bound of any individual flow. | ||||
</t> | </t> | |||
<t> | <t> | |||
The DetNet YANG model defined in this document supports DetNet flow | The DetNet YANG data model defined in this document supports DetNet flow | |||
aggregation with the following functions: | aggregation with the following functions: | |||
</t> | </t> | |||
<ul spacing="normal"> | <ul spacing="normal"> | |||
<li> | <li> | |||
Aggregated flow encapsulation/decapsulation/identification | Aggregated flow encapsulation/decapsulation/identification. | |||
</li> | </li> | |||
<li> | <li> | |||
Mapping individual DetNet flows to an aggregated flow | Mapping individual DetNet flows to an aggregated flow. | |||
</li> | </li> | |||
<li> | <li> | |||
Changing traffic specification parameters for aggregated flows | Changing traffic specification parameters for aggregated flows. | |||
</li> | </li> | |||
</ul> | </ul> | |||
<t> | <t> | |||
The following cases of DetNet aggregation are supported: | The following DetNet aggregation scenarios are supported: | |||
</t> | </t> | |||
<ul spacing="normal"> | <ul spacing="normal"> | |||
<li> | <li> | |||
Ingress node aggregates App flows into a service sub-layer of DetNet flow | The ingress node aggregates App-flows into a service sub-layer of a DetNe t flow. | |||
</li> | </li> | |||
<li> | <li> | |||
In ingress node, the service sub-layers of DetNet flows are aggregated in to a forwarding sub-layer | In the ingress node, the service sub-layers of DetNet flows are aggregate d into a forwarding sub-layer. | |||
</li> | </li> | |||
<li> | <li> | |||
In ingress node, the service sub-layers of DetNet flows are aggregated in to a service sub-layer of an aggregated DetNet flow | In the ingress node, the service sub-layers of DetNet flows are aggregate d into a service sub-layer of an aggregated DetNet flow. | |||
</li> | </li> | |||
<li> | <li> | |||
Relay node aggregates the forwarding sub-layers DetNet flows into a forwa rding sub-layer | The relay node aggregates the forwarding sub-layers of DetNet flows into a forwarding sub-layer. | |||
</li> | </li> | |||
<li> | <li> | |||
Relay node aggregates the service sub-layers of DetNet flows into a forwa rding sub-layer | The relay node aggregates the service sub-layers of DetNet flows into a f orwarding sub-layer. | |||
</li> | </li> | |||
<li> | <li> | |||
Relay node aggregates the service sub-layers of DetNet flows into a servi ce sub-layer of Aggregated DetNet flow | The relay node aggregates the service sub-layers of DetNet flows into a s ervice sub-layer of an aggregated DetNet flow. | |||
</li> | </li> | |||
<li> | <li> | |||
Relay node aggregates the forwarding sub-layers of DetNet flow into a ser vice sub-layer of Aggregated DetNet flow | The relay node aggregates the forwarding sub-layers of DetNet flows into a service sub-layer of an aggregated DetNet flow. | |||
</li> | </li> | |||
<li> | <li> | |||
Transit node aggregates the forwarding sub-layers of DetNet flows into a forwarding sub-layer | The transit node aggregates the forwarding sub-layers of DetNet flows int o a forwarding sub-layer. | |||
</li> | </li> | |||
</ul> | </ul> | |||
<t> | <t> | |||
Traffic requirements and traffic specification may be tracked for | Traffic requirements and the traffic specification may be tracked for | |||
individual or aggregate flows but reserving resources and tracking the | individual or aggregate flows, but reserving resources and tracking the | |||
services in the aggregated flow is out of scope. | services in the aggregated flow are out of scope. | |||
</t> | </t> | |||
</section> | </section> | |||
<section numbered="true" toc="default"> | <section numbered="true" toc="default" anchor="yang-structure"> | |||
<name>DetNet YANG Structure Considerations</name> | <name>DetNet YANG Structure Considerations</name> | |||
<t/> | <t>This diagram shows the general structure of the DetNet YANG data | |||
<t>The picture shows the general structure of the DetNet YANG | model:</t> | |||
Model:</t> | <artwork name="" type="ascii-art" align="left" alt=""><![CDATA[ | |||
<artwork name="" type="" align="left" alt=""><![CDATA[ | +-----------+ | |||
+-----------+ | |ietf-detnet| | |||
|ietf-detnet| | +-----+-----+ | |||
+-----+-----+ | | | |||
| | +--------------+----------------+------------------+ | |||
+--------------+----------------+------------------+ | | | | | | |||
| | | | | +-----+------+ +-----+------+ +-------+------+ | | |||
+-----+------+ +-----+------+ +-------+------+ | | | App- | | Service | | Forwarding | | | |||
| App Flows | |service s-l | |forwarding s-l| | | | Flows | | Sub-layer | | Sub-layer | | | |||
+-----+------+ +-----+------+ +-------+------+ | | +-----+------+ +-----+------+ +-------+------+ | | |||
| | | | | | | | | | |||
+-----+------+ +-----+------+ +-------+------+ | | +-----+------+ +-----+------+ +-------+------+ | | |||
| Reference | | Reference | | Reference | | | | Reference | | Reference | | Reference | | | |||
| to Traffic | | to Traffic | | to Traffic | +-------+-------+ | | to Traffic | | to Traffic | | to Traffic | +-------+-------+ | |||
| Profile | | Profile | | Profile | |Traffic Profile| | | Profile | | Profile | | Profile | |Traffic Profile| | |||
+------------+ +------------+ +--------------+ +---------------+ | +------------+ +------------+ +--------------+ +---------------+ | |||
]]></artwork> | ]]></artwork> | |||
<t> | <t> | |||
There are three layer types in the DetNet YANG Model: | There are three layer types in the DetNet YANG data model: | |||
App-flow data layer, | the App-flow data layer, the | |||
service sub-layer and forwarding sub-layer. | service sub-layer, and the forwarding sub-layer. | |||
Additionally, the Traffic parameters are captured in a Traffic pro | Additionally, the traffic parameters are captured in a traffic pro | |||
file | file | |||
that can be referenced by any of the layers. | that can be referenced by any of the layers. | |||
</t> | </t> | |||
<t> | <t> | |||
Below is a summary YANG tree showing the major items. | Below is a summary YANG tree showing the major items. | |||
A complete YANG tree is in section <xref target="Tree"/>. | The complete YANG tree is provided in <xref target="Tree"/>. | |||
</t> | </t> | |||
<t> | <t> | |||
A traffic profile can be created for an application, | A traffic profile can be created for an application, | |||
a service sub-layer or a forwarding sub-layer. | a service sub-layer, or a forwarding sub-layer. | |||
A single profile may be shared by multiple applications/sub-layer. | A single profile may be shared by multiple applications/sub-layers. | |||
Each profile indicates the members currently using that profile. | Each profile indicates the members currently using that profile. | |||
</t> | </t> | |||
<t> | <t> | |||
Depending on which DetNet layers and functions are required, | Depending on which DetNet layers and functions are required, | |||
some or all of the components may be configured. | some or all of the components may be configured. | |||
Examples are shown in <xref target="Examples"/>. | Examples are provided in <xref target="Examples"/>. | |||
</t> | </t> | |||
</section> | </section> | |||
<section numbered="true" toc="default"> | <section numbered="true" toc="default"> | |||
<name>DetNet Configuration YANG Structures</name> | <name>DetNet Configuration YANG Structures</name> | |||
<t> The following is a partial tree representation of the YANG as de fined in | <t> The following is a partial tree representation of the DetNet YAN G data model, per the guidelines provided in | |||
<xref target="RFC8340" format="default"/>. This corresponds to the | <xref target="RFC8340" format="default"/>. This corresponds to the | |||
structure layout in the previous section. | layout of the diagram in <xref target="yang-structure"/>. | |||
</t> | </t> | |||
<artwork name="" type="" align="left" alt=""><![CDATA[ | <sourcecode name="" type="yangtree"><![CDATA[ | |||
module: ietf-detnet | module: ietf-detnet | |||
+--rw detnet | +--rw detnet | |||
+--rw traffic-profile* [name] | +--rw traffic-profile* [name] | |||
| +--rw name string | | +--rw name string | |||
| +--rw traffic-requirements | | +--rw traffic-requirements | |||
| +--rw traffic-spec | | +--rw traffic-spec | |||
| +--ro member-app-flow* app-flow-ref | | +--ro member-app-flow* app-flow-ref | |||
| +--ro member-svc-sublayer* service-sub-layer-ref | | +--ro member-svc-sublayer* service-sub-layer-ref | |||
| +--ro member-fwd-sublayer* forwarding-sub-layer-ref | | +--ro member-fwd-sublayer* forwarding-sub-layer-ref | |||
+--rw app-flows | +--rw app-flows | |||
skipping to change at line 434 ¶ | skipping to change at line 422 ¶ | |||
| ... | | ... | |||
+--rw forwarding | +--rw forwarding | |||
+--rw sub-layer* [name] | +--rw sub-layer* [name] | |||
+--rw name string | +--rw name string | |||
+--rw traffic-profile? traffic-profile-ref | +--rw traffic-profile? traffic-profile-ref | |||
+--rw operation? mpls-fwd-operation | +--rw operation? mpls-fwd-operation | |||
+--rw incoming | +--rw incoming | |||
| ... | | ... | |||
+--rw outgoing | +--rw outgoing | |||
... | ... | |||
]]></artwork> | ]]></sourcecode> | |||
</section> | </section> | |||
<section numbered="true" toc="default"> | <section numbered="true" toc="default" anchor="detnet-yang-module"> | |||
<name>DetNet Configuration YANG Model</name> | <name>DetNet Configuration YANG Data Model</name> | |||
<t> This YANG model imports typedefs from <xref target="RFC6991"/>, | <t> This YANG data model imports typedefs from <xref target="RFC6991 | |||
"/>, | ||||
<xref target="RFC8519"/>, | <xref target="RFC8519"/>, | |||
<xref target="RFC8294"/>, | <xref target="RFC8294"/>, | |||
<xref target="RFC8343"/>, | <xref target="RFC8343"/>, | |||
and <xref target="IEEE8021Q"/>. | and <xref target="IEEE8021Q-2022"/>. | |||
This YANG model also has the following references to RFCs | This YANG data model also includes the following RFC references, | |||
that are not in the document text body | which are not cited elsewhere in the body of this document: | |||
<xref target="RFC0791"/>, | <xref target="RFC0791"/>, | |||
<xref target="RFC4303"/>, | <xref target="RFC4303"/>, | |||
<xref target="RFC8349"/>, | <xref target="RFC8200"/>, | |||
<xref target="RFC8938"/>, | <xref target="RFC8349"/>, and | |||
<xref target="RFC8960"/>, | <xref target="RFC8960"/>. | |||
<xref target="RFC8964"/>, | ||||
and <xref target="RFC8200"/>. | ||||
</t> | </t> | |||
<sourcecode name="ietf-detnet@2022-02-21.yang" type="yang" markers=" true"><![CDATA[ | <sourcecode name="ietf-detnet@2024-08-15.yang" type="yang" markers=" true"><![CDATA[ | |||
module ietf-detnet { | module ietf-detnet { | |||
yang-version 1.1; | yang-version 1.1; | |||
namespace "urn:ietf:params:xml:ns:yang:ietf-detnet"; | namespace "urn:ietf:params:xml:ns:yang:ietf-detnet"; | |||
prefix dnet; | prefix dnet; | |||
import ietf-yang-types { | import ietf-yang-types { | |||
prefix yang; | prefix yang; | |||
reference | reference | |||
"RFC 6991 - Common YANG Data Types."; | "RFC 6991: Common YANG Data Types"; | |||
} | } | |||
import ietf-inet-types { | import ietf-inet-types { | |||
prefix inet; | prefix inet; | |||
reference | reference | |||
"RFC 6991 - Common YANG Data Types."; | "RFC 6991: Common YANG Data Types"; | |||
} | } | |||
import ietf-ethertypes { | import ietf-ethertypes { | |||
prefix ethertypes; | prefix ethertypes; | |||
reference | reference | |||
"RFC 8519 - YANG Data Model for Network Access Control | "RFC 8519: YANG Data Model for Network Access Control | |||
Lists (ACLs)."; | Lists (ACLs)"; | |||
} | } | |||
import ietf-routing-types { | import ietf-routing-types { | |||
prefix rt-types; | prefix rt-types; | |||
reference | reference | |||
"RFC 8294 - Common YANG Data Types for the Routing Area."; | "RFC 8294: Common YANG Data Types for the Routing Area"; | |||
} | } | |||
import ietf-packet-fields { | import ietf-packet-fields { | |||
prefix packet-fields; | prefix packet-fields; | |||
reference | reference | |||
"RFC 8519 - YANG Data Model for Network Access Control Lists | "RFC 8519: YANG Data Model for Network Access Control | |||
(ACLs)."; | Lists (ACLs)"; | |||
} | } | |||
import ietf-interfaces { | import ietf-interfaces { | |||
prefix if; | prefix if; | |||
reference | reference | |||
"RFC 8343 - A YANG Data Model for Interface Management."; | "RFC 8343: A YANG Data Model for Interface Management"; | |||
} | } | |||
import ieee802-dot1q-types { | import ieee802-dot1q-types { | |||
prefix dot1q-types; | prefix dot1q-types; | |||
reference | reference | |||
"IEEE 802.1Q-2022 - IEEE Standard for Local and Metropolitan | "IEEE 802.1Q-2022: IEEE Standard for Local and Metropolitan | |||
Area Networks--Bridges and Bridged Networks Clause 48: YANG | Area Networks--Bridges and Bridged Networks, | |||
Data Models."; | Clause 48 ('YANG Data Models')"; | |||
} | } | |||
organization | organization | |||
"IETF DetNet Working Group"; | "IETF DetNet Working Group"; | |||
contact | contact | |||
"WG Web: <https://datatracker.ietf.org/wg/detnet/> | "WG Web: <https://datatracker.ietf.org/wg/detnet/> | |||
WG List: <mailto:detnet@ietf.org> | WG List: <mailto:detnet@ietf.org> | |||
Editor: Xuesong Geng | Author: Xuesong Geng | |||
<mailto:gengxuesong@huawei.com> | <mailto:gengxuesong@huawei.com> | |||
Editor: Yeoncheol Ryoo | Author: Yeoncheol Ryoo | |||
<mailto:dbduscjf@etri.re.kr> | <mailto:dbduscjf@etri.re.kr> | |||
Editor: Don Fedyk | Author: Don Fedyk | |||
<mailto:dfedyk@labn.net>; | <mailto:dfedyk@labn.net> | |||
Editor: Reshad Rahman | Author: Reshad Rahman | |||
<mailto:reshad@yahoo.com> | <mailto:reshad@yahoo.com> | |||
Author: Zhenqiang Li | ||||
<mailto:lizhenqiang@chinamobile.com>"; | ||||
Editor: Zhenqiang Li | ||||
<mailto:lizhenqiang@chinamobile.com>"; | ||||
description | description | |||
"This YANG module describes the parameters needed | "This YANG module describes the parameters needed | |||
for DetNet flow configuration and flow status | for DetNet flow configuration and flow status | |||
reporting. This YANG module conforms to the Network | reporting. This YANG module conforms to the Network | |||
Management Datastore Architecture (NMDA). | Management Datastore Architecture (NMDA). | |||
Copyright (c) 2024 IETF Trust and the persons identified as | Copyright (c) 2024 IETF Trust and the persons identified as | |||
authors of the code. All rights reserved. | authors of the code. All rights reserved. | |||
Redistribution and use in source and binary forms, with or | Redistribution and use in source and binary forms, with or | |||
without modification, is permitted pursuant to, and subject to | without modification, is permitted pursuant to, and subject | |||
the license terms contained in, the Revised BSD License set | to the license terms contained in, the Revised BSD License | |||
forth in Section 4.c of the IETF Trust's Legal Provisions | set forth in Section 4.c of the IETF Trust's Legal Provisions | |||
Relating to IETF Documents | Relating to IETF Documents | |||
(https://trustee.ietf.org/license-info). | (https://trustee.ietf.org/license-info). | |||
This version of this YANG module is part of RFC XXXX; | This version of this YANG module is part of RFC 9633; see the | |||
see the RFC itself for full legal notices."; | RFC itself for full legal notices."; | |||
// RFC Ed.: replace XXXX with actual RFC number and remove | ||||
// this note | ||||
// replace '2024-02-21' with the module publication date | ||||
// the format is (year-month-day) | ||||
revision 2024-02-21 { | revision 2024-08-15 { | |||
description | description | |||
"Initial revision"; | "Initial revision."; | |||
reference | reference | |||
"RFC XXXX: Deterministic Networking (DetNet) YANG Model"; | "RFC 9633: Deterministic Networking (DetNet) YANG Data | |||
Model"; | ||||
} | } | |||
identity app-status { | identity app-status { | |||
description | description | |||
"Base identity from which all application-status | "Base identity from which all application status types | |||
status types are derived."; | are derived."; | |||
reference | reference | |||
"RFC 9016 Section 5.8"; | "RFC 9016: Flow and Service Information Model for | |||
Deterministic Networking (DetNet), Section 5.8"; | ||||
} | } | |||
identity none { | identity none { | |||
base app-status; | base app-status; | |||
description | description | |||
"This application has no status. This identity is | "This application has no status. This identity is | |||
expected when the configuration is incomplete."; | expected when the configuration is incomplete."; | |||
reference | reference | |||
"RFC 9016 Section 5.8"; | "RFC 9016: Flow and Service Information Model for | |||
Deterministic Networking (DetNet), Section 5.8"; | ||||
} | } | |||
identity ready { | identity ready { | |||
base app-status; | base app-status; | |||
description | description | |||
"Application ingress/egress ready."; | "The application is ingress/egress ready."; | |||
reference | reference | |||
"RFC 9016 Section 5.8"; | "RFC 9016: Flow and Service Information Model for | |||
Deterministic Networking (DetNet), Section 5.8"; | ||||
} | } | |||
identity failed { | identity failed { | |||
base app-status; | base app-status; | |||
description | description | |||
"Application ingres/egress failed."; | "The application is ingress/egress failed."; | |||
reference | reference | |||
"RFC 9016 Section 5.8"; | "RFC 9016: Flow and Service Information Model for | |||
Deterministic Networking (DetNet), Section 5.8"; | ||||
} | } | |||
identity out-of-service { | identity out-of-service { | |||
base app-status; | base app-status; | |||
description | description | |||
"Application administratively blocked."; | "The application is administratively blocked."; | |||
reference | reference | |||
"RFC 9016 Section 5.8"; | "RFC 9016: Flow and Service Information Model for | |||
Deterministic Networking (DetNet), Section 5.8"; | ||||
} | } | |||
identity partial-failed { | identity partial-failed { | |||
base app-status; | base app-status; | |||
description | description | |||
"This is an application with one or more Egress ready, and one | "This is an application with one or more egress-ready | |||
or more Egress failed. The DetNet flow can be used if the | instances and one or more instances where egress failed. | |||
Ingress is Ready."; | The DetNet flow can be used if the ingress's status is | |||
'ready'."; | ||||
reference | reference | |||
"RFC 9016 Section 5.8"; | "RFC 9016: Flow and Service Information Model for | |||
Deterministic Networking (DetNet), Section 5.8"; | ||||
} | } | |||
typedef app-flow-ref { | typedef app-flow-ref { | |||
type leafref { | type leafref { | |||
path "/dnet:detnet" | path "/dnet:detnet" | |||
+ "/dnet:app-flows" | + "/dnet:app-flows" | |||
+ "/dnet:app-flow" | + "/dnet:app-flow" | |||
+ "/dnet:name"; | + "/dnet:name"; | |||
} | } | |||
description | description | |||
"This is an application Reference."; | "This is a reference to an application."; | |||
} | } | |||
typedef service-sub-layer-ref { | typedef service-sub-layer-ref { | |||
type leafref { | type leafref { | |||
path "/dnet:detnet" | path "/dnet:detnet" | |||
+ "/dnet:service" | + "/dnet:service" | |||
+ "/dnet:sub-layer" | + "/dnet:sub-layer" | |||
+ "/dnet:name"; | + "/dnet:name"; | |||
} | } | |||
description | description | |||
"This is a service sub-layer Reference."; | "This is a reference to the service sub-layer."; | |||
} | } | |||
typedef forwarding-sub-layer-ref { | typedef forwarding-sub-layer-ref { | |||
type leafref { | type leafref { | |||
path "/dnet:detnet" | path "/dnet:detnet" | |||
+ "/dnet:forwarding" | + "/dnet:forwarding" | |||
+ "/dnet:sub-layer" | + "/dnet:sub-layer" | |||
+ "/dnet:name"; | + "/dnet:name"; | |||
} | } | |||
description | description | |||
"This is a forwarding sub-layer Reference."; | "This is a reference to the forwarding sub-layer."; | |||
} | } | |||
typedef traffic-profile-ref { | typedef traffic-profile-ref { | |||
type leafref { | type leafref { | |||
path "/dnet:detnet" | path "/dnet:detnet" | |||
+ "/dnet:traffic-profile" | + "/dnet:traffic-profile" | |||
+ "/dnet:name"; | + "/dnet:name"; | |||
} | } | |||
description | description | |||
"This is a traffic Profile Reference."; | "This is a reference to a traffic profile."; | |||
} | } | |||
typedef ipsec-spi { | typedef ipsec-spi { | |||
type uint32 { | type uint32 { | |||
range "1..max"; | range "1..max"; | |||
} | } | |||
description | description | |||
"IPsec Security Parameters Index. A 32 bit value | "IPsec Security Parameters Index. A 32-bit value, | |||
where some values are reserved."; | where some values are reserved."; | |||
reference | reference | |||
"IETF RFC 4303 Encapsulating Security Payload (ESP)."; | "RFC 4303: IP Encapsulating Security Payload (ESP)"; | |||
} | } | |||
typedef operation { | typedef operation { | |||
type enumeration { | type enumeration { | |||
enum initiation { | enum initiation { | |||
description | description | |||
"This is an initiating service sub-layer encapsulation."; | "An initiating service sub-layer encapsulation."; | |||
} | } | |||
enum termination { | enum termination { | |||
description | description | |||
"Operation for DetNet service sub-layer decapsulation."; | "Operation for DetNet service sub-layer decapsulation."; | |||
} | } | |||
enum relay { | enum relay { | |||
description | description | |||
"Operation for DetNet service sub-layer swap."; | "Operation for DetNet service sub-layer swap."; | |||
} | } | |||
enum non-detnet { | enum non-detnet { | |||
description | description | |||
"No operation for DetNet service sub-layer."; | "No operation for the DetNet service sub-layer."; | |||
} | } | |||
} | } | |||
description | description | |||
"Operation type identifies the behavior for this service | "The operation type identifies this service sub-layer's | |||
sub-layer. Operations are described as unidirectional | behavior. Operations are described as unidirectional, | |||
but a service sub-layer may combine operation types."; | but a service sub-layer may combine operation types."; | |||
} | } | |||
typedef mpls-fwd-operation { | typedef mpls-fwd-operation { | |||
type enumeration { | type enumeration { | |||
enum impose-and-forward { | enum impose-and-forward { | |||
description | description | |||
"This operation imposes outgoing label(s) and forwards to | "This operation imposes one or more outgoing labels and | |||
next-hop."; | forwards to the next hop."; | |||
reference | reference | |||
" A YANG Data Model for MPLS Base RFC 8960."; | "RFC 8960: A YANG Data Model for MPLS Base"; | |||
} | } | |||
enum pop-and-forward { | enum pop-and-forward { | |||
description | description | |||
"This operation pops the incoming label and forwards to | "This operation pops the incoming label and forwards to | |||
the next-hop."; | the next hop."; | |||
reference | reference | |||
" A YANG Data Model for MPLS Base RFC 8960."; | "RFC 8960: A YANG Data Model for MPLS Base"; | |||
} | } | |||
enum pop-impose-and-forward { | enum pop-impose-and-forward { | |||
description | description | |||
"This operation pops the incoming label, imposes one or | "This operation pops the incoming label, imposes one or | |||
more outgoing label(s) and forwards to the next-hop."; | more outgoing labels, and forwards to the next hop."; | |||
reference | reference | |||
" A YANG Data Model for MPLS Base RFC 8960."; | "RFC 8960: A YANG Data Model for MPLS Base"; | |||
} | } | |||
enum swap-and-forward { | enum swap-and-forward { | |||
description | description | |||
"This operation swaps an incoming label, with an outgoing | "This operation swaps an incoming label with an outgoing | |||
label and forwards to the next-hop."; | label and forwards to the next hop."; | |||
reference | reference | |||
" A YANG Data Model for MPLS Base RFC 8960."; | "RFC 8960: A YANG Data Model for MPLS Base"; | |||
} | } | |||
enum forward { | enum forward { | |||
description | description | |||
"This operation forwards to next-hop."; | "This operation forwards to the next hop."; | |||
} | } | |||
enum pop-and-lookup { | enum pop-and-lookup { | |||
description | description | |||
"This operation pops an incoming label and performs a | "This operation pops an incoming label and performs a | |||
lookup."; | lookup."; | |||
reference | ||||
"RFC 8960: A YANG Data Model for MPLS Base"; | ||||
} | } | |||
} | } | |||
description | description | |||
"MPLS operations types. This is an enum modeled after the | "MPLS operation types. This set of enums is modeled after | |||
MPLS enum. The enums are the same as A YANG Data Model | the MPLS enums. With the exception of 'enum forward', | |||
for MPLS Base. RFC 8960."; | these enums are the same as those provided in RFC 8960."; | |||
reference | ||||
"RFC 8960: A YANG Data Model for MPLS Base"; | ||||
} | } | |||
typedef service-protection { | typedef service-protection { | |||
type enumeration { | type enumeration { | |||
enum none { | enum none { | |||
description | description | |||
"No service protection provided."; | "Service protection is not provided."; | |||
} | } | |||
enum replication { | enum replication { | |||
description | description | |||
"A Packet Replication Function (PRF) replicates DetNet | "A Packet Replication Function (PRF) replicates DetNet | |||
flow packets and forwards them to one or more next hops in | flow packets and forwards them to one or more next | |||
the DetNet domain. The number of packet copies sent to | hops in the DetNet domain. The number of packet copies | |||
each next hop is a DetNet flow-specific parameter at the | sent to each next hop is a DetNet-flow-specific | |||
node doing the replication. PRF can be implemented by an | parameter at the node doing the replication. A PRF can | |||
edge node, a relay node, or an end system."; | be implemented by an edge node, a relay node, or an | |||
end system."; | ||||
} | } | |||
enum elimination { | enum elimination { | |||
description | description | |||
"A Packet Elimination Function (PEF) eliminates duplicate | "A Packet Elimination Function (PEF) eliminates | |||
copies of packets to prevent excess packets flooding the | duplicate copies of packets to prevent excess packets | |||
network or duplicate packets being sent out of the DetNet | flooding the network or duplicate packets being | |||
domain. PEF can be implemented by an edge node, a relay | sent out of the DetNet domain. A PEF can be | |||
node, or an end system."; | implemented by an edge node, a relay node, or an | |||
end system."; | ||||
} | } | |||
enum ordering { | enum ordering { | |||
description | description | |||
"A Packet Ordering Function (POF) re-orders packets within | "A Packet Ordering Function (POF) reorders packets within | |||
a DetNet flow that are received out of order. This | a DetNet flow that are received out of order. This | |||
function can be implemented by an edge node, a relay node, | function can be implemented by an edge node, a relay node, | |||
or an end system."; | or an end system."; | |||
} | } | |||
enum elimination-ordering { | enum elimination-ordering { | |||
description | description | |||
"A combination of PEF and POF that can be implemented by | "A combination of a PEF and POF that can be implemented | |||
an edge node, a relay node, or an end system."; | by an edge node, a relay node, or an end system."; | |||
} | } | |||
enum elimination-replication { | enum elimination-replication { | |||
description | description | |||
"A combination of PEF and PRF that can be implemented by | "A combination of a PEF and PRF that can be implemented | |||
an edge node, a relay node, or an end system."; | by an edge node, a relay node, or an end system."; | |||
} | } | |||
enum elimination-ordering-replication { | enum elimination-ordering-replication { | |||
description | description | |||
"A combination of PEF, POF and PRF that can be implemented | "A combination of a PEF, POF, and PRF that can be | |||
by an edge node, a relay node, or an end system."; | implemented by an edge node, a relay node, or | |||
an end system."; | ||||
} | } | |||
} | } | |||
description | description | |||
"This typedef describes the service protection enumeration | "This typedef describes the service protection enumeration | |||
values."; | values."; | |||
} | } | |||
typedef sequence-number-generation { | typedef sequence-number-generation { | |||
type enumeration { | type enumeration { | |||
enum copy-from-app-flow { | enum copy-from-app-flow { | |||
description | description | |||
"Copy-from-app-flow is used to extend and use the | "'copy-from-app-flow' is used to utilize the sequence | |||
sequence number used in App-flow. This function is | number present in the App-flow. This function is | |||
required when encapsulating App-flows that have been | required when encapsulating App-flows that have been | |||
replicated and received through multiple ingress nodes | replicated and received through multiple ingress nodes | |||
into a member flow, and then eliminate it at the relay | into a member flow. When a relay node sees the same | |||
node."; | sequence number on an App-flow, it may be programmed | |||
} | to eliminate duplicate App-flow packets."; | |||
} | ||||
enum generate-by-detnet-flow { | enum generate-by-detnet-flow { | |||
description | description | |||
"Generate-by-detnet-flow is used to create a new | "'generate-by-detnet-flow' is used to create a new | |||
sequence number for a DetNet flow at the ingress node. | sequence number for a DetNet flow at the ingress node. | |||
Care must be taken when using this option to ensure | Care must be taken when using this option to ensure | |||
there is only one source for generating sequence | that there is only one source for generating sequence | |||
numbers."; | numbers."; | |||
} | } | |||
} | } | |||
description | description | |||
"This typedef defines how to generate sequence numbers to | "This typedef defines how to generate sequence numbers to | |||
be used in DetNet encapsulation."; | be used in DetNet encapsulation."; | |||
} | } | |||
typedef sequence-number-field { | typedef sequence-number-field { | |||
type enumeration { | type enumeration { | |||
enum zero-sn { | enum zero-sn { | |||
description | description | |||
"No DetNet sequence number field is used."; | "The DetNet sequence number field is not used."; | |||
} | } | |||
enum short-sn { | enum short-sn { | |||
value 16; | value 16; | |||
description | description | |||
"A 16-bit DetNet sequence number field is used."; | "A 16-bit DetNet sequence number field is used."; | |||
} | } | |||
enum long-sn { | enum long-sn { | |||
value 28; | value 28; | |||
description | description | |||
"A 28-bit DetNet sequence number field is used."; | "A 28-bit DetNet sequence number field is used."; | |||
} | } | |||
} | } | |||
description | description | |||
"This enumeration configures the sequence number behavior."; | "These enums configure the behavior of the | |||
sequence number field."; | ||||
} | } | |||
grouping ip-header { | grouping ip-header { | |||
description | description | |||
"This grouping captures the IPv4/IPv6 packet header | "This grouping captures the IPv4/IPv6 packet header | |||
information. It is modeled after existing fields."; | information. It is modeled after existing fields."; | |||
leaf src-ip-address { | leaf src-ip-address { | |||
type inet:ip-address-no-zone; | type inet:ip-address-no-zone; | |||
description | description | |||
"The source IP address in the header."; | "The source IP address in the header."; | |||
reference | reference | |||
"RFC 6991 Common YANG Data Types"; | "RFC 6991: Common YANG Data Types"; | |||
} | } | |||
leaf dest-ip-address { | leaf dest-ip-address { | |||
type inet:ip-address-no-zone; | type inet:ip-address-no-zone; | |||
description | description | |||
"The destination IP address in the header."; | "The destination IP address in the header."; | |||
reference | reference | |||
"RFC 6991 Common YANG Data Types"; | "RFC 6991: Common YANG Data Types"; | |||
} | } | |||
leaf protocol-next-header { | leaf protocol-next-header { | |||
type uint8; | type uint8; | |||
description | description | |||
"In IPv4 refers to the protocol of the | "In IPv4, this field refers to the protocol of the | |||
payload. In IPv6, this field is known as 'next-header', | payload. In IPv6, this field is known as | |||
and identifies the type of header immediately following | 'next-header'; it identifies the type of header | |||
the IPv6 header."; | immediately following the IPv6 header."; | |||
reference | reference | |||
"RFC 791: Internet Protocol | "RFC 791: Internet Protocol | |||
RFC 8200: Internet Protocol, Version 6 (IPv6) | RFC 8200: Internet Protocol, Version 6 (IPv6) | |||
Specification."; | Specification"; | |||
} | } | |||
leaf dscp { | leaf dscp { | |||
type inet:dscp; | type inet:dscp; | |||
description | description | |||
"The traffic class value in the header."; | "The traffic class value in the header."; | |||
reference | reference | |||
"RFC 6991 Common YANG Data Types"; | "RFC 6991: Common YANG Data Types"; | |||
} | } | |||
leaf flow-label { | leaf flow-label { | |||
type inet:ipv6-flow-label; | type inet:ipv6-flow-label; | |||
description | description | |||
"The flow label value of the header. IPv6 only."; | "The flow label value in the header. IPv6 only."; | |||
reference | reference | |||
"RFC 6991 Common YANG Data Types"; | "RFC 6991: Common YANG Data Types"; | |||
} | } | |||
leaf source-port { | leaf source-port { | |||
type inet:port-number; | type inet:port-number; | |||
description | description | |||
"The source port number."; | "The source port number."; | |||
reference | reference | |||
"RFC 6991 Common YANG Data Types"; | "RFC 6991: Common YANG Data Types"; | |||
} | } | |||
leaf destination-port { | leaf destination-port { | |||
type inet:port-number; | type inet:port-number; | |||
description | description | |||
"The destination port number."; | "The destination port number."; | |||
reference | reference | |||
"RFC 6991 Common YANG Data Types"; | "RFC 6991: Common YANG Data Types"; | |||
} | } | |||
} | } | |||
grouping l2-header { | grouping l2-header { | |||
description | description | |||
"The Ethernet or TSN packet header information."; | "The Ethernet or Time-Sensitive Networking (TSN) packet | |||
header information."; | ||||
leaf source-mac-address { | leaf source-mac-address { | |||
type yang:mac-address; | type yang:mac-address; | |||
description | description | |||
"The source MAC address value of the Ethernet header."; | "The source Media Access Control (MAC) address value of | |||
the Ethernet header."; | ||||
} | } | |||
leaf destination-mac-address { | leaf destination-mac-address { | |||
type yang:mac-address; | type yang:mac-address; | |||
description | description | |||
"The destination MAC address value of the Ethernet header."; | "The destination MAC address value of the Ethernet | |||
header."; | ||||
} | } | |||
leaf ethertype { | leaf ethertype { | |||
type ethertypes:ethertype; | type ethertypes:ethertype; | |||
description | description | |||
"The Ethernet packet type value of the Ethernet header."; | "The Ethernet packet type value of the Ethernet header."; | |||
} | } | |||
leaf vlan-id { | leaf vlan-id { | |||
type dot1q-types:vlanid; | type dot1q-types:vlanid; | |||
description | description | |||
"The VLAN value of the Ethernet header."; | "The VLAN value of the Ethernet header."; | |||
reference | reference | |||
"IEEE 802.1Q-2022."; | "IEEE 802.1Q-2022: IEEE Standard for Local and | |||
Metropolitan Area Networks--Bridges and Bridged | ||||
Networks"; | ||||
} | } | |||
leaf pcp { | leaf pcp { | |||
type dot1q-types:priority-type; | type dot1q-types:priority-type; | |||
description | description | |||
"The priority value of the Ethernet header."; | "The priority value of the Ethernet header."; | |||
reference | reference | |||
"IEEE 802.1Q-2022."; | "IEEE 802.1Q-2022: IEEE Standard for Local and | |||
Metropolitan Area Networks--Bridges and Bridged | ||||
Networks"; | ||||
} | } | |||
} | } | |||
grouping destination-ip-port-id { | grouping destination-ip-port-id { | |||
description | description | |||
"The TCP/UDP port destination identification | "The TCP/UDP port destination identification information."; | |||
information."; | ||||
container destination-port { | container destination-port { | |||
uses packet-fields:port-range-or-operator; | uses packet-fields:port-range-or-operator; | |||
description | description | |||
"This grouping captures the destination port fields."; | "This grouping captures the destination port fields."; | |||
} | } | |||
} | } | |||
grouping source-ip-port-id { | grouping source-ip-port-id { | |||
description | description | |||
"The TCP/UDP port source identification | "The TCP/UDP port source identification information."; | |||
information."; | ||||
container source-port { | container source-port { | |||
uses packet-fields:port-range-or-operator; | uses packet-fields:port-range-or-operator; | |||
description | description | |||
"This grouping captures the source port fields."; | "This grouping captures the source port fields."; | |||
} | } | |||
} | } | |||
grouping ip-flow-id { | grouping ip-flow-id { | |||
description | description | |||
"The IPv4/IPv6 packet header identification information."; | "The IPv4/IPv6 packet header identification information."; | |||
leaf src-ip-prefix { | leaf src-ip-prefix { | |||
type inet:ip-prefix; | type inet:ip-prefix; | |||
description | description | |||
"The source IP prefix."; | "The source IP prefix."; | |||
reference | reference | |||
"RFC 6991 Common YANG Data Types"; | "RFC 6991: Common YANG Data Types"; | |||
} | } | |||
leaf dest-ip-prefix { | leaf dest-ip-prefix { | |||
type inet:ip-prefix; | type inet:ip-prefix; | |||
description | description | |||
"The destination IP prefix."; | "The destination IP prefix."; | |||
reference | reference | |||
"RFC 6991 Common YANG Data Types"; | "RFC 6991: Common YANG Data Types"; | |||
} | } | |||
leaf protocol-next-header { | leaf protocol-next-header { | |||
type uint8; | type uint8; | |||
description | description | |||
"Internet Protocol number. Refers to the protocol of the | "Internet Protocol number. Refers to the protocol of the | |||
payload. In IPv6, this field is known as 'next-header', and | payload. In IPv6, this field is known as 'next-header'; | |||
if extension headers are present, the protocol is present in | if extension headers are present, the protocol is present | |||
the 'upper-layer' header."; | in the 'upper-layer' header."; | |||
reference | reference | |||
"RFC 791: Internet Protocol | "RFC 791: Internet Protocol | |||
RFC 8200: Internet Protocol, Version 6 (IPv6) | RFC 8200: Internet Protocol, Version 6 (IPv6) | |||
Specification."; | Specification"; | |||
} | } | |||
leaf dscp { | leaf dscp { | |||
type inet:dscp; | type inet:dscp; | |||
description | description | |||
"The traffic class value in the header."; | "The traffic class value in the header."; | |||
reference | reference | |||
"RFC 6991 Common YANG Data Types"; | "RFC 6991: Common YANG Data Types"; | |||
} | } | |||
leaf flow-label { | leaf flow-label { | |||
type inet:ipv6-flow-label; | type inet:ipv6-flow-label; | |||
description | description | |||
"The flow label value of the header."; | "The flow label value in the header. IPv6 only."; | |||
reference | reference | |||
"RFC 6991 Common YANG Data Types"; | "RFC 6991: Common YANG Data Types"; | |||
} | } | |||
uses source-ip-port-id; | uses source-ip-port-id; | |||
uses destination-ip-port-id; | uses destination-ip-port-id; | |||
leaf ipsec-spi { | leaf ipsec-spi { | |||
type ipsec-spi; | type ipsec-spi; | |||
description | description | |||
"IPsec Security Parameters Index of the Security | "IPsec Security Parameters Index of the Security | |||
Association."; | Association."; | |||
reference | reference | |||
"IETF RFC 4303 Encapsulating Security Payload (ESP)."; | "RFC 4303: IP Encapsulating Security Payload (ESP)"; | |||
} | } | |||
} | } | |||
grouping mpls-flow-id { | grouping mpls-flow-id { | |||
description | description | |||
"The MPLS packet header identification information."; | "The MPLS packet header identification information."; | |||
choice label-space { | choice label-space { | |||
description | description | |||
"Designates the label space being used."; | "Designates the label space being used."; | |||
case context-label-space { | case context-label-space { | |||
uses rt-types:mpls-label-stack; | uses rt-types:mpls-label-stack; | |||
} | } | |||
case platform-label-space { | case platform-label-space { | |||
leaf label { | leaf label { | |||
type rt-types:mpls-label; | type rt-types:mpls-label; | |||
description | description | |||
"This is the case for Platform label space."; | "This is the case for the platform label space."; | |||
} | } | |||
} | } | |||
} | } | |||
} | } | |||
grouping data-flow-spec { | grouping data-flow-spec { | |||
description | description | |||
"app-flow identification."; | "App-flow identification."; | |||
choice data-flow-type { | choice data-flow-type { | |||
description | description | |||
"The Application flow type choices."; | "The application flow type choices."; | |||
container tsn-app-flow { | container tsn-app-flow { | |||
uses l2-header; | uses l2-header; | |||
description | description | |||
"The L2 header for application."; | "The L2 header for the application."; | |||
} | } | |||
container ip-app-flow { | container ip-app-flow { | |||
uses ip-flow-id; | uses ip-flow-id; | |||
description | description | |||
"The IP header for application."; | "The IP header for the application."; | |||
} | } | |||
container mpls-app-flow { | container mpls-app-flow { | |||
uses mpls-flow-id; | uses mpls-flow-id; | |||
description | description | |||
"The MPLS header for application."; | "The MPLS header for the application."; | |||
} | } | |||
} | } | |||
} | } | |||
grouping detnet-flow-spec { | grouping detnet-flow-spec { | |||
description | description | |||
"detnet-flow identification."; | "DetNet flow identification."; | |||
choice detnet-flow-type { | choice detnet-flow-type { | |||
description | description | |||
"The DetNet flow type choices."; | "The DetNet flow type choices."; | |||
case ip-detnet-flow { | case ip-detnet-flow { | |||
uses ip-flow-id; | uses ip-flow-id; | |||
} | } | |||
case mpls-detnet-flow { | case mpls-detnet-flow { | |||
uses mpls-flow-id; | uses mpls-flow-id; | |||
} | } | |||
} | } | |||
} | } | |||
grouping app-flows-group { | grouping app-flows-group { | |||
description | description | |||
"Incoming or outgoing app-flow reference group."; | "Reference group for incoming or outgoing App-flows."; | |||
leaf-list flow { | leaf-list flow { | |||
type app-flow-ref; | type app-flow-ref; | |||
description | description | |||
"List of ingress or egress app-flows."; | "List of ingress or egress App-flows."; | |||
} | } | |||
} | } | |||
grouping service-sub-layer-group { | grouping service-sub-layer-group { | |||
description | description | |||
"Incoming or outgoing service sub-layer reference group."; | "Reference group for incoming or outgoing | |||
service sub-layers."; | ||||
leaf-list sub-layer { | leaf-list sub-layer { | |||
type service-sub-layer-ref; | type service-sub-layer-ref; | |||
description | description | |||
"List of incoming or outgoing service sub-layers that have | "List of incoming or outgoing service sub-layers that | |||
to aggregate or disaggregate."; | have to aggregate or disaggregate."; | |||
} | } | |||
} | } | |||
grouping forwarding-sub-layer-group { | grouping forwarding-sub-layer-group { | |||
description | description | |||
"Incoming or outgoing forwarding sub-layer reference group."; | "Reference group for incoming or outgoing | |||
forwarding sub-layers."; | ||||
leaf-list sub-layer { | leaf-list sub-layer { | |||
type forwarding-sub-layer-ref; | type forwarding-sub-layer-ref; | |||
description | description | |||
"List of incoming or outgoing forwarding sub-layers that | "List of incoming or outgoing forwarding sub-layers that | |||
have to aggregate or disaggregate."; | have to aggregate or disaggregate."; | |||
} | } | |||
} | } | |||
grouping detnet-header { | grouping detnet-header { | |||
description | description | |||
"DetNet header info for DetNet encapsulation or swap."; | "DetNet header information for DetNet encapsulation | |||
or swap."; | ||||
choice header-type { | choice header-type { | |||
description | description | |||
"The choice of DetNet header type."; | "The choice of DetNet header type."; | |||
case mpls { | case mpls { | |||
description | description | |||
"MPLS label stack for DetNet MPLS encapsulation or | "MPLS label stack for DetNet MPLS encapsulation or | |||
forwarding."; | forwarding."; | |||
uses rt-types:mpls-label-stack; | uses rt-types:mpls-label-stack; | |||
} | } | |||
case ip { | case ip { | |||
description | description | |||
"IPv4/IPv6 packet header for DetNet IP encapsulation."; | "IPv4/IPv6 packet header for DetNet IP encapsulation."; | |||
uses ip-header; | uses ip-header; | |||
} | } | |||
} | } | |||
} | } | |||
grouping detnet-app-next-hop-content { | grouping detnet-app-next-hop-content { | |||
description | description | |||
"Generic parameters of DetNet next hops. This follows the | "Generic parameters for DetNet next hops. These follow the | |||
principles for next hops in RFC 8349"; | principles for next hops as discussed in RFC 8349."; | |||
reference | ||||
"RFC 8349: A YANG Data Model for Routing Management | ||||
(NMDA Version)"; | ||||
choice next-hop-options { | choice next-hop-options { | |||
description | description | |||
"Options for next hops. It is expected that further cases | "Options for next hops. It is expected that further | |||
will be added through | cases will be added through augments from other modules, | |||
augments from other modules, e.g., for recursive | e.g., for recursive next hops."; | |||
next hops."; | ||||
case simple-next-hop { | case simple-next-hop { | |||
description | description | |||
"This case represents a simple next hop consisting of the | "This case represents a simple next hop consisting of | |||
next-hop address and/or outgoing interface."; | the next-hop address and/or outgoing interface."; | |||
leaf outgoing-interface { | leaf outgoing-interface { | |||
type if:interface-ref; | type if:interface-ref; | |||
description | description | |||
"The outgoing interface, when matching all flows to | "The outgoing interface, when matching all flows to | |||
the interface."; | the interface."; | |||
} | } | |||
choice flow-type { | choice flow-type { | |||
description | description | |||
"The flow type choices."; | "The flow type choices."; | |||
case ip { | case ip { | |||
leaf next-hop-address { | leaf next-hop-address { | |||
type inet:ip-address; | type inet:ip-address; | |||
description | description | |||
"The IP next hop case."; | "The IP next-hop case."; | |||
} | } | |||
} | } | |||
case mpls { | case mpls { | |||
uses rt-types:mpls-label-stack; | uses rt-types:mpls-label-stack; | |||
description | description | |||
"The MPLS label stack next hop case."; | "The MPLS label stack next-hop case."; | |||
} | } | |||
} | } | |||
} | } | |||
case next-hop-list { | case next-hop-list { | |||
description | description | |||
"Container for multiple next hops."; | "Container for multiple next hops."; | |||
list next-hop { | list next-hop { | |||
key "hop-index"; | key "hop-index"; | |||
description | description | |||
"An entry in a next-hop list."; | "An entry in a next-hop list."; | |||
skipping to change at line 1184 ¶ | skipping to change at line 1192 ¶ | |||
uses rt-types:mpls-label-stack; | uses rt-types:mpls-label-stack; | |||
} | } | |||
} | } | |||
} | } | |||
} | } | |||
} | } | |||
} | } | |||
grouping detnet-forwarding-next-hop-content { | grouping detnet-forwarding-next-hop-content { | |||
description | description | |||
"Generic parameters of DetNet next hops. This follows the | "Generic parameters for DetNet next hops. These follow the | |||
principles for next hops in RFC 8349"; | principles for next hops as discussed in RFC 8349."; | |||
reference | ||||
"RFC 8349: A YANG Data Model for Routing Management | ||||
(NMDA Version)"; | ||||
choice next-hop-options { | choice next-hop-options { | |||
description | description | |||
"Options for next hops. | "Options for next hops. It is expected that further | |||
It is expected that further cases will be added through | cases will be added through augments from other modules, | |||
augments from other modules, e.g., for recursive | e.g., for recursive next hops."; | |||
next hops."; | case simple-next-hop { | |||
case simple-next-hop { | ||||
description | description | |||
"This case represents a simple next hop consisting of the | "This case represents a simple next hop consisting of | |||
next-hop address and/or outgoing interface."; | the next-hop address and/or outgoing interface."; | |||
leaf outgoing-interface { | leaf outgoing-interface { | |||
type if:interface-ref; | type if:interface-ref; | |||
description | description | |||
"The outgoing interface, when matching all flows to | "The outgoing interface, when matching all flows to | |||
the interface."; | the interface."; | |||
} | } | |||
choice flow-type { | choice flow-type { | |||
description | description | |||
"These are the flow type next hop choices."; | "These are the flow type next-hop choices."; | |||
case ip { | case ip { | |||
description | description | |||
"Use IP data plane for forwarding."; | "Use the IP data plane for forwarding."; | |||
leaf next-hop-address { | leaf next-hop-address { | |||
type inet:ip-address; | type inet:ip-address; | |||
description | description | |||
"This is an IP address as a next hop."; | "This is an IP address as a next hop."; | |||
} | } | |||
uses ip-header; | uses ip-header; | |||
} | } | |||
case mpls { | case mpls { | |||
description | description | |||
"Use MPLS data plane for forwarding."; | "Use the MPLS data plane for forwarding."; | |||
uses rt-types:mpls-label-stack; | uses rt-types:mpls-label-stack; | |||
} | } | |||
} | } | |||
} | } | |||
case next-hop-list { | case next-hop-list { | |||
description | description | |||
"Container for multiple next hops."; | "Container for multiple next hops."; | |||
list next-hop { | list next-hop { | |||
key "hop-index"; | key "hop-index"; | |||
description | description | |||
"An entry in a next-hop list."; | "An entry in a next-hop list."; | |||
leaf hop-index { | leaf hop-index { | |||
type uint8; | type uint8; | |||
description | description | |||
"The value of the index for a hop."; | "The value of the index for a next hop."; | |||
} | } | |||
leaf outgoing-interface { | leaf outgoing-interface { | |||
type if:interface-ref; | type if:interface-ref; | |||
description | description | |||
"The outgoing interface, when matching all flows to | "The outgoing interface, when matching all flows to | |||
the interface."; | the interface."; | |||
} | } | |||
choice flow-type { | choice flow-type { | |||
description | description | |||
"These are the flow type next hop choices."; | "These are the flow type next-hop choices."; | |||
case ip { | case ip { | |||
description | description | |||
"Use IP data plane for forwarding."; | "Use the IP data plane for forwarding."; | |||
leaf next-hop-address { | leaf next-hop-address { | |||
type inet:ip-address; | type inet:ip-address; | |||
description | description | |||
"This is an IP address as a next hop."; | "This is an IP address as a next hop."; | |||
} | } | |||
uses ip-header; | uses ip-header; | |||
} | } | |||
case mpls { | case mpls { | |||
description | description | |||
"Use MPLS data plane for forwarding."; | "Use the MPLS data plane for forwarding."; | |||
uses rt-types:mpls-label-stack; | uses rt-types:mpls-label-stack; | |||
} | } | |||
} | } | |||
} | } | |||
} | } | |||
} | } | |||
} | } | |||
container detnet { | container detnet { | |||
description | description | |||
"The top level DetNet container. This contains | "The top-level DetNet container. This contains | |||
applications, service sub-layers and forwarding sub-layers | applications, service sub-layers, and forwarding sub-layers | |||
as well as the traffic profiles."; | as well as the traffic profiles."; | |||
list traffic-profile { | list traffic-profile { | |||
key "name"; | key "name"; | |||
description | description | |||
"A traffic profile."; | "A traffic profile."; | |||
leaf name { | leaf name { | |||
type string; | type string; | |||
description | description | |||
"The name of the traffic profile which is used as a | "The name of the traffic profile that is used as a | |||
reference to this profile."; | reference to this profile."; | |||
} | } | |||
container traffic-requirements { | container traffic-requirements { | |||
description | description | |||
"This defines the attributes of the App-flow | "This defines the attributes of the App-flow | |||
regarding bandwidth, latency, latency variation, loss, and | regarding bandwidth, latency, latency variation, loss, | |||
misordering tolerance."; | and misordering tolerance."; | |||
reference | reference | |||
"RFC 9016 Section 5.9"; | "RFC 9016: Flow and Service Information Model for | |||
Deterministic Networking (DetNet), Section 5.9"; | ||||
leaf min-bandwidth { | leaf min-bandwidth { | |||
type uint64; | type uint64; | |||
units 'octets per second'; | units "octets per second"; | |||
description | description | |||
"This is the minimum bandwidth that has to be | "This is the minimum bandwidth that has to be | |||
guaranteed for the DetNet service. MinBandwidth is | guaranteed for the DetNet service. MinBandwidth is | |||
specified in octets per second."; | specified in octets per second."; | |||
reference | reference | |||
"RFC 9016 Section 5.9.1"; | "RFC 9016: Flow and Service Information Model for | |||
Deterministic Networking (DetNet), Section 5.9.1"; | ||||
} | } | |||
leaf max-latency { | leaf max-latency { | |||
type uint32; | type uint32; | |||
units "nanoseconds"; | units "nanoseconds"; | |||
description | description | |||
"This is the maximum latency from Ingress to | "This is the maximum latency from the ingress to | |||
Egress(es) for a single packet of the DetNet flow. | one or more egresses for a single packet of the | |||
MaxLatency is specified as an integer number of | DetNet flow. MaxLatency is specified as an | |||
nanoseconds. The MAX value is 4,294,967,295 | integer number of nanoseconds. The maximum value | |||
nanoseconds."; | for this parameter is 4,294,967,295 nanoseconds."; | |||
reference | reference | |||
"RFC 9016 Section 5.9.2"; | "RFC 9016: Flow and Service Information Model for | |||
Deterministic Networking (DetNet), Section 5.9.2"; | ||||
} | } | |||
leaf max-latency-variation { | leaf max-latency-variation { | |||
type uint32; | type uint32; | |||
units "nanoseconds"; | units "nanoseconds"; | |||
description | description | |||
"This is the difference between the | "This is the difference between the | |||
minimum and the maximum end-to-end one-way latency. | minimum and maximum end-to-end one-way latency. | |||
MaxLatencyVariation is specified as an integer number of | MaxLatencyVariation is specified as an integer | |||
nanoseconds."; | number of nanoseconds."; | |||
reference | reference | |||
"RFC 9016 Section 5.9.3"; | "RFC 9016: Flow and Service Information Model for | |||
Deterministic Networking (DetNet), Section 5.9.3"; | ||||
} | } | |||
leaf max-loss { | leaf max-loss { | |||
type decimal64 { | type decimal64 { | |||
fraction-digits 10; | fraction-digits 10; | |||
range "0 .. 100"; | range "0 .. 100"; | |||
} | } | |||
units "percent"; | units "percent"; | |||
description | description | |||
"This defines the maximum Packet Loss Rate (PLR) | "This defines the maximum Packet Loss Rate (PLR) | |||
parameter for the DetNet service between the Ingress and | parameter for the DetNet service between the ingress | |||
Egress(es) of the DetNet domain. Packet loss rate is | and one or more egresses of the DetNet domain. The | |||
calculated by the number of transmitted packets minus | PLR is calculated by the number of transmitted | |||
the number of received packets divided by the number | packets minus the number of received packets divided | |||
transmitted packets expressed as a percent."; | by the number of transmitted packets, expressed as a | |||
percentage."; | ||||
reference | reference | |||
"RFC 9016 Section 5.9.4"; | "RFC 9016: Flow and Service Information Model for | |||
Deterministic Networking (DetNet), Section 5.9.4"; | ||||
} | } | |||
leaf max-consecutive-loss-tolerance { | leaf max-consecutive-loss-tolerance { | |||
type uint32; | type uint32; | |||
units "packets"; | units "packets"; | |||
description | description | |||
"Some applications have special loss requirement, such | "Some applications have special loss requirements | |||
as MaxConsecutiveLossTolerance. The maximum consecutive | and use such parameters as | |||
loss tolerance parameter describes the maximum number of | MaxConsecutiveLossTolerance. | |||
consecutive packets whose loss can be tolerated. The | 'max-consecutive-loss-tolerance' describes the | |||
maximum consecutive loss tolerance can be measured for | maximum number of consecutive packets whose loss | |||
example based on sequence number."; | can be tolerated. The maximum consecutive loss | |||
tolerance can be measured, for example, based on | ||||
sequence number."; | ||||
reference | reference | |||
"RFC 9016 Section 5.9.5"; | "RFC 9016: Flow and Service Information Model for | |||
Deterministic Networking (DetNet), Section 5.9.5"; | ||||
} | } | |||
leaf max-misordering { | leaf max-misordering { | |||
type uint32; | type uint32; | |||
units "packets"; | units "packets"; | |||
description | description | |||
"This describes the tolerable maximum number | "This describes the maximum tolerable number of | |||
of packets that can be received out of order. The | packets that can be received out of order. The | |||
maximum allowed misordering can be measured for example | maximum allowed misordering can be measured, for | |||
based on sequence number. The value zero for the | example, based on sequence number. A value of '0' | |||
maximum allowed misordering indicates that in order | for the maximum allowed misordering indicates that | |||
delivery is required, misordering cannot be tolerated."; | in-order delivery is required and misordering cannot | |||
be tolerated."; | ||||
reference | reference | |||
"RFC 9016 Section 5.9.6"; | "RFC 9016: Flow and Service Information Model for | |||
Deterministic Networking (DetNet), Section 5.9.6"; | ||||
} | } | |||
} | } | |||
container traffic-spec { | container traffic-spec { | |||
description | description | |||
"Traffic-specification specifies how the Source transmits | "'traffic-spec' specifies how the source transmits | |||
packets for the flow. This is the promise/request of the | packets for the flow. This is the promise/request of | |||
Source to the network. The network uses this flow | the source to the network. The network uses this flow | |||
specification to allocate resources and adjust queue | specification to allocate resources and adjust queue | |||
parameters in network nodes."; | parameters in network nodes."; | |||
reference | reference | |||
"RFC 9016 Section 5.5"; | "RFC 9016: Flow and Service Information Model for | |||
Deterministic Networking (DetNet), Section 5.5"; | ||||
leaf interval { | leaf interval { | |||
type uint32; | type uint32; | |||
units "nanoseconds"; | units "nanoseconds"; | |||
description | description | |||
"The period of time in which the traffic | "The period of time during which the traffic | |||
specification should not be exceeded."; | specification should not be exceeded."; | |||
reference | reference | |||
"RFC 9016 Section 5.5, | "RFC 9016: Flow and Service Information Model for | |||
IEEE802.1Q"; | Deterministic Networking (DetNet), Section 5.5 | |||
IEEE 802.1Q-2022: IEEE Standard for Local and | ||||
Metropolitan Area Networks--Bridges and Bridged | ||||
Networks"; | ||||
} | } | |||
leaf max-pkts-per-interval { | leaf max-pkts-per-interval { | |||
type uint32; | type uint32; | |||
description | description | |||
"The maximum number of packets that the | "The maximum number of packets that the | |||
source will transmit in one interval."; | source will transmit in one interval."; | |||
reference | reference | |||
"RFC 9016 Section 5.5, IEEE802.1Q"; | "RFC 9016: Flow and Service Information Model for | |||
Deterministic Networking (DetNet), Section 5.5 | ||||
IEEE 802.1Q-2022: IEEE Standard for Local and | ||||
Metropolitan Area Networks--Bridges and Bridged | ||||
Networks"; | ||||
} | } | |||
leaf max-payload-size { | leaf max-payload-size { | |||
type uint32; | type uint32; | |||
description | description | |||
"The maximum payload size that the source | "The maximum payload size that the source | |||
will transmit."; | will transmit."; | |||
reference | reference | |||
"RFC 9016 Section 5.5, IEEE802.1Q"; | "RFC 9016: Flow and Service Information Model for | |||
Deterministic Networking (DetNet), Section 5.5 | ||||
IEEE 802.1Q-2022: IEEE Standard for Local and | ||||
Metropolitan Area Networks--Bridges and Bridged | ||||
Networks"; | ||||
} | } | |||
leaf min-payload-size { | leaf min-payload-size { | |||
type uint32; | type uint32; | |||
description | description | |||
"The minimum payload size that the source | "The minimum payload size that the source | |||
will transmit., IEEE802.1Q"; | will transmit."; | |||
reference | ||||
"RFC 9016: Flow and Service Information Model for | ||||
Deterministic Networking (DetNet), Section 5.5 | ||||
IEEE 802.1Q-2022: IEEE Standard for Local and | ||||
Metropolitan Area Networks--Bridges and Bridged | ||||
Networks"; | ||||
} | } | |||
leaf min-pkts-per-interval { | leaf min-pkts-per-interval { | |||
type uint32; | type uint32; | |||
description | description | |||
"The minimum number of packets that the | "The minimum number of packets that the | |||
source will transmit in one interval."; | source will transmit in one interval."; | |||
reference | reference | |||
"RFC 9016 Section 5.5, IEEE802.1Q"; | "RFC 9016: Flow and Service Information Model for | |||
Deterministic Networking (DetNet), Section 5.5 | ||||
IEEE 802.1Q-2022: IEEE Standard for Local and | ||||
Metropolitan Area Networks--Bridges and Bridged | ||||
Networks"; | ||||
} | } | |||
} | } | |||
leaf-list member-app-flow { | leaf-list member-app-flow { | |||
type app-flow-ref; | type app-flow-ref; | |||
config false; | config false; | |||
description | description | |||
"A list of Applications attached to this profile. Each | "A list of applications attached to this profile. Each | |||
application that uses a profile has an automatically | application that uses a profile has an automatically | |||
populated reference."; | populated reference."; | |||
reference | reference | |||
"RFC XXXX: Deterministic Networking (DetNet) YANG Model | "RFC 9633: Deterministic Networking (DetNet) YANG Data | |||
Section 5"; | Model, Sections 6 and 7"; | |||
} | } | |||
leaf-list member-svc-sublayer { | leaf-list member-svc-sublayer { | |||
type service-sub-layer-ref; | type service-sub-layer-ref; | |||
config false; | config false; | |||
description | description | |||
"A list of Service Sub-layers attached to this profile. | "A list of service sub-layers attached to this profile. | |||
Each Service Sub-layers that uses a profile has an | Each service sub-layer that uses a profile has an | |||
automatically populated reference."; | automatically populated reference."; | |||
reference | reference | |||
"RFC XXXX: Deterministic Networking (DetNet) YANG Model | "RFC 9633: Deterministic Networking (DetNet) YANG Data | |||
Section 5"; | Model, Sections 6 and 7"; | |||
} | } | |||
leaf-list member-fwd-sublayer { | leaf-list member-fwd-sublayer { | |||
type forwarding-sub-layer-ref; | type forwarding-sub-layer-ref; | |||
config false; | config false; | |||
description | description | |||
"A list of Forwarding Sub-layers attached to this profile. | "A list of forwarding sub-layers attached to this profile. | |||
Each Forwarding Sub-layers that uses a profile has an | Each forwarding sub-layer that uses a profile has an | |||
automatically populated reference."; | automatically populated reference."; | |||
reference | reference | |||
"RFC XXXX: Deterministic Networking (DetNet) YANG Model | "RFC 9633: Deterministic Networking (DetNet) YANG Data | |||
Section 5"; | Model, Sections 6 and 7"; | |||
} | } | |||
} | } | |||
container app-flows { | container app-flows { | |||
description | description | |||
"The DetNet app-flow configuration."; | "Configuration information for DetNet App-flows."; | |||
reference | reference | |||
"RFC 9016 Section 4.1"; | "RFC 9016: Flow and Service Information Model for | |||
Deterministic Networking (DetNet), Section 4.1"; | ||||
list app-flow { | list app-flow { | |||
key "name"; | key "name"; | |||
description | description | |||
"A unique (management) identifier of the App-flow."; | "A unique (management) identifier of the App-flow."; | |||
leaf name { | leaf name { | |||
type string; | type string; | |||
description | description | |||
"A unique (management) identifier of the App-flow."; | "A unique (management) identifier of the App-flow."; | |||
reference | reference | |||
"RFC 9016 | "RFC 9016: Flow and Service Information Model for | |||
Sections 4.1, 5.1"; | Deterministic Networking (DetNet), Sections 4.1 | |||
and 5.1"; | ||||
} | } | |||
leaf bidir-congruent { | leaf bidir-congruent { | |||
type boolean; | type boolean; | |||
default false; | default "false"; | |||
description | description | |||
"Defines the data path requirement of the App-flow | "Defines the data path requirement of the App-flow - | |||
whether it must share the same data path and physical | whether it must share the same data path and physical | |||
path for both directions through the network, e.g., to | path for both directions through the network, e.g., | |||
provide congruent paths in the two directions."; | to provide congruent paths in the two directions."; | |||
reference | reference | |||
"RFC 9016 | "RFC 9016: Flow and Service Information Model for | |||
Section 4.2"; | Deterministic Networking (DetNet), Section 4.2"; | |||
} | } | |||
leaf outgoing-service { | leaf outgoing-service { | |||
type service-sub-layer-ref; | type service-sub-layer-ref; | |||
config false; | config false; | |||
description | description | |||
"Binding to this applications outgoing | "Binding to this application's outgoing service."; | |||
service."; | ||||
} | } | |||
leaf incoming-service { | leaf incoming-service { | |||
type service-sub-layer-ref; | type service-sub-layer-ref; | |||
config false; | config false; | |||
description | description | |||
"Binding to this applications incoming service."; | "Binding to this application's incoming service."; | |||
} | } | |||
leaf traffic-profile { | leaf traffic-profile { | |||
type traffic-profile-ref; | type traffic-profile-ref; | |||
description | description | |||
"The Traffic Profile for this group."; | "The traffic profile for this group."; | |||
} | } | |||
container ingress { | container ingress { | |||
description | description | |||
"Ingress DetNet application flows or a compound flow."; | "Ingress DetNet application flows or a | |||
compound flow."; | ||||
leaf app-flow-status { | leaf app-flow-status { | |||
type identityref { | type identityref { | |||
base app-status; | base app-status; | |||
} | } | |||
default none; | default "none"; | |||
config false; | config false; | |||
description | description | |||
"Status of ingress application flow. This is an | "Status of an ingress application flow. This is an | |||
operational status and defaults to none if | operational status and defaults to 'none' if | |||
incomplete."; | incomplete."; | |||
reference | reference | |||
"RFC 9016 Sections | "RFC 9016: Flow and Service Information Model for | |||
4.1, 5.8"; | Deterministic Networking (DetNet), Sections 4.1 | |||
and 5.8"; | ||||
} | } | |||
leaf-list interface { | leaf-list interface { | |||
type if:interface-ref; | type if:interface-ref; | |||
description | description | |||
"Interface is optional for a service type. When | "An interface is optional for a service type. | |||
matching a flow to a single interface one | When matching a flow to a single interface, | |||
interface is specified. The list allows for | one interface is specified. This list allows | |||
matching a subset of interfaces. When more | the matching of a subset of interfaces. | |||
than one interfaces is specified, these | When more than one interface is specified, these | |||
flows are simply aggregated and the service | flows are simply aggregated, and the service | |||
sub-layer is unaware of the aggregation."; | sub-layer is unaware of the aggregation."; | |||
} | } | |||
uses data-flow-spec; | uses data-flow-spec; | |||
} //End of app-ingress | } | |||
container egress { | container egress { | |||
description | description | |||
"Egress DetNet application flows or a compound flow."; | "Egress DetNet application flows or a compound flow."; | |||
uses data-flow-spec; | uses data-flow-spec; | |||
choice application-type { | choice application-type { | |||
description | description | |||
"This is the application type choices."; | "The application type choices."; | |||
container ethernet { | container ethernet { | |||
description | description | |||
"This is Ethernet or TSN traffic that maps to an | "Ethernet or TSN traffic that maps to an | |||
interface."; | interface."; | |||
leaf-list interface { | leaf-list interface { | |||
type if:interface-ref; | type if:interface-ref; | |||
description | description | |||
"This is one or more Ethernet or TSN interfaces. | "One or more Ethernet or TSN interfaces. | |||
If multiple interfaces are specified, this | If multiple interfaces are specified, this | |||
application flow is replicated to those | application flow is replicated to those | |||
interfaces. DetNet application Flow filtering | interfaces. DetNet application flow filtering | |||
applies to the whole list of interfaces. | applies to the whole list of interfaces. | |||
For fine grain flow filtering, use a single | For fine-grained flow filtering, use a single | |||
interface per application."; | interface per application."; | |||
} | } | |||
} | } | |||
container ip-mpls { | container ip-mpls { | |||
description | description | |||
"This is IP or MPLS DetNet application types."; | "IP or MPLS DetNet application types."; | |||
uses detnet-app-next-hop-content; | uses detnet-app-next-hop-content; | |||
} | } | |||
} | } | |||
} | } | |||
} | } | |||
} | } | |||
container service { | container service { | |||
description | description | |||
"The DetNet service sub-layer configuration."; | "The DetNet service sub-layer configuration."; | |||
list sub-layer { | list sub-layer { | |||
key "name"; | key "name"; | |||
description | description | |||
"Services are indexed by name."; | "Services are indexed by name."; | |||
leaf name { | leaf name { | |||
type string; | type string; | |||
description | description | |||
"The name of the DetNet service sub-layer."; | "The name of the DetNet service sub-layer."; | |||
} | } | |||
leaf service-rank { | leaf service-rank { | |||
type uint8; | type uint8; | |||
default 255; | default "255"; | |||
description | description | |||
"The DetNet rank for this service. Defaults to 255 | "The DetNet rank for this service. Defaults to '255' | |||
lowest rank if not specified."; | (lowest rank) if not specified."; | |||
reference | reference | |||
"RFC 9016 Section 5.7."; | "RFC 9016: Flow and Service Information Model for | |||
Deterministic Networking (DetNet), Section 5.7"; | ||||
} | } | |||
leaf traffic-profile { | leaf traffic-profile { | |||
type traffic-profile-ref; | type traffic-profile-ref; | |||
description | description | |||
"The Traffic Profile for this service."; | "The traffic profile for this service."; | |||
} | } | |||
container service-protection { | container service-protection { | |||
description | description | |||
"This is the service protection type and sequence number | "The service protection type and sequence number | |||
options."; | options."; | |||
leaf protection { | leaf protection { | |||
type service-protection; | type service-protection; | |||
description | description | |||
"The DetNet service protection type such as | "The DetNet service protection type, such as | |||
Packet Replication Function (PRF), | the Packet Replication Function (PRF), the | |||
Packet Elimination Function (PEF), | Packet Elimination Function (PEF), or the | |||
Packet Replication, Elimination, and Ordering Functions | Packet Replication, Elimination, and Ordering | |||
(PREOF)."; | Functions (PREOF)."; | |||
reference | reference | |||
"RFC 8938 Section 4.3"; | "RFC 8938: Deterministic Networking (DetNet) | |||
Data Plane Framework, Section 4.3"; | ||||
} | } | |||
leaf sequence-number-length { | leaf sequence-number-length { | |||
type sequence-number-field; | type sequence-number-field; | |||
default zero-sn; | default "zero-sn"; | |||
description | description | |||
"Sequence number field length can be one of 0 (none), | "The sequence number field length can be one of | |||
16-bits or 28-bits. The default is none."; | 0 (none), 16 bits, or 28 bits. The default is | |||
0 (none)."; | ||||
} | } | |||
} | } | |||
leaf operation { | leaf operation { | |||
type operation; | type operation; | |||
description | description | |||
"This is the service operation type for this service | "This is the service operation type for this service | |||
sub-layer;"; | sub-layer."; | |||
} | } | |||
container incoming { | container incoming { | |||
description | description | |||
"The DetNet service sub-layer incoming configuration."; | "The DetNet service sub-layer incoming configuration."; | |||
choice incoming { | choice incoming { | |||
description | description | |||
"A service sub-layer may have App flows or other | "A service sub-layer may have App-flows or other | |||
service sub-layers."; | service sub-layers."; | |||
container app-flow { | container app-flow { | |||
description | description | |||
"This service sub-layer is related to the app-flows | "This service sub-layer is related to the | |||
of the upper layer and provide ingress proxy or | App-flow of the upper layer and provides an | |||
ingress aggregation at the ingress node."; | ingress proxy or ingress aggregation at the | |||
ingress node."; | ||||
uses app-flows-group; | uses app-flows-group; | |||
} | } | |||
container service-aggregation { | container service-aggregation { | |||
description | description | |||
"This service sub-layer is related to the service | "This service sub-layer is related to the service | |||
sub-layer of the upper layer and provide | sub-layer of the upper layer and provides | |||
service-to-service aggregation at the ingress node | service-to-service aggregation at the | |||
or relay node."; | ingress node or relay node."; | |||
uses service-sub-layer-group; | uses service-sub-layer-group; | |||
} | } | |||
container forwarding-aggregation { | container forwarding-aggregation { | |||
description | description | |||
"This service sub-layer is related to the forwarding | "This service sub-layer is related to the | |||
sub-layer of the upper layer and provide | forwarding sub-layer of the upper layer and | |||
forwarding-to-service aggregation at the ingress | provides forwarding-to-service aggregation at | |||
node or relay node."; | the ingress node or relay node."; | |||
uses forwarding-sub-layer-group; | uses forwarding-sub-layer-group; | |||
} | } | |||
container service-id { | container service-id { | |||
description | description | |||
"This service sub-layer is related to the service or | "This service sub-layer is related to the service | |||
forwarding sub-layer of the lower layer and provide | or forwarding sub-layer of the lower layer and | |||
DetNet service relay or termination at the relay | provides DetNet service relay or termination at | |||
node or egress node."; | the relay node or egress node."; | |||
uses detnet-flow-spec; | uses detnet-flow-spec; | |||
} | } | |||
container forwarding-sub-layer { | container forwarding-sub-layer { | |||
description | description | |||
"This entry specifies one or more forwarding | "This entry specifies one or more forwarding | |||
sub-layers. No or minimal service sub-layer | sub-layers. No or minimal service sub-layer | |||
encapsulation is allowed."; | encapsulation is allowed."; | |||
leaf-list sub-layer { | leaf-list sub-layer { | |||
type forwarding-sub-layer-ref; | type forwarding-sub-layer-ref; | |||
config false; | config false; | |||
description | description | |||
"List of outgoing forwarding sub-layers."; | "List of outgoing forwarding sub-layers."; | |||
} | } | |||
} | } | |||
} | } | |||
} | } | |||
container outgoing { | container outgoing { | |||
description | description | |||
"The DetNet service sub-layer outgoing configuration."; | "The DetNet service sub-layer outgoing | |||
configuration."; | ||||
choice outgoing { | choice outgoing { | |||
description | description | |||
"The outgoing type may be a forwarding Sub-layer or a | "The outgoing type may be a forwarding sub-layer, a | |||
service sub-layer or aggregation type."; | service sub-layer, or an aggregation type."; | |||
container forwarding-sub-layer { | container forwarding-sub-layer { | |||
description | description | |||
"This service sub-layer is sending to the forwarding | "This service sub-layer is sending to the | |||
sub-layers of the lower layer for DetNet service | forwarding sub-layer of the lower layer | |||
forwarding or service-to-forwarding aggregation at | for DetNet service forwarding or | |||
the ingress node or relay node. When the operation | service-to-forwarding aggregation at the | |||
type is service-initiation, The service sub-layer | ingress node or relay node. When the | |||
encapsulates the DetNet Control-Word and services | operation type is 'initiation', the | |||
label, which are for individual DetNet flow when the | service sub-layer encapsulates the DetNet | |||
incoming type is app-flow and for aggregated DetNet | Control Word (d-CW) and S-Label, which are for | |||
flow when the incoming type is service or | individual DetNet flows when the incoming type | |||
forwarding. The service sub-layer swaps the service | is 'app-flow' and for an aggregated DetNet flow | |||
label when the operation type is service-relay."; | when the incoming type is 'service' or | |||
'forwarding'. The service sub-layer swaps the | ||||
service label when the operation type is | ||||
'relay'."; | ||||
reference | reference | |||
"RFC 8964 Section 4.2.1 and 4.2.2."; | "RFC 8964: Deterministic Networking (DetNet) | |||
Data Plane: MPLS, Sections 4.2.1 and 4.2.2"; | ||||
list service-outgoing { | list service-outgoing { | |||
key "index"; | key "index"; | |||
description | description | |||
"List of the outgoing service | "List of outgoing service sub-layers aggregated | |||
that separately for each node | in the forwarding sub-layer."; | |||
where services will be eliminated."; | ||||
leaf index { | leaf index { | |||
type uint8; | type uint8; | |||
description | description | |||
"This index allows a list of multiple outgoing | "This index allows a list of multiple outgoing | |||
forwarding sub-layers"; | forwarding sub-layers."; | |||
} | } | |||
uses detnet-header; | uses detnet-header; | |||
uses forwarding-sub-layer-group; | uses forwarding-sub-layer-group; | |||
} | } | |||
} | } | |||
container service-sub-layer { | container service-sub-layer { | |||
description | description | |||
"This service sub-layer is sending to the service | "This service sub-layer is sending to the | |||
sub-layers of the lower layer for service-to-service | service sub-layer of the lower layer for | |||
aggregation at the ingress node or relay node. The | service-to-service aggregation at the | |||
service sub-layer encapsulates the DetNet | ingress node or relay node. The service | |||
Control-Word and S-label when the operation type is | sub-layer encapsulates the d-CW and S-Label when | |||
service-initiation, and swaps the S-label when the | the operation type is 'initiation' and | |||
operation type is service-relay."; | swaps the S-Label when the operation type is | |||
'relay'."; | ||||
reference | reference | |||
"RFC 8964 Section 4.2.1 and 4.2.2."; | "RFC 8964: Deterministic Networking (DetNet) | |||
Data Plane: MPLS, Sections 4.2.1 and 4.2.2"; | ||||
leaf aggregation-sub-layer { | leaf aggregation-sub-layer { | |||
type service-sub-layer-ref; | type service-sub-layer-ref; | |||
description | description | |||
"reference point of the service-sub-layer | "Reference point of the service-sub-layer | |||
at which this service will be aggregated."; | at which this service will be aggregated."; | |||
} | } | |||
container service-label { | container service-label { | |||
description | description | |||
"This is the MPLS service sub-layer label. This | "This is the MPLS service sub-layer label. This | |||
is optional and only used when the service | is optional and is only used when the service | |||
sub-layer uses MPLS. It is an MPLS stack since | sub-layer uses MPLS. It is an MPLS stack, | |||
more than a single label may be used."; | since more than a single label may be used."; | |||
uses rt-types:mpls-label-stack; | uses rt-types:mpls-label-stack; | |||
} | } | |||
} | } | |||
container app-flow { | container app-flow { | |||
description | description | |||
"This service sub-layer is sending to the app-flow of | "This service sub-layer is sending to the | |||
the upper layer for egress proxy at the egress node, | App-flow of the upper layer for the | |||
and decapsulates the DetNet Control-Word and S-label | egress proxy at the egress node. It then | |||
for individual DetNet service. This outgoing type | decapsulates the d-CW and S-Label for an | |||
only can be chosen when the operation type is | individual DetNet service. This outgoing type | |||
service-termination."; | can only be chosen when the operation type is | |||
'termination'."; | ||||
reference | reference | |||
"RFC 8964 Section 4.2.1 and 4.2.2."; | "RFC 8964: Deterministic Networking (DetNet) | |||
Data Plane: MPLS, Sections 4.2.1 and 4.2.2"; | ||||
uses app-flows-group; | uses app-flows-group; | |||
} | } | |||
container service-disaggregation { | container service-disaggregation { | |||
description | description | |||
"This service sub-layer is sending to the service | "This service sub-layer is sending to the | |||
sub-layer of the upper layer for service-to-service | service sub-layer of the upper layer for | |||
disaggregation at the relay node or egress node, and | service-to-service disaggregation at the | |||
decapsulates the DetNet Control-Word and A-label for | relay node or egress node. It then | |||
aggregated DetNet service. This outgoing type only | decapsulates the d-CW and A-Label for an | |||
can be chosen when the operation type is | aggregated DetNet service. This outgoing type | |||
service-termination."; | can only be chosen when the operation type is | |||
'termination'."; | ||||
reference | reference | |||
"RFC 8964 Section 4.2.1 and 4.2.2."; | "RFC 8964: Deterministic Networking (DetNet) | |||
Data Plane: MPLS, Sections 3.1 and 4.4.2"; | ||||
uses service-sub-layer-group; | uses service-sub-layer-group; | |||
} | } | |||
container forwarding-disaggregation { | container forwarding-disaggregation { | |||
description | description | |||
"This service sub-layer is sending to the forwarding | "This service sub-layer is sending to the | |||
sub-layer of the upper layer for | forwarding sub-layer of the upper layer for | |||
forwarding-to-service disaggregation at the relay | forwarding-to-service disaggregation at the | |||
node or egress node, and decapsulates the DetNet | relay node or egress node. It then | |||
Control-Word and A-label for aggregated DetNet | decapsulates the d-CW and A-Label for an | |||
service. This outgoing type only can be chosen when | aggregated DetNet service. This outgoing type | |||
the operation type is service-termination."; | can only be chosen when the operation type is | |||
'termination'."; | ||||
reference | reference | |||
"RFC 8964 Section 4.2.1 and 4.2.2."; | "RFC 8964: Deterministic Networking (DetNet) | |||
Data Plane: MPLS, Sections 3.1 and 4.4.2"; | ||||
uses forwarding-sub-layer-group; | uses forwarding-sub-layer-group; | |||
} | } | |||
} | } | |||
} | } | |||
} | } | |||
} | } | |||
container forwarding { | container forwarding { | |||
description | description | |||
"The DetNet forwarding sub-layer configuration."; | "The DetNet forwarding sub-layer configuration."; | |||
list sub-layer { | list sub-layer { | |||
key "name"; | key "name"; | |||
description | description | |||
"The list is one or more DetNet service/forwarding types."; | "List of one or more DetNet service/forwarding | |||
types."; | ||||
leaf name { | leaf name { | |||
type string; | type string; | |||
description | description | |||
"The name of the DetNet forwarding sub-layer."; | "The name of the DetNet forwarding sub-layer."; | |||
} | } | |||
leaf traffic-profile { | leaf traffic-profile { | |||
type traffic-profile-ref; | type traffic-profile-ref; | |||
description | description | |||
"The Traffic Profile for this group."; | "The traffic profile for this group."; | |||
} | } | |||
leaf operation { | leaf operation { | |||
type mpls-fwd-operation; | type mpls-fwd-operation; | |||
description | description | |||
"This is the forwarding operation types | "The forwarding operation types | |||
impose-and-forward, pop-and-forward, | 'impose-and-forward', 'pop-and-forward', | |||
pop-impose-and-forward, forward, pop-and-lookup."; | 'pop-impose-and-forward', 'forward', and | |||
'pop-and-lookup'."; | ||||
} | } | |||
container incoming { | container incoming { | |||
description | description | |||
"The DetNet forwarding sub-layer incoming | "The DetNet forwarding sub-layer incoming | |||
configuration."; | configuration."; | |||
choice incoming { | choice incoming { | |||
description | description | |||
"Cases of incoming types."; | "Choices of incoming types."; | |||
container service-sub-layer { | container service-sub-layer { | |||
description | description | |||
"This forwarding sub-layer is related to the service | "This forwarding sub-layer is related to the | |||
sub-layers of the upper layer and provide DetNet | service sub-layer of the upper layer and | |||
forwarding or service-to-forwarding aggregation at | provides DetNet forwarding or | |||
service-to-forwarding aggregation at | ||||
the ingress node or relay node."; | the ingress node or relay node."; | |||
uses service-sub-layer-group; | uses service-sub-layer-group; | |||
} | } | |||
container forwarding-aggregation { | container forwarding-aggregation { | |||
description | description | |||
"This forwarding sub-layer is related to the | "This forwarding sub-layer is related to the | |||
forwarding sub-layer of the upper layer and provide | forwarding sub-layer of the upper layer and | |||
forwarding-to-forwarding aggregation at the ingress | provides forwarding-to-forwarding aggregation at | |||
node or relay node or transit node."; | the ingress node, relay node, or transit node."; | |||
uses forwarding-sub-layer-group; | uses forwarding-sub-layer-group; | |||
} | } | |||
container forwarding-id { | container forwarding-id { | |||
description | description | |||
"This forwarding sub-layer is related to all of the | "This forwarding sub-layer is related to all of | |||
lower layer and provide DetNet forwarding swap or | the lower layers and provides DetNet forwarding | |||
termination at the transit node or relay node or | swap or termination at the transit node, | |||
egress node."; | relay node, or egress node."; | |||
leaf interface { | leaf interface { | |||
type if:interface-ref; | type if:interface-ref; | |||
description | description | |||
"This is the interface associated with the | "This is the interface associated with the | |||
forwarding sub-layer."; | forwarding sub-layer."; | |||
} | } | |||
uses detnet-flow-spec; | uses detnet-flow-spec; | |||
} | } | |||
} | } | |||
} | } | |||
container outgoing { | container outgoing { | |||
description | description | |||
"The DetNet forwarding sub-layer outbound | "The DetNet forwarding sub-layer outbound | |||
configuration."; | configuration."; | |||
choice outgoing { | choice outgoing { | |||
description | description | |||
"This is when a service connected directly to an | "A service is connected directly to an | |||
interface with no forwarding sub-layer."; | interface with no forwarding sub-layer."; | |||
container | container interface { | |||
interface { | ||||
description | description | |||
"This forwarding sub-layer is sending to the | "This forwarding sub-layer is sending to the | |||
interface for send to next-hop at the ingress | interface, for sending to the next hop at the | |||
node or relay node or transit node."; | ingress node, relay node, or transit node."; | |||
uses detnet-forwarding-next-hop-content; | uses detnet-forwarding-next-hop-content; | |||
} | } | |||
container service-aggregation { | container service-aggregation { | |||
description | description | |||
"This forwarding sub-layer is sending to the service | "This forwarding sub-layer is sending to the service | |||
sub-layers of the lower layer for | sub-layers of the lower layer for | |||
forwarding-to-service aggregation at the ingress | forwarding-to-service aggregation at the ingress | |||
node or relay node."; | node or relay node."; | |||
leaf aggregation-sub-layer { | leaf aggregation-sub-layer { | |||
type service-sub-layer-ref; | type service-sub-layer-ref; | |||
skipping to change at line 1868 ¶ | skipping to change at line 1932 ¶ | |||
container optional-forwarding-label { | container optional-forwarding-label { | |||
description | description | |||
"This is the optional forwarding label for service | "This is the optional forwarding label for service | |||
aggregation."; | aggregation."; | |||
uses rt-types:mpls-label-stack; | uses rt-types:mpls-label-stack; | |||
} | } | |||
} | } | |||
container forwarding-sub-layer { | container forwarding-sub-layer { | |||
description | description | |||
"This forwarding sub-layer is sending to the | "This forwarding sub-layer is sending to the | |||
forwarding sub-layers of the lower layer for | forwarding sub-layer of the lower layer for | |||
forwarding-to-forwarding aggregation at the ingress | forwarding-to-forwarding aggregation at the ingress | |||
node or relay node or transit node."; | node, relay node, or transit node."; | |||
leaf aggregation-sub-layer { | leaf aggregation-sub-layer { | |||
type forwarding-sub-layer-ref; | type forwarding-sub-layer-ref; | |||
description | description | |||
"This is a reference to the forwarding sub-layer."; | "This is a reference to the forwarding sub-layer."; | |||
} | } | |||
container forwarding-label { | container forwarding-label { | |||
description | description | |||
"This is the forwarding label for forwarding | "This is the forwarding label for forwarding | |||
sub-layer aggregation."; | sub-layer aggregation."; | |||
uses rt-types:mpls-label-stack; | uses rt-types:mpls-label-stack; | |||
} | } | |||
} | } | |||
container service-sub-layer { | container service-sub-layer { | |||
description | description | |||
"This forwarding sub-layer is sending to the service | "This forwarding sub-layer is sending to the | |||
sub-layer of the upper layer and decapsulate the | service sub-layer of the upper layer. It then | |||
F-label for DetNet service or service-to-forwarding | decapsulates the F-Label for DetNet service or | |||
disaggregation at the relay node or egress node. | service-to-forwarding disaggregation at the | |||
This outgoing type only can be chosen when the | relay node or egress node. This outgoing type | |||
operation type is pop-and-lookup."; | can only be chosen when the operation type is | |||
'pop-and-lookup'."; | ||||
uses service-sub-layer-group; | uses service-sub-layer-group; | |||
reference | reference | |||
"RFC 8964 Section 4.2.3"; | "RFC 8964: Deterministic Networking (DetNet) | |||
Data Plane: MPLS, Section 4.2.3"; | ||||
} | } | |||
container forwarding-disaggregation { | container forwarding-disaggregation { | |||
description | description | |||
"This forwarding sub-layer is sending to the | "This forwarding sub-layer is sending to the | |||
forwarding sub-layer of the upper layer and | forwarding sub-layer of the upper layer. It | |||
decapsulate the F-label for forwarding-to-forwarding | then decapsulates the F-Label for | |||
disaggregation at the transit node or relay node or | forwarding-to-forwarding disaggregation at the | |||
egress node. This outgoing type only can be chosen | transit node, relay node, or egress node. | |||
when the operation type is pop-and-lookup."; | This outgoing type can only be chosen when the | |||
operation type is 'pop-and-lookup'."; | ||||
uses forwarding-sub-layer-group; | uses forwarding-sub-layer-group; | |||
} | } | |||
} | } | |||
} | } | |||
} | } | |||
} | } | |||
} | } | |||
} | } | |||
]]></sourcecode> | ]]></sourcecode> | |||
</section> | </section> | |||
<section anchor="IANA" toc="include" numbered="true" removeInRFC="false"> | <section anchor="IANA" toc="include" numbered="true" removeInRFC="false"> | |||
<name>IANA Considerations</name> | <name>IANA Considerations</name> | |||
<t>This document registers a URI in the "IETF XML Registry" | <t>IANA has registered the following URI in the "ns" subregistry within th | |||
<xref target="RFC3688"/>. Following the format in <xref target="RFC3688"/>, | e "IETF XML Registry" <xref target="RFC3688"/>: | |||
the following registration is requested to be made: | ||||
</t> | </t> | |||
<dl newline="false" spacing="compact" indent="3"> | <dl newline="false" spacing="compact"> | |||
<dt>ID:</dt> | ||||
<dd>yang:ietf-detnet</dd> | ||||
<dt>URI:</dt> | <dt>URI:</dt> | |||
<dd>urn:ietf:params:xml:ns:yang:ietf-detnet</dd> | <dd>urn:ietf:params:xml:ns:yang:ietf-detnet</dd> | |||
<dt>Registrant Contact:</dt> | <dt>Registrant Contact:</dt> | |||
<dd>The IESG.</dd> | <dd>The IESG.</dd> | |||
<dt>XML:</dt> | <dt>XML:</dt> | |||
<dd>N/A, the requested URI is an XML namespace.</dd> | <dd>N/A; the requested URI is an XML namespace.</dd> | |||
</dl> | </dl> | |||
<t>This document registers YANG modules in the "YANG Module Names" | <t>IANA has registered the following YANG module in the "YANG Module Names | |||
registry <xref target="RFC6020" format="default" sectionFormat="of" derive | " | |||
dContent="RFC6020"/>. | subregistry <xref target="RFC6020" format="default"/> within the "YANG Par | |||
ameters" registry: | ||||
</t> | </t> | |||
<dl newline="false" spacing="compact" indent="3"> | <dl newline="false" spacing="compact"> | |||
<dt>Name:</dt> | <dt>Name:</dt> | |||
<dd>ietf-detnet</dd> | <dd>ietf-detnet</dd> | |||
<dt>Maintained by IANA:</dt> | <dt>Maintained by IANA:</dt> | |||
<dd>N</dd> | <dd>N</dd> | |||
<dt>Namespace:</dt> | <dt>Namespace:</dt> | |||
<dd>urn:ietf:params:xml:ns:yang:ietf-detnet</dd> | <dd>urn:ietf:params:xml:ns:yang:ietf-detnet</dd> | |||
<dt>Prefix:</dt> | <dt>Prefix:</dt> | |||
<dd>dnet</dd> | <dd>dnet</dd> | |||
<dt>Reference:</dt> | <dt>Reference:</dt> | |||
<dd>This RFC when published.</dd> | <dd>RFC 9633</dd> | |||
</dl> | </dl> | |||
</section> | </section> | |||
<section anchor="Security" numbered="true" toc="default"> | <section anchor="Security" numbered="true" toc="default"> | |||
<name>Security Considerations</name> | <name>Security Considerations</name> | |||
<t> | <t> | |||
Security considerations for DetNet are covered in the DetNet Architecture | Security considerations for DetNet are covered in "<xref target="RFC8655" | |||
<xref target="RFC8655"/> and DetNet Security Considerations <xref target=" | format="title"/>" <xref target="RFC8655" format="default"/> | |||
RFC9055"/> . | and "<xref target="RFC9055" format="title"/>" <xref target="RFC9055" form | |||
</t> | at="default"/>. | |||
<t>The YANG modules specified in this document define a schema for | ||||
data that is designed to be accessed via network | ||||
management protocols, such as NETCONF <xref target="RFC6241"/> or | ||||
RESTCONF <xref target="RFC8040"/>. The lowest NETCONF layer is the secure | ||||
transport | ||||
layer, and the mandatory-to-implement secure transport is Secure Shell (S | ||||
SH) | ||||
<xref target="RFC6242"/>. The lowest RESTCONF layer is HTTPS, and the | ||||
mandatory-to-implement secure transport is TLS <xref target="RFC8446"/>. | ||||
</t> | </t> | |||
<t>The Network Configuration Access Control Model (NACM) <xref target="RFC | <t>The YANG module specified in this document defines a schema for data | |||
8341"/> | that is designed to be accessed via network management protocols such | |||
provides the | as NETCONF <xref target="RFC6241"/> or RESTCONF <xref target="RFC8040"/>. | |||
means to restrict access for particular NETCONF or RESTCONF users to a | The lowest NETCONF layer is the secure transport layer, and the | |||
preconfigured subset of all available NETCONF or RESTCONF protocol | mandatory-to-implement secure transport is Secure Shell (SSH) | |||
<xref target="RFC6242"/>. The lowest RESTCONF layer is HTTPS, and the | ||||
mandatory-to-implement secure transport is TLS <xref target="RFC8446"/>.</ | ||||
t> | ||||
<t>The Network Configuration Access Control Model (NACM) <xref targe | ||||
t="RFC8341"/> | ||||
provides the means to restrict access for particular NETCONF or RESTCONF u | ||||
sers | ||||
to a preconfigured subset of all available NETCONF or RESTCONF protocol | ||||
operations and content.</t> | operations and content.</t> | |||
<t>There are a number of data nodes defined in the module | <t>There are a number of data nodes defined in this YANG module that are | |||
that are writable/creatable/deletable (i.e., config true, which is the def | writable/creatable/deletable (i.e., config true, which is the default). Th | |||
ault). | ese | |||
These data nodes may be considered sensitive or vulnerable in some network | data nodes may be considered sensitive or vulnerable in some network | |||
environments. | environments. Write operations (e.g., edit-config) to these data nodes wit | |||
hout | ||||
proper protection can have a negative effect on network operations. | ||||
Unauthorized write operations (e.g., edit-config) to any elements of this | Unauthorized write operations (e.g., edit-config) to any elements of this | |||
module can break or incorrectly connect DetNet flows. Since DetNet is a | module can break or incorrectly connect DetNet flows. Since DetNet is a | |||
configured Data Plane, any changes that are not coordinated with all devic | configured data plane, any changes that are not coordinated with all devic | |||
es | es | |||
along the path will create a denial of service. | along the path will result in a denial of service. | |||
In addition, arbitrary write operations could also enable an attacker to m | In addition, arbitrary write operations could enable an attacker to modify | |||
odify | ||||
a network path to enable select traffic to avoid inspection or treatment b y | a network path to enable select traffic to avoid inspection or treatment b y | |||
security controls, or route traffic in a way that it would be subject to | security controls or to route traffic in such a way that the traffic would | |||
inspect/modification by an adversary node. | be subject to | |||
</t> | inspection/modification by an adversary node.</t> | |||
<t> | <t>Some of the readable data nodes in this YANG module may be considered | |||
Similarly, the data nodes in these YANG modules may be | sensitive or vulnerable in some network environments. It is thus important | |||
considered sensitive or vulnerable in some network environments. It | to | |||
is thus important to control read access (e.g., via get, get-config, | control read access (e.g., via get, get-config, or notification) to these | |||
or notification) to these data nodes. These are the subtrees and data node | data | |||
and their sensitivity/vulnerability: | nodes. These are the subtrees and data nodes and their | |||
</t> | sensitivity/vulnerability:</t> | |||
<t> | <dl newline="false" spacing="normal"> | |||
/detnet/app-flows: This controls the application details so it could be c | <dt>/detnet/app-flows:</dt><dd>This controls the application details, so i | |||
onsidered sensitive. | t could be considered sensitive.</dd> | |||
</t> | <dt>/detnet/traffic-profile/member-app-flow:</dt><dd>This links traffic pr | |||
<t> | ofiles to applications, | |||
/detnet/traffic-profile/member-app-flow: This links traffic profiles to ap | service sub-layers, and/or forwarding sub-layers, so | |||
plications, | this could also be considered more sensitive.</dd> | |||
service sub-layers and/or and forwarding sub-layers so | <dt>/detnet/service/sub-layer/incoming/app-flow:</dt><dd>This links applic | |||
this also could be considered more sensitive. | ations to services.</dd> | |||
</t> | <dt>/detnet/service/sub-layer/outgoing/app-flow:</dt><dd>This links applic | |||
<t> | ations to services.</dd> | |||
/detnet/service/sub-layer/incoming/app-flow: This links applications to se | </dl> | |||
rvices. | <t>The above nodes can reveal identifiable characteristics of the applicat | |||
</t> | ion flows. | |||
<t> | ||||
/detnet/service/sub-layer/outgoing/app-flow: This links applications to se | ||||
rvices. | ||||
</t> | ||||
<t> | ||||
The above nodes can reveal identifiable characteristics of the application | ||||
flows. | ||||
</t> | ||||
<t>/detnet/service/sub-layer: This defines the service and forwarding oper | ||||
ations. | ||||
</t> | ||||
<t>/detnet/fowarding/sub-layer: This defines the forwarding operations. | ||||
</t> | </t> | |||
<dl newline="false" spacing="normal"> | ||||
<dt>/detnet/service/sub-layer:</dt><dd>This defines the service and forwar | ||||
ding operations.</dd> | ||||
<dt>/detnet/forwarding/sub-layer:</dt><dd>This defines the forwarding oper | ||||
ations.</dd> | ||||
</dl> | ||||
<t> | <t> | |||
The above nodes can reveal some aspects of the network topology of there i s unauthorized access to this configuration. | The above nodes can reveal some aspects of the network topology in the cas e of unauthorized access to this configuration. | |||
</t> | </t> | |||
</section> | </section> | |||
<section anchor="Contributors" numbered="true" toc="default"> | ||||
<name>Contributors</name> | ||||
<t>The editors of this document wish to thank and acknowledge | ||||
the following people who contributed substantially to the content | ||||
of this document and should be considered coauthors: | ||||
</t> | ||||
<contact fullname="Mach(Guoyi) Chen" initials="M." surname="Chen"> | ||||
<organization>Huawei Technologies</organization> | ||||
<address> | ||||
<postal> | ||||
<street/> | ||||
<city/> | ||||
<code/> | ||||
<country/> | ||||
</postal> | ||||
<email>mach.chen@huawei.com</email> | ||||
</address> | ||||
</contact> | ||||
</section> | ||||
<section anchor="Acknowledgments" numbered="true" toc="default"> | ||||
<name>Acknowledgments</name> | ||||
<t> The editors of this document would like to thank Lou Berger, Tom Petc | ||||
h | ||||
Xufeng Lui, Julien Meuric, John Scudder` and Florian Kauer for thei | ||||
r detailed comments. | ||||
</t> | ||||
</section> | ||||
</middle> | </middle> | |||
<back> | <back> | |||
<references> | <references> | |||
<name>References</name> | <name>References</name> | |||
<references> | <references> | |||
<name>Normative References</name> | <name>Normative References</name> | |||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6 991.xml"/> | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6 991.xml"/> | |||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6 020.xml"/> | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6 020.xml"/> | |||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7 950.xml"/> | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.7 950.xml"/> | |||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 655.xml"/> | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 655.xml"/> | |||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.0 791.xml"/> | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.0 791.xml"/> | |||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4 303.xml"/> | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.4 303.xml"/> | |||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6 | ||||
241.xml"/> | ||||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6 | ||||
242.xml"/> | ||||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 | ||||
040.xml"/> | ||||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 200.xml"/> | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 200.xml"/> | |||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 294.xml"/> | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 294.xml"/> | |||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 341.xml"/> | ||||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 343.xml"/> | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 343.xml"/> | |||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 349.xml"/> | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 349.xml"/> | |||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 446.xml"/> | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 446.xml"/> | |||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 519.xml"/> | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 519.xml"/> | |||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 938.xml"/> | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 938.xml"/> | |||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 960.xml"/> | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 960.xml"/> | |||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 964.xml"/> | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 964.xml"/> | |||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9 016.xml"/> | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9 016.xml"/> | |||
</references> | </references> | |||
<references> | <references> | |||
<name>Informative References</name> | <name>Informative References</name> | |||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.3 688.xml"/> | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.3 688.xml"/> | |||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6 | ||||
241.xml"/> | ||||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.6 | ||||
242.xml"/> | ||||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9 055.xml"/> | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.9 055.xml"/> | |||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 | ||||
040.xml"/> | ||||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 | ||||
341.xml"/> | ||||
<xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 340.xml"/> | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 340.xml"/> | |||
<reference anchor="IEEE8021Q" target="https://ieeexplore.ieee.org/document | <xi:include href="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8 | |||
/8403927" quoteTitle="true" derivedAnchor="IEEE8021Q"> | 259.xml"/> | |||
<reference anchor="IEEE8021Q-2022" target="https://ieeexplore.ieee.org/doc | ||||
ument/10004498"> | ||||
<front> | <front> | |||
<title>IEEE Standard for Local and Metropolitan Area Networks--Bridges and Bridged Networks</title> | <title>IEEE Standard for Local and Metropolitan Area Networks--Bridges and Bridged Networks</title> | |||
<author> | <author> | |||
<organization showOnFrontPage="true">IEEE</organization> | <organization>IEEE</organization> | |||
</author> | </author> | |||
<date month="July" year="2022"/> | <date month="December" year="2022"/> | |||
</front> | </front> | |||
<seriesInfo name="DOI" value="10.1109/IEEESTD.2022.10004498"/> | <seriesInfo name="DOI" value="10.1109/IEEESTD.2022.10004498"/> | |||
<seriesInfo name="IEEE" value="802.1Q-2022"/> | <seriesInfo name="IEEE Std" value="802.1Q-2022"/> | |||
</reference> | </reference> | |||
</references> | </references> | |||
</references> | </references> | |||
<section anchor="Tree" numbered="true" toc="default"> | <section anchor="Tree" numbered="true" toc="default"> | |||
<name>DetNet Configuration YANG Tree</name> | <name>DetNet Configuration YANG Tree</name> | |||
<t> This is the full YANG tree as described in <xref target="RFC8340"/>. | <t> This is the full YANG tree per the guidelines provided in <xref targe t="RFC8340"/>. | |||
</t> | </t> | |||
<artwork name="" type="" align="left" alt=""><![CDATA[ | <sourcecode name="" type="yangtree"><![CDATA[ | |||
module: ietf-detnet | module: ietf-detnet | |||
+--rw detnet | +--rw detnet | |||
+--rw traffic-profile* [name] | +--rw traffic-profile* [name] | |||
| +--rw name string | | +--rw name string | |||
| +--rw traffic-requirements | | +--rw traffic-requirements | |||
| | +--rw min-bandwidth? uint64 | | | +--rw min-bandwidth? uint64 | |||
| | +--rw max-latency? uint32 | | | +--rw max-latency? uint32 | |||
| | +--rw max-latency-variation? uint32 | | | +--rw max-latency-variation? uint32 | |||
| | +--rw max-loss? decimal64 | | | +--rw max-loss? decimal64 | |||
| | +--rw max-consecutive-loss-tolerance? uint32 | | | +--rw max-consecutive-loss-tolerance? uint32 | |||
skipping to change at line 2546 ¶ | skipping to change at line 2576 ¶ | |||
| +--rw label? | | +--rw label? | |||
| | rt-types:mpls-label | | | rt-types:mpls-label | |||
| +--rw ttl? uint8 | | +--rw ttl? uint8 | |||
| +--rw traffic-class? uint8 | | +--rw traffic-class? uint8 | |||
+--:(service-sub-layer) | +--:(service-sub-layer) | |||
| +--rw service-sub-layer | | +--rw service-sub-layer | |||
| +--rw sub-layer* service-sub-layer-ref | | +--rw sub-layer* service-sub-layer-ref | |||
+--:(forwarding-disaggregation) | +--:(forwarding-disaggregation) | |||
+--rw forwarding-disaggregation | +--rw forwarding-disaggregation | |||
+--rw sub-layer* forwarding-sub-layer-ref | +--rw sub-layer* forwarding-sub-layer-ref | |||
]]></artwork> | ]]></sourcecode> | |||
</section> | </section> | |||
<section anchor="Examples" numbered="true" toc="default"> | <section anchor="Examples" numbered="true" toc="default"> | |||
<name>Examples</name> | <name>Examples</name> | |||
<t> The following examples are provided. These examples are tested with Y | <t>This section provides several examples. These examples were tested wit | |||
anglint | h the "yanglint" program | |||
and use operational output to exercise both config true and config | and use operational output to exercise both "config true" and "con | |||
false objects. | fig false" objects. | |||
Note that IPv4 and IPv6 addresses are supported but for clarity in | Note that IPv4 and IPv6 addresses are supported, but for clarity, | |||
the examples | IPv4 is used, with the exception of Example A-1 (<xref target="example-a-1"/>). | |||
and diagrams IPv4 has been used in most examples. The IP types are | The IP types are imported from | |||
imported from | <xref target="RFC6991" format="default"/>; these types support both | |||
<xref target="RFC6991" format="default"/> and these support both I | IPv4 and IPv6. | |||
Pv4 and IPv6. | ||||
</t> | </t> | |||
<t> The following conventions are used in the diagrams. | <t> The following conventions are used in the diagrams. | |||
</t> | </t> | |||
<ul spacing="normal"> | <ul spacing="normal"> | |||
<li>Replication and Elimination points are shown as an R in and E in | <li>In the diagrams found in the PDF and HTML copies of this document, r | |||
circles respectively. | eplication and elimination points are shown as "R" and "E" in | |||
circles, respectively. | ||||
</li> | </li> | |||
<li>Packet Headers including DetNet aggregation label or A-label, Servic | <li>Packet headers, including a DetNet aggregation label (A-Label), serv | |||
e label or | ice label | |||
S-label and Forwarding label or F-label are illustrated at each hop | (S-Label), and forwarding label (F-Label), are illustrated at each hop | |||
as defined in <xref target="RFC8964"/>. | as defined in <xref target="RFC8964"/>. | |||
</li> | </li> | |||
<li>Aggregation/Disaggregation nodes are indicated by dashed line boxes. | <li>Aggregation/disaggregation nodes are indicated by dashed-line boxes. | |||
</li> | </li> | |||
<li> Since the model augments IETF interfaces, minimal interface YANG | <li> Since the model augments IETF interfaces, minimal interface YANG | |||
data is provided to validate the interface data as well. This shows | data is provided to validate the interface data as well. This shows | |||
up as a named value such as "eth0" etc. that is referenced by the c onfiguration. | up as a named value, such as "eth0", that is referenced by the conf iguration. | |||
</li> | </li> | |||
</ul> | </ul> | |||
<t> | <t> | |||
The following are examples of aggregation and disaggregation at various | Below are examples of aggregation and disaggregation at various points | |||
points in DetNet. Figures | in DetNet. Where indicated, figures | |||
are provided in the PDF and HTML version of this document. | are provided in the PDF and HTML copies of this document. | |||
</t> | </t> | |||
<section numbered="true" toc="default"> | <section numbered="true" toc="default" anchor="example-a-1"> | |||
<name>Example A-1 JSON Configuration/Operational</name> | <name>Example A-1: Application Flow Aggregation</name> | |||
<t> | <t> | |||
This illustrates that multiple App flows with the same source, | This example illustrates multiple App-flows with the same source | |||
the same destination, and the same traffic specification are ag | , | |||
gregated in | destination, and traffic specification aggregated into | |||
a single DetNet flow service sub-layer. Ingress node 1 | a single DetNet flow service sub-layer. Ingress node 1 | |||
aggregates App flows 0 and 1 into a service sub-layer of DetNet | aggregates App-flows 0 and 1 into a service sub-layer of DetNet | |||
flow 1. | flow 1. | |||
Two ways of illustrating this follow, then the JSON operational | Two ways to illustrate this are provided in Figures <xref t | |||
data model | arget="case-a1" format="counter"/> and <xref target="case-a1-pipe" format="count | |||
corresponding to the diagrams follows. This example uses IPv6 ad | er"/>; the JSON operational data model <xref target="RFC8259"/> | |||
dress format. | corresponding to the diagrams is then shown in <xref | |||
target="example-detnet-json-configuration-a-1"/>. The address fo | ||||
rmat used in this example is IPv6. | ||||
</t> | </t> | |||
<figure anchor="case-a1"> | <figure anchor="case-a1"> | |||
<name>Case A-1 Application Aggregation</name> | <name>Case A-1: Application Flow Aggregation</name> | |||
<artset> | ||||
<artwork align="left" type="ascii-art" name="" alt=""><![CDATA[ | ||||
Please consult the PDF or HTML versions for the Case A-1 Diagram. | ||||
]]></artwork> | ||||
<artwork type="svg"> | <artwork type="svg"> | |||
<svg | <svg | |||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" | xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" | |||
xmlns:svg="http://www.w3.org/2000/svg" | xmlns:svg="http://www.w3.org/2000/svg" | |||
xmlns="http://www.w3.org/2000/svg" | xmlns="http://www.w3.org/2000/svg" | |||
width="180mm" | width="180mm" | |||
height="120mm" | height="120mm" | |||
viewBox="0 0 210 120" | viewBox="0 0 210 120" | |||
version="1.1" | version="1.1" | |||
id="svg8"> | id="svg8"> | |||
skipping to change at line 2701 ¶ | skipping to change at line 2727 ¶ | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
id="path42" /> | id="path42" /> | |||
<text | <text | |||
font-size="2.6386px" | font-size="2.6386px" | |||
id="text47" | id="text47" | |||
x="131.21765" | x="131.21765" | |||
y="64.456268" | y="64.456268" | |||
transform="scale(1.0001873,0.99981273)">Relay <tspan | transform="scale(1.0001873,0.99981273)">Relay 2</text> | |||
font-size="2.6386px" | ||||
x="137.67552" | ||||
y="64.456268" | ||||
id="tspan45" | ||||
>2</tspan></text> | ||||
<path | <path | |||
d="m 138.89792,55.271278 c 0,-0.318433 -0.25825,-0.576587 -0.57681,-0.576 587 h -6.30468 c -0.31857,0 -0.5768,0.258154 -0.5768,0.576587 v 5.04065 c 0,0.31 8442 0.25823,0.576587 0.5768,0.576587 h 6.30468 c 0.31856,0 0.57681,-0.258145 0. 57681,-0.576587 z" | d="m 138.89792,55.271278 c 0,-0.318433 -0.25825,-0.576587 -0.57681,-0.576 587 h -6.30468 c -0.31857,0 -0.5768,0.258154 -0.5768,0.576587 v 5.04065 c 0,0.31 8442 0.25823,0.576587 0.5768,0.576587 h 6.30468 c 0.31856,0 0.57681,-0.258145 0. 57681,-0.576587 z" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.267684" | stroke-width="0.267684" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
id="path49" /> | id="path49" /> | |||
<path | <path | |||
skipping to change at line 2753 ¶ | skipping to change at line 2774 ¶ | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.200763" | stroke-width="0.200763" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
id="path57" /> | id="path57" /> | |||
<text | <text | |||
font-size="2.6386px" | font-size="2.6386px" | |||
id="text59" | id="text59" | |||
x="100.92083" | x="99.52083" | |||
y="78.108131" | y="78.108131" | |||
transform="scale(1.0001873,0.99981273)">Transit 2</text> | transform="scale(1.0001873,0.99981273)">Transit 2</text> | |||
<path | <path | |||
d="m 109.17945,70.182287 c 0,-0.318442 -0.25823,-0.576576 -0.57679,-0.576 576 h -6.30469 c -0.31856,0 -0.5768,0.258134 -0.5768,0.576576 v 5.040642 c 0,0.3 18441 0.25824,0.576567 0.5768,0.576567 h 6.30469 c 0.31856,0 0.57679,-0.258126 0 .57679,-0.576567 z" | d="m 109.17945,70.182287 c 0,-0.318442 -0.25823,-0.576576 -0.57679,-0.576 576 h -6.30469 c -0.31856,0 -0.5768,0.258134 -0.5768,0.576576 v 5.040642 c 0,0.3 18441 0.25824,0.576567 0.5768,0.576567 h 6.30469 c 0.31856,0 0.57679,-0.258126 0 .57679,-0.576567 z" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.267684" | stroke-width="0.267684" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
skipping to change at line 2778 ¶ | skipping to change at line 2799 ¶ | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.200763" | stroke-width="0.200763" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
id="path62" /> | id="path62" /> | |||
<text | <text | |||
font-size="2.6386px" | font-size="2.6386px" | |||
id="text65" | id="text65" | |||
x="100.92083" | x="99.52083" | |||
y="48.051079" | y="48.051079" | |||
transform="scale(1.0001873,0.99981273)">Transit 1</text> | transform="scale(1.0001873,0.99981273)">Transit 1</text> | |||
<path | <path | |||
d="m 109.17945,40.370942 c 0,-0.32433 -0.26302,-0.587261 -0.58747,-0.5872 61 h -6.28332 c -0.32447,0 -0.58749,0.262931 -0.58749,0.587261 v 5.133961 c 0,0. 32433 0.26302,0.587261 0.58749,0.587261 h 6.28332 c 0.32445,0 0.58747,-0.262931 0.58747,-0.587261 z" | d="m 109.17945,40.370942 c 0,-0.32433 -0.26302,-0.587261 -0.58747,-0.5872 61 h -6.28332 c -0.32447,0 -0.58749,0.262931 -0.58749,0.587261 v 5.133961 c 0,0. 32433 0.26302,0.587261 0.58749,0.587261 h 6.28332 c 0.32445,0 0.58747,-0.262931 0.58747,-0.587261 z" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.267684" | stroke-width="0.267684" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
skipping to change at line 2902 ¶ | skipping to change at line 2923 ¶ | |||
stroke-width="0.267684" | stroke-width="0.267684" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
id="rect93" /> | id="rect93" /> | |||
<text | <text | |||
font-size="1.83554px" | font-size="1.83554px" | |||
id="text101" | id="text101" | |||
x="84.784561" | x="84.784561" | |||
y="31.760616" | y="31.760616" | |||
transform="scale(1.0001873,0.99981273)">MPLS S<tspan | transform="scale(1.0001873,0.99981273)">MPLS S-Label<tspan | |||
font-size="1.83554px" | ||||
x="91.510109" | ||||
y="31.760616" | ||||
id="tspan95" | ||||
>-</tspan><tspan | ||||
font-size="1.83554px" | ||||
x="92.279709" | ||||
y="31.760616" | ||||
id="tspan97" | ||||
>label</tspan><tspan | ||||
font-size="1.83554px" | font-size="1.83554px" | |||
x="89.034035" | x="89.034035" | |||
y="34.055042" | y="34.055042" | |||
id="tspan99" | id="tspan99" | |||
>101</tspan></text> | >101</tspan></text> | |||
<rect | <rect | |||
x="81.985344" | x="81.985344" | |||
y="35.53978" | y="35.53978" | |||
width="17.326206" | width="17.326206" | |||
height="6.6526051" | height="6.6526051" | |||
skipping to change at line 2934 ¶ | skipping to change at line 2945 ¶ | |||
stroke-width="0.267684" | stroke-width="0.267684" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
id="rect103" /> | id="rect103" /> | |||
<text | <text | |||
font-size="1.83554px" | font-size="1.83554px" | |||
id="text111" | id="text111" | |||
x="84.834686" | x="84.834686" | |||
y="38.52919" | y="38.52919" | |||
transform="scale(1.0001873,0.99981273)">MPLS F<tspan | transform="scale(1.0001873,0.99981273)">MPLS F-Label<tspan | |||
font-size="1.83554px" | ||||
x="91.459862" | ||||
y="38.52919" | ||||
id="tspan105" | ||||
>-</tspan><tspan | ||||
font-size="1.83554px" | ||||
x="92.229446" | ||||
y="38.52919" | ||||
id="tspan107" | ||||
>label</tspan><tspan | ||||
font-size="1.83554px" | font-size="1.83554px" | |||
x="87.96257" | x="87.96257" | |||
y="40.823624" | y="40.823624" | |||
id="tspan108" | id="tspan108" | |||
>10001</tspan></text> | >10001</tspan></text> | |||
<rect | <rect | |||
x="81.985344" | x="81.985344" | |||
y="92.889847" | y="92.889847" | |||
width="17.44095" | width="17.44095" | |||
height="6.6525822" | height="6.6525822" | |||
skipping to change at line 2966 ¶ | skipping to change at line 2967 ¶ | |||
stroke-width="0.267684" | stroke-width="0.267684" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
id="rect113" /> | id="rect113" /> | |||
<text | <text | |||
font-size="1.83554px" | font-size="1.83554px" | |||
id="text121" | id="text121" | |||
x="84.856598" | x="84.856598" | |||
y="95.7752" | y="95.7752" | |||
transform="scale(1.0001873,0.99981273)">MPLS F<tspan | transform="scale(1.0001873,0.99981273)">MPLS F-Label<tspan | |||
font-size="1.83554px" | ||||
x="91.481766" | ||||
y="95.7752" | ||||
id="tspan115" | ||||
>-</tspan><tspan | ||||
font-size="1.83554px" | ||||
x="92.251358" | ||||
y="95.7752" | ||||
id="tspan117" | ||||
>label</tspan><tspan | ||||
font-size="1.83554px" | font-size="1.83554px" | |||
x="87.985825" | x="87.985825" | |||
y="98.069618" | y="98.069618" | |||
id="tspan118" | id="tspan118" | |||
>10002</tspan></text> | >10002</tspan></text> | |||
<rect | <rect | |||
x="111.24483" | x="111.24483" | |||
y="28.772472" | y="28.772472" | |||
width="17.44095" | width="17.44095" | |||
height="6.6525941" | height="6.6525941" | |||
skipping to change at line 2998 ¶ | skipping to change at line 2989 ¶ | |||
stroke-width="0.267684" | stroke-width="0.267684" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
id="rect123" /> | id="rect123" /> | |||
<text | <text | |||
font-size="1.83554px" | font-size="1.83554px" | |||
id="text131" | id="text131" | |||
x="114.04268" | x="114.04268" | |||
y="31.760616" | y="31.760616" | |||
transform="scale(1.0001873,0.99981273)">MPLS S<tspan | transform="scale(1.0001873,0.99981273)">MPLS S-Label<tspan | |||
font-size="1.83554px" | ||||
x="120.76822" | ||||
y="31.760616" | ||||
id="tspan125" | ||||
>-</tspan><tspan | ||||
font-size="1.83554px" | ||||
x="121.53782" | ||||
y="31.760616" | ||||
id="tspan127" | ||||
>label</tspan><tspan | ||||
font-size="1.83554px" | font-size="1.83554px" | |||
x="118.29214" | x="118.29214" | |||
y="34.055042" | y="34.055042" | |||
id="tspan129" | id="tspan129" | |||
>101</tspan></text> | >101</tspan></text> | |||
<rect | <rect | |||
x="111.24483" | x="111.24483" | |||
y="35.53978" | y="35.53978" | |||
width="17.44095" | width="17.44095" | |||
height="6.6526051" | height="6.6526051" | |||
skipping to change at line 3030 ¶ | skipping to change at line 3011 ¶ | |||
stroke-width="0.267684" | stroke-width="0.267684" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
id="rect133" /> | id="rect133" /> | |||
<text | <text | |||
font-size="1.83554px" | font-size="1.83554px" | |||
id="text141" | id="text141" | |||
x="114.09202" | x="114.09202" | |||
y="38.52919" | y="38.52919" | |||
transform="scale(1.0001873,0.99981273)">MPLS F<tspan | transform="scale(1.0001873,0.99981273)">MPLS F-Label<tspan | |||
font-size="1.83554px" | ||||
x="120.7172" | ||||
y="38.52919" | ||||
id="tspan134" | ||||
>-</tspan><tspan | ||||
font-size="1.83554px" | ||||
x="121.48679" | ||||
y="38.52919" | ||||
id="tspan137" | ||||
>label</tspan><tspan | ||||
font-size="1.83554px" | font-size="1.83554px" | |||
x="117.22124" | x="117.22124" | |||
y="40.823624" | y="40.823624" | |||
id="tspan139" | id="tspan139" | |||
>10003</tspan></text> | >10003</tspan></text> | |||
<rect | <rect | |||
x="111.24483" | x="111.24483" | |||
y="92.889847" | y="92.889847" | |||
width="17.44095" | width="17.44095" | |||
height="6.6525822" | height="6.6525822" | |||
skipping to change at line 3062 ¶ | skipping to change at line 3033 ¶ | |||
stroke-width="0.267684" | stroke-width="0.267684" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
id="rect143" /> | id="rect143" /> | |||
<text | <text | |||
font-size="1.83554px" | font-size="1.83554px" | |||
id="text151" | id="text151" | |||
x="114.09202" | x="114.09202" | |||
y="95.7752" | y="95.7752" | |||
transform="scale(1.0001873,0.99981273)">MPLS F<tspan | transform="scale(1.0001873,0.99981273)">MPLS F-Label<tspan | |||
font-size="1.83554px" | ||||
x="120.7172" | ||||
y="95.7752" | ||||
id="tspan145" | ||||
>-</tspan><tspan | ||||
font-size="1.83554px" | ||||
x="121.48679" | ||||
y="95.7752" | ||||
id="tspan147" | ||||
>label</tspan><tspan | ||||
font-size="1.83554px" | font-size="1.83554px" | |||
x="117.22124" | x="117.22124" | |||
y="98.069618" | y="98.069618" | |||
id="tspan149" | id="tspan149" | |||
>10004</tspan></text> | >10004</tspan></text> | |||
<rect | <rect | |||
x="52.725853" | x="52.725853" | |||
y="28.772472" | y="28.772472" | |||
width="17.44095" | width="17.44095" | |||
height="6.6525941" | height="6.6525941" | |||
skipping to change at line 3094 ¶ | skipping to change at line 3055 ¶ | |||
stroke-width="0.267684" | stroke-width="0.267684" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
id="rect153" /> | id="rect153" /> | |||
<text | <text | |||
font-size="1.83554px" | font-size="1.83554px" | |||
id="text161" | id="text161" | |||
x="55.581608" | x="55.581608" | |||
y="31.760616" | y="31.760616" | |||
transform="scale(1.0001873,0.99981273)">MPLS S<tspan | transform="scale(1.0001873,0.99981273)">MPLS S-Label<tspan | |||
font-size="1.83554px" | ||||
x="62.307163" | ||||
y="31.760616" | ||||
id="tspan155" | ||||
>-</tspan><tspan | ||||
font-size="1.83554px" | ||||
x="63.076763" | ||||
y="31.760616" | ||||
id="tspan157" | ||||
>label</tspan><tspan | ||||
font-size="1.83554px" | font-size="1.83554px" | |||
x="59.831085" | x="59.831085" | |||
y="34.055042" | y="34.055042" | |||
id="tspan158" | id="tspan158" | |||
>100</tspan></text> | >100</tspan></text> | |||
<rect | <rect | |||
x="52.725853" | x="52.725853" | |||
y="35.53978" | y="35.53978" | |||
width="17.44095" | width="17.44095" | |||
height="6.6526051" | height="6.6526051" | |||
skipping to change at line 3126 ¶ | skipping to change at line 3077 ¶ | |||
stroke-width="0.267684" | stroke-width="0.267684" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
id="rect163" /> | id="rect163" /> | |||
<text | <text | |||
font-size="1.83554px" | font-size="1.83554px" | |||
id="text171" | id="text171" | |||
x="55.631737" | x="55.631737" | |||
y="38.414463" | y="38.414463" | |||
transform="scale(1.0001873,0.99981273)">MPLS F<tspan | transform="scale(1.0001873,0.99981273)">MPLS F-Label<tspan | |||
font-size="1.83554px" | ||||
x="62.256912" | ||||
y="38.414463" | ||||
id="tspan165" | ||||
>-</tspan><tspan | ||||
font-size="1.83554px" | ||||
x="63.026505" | ||||
y="38.414463" | ||||
id="tspan167" | ||||
>label</tspan><tspan | ||||
font-size="1.83554px" | font-size="1.83554px" | |||
x="58.759624" | x="58.759624" | |||
y="40.708904" | y="40.708904" | |||
id="tspan169" | id="tspan169" | |||
>10000</tspan></text> | >10000</tspan></text> | |||
<rect | <rect | |||
x="140.38957" | x="140.38957" | |||
y="28.772472" | y="28.772472" | |||
width="17.44095" | width="17.44095" | |||
height="6.6525941" | height="6.6525941" | |||
skipping to change at line 3158 ¶ | skipping to change at line 3099 ¶ | |||
stroke-width="0.267684" | stroke-width="0.267684" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
id="rect172" /> | id="rect172" /> | |||
<text | <text | |||
font-size="1.83554px" | font-size="1.83554px" | |||
id="text181" | id="text181" | |||
x="143.27606" | x="143.27606" | |||
y="31.760616" | y="31.760616" | |||
transform="scale(1.0001873,0.99981273)">MPLS S<tspan | transform="scale(1.0001873,0.99981273)">MPLS S-Label<tspan | |||
font-size="1.83554px" | ||||
x="150.0016" | ||||
y="31.760616" | ||||
id="tspan174" | ||||
>-</tspan><tspan | ||||
font-size="1.83554px" | ||||
x="150.77121" | ||||
y="31.760616" | ||||
id="tspan176" | ||||
>label</tspan><tspan | ||||
font-size="1.83554px" | font-size="1.83554px" | |||
x="147.52553" | x="147.52553" | |||
y="34.055042" | y="34.055042" | |||
id="tspan178" | id="tspan178" | |||
>102</tspan></text> | >102</tspan></text> | |||
<rect | <rect | |||
x="140.38957" | x="140.38957" | |||
y="35.53978" | y="35.53978" | |||
width="17.44095" | width="17.44095" | |||
height="6.6526051" | height="6.6526051" | |||
skipping to change at line 3190 ¶ | skipping to change at line 3121 ¶ | |||
stroke-width="0.267684" | stroke-width="0.267684" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
id="rect183" /> | id="rect183" /> | |||
<text | <text | |||
font-size="1.83554px" | font-size="1.83554px" | |||
id="text191" | id="text191" | |||
x="143.32536" | x="143.32536" | |||
y="38.52919" | y="38.52919" | |||
transform="scale(1.0001873,0.99981273)">MPLS F<tspan | transform="scale(1.0001873,0.99981273)">MPLS F-Label<tspan | |||
font-size="1.83554px" | ||||
x="149.95053" | ||||
y="38.52919" | ||||
id="tspan185" | ||||
>-</tspan><tspan | ||||
font-size="1.83554px" | ||||
x="150.72014" | ||||
y="38.52919" | ||||
id="tspan187" | ||||
>label</tspan><tspan | ||||
font-size="1.83554px" | font-size="1.83554px" | |||
x="146.45461" | x="146.45461" | |||
y="40.823624" | y="40.823624" | |||
id="tspan189" | id="tspan189" | |||
>10005</tspan></text> | >10005</tspan></text> | |||
<rect | <rect | |||
x="81.985344" | x="81.985344" | |||
y="86.122536" | y="86.122536" | |||
width="17.44095" | width="17.44095" | |||
height="6.6526165" | height="6.6526165" | |||
skipping to change at line 3222 ¶ | skipping to change at line 3143 ¶ | |||
stroke-width="0.267684" | stroke-width="0.267684" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
id="rect193" /> | id="rect193" /> | |||
<text | <text | |||
font-size="1.83554px" | font-size="1.83554px" | |||
id="text201" | id="text201" | |||
x="84.806473" | x="84.806473" | |||
y="89.121384" | y="89.121384" | |||
transform="scale(1.0001873,0.99981273)">MPLS S<tspan | transform="scale(1.0001873,0.99981273)">MPLS S-Label<tspan | |||
font-size="1.83554px" | ||||
x="91.532028" | ||||
y="89.121384" | ||||
id="tspan195" | ||||
>-</tspan><tspan | ||||
font-size="1.83554px" | ||||
x="92.301613" | ||||
y="89.121384" | ||||
id="tspan197" | ||||
>label</tspan><tspan | ||||
font-size="1.83554px" | font-size="1.83554px" | |||
x="89.055939" | x="89.055939" | |||
y="91.415802" | y="91.415802" | |||
id="tspan199" | id="tspan199" | |||
>101</tspan></text> | >101</tspan></text> | |||
<rect | <rect | |||
x="111.24483" | x="111.24483" | |||
y="86.122536" | y="86.122536" | |||
width="17.44095" | width="17.44095" | |||
height="6.6526165" | height="6.6526165" | |||
skipping to change at line 3254 ¶ | skipping to change at line 3165 ¶ | |||
stroke-width="0.267684" | stroke-width="0.267684" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
id="rect203" /> | id="rect203" /> | |||
<text | <text | |||
font-size="1.83554px" | font-size="1.83554px" | |||
id="text211" | id="text211" | |||
x="114.04268" | x="114.04268" | |||
y="89.121384" | y="89.121384" | |||
transform="scale(1.0001873,0.99981273)">MPLS S<tspan | transform="scale(1.0001873,0.99981273)">MPLS S-Label<tspan | |||
font-size="1.83554px" | ||||
x="120.76822" | ||||
y="89.121384" | ||||
id="tspan205" | ||||
>-</tspan><tspan | ||||
font-size="1.83554px" | ||||
x="121.53782" | ||||
y="89.121384" | ||||
id="tspan207" | ||||
>label</tspan><tspan | ||||
font-size="1.83554px" | font-size="1.83554px" | |||
x="118.29214" | x="118.29214" | |||
y="91.415802" | y="91.415802" | |||
id="tspan209" | id="tspan209" | |||
>101</tspan></text> | >101</tspan></text> | |||
<path | <path | |||
d="m 41.35195,57.447494 c -0.198044,0 -0.358578,-0.641969 -0.358578,-1.43 375 0,-0.791893 0.160534,-1.43375 0.358578,-1.43375 0.198045,0 0.358569,0.641857 0.358569,1.43375 0,0.791781 -0.160524,1.43375 -0.358569,1.43375 H 21.989052 c - 0.198046,0 -0.35857,-0.641969 -0.35857,-1.43375 0,-0.791893 0.160524,-1.43375 0. 35857,-1.43375 H 41.35195" | d="m 41.35195,57.447494 c -0.198044,0 -0.358578,-0.641969 -0.358578,-1.43 375 0,-0.791893 0.160534,-1.43375 0.358578,-1.43375 0.198045,0 0.358569,0.641857 0.358569,1.43375 0,0.791781 -0.160524,1.43375 -0.358569,1.43375 H 21.989052 c - 0.198046,0 -0.35857,-0.641969 -0.35857,-1.43375 0,-0.791893 0.160524,-1.43375 0. 35857,-1.43375 H 41.35195" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.267684" | stroke-width="0.267684" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
skipping to change at line 3966 ¶ | skipping to change at line 3867 ¶ | |||
id="tspan409" | id="tspan409" | |||
>IP</tspan><tspan | >IP</tspan><tspan | |||
font-size="3.2122px" | font-size="3.2122px" | |||
x="189.36337" | x="189.36337" | |||
y="26.483425" | y="26.483425" | |||
id="tspan411" | id="tspan411" | |||
>IP</tspan></text> | >IP</tspan></text> | |||
</g> | </g> | |||
</svg> | </svg> | |||
</artwork> | </artwork> | |||
</artset> | ||||
</figure> | </figure> | |||
<figure anchor="case-a1-pipe"> | <figure anchor="case-a1-pipe"> | |||
<name>Case A-1 Application Aggregation Flow Stack Detail</name> | <name>Case A-1: Stack Details for Application Flow Aggregation</ | |||
<artset> | name> | |||
<artwork align="left" type="ascii-art" name="" alt=""><![CDATA[ | ||||
Please consult the PDF or HTML versions for the Case A-1 Diagram. | ||||
]]></artwork> | ||||
<artwork type="svg"> | <artwork type="svg"> | |||
<svg | <svg | |||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" | xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" | |||
xmlns:svg="http://www.w3.org/2000/svg" | xmlns:svg="http://www.w3.org/2000/svg" | |||
xmlns="http://www.w3.org/2000/svg" | xmlns="http://www.w3.org/2000/svg" | |||
width="180mm" | width="180mm" | |||
height="100mm" | height="100mm" | |||
viewBox="0 0 210 110" | viewBox="0 0 210 110" | |||
version="1.1" | version="1.1" | |||
> | > | |||
skipping to change at line 4137 ¶ | skipping to change at line 4032 ¶ | |||
>1</tspan><tspan | >1</tspan><tspan | |||
font-size="2.44744px" | font-size="2.44744px" | |||
x="61.926182" | x="61.926182" | |||
y="30.317019" | y="30.317019" | |||
>outgoing</tspan><tspan | >outgoing</tspan><tspan | |||
font-size="2.44744px" | font-size="2.44744px" | |||
x="62.749847" | x="62.749847" | |||
y="33.235126" | y="33.235126" | |||
>-</tspan><tspan | ||||
font-size="2.44744px" | ||||
x="63.738243" | ||||
y="33.235126" | ||||
>service</tspan><tspan | >service</tspan><tspan | |||
font-size="2.44744px" | font-size="2.44744px" | |||
x="69.996414" | x="69.996414" | |||
y="54.132515" | y="54.132515" | |||
>outgoing</tspan><tspan | >outgoing</tspan><tspan | |||
font-size="2.44744px" | font-size="2.44744px" | |||
x="63.544426" | x="63.544426" | |||
y="57.050625" | y="57.050625" | |||
skipping to change at line 4204 ¶ | skipping to change at line 4094 ¶ | |||
>1</tspan><tspan | >1</tspan><tspan | |||
font-size="2.44744px" | font-size="2.44744px" | |||
x="77.740288" | x="77.740288" | |||
y="30.317019" | y="30.317019" | |||
>outgoing</tspan><tspan | >outgoing</tspan><tspan | |||
font-size="2.44744px" | font-size="2.44744px" | |||
x="78.56395" | x="78.56395" | |||
y="33.23513" | y="33.23513" | |||
>-</tspan><tspan | ||||
font-size="2.44744px" | ||||
x="79.552345" | ||||
y="33.23513" | ||||
>service</tspan><tspan | >service</tspan><tspan | |||
font-size="2.44744px" | font-size="2.44744px" | |||
x="64.253578" | x="64.253578" | |||
y="93.103333" | y="93.103333" | |||
>Case A</tspan><tspan | >Case A</tspan><tspan | |||
font-size="2.44744px" | font-size="2.44744px" | |||
x="71.831245" | x="71.831245" | |||
y="93.103333" | y="93.103333" | |||
skipping to change at line 4262 ¶ | skipping to change at line 4147 ¶ | |||
font-size="2.44744px" | font-size="2.44744px" | |||
x="69.92778" | x="69.92778" | |||
y="38.035889" | y="38.035889" | |||
transform="scale(0.93486789,1.0696699)">incoming<tspan | transform="scale(0.93486789,1.0696699)">incoming<tspan | |||
font-size="2.44744px" | font-size="2.44744px" | |||
x="70.134247" | x="70.134247" | |||
y="40.953987" | y="40.953987" | |||
>app-flow</tspan></text> | >App-flow</tspan></text> | |||
<path | <path | |||
d="m 62.541679,13.751102 -1.3e-5,4.259474 h 0.102668 l 1.3e-5,-4.259474 z m -0.564688,4.024521 0.616005,1.409679 0.616015,-1.409668 z" | d="m 62.541679,13.751102 -1.3e-5,4.259474 h 0.102668 l 1.3e-5,-4.259474 z m -0.564688,4.024521 0.616005,1.409679 0.616015,-1.409668 z" | |||
/> | /> | |||
<path | <path | |||
d="m 77.325907,13.751102 -1e-5,4.259474 h 0.102661 l 2e-5,-4.259474 z m - 0.564686,4.024521 0.616007,1.409679 0.616015,-1.409668 z" | d="m 77.325907,13.751102 -1e-5,4.259474 h 0.102661 l 2e-5,-4.259474 z m - 0.564686,4.024521 0.616007,1.409679 0.616015,-1.409668 z" | |||
/> | /> | |||
<rect | <rect | |||
x="120.01389" | x="120.01389" | |||
skipping to change at line 4348 ¶ | skipping to change at line 4233 ¶ | |||
transform="scale(0.93486789,1.0696699)">app<tspan | transform="scale(0.93486789,1.0696699)">app<tspan | |||
font-size="2.44744px" | font-size="2.44744px" | |||
x="145.25192" | x="145.25192" | |||
y="30.317019" | y="30.317019" | |||
>incoming</tspan><tspan | >incoming</tspan><tspan | |||
font-size="2.44744px" | font-size="2.44744px" | |||
x="146.14368" | x="146.14368" | |||
y="33.23513" | y="33.23513" | |||
>-</tspan><tspan | ||||
font-size="2.44744px" | ||||
x="147.13206" | ||||
y="33.23513" | ||||
>service</tspan><tspan | >service</tspan><tspan | |||
font-size="2.44744px" | font-size="2.44744px" | |||
x="132.23195" | x="132.23195" | |||
y="93.103333" | y="93.103333" | |||
>Case A</tspan><tspan | >Case A</tspan><tspan | |||
font-size="2.44744px" | font-size="2.44744px" | |||
x="139.80963" | x="139.80963" | |||
y="93.103333" | y="93.103333" | |||
skipping to change at line 4390 ¶ | skipping to change at line 4270 ¶ | |||
font-size="2.44744px" | font-size="2.44744px" | |||
x="129.43707" | x="129.43707" | |||
y="30.128754" | y="30.128754" | |||
transform="scale(0.93486789,1.0696699)">incoming<tspan | transform="scale(0.93486789,1.0696699)">incoming<tspan | |||
font-size="2.44744px" | font-size="2.44744px" | |||
x="130.32991" | x="130.32991" | |||
y="33.046867" | y="33.046867" | |||
>-service</tspan><tspan | > service</tspan><tspan | |||
font-size="2.44744px" | font-size="2.44744px" | |||
x="137.7811" | x="137.7811" | |||
y="65.7108" | y="65.7108" | |||
>outgoing</tspan><tspan | >outgoing</tspan><tspan | |||
font-size="2.44744px" | font-size="2.44744px" | |||
x="133.56725" | x="133.56725" | |||
y="68.628922" | y="68.628922" | |||
>service sub-layer</tspan><tspan | >service sub-layer</tspan><tspan | |||
font-size="2.44744px" | font-size="2.44744px" | |||
x="137.71303" | x="137.71303" | |||
y="53.285324" | y="53.285324" | |||
>incoming</tspan><tspan | >incoming</tspan><tspan | |||
font-size="2.44744px" | font-size="2.44744px" | |||
x="131.48065" | x="131.48065" | |||
y="56.20343" | y="56.20343" | |||
>service-identification</tspan><tspan | >service identification</tspan><tspan | |||
font-size="2.44744px" | font-size="2.44744px" | |||
x="137.78165" | x="137.78165" | |||
y="37.659351" | y="37.659351" | |||
>outgoing</tspan><tspan | >outgoing</tspan><tspan | |||
font-size="2.44744px" | font-size="2.44744px" | |||
x="137.91891" | x="137.91891" | |||
y="40.577454" | y="40.577454" | |||
>app-flow</tspan><tspan | >App-flow</tspan><tspan | |||
font-size="2.44744px" | font-size="2.44744px" | |||
x="137.71245" | x="137.71245" | |||
y="82.372231" | y="82.372231" | |||
>incoming</tspan><tspan | >incoming</tspan><tspan | |||
font-size="2.44744px" | font-size="2.44744px" | |||
x="129.24306" | x="129.24306" | |||
y="85.290337" | y="85.290337" | |||
>forwarding-identification</tspan></text> | >forwarding identification</tspan></text> | |||
<path | <path | |||
d="m 126.14671,38.209251 0.89761,3.130972 -0.0977,0.03663 -0.89762,-3.131 074 z m -0.57025,0.46116 0.20152,-1.559094 0.96891,1.119784 z" | d="m 126.14671,38.209251 0.89761,3.130972 -0.0977,0.03663 -0.89762,-3.131 074 z m -0.57025,0.46116 0.20152,-1.559094 0.96891,1.119784 z" | |||
/> | /> | |||
<path | <path | |||
d="m 140.30237,38.238921 -0.66989,3.152994 0.0998,0.02776 0.66988,-3.1529 95 z m 0.59996,0.40866 -0.30756,-1.536264 -0.88959,1.203286 z" | d="m 140.30237,38.238921 -0.66989,3.152994 0.0998,0.02776 0.66988,-3.1529 95 z m 0.59996,0.40866 -0.30756,-1.536264 -0.88959,1.203286 z" | |||
/> | /> | |||
<path | <path | |||
d="m 133.29477,63.760764 -2e-5,4.259476 h 0.10267 l 1e-5,-4.259476 z m 0. 66734,0.234944 -0.61602,-1.409666 -0.616,1.409666 z" | d="m 133.29477,63.760764 -2e-5,4.259476 h 0.10267 l 1e-5,-4.259476 z m 0. 66734,0.234944 -0.61602,-1.409666 -0.616,1.409666 z" | |||
skipping to change at line 4474 ¶ | skipping to change at line 4354 ¶ | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.439283" | stroke-width="0.439283" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
stroke-dasharray="1.75714, 1.31786" | stroke-dasharray="1.75714, 1.31786" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
/> | /> | |||
</g> | </g> | |||
</svg> | </svg> | |||
</artwork> | </artwork> | |||
</artset> | ||||
</figure> | </figure> | |||
<t> <xref target="example-detnet-json-configuration-a-1"/> contains the o perational JSON configuration for the ingress aggregation | <t> <xref target="example-detnet-json-configuration-a-1"/> contains the o perational JSON configuration for the ingress aggregation | |||
node illustrated in <xref target="case-a1"/> and | node illustrated in Figures <xref target="case-a1" format="c | |||
<xref target="case-a1-pipe"/>. App-0 and app-1 | ounter"/> and | |||
are aggregated into Service Sub-layer ssl-1. | <xref target="case-a1-pipe" format="counter"/>. "app-0" and | |||
"app-1" | ||||
are aggregated into service sub-layer ssl-1. | ||||
</t> | </t> | |||
<figure anchor="example-detnet-json-configuration-a-1"> | <figure anchor="example-detnet-json-configuration-a-1"> | |||
<name>Example A-1 DetNet configuration Application Aggregation</name> | <name>Example A-1: DetNet Configuration Application Flow Aggregat | |||
<artwork name="" type="" align="left" alt=""><![CDATA[ | ion</name> | |||
<sourcecode name="" type="json"><![CDATA[ | ||||
{ | { | |||
"ietf-detnet:detnet": { | "ietf-detnet:detnet": { | |||
"traffic-profile": [ | "traffic-profile": [ | |||
{ | { | |||
"name": "pf-1", | "name": "pf-1", | |||
"traffic-requirements": { | "traffic-requirements": { | |||
"min-bandwidth": "100000000", | "min-bandwidth": "100000000", | |||
"max-latency": 100000000, | "max-latency": 100000000, | |||
"max-latency-variation": 20000000, | "max-latency-variation": 20000000, | |||
"max-loss": "0.0000001", | "max-loss": "0.0000001", | |||
skipping to change at line 4673 ¶ | skipping to change at line 4552 ¶ | |||
"name": "eth2", | "name": "eth2", | |||
"type": "iana-if-type:ethernetCsmacd", | "type": "iana-if-type:ethernetCsmacd", | |||
"oper-status": "up", | "oper-status": "up", | |||
"statistics": { | "statistics": { | |||
"discontinuity-time": "2024-02-21T18:59:00-05:00" | "discontinuity-time": "2024-02-21T18:59:00-05:00" | |||
} | } | |||
} | } | |||
] | ] | |||
} | } | |||
} | } | |||
]]></artwork> | ]]></sourcecode> | |||
</figure> | </figure> | |||
</section> | </section> | |||
<section numbered="true" toc="default"> | <section numbered="true" toc="default"> | |||
<name>Example B-1 XML Config: Aggregation using a Forwarding Sub-layer</ | <name>Example B-1: Aggregation Using a Forwarding Sub-layer</name> | |||
name> | <t>As illustrated in <xref target="case-b1"/>, DetNet service sub-layer | |||
<t> <xref target="case-b1"/> illustrates the DetNet service sub-layer fl | flows 1 and 2 are | |||
ows 1 and 2 are | ||||
aggregated into a single forwarding sub-layer. | aggregated into a single forwarding sub-layer. | |||
For the same destination multiple DetNet flows use a single forward ing path and | For the same destination, multiple DetNet flows use a single forwar ding path, and | |||
service protection is performed by the corresponding service sub-la yer | service protection is performed by the corresponding service sub-la yer | |||
of each flow. A diagram illustrating this case is shown and then th | of each flow. The corresponding | |||
e corresponding | XML operational data for node "Ingress 1" follows. | |||
XML operational data for node Ingress 1 follows. | ||||
</t> | </t> | |||
<figure anchor="case-b1"> | <figure anchor="case-b1"> | |||
<name>Case B-1 Example Config: Aggregation using a Forwarding Su | <name>Case B-1: Aggregation Using a Forwarding Sub&nbhy;layer</n | |||
b-layer</name> | ame> | |||
<artset> | ||||
<artwork align="left" type="ascii-art" name="" alt=""><![CDATA[ | ||||
Please consult the PDF or HTML versions for the Case B-1 Diagram. | ||||
]]></artwork> | ||||
<artwork type="svg"> | <artwork type="svg"> | |||
<svg | <svg | |||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" | xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" | |||
xmlns:svg="http://www.w3.org/2000/svg" | xmlns:svg="http://www.w3.org/2000/svg" | |||
xmlns="http://www.w3.org/2000/svg" | xmlns="http://www.w3.org/2000/svg" | |||
width="180mm" | width="180mm" | |||
height="120mm" | height="120mm" | |||
viewBox="0 0 210 140" | viewBox="0 0 210 140" | |||
version="1.1" | version="1.1" | |||
> | > | |||
skipping to change at line 4782 ¶ | skipping to change at line 4655 ¶ | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
/> | /> | |||
<text | <text | |||
font-size="2.92393px" | font-size="2.92393px" | |||
x="15.306479" | x="15.306479" | |||
y="66.595085" | y="66.595085" | |||
transform="scale(0.88605917,1.1285928)">Source 1<tspan | transform="scale(0.88605917,1.1285928)">Source 1<tspan | |||
font-size="2.92393px" | font-size="2.92393px" | |||
x="16.380289" | x="15.380289" | |||
y="69.519012" | y="69.519012" | |||
>192.0.2.1</tspan></text> | >192.0.2.1</tspan></text> | |||
<path | <path | |||
d="m 21.907209,65.406311 c 0,-0.398327 -0.253513,-0.721231 -0.566236,-0.7 21231 h -6.301901 c -0.312727,0 -0.566239,0.322904 -0.566239,0.721231 v 6.305208 c 0,0.398317 0.253512,0.721221 0.566239,0.721221 h 6.301901 c 0.312723,0 0.5662 36,-0.322904 0.566236,-0.721221 z" | d="m 21.907209,65.406311 c 0,-0.398327 -0.253513,-0.721231 -0.566236,-0.7 21231 h -6.301901 c -0.312727,0 -0.566239,0.322904 -0.566239,0.721231 v 6.305208 c 0,0.398317 0.253512,0.721221 0.566239,0.721221 h 6.301901 c 0.312723,0 0.5662 36,-0.322904 0.566236,-0.721221 z" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.29663" | stroke-width="0.29663" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
skipping to change at line 4808 ¶ | skipping to change at line 4681 ¶ | |||
stroke-width="0.222473" | stroke-width="0.222473" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
/> | /> | |||
<text | <text | |||
font-size="2.92393px" | font-size="2.92393px" | |||
x="47.859951" | x="47.859951" | |||
y="70.663162" | y="73.663162" | |||
transform="scale(0.88605917,1.1285928)">Ingress 1</text> | transform="scale(0.88605917,1.1285928)">Ingress 1</text> | |||
<path | <path | |||
d="m 50.856263,65.406311 c 0,-0.398322 -0.253516,-0.721231 -0.566239,-0.7 21231 h -6.189256 c -0.312727,0 -0.566239,0.322909 -0.566239,0.721231 v 6.305192 c 0,0.398333 0.253512,0.721237 0.566239,0.721237 h 6.189256 c 0.312723,0 0.5662 39,-0.322904 0.566239,-0.721237 z" | d="m 50.856263,65.406311 c 0,-0.398322 -0.253516,-0.721231 -0.566239,-0.7 21231 h -6.189256 c -0.312727,0 -0.566239,0.322909 -0.566239,0.721231 v 6.305192 c 0,0.398333 0.253512,0.721237 0.566239,0.721237 h 6.189256 c 0.312723,0 0.5662 39,-0.322904 0.566239,-0.721237 z" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.29663" | stroke-width="0.29663" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
skipping to change at line 4838 ¶ | skipping to change at line 4711 ¶ | |||
/> | /> | |||
<text | <text | |||
font-size="2.92393px" | font-size="2.92393px" | |||
x="146.92918" | x="146.92918" | |||
y="70.663162" | y="70.663162" | |||
transform="scale(0.88605917,1.1285928)">Relay 2<tspan | transform="scale(0.88605917,1.1285928)">Relay 2<tspan | |||
font-size="2.92393px" | font-size="2.92393px" | |||
x="179.01915" | x="179.01915" | |||
y="70.663162" | y="73.663162" | |||
>Egress 1</tspan><tspan | >Egress 1</tspan><tspan | |||
font-size="2.92393px" | font-size="2.92393px" | |||
x="113.356" | x="112.356" | |||
y="83.248756" | y="83.248756" | |||
>Transit 2</tspan></text> | >Transit 2</tspan></text> | |||
<path | <path | |||
d="m 108.75438,84.058039 c 0,-0.398323 -0.25351,-0.721226 -0.56623,-0.721 226 h -6.18928 c -0.31274,0 -0.56625,0.322903 -0.56625,0.721226 v 6.305184 c 0,0 .398331 0.25351,0.721233 0.56625,0.721233 h 6.18928 c 0.31272,0 0.56623,-0.32290 2 0.56623,-0.721233 z" | d="m 108.75438,84.058039 c 0,-0.398323 -0.25351,-0.721226 -0.56623,-0.721 226 h -6.18928 c -0.31274,0 -0.56625,0.322903 -0.56625,0.721226 v 6.305184 c 0,0 .398331 0.25351,0.721233 0.56625,0.721233 h 6.18928 c 0.31272,0 0.56623,-0.32290 2 0.56623,-0.721233 z" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.29663" | stroke-width="0.29663" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
skipping to change at line 4867 ¶ | skipping to change at line 4740 ¶ | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.222473" | stroke-width="0.222473" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
/> | /> | |||
<text | <text | |||
font-size="2.92393px" | font-size="2.92393px" | |||
x="113.35614" | x="112.35614" | |||
y="49.941429" | y="49.941429" | |||
transform="scale(0.88605917,1.1285928)">Transit 1</text> | transform="scale(0.88605917,1.1285928)">Transit 1</text> | |||
<path | <path | |||
d="m 108.75438,46.611095 c 0,-0.398322 -0.25351,-0.721226 -0.56623,-0.721 226 h -6.18928 c -0.31274,0 -0.56625,0.322904 -0.56625,0.721226 v 6.305185 c 0,0 .398329 0.25351,0.721233 0.56625,0.721233 h 6.18928 c 0.31272,0 0.56623,-0.32290 4 0.56623,-0.721233 z" | d="m 108.75438,46.611095 c 0,-0.398322 -0.25351,-0.721226 -0.56623,-0.721 226 h -6.18928 c -0.31274,0 -0.56625,0.322904 -0.56625,0.721226 v 6.305185 c 0,0 .398329 0.25351,0.721233 0.56625,0.721233 h 6.18928 c 0.31272,0 0.56623,-0.32290 4 0.56623,-0.721233 z" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.29663" | stroke-width="0.29663" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
skipping to change at line 4892 ¶ | skipping to change at line 4765 ¶ | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.222473" | stroke-width="0.222473" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
/> | /> | |||
<text | <text | |||
font-size="2.92393px" | font-size="2.92393px" | |||
x="208.60622" | x="212.60622" | |||
y="66.595085" | y="66.595085" | |||
transform="scale(0.88605917,1.1285928)">Destination 1<tspan | transform="scale(0.88605917,1.1285928)">Destination 1<tspan | |||
font-size="2.92393px" | font-size="2.92393px" | |||
x="212.48022" | x="211.48022" | |||
y="69.519012" | y="69.519012" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<path | <path | |||
d="m 195.60155,65.406306 c 0,-0.398322 -0.25351,-0.721226 -0.56624,-0.721 226 h -6.18928 c -0.31272,0 -0.56624,0.322904 -0.56624,0.721226 v 6.305186 c 0,0 .398327 0.25352,0.721232 0.56624,0.721232 h 6.18928 c 0.31273,0 0.56624,-0.32290 5 0.56624,-0.721232 z" | d="m 195.60155,65.406306 c 0,-0.398322 -0.25351,-0.721226 -0.56624,-0.721 226 h -6.18928 c -0.31272,0 -0.56624,0.322904 -0.56624,0.721226 v 6.305186 c 0,0 .398327 0.25352,0.721232 0.56624,0.721232 h 6.18928 c 0.31273,0 0.56624,-0.32290 5 0.56624,-0.721232 z" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.29663" | stroke-width="0.29663" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
skipping to change at line 4986 ¶ | skipping to change at line 4859 ¶ | |||
d="M 79.805322,68.558901 101.41574,87.268884" | d="M 79.805322,68.558901 101.41574,87.268884" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.29663" | stroke-width="0.29663" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
/> | /> | |||
<text | <text | |||
font-size="2.92393px" | font-size="2.92393px" | |||
x="15.189409" | x="13.189409" | |||
y="37.355831" | y="37.355831" | |||
transform="scale(0.88605917,1.1285928)">Source 2<tspan | transform="scale(0.88605917,1.1285928)">Source 2<tspan | |||
font-size="2.92393px" | font-size="2.92393px" | |||
x="16.263189" | x="14.263189" | |||
y="40.279758" | y="40.279758" | |||
>192.0.2.2</tspan></text> | >192.0.2.2</tspan></text> | |||
<path | <path | |||
d="m 21.794568,32.407082 c 0,-0.398322 -0.253512,-0.721226 -0.566235,-0.7 21226 h -6.189261 c -0.312727,0 -0.566239,0.322904 -0.566239,0.721226 v 6.305169 c 0,0.398318 0.253512,0.721221 0.566239,0.721221 h 6.189261 c 0.312723,0 0.5662 35,-0.322903 0.566235,-0.721221 z" | d="m 21.794568,32.407082 c 0,-0.398322 -0.253512,-0.721226 -0.566235,-0.7 21226 h -6.189261 c -0.312727,0 -0.566239,0.322904 -0.566239,0.721226 v 6.305169 c 0,0.398318 0.253512,0.721221 0.566239,0.721221 h 6.189261 c 0.312723,0 0.5662 35,-0.322903 0.566235,-0.721221 z" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.29663" | stroke-width="0.29663" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
skipping to change at line 5052 ¶ | skipping to change at line 4925 ¶ | |||
height="8.3215294" | height="8.3215294" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.29663" | stroke-width="0.29663" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="2.92393px" | font-size="2.92393px" | |||
x="32.095158" | x="32.095158" | |||
y="25.024492" | y="25.024492" | |||
transform="scale(0.88605917,1.1285928)">IP <tspan | transform="scale(0.88605917,1.1285928)">IP <tspan | |||
font-size="2.03404px" | font-size="2.03404px" | |||
x="35.877186" | x="34.877186" | |||
y="25.024492" | y="25.024492" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="2.03404px" | font-size="2.03404px" | |||
x="35.840099" | x="34.840099" | |||
y="27.69416" | y="27.69416" | |||
>192.0.2.9</tspan><tspan | >192.0.2.9</tspan><tspan | |||
font-size="2.92393px" | font-size="2.92393px" | |||
x="208.60622" | x="212.60622" | |||
y="37.355831" | y="37.355831" | |||
>Destination 2</tspan><tspan | >Destination 2</tspan><tspan | |||
font-size="2.92393px" | font-size="2.92393px" | |||
x="212.48105" | x="211.48105" | |||
y="40.279758" | y="40.279758" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<path | <path | |||
d="M 166.6525,68.486878 188.26291,35.416205" | d="M 166.6525,68.486878 188.26291,35.416205" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.29663" | stroke-width="0.29663" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
skipping to change at line 5118 ¶ | skipping to change at line 4991 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="2.92393px" | font-size="2.92393px" | |||
x="195.25024" | x="195.25024" | |||
y="25.024492" | y="25.024492" | |||
transform="scale(0.88605917,1.1285928)">IP <tspan | transform="scale(0.88605917,1.1285928)">IP <tspan | |||
font-size="2.03404px" | font-size="2.03404px" | |||
x="199.03227" | x="198.03227" | |||
y="25.024492" | y="25.024492" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="2.03404px" | font-size="2.03404px" | |||
x="198.99519" | x="197.99519" | |||
y="27.69416" | y="27.69416" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<path | <path | |||
d="m 40.652681,66.835338 c -0.124583,-0.191828 0.262682,-0.861712 0.86486 7,-1.4963 0.602184,-0.634735 1.191303,-0.99371 1.315885,-0.802025 0.124583,0.191 828 -0.262567,0.861713 -0.864866,1.496441 -0.602185,0.634589 -1.191303,0.993565 -1.315886,0.801884 L 22.654701,39.128474 c -0.124584,-0.191827 0.262682,-0.86171 1 0.864866,-1.496446 0.602189,-0.634588 1.191308,-0.993704 1.31589,-0.801878 l 1 7.997976,27.707005" | d="m 40.652681,66.835338 c -0.124583,-0.191828 0.262682,-0.861712 0.86486 7,-1.4963 0.602184,-0.634735 1.191303,-0.99371 1.315885,-0.802025 0.124583,0.191 828 -0.262567,0.861713 -0.864866,1.496441 -0.602185,0.634589 -1.191303,0.993565 -1.315886,0.801884 L 22.654701,39.128474 c -0.124584,-0.191827 0.262682,-0.86171 1 0.864866,-1.496446 0.602189,-0.634588 1.191308,-0.993704 1.31589,-0.801878 l 1 7.997976,27.707005" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.29663" | stroke-width="0.29663" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
skipping to change at line 5214 ¶ | skipping to change at line 5087 ¶ | |||
font-size="2.03404px" | font-size="2.03404px" | |||
x="63.280228" | x="63.280228" | |||
y="39.38987" | y="39.38987" | |||
transform="scale(0.88605917,1.1285928)">MPLS<tspan | transform="scale(0.88605917,1.1285928)">MPLS<tspan | |||
font-size="2.03404px" | font-size="2.03404px" | |||
x="69.546547" | x="69.546547" | |||
y="39.38987" | y="39.38987" | |||
>F</tspan><tspan | >F-Label</tspan><tspan | |||
font-size="2.03404px" | ||||
x="70.621819" | ||||
y="39.38987" | ||||
>-</tspan><tspan | ||||
font-size="2.03404px" | ||||
x="71.474625" | ||||
y="39.38987" | ||||
>label</tspan><tspan | ||||
font-size="2.03404px" | font-size="2.03404px" | |||
x="66.747826" | x="66.747826" | |||
y="41.932407" | y="41.932407" | |||
>20000</tspan></text> | >20000</tspan></text> | |||
<rect | <rect | |||
x="61.782566" | x="61.782566" | |||
y="32.546707" | y="32.546707" | |||
width="8.560811" | width="8.560811" | |||
height="8.321557" | height="8.321557" | |||
skipping to change at line 5251 ¶ | skipping to change at line 5114 ¶ | |||
font-size="1.52553px" | font-size="1.52553px" | |||
x="72.58696" | x="72.58696" | |||
y="30.872347" | y="30.872347" | |||
transform="scale(0.88605917,1.1285928)">MPLS<tspan | transform="scale(0.88605917,1.1285928)">MPLS<tspan | |||
font-size="1.52553px" | font-size="1.52553px" | |||
x="72.142006" | x="72.142006" | |||
y="32.652126" | y="32.652126" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.52553px" | ||||
x="72.994812" | ||||
y="32.652126" | ||||
>-</tspan><tspan | ||||
font-size="1.52553px" | ||||
x="73.625145" | ||||
y="32.652126" | ||||
>label</tspan><tspan | ||||
font-size="2.03404px" | font-size="2.03404px" | |||
x="72.790146" | x="72.790146" | |||
y="35.067543" | y="35.067543" | |||
>103</tspan></text> | >103</tspan></text> | |||
<rect | <rect | |||
x="53.221756" | x="53.221756" | |||
y="32.546707" | y="32.546707" | |||
width="8.560833" | width="8.560833" | |||
height="8.321557" | height="8.321557" | |||
skipping to change at line 5288 ¶ | skipping to change at line 5141 ¶ | |||
font-size="1.52553px" | font-size="1.52553px" | |||
x="62.894905" | x="62.894905" | |||
y="30.872347" | y="30.872347" | |||
transform="scale(0.88605917,1.1285928)">MPLS<tspan | transform="scale(0.88605917,1.1285928)">MPLS<tspan | |||
font-size="1.52553px" | font-size="1.52553px" | |||
x="62.449959" | x="62.449959" | |||
y="32.652126" | y="32.652126" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.52553px" | ||||
x="63.302757" | ||||
y="32.652126" | ||||
>-</tspan><tspan | ||||
font-size="1.52553px" | ||||
x="63.933098" | ||||
y="32.652126" | ||||
>label</tspan><tspan | ||||
font-size="2.03404px" | font-size="2.03404px" | |||
x="63.098099" | x="63.098099" | |||
y="35.067543" | y="35.067543" | |||
>100</tspan></text> | >100</tspan></text> | |||
<rect | <rect | |||
x="53.221756" | x="53.221756" | |||
y="24.225159" | y="24.225159" | |||
width="8.560833" | width="8.560833" | |||
height="8.3215294" | height="8.3215294" | |||
skipping to change at line 5322 ¶ | skipping to change at line 5165 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="64.11927" | x="64.11927" | |||
y="23.880342" | y="23.880342" | |||
transform="scale(0.88605917,1.1285928)">IP<tspan | transform="scale(0.88605917,1.1285928)">IP<tspan | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="62.283131" | x="61.283131" | |||
y="25.787251" | y="25.787251" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="62.283131" | x="61.283131" | |||
y="27.69416" | y="27.69416" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<rect | <rect | |||
x="61.782566" | x="61.782566" | |||
y="24.225159" | y="24.225159" | |||
width="8.560811" | width="8.560811" | |||
height="8.3215294" | height="8.3215294" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.29663" | stroke-width="0.29663" | |||
skipping to change at line 5349 ¶ | skipping to change at line 5192 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="73.81131" | x="73.81131" | |||
y="23.880342" | y="23.880342" | |||
transform="scale(0.88605917,1.1285928)">IP<tspan | transform="scale(0.88605917,1.1285928)">IP<tspan | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="71.975174" | x="70.975174" | |||
y="25.787251" | y="25.787251" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="71.975174" | x="70.975174" | |||
y="27.69416" | y="27.69416" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<rect | <rect | |||
x="53.221756" | x="53.221756" | |||
y="15.903621" | y="15.903621" | |||
width="8.560833" | width="8.560833" | |||
height="8.321557" | height="8.321557" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.29663" | stroke-width="0.29663" | |||
skipping to change at line 5420 ¶ | skipping to change at line 5263 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="2.92393px" | font-size="2.92393px" | |||
x="12.766096" | x="12.766096" | |||
y="52.483971" | y="52.483971" | |||
transform="scale(0.88605917,1.1285928)">IP <tspan | transform="scale(0.88605917,1.1285928)">IP <tspan | |||
font-size="2.03404px" | font-size="2.03404px" | |||
x="16.548124" | x="15.548124" | |||
y="52.483971" | y="52.483971" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="2.03404px" | font-size="2.03404px" | |||
x="16.511055" | x="15.511055" | |||
y="55.153641" | y="55.153641" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<rect | <rect | |||
x="81.945526" | x="81.945526" | |||
y="40.868256" | y="40.868256" | |||
width="17.121622" | width="17.121622" | |||
height="8.321557" | height="8.321557" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.29663" | stroke-width="0.29663" | |||
skipping to change at line 5450 ¶ | skipping to change at line 5293 ¶ | |||
font-size="2.03404px" | font-size="2.03404px" | |||
x="95.751953" | x="95.751953" | |||
y="39.38987" | y="39.38987" | |||
transform="scale(0.88605917,1.1285928)">MPLS<tspan | transform="scale(0.88605917,1.1285928)">MPLS<tspan | |||
font-size="2.03404px" | font-size="2.03404px" | |||
x="102.01825" | x="102.01825" | |||
y="39.38987" | y="39.38987" | |||
>F</tspan><tspan | >F-Label</tspan><tspan | |||
font-size="2.03404px" | ||||
x="103.09354" | ||||
y="39.38987" | ||||
>-</tspan><tspan | ||||
font-size="2.03404px" | ||||
x="103.94636" | ||||
y="39.38987" | ||||
>label</tspan><tspan | ||||
font-size="2.03404px" | font-size="2.03404px" | |||
x="99.219559" | x="99.219559" | |||
y="41.932407" | y="41.932407" | |||
>20001</tspan></text> | >20001</tspan></text> | |||
<rect | <rect | |||
x="82.508736" | x="82.508736" | |||
y="112.17525" | y="112.17525" | |||
width="17.00898" | width="17.00898" | |||
height="8.4650326" | height="8.4650326" | |||
skipping to change at line 5487 ¶ | skipping to change at line 5320 ¶ | |||
font-size="2.03404px" | font-size="2.03404px" | |||
x="96.259819" | x="96.259819" | |||
y="102.69923" | y="102.69923" | |||
transform="scale(0.88605917,1.1285928)">MPLS<tspan | transform="scale(0.88605917,1.1285928)">MPLS<tspan | |||
font-size="2.03404px" | font-size="2.03404px" | |||
x="102.52615" | x="102.52615" | |||
y="102.69923" | y="102.69923" | |||
>F</tspan><tspan | >F-Label</tspan><tspan | |||
font-size="2.03404px" | ||||
x="103.60142" | ||||
y="102.69923" | ||||
>-</tspan><tspan | ||||
font-size="2.03404px" | ||||
x="104.45422" | ||||
y="102.69923" | ||||
>label</tspan><tspan | ||||
font-size="2.03404px" | font-size="2.03404px" | |||
x="99.727432" | x="99.727432" | |||
y="105.24178" | y="105.24178" | |||
>20002</tspan></text> | >20002</tspan></text> | |||
<rect | <rect | |||
x="81.945526" | x="81.945526" | |||
y="32.546707" | y="32.546707" | |||
width="8.560811" | width="8.560811" | |||
height="8.321557" | height="8.321557" | |||
skipping to change at line 5524 ¶ | skipping to change at line 5347 ¶ | |||
font-size="1.52553px" | font-size="1.52553px" | |||
x="95.360779" | x="95.360779" | |||
y="30.872347" | y="30.872347" | |||
transform="scale(0.88605917,1.1285928)">MPLS<tspan | transform="scale(0.88605917,1.1285928)">MPLS<tspan | |||
font-size="1.52553px" | font-size="1.52553px" | |||
x="94.915825" | x="94.915825" | |||
y="32.652126" | y="32.652126" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.52553px" | ||||
x="95.768654" | ||||
y="32.652126" | ||||
>-</tspan><tspan | ||||
font-size="1.52553px" | ||||
x="96.398987" | ||||
y="32.652126" | ||||
>label</tspan><tspan | ||||
font-size="2.03404px" | font-size="2.03404px" | |||
x="95.563988" | x="95.563988" | |||
y="35.067543" | y="35.067543" | |||
>101</tspan></text> | >101</tspan></text> | |||
<rect | <rect | |||
x="81.945526" | x="81.945526" | |||
y="24.225159" | y="24.225159" | |||
width="8.560811" | width="8.560811" | |||
height="8.3215294" | height="8.3215294" | |||
skipping to change at line 5558 ¶ | skipping to change at line 5371 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="96.585136" | x="96.585136" | |||
y="23.880342" | y="23.880342" | |||
transform="scale(0.88605917,1.1285928)">IP<tspan | transform="scale(0.88605917,1.1285928)">IP<tspan | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="94.748985" | x="93.748985" | |||
y="25.787251" | y="25.787251" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="94.748985" | x="93.748985" | |||
y="27.69416" | y="27.69416" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<rect | <rect | |||
x="81.945526" | x="81.945526" | |||
y="15.903621" | y="15.903621" | |||
width="8.560811" | width="8.560811" | |||
height="8.321557" | height="8.321557" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.29663" | stroke-width="0.29663" | |||
skipping to change at line 5610 ¶ | skipping to change at line 5423 ¶ | |||
font-size="1.52553px" | font-size="1.52553px" | |||
x="105.04189" | x="105.04189" | |||
y="30.872347" | y="30.872347" | |||
transform="scale(0.88605917,1.1285928)">MPLS<tspan | transform="scale(0.88605917,1.1285928)">MPLS<tspan | |||
font-size="1.52553px" | font-size="1.52553px" | |||
x="104.59696" | x="104.59696" | |||
y="32.652126" | y="32.652126" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.52553px" | ||||
x="105.44977" | ||||
y="32.652126" | ||||
>-</tspan><tspan | ||||
font-size="1.52553px" | ||||
x="106.0801" | ||||
y="32.652126" | ||||
>label</tspan><tspan | ||||
font-size="2.03404px" | font-size="2.03404px" | |||
x="105.2451" | x="105.2451" | |||
y="35.067543" | y="35.067543" | |||
>104</tspan></text> | >104</tspan></text> | |||
<rect | <rect | |||
x="90.50634" | x="90.50634" | |||
y="24.225159" | y="24.225159" | |||
width="8.560811" | width="8.560811" | |||
height="8.3215294" | height="8.3215294" | |||
skipping to change at line 5644 ¶ | skipping to change at line 5447 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="106.26627" | x="106.26627" | |||
y="23.880342" | y="23.880342" | |||
transform="scale(0.88605917,1.1285928)">IP<tspan | transform="scale(0.88605917,1.1285928)">IP<tspan | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="104.43011" | x="103.43011" | |||
y="25.787251" | y="25.787251" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="104.43011" | x="103.43011" | |||
y="27.69416" | y="27.69416" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<rect | <rect | |||
x="90.50634" | x="90.50634" | |||
y="15.903621" | y="15.903621" | |||
width="8.560811" | width="8.560811" | |||
height="8.321557" | height="8.321557" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.29663" | stroke-width="0.29663" | |||
skipping to change at line 5696 ¶ | skipping to change at line 5499 ¶ | |||
font-size="1.52553px" | font-size="1.52553px" | |||
x="95.916458" | x="95.916458" | |||
y="94.181694" | y="94.181694" | |||
transform="scale(0.88605917,1.1285928)">MPLS<tspan | transform="scale(0.88605917,1.1285928)">MPLS<tspan | |||
font-size="1.52553px" | font-size="1.52553px" | |||
x="95.471504" | x="95.471504" | |||
y="95.961479" | y="95.961479" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.52553px" | ||||
x="96.324326" | ||||
y="95.961479" | ||||
>-</tspan><tspan | ||||
font-size="1.52553px" | ||||
x="96.954659" | ||||
y="95.961479" | ||||
>label</tspan><tspan | ||||
font-size="2.03404px" | font-size="2.03404px" | |||
x="96.119644" | x="96.119644" | |||
y="98.376907" | y="98.376907" | |||
>101</tspan></text> | >101</tspan></text> | |||
<rect | <rect | |||
x="90.956902" | x="90.956902" | |||
y="103.9972" | y="103.9972" | |||
width="8.560811" | width="8.560811" | |||
height="8.321557" | height="8.321557" | |||
skipping to change at line 5733 ¶ | skipping to change at line 5526 ¶ | |||
font-size="1.52553px" | font-size="1.52553px" | |||
x="105.49943" | x="105.49943" | |||
y="94.181694" | y="94.181694" | |||
transform="scale(0.88605917,1.1285928)">MPLS<tspan | transform="scale(0.88605917,1.1285928)">MPLS<tspan | |||
font-size="1.52553px" | font-size="1.52553px" | |||
x="105.05449" | x="105.05449" | |||
y="95.961479" | y="95.961479" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.52553px" | ||||
x="105.9073" | ||||
y="95.961479" | ||||
>-</tspan><tspan | ||||
font-size="1.52553px" | ||||
x="106.53764" | ||||
y="95.961479" | ||||
>label</tspan><tspan | ||||
font-size="2.03404px" | font-size="2.03404px" | |||
x="105.70261" | x="105.70261" | |||
y="98.376907" | y="98.376907" | |||
>104</tspan></text> | >104</tspan></text> | |||
<rect | <rect | |||
x="82.508736" | x="82.508736" | |||
y="95.675652" | y="95.675652" | |||
width="8.560811" | width="8.560811" | |||
height="8.321557" | height="8.321557" | |||
skipping to change at line 5767 ¶ | skipping to change at line 5550 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="97.140808" | x="97.140808" | |||
y="87.189705" | y="87.189705" | |||
transform="scale(0.88605917,1.1285928)">IP<tspan | transform="scale(0.88605917,1.1285928)">IP<tspan | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="95.304665" | x="94.304665" | |||
y="89.096611" | y="89.096611" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="95.304665" | x="94.304665" | |||
y="91.003517" | y="91.003517" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<rect | <rect | |||
x="90.956902" | x="90.956902" | |||
y="95.675652" | y="95.675652" | |||
width="8.560811" | width="8.560811" | |||
height="8.321557" | height="8.321557" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.29663" | stroke-width="0.29663" | |||
skipping to change at line 5794 ¶ | skipping to change at line 5577 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="106.72378" | x="106.72378" | |||
y="87.189705" | y="87.189705" | |||
transform="scale(0.88605917,1.1285928)">IP<tspan | transform="scale(0.88605917,1.1285928)">IP<tspan | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="104.88765" | x="103.88765" | |||
y="89.096611" | y="89.096611" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="104.88765" | x="103.88765" | |||
y="91.003517" | y="91.003517" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<rect | <rect | |||
x="82.508736" | x="82.508736" | |||
y="87.354103" | y="87.354103" | |||
width="8.560811" | width="8.560811" | |||
height="8.465004" | height="8.465004" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.29663" | stroke-width="0.29663" | |||
skipping to change at line 5868 ¶ | skipping to change at line 5651 ¶ | |||
font-size="2.03404px" | font-size="2.03404px" | |||
x="128.77415" | x="128.77415" | |||
y="39.38987" | y="39.38987" | |||
transform="scale(0.88605917,1.1285928)">MPLS<tspan | transform="scale(0.88605917,1.1285928)">MPLS<tspan | |||
font-size="2.03404px" | font-size="2.03404px" | |||
x="135.04045" | x="135.04045" | |||
y="39.38987" | y="39.38987" | |||
>F</tspan><tspan | >F-Label</tspan><tspan | |||
font-size="2.03404px" | ||||
x="136.11572" | ||||
y="39.38987" | ||||
>-</tspan><tspan | ||||
font-size="2.03404px" | ||||
x="136.96855" | ||||
y="39.38987" | ||||
>label</tspan><tspan | ||||
font-size="2.03404px" | font-size="2.03404px" | |||
x="132.24174" | x="132.24174" | |||
y="41.932407" | y="41.932407" | |||
>20003</tspan></text> | >20003</tspan></text> | |||
<rect | <rect | |||
x="111.45779" | x="111.45779" | |||
y="112.17525" | y="112.17525" | |||
width="17.121622" | width="17.121622" | |||
height="8.4650326" | height="8.4650326" | |||
skipping to change at line 5905 ¶ | skipping to change at line 5678 ¶ | |||
font-size="2.03404px" | font-size="2.03404px" | |||
x="129.00552" | x="129.00552" | |||
y="102.69923" | y="102.69923" | |||
transform="scale(0.88605917,1.1285928)">MPLS<tspan | transform="scale(0.88605917,1.1285928)">MPLS<tspan | |||
font-size="2.03404px" | font-size="2.03404px" | |||
x="135.27182" | x="135.27182" | |||
y="102.69923" | y="102.69923" | |||
>F</tspan><tspan | >F-Label</tspan><tspan | |||
font-size="2.03404px" | ||||
x="136.34711" | ||||
y="102.69923" | ||||
>-</tspan><tspan | ||||
font-size="2.03404px" | ||||
x="137.19992" | ||||
y="102.69923" | ||||
>label</tspan><tspan | ||||
font-size="2.03404px" | font-size="2.03404px" | |||
x="132.47313" | x="132.47313" | |||
y="105.24178" | y="105.24178" | |||
>20004</tspan></text> | >20004</tspan></text> | |||
<rect | <rect | |||
x="119.79331" | x="119.79331" | |||
y="32.546707" | y="32.546707" | |||
width="8.560811" | width="8.560811" | |||
height="8.321557" | height="8.321557" | |||
skipping to change at line 5942 ¶ | skipping to change at line 5705 ¶ | |||
font-size="1.52553px" | font-size="1.52553px" | |||
x="138.07857" | x="138.07857" | |||
y="30.872347" | y="30.872347" | |||
transform="scale(0.88605917,1.1285928)">MPLS<tspan | transform="scale(0.88605917,1.1285928)">MPLS<tspan | |||
font-size="1.52553px" | font-size="1.52553px" | |||
x="137.63364" | x="137.63364" | |||
y="32.652126" | y="32.652126" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.52553px" | ||||
x="138.48643" | ||||
y="32.652126" | ||||
>-</tspan><tspan | ||||
font-size="1.52553px" | ||||
x="139.11679" | ||||
y="32.652126" | ||||
>label</tspan><tspan | ||||
font-size="2.03404px" | font-size="2.03404px" | |||
x="138.28177" | x="138.28177" | |||
y="35.067543" | y="35.067543" | |||
>104</tspan></text> | >104</tspan></text> | |||
<rect | <rect | |||
x="111.23251" | x="111.23251" | |||
y="32.546707" | y="32.546707" | |||
width="8.560811" | width="8.560811" | |||
height="8.321557" | height="8.321557" | |||
skipping to change at line 5979 ¶ | skipping to change at line 5732 ¶ | |||
font-size="1.52553px" | font-size="1.52553px" | |||
x="128.36861" | x="128.36861" | |||
y="30.872347" | y="30.872347" | |||
transform="scale(0.88605917,1.1285928)">MPLS<tspan | transform="scale(0.88605917,1.1285928)">MPLS<tspan | |||
font-size="1.52553px" | font-size="1.52553px" | |||
x="127.92366" | x="127.92366" | |||
y="32.652126" | y="32.652126" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.52553px" | ||||
x="128.77647" | ||||
y="32.652126" | ||||
>-</tspan><tspan | ||||
font-size="1.52553px" | ||||
x="129.40681" | ||||
y="32.652126" | ||||
>label</tspan><tspan | ||||
font-size="2.03404px" | font-size="2.03404px" | |||
x="128.57181" | x="128.57181" | |||
y="35.067543" | y="35.067543" | |||
>101</tspan></text> | >101</tspan></text> | |||
<rect | <rect | |||
x="111.23251" | x="111.23251" | |||
y="24.225159" | y="24.225159" | |||
width="8.560811" | width="8.560811" | |||
height="8.3215294" | height="8.3215294" | |||
skipping to change at line 6013 ¶ | skipping to change at line 5756 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="129.5941" | x="129.5941" | |||
y="23.880342" | y="23.880342" | |||
transform="scale(0.88605917,1.1285928)">IP<tspan | transform="scale(0.88605917,1.1285928)">IP<tspan | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="127.75799" | x="126.75799" | |||
y="25.787251" | y="25.787251" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="127.75799" | x="126.75799" | |||
y="27.69416" | y="27.69416" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<rect | <rect | |||
x="119.79331" | x="119.79331" | |||
y="24.225159" | y="24.225159" | |||
width="8.560811" | width="8.560811" | |||
height="8.3215294" | height="8.3215294" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.29663" | stroke-width="0.29663" | |||
skipping to change at line 6040 ¶ | skipping to change at line 5783 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="139.30283" | x="139.30283" | |||
y="23.880342" | y="23.880342" | |||
transform="scale(0.88605917,1.1285928)">IP<tspan | transform="scale(0.88605917,1.1285928)">IP<tspan | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="137.46666" | x="136.46666" | |||
y="25.787251" | y="25.787251" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="137.46666" | x="136.46666" | |||
y="27.69416" | y="27.69416" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<rect | <rect | |||
x="111.23251" | x="111.23251" | |||
y="15.903621" | y="15.903621" | |||
width="8.560811" | width="8.560811" | |||
height="8.321557" | height="8.321557" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.29663" | stroke-width="0.29663" | |||
skipping to change at line 6114 ¶ | skipping to change at line 5857 ¶ | |||
font-size="1.52553px" | font-size="1.52553px" | |||
x="128.59488" | x="128.59488" | |||
y="94.181694" | y="94.181694" | |||
transform="scale(0.88605917,1.1285928)">MPLS<tspan | transform="scale(0.88605917,1.1285928)">MPLS<tspan | |||
font-size="1.52553px" | font-size="1.52553px" | |||
x="128.14993" | x="128.14993" | |||
y="95.961479" | y="95.961479" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.52553px" | ||||
x="129.00275" | ||||
y="95.961479" | ||||
>-</tspan><tspan | ||||
font-size="1.52553px" | ||||
x="129.6331" | ||||
y="95.961479" | ||||
>label</tspan><tspan | ||||
font-size="2.03404px" | font-size="2.03404px" | |||
x="128.7981" | x="128.7981" | |||
y="98.376907" | y="98.376907" | |||
>101</tspan></text> | >101</tspan></text> | |||
<rect | <rect | |||
x="120.01861" | x="120.01861" | |||
y="103.9972" | y="103.9972" | |||
width="8.560811" | width="8.560811" | |||
height="8.321557" | height="8.321557" | |||
skipping to change at line 6151 ¶ | skipping to change at line 5884 ¶ | |||
font-size="1.52553px" | font-size="1.52553px" | |||
x="138.31503" | x="138.31503" | |||
y="94.181694" | y="94.181694" | |||
transform="scale(0.88605917,1.1285928)">MPLS<tspan | transform="scale(0.88605917,1.1285928)">MPLS<tspan | |||
font-size="1.52553px" | font-size="1.52553px" | |||
x="137.8701" | x="137.8701" | |||
y="95.961479" | y="95.961479" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.52553px" | ||||
x="138.7229" | ||||
y="95.961479" | ||||
>-</tspan><tspan | ||||
font-size="1.52553px" | ||||
x="139.35326" | ||||
y="95.961479" | ||||
>label</tspan><tspan | ||||
font-size="2.03404px" | font-size="2.03404px" | |||
x="138.51823" | x="138.51823" | |||
y="98.376907" | y="98.376907" | |||
>104</tspan></text> | >104</tspan></text> | |||
<rect | <rect | |||
x="111.45779" | x="111.45779" | |||
y="95.675652" | y="95.675652" | |||
width="8.560811" | width="8.560811" | |||
height="8.321557" | height="8.321557" | |||
skipping to change at line 6185 ¶ | skipping to change at line 5908 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="129.81914" | x="129.81914" | |||
y="87.189705" | y="87.189705" | |||
transform="scale(0.88605917,1.1285928)">IP<tspan | transform="scale(0.88605917,1.1285928)">IP<tspan | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="127.98296" | x="126.98296" | |||
y="89.096611" | y="89.096611" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="127.98296" | x="126.98296" | |||
y="91.003517" | y="91.003517" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<rect | <rect | |||
x="120.01861" | x="120.01861" | |||
y="95.675652" | y="95.675652" | |||
width="8.560811" | width="8.560811" | |||
height="8.321557" | height="8.321557" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.29663" | stroke-width="0.29663" | |||
skipping to change at line 6212 ¶ | skipping to change at line 5935 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="139.53928" | x="139.53928" | |||
y="87.189705" | y="87.189705" | |||
transform="scale(0.88605917,1.1285928)">IP<tspan | transform="scale(0.88605917,1.1285928)">IP<tspan | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="137.70311" | x="136.70311" | |||
y="89.096611" | y="89.096611" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="137.70311" | x="136.70311" | |||
y="91.003517" | y="91.003517" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<rect | <rect | |||
x="111.45779" | x="111.45779" | |||
y="87.354103" | y="87.354103" | |||
width="8.560811" | width="8.560811" | |||
height="8.465004" | height="8.465004" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.29663" | stroke-width="0.29663" | |||
skipping to change at line 6286 ¶ | skipping to change at line 6009 ¶ | |||
font-size="2.03404px" | font-size="2.03404px" | |||
x="161.49542" | x="161.49542" | |||
y="39.38987" | y="39.38987" | |||
transform="scale(0.88605917,1.1285928)">MPLS<tspan | transform="scale(0.88605917,1.1285928)">MPLS<tspan | |||
font-size="2.03404px" | font-size="2.03404px" | |||
x="167.76172" | x="167.76172" | |||
y="39.38987" | y="39.38987" | |||
>F</tspan><tspan | >F-Label</tspan><tspan | |||
font-size="2.03404px" | ||||
x="168.83702" | ||||
y="39.38987" | ||||
>-</tspan><tspan | ||||
font-size="2.03404px" | ||||
x="169.68983" | ||||
y="39.38987" | ||||
>label</tspan><tspan | ||||
font-size="2.03404px" | font-size="2.03404px" | |||
x="164.96303" | x="164.96303" | |||
y="41.932407" | y="41.932407" | |||
>20005</tspan></text> | >20005</tspan></text> | |||
<rect | <rect | |||
x="148.85503" | x="148.85503" | |||
y="32.546707" | y="32.546707" | |||
width="8.560811" | width="8.560811" | |||
height="8.321557" | height="8.321557" | |||
skipping to change at line 6323 ¶ | skipping to change at line 6036 ¶ | |||
font-size="1.52553px" | font-size="1.52553px" | |||
x="170.80495" | x="170.80495" | |||
y="30.872347" | y="30.872347" | |||
transform="scale(0.88605917,1.1285928)">MPLS<tspan | transform="scale(0.88605917,1.1285928)">MPLS<tspan | |||
font-size="1.52553px" | font-size="1.52553px" | |||
x="170.36002" | x="170.36002" | |||
y="32.652126" | y="32.652126" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.52553px" | ||||
x="171.2128" | ||||
y="32.652126" | ||||
>-</tspan><tspan | ||||
font-size="1.52553px" | ||||
x="171.84315" | ||||
y="32.652126" | ||||
>label</tspan><tspan | ||||
font-size="2.03404px" | font-size="2.03404px" | |||
x="171.00812" | x="171.00812" | |||
y="35.067543" | y="35.067543" | |||
>105</tspan></text> | >105</tspan></text> | |||
<rect | <rect | |||
x="140.18156" | x="140.18156" | |||
y="32.546707" | y="32.546707" | |||
width="8.560811" | width="8.560811" | |||
height="8.321557" | height="8.321557" | |||
skipping to change at line 6360 ¶ | skipping to change at line 6063 ¶ | |||
font-size="1.52553px" | font-size="1.52553px" | |||
x="161.08479" | x="161.08479" | |||
y="30.872347" | y="30.872347" | |||
transform="scale(0.88605917,1.1285928)">MPLS<tspan | transform="scale(0.88605917,1.1285928)">MPLS<tspan | |||
font-size="1.52553px" | font-size="1.52553px" | |||
x="160.63986" | x="160.63986" | |||
y="32.652126" | y="32.652126" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.52553px" | ||||
x="161.49266" | ||||
y="32.652126" | ||||
>-</tspan><tspan | ||||
font-size="1.52553px" | ||||
x="162.123" | ||||
y="32.652126" | ||||
>label</tspan><tspan | ||||
font-size="2.03404px" | font-size="2.03404px" | |||
x="161.28798" | x="161.28798" | |||
y="35.067543" | y="35.067543" | |||
>102</tspan></text> | >102</tspan></text> | |||
<rect | <rect | |||
x="140.18156" | x="140.18156" | |||
y="24.225159" | y="24.225159" | |||
width="8.560811" | width="8.560811" | |||
height="8.3215294" | height="8.3215294" | |||
skipping to change at line 6394 ¶ | skipping to change at line 6087 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="162.30902" | x="162.30902" | |||
y="23.880342" | y="23.880342" | |||
transform="scale(0.88605917,1.1285928)">IP<tspan | transform="scale(0.88605917,1.1285928)">IP<tspan | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="160.47287" | x="159.47287" | |||
y="25.787251" | y="25.787251" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="160.47287" | x="159.47287" | |||
y="27.69416" | y="27.69416" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<rect | <rect | |||
x="148.85503" | x="148.85503" | |||
y="24.225159" | y="24.225159" | |||
width="8.560811" | width="8.560811" | |||
height="8.3215294" | height="8.3215294" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.29663" | stroke-width="0.29663" | |||
skipping to change at line 6421 ¶ | skipping to change at line 6114 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="172.02917" | x="172.02917" | |||
y="23.880342" | y="23.880342" | |||
transform="scale(0.88605917,1.1285928)">IP<tspan | transform="scale(0.88605917,1.1285928)">IP<tspan | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="170.19304" | x="169.19304" | |||
y="25.787251" | y="25.787251" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="1.65265px" | font-size="1.65265px" | |||
x="170.19304" | x="169.19304" | |||
y="27.69416" | y="27.69416" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<rect | <rect | |||
x="140.18156" | x="140.18156" | |||
y="15.903621" | y="15.903621" | |||
width="8.560811" | width="8.560811" | |||
height="8.321557" | height="8.321557" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.29663" | stroke-width="0.29663" | |||
skipping to change at line 6492 ¶ | skipping to change at line 6185 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="2.92393px" | font-size="2.92393px" | |||
x="214.42229" | x="214.42229" | |||
y="52.611099" | y="52.611099" | |||
transform="scale(0.88605917,1.1285928)">IP <tspan | transform="scale(0.88605917,1.1285928)">IP <tspan | |||
font-size="2.03404px" | font-size="2.03404px" | |||
x="218.20433" | x="217.20433" | |||
y="52.611099" | y="52.611099" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="2.03404px" | font-size="2.03404px" | |||
x="218.16727" | x="217.16727" | |||
y="55.280769" | y="55.280769" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<path | <path | |||
d="m 71.258592,76.450018 c -0.863177,0 -1.562909,-3.565065 -1.562909,-7.9 62853 0,-4.397793 0.699732,-7.962858 1.562909,-7.962858 0.863176,0 1.56291,3.565 065 1.56291,7.962858 0,4.397788 -0.699734,7.962853 -1.56291,7.962853 h -16.02336 c -0.863177,0 -1.56291,-3.565065 -1.56291,-7.962853 0,-4.397793 0.699733,-7.962 858 1.56291,-7.962858 h 16.02336" | d="m 71.258592,76.450018 c -0.863177,0 -1.562909,-3.565065 -1.562909,-7.9 62853 0,-4.397793 0.699732,-7.962858 1.562909,-7.962858 0.863176,0 1.56291,3.565 065 1.56291,7.962858 0,4.397788 -0.699734,7.962853 -1.56291,7.962853 h -16.02336 c -0.863177,0 -1.56291,-3.565065 -1.56291,-7.962853 0,-4.397793 0.699733,-7.962 858 1.56291,-7.962858 h 16.02336" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.29663" | stroke-width="0.29663" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
skipping to change at line 6719 ¶ | skipping to change at line 6412 ¶ | |||
font-size="2.92393px" | font-size="2.92393px" | |||
x="196.88129" | x="196.88129" | |||
y="65.450958" | y="65.450958" | |||
transform="scale(0.88605917,1.1285928)">App-1<tspan | transform="scale(0.88605917,1.1285928)">App-1<tspan | |||
font-size="4.1952px" | font-size="4.1952px" | |||
x="181.19646" | x="181.19646" | |||
y="84.901405" | y="84.901405" | |||
>Note: S-label in this</tspan><tspan | >Note: S-Label in this</tspan><tspan | |||
font-size="4.1952px" | font-size="4.1952px" | |||
x="181.19646" | x="181.19646" | |||
y="89.859375" | y="89.859375" | |||
>diagram includes d-CW.</tspan></text> | >diagram includes d-CW.</tspan></text> | |||
<path | <path | |||
d="m 74.511135,36.707479 c 0,-1.980957 1.235575,-3.586871 2.759739,-3.586 871 1.524159,0 2.759734,1.605914 2.759734,3.586871 0,1.980956 -1.235575,3.58687 -2.759734,3.58687 -1.524164,0 -2.759739,-1.605914 -2.759739,-3.58687 z" | d="m 74.511135,36.707479 c 0,-1.980957 1.235575,-3.586871 2.759739,-3.586 871 1.524159,0 2.759734,1.605914 2.759734,3.586871 0,1.980956 -1.235575,3.58687 -2.759734,3.58687 -1.524164,0 -2.759739,-1.605914 -2.759739,-3.58687 z" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.29663" | stroke-width="0.29663" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
skipping to change at line 6843 ¶ | skipping to change at line 6536 ¶ | |||
<text | <text | |||
font-size="2.92393px" | font-size="2.92393px" | |||
x="81.274445" | x="81.274445" | |||
y="70.663162" | y="70.663162" | |||
transform="scale(0.88605917,1.1285928)">Relay 1</text> | transform="scale(0.88605917,1.1285928)">Relay 1</text> | |||
</g> | </g> | |||
</svg> | </svg> | |||
</artwork> | </artwork> | |||
</artset> | ||||
</figure> | </figure> | |||
<t> <xref target="example-detnet-xml-fwd-aggregation-b-1"/> | <t> <xref target="example-detnet-xml-fwd-aggregation-b-1"/> | |||
contains the operational XML configuration for the ingress aggregati on | contains the operational XML configuration for the ingress aggregati on | |||
node illustrated in <xref target="case-b1"/>. | node illustrated in <xref target="case-b1"/>. | |||
In this example app-0 and app-1 are in separate service sub-layer | In this example, "app-0" and "app-1" are in separate service sub- | |||
s | layers | |||
with MPLS labels and the | with MPLS labels, and the | |||
aggregation happens at the forwarding sub-layer afl-1 using MPLS | aggregation happens at forwarding sub-layer afl-1, using MPLS lab | |||
labels. | els. | |||
</t> | </t> | |||
<figure anchor="example-detnet-xml-fwd-aggregation-b-1"> | <figure anchor="example-detnet-xml-fwd-aggregation-b-1"> | |||
<name>Example B-1 DetNet configuration Forwarding Layer Aggregation</n | <name>Example B-1: DetNet Configuration Forwarding Sub-layer Aggregati | |||
ame> | on</name> | |||
<artwork name="" type="" align="left" alt=""><![CDATA[ | <sourcecode name="" type="xml"><![CDATA[ | |||
<interfaces | <interfaces | |||
xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces" | xmlns="urn:ietf:params:xml:ns:yang:ietf-interfaces" | |||
xmlns:ia="urn:ietf:params:xml:ns:yang:iana-if-type"> | xmlns:ia="urn:ietf:params:xml:ns:yang:iana-if-type"> | |||
<interface> | <interface> | |||
<name>eth0</name> | <name>eth0</name> | |||
<type>ia:ethernetCsmacd</type> | <type>ia:ethernetCsmacd</type> | |||
<oper-status>up</oper-status> | <oper-status>up</oper-status> | |||
<statistics> | <statistics> | |||
<discontinuity-time>2024-02-21T23:59:00Z</discontinuity-time> | <discontinuity-time>2024-02-21T23:59:00Z</discontinuity-time> | |||
</statistics> | </statistics> | |||
skipping to change at line 7044 ¶ | skipping to change at line 6736 ¶ | |||
<entry> | <entry> | |||
<id>0</id> | <id>0</id> | |||
<label>10000</label> | <label>10000</label> | |||
</entry> | </entry> | |||
</mpls-label-stack> | </mpls-label-stack> | |||
</interface> | </interface> | |||
</outgoing> | </outgoing> | |||
</sub-layer> | </sub-layer> | |||
</forwarding> | </forwarding> | |||
</detnet> | </detnet> | |||
]]></artwork> | ]]></sourcecode> | |||
</figure> | </figure> | |||
</section> | </section> | |||
<section numbered="true" toc="default"> | <section numbered="true" toc="default"> | |||
<name>Example B-2 JSON Service Aggregation Configuration</name> | <name>Example B-2: Service Aggregation</name> | |||
<t> | <t>As illustrated in | |||
<xref target="case-b2"/> illustrates DetNet service sub-layer fl | <xref target="case-b2"/>, DetNet service sub-layer flows 1 and 2 | |||
ows 1 and 2 are | are | |||
aggregated into a service sub-layer of an aggregated flow. | aggregated into a service sub-layer of an aggregated flow. | |||
Multiple DetNet flows with the same requirements for the same | Multiple DetNet flows with the same requirements for the same | |||
destination are aggregated into a single aggregated DetNet flow, | destination are aggregated into a single aggregated DetNet flow, | |||
and service protection and resource allocation are performed by | and service protection and resource allocation are performed by | |||
an aggregated DetNet flow service sub-layer and forwarding | an aggregated DetNet flow service sub-layer and forwarding | |||
sub-layer. A diagram illustrating this case is shown and then | sub-layer. The | |||
the | corresponding JSON operational data for node "Ingress 1" follow | |||
corresponding JSON operational data for node Ingress 1 follows. | s. | |||
</t> | </t> | |||
<figure anchor="case-b2"> | <figure anchor="case-b2"> | |||
<name>Case B-2 Example Service Aggregation</name> | <name>Case B-2: Example Service Aggregation</name> | |||
<artset> | ||||
<artwork align="left" type="ascii-art" name="" alt=""><![CDATA[ | ||||
Please consult the PDF or HTML versions for the Case B-2 Diagram. | ||||
]]></artwork> | ||||
<artwork type="svg"> | <artwork type="svg"> | |||
<svg | <svg | |||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" | xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" | |||
xmlns:svg="http://www.w3.org/2000/svg" | xmlns:svg="http://www.w3.org/2000/svg" | |||
xmlns="http://www.w3.org/2000/svg" | xmlns="http://www.w3.org/2000/svg" | |||
width="180mm" | width="180mm" | |||
height="120mm" | height="120mm" | |||
viewBox="0 0 210 140" | viewBox="0 0 210 140" | |||
version="1.1" | version="1.1" | |||
> | > | |||
skipping to change at line 7113 ¶ | skipping to change at line 6799 ¶ | |||
stroke-width="0.209234" | stroke-width="0.209234" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
/> | /> | |||
<text | <text | |||
font-size="2.74992px" | font-size="2.74992px" | |||
x="43.424561" | x="43.424561" | |||
y="67.076286" | y="71.876286" | |||
transform="scale(0.92084851,1.0859549)">Ingress 1<tspan | ||||
font-size="2.74992px" | ||||
x="44.557201" | ||||
y="69.82621" | ||||
>192.0.2.2</tspan></text> | transform="scale(0.92084851,1.0859549)">Ingress 1 192.0.2.2</text> | |||
<path | <path | |||
d="m 48.246165,59.601766 c 0,-0.360466 -0.2478,-0.652685 -0.55344,-0.6526 85 h -6.049511 c -0.30564,0 -0.553439,0.292219 -0.553439,0.652685 v 5.705938 c 0 ,0.360477 0.247799,0.652692 0.553439,0.652692 h 6.049511 c 0.30564,0 0.55344,-0. 292215 0.55344,-0.652692 z" | d="m 48.246165,59.601766 c 0,-0.360466 -0.2478,-0.652685 -0.55344,-0.6526 85 h -6.049511 c -0.30564,0 -0.553439,0.292219 -0.553439,0.652685 v 5.705938 c 0 ,0.360477 0.247799,0.652692 0.553439,0.652692 h 6.049511 c 0.30564,0 0.55344,-0. 292215 0.55344,-0.652692 z" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.278978" | stroke-width="0.278978" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
/> | /> | |||
<path | <path | |||
skipping to change at line 7181 ¶ | skipping to change at line 6862 ¶ | |||
<path | <path | |||
d="m 133.13201,59.601766 c 0,-0.360466 -0.24779,-0.652685 -0.55343,-0.652 685 h -6.04952 c -0.30563,0 -0.55344,0.292219 -0.55344,0.652685 v 5.705938 c 0,0 .360477 0.24781,0.652692 0.55344,0.652692 h 6.04952 c 0.30564,0 0.55343,-0.29221 5 0.55343,-0.652692 z" | d="m 133.13201,59.601766 c 0,-0.360466 -0.24779,-0.652685 -0.55343,-0.652 685 h -6.04952 c -0.30563,0 -0.55344,0.292219 -0.55344,0.652685 v 5.705938 c 0,0 .360477 0.24781,0.652692 0.55344,0.652692 h 6.04952 c 0.30564,0 0.55343,-0.29221 5 0.55343,-0.652692 z" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.278978" | stroke-width="0.278978" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
/> | /> | |||
<path | <path | |||
d="m 131.96992,59.468435 v 0.740236 h -1.46873 l -0.78222,1.661017 -0.798 21,-1.661017 h -1.45275 v -0.740236 l -0.94194,0.938834 0.94194,0.93883 v -0.631 903 h 1.03766 l 0.894,1.823502 -0.894,1.841556 h -1.03766 v -0.686069 l -0.94194 ,0.938839 0.94194,0.93884 v -0.704133 h 1.45275 l 0.79821,-1.69712 0.78222,1.697 12 h 1.46873 v 0.668009 l 0.94189,-0.902716 -0.94189,-0.938839 v 0.686069 h -1.0 2169 l -0.90998,-1.841556 0.894,-1.823502 h 1.03767 v 0.613854 l 0.94189,-0.9207 81 z" | d="m 131.96992,59.468435 v 0.740236 h -1.46873 l -0.78222,1.661017 -0 .79821,-1.661017 h -1.45275 v -0.740236 l -0.94194,0.938834 0.94194,0.93883 v -0 .631903 h 1.03766 l 0.894,1.823502 -0.894,1./841556 h -1.03766 v -0.686069 l -0. 94194,0.938839 0.94194,0.93884 v -0.704133 h 1.45275 l 0.79821,-1.69712 0.78222, 1.69712 h 1.46873 v 0.668009 l 0.94189,-0.902716 -0.94189,-0.938839 v 0.686069 h -1.02169 l -0.90998,-1.841556 0.894,-1.823502 h 1.03767 v 0.613854 l 0.94189,-0 .920781 z" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.209234" | stroke-width="0.209234" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
/> | /> | |||
<text | <text | |||
font-size="2.74992px" | font-size="2.74992px" | |||
x="166.77922" | x="166.77922" | |||
y="67.076286" | y="71.076286" | |||
transform="scale(0.92084851,1.0859549)">Egress 1</text> | transform="scale(0.92084851,1.0859549)">Egress 1</text> | |||
<path | <path | |||
d="m 161.42731,59.601761 c 0,-0.360465 -0.24781,-0.65268 -0.55345,-0.6526 8 h -6.04951 c -0.30568,0 -0.55344,0.292215 -0.55344,0.65268 v 5.705959 c 0,0.36 0461 0.24776,0.652676 0.55344,0.652676 h 6.04951 c 0.30564,0 0.55345,-0.292215 0 .55345,-0.652676 z" | d="m 161.42731,59.601761 c 0,-0.360465 -0.24781,-0.65268 -0.55345,-0.6526 8 h -6.04951 c -0.30568,0 -0.55344,0.292215 -0.55344,0.65268 v 5.705959 c 0,0.36 0461 0.24776,0.652676 0.55344,0.652676 h 6.04951 c 0.30564,0 0.55345,-0.292215 0 .55345,-0.652676 z" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.278978" | stroke-width="0.278978" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
skipping to change at line 7217 ¶ | skipping to change at line 6898 ¶ | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.209234" | stroke-width="0.209234" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
/> | /> | |||
<text | <text | |||
font-size="2.74992px" | font-size="2.74992px" | |||
x="105.0231" | x="104.0231" | |||
y="78.67379" | y="78.67379" | |||
transform="scale(0.92084851,1.0859549)">Transit 2</text> | transform="scale(0.92084851,1.0859549)">Transit 2</text> | |||
<path | <path | |||
d="m 104.83673,76.480813 c 0,-0.360465 -0.24779,-0.65268 -0.55344,-0.6526 8 h -6.049504 c -0.305682,0 -0.55344,0.292215 -0.55344,0.65268 v 5.705959 c 0,0. 36046 0.247758,0.652675 0.55344,0.652675 h 6.049504 c 0.30565,0 0.55344,-0.29221 5 0.55344,-0.652675 z" | d="m 104.83673,76.480813 c 0,-0.360465 -0.24779,-0.65268 -0.55344,-0.6526 8 h -6.049504 c -0.305682,0 -0.55344,0.292215 -0.55344,0.65268 v 5.705959 c 0,0. 36046 0.247758,0.652675 0.55344,0.652675 h 6.049504 c 0.30565,0 0.55344,-0.29221 5 0.55344,-0.652675 z" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.278978" | stroke-width="0.278978" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
skipping to change at line 7242 ¶ | skipping to change at line 6923 ¶ | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.209234" | stroke-width="0.209234" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
/> | /> | |||
<text | <text | |||
font-size="2.74992px" | font-size="2.74992px" | |||
x="105.0231" | x="104.0231" | |||
y="47.348579" | y="47.348579" | |||
transform="scale(0.92084851,1.0859549)">Transit 1</text> | transform="scale(0.92084851,1.0859549)">Transit 1</text> | |||
<path | <path | |||
d="m 104.83673,42.592865 c 0,-0.360466 -0.24779,-0.652681 -0.55344,-0.652 681 h -6.049504 c -0.305682,0 -0.55344,0.292215 -0.55344,0.652681 v 5.705958 c 0 ,0.360461 0.247758,0.652675 0.55344,0.652675 h 6.049504 c 0.30565,0 0.55344,-0.2 92214 0.55344,-0.652675 z" | d="m 104.83673,42.592865 c 0,-0.360466 -0.24779,-0.652681 -0.55344,-0.652 681 h -6.049504 c -0.305682,0 -0.55344,0.292215 -0.55344,0.652681 v 5.705958 c 0 ,0.360461 0.247758,0.652675 0.55344,0.652675 h 6.049504 c 0.30565,0 0.55344,-0.2 92214 0.55344,-0.652675 z" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.278978" | stroke-width="0.278978" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
skipping to change at line 7267 ¶ | skipping to change at line 6948 ¶ | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.209234" | stroke-width="0.209234" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
/> | /> | |||
<text | <text | |||
font-size="2.74992px" | font-size="2.74992px" | |||
x="194.6049" | x="197.6049" | |||
y="63.011162" | y="63.011162" | |||
transform="scale(0.92084851,1.0859549)">Destination 1<tspan | transform="scale(0.92084851,1.0859549)">Destination 1<tspan | |||
font-size="2.74992px" | font-size="2.74992px" | |||
x="198.24837" | x="198.24837" | |||
y="65.761101" | y="65.761101" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<path | <path | |||
d="m 189.72259,59.601761 c 0,-0.360465 -0.2478,-0.65268 -0.55344,-0.65268 h -6.04951 c -0.30568,0 -0.55344,0.292215 -0.55344,0.65268 v 5.705959 c 0,0.360 461 0.24776,0.652676 0.55344,0.652676 h 6.04951 c 0.30564,0 0.55344,-0.292215 0. 55344,-0.652676 z" | d="m 189.72259,59.601761 c 0,-0.360465 -0.2478,-0.65268 -0.55344,-0.65268 h -6.04951 c -0.30568,0 -0.55344,0.292215 -0.55344,0.65268 v 5.705959 c 0,0.360 461 0.24776,0.652676 0.55344,0.652676 h 6.04951 c 0.30564,0 0.55344,-0.292215 0. 55344,-0.652676 z" | |||
skipping to change at line 7431 ¶ | skipping to change at line 7112 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="2.74992px" | font-size="2.74992px" | |||
x="28.597944" | x="28.597944" | |||
y="23.914433" | y="23.914433" | |||
transform="scale(0.92084851,1.0859549)">IP <tspan | transform="scale(0.92084851,1.0859549)">IP <tspan | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="32.154896" | x="31.154896" | |||
y="23.914433" | y="23.914433" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="32.120037" | x="31.120037" | |||
y="26.425243" | y="26.425243" | |||
>192.0.2.9</tspan><tspan | >192.0.2.9</tspan><tspan | |||
font-size="2.74992px" | font-size="2.74992px" | |||
x="194.6049" | x="197.6049" | |||
y="35.511951" | y="35.511951" | |||
>Destination 2</tspan><tspan | >Destination 2</tspan><tspan | |||
font-size="2.74992px" | font-size="2.74992px" | |||
x="198.24913" | x="197.24913" | |||
y="38.261875" | y="38.261875" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<path | <path | |||
d="m 189.72259,29.608979 c 0,-0.360465 -0.2478,-0.652681 -0.55344,-0.6526 81 h -6.04951 c -0.30568,0 -0.55344,0.292216 -0.55344,0.652681 v 5.705959 c 0,0. 36046 0.24776,0.652675 0.55344,0.652675 h 6.04951 c 0.30564,0 0.55344,-0.292215 0.55344,-0.652675 z" | d="m 189.72259,29.608979 c 0,-0.360465 -0.2478,-0.652681 -0.55344,-0.6526 81 h -6.04951 c -0.30568,0 -0.55344,0.292216 -0.55344,0.652681 v 5.705959 c 0,0. 36046 0.24776,0.652675 0.55344,0.652675 h 6.04951 c 0.30564,0 0.55344,-0.292215 0.55344,-0.652675 z" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.278978" | stroke-width="0.278978" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
skipping to change at line 7511 ¶ | skipping to change at line 7192 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="2.74992px" | font-size="2.74992px" | |||
x="182.04367" | x="182.04367" | |||
y="23.914433" | y="23.914433" | |||
transform="scale(0.92084851,1.0859549)">IP <tspan | transform="scale(0.92084851,1.0859549)">IP <tspan | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="185.60065" | x="184.60065" | |||
y="23.914433" | y="23.914433" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="185.56577" | x="184.56577" | |||
y="26.425243" | y="26.425243" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<path | <path | |||
d="m 38.272975,60.894976 c -0.121756,-0.173595 0.256788,-0.779814 0.84534 8,-1.35409 0.588602,-0.574409 1.164429,-0.899267 1.286185,-0.725798 0.121756,0.1 73594 -0.256662,0.779813 -0.845348,1.354216 -0.588602,0.574277 -1.164387,0.89913 6 -1.286185,0.725672 L 20.681464,35.8214 c -0.121758,-0.173596 0.256741,-0.77981 4 0.845349,-1.354223 0.588599,-0.574275 1.164381,-0.899261 1.286184,-0.725666 l 17.591511,25.073704" | d="m 38.272975,60.894976 c -0.121756,-0.173595 0.256788,-0.779814 0.84534 8,-1.35409 0.588602,-0.574409 1.164429,-0.899267 1.286185,-0.725798 0.121756,0.1 73594 -0.256662,0.779813 -0.845348,1.354216 -0.588602,0.574277 -1.164387,0.89913 6 -1.286185,0.725672 L 20.681464,35.8214 c -0.121758,-0.173596 0.256741,-0.77981 4 0.845349,-1.354223 0.588599,-0.574275 1.164381,-0.899261 1.286184,-0.725666 l 17.591511,25.073704" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.278978" | stroke-width="0.278978" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
skipping to change at line 7682 ¶ | skipping to change at line 7363 ¶ | |||
font-size="1.43475px" | font-size="1.43475px" | |||
x="66.678513" | x="66.678513" | |||
y="29.414297" | y="29.414297" | |||
transform="scale(0.92084851,1.0859549)">MPLS<tspan | transform="scale(0.92084851,1.0859549)">MPLS<tspan | |||
font-size="1.43475px" | font-size="1.43475px" | |||
x="66.260056" | x="66.260056" | |||
y="31.088161" | y="31.088161" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.43475px" | ||||
x="67.062111" | ||||
y="31.088161" | ||||
>-</tspan><tspan | ||||
font-size="1.43475px" | ||||
x="67.654938" | ||||
y="31.088161" | ||||
>label</tspan><tspan | ||||
font-size="1.91299px" | font-size="1.91299px" | |||
x="66.869598" | x="66.869598" | |||
y="33.359844" | y="33.359844" | |||
>105</tspan></text> | >105</tspan></text> | |||
<rect | <rect | |||
x="50.558216" | x="50.558216" | |||
y="44.796646" | y="44.796646" | |||
width="16.734961" | width="16.734961" | |||
height="7.5306678" | height="7.5306678" | |||
skipping to change at line 7719 ¶ | skipping to change at line 7390 ¶ | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="57.9468" | x="57.9468" | |||
y="44.359524" | y="44.359524" | |||
transform="scale(0.92084851,1.0859549)">MPLS<tspan | transform="scale(0.92084851,1.0859549)">MPLS<tspan | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="63.840206" | x="63.840206" | |||
y="44.359524" | y="44.359524" | |||
>F</tspan><tspan | >F-Label</tspan><tspan | |||
font-size="1.91299px" | ||||
x="64.851494" | ||||
y="44.359524" | ||||
>-</tspan><tspan | ||||
font-size="1.91299px" | ||||
x="65.653549" | ||||
y="44.359524" | ||||
>label</tspan><tspan | ||||
font-size="1.91299px" | font-size="1.91299px" | |||
x="61.208088" | x="61.208088" | |||
y="46.750759" | y="46.750759" | |||
>20000</tspan></text> | >20000</tspan></text> | |||
<rect | <rect | |||
x="50.558216" | x="50.558216" | |||
y="29.735331" | y="29.735331" | |||
width="8.3675013" | width="8.3675013" | |||
height="7.6605062" | height="7.6605062" | |||
skipping to change at line 7756 ¶ | skipping to change at line 7417 ¶ | |||
font-size="1.43475px" | font-size="1.43475px" | |||
x="57.584278" | x="57.584278" | |||
y="29.414297" | y="29.414297" | |||
transform="scale(0.92084851,1.0859549)">MPLS<tspan | transform="scale(0.92084851,1.0859549)">MPLS<tspan | |||
font-size="1.43475px" | font-size="1.43475px" | |||
x="57.165817" | x="57.165817" | |||
y="31.088161" | y="31.088161" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.43475px" | ||||
x="57.967873" | ||||
y="31.088161" | ||||
>-</tspan><tspan | ||||
font-size="1.43475px" | ||||
x="58.560696" | ||||
y="31.088161" | ||||
>label</tspan><tspan | ||||
font-size="1.91299px" | font-size="1.91299px" | |||
x="57.775356" | x="57.775356" | |||
y="33.359844" | y="33.359844" | |||
>102</tspan></text> | >102</tspan></text> | |||
<rect | <rect | |||
x="50.558216" | x="50.558216" | |||
y="22.204676" | y="22.204676" | |||
width="8.3675013" | width="8.3675013" | |||
height="7.660481" | height="7.660481" | |||
skipping to change at line 7790 ¶ | skipping to change at line 7441 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="58.735786" | x="58.735786" | |||
y="22.718824" | y="22.718824" | |||
transform="scale(0.92084851,1.0859549)">IP<tspan | transform="scale(0.92084851,1.0859549)">IP<tspan | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="57.008881" | x="56.008881" | |||
y="24.512253" | y="24.512253" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="57.008881" | x="56.008881" | |||
y="26.305681" | y="26.305681" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<rect | <rect | |||
x="58.925674" | x="58.925674" | |||
y="22.204676" | y="22.204676" | |||
width="8.3674803" | width="8.3674803" | |||
height="7.660481" | height="7.660481" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.278978" | stroke-width="0.278978" | |||
skipping to change at line 7817 ¶ | skipping to change at line 7468 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="67.830025" | x="67.830025" | |||
y="22.718824" | y="22.718824" | |||
transform="scale(0.92084851,1.0859549)">IP<tspan | transform="scale(0.92084851,1.0859549)">IP<tspan | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="66.103119" | x="65.103119" | |||
y="24.512253" | y="24.512253" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="66.103119" | x="65.103119" | |||
y="26.305681" | y="26.305681" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<rect | <rect | |||
x="50.558216" | x="50.558216" | |||
y="14.803868" | y="14.803868" | |||
width="8.3675013" | width="8.3675013" | |||
height="7.5306678" | height="7.5306678" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.278978" | stroke-width="0.278978" | |||
skipping to change at line 7888 ¶ | skipping to change at line 7539 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="2.74992px" | font-size="2.74992px" | |||
x="10.462574" | x="10.462574" | |||
y="49.859375" | y="49.859375" | |||
transform="scale(0.92084851,1.0859549)">IP <tspan | transform="scale(0.92084851,1.0859549)">IP <tspan | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="14.019544" | x="13.019544" | |||
y="49.859375" | y="49.859375" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="13.984626" | x="13.019544" | |||
y="52.370171" | y="52.370171" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<rect | <rect | |||
x="50.558216" | x="50.558216" | |||
y="37.26598" | y="37.26598" | |||
width="16.734961" | width="16.734961" | |||
height="7.6605062" | height="7.6605062" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.278978" | stroke-width="0.278978" | |||
skipping to change at line 7918 ¶ | skipping to change at line 7569 ¶ | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="57.77232" | x="57.77232" | |||
y="37.424942" | y="37.424942" | |||
transform="scale(0.92084851,1.0859549)">MPLS<tspan | transform="scale(0.92084851,1.0859549)">MPLS<tspan | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="63.665733" | x="63.665733" | |||
y="37.424942" | y="37.424942" | |||
>A-label</tspan><tspan | >A-Label</tspan><tspan | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="61.765884" | x="61.765884" | |||
y="39.816174" | y="39.816174" | |||
>1000</tspan></text> | >1000</tspan></text> | |||
<rect | <rect | |||
x="78.633316" | x="78.633316" | |||
y="44.796646" | y="44.796646" | |||
width="16.734961" | width="16.734961" | |||
height="7.5306678" | height="7.5306678" | |||
skipping to change at line 7945 ¶ | skipping to change at line 7596 ¶ | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="88.430183" | x="88.430183" | |||
y="44.359524" | y="44.359524" | |||
transform="scale(0.92084851,1.0859549)">MPLS<tspan | transform="scale(0.92084851,1.0859549)">MPLS<tspan | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="94.323647" | x="94.323647" | |||
y="44.359524" | y="44.359524" | |||
>F</tspan><tspan | >F-Label</tspan><tspan | |||
font-size="1.91299px" | ||||
x="95.334923" | ||||
y="44.359524" | ||||
>-</tspan><tspan | ||||
font-size="1.91299px" | ||||
x="96.136978" | ||||
y="44.359524" | ||||
>label</tspan><tspan | ||||
font-size="1.91299px" | font-size="1.91299px" | |||
x="91.691467" | x="91.691467" | |||
y="46.750759" | y="46.750759" | |||
>20001</tspan></text> | >20001</tspan></text> | |||
<rect | <rect | |||
x="78.853516" | x="78.853516" | |||
y="109.19672" | y="109.19672" | |||
width="16.734961" | width="16.734961" | |||
height="7.6605062" | height="7.6605062" | |||
skipping to change at line 7982 ¶ | skipping to change at line 7623 ¶ | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="88.656288" | x="88.656288" | |||
y="103.66222" | y="103.66222" | |||
transform="scale(0.92084851,1.0859549)">MPLS<tspan | transform="scale(0.92084851,1.0859549)">MPLS<tspan | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="94.549698" | x="94.549698" | |||
y="103.66222" | y="103.66222" | |||
>F</tspan><tspan | >F-Label</tspan><tspan | |||
font-size="1.91299px" | ||||
x="95.560974" | ||||
y="103.66222" | ||||
>-</tspan><tspan | ||||
font-size="1.91299px" | ||||
x="96.363037" | ||||
y="103.66222" | ||||
>label</tspan><tspan | ||||
font-size="1.91299px" | font-size="1.91299px" | |||
x="91.917526" | x="91.917526" | |||
y="106.05347" | y="106.05347" | |||
>20002</tspan></text> | >20002</tspan></text> | |||
<rect | <rect | |||
x="78.633316" | x="78.633316" | |||
y="37.26598" | y="37.26598" | |||
width="16.734961" | width="16.734961" | |||
height="7.6605062" | height="7.6605062" | |||
skipping to change at line 8019 ¶ | skipping to change at line 7650 ¶ | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="88.255699" | x="88.255699" | |||
y="37.424942" | y="37.424942" | |||
transform="scale(0.92084851,1.0859549)">MPLS<tspan | transform="scale(0.92084851,1.0859549)">MPLS<tspan | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="94.149109" | x="94.149109" | |||
y="37.424942" | y="37.424942" | |||
>A-label</tspan><tspan | >A-Label</tspan><tspan | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="92.249329" | x="92.249329" | |||
y="39.816174" | y="39.816174" | |||
>1001</tspan></text> | >1001</tspan></text> | |||
<rect | <rect | |||
x="78.853516" | x="78.853516" | |||
y="101.79588" | y="101.79588" | |||
width="16.734961" | width="16.734961" | |||
height="7.530654" | height="7.530654" | |||
skipping to change at line 8046 ¶ | skipping to change at line 7677 ¶ | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="88.481865" | x="88.481865" | |||
y="96.727638" | y="96.727638" | |||
transform="scale(0.92084851,1.0859549)">MPLS<tspan | transform="scale(0.92084851,1.0859549)">MPLS<tspan | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="94.375275" | x="94.375275" | |||
y="96.727638" | y="96.727638" | |||
>A-label</tspan><tspan | >A-Label</tspan><tspan | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="92.475433" | x="92.475433" | |||
y="99.118874" | y="99.118874" | |||
>1001</tspan></text> | >1001</tspan></text> | |||
<rect | <rect | |||
x="78.633316" | x="78.633316" | |||
y="29.735331" | y="29.735331" | |||
width="8.3674803" | width="8.3674803" | |||
height="7.6605062" | height="7.6605062" | |||
skipping to change at line 8073 ¶ | skipping to change at line 7704 ¶ | |||
font-size="1.43475px" | font-size="1.43475px" | |||
x="88.067657" | x="88.067657" | |||
y="29.414297" | y="29.414297" | |||
transform="scale(0.92084851,1.0859549)">MPLS<tspan | transform="scale(0.92084851,1.0859549)">MPLS<tspan | |||
font-size="1.43475px" | font-size="1.43475px" | |||
x="87.6492" | x="87.6492" | |||
y="31.088161" | y="31.088161" | |||
>S-label</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="88.258743" | x="88.258743" | |||
y="33.359844" | y="33.359844" | |||
>102</tspan></text> | >102</tspan></text> | |||
<rect | <rect | |||
x="78.633316" | x="78.633316" | |||
y="22.204676" | y="22.204676" | |||
width="8.3674803" | width="8.3674803" | |||
height="7.660481" | height="7.660481" | |||
skipping to change at line 8097 ¶ | skipping to change at line 7728 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="89.21917" | x="89.21917" | |||
y="22.718824" | y="22.718824" | |||
transform="scale(0.92084851,1.0859549)">IP<tspan | transform="scale(0.92084851,1.0859549)">IP<tspan | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="87.492264" | x="86.492264" | |||
y="24.512253" | y="24.512253" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="87.492264" | x="86.492264" | |||
y="26.305681" | y="26.305681" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<rect | <rect | |||
x="78.633316" | x="78.633316" | |||
y="14.803868" | y="14.803868" | |||
width="8.3674803" | width="8.3674803" | |||
height="7.5306678" | height="7.5306678" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.278978" | stroke-width="0.278978" | |||
skipping to change at line 8159 ¶ | skipping to change at line 7790 ¶ | |||
>S</tspan><tspan | >S</tspan><tspan | |||
font-size="1.43475px" | font-size="1.43475px" | |||
x="97.545494" | x="97.545494" | |||
y="31.088161" | y="31.088161" | |||
>-</tspan><tspan | >-</tspan><tspan | |||
font-size="1.43475px" | font-size="1.43475px" | |||
x="98.138313" | x="98.138313" | |||
y="31.088161" | y="31.088161" | |||
>label</tspan><tspan | >Label</tspan><tspan | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="97.352982" | x="97.352982" | |||
y="33.359844" | y="33.359844" | |||
>105</tspan></text> | >105</tspan></text> | |||
<rect | <rect | |||
x="87.000771" | x="87.000771" | |||
y="22.204676" | y="22.204676" | |||
width="8.3674803" | width="8.3674803" | |||
height="7.660481" | height="7.660481" | |||
skipping to change at line 8183 ¶ | skipping to change at line 7814 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="98.3134" | x="98.3134" | |||
y="22.718824" | y="22.718824" | |||
transform="scale(0.92084851,1.0859549)">IP<tspan | transform="scale(0.92084851,1.0859549)">IP<tspan | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="96.586502" | x="95.586502" | |||
y="24.512253" | y="24.512253" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="96.586502" | x="95.586502" | |||
y="26.305681" | y="26.305681" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<rect | <rect | |||
x="87.000771" | x="87.000771" | |||
y="14.803868" | y="14.803868" | |||
width="8.3674803" | width="8.3674803" | |||
height="7.5306678" | height="7.5306678" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.278978" | stroke-width="0.278978" | |||
skipping to change at line 8235 ¶ | skipping to change at line 7866 ¶ | |||
font-size="1.43475px" | font-size="1.43475px" | |||
x="88.293762" | x="88.293762" | |||
y="88.836555" | y="88.836555" | |||
transform="scale(0.92084851,1.0859549)">MPLS<tspan | transform="scale(0.92084851,1.0859549)">MPLS<tspan | |||
font-size="1.43475px" | font-size="1.43475px" | |||
x="87.875305" | x="87.875305" | |||
y="90.510422" | y="90.510422" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.43475px" | ||||
x="88.677361" | ||||
y="90.510422" | ||||
>-</tspan><tspan | ||||
font-size="1.43475px" | ||||
x="89.270187" | ||||
y="90.510422" | ||||
>label</tspan><tspan | ||||
font-size="1.91299px" | font-size="1.91299px" | |||
x="88.484901" | x="88.484901" | |||
y="92.782097" | y="92.782097" | |||
>102</tspan></text> | >102</tspan></text> | |||
<rect | <rect | |||
x="87.22097" | x="87.22097" | |||
y="94.395096" | y="94.395096" | |||
width="8.3674803" | width="8.3674803" | |||
height="7.5306678" | height="7.5306678" | |||
skipping to change at line 8272 ¶ | skipping to change at line 7893 ¶ | |||
font-size="1.43475px" | font-size="1.43475px" | |||
x="97.42115" | x="97.42115" | |||
y="88.836555" | y="88.836555" | |||
transform="scale(0.92084851,1.0859549)">MPLS<tspan | transform="scale(0.92084851,1.0859549)">MPLS<tspan | |||
font-size="1.43475px" | font-size="1.43475px" | |||
x="97.002693" | x="97.002693" | |||
y="90.510422" | y="90.510422" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.43475px" | ||||
x="97.804741" | ||||
y="90.510422" | ||||
>-</tspan><tspan | ||||
font-size="1.43475px" | ||||
x="98.397575" | ||||
y="90.510422" | ||||
>label</tspan><tspan | ||||
font-size="1.91299px" | font-size="1.91299px" | |||
x="97.612244" | x="97.612244" | |||
y="92.782097" | y="92.782097" | |||
>105</tspan></text> | >105</tspan></text> | |||
<rect | <rect | |||
x="78.853516" | x="78.853516" | |||
y="86.864433" | y="86.864433" | |||
width="8.3674803" | width="8.3674803" | |||
height="7.530642" | height="7.530642" | |||
skipping to change at line 8306 ¶ | skipping to change at line 7917 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="89.445267" | x="89.445267" | |||
y="82.260643" | y="82.260643" | |||
transform="scale(0.92084851,1.0859549)">IP<tspan | transform="scale(0.92084851,1.0859549)">IP<tspan | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="87.718422" | x="86.718422" | |||
y="84.054077" | y="84.054077" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="87.718422" | x="86.718422" | |||
y="85.847504" | y="85.847504" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<rect | <rect | |||
x="87.22097" | x="87.22097" | |||
y="86.864433" | y="86.864433" | |||
width="8.3674803" | width="8.3674803" | |||
height="7.530642" | height="7.530642" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.278978" | stroke-width="0.278978" | |||
skipping to change at line 8333 ¶ | skipping to change at line 7944 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="98.572662" | x="98.572662" | |||
y="82.260643" | y="82.260643" | |||
transform="scale(0.92084851,1.0859549)">IP<tspan | transform="scale(0.92084851,1.0859549)">IP<tspan | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="96.845764" | x="95.845764" | |||
y="84.054077" | y="84.054077" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="96.845764" | x="95.845764" | |||
y="85.847504" | y="85.847504" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<rect | <rect | |||
x="78.853516" | x="78.853516" | |||
y="79.463615" | y="79.463615" | |||
width="8.3674803" | width="8.3674803" | |||
height="7.530642" | height="7.530642" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.278978" | stroke-width="0.278978" | |||
skipping to change at line 8407 ¶ | skipping to change at line 8018 ¶ | |||
font-size="1.43475px" | font-size="1.43475px" | |||
x="128.18581" | x="128.18581" | |||
y="29.414297" | y="29.414297" | |||
transform="scale(0.92084851,1.0859549)">MPLS<tspan | transform="scale(0.92084851,1.0859549)">MPLS<tspan | |||
font-size="1.43475px" | font-size="1.43475px" | |||
x="127.76733" | x="127.76733" | |||
y="31.088161" | y="31.088161" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.43475px" | ||||
x="128.5694" | ||||
y="31.088161" | ||||
>-</tspan><tspan | ||||
font-size="1.43475px" | ||||
x="129.16223" | ||||
y="31.088161" | ||||
>label</tspan><tspan | ||||
font-size="1.91299px" | font-size="1.91299px" | |||
x="128.37694" | x="128.37694" | |||
y="33.359844" | y="33.359844" | |||
>105</tspan></text> | >105</tspan></text> | |||
<rect | <rect | |||
x="107.14881" | x="107.14881" | |||
y="44.796646" | y="44.796646" | |||
width="16.845058" | width="16.845058" | |||
height="7.5306678" | height="7.5306678" | |||
skipping to change at line 8444 ¶ | skipping to change at line 8045 ¶ | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="119.45421" | x="119.45421" | |||
y="44.359524" | y="44.359524" | |||
transform="scale(0.92084851,1.0859549)">MPLS<tspan | transform="scale(0.92084851,1.0859549)">MPLS<tspan | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="125.3476" | x="125.3476" | |||
y="44.359524" | y="44.359524" | |||
>F</tspan><tspan | >F-Label</tspan><tspan | |||
font-size="1.91299px" | ||||
x="126.35893" | ||||
y="44.359524" | ||||
>-</tspan><tspan | ||||
font-size="1.91299px" | ||||
x="127.161" | ||||
y="44.359524" | ||||
>label</tspan><tspan | ||||
font-size="1.91299px" | font-size="1.91299px" | |||
x="122.71549" | x="122.71549" | |||
y="46.750759" | y="46.750759" | |||
>20003</tspan></text> | >20003</tspan></text> | |||
<rect | <rect | |||
x="107.25889" | x="107.25889" | |||
y="109.19672" | y="109.19672" | |||
width="16.734961" | width="16.734961" | |||
height="7.6605062" | height="7.6605062" | |||
skipping to change at line 8481 ¶ | skipping to change at line 8072 ¶ | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="119.47336" | x="119.47336" | |||
y="103.66222" | y="103.66222" | |||
transform="scale(0.92084851,1.0859549)">MPLS<tspan | transform="scale(0.92084851,1.0859549)">MPLS<tspan | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="125.36674" | x="125.36674" | |||
y="103.66222" | y="103.66222" | |||
>F</tspan><tspan | >F-Label</tspan><tspan | |||
font-size="1.91299px" | ||||
x="126.37802" | ||||
y="103.66222" | ||||
>-</tspan><tspan | ||||
font-size="1.91299px" | ||||
x="127.18009" | ||||
y="103.66222" | ||||
>label</tspan><tspan | ||||
font-size="1.91299px" | font-size="1.91299px" | |||
x="122.73457" | x="122.73457" | |||
y="106.05347" | y="106.05347" | |||
>20004</tspan></text> | >20004</tspan></text> | |||
<rect | <rect | |||
x="107.25889" | x="107.25889" | |||
y="101.79588" | y="101.79588" | |||
width="16.734961" | width="16.734961" | |||
height="7.530654" | height="7.530654" | |||
skipping to change at line 8518 ¶ | skipping to change at line 8099 ¶ | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="119.2988" | x="119.2988" | |||
y="96.727638" | y="96.727638" | |||
transform="scale(0.92084851,1.0859549)">MPLS<tspan | transform="scale(0.92084851,1.0859549)">MPLS<tspan | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="125.19222" | x="125.19222" | |||
y="96.727638" | y="96.727638" | |||
>A-label</tspan><tspan | >A-Label</tspan><tspan | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="123.29238" | x="123.29238" | |||
y="99.118874" | y="99.118874" | |||
>1001</tspan></text> | >1001</tspan></text> | |||
<rect | <rect | |||
x="107.14881" | x="107.14881" | |||
y="37.26598" | y="37.26598" | |||
width="16.845058" | width="16.845058" | |||
height="7.6605062" | height="7.6605062" | |||
skipping to change at line 8545 ¶ | skipping to change at line 8126 ¶ | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="119.27966" | x="119.27966" | |||
y="37.424942" | y="37.424942" | |||
transform="scale(0.92084851,1.0859549)">MPLS<tspan | transform="scale(0.92084851,1.0859549)">MPLS<tspan | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="125.17307" | x="125.17307" | |||
y="37.424942" | y="37.424942" | |||
>A-label</tspan><tspan | >A-Label</tspan><tspan | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="123.27324" | x="123.27324" | |||
y="39.816174" | y="39.816174" | |||
>1001</tspan></text> | >1001</tspan></text> | |||
<rect | <rect | |||
x="107.14881" | x="107.14881" | |||
y="29.735331" | y="29.735331" | |||
width="8.3674803" | width="8.3674803" | |||
height="7.6605062" | height="7.6605062" | |||
skipping to change at line 8572 ¶ | skipping to change at line 8153 ¶ | |||
font-size="1.43475px" | font-size="1.43475px" | |||
x="119.0908" | x="119.0908" | |||
y="29.414297" | y="29.414297" | |||
transform="scale(0.92084851,1.0859549)">MPLS<tspan | transform="scale(0.92084851,1.0859549)">MPLS<tspan | |||
font-size="1.43475px" | font-size="1.43475px" | |||
x="118.67229" | x="118.67229" | |||
y="31.088161" | y="31.088161" | |||
>S-label</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="119.28188" | x="119.28188" | |||
y="33.359844" | y="33.359844" | |||
>102</tspan></text> | >102</tspan></text> | |||
<rect | <rect | |||
x="107.14881" | x="107.14881" | |||
y="22.204676" | y="22.204676" | |||
width="8.3674803" | width="8.3674803" | |||
height="7.660481" | height="7.660481" | |||
skipping to change at line 8596 ¶ | skipping to change at line 8177 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="120.24334" | x="120.24334" | |||
y="22.718824" | y="22.718824" | |||
transform="scale(0.92084851,1.0859549)">IP<tspan | transform="scale(0.92084851,1.0859549)">IP<tspan | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="118.51652" | x="117.51652" | |||
y="24.512253" | y="24.512253" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="118.51652" | x="117.51652" | |||
y="26.305681" | y="26.305681" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<rect | <rect | |||
x="115.51627" | x="115.51627" | |||
y="22.204676" | y="22.204676" | |||
width="8.4775782" | width="8.4775782" | |||
height="7.660481" | height="7.660481" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.278978" | stroke-width="0.278978" | |||
skipping to change at line 8623 ¶ | skipping to change at line 8204 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="129.33725" | x="129.33725" | |||
y="22.718824" | y="22.718824" | |||
transform="scale(0.92084851,1.0859549)">IP<tspan | transform="scale(0.92084851,1.0859549)">IP<tspan | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="127.61037" | x="126.61037" | |||
y="24.512253" | y="24.512253" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="127.61037" | x="126.61037" | |||
y="26.305681" | y="26.305681" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<rect | <rect | |||
x="107.14881" | x="107.14881" | |||
y="14.803868" | y="14.803868" | |||
width="8.3674803" | width="8.3674803" | |||
height="7.5306678" | height="7.5306678" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.278978" | stroke-width="0.278978" | |||
skipping to change at line 8697 ¶ | skipping to change at line 8278 ¶ | |||
font-size="1.43475px" | font-size="1.43475px" | |||
x="119.0908" | x="119.0908" | |||
y="88.836555" | y="88.836555" | |||
transform="scale(0.92084851,1.0859549)">MPLS<tspan | transform="scale(0.92084851,1.0859549)">MPLS<tspan | |||
font-size="1.43475px" | font-size="1.43475px" | |||
x="118.67229" | x="118.67229" | |||
y="90.510422" | y="90.510422" | |||
>S-label</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="119.28188" | x="119.28188" | |||
y="92.782097" | y="92.782097" | |||
>102</tspan></text> | >102</tspan></text> | |||
<rect | <rect | |||
x="115.6264" | x="115.6264" | |||
y="94.395096" | y="94.395096" | |||
width="8.3674803" | width="8.3674803" | |||
height="7.5306678" | height="7.5306678" | |||
skipping to change at line 8724 ¶ | skipping to change at line 8305 ¶ | |||
font-size="1.43475px" | font-size="1.43475px" | |||
x="128.205" | x="128.205" | |||
y="88.836555" | y="88.836555" | |||
transform="scale(0.92084851,1.0859549)">MPLS<tspan | transform="scale(0.92084851,1.0859549)">MPLS<tspan | |||
font-size="1.43475px" | font-size="1.43475px" | |||
x="127.78648" | x="127.78648" | |||
y="90.510422" | y="90.510422" | |||
>S-label</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="128.39609" | x="128.39609" | |||
y="92.782097" | y="92.782097" | |||
>105</tspan></text> | >105</tspan></text> | |||
<rect | <rect | |||
x="107.14881" | x="107.14881" | |||
y="86.864433" | y="86.864433" | |||
width="8.3674803" | width="8.3674803" | |||
height="7.530642" | height="7.530642" | |||
skipping to change at line 8748 ¶ | skipping to change at line 8329 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="120.24334" | x="120.24334" | |||
y="82.260643" | y="82.260643" | |||
transform="scale(0.92084851,1.0859549)">IP<tspan | transform="scale(0.92084851,1.0859549)">IP<tspan | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="118.51652" | x="117.51652" | |||
y="84.054077" | y="84.054077" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="118.51652" | x="117.51652" | |||
y="85.847504" | y="85.847504" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<rect | <rect | |||
x="115.6264" | x="115.6264" | |||
y="86.864433" | y="86.864433" | |||
width="8.3674803" | width="8.3674803" | |||
height="7.530642" | height="7.530642" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.278978" | stroke-width="0.278978" | |||
skipping to change at line 8775 ¶ | skipping to change at line 8356 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="129.35634" | x="129.35634" | |||
y="82.260643" | y="82.260643" | |||
transform="scale(0.92084851,1.0859549)">IP<tspan | transform="scale(0.92084851,1.0859549)">IP<tspan | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="127.62944" | x="126.62944" | |||
y="84.054077" | y="84.054077" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="127.62944" | x="126.62944" | |||
y="85.847504" | y="85.847504" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<rect | <rect | |||
x="107.14881" | x="107.14881" | |||
y="79.463615" | y="79.463615" | |||
width="8.3674803" | width="8.3674803" | |||
height="7.530642" | height="7.530642" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.278978" | stroke-width="0.278978" | |||
skipping to change at line 8849 ¶ | skipping to change at line 8430 ¶ | |||
font-size="1.43475px" | font-size="1.43475px" | |||
x="158.93114" | x="158.93114" | |||
y="29.414297" | y="29.414297" | |||
transform="scale(0.92084851,1.0859549)">MPLS<tspan | transform="scale(0.92084851,1.0859549)">MPLS<tspan | |||
font-size="1.43475px" | font-size="1.43475px" | |||
x="158.51268" | x="158.51268" | |||
y="31.088161" | y="31.088161" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.43475px" | ||||
x="159.31476" | ||||
y="31.088161" | ||||
>-</tspan><tspan | ||||
font-size="1.43475px" | ||||
x="159.90758" | ||||
y="31.088161" | ||||
>label</tspan><tspan | ||||
font-size="1.91299px" | font-size="1.91299px" | |||
x="159.12227" | x="159.12227" | |||
y="33.359844" | y="33.359844" | |||
>105</tspan></text> | >105</tspan></text> | |||
<rect | <rect | |||
x="135.5542" | x="135.5542" | |||
y="44.796646" | y="44.796646" | |||
width="16.734961" | width="16.734961" | |||
height="7.5306678" | height="7.5306678" | |||
skipping to change at line 8886 ¶ | skipping to change at line 8457 ¶ | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="150.19954" | x="150.19954" | |||
y="44.359524" | y="44.359524" | |||
transform="scale(0.92084851,1.0859549)">MPLS<tspan | transform="scale(0.92084851,1.0859549)">MPLS<tspan | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="156.09296" | x="156.09296" | |||
y="44.359524" | y="44.359524" | |||
>F</tspan><tspan | >F-Label</tspan><tspan | |||
font-size="1.91299px" | ||||
x="157.10428" | ||||
y="44.359524" | ||||
>-</tspan><tspan | ||||
font-size="1.91299px" | ||||
x="157.90636" | ||||
y="44.359524" | ||||
>label</tspan><tspan | ||||
font-size="1.91299px" | font-size="1.91299px" | |||
x="153.46083" | x="153.46083" | |||
y="46.750759" | y="46.750759" | |||
>20005</tspan></text> | >20005</tspan></text> | |||
<rect | <rect | |||
x="135.5542" | x="135.5542" | |||
y="29.735331" | y="29.735331" | |||
width="8.3674803" | width="8.3674803" | |||
height="7.6605062" | height="7.6605062" | |||
skipping to change at line 8923 ¶ | skipping to change at line 8484 ¶ | |||
font-size="1.43475px" | font-size="1.43475px" | |||
x="149.8373" | x="149.8373" | |||
y="29.414297" | y="29.414297" | |||
transform="scale(0.92084851,1.0859549)">MPLS<tspan | transform="scale(0.92084851,1.0859549)">MPLS<tspan | |||
font-size="1.43475px" | font-size="1.43475px" | |||
x="149.41884" | x="149.41884" | |||
y="31.088161" | y="31.088161" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.43475px" | ||||
x="150.22089" | ||||
y="31.088161" | ||||
>-</tspan><tspan | ||||
font-size="1.43475px" | ||||
x="150.81372" | ||||
y="31.088161" | ||||
>label</tspan><tspan | ||||
font-size="1.91299px" | font-size="1.91299px" | |||
x="150.02837" | x="150.02837" | |||
y="33.359844" | y="33.359844" | |||
>102</tspan></text> | >102</tspan></text> | |||
<rect | <rect | |||
x="135.5542" | x="135.5542" | |||
y="22.204676" | y="22.204676" | |||
width="8.3674803" | width="8.3674803" | |||
height="7.660481" | height="7.660481" | |||
skipping to change at line 8957 ¶ | skipping to change at line 8508 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="150.98869" | x="150.98869" | |||
y="22.718824" | y="22.718824" | |||
transform="scale(0.92084851,1.0859549)">IP<tspan | transform="scale(0.92084851,1.0859549)">IP<tspan | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="149.26186" | x="148.26186" | |||
y="24.512253" | y="24.512253" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="149.26186" | x="148.26186" | |||
y="26.305681" | y="26.305681" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<rect | <rect | |||
x="143.92168" | x="143.92168" | |||
y="22.204676" | y="22.204676" | |||
width="8.3674803" | width="8.3674803" | |||
height="7.660481" | height="7.660481" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.278978" | stroke-width="0.278978" | |||
skipping to change at line 8984 ¶ | skipping to change at line 8535 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="160.08261" | x="160.08261" | |||
y="22.718824" | y="22.718824" | |||
transform="scale(0.92084851,1.0859549)">IP<tspan | transform="scale(0.92084851,1.0859549)">IP<tspan | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="158.3557" | x="157.3557" | |||
y="24.512253" | y="24.512253" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="1.55431px" | font-size="1.55431px" | |||
x="158.3557" | x="157.3557" | |||
y="26.305681" | y="26.305681" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<rect | <rect | |||
x="135.5542" | x="135.5542" | |||
y="14.803868" | y="14.803868" | |||
width="8.3674803" | width="8.3674803" | |||
height="7.5306678" | height="7.5306678" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.278978" | stroke-width="0.278978" | |||
skipping to change at line 9058 ¶ | skipping to change at line 8609 ¶ | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="150.02502" | x="150.02502" | |||
y="37.424942" | y="37.424942" | |||
transform="scale(0.92084851,1.0859549)">MPLS<tspan | transform="scale(0.92084851,1.0859549)">MPLS<tspan | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="155.91843" | x="155.91843" | |||
y="37.424942" | y="37.424942" | |||
>A-label</tspan><tspan | >A-Label</tspan><tspan | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="154.01859" | x="154.01859" | |||
y="39.816174" | y="39.816174" | |||
>1002</tspan></text> | >1002</tspan></text> | |||
<rect | <rect | |||
x="180.36424" | x="180.36424" | |||
y="50.509552" | y="50.509552" | |||
width="16.624861" | width="16.624861" | |||
height="7.4007897" | height="7.4007897" | |||
skipping to change at line 9082 ¶ | skipping to change at line 8633 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="2.74992px" | font-size="2.74992px" | |||
x="200.07483" | x="200.07483" | |||
y="49.859375" | y="49.859375" | |||
transform="scale(0.92084851,1.0859549)">IP <tspan | transform="scale(0.92084851,1.0859549)">IP <tspan | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="203.63179" | x="202.63179" | |||
y="49.859375" | y="49.859375" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="1.91299px" | font-size="1.91299px" | |||
x="203.59692" | x="202.59692" | |||
y="52.370171" | y="52.370171" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<path | <path | |||
d="m 39.644715,64.012797 c -0.190043,0 -0.344048,-0.726579 -0.344048,-1.6 22985 0,-0.896411 0.154005,-1.62299 0.344048,-1.62299 0.190042,0 0.344047,0.7265 79 0.344047,1.62299 0,0.896406 -0.154005,1.622985 -0.344047,1.622985 H 20.955519 c -0.190044,0 -0.344087,-0.726579 -0.344087,-1.622985 0,-0.896411 0.154043,-1.6 2299 0.344087,-1.62299 h 18.689196" | d="m 39.644715,64.012797 c -0.190043,0 -0.344048,-0.726579 -0.344048,-1.6 22985 0,-0.896411 0.154005,-1.62299 0.344048,-1.62299 0.190042,0 0.344047,0.7265 79 0.344047,1.62299 0,0.896406 -0.154005,1.622985 -0.344047,1.622985 H 20.955519 c -0.190044,0 -0.344087,-0.726579 -0.344087,-1.622985 0,-0.896411 0.154043,-1.6 2299 0.344087,-1.62299 h 18.689196" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.278978" | stroke-width="0.278978" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
skipping to change at line 9219 ¶ | skipping to change at line 8770 ¶ | |||
font-size="4.61682px" | font-size="4.61682px" | |||
x="150.25476" | x="150.25476" | |||
y="91.128922" | y="91.128922" | |||
transform="scale(0.84661926,1.1811685)">E<tspan | transform="scale(0.84661926,1.1811685)">E<tspan | |||
font-size="3.6275px" | font-size="3.6275px" | |||
x="162.79132" | x="162.79132" | |||
y="82.884621" | y="82.884621" | |||
>Notes:</tspan><tspan | >Note:</tspan><tspan | |||
font-size="3.6275px" | font-size="3.6275px" | |||
x="162.79132" | x="162.79132" | |||
y="87.171661" | y="87.171661" | |||
>-</tspan><tspan | >-</tspan><tspan | |||
font-size="3.6275px" | font-size="3.6275px" | |||
x="168.56235" | x="168.56235" | |||
y="87.171661" | y="87.171661" | |||
>S and A labels in this diagram include d-CWs</tspan><tspan | >S- and A-Labels in this diagram include</tspan><tspan | |||
font-size="3.6275px" | font-size="3.6275px" | |||
x="168.56235" | x="168.56235" | |||
y="91.458702" | y="91.458702" | |||
>of their own.</tspan></text> | > d-CWs of their own.</tspan></text> | |||
<path | <path | |||
d="m 37.841833,54.27332 c 0,-0.321738 0.221209,-0.582718 0.494144,-0.5827 18 h 14.315442 c 0.272932,0 0.4941,0.26098 0.4941,0.582718 v 17.920882 c 0,0.321 869 -0.221168,0.582717 -0.4941,0.582717 H 38.335977 c -0.272935,0 -0.494144,-0.2 60848 -0.494144,-0.582717 z" | d="m 37.841833,54.27332 c 0,-0.321738 0.221209,-0.582718 0.494144,-0.5827 18 h 14.315442 c 0.272932,0 0.4941,0.26098 0.4941,0.582718 v 17.920882 c 0,0.321 869 -0.221168,0.582717 -0.4941,0.582717 H 38.335977 c -0.272935,0 -0.494144,-0.2 60848 -0.494144,-0.582717 z" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.557954" | stroke-width="0.557954" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
stroke-dasharray="2.23184, 1.67387" | stroke-dasharray="2.23184, 1.67387" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
/> | /> | |||
<path | <path | |||
skipping to change at line 9268 ¶ | skipping to change at line 8819 ¶ | |||
transform="scale(0.92084851,1.0859549)">aggregation<tspan | transform="scale(0.92084851,1.0859549)">aggregation<tspan | |||
font-size="2.74992px" | font-size="2.74992px" | |||
x="163.04509" | x="163.04509" | |||
y="75.326057" | y="75.326057" | |||
>disaggregation</tspan></text> | >disaggregation</tspan></text> | |||
</g> | </g> | |||
</svg> | </svg> | |||
</artwork> | </artwork> | |||
</artset> | ||||
</figure> | </figure> | |||
<t> <xref target="example-detnet-json-service-aggregation-b-2"/> | <t> <xref target="example-detnet-json-service-aggregation-b-2"/> | |||
contains the operational JSON configuration for the ingress aggregat ion | contains the operational JSON configuration for the ingress aggregat ion | |||
node illustrated in <xref target="case-b2"/>. | node illustrated in <xref target="case-b2"/>. | |||
In this example, service sub-layer ssl-1 for DetNet flow DN1 | In this example, service sub-layer ssl-1 for DetNet flow DN-1 | |||
and ssl-2 for flow DN2 aggregate at service sub-layer Detet flow asl | and ssl-2 for DetNet flow DN-2 aggregate at service sub-layer DetNet | |||
-1. | flow asl-1. | |||
In this example an aggregation service sub-layer asl-1 is created | In this example, an aggregation service sub-layer, asl-1, is created | |||
to aggregated ssl-1 and ssl2 and that label is encapsulated in a | to aggregate ssl-1 and ssl2, and that label is encapsulated in a | |||
separate forwarding sub-layer afl-1 with MPLS labels. | separate forwarding sub-layer, afl-1, with MPLS labels. | |||
</t> | </t> | |||
<figure anchor="example-detnet-json-service-aggregation-b-2"> | <figure anchor="example-detnet-json-service-aggregation-b-2"> | |||
<name>Example B-2 DetNet Service Aggregation</name> | <name>Example B-2: DetNet Service Aggregation</name> | |||
<artwork name="" type="" align="left" alt=""><![CDATA[ | <sourcecode name="" type="json"><![CDATA[ | |||
{ | { | |||
"ietf-detnet:detnet": { | "ietf-detnet:detnet": { | |||
"traffic-profile": [ | "traffic-profile": [ | |||
{ | { | |||
"name": "1", | "name": "1", | |||
"traffic-requirements": { | "traffic-requirements": { | |||
"min-bandwidth": "100000000", | "min-bandwidth": "100000000", | |||
"max-latency": 100000000, | "max-latency": 100000000, | |||
"max-latency-variation": 20000000, | "max-latency-variation": 20000000, | |||
"max-loss": "0.0000001", | "max-loss": "0.0000001", | |||
skipping to change at line 9542 ¶ | skipping to change at line 9092 ¶ | |||
"name": "eth2", | "name": "eth2", | |||
"type": "iana-if-type:ethernetCsmacd", | "type": "iana-if-type:ethernetCsmacd", | |||
"oper-status": "up", | "oper-status": "up", | |||
"statistics": { | "statistics": { | |||
"discontinuity-time": "2024-02-21T18:59:00-05:00" | "discontinuity-time": "2024-02-21T18:59:00-05:00" | |||
} | } | |||
} | } | |||
] | ] | |||
} | } | |||
} | } | |||
]]></artwork> | ]]></sourcecode> | |||
</figure> | </figure> | |||
</section> | </section> | |||
<section numbered="true" toc="default"> | <section numbered="true" toc="default"> | |||
<name>Example C-1 JSON Relay Aggregation/Disaggregation Configurat ion</name> | <name>Example C-1: DetNet Relay Service Sub-layer</name> | |||
<t> | <t> | |||
<xref target="case-c1"/> illustrates the relay node's forwarding sub-layer | <xref target="case-c1"/> illustrates the DetNet relay node's for warding sub-layer | |||
flows 1 and 2 aggregated into a single forwarding sub-layer. | flows 1 and 2 aggregated into a single forwarding sub-layer. | |||
Service protection and resource allocation are | Service protection and resource allocation are | |||
performed by the corresponding service sub-layer and forwarding | performed by the corresponding service sub-layer and forwarding | |||
sub-layer of each flow. | sub-layer of each flow. | |||
A diagram illustrating both aggregation and disaggregation is sh | <xref target="case-c1"/> illustrates both aggregation and disagg | |||
own and then the | regation, and the | |||
corresponding JSON operational data follows. | corresponding JSON operational data follows.</t> | |||
</t> | ||||
<figure anchor="case-c1"> | <figure anchor="case-c1"> | |||
<name>Case C-1 Example Service Aggregation/Disaggregation</name> | <name>Case C-1: Example Service Aggregation/Disaggregation</name | |||
<artset> | > | |||
<artwork align="left" type="ascii-art" name="" alt=""><![CDATA[ | ||||
Please consult the PDF or HTML versions for the Case C-1 Diagram. | ||||
]]></artwork> | ||||
<artwork type="svg"> | <artwork type="svg"> | |||
<svg | <svg | |||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" | xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" | |||
xmlns:svg="http://www.w3.org/2000/svg" | xmlns:svg="http://www.w3.org/2000/svg" | |||
xmlns="http://www.w3.org/2000/svg" | xmlns="http://www.w3.org/2000/svg" | |||
width="180mm" | width="180mm" | |||
height="120mm" | height="120mm" | |||
viewBox="0 0 210 140" | viewBox="0 0 210 140" | |||
version="1.1" | version="1.1" | |||
> | > | |||
skipping to change at line 9705 ¶ | skipping to change at line 9248 ¶ | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.214721" | stroke-width="0.214721" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
/> | /> | |||
<text | <text | |||
font-size="2.82205px" | font-size="2.82205px" | |||
x="100.33884" | x="99.33884" | |||
y="83.672615" | y="83.672615" | |||
transform="scale(0.97023256,1.0306807)">Transit 2</text> | transform="scale(0.97023256,1.0306807)">Transit 2</text> | |||
<path | <path | |||
d="m 106.13875,77.517256 c 0,-0.3511 -0.26792,-0.63571 -0.59842,-0.63571 h -6.54112 c -0.330506,0 -0.598433,0.28461 -0.598433,0.63571 v 5.55757 c 0,0.351 09 0.267927,0.6357 0.598433,0.6357 h 6.54112 c 0.3305,0 0.59842,-0.28461 0.59842 ,-0.6357 z" | d="m 106.13875,77.517256 c 0,-0.3511 -0.26792,-0.63571 -0.59842,-0.63571 h -6.54112 c -0.330506,0 -0.598433,0.28461 -0.598433,0.63571 v 5.55757 c 0,0.351 09 0.267927,0.6357 0.598433,0.6357 h 6.54112 c 0.3305,0 0.59842,-0.28461 0.59842 ,-0.6357 z" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.286295" | stroke-width="0.286295" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
skipping to change at line 9730 ¶ | skipping to change at line 9273 ¶ | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.214721" | stroke-width="0.214721" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
/> | /> | |||
<text | <text | |||
font-size="2.82205px" | font-size="2.82205px" | |||
x="100.33884" | x="99.33884" | |||
y="51.525776" | y="51.525776" | |||
transform="scale(0.97023256,1.0306807)">Transit 1</text> | transform="scale(0.97023256,1.0306807)">Transit 1</text> | |||
<path | <path | |||
d="m 106.13875,44.510576 c 0,-0.3511 -0.26792,-0.63571 -0.59842,-0.63571 h -6.54112 c -0.330506,0 -0.598433,0.28461 -0.598433,0.63571 v 5.55757 c 0,0.351 08 0.267927,0.6357 0.598433,0.6357 h 6.54112 c 0.3305,0 0.59842,-0.28462 0.59842 ,-0.6357 z" | d="m 106.13875,44.510576 c 0,-0.3511 -0.26792,-0.63571 -0.59842,-0.63571 h -6.54112 c -0.330506,0 -0.598433,0.28461 -0.598433,0.63571 v 5.55757 c 0,0.351 08 0.267927,0.6357 0.598433,0.6357 h 6.54112 c 0.3305,0 0.59842,-0.28462 0.59842 ,-0.6357 z" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.286295" | stroke-width="0.286295" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
skipping to change at line 9874 ¶ | skipping to change at line 9417 ¶ | |||
stroke-width="0.286295" | stroke-width="0.286295" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.96317px" | font-size="1.96317px" | |||
x="83.311066" | x="83.311066" | |||
y="41.341846" | y="41.341846" | |||
transform="scale(0.97023256,1.0306807)">MPLS F<tspan | transform="scale(0.97023256,1.0306807)">MPLS F-Label<tspan | |||
font-size="1.96317px" | ||||
x="90.396866" | ||||
y="41.341846" | ||||
>-</tspan><tspan | ||||
font-size="1.96317px" | ||||
x="91.219971" | ||||
y="41.341846" | ||||
>label</tspan><tspan | ||||
font-size="1.96317px" | font-size="1.96317px" | |||
x="86.657852" | x="86.657852" | |||
y="43.795799" | y="43.795799" | |||
>20000</tspan></text> | >20000</tspan></text> | |||
<rect | <rect | |||
x="77.805916" | x="77.805916" | |||
y="109.88822" | y="109.88822" | |||
width="18.094917" | width="18.094917" | |||
height="7.4612932" | height="7.4612932" | |||
skipping to change at line 9906 ¶ | skipping to change at line 9439 ¶ | |||
stroke-width="0.286295" | stroke-width="0.286295" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.96317px" | font-size="1.96317px" | |||
x="83.320015" | x="83.320015" | |||
y="109.80728" | y="109.80728" | |||
transform="scale(0.97023256,1.0306807)">MPLS F<tspan | transform="scale(0.97023256,1.0306807)">MPLS F-Label<tspan | |||
font-size="1.96317px" | ||||
x="90.40583" | ||||
y="109.80728" | ||||
>-</tspan><tspan | ||||
font-size="1.96317px" | ||||
x="91.228935" | ||||
y="109.80728" | ||||
>label</tspan><tspan | ||||
font-size="1.96317px" | font-size="1.96317px" | |||
x="86.666817" | x="86.666817" | |||
y="112.26123" | y="112.26123" | |||
>20001</tspan></text> | >20001</tspan></text> | |||
<rect | <rect | |||
x="108.40061" | x="108.40061" | |||
y="39.448677" | y="39.448677" | |||
width="18.094917" | width="18.094917" | |||
height="7.3348303" | height="7.3348303" | |||
skipping to change at line 9938 ¶ | skipping to change at line 9461 ¶ | |||
stroke-width="0.286295" | stroke-width="0.286295" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.96317px" | font-size="1.96317px" | |||
x="114.84541" | x="114.84541" | |||
y="41.341846" | y="41.341846" | |||
transform="scale(0.97023256,1.0306807)">MPLS F<tspan | transform="scale(0.97023256,1.0306807)">MPLS F-Label<tspan | |||
font-size="1.96317px" | ||||
x="121.93121" | ||||
y="41.341846" | ||||
>-</tspan><tspan | ||||
font-size="1.96317px" | ||||
x="122.75431" | ||||
y="41.341846" | ||||
>label</tspan><tspan | ||||
font-size="1.96317px" | font-size="1.96317px" | |||
x="118.19219" | x="118.19219" | |||
y="43.795799" | y="43.795799" | |||
>20002</tspan></text> | >20002</tspan></text> | |||
<rect | <rect | |||
x="108.51966" | x="108.51966" | |||
y="109.88822" | y="109.88822" | |||
width="18.094917" | width="18.094917" | |||
height="7.4612932" | height="7.4612932" | |||
skipping to change at line 9970 ¶ | skipping to change at line 9483 ¶ | |||
stroke-width="0.286295" | stroke-width="0.286295" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.96317px" | font-size="1.96317px" | |||
x="115.00124" | x="115.00124" | |||
y="109.80728" | y="109.80728" | |||
transform="scale(0.97023256,1.0306807)">MPLS F<tspan | transform="scale(0.97023256,1.0306807)">MPLS F-Label<tspan | |||
font-size="1.96317px" | ||||
x="122.08704" | ||||
y="109.80728" | ||||
>-</tspan><tspan | ||||
font-size="1.96317px" | ||||
x="122.91014" | ||||
y="109.80728" | ||||
>label</tspan><tspan | ||||
font-size="1.96317px" | font-size="1.96317px" | |||
x="118.34802" | x="118.34802" | |||
y="112.26123" | y="112.26123" | |||
>20003</tspan></text> | >20003</tspan></text> | |||
<rect | <rect | |||
x="169.70906" | x="169.70906" | |||
y="10.362334" | y="10.362334" | |||
width="18.213964" | width="18.213964" | |||
height="7.3348303" | height="7.3348303" | |||
skipping to change at line 10073 ¶ | skipping to change at line 9576 ¶ | |||
stroke-width="0.286295" | stroke-width="0.286295" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.96317px" | font-size="1.96317px" | |||
x="51.805058" | x="51.805058" | |||
y="27.231581" | y="27.231581" | |||
transform="scale(0.97023256,1.0306807)">MPLS S<tspan | transform="scale(0.97023256,1.0306807)">MPLS S-Label<tspan | |||
font-size="1.96317px" | ||||
x="58.998222" | ||||
y="27.231581" | ||||
>-</tspan><tspan | ||||
font-size="1.96317px" | ||||
x="59.821327" | ||||
y="27.231581" | ||||
>label</tspan><tspan | ||||
font-size="1.96317px" | font-size="1.96317px" | |||
x="56.349998" | x="56.349998" | |||
y="29.685534" | y="29.685534" | |||
>100</tspan></text> | >100</tspan></text> | |||
<rect | <rect | |||
x="47.330269" | x="47.330269" | |||
y="32.113853" | y="32.113853" | |||
width="18.094917" | width="18.094917" | |||
height="7.4612932" | height="7.4612932" | |||
skipping to change at line 10105 ¶ | skipping to change at line 9598 ¶ | |||
stroke-width="0.286295" | stroke-width="0.286295" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.96317px" | font-size="1.96317px" | |||
x="51.858681" | x="51.858681" | |||
y="34.348064" | y="34.348064" | |||
transform="scale(0.97023256,1.0306807)">MPLS F<tspan | transform="scale(0.97023256,1.0306807)">MPLS F-Label<tspan | |||
font-size="1.96317px" | ||||
x="58.944485" | ||||
y="34.348064" | ||||
>-</tspan><tspan | ||||
font-size="1.96317px" | ||||
x="59.767574" | ||||
y="34.348064" | ||||
>label</tspan><tspan | ||||
font-size="1.96317px" | font-size="1.96317px" | |||
x="55.205456" | x="55.205456" | |||
y="36.802017" | y="36.802017" | |||
>10000</tspan></text> | >10000</tspan></text> | |||
<rect | <rect | |||
x="47.330269" | x="47.330269" | |||
y="10.362334" | y="10.362334" | |||
width="18.094917" | width="18.094917" | |||
height="7.3348303" | height="7.3348303" | |||
skipping to change at line 10181 ¶ | skipping to change at line 9664 ¶ | |||
stroke-width="0.286295" | stroke-width="0.286295" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.96317px" | font-size="1.96317px" | |||
x="146.48798" | x="146.48798" | |||
y="27.231581" | y="27.231581" | |||
transform="scale(0.97023256,1.0306807)">MPLS S<tspan | transform="scale(0.97023256,1.0306807)">MPLS S-Label<tspan | |||
font-size="1.96317px" | ||||
x="153.68114" | ||||
y="27.231581" | ||||
>-</tspan><tspan | ||||
font-size="1.96317px" | ||||
x="154.50424" | ||||
y="27.231581" | ||||
>label</tspan><tspan | ||||
font-size="1.96317px" | font-size="1.96317px" | |||
x="151.0329" | x="151.0329" | |||
y="29.685534" | y="29.685534" | |||
>102</tspan></text> | >102</tspan></text> | |||
<rect | <rect | |||
x="139.11435" | x="139.11435" | |||
y="32.113853" | y="32.113853" | |||
width="18.094917" | width="18.094917" | |||
height="7.4612932" | height="7.4612932" | |||
skipping to change at line 10213 ¶ | skipping to change at line 9686 ¶ | |||
stroke-width="0.286295" | stroke-width="0.286295" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.96317px" | font-size="1.96317px" | |||
x="146.54195" | x="146.54195" | |||
y="34.348064" | y="34.348064" | |||
transform="scale(0.97023256,1.0306807)">MPLS F<tspan | transform="scale(0.97023256,1.0306807)">MPLS F-Label<tspan | |||
font-size="1.96317px" | ||||
x="153.62776" | ||||
y="34.348064" | ||||
>-</tspan><tspan | ||||
font-size="1.96317px" | ||||
x="154.45087" | ||||
y="34.348064" | ||||
>label</tspan><tspan | ||||
font-size="1.96317px" | font-size="1.96317px" | |||
x="149.88875" | x="149.88875" | |||
y="36.802017" | y="36.802017" | |||
>10005</tspan></text> | >10005</tspan></text> | |||
<rect | <rect | |||
x="139.11435" | x="139.11435" | |||
y="10.362334" | y="10.362334" | |||
width="18.094917" | width="18.094917" | |||
height="7.3348303" | height="7.3348303" | |||
skipping to change at line 10274 ¶ | skipping to change at line 9737 ¶ | |||
x="151.48055" | x="151.48055" | |||
y="20.605892" | y="20.605892" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="1.96317px" | font-size="1.96317px" | |||
x="151.44476" | x="151.44476" | |||
y="23.182554" | y="23.182554" | |||
>192.0.2.8</tspan><tspan | >192.0.2.8</tspan><tspan | |||
font-size="2.82205px" | font-size="2.82205px" | |||
x="5.8307571" | x="4.8307571" | |||
y="83.672615" | y="83.672615" | |||
>Source 2</tspan><tspan | >Source 2</tspan><tspan | |||
font-size="2.82205px" | font-size="2.82205px" | |||
x="6.8675623" | x="5.8675623" | |||
y="86.494675" | y="86.494675" | |||
>192.0.2.2</tspan></text> | >192.0.2.2</tspan></text> | |||
<path | <path | |||
d="m 14.473711,77.517256 c 0,-0.3511 -0.267927,-0.63571 -0.598433,-0.6357 1 H 7.2151268 c -0.3305064,0 -0.5984335,0.28461 -0.5984335,0.63571 v 5.55758 c 0 ,0.3511 0.2679271,0.63572 0.5984335,0.63572 h 6.6601512 c 0.330506,0 0.598433,-0 .28462 0.598433,-0.63572 z" | d="m 14.473711,77.517256 c 0,-0.3511 -0.267927,-0.63571 -0.598433,-0.6357 1 H 7.2151268 c -0.3305064,0 -0.5984335,0.28461 -0.5984335,0.63571 v 5.55758 c 0 ,0.3511 0.2679271,0.63572 0.5984335,0.63572 h 6.6601512 c 0.330506,0 0.598433,-0 .28462 0.598433,-0.63572 z" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.286295" | stroke-width="0.286295" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
skipping to change at line 10354 ¶ | skipping to change at line 9817 ¶ | |||
x="25.312113" | x="25.312113" | |||
y="110.17537" | y="110.17537" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="1.96317px" | font-size="1.96317px" | |||
x="25.276333" | x="25.276333" | |||
y="112.75203" | y="112.75203" | |||
>192.0.2.9</tspan><tspan | >192.0.2.9</tspan><tspan | |||
font-size="2.82205px" | font-size="2.82205px" | |||
x="192.41074" | x="195.41074" | |||
y="83.672615" | y="83.672615" | |||
>Destination 2</tspan><tspan | >Destination 2</tspan><tspan | |||
font-size="2.82205px" | font-size="2.82205px" | |||
x="196.15056" | x="196.15056" | |||
y="86.494675" | y="86.494675" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<path | <path | |||
d="m 198.04189,77.517256 c 0,-0.3511 -0.26793,-0.63571 -0.59843,-0.63571 h -6.54112 c -0.3305,0 -0.59843,0.28461 -0.59843,0.63571 v 5.55757 c 0,0.35109 0 .26793,0.6357 0.59843,0.6357 h 6.54112 c 0.3305,0 0.59843,-0.28461 0.59843,-0.63 57 z" | d="m 198.04189,77.517256 c 0,-0.3511 -0.26793,-0.63571 -0.59843,-0.63571 h -6.54112 c -0.3305,0 -0.59843,0.28461 -0.59843,0.63571 v 5.55757 c 0,0.35109 0 .26793,0.6357 0.59843,0.6357 h 6.54112 c 0.3305,0 0.59843,-0.28461 0.59843,-0.63 57 z" | |||
skipping to change at line 10449 ¶ | skipping to change at line 9912 ¶ | |||
stroke-width="0.286295" | stroke-width="0.286295" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.96317px" | font-size="1.96317px" | |||
x="51.901497" | x="51.901497" | |||
y="102.8135" | y="102.8135" | |||
transform="scale(0.97023256,1.0306807)">MPLS S<tspan | transform="scale(0.97023256,1.0306807)">MPLS S-Label<tspan | |||
font-size="1.96317px" | ||||
x="59.094662" | ||||
y="102.8135" | ||||
>-</tspan><tspan | ||||
font-size="1.96317px" | ||||
x="59.917759" | ||||
y="102.8135" | ||||
>label</tspan><tspan | ||||
font-size="1.96317px" | font-size="1.96317px" | |||
x="56.446438" | x="56.446438" | |||
y="105.26745" | y="105.26745" | |||
>103</tspan></text> | >103</tspan></text> | |||
<rect | <rect | |||
x="47.330269" | x="47.330269" | |||
y="88.263161" | y="88.263161" | |||
width="18.213964" | width="18.213964" | |||
height="7.3348303" | height="7.3348303" | |||
skipping to change at line 10583 ¶ | skipping to change at line 10036 ¶ | |||
stroke-width="0.286295" | stroke-width="0.286295" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.96317px" | font-size="1.96317px" | |||
x="51.95512" | x="51.95512" | |||
y="109.80728" | y="109.80728" | |||
transform="scale(0.97023256,1.0306807)">MPLS F<tspan | transform="scale(0.97023256,1.0306807)">MPLS F-Label<tspan | |||
font-size="1.96317px" | ||||
x="59.04092" | ||||
y="109.80728" | ||||
>-</tspan><tspan | ||||
font-size="1.96317px" | ||||
x="59.864017" | ||||
y="109.80728" | ||||
>label</tspan><tspan | ||||
font-size="1.96317px" | font-size="1.96317px" | |||
x="55.874504" | x="55.874504" | |||
y="112.26123" | y="112.26123" | |||
>10006</tspan></text> | >10006</tspan></text> | |||
<path | <path | |||
d="m 136.73345,63.855926 22.79007,16.47766" | d="m 136.73345,63.855926 22.79007,16.47766" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.286295" | stroke-width="0.286295" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
skipping to change at line 10623 ¶ | skipping to change at line 10066 ¶ | |||
stroke-width="0.286295" | stroke-width="0.286295" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.96317px" | font-size="1.96317px" | |||
x="146.42662" | x="146.42662" | |||
y="102.8135" | y="102.8135" | |||
transform="scale(0.97023256,1.0306807)">MPLS S<tspan | transform="scale(0.97023256,1.0306807)">MPLS S-Label<tspan | |||
font-size="1.96317px" | ||||
x="153.61978" | ||||
y="102.8135" | ||||
>-</tspan><tspan | ||||
font-size="1.96317px" | ||||
x="154.4429" | ||||
y="102.8135" | ||||
>label</tspan><tspan | ||||
font-size="1.96317px" | font-size="1.96317px" | |||
x="150.97156" | x="150.97156" | |||
y="105.26745" | y="105.26745" | |||
>105</tspan></text> | >105</tspan></text> | |||
<rect | <rect | |||
x="139.11435" | x="139.11435" | |||
y="88.263161" | y="88.263161" | |||
width="18.094917" | width="18.094917" | |||
height="7.3348303" | height="7.3348303" | |||
skipping to change at line 10909 ¶ | skipping to change at line 10342 ¶ | |||
font-size="1.47237px" | font-size="1.47237px" | |||
x="82.939163" | x="82.939163" | |||
y="26.1273" | y="26.1273" | |||
transform="scale(0.97023256,1.0306807)">MPLS<tspan | transform="scale(0.97023256,1.0306807)">MPLS<tspan | |||
font-size="1.47237px" | font-size="1.47237px" | |||
x="82.50972" | x="82.50972" | |||
y="27.84507" | y="27.84507" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.47237px" | ||||
x="83.332825" | ||||
y="27.84507" | ||||
>-</tspan><tspan | ||||
font-size="1.47237px" | ||||
x="83.941193" | ||||
y="27.84507" | ||||
>label</tspan><tspan | ||||
font-size="1.96317px" | font-size="1.96317px" | |||
x="83.135277" | x="83.135277" | |||
y="30.176334" | y="30.176334" | |||
>101</tspan></text> | >101</tspan></text> | |||
<rect | <rect | |||
x="86.853378" | x="86.853378" | |||
y="24.905508" | y="24.905508" | |||
width="9.0474586" | width="9.0474586" | |||
height="7.3348303" | height="7.3348303" | |||
skipping to change at line 10946 ¶ | skipping to change at line 10369 ¶ | |||
font-size="1.47237px" | font-size="1.47237px" | |||
x="92.271935" | x="92.271935" | |||
y="26.1273" | y="26.1273" | |||
transform="scale(0.97023256,1.0306807)">MPLS<tspan | transform="scale(0.97023256,1.0306807)">MPLS<tspan | |||
font-size="1.47237px" | font-size="1.47237px" | |||
x="91.842491" | x="91.842491" | |||
y="27.84507" | y="27.84507" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.47237px" | ||||
x="92.665596" | ||||
y="27.84507" | ||||
>-</tspan><tspan | ||||
font-size="1.47237px" | ||||
x="93.273972" | ||||
y="27.84507" | ||||
>label</tspan><tspan | ||||
font-size="1.96317px" | font-size="1.96317px" | |||
x="92.46804" | x="92.46804" | |||
y="30.176334" | y="30.176334" | |||
>104</tspan></text> | >104</tspan></text> | |||
<rect | <rect | |||
x="77.805916" | x="77.805916" | |||
y="17.570692" | y="17.570692" | |||
width="9.0474586" | width="9.0474586" | |||
height="7.4612679" | height="7.4612679" | |||
skipping to change at line 10980 ¶ | skipping to change at line 10393 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.59507px" | font-size="1.59507px" | |||
x="84.120872" | x="84.120872" | |||
y="19.378916" | y="19.378916" | |||
transform="scale(0.97023256,1.0306807)">IP<tspan | transform="scale(0.97023256,1.0306807)">IP<tspan | |||
font-size="1.59507px" | font-size="1.59507px" | |||
x="82.348694" | x="81.348694" | |||
y="21.219387" | y="21.219387" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="1.59507px" | font-size="1.59507px" | |||
x="82.348694" | x="81.348694" | |||
y="23.059853" | y="23.059853" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<rect | <rect | |||
x="86.853378" | x="86.853378" | |||
y="17.570692" | y="17.570692" | |||
width="9.0474586" | width="9.0474586" | |||
height="7.4612679" | height="7.4612679" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.286295" | stroke-width="0.286295" | |||
skipping to change at line 11007 ¶ | skipping to change at line 10420 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.59507px" | font-size="1.59507px" | |||
x="93.453644" | x="93.453644" | |||
y="19.378916" | y="19.378916" | |||
transform="scale(0.97023256,1.0306807)">IP<tspan | transform="scale(0.97023256,1.0306807)">IP<tspan | |||
font-size="1.59507px" | font-size="1.59507px" | |||
x="91.681465" | x="90.681465" | |||
y="21.219387" | y="21.219387" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="1.59507px" | font-size="1.59507px" | |||
x="91.681465" | x="90.681465" | |||
y="23.059853" | y="23.059853" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<rect | <rect | |||
x="77.805916" | x="77.805916" | |||
y="10.362334" | y="10.362334" | |||
width="9.0474586" | width="9.0474586" | |||
height="7.3348303" | height="7.3348303" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.286295" | stroke-width="0.286295" | |||
skipping to change at line 11081 ¶ | skipping to change at line 10494 ¶ | |||
font-size="1.47237px" | font-size="1.47237px" | |||
x="82.947998" | x="82.947998" | |||
y="94.592751" | y="94.592751" | |||
transform="scale(0.97023256,1.0306807)">MPLS<tspan | transform="scale(0.97023256,1.0306807)">MPLS<tspan | |||
font-size="1.47237px" | font-size="1.47237px" | |||
x="82.518555" | x="82.518555" | |||
y="96.310516" | y="96.310516" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.47237px" | ||||
x="83.341652" | ||||
y="96.310516" | ||||
>-</tspan><tspan | ||||
font-size="1.47237px" | ||||
x="83.950035" | ||||
y="96.310516" | ||||
>label</tspan><tspan | ||||
font-size="1.96317px" | font-size="1.96317px" | |||
x="83.144112" | x="83.144112" | |||
y="98.641762" | y="98.641762" | |||
>101</tspan></text> | >101</tspan></text> | |||
<rect | <rect | |||
x="86.853378" | x="86.853378" | |||
y="95.471519" | y="95.471519" | |||
width="9.0474586" | width="9.0474586" | |||
height="7.3348055" | height="7.3348055" | |||
skipping to change at line 11118 ¶ | skipping to change at line 10521 ¶ | |||
font-size="1.47237px" | font-size="1.47237px" | |||
x="92.280769" | x="92.280769" | |||
y="94.592751" | y="94.592751" | |||
transform="scale(0.97023256,1.0306807)">MPLS<tspan | transform="scale(0.97023256,1.0306807)">MPLS<tspan | |||
font-size="1.47237px" | font-size="1.47237px" | |||
x="91.851326" | x="91.851326" | |||
y="96.310516" | y="96.310516" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.47237px" | ||||
x="92.674431" | ||||
y="96.310516" | ||||
>-</tspan><tspan | ||||
font-size="1.47237px" | ||||
x="93.282806" | ||||
y="96.310516" | ||||
>label</tspan><tspan | ||||
font-size="1.96317px" | font-size="1.96317px" | |||
x="92.476891" | x="92.476891" | |||
y="98.641762" | y="98.641762" | |||
>104</tspan></text> | >104</tspan></text> | |||
<rect | <rect | |||
x="77.805916" | x="77.805916" | |||
y="88.263161" | y="88.263161" | |||
width="9.0474586" | width="9.0474586" | |||
height="7.3348303" | height="7.3348303" | |||
skipping to change at line 11152 ¶ | skipping to change at line 10545 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.59507px" | font-size="1.59507px" | |||
x="84.1297" | x="84.1297" | |||
y="87.967056" | y="87.967056" | |||
transform="scale(0.97023256,1.0306807)">IP<tspan | transform="scale(0.97023256,1.0306807)">IP<tspan | |||
font-size="1.59507px" | font-size="1.59507px" | |||
x="82.357529" | x="81.357529" | |||
y="89.80751" | y="89.80751" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="1.59507px" | font-size="1.59507px" | |||
x="82.357529" | x="81.357529" | |||
y="91.64798" | y="91.64798" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<rect | <rect | |||
x="86.853378" | x="86.853378" | |||
y="88.263161" | y="88.263161" | |||
width="9.0474586" | width="9.0474586" | |||
height="7.3348303" | height="7.3348303" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.286295" | stroke-width="0.286295" | |||
skipping to change at line 11179 ¶ | skipping to change at line 10572 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.59507px" | font-size="1.59507px" | |||
x="93.462471" | x="93.462471" | |||
y="87.967056" | y="87.967056" | |||
transform="scale(0.97023256,1.0306807)">IP<tspan | transform="scale(0.97023256,1.0306807)">IP<tspan | |||
font-size="1.59507px" | font-size="1.59507px" | |||
x="91.6903" | x="90.6903" | |||
y="89.80751" | y="89.80751" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="1.59507px" | font-size="1.59507px" | |||
x="91.6903" | x="90.6903" | |||
y="91.64798" | y="91.64798" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<rect | <rect | |||
x="77.805916" | x="77.805916" | |||
y="80.928337" | y="80.928337" | |||
width="9.0474586" | width="9.0474586" | |||
height="7.4612932" | height="7.4612932" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.286295" | stroke-width="0.286295" | |||
skipping to change at line 11253 ¶ | skipping to change at line 10646 ¶ | |||
font-size="1.47237px" | font-size="1.47237px" | |||
x="114.47363" | x="114.47363" | |||
y="26.1273" | y="26.1273" | |||
transform="scale(0.97023256,1.0306807)">MPLS<tspan | transform="scale(0.97023256,1.0306807)">MPLS<tspan | |||
font-size="1.47237px" | font-size="1.47237px" | |||
x="114.04419" | x="114.04419" | |||
y="27.84507" | y="27.84507" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.47237px" | ||||
x="114.86727" | ||||
y="27.84507" | ||||
>-</tspan><tspan | ||||
font-size="1.47237px" | ||||
x="115.47565" | ||||
y="27.84507" | ||||
>label</tspan><tspan | ||||
font-size="1.96317px" | font-size="1.96317px" | |||
x="114.66974" | x="114.66974" | |||
y="30.176334" | y="30.176334" | |||
>101</tspan></text> | >101</tspan></text> | |||
<rect | <rect | |||
x="117.44807" | x="117.44807" | |||
y="24.905508" | y="24.905508" | |||
width="9.0474701" | width="9.0474701" | |||
height="7.3348303" | height="7.3348303" | |||
skipping to change at line 11290 ¶ | skipping to change at line 10673 ¶ | |||
font-size="1.47237px" | font-size="1.47237px" | |||
x="123.80727" | x="123.80727" | |||
y="26.1273" | y="26.1273" | |||
transform="scale(0.97023256,1.0306807)">MPLS<tspan | transform="scale(0.97023256,1.0306807)">MPLS<tspan | |||
font-size="1.47237px" | font-size="1.47237px" | |||
x="123.37782" | x="123.37782" | |||
y="27.84507" | y="27.84507" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.47237px" | ||||
x="124.2009" | ||||
y="27.84507" | ||||
>-</tspan><tspan | ||||
font-size="1.47237px" | ||||
x="124.80929" | ||||
y="27.84507" | ||||
>label</tspan><tspan | ||||
font-size="1.96317px" | font-size="1.96317px" | |||
x="124.00336" | x="124.00336" | |||
y="30.176334" | y="30.176334" | |||
>104</tspan></text> | >104</tspan></text> | |||
<rect | <rect | |||
x="108.40061" | x="108.40061" | |||
y="17.570692" | y="17.570692" | |||
width="9.0474586" | width="9.0474586" | |||
height="7.4612679" | height="7.4612679" | |||
skipping to change at line 11324 ¶ | skipping to change at line 10697 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.59507px" | font-size="1.59507px" | |||
x="115.65521" | x="115.65521" | |||
y="19.378916" | y="19.378916" | |||
transform="scale(0.97023256,1.0306807)">IP<tspan | transform="scale(0.97023256,1.0306807)">IP<tspan | |||
font-size="1.59507px" | font-size="1.59507px" | |||
x="113.88304" | x="112.88304" | |||
y="21.219387" | y="21.219387" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="1.59507px" | font-size="1.59507px" | |||
x="113.88304" | x="112.88304" | |||
y="23.059853" | y="23.059853" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<rect | <rect | |||
x="117.44807" | x="117.44807" | |||
y="17.570692" | y="17.570692" | |||
width="9.0474701" | width="9.0474701" | |||
height="7.4612679" | height="7.4612679" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.286295" | stroke-width="0.286295" | |||
skipping to change at line 11351 ¶ | skipping to change at line 10724 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.59507px" | font-size="1.59507px" | |||
x="124.98885" | x="124.98885" | |||
y="19.378916" | y="19.378916" | |||
transform="scale(0.97023256,1.0306807)">IP<tspan | transform="scale(0.97023256,1.0306807)">IP<tspan | |||
font-size="1.59507px" | font-size="1.59507px" | |||
x="123.21667" | x="122.21667" | |||
y="21.219387" | y="21.219387" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="1.59507px" | font-size="1.59507px" | |||
x="123.21667" | x="122.21667" | |||
y="23.059853" | y="23.059853" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<rect | <rect | |||
x="108.40061" | x="108.40061" | |||
y="10.362334" | y="10.362334" | |||
width="9.0474586" | width="9.0474586" | |||
height="7.3348303" | height="7.3348303" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.286295" | stroke-width="0.286295" | |||
skipping to change at line 11425 ¶ | skipping to change at line 10798 ¶ | |||
font-size="1.47237px" | font-size="1.47237px" | |||
x="114.62946" | x="114.62946" | |||
y="94.592751" | y="94.592751" | |||
transform="scale(0.97023256,1.0306807)">MPLS<tspan | transform="scale(0.97023256,1.0306807)">MPLS<tspan | |||
font-size="1.47237px" | font-size="1.47237px" | |||
x="114.20001" | x="114.20001" | |||
y="96.310516" | y="96.310516" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.47237px" | ||||
x="115.02312" | ||||
y="96.310516" | ||||
>-</tspan><tspan | ||||
font-size="1.47237px" | ||||
x="115.63151" | ||||
y="96.310516" | ||||
>label</tspan><tspan | ||||
font-size="1.96317px" | font-size="1.96317px" | |||
x="114.82557" | x="114.82557" | |||
y="98.641762" | y="98.641762" | |||
>101</tspan></text> | >101</tspan></text> | |||
<rect | <rect | |||
x="117.56711" | x="117.56711" | |||
y="95.471519" | y="95.471519" | |||
width="9.0474586" | width="9.0474586" | |||
height="7.3348055" | height="7.3348055" | |||
skipping to change at line 11462 ¶ | skipping to change at line 10825 ¶ | |||
font-size="1.47237px" | font-size="1.47237px" | |||
x="123.96309" | x="123.96309" | |||
y="94.592751" | y="94.592751" | |||
transform="scale(0.97023256,1.0306807)">MPLS<tspan | transform="scale(0.97023256,1.0306807)">MPLS<tspan | |||
font-size="1.47237px" | font-size="1.47237px" | |||
x="123.53365" | x="123.53365" | |||
y="96.310516" | y="96.310516" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.47237px" | ||||
x="124.35675" | ||||
y="96.310516" | ||||
>-</tspan><tspan | ||||
font-size="1.47237px" | ||||
x="124.96513" | ||||
y="96.310516" | ||||
>label</tspan><tspan | ||||
font-size="1.96317px" | font-size="1.96317px" | |||
x="124.15921" | x="124.15921" | |||
y="98.641762" | y="98.641762" | |||
>104</tspan></text> | >104</tspan></text> | |||
<rect | <rect | |||
x="108.51966" | x="108.51966" | |||
y="88.136696" | y="88.136696" | |||
width="9.0474586" | width="9.0474586" | |||
height="7.4612932" | height="7.4612932" | |||
skipping to change at line 11496 ¶ | skipping to change at line 10849 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.59507px" | font-size="1.59507px" | |||
x="115.81104" | x="115.81104" | |||
y="87.844353" | y="87.844353" | |||
transform="scale(0.97023256,1.0306807)">IP<tspan | transform="scale(0.97023256,1.0306807)">IP<tspan | |||
font-size="1.59507px" | font-size="1.59507px" | |||
x="114.03887" | x="113.03887" | |||
y="89.684822" | y="89.684822" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="1.59507px" | font-size="1.59507px" | |||
x="114.03887" | x="113.03887" | |||
y="91.525284" | y="91.525284" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<rect | <rect | |||
x="117.56711" | x="117.56711" | |||
y="88.136696" | y="88.136696" | |||
width="9.0474586" | width="9.0474586" | |||
height="7.4612932" | height="7.4612932" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.286295" | stroke-width="0.286295" | |||
skipping to change at line 11523 ¶ | skipping to change at line 10876 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.59507px" | font-size="1.59507px" | |||
x="125.14467" | x="125.14467" | |||
y="87.844353" | y="87.844353" | |||
transform="scale(0.97023256,1.0306807)">IP<tspan | transform="scale(0.97023256,1.0306807)">IP<tspan | |||
font-size="1.59507px" | font-size="1.59507px" | |||
x="123.37249" | x="122.37249" | |||
y="89.684822" | y="89.684822" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="1.59507px" | font-size="1.59507px" | |||
x="123.37249" | x="122.37249" | |||
y="91.525284" | y="91.525284" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<rect | <rect | |||
x="108.51966" | x="108.51966" | |||
y="80.928337" | y="80.928337" | |||
width="9.0474586" | width="9.0474586" | |||
height="7.3348303" | height="7.3348303" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.286295" | stroke-width="0.286295" | |||
skipping to change at line 11597 ¶ | skipping to change at line 10950 ¶ | |||
font-size="1.47237px" | font-size="1.47237px" | |||
x="82.939896" | x="82.939896" | |||
y="33.366478" | y="33.366478" | |||
transform="scale(0.97023256,1.0306807)">MPLS<tspan | transform="scale(0.97023256,1.0306807)">MPLS<tspan | |||
font-size="1.47237px" | font-size="1.47237px" | |||
x="82.546242" | x="82.546242" | |||
y="35.084248" | y="35.084248" | |||
>F-</tspan><tspan | >F-Label</tspan><tspan | |||
font-size="1.47237px" | ||||
x="83.906143" | ||||
y="35.084248" | ||||
>label</tspan><tspan | ||||
font-size="1.71777px" | font-size="1.71777px" | |||
x="82.348694" | x="82.348694" | |||
y="37.170109" | y="37.170109" | |||
>10003</tspan></text> | >10003</tspan></text> | |||
<rect | <rect | |||
x="86.853378" | x="86.853378" | |||
y="32.113853" | y="32.113853" | |||
width="9.0474586" | width="9.0474586" | |||
height="7.4612932" | height="7.4612932" | |||
skipping to change at line 11629 ¶ | skipping to change at line 10977 ¶ | |||
font-size="1.47237px" | font-size="1.47237px" | |||
x="92.272667" | x="92.272667" | |||
y="33.366478" | y="33.366478" | |||
transform="scale(0.97023256,1.0306807)">MPLS<tspan | transform="scale(0.97023256,1.0306807)">MPLS<tspan | |||
font-size="1.47237px" | font-size="1.47237px" | |||
x="91.879013" | x="91.879013" | |||
y="35.084248" | y="35.084248" | |||
>F-</tspan><tspan | >F-Label</tspan><tspan | |||
font-size="1.47237px" | ||||
x="93.238914" | ||||
y="35.084248" | ||||
>label</tspan><tspan | ||||
font-size="1.71777px" | font-size="1.71777px" | |||
x="91.681473" | x="91.681473" | |||
y="37.170109" | y="37.170109" | |||
>10009</tspan></text> | >10009</tspan></text> | |||
<rect | <rect | |||
x="77.805916" | x="77.805916" | |||
y="102.67986" | y="102.67986" | |||
width="9.0474586" | width="9.0474586" | |||
height="7.3347926" | height="7.3347926" | |||
skipping to change at line 11661 ¶ | skipping to change at line 11004 ¶ | |||
font-size="1.47237px" | font-size="1.47237px" | |||
x="82.948738" | x="82.948738" | |||
y="101.83191" | y="101.83191" | |||
transform="scale(0.97023256,1.0306807)">MPLS<tspan | transform="scale(0.97023256,1.0306807)">MPLS<tspan | |||
font-size="1.47237px" | font-size="1.47237px" | |||
x="82.555077" | x="82.555077" | |||
y="103.54967" | y="103.54967" | |||
>F-</tspan><tspan | >F-Label</tspan><tspan | |||
font-size="1.47237px" | ||||
x="83.914986" | ||||
y="103.54967" | ||||
>label</tspan><tspan | ||||
font-size="1.71777px" | font-size="1.71777px" | |||
x="82.357529" | x="82.357529" | |||
y="105.63554" | y="105.63554" | |||
>10004</tspan></text> | >10004</tspan></text> | |||
<rect | <rect | |||
x="86.853378" | x="86.853378" | |||
y="102.67986" | y="102.67986" | |||
width="9.0474586" | width="9.0474586" | |||
height="7.3347926" | height="7.3347926" | |||
skipping to change at line 11693 ¶ | skipping to change at line 11031 ¶ | |||
font-size="1.47237px" | font-size="1.47237px" | |||
x="92.281509" | x="92.281509" | |||
y="101.83191" | y="101.83191" | |||
transform="scale(0.97023256,1.0306807)">MPLS<tspan | transform="scale(0.97023256,1.0306807)">MPLS<tspan | |||
font-size="1.47237px" | font-size="1.47237px" | |||
x="91.887848" | x="91.887848" | |||
y="103.54967" | y="103.54967" | |||
>F-</tspan><tspan | >F-Label</tspan><tspan | |||
font-size="1.47237px" | ||||
x="93.247749" | ||||
y="103.54967" | ||||
>label</tspan><tspan | ||||
font-size="1.71777px" | font-size="1.71777px" | |||
x="91.6903" | x="91.6903" | |||
y="105.63554" | y="105.63554" | |||
>10010</tspan></text> | >10010</tspan></text> | |||
<rect | <rect | |||
x="108.40061" | x="108.40061" | |||
y="32.113853" | y="32.113853" | |||
width="9.0474586" | width="9.0474586" | |||
height="7.4612932" | height="7.4612932" | |||
skipping to change at line 11725 ¶ | skipping to change at line 11058 ¶ | |||
font-size="1.47237px" | font-size="1.47237px" | |||
x="114.47485" | x="114.47485" | |||
y="33.366478" | y="33.366478" | |||
transform="scale(0.97023256,1.0306807)">MPLS<tspan | transform="scale(0.97023256,1.0306807)">MPLS<tspan | |||
font-size="1.47237px" | font-size="1.47237px" | |||
x="114.08119" | x="114.08119" | |||
y="35.084248" | y="35.084248" | |||
>F-</tspan><tspan | >F-Label</tspan><tspan | |||
font-size="1.47237px" | ||||
x="115.44111" | ||||
y="35.084248" | ||||
>label</tspan><tspan | ||||
font-size="1.71777px" | font-size="1.71777px" | |||
x="113.88365" | x="113.88365" | |||
y="37.170109" | y="37.170109" | |||
>10003</tspan></text> | >10003</tspan></text> | |||
<rect | <rect | |||
x="117.44807" | x="117.44807" | |||
y="32.113853" | y="32.113853" | |||
width="9.0474701" | width="9.0474701" | |||
height="7.4612932" | height="7.4612932" | |||
skipping to change at line 11757 ¶ | skipping to change at line 11085 ¶ | |||
font-size="1.47237px" | font-size="1.47237px" | |||
x="123.80727" | x="123.80727" | |||
y="33.366478" | y="33.366478" | |||
transform="scale(0.97023256,1.0306807)">MPLS<tspan | transform="scale(0.97023256,1.0306807)">MPLS<tspan | |||
font-size="1.47237px" | font-size="1.47237px" | |||
x="123.4136" | x="123.4136" | |||
y="35.084248" | y="35.084248" | |||
>F-</tspan><tspan | >F-Label</tspan><tspan | |||
font-size="1.47237px" | ||||
x="124.77351" | ||||
y="35.084248" | ||||
>label</tspan><tspan | ||||
font-size="1.71777px" | font-size="1.71777px" | |||
x="123.21605" | x="123.21605" | |||
y="37.170109" | y="37.170109" | |||
>10009</tspan></text> | >10009</tspan></text> | |||
<rect | <rect | |||
x="108.51966" | x="108.51966" | |||
y="102.67986" | y="102.67986" | |||
width="9.0474586" | width="9.0474586" | |||
height="7.3347926" | height="7.3347926" | |||
skipping to change at line 11789 ¶ | skipping to change at line 11112 ¶ | |||
font-size="1.47237px" | font-size="1.47237px" | |||
x="114.63069" | x="114.63069" | |||
y="101.83191" | y="101.83191" | |||
transform="scale(0.97023256,1.0306807)">MPLS<tspan | transform="scale(0.97023256,1.0306807)">MPLS<tspan | |||
font-size="1.47237px" | font-size="1.47237px" | |||
x="114.23704" | x="114.23704" | |||
y="103.54967" | y="103.54967" | |||
>F-</tspan><tspan | >F-Label</tspan><tspan | |||
font-size="1.47237px" | ||||
x="115.59693" | ||||
y="103.54967" | ||||
>label</tspan><tspan | ||||
font-size="1.71777px" | font-size="1.71777px" | |||
x="114.0395" | x="114.0395" | |||
y="105.63554" | y="105.63554" | |||
>10004</tspan></text> | >10004</tspan></text> | |||
<rect | <rect | |||
x="117.56711" | x="117.56711" | |||
y="102.67986" | y="102.67986" | |||
width="9.0474586" | width="9.0474586" | |||
height="7.3347926" | height="7.3347926" | |||
skipping to change at line 11821 ¶ | skipping to change at line 11139 ¶ | |||
font-size="1.47237px" | font-size="1.47237px" | |||
x="123.96309" | x="123.96309" | |||
y="101.83191" | y="101.83191" | |||
transform="scale(0.97023256,1.0306807)">MPLS<tspan | transform="scale(0.97023256,1.0306807)">MPLS<tspan | |||
font-size="1.47237px" | font-size="1.47237px" | |||
x="123.56944" | x="123.56944" | |||
y="103.54967" | y="103.54967" | |||
>F-</tspan><tspan | >F-Label</tspan><tspan | |||
font-size="1.47237px" | ||||
x="124.92934" | ||||
y="103.54967" | ||||
>label</tspan><tspan | ||||
font-size="1.71777px" | font-size="1.71777px" | |||
x="123.37189" | x="123.37189" | |||
y="105.63554" | y="105.63554" | |||
>10010</tspan></text> | >10010</tspan></text> | |||
<rect | <rect | |||
x="139.11435" | x="139.11435" | |||
y="109.88822" | y="109.88822" | |||
width="18.094917" | width="18.094917" | |||
height="7.4612932" | height="7.4612932" | |||
skipping to change at line 11848 ¶ | skipping to change at line 11161 ¶ | |||
stroke-width="0.286295" | stroke-width="0.286295" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.96317px" | font-size="1.96317px" | |||
x="146.48062" | x="146.48062" | |||
y="109.80728" | y="109.80728" | |||
transform="scale(0.97023256,1.0306807)">MPLS F<tspan | transform="scale(0.97023256,1.0306807)">MPLS F-Label<tspan | |||
font-size="1.96317px" | ||||
x="153.56641" | ||||
y="109.80728" | ||||
>-</tspan><tspan | ||||
font-size="1.96317px" | ||||
x="154.38951" | ||||
y="109.80728" | ||||
>label</tspan><tspan | ||||
font-size="1.96317px" | font-size="1.96317px" | |||
x="149.82739" | x="149.82739" | |||
y="112.26123" | y="112.26123" | |||
>10011</tspan><tspan | >10011</tspan><tspan | |||
font-size="4.04903px" | font-size="4.04903px" | |||
x="167.5692" | x="167.5692" | |||
y="44.777386" | y="44.777386" | |||
>Note: S-label in this</tspan><tspan | >Note: S-Label in this</tspan><tspan | |||
font-size="4.04903px" | font-size="4.04903px" | |||
x="167.5692" | x="167.5692" | |||
y="49.562603" | y="49.562603" | |||
>diagram includes d-CW.</tspan></text> | >diagram includes d-CW.</tspan></text> | |||
<path | <path | |||
d="m 74.502406,63.602996 c -0.443801,0 -0.803557,-1.52868 -0.803557,-3.41 448 0,-1.88581 0.359756,-3.41449 0.803557,-3.41449 0.443802,0 0.803558,1.52868 0 .803558,3.41449 0,1.8858 -0.359756,3.41448 -0.803558,3.41448 H 68.7287 c -0.4438 02,0 -0.803557,-1.52868 -0.803557,-3.41448 0,-1.88581 0.359755,-3.41449 0.803557 ,-3.41449 h 5.773706" | d="m 74.502406,63.602996 c -0.443801,0 -0.803557,-1.52868 -0.803557,-3.41 448 0,-1.88581 0.359756,-3.41449 0.803557,-3.41449 0.443802,0 0.803558,1.52868 0 .803558,3.41449 0,1.8858 -0.359756,3.41448 -0.803558,3.41448 H 68.7287 c -0.4438 02,0 -0.803557,-1.52868 -0.803557,-3.41448 0,-1.88581 0.359755,-3.41449 0.803557 ,-3.41449 h 5.773706" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.286295" | stroke-width="0.286295" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
skipping to change at line 11928 ¶ | skipping to change at line 11231 ¶ | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
/> | /> | |||
<text | <text | |||
font-size="2.82205px" | font-size="2.82205px" | |||
x="99.455414" | x="99.455414" | |||
y="63.059364" | y="63.059364" | |||
transform="scale(0.97023256,1.0306807)">DN<tspan | transform="scale(0.97023256,1.0306807)">DN-1 / DN-2</text> | |||
font-size="2.82205px" | ||||
x="103.06989" | ||||
y="63.059364" | ||||
>-1 / DN</tspan><tspan | ||||
font-size="2.82205px" | ||||
x="111.40823" | ||||
y="63.059364" | ||||
>-2</tspan></text> | ||||
<path | <path | |||
d="m 135.81084,63.729456 c -0.44404,0 -0.80356,-1.52867 -0.80356,-3.41448 0,-1.88581 0.35952,-3.41449 0.80356,-3.41449 0.44405,0 0.80356,1.52868 0.80356, 3.41449 0,1.88581 -0.35951,3.41448 -0.80356,3.41448 h -5.65466 c -0.44404,0 -0.8 0355,-1.52867 -0.80355,-3.41448 0,-1.88581 0.35951,-3.41449 0.80355,-3.41449 h 5 .65466" | d="m 135.81084,63.729456 c -0.44404,0 -0.80356,-1.52867 -0.80356,-3.41448 0,-1.88581 0.35952,-3.41449 0.80356,-3.41449 0.44405,0 0.80356,1.52868 0.80356, 3.41449 0,1.88581 -0.35951,3.41448 -0.80356,3.41448 h -5.65466 c -0.44404,0 -0.8 0355,-1.52867 -0.80355,-3.41448 0,-1.88581 0.35951,-3.41449 0.80355,-3.41449 h 5 .65466" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.286295" | stroke-width="0.286295" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
/> | /> | |||
<text | <text | |||
font-size="2.82205px" | font-size="2.82205px" | |||
skipping to change at line 12012 ¶ | skipping to change at line 11305 ¶ | |||
transform="scale(0.97023256,1.0306807)">aggregation<tspan | transform="scale(0.97023256,1.0306807)">aggregation<tspan | |||
font-size="2.82205px" | font-size="2.82205px" | |||
x="128.42525" | x="128.42525" | |||
y="77.169632" | y="77.169632" | |||
>disaggregation</tspan></text> | >disaggregation</tspan></text> | |||
</g> | </g> | |||
</svg> | </svg> | |||
</artwork> | </artwork> | |||
</artset> | ||||
</figure> | </figure> | |||
<t> <xref target="example-detnet-json-service-aggregation-c-1"/> | <t> <xref target="example-detnet-json-service-aggregation-c-1"/> | |||
contains the operational JSON configuration for the ingress aggregat ion | contains the operational JSON configuration for the ingress aggregat ion | |||
node illustrated in <xref target="case-c1"/>. | node illustrated in <xref target="case-c1"/>. | |||
In this example, a relay performing aggregation at the forwarding su b-layer is illustrated. | In this example, a relay performing aggregation at the forwarding su b-layer is illustrated. | |||
Two DetNet flows DN1 and DN2 are replicated at each service sub-laye | Two DetNet flows -- DN-1 and DN-2 -- are replicated at each service | |||
r. | sub-layer. | |||
The two forwarding sub-layers for the upside path are aggregated | The two forwarding sub-layers for the upper path are aggregated | |||
at the forwarding sub-layer with label 20000 and the two forwarding | at the forwarding sub-layer with label 20000, and the two forwarding | |||
sub-layers for the downside path are aggregated at the forwarding | sub-layers for the lower path are aggregated at the forwarding | |||
sub-layer with label 20001. | sub-layer with label 20001. | |||
<xref target="example-detnet-json-service-disaggregation-c-1"/> | <xref target="example-detnet-json-service-disaggregation-c-1"/> | |||
contains the operational JSON configuration for the egress disaggreg ation | contains the operational JSON configuration for the egress disaggreg ation | |||
node illustrated in <xref target="case-c1"/>. | node illustrated in <xref target="case-c1"/>. | |||
</t> | </t> | |||
<figure anchor="example-detnet-json-service-aggregation-c-1"> | <figure anchor="example-detnet-json-service-aggregation-c-1"> | |||
<name>Example C-1 DetNet Relay Service Aggregation</name> | <name>Example C-1: DetNet Relay Service Aggregation</name> | |||
<artwork name="" type="" align="left" alt=""><![CDATA[ | <sourcecode name="" type="json"><![CDATA[ | |||
{ | { | |||
"ietf-detnet:detnet": { | "ietf-detnet:detnet": { | |||
"traffic-profile": [ | "traffic-profile": [ | |||
{ | { | |||
"name": "pf-1", | "name": "pf-1", | |||
"traffic-requirements": { | "traffic-requirements": { | |||
"min-bandwidth": "100000000", | "min-bandwidth": "100000000", | |||
"max-latency": 100000000, | "max-latency": 100000000, | |||
"max-latency-variation": 10000000, | "max-latency-variation": 10000000, | |||
"max-loss": "0.0000001", | "max-loss": "0.0000001", | |||
skipping to change at line 12419 ¶ | skipping to change at line 11711 ¶ | |||
"name": "eth3", | "name": "eth3", | |||
"type": "iana-if-type:ethernetCsmacd", | "type": "iana-if-type:ethernetCsmacd", | |||
"oper-status": "up", | "oper-status": "up", | |||
"statistics": { | "statistics": { | |||
"discontinuity-time": "2024-02-21T18:59:00-05:00" | "discontinuity-time": "2024-02-21T18:59:00-05:00" | |||
} | } | |||
} | } | |||
] | ] | |||
} | } | |||
} | } | |||
]]></artwork> | ]]></sourcecode> | |||
</figure> | </figure> | |||
<figure anchor="example-detnet-json-service-disaggregation-c-1"> | <figure anchor="example-detnet-json-service-disaggregation-c-1"> | |||
<name>Example C-1 DetNet Relay Service Disaggregation</name> | <name>Example C-1: DetNet Relay Service Disaggregation</name> | |||
<artwork name="" type="" align="left" alt=""><![CDATA[ | <sourcecode name="" type="json"><![CDATA[ | |||
{ | { | |||
"ietf-detnet:detnet": { | "ietf-detnet:detnet": { | |||
"traffic-profile": [ | "traffic-profile": [ | |||
{ | { | |||
"name": "pf-1", | "name": "pf-1", | |||
"traffic-requirements": { | "traffic-requirements": { | |||
"min-bandwidth": "100000000", | "min-bandwidth": "100000000", | |||
"max-latency": 100000000, | "max-latency": 100000000, | |||
"max-latency-variation": 10000000, | "max-latency-variation": 10000000, | |||
"max-loss": "0.0000001", | "max-loss": "0.0000001", | |||
skipping to change at line 12803 ¶ | skipping to change at line 12095 ¶ | |||
"name": "eth3", | "name": "eth3", | |||
"type": "iana-if-type:ethernetCsmacd", | "type": "iana-if-type:ethernetCsmacd", | |||
"oper-status": "up", | "oper-status": "up", | |||
"statistics": { | "statistics": { | |||
"discontinuity-time": "2024-02-21T18:59:00-05:00" | "discontinuity-time": "2024-02-21T18:59:00-05:00" | |||
} | } | |||
} | } | |||
] | ] | |||
} | } | |||
} | } | |||
]]></artwork> | ]]></sourcecode> | |||
</figure> | </figure> | |||
</section> | </section> | |||
<section numbered="true" toc="default"> | <section numbered="true" toc="default"> | |||
<name>Example C-2 JSON Relay Aggregation/Disaggregation Service Su b-Layer</name> | <name>Example C-2: DetNet Relay Service Sub-layer Aggregation/Disa ggregation</name> | |||
<t> | <t> | |||
<xref target="case-c2"/> illustrates the DetNet relay node servi ce sub-layer | <xref target="case-c2"/> illustrates the DetNet relay node's ser vice sub-layer | |||
flows 1 and 2 aggregated into a single forwarding sub-layer. | flows 1 and 2 aggregated into a single forwarding sub-layer. | |||
Service protection is performed by the | Service protection is performed by the | |||
corresponding service sub-layer of each flow and resource alloca tion | corresponding service sub-layer of each flow, and resource alloc ation | |||
is performed by an aggregated forwarding sub-layer for all aggr egated | is performed by an aggregated forwarding sub-layer for all aggr egated | |||
flows. A diagram illustrating both aggregation and disaggregati | flows. <xref target="case-c2"/> illustrates both aggregation an | |||
on is | d disaggregation, and the corresponding JSON operational data follows. | |||
shown and then the corresponding JSON operational data follows. | ||||
</t> | </t> | |||
<figure anchor="case-c2"> | <figure anchor="case-c2"> | |||
<name>Case C-2 Example Service Aggregation/Disaggregation</name> | <name>Case C-2: Example Service Aggregation/Disaggregation</name | |||
<artset> | > | |||
<artwork align="left" type="ascii-art" name="" alt=""><![CDATA[ | ||||
Please consult the PDF or HTML versions for the Case C-2 Diagram. | ||||
]]></artwork> | ||||
<artwork type="svg"> | <artwork type="svg"> | |||
<svg | <svg | |||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" | xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" | |||
xmlns:svg="http://www.w3.org/2000/svg" | xmlns:svg="http://www.w3.org/2000/svg" | |||
xmlns="http://www.w3.org/2000/svg" | xmlns="http://www.w3.org/2000/svg" | |||
width="180mm" | width="180mm" | |||
height="120mm" | height="120mm" | |||
viewBox="0 0 210 140" | viewBox="0 0 210 140" | |||
version="1.1" | version="1.1" | |||
> | > | |||
skipping to change at line 12948 ¶ | skipping to change at line 12233 ¶ | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.239973" | stroke-width="0.239973" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
/> | /> | |||
<text | <text | |||
font-size="3.15392px" | font-size="3.15392px" | |||
x="113.53401" | x="112.53401" | |||
y="83.216354" | y="83.216354" | |||
transform="scale(0.84010005,1.1903344)">Transit 2</text> | transform="scale(0.84010005,1.1903344)">Transit 2</text> | |||
<path | <path | |||
d="m 103.88287,87.797014 c 0,-0.453159 -0.25927,-0.820517 -0.5791,-0.8205 17 h -6.329843 c -0.319825,0 -0.579095,0.367358 -0.579095,0.820517 v 7.173228 c 0,0.453162 0.25927,0.820519 0.579095,0.820519 h 6.329843 c 0.31983,0 0.5791,-0.3 67357 0.5791,-0.820519 z" | d="m 103.88287,87.797014 c 0,-0.453159 -0.25927,-0.820517 -0.5791,-0.8205 17 h -6.329843 c -0.319825,0 -0.579095,0.367358 -0.579095,0.820517 v 7.173228 c 0,0.453162 0.25927,0.820519 0.579095,0.820519 h 6.329843 c 0.31983,0 0.5791,-0.3 67357 0.5791,-0.820519 z" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.319963" | stroke-width="0.319963" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
skipping to change at line 12973 ¶ | skipping to change at line 12258 ¶ | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.239973" | stroke-width="0.239973" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
/> | /> | |||
<text | <text | |||
font-size="3.15392px" | font-size="3.15392px" | |||
x="113.53401" | x="112.53401" | |||
y="47.289078" | y="47.289078" | |||
transform="scale(0.84010005,1.1903344)">Transit 1</text> | transform="scale(0.84010005,1.1903344)">Transit 1</text> | |||
<path | <path | |||
d="m 103.88287,45.194758 c 0,-0.453159 -0.25927,-0.820516 -0.5791,-0.8205 16 h -6.329843 c -0.319825,0 -0.579095,0.367357 -0.579095,0.820516 v 7.173218 c 0,0.453168 0.25927,0.820526 0.579095,0.820526 h 6.329843 c 0.31983,0 0.5791,-0.3 67358 0.5791,-0.820526 z" | d="m 103.88287,45.194758 c 0,-0.453159 -0.25927,-0.820516 -0.5791,-0.8205 16 h -6.329843 c -0.319825,0 -0.579095,0.367357 -0.579095,0.820516 v 7.173218 c 0,0.453168 0.25927,0.820526 0.579095,0.820526 h 6.329843 c 0.31983,0 0.5791,-0.3 67358 0.5791,-0.820526 z" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.319963" | stroke-width="0.319963" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
skipping to change at line 13122 ¶ | skipping to change at line 12407 ¶ | |||
stroke-width="0.319963" | stroke-width="0.319963" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="2.19403px" | font-size="2.19403px" | |||
x="94.622543" | x="94.622543" | |||
y="35.907528" | y="35.907528" | |||
transform="scale(0.84010005,1.1903344)">MPLS F<tspan | transform="scale(0.84010005,1.1903344)">MPLS F-Label<tspan | |||
font-size="2.19403px" | ||||
x="102.54163" | ||||
y="35.907528" | ||||
>-</tspan><tspan | ||||
font-size="2.19403px" | ||||
x="103.46153" | ||||
y="35.907528" | ||||
>label</tspan><tspan | ||||
font-size="2.19403px" | font-size="2.19403px" | |||
x="98.362923" | x="98.362923" | |||
y="38.65007" | y="38.65007" | |||
>20000</tspan></text> | >20000</tspan></text> | |||
<rect | <rect | |||
x="76.465164" | x="76.465164" | |||
y="119.94836" | y="119.94836" | |||
width="17.510468" | width="17.510468" | |||
height="9.4671688" | height="9.4671688" | |||
skipping to change at line 13154 ¶ | skipping to change at line 12429 ¶ | |||
stroke-width="0.319963" | stroke-width="0.319963" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="2.19403px" | font-size="2.19403px" | |||
x="94.513802" | x="94.513802" | |||
y="104.19681" | y="104.19681" | |||
transform="scale(0.84010005,1.1903344)">MPLS F<tspan | transform="scale(0.84010005,1.1903344)">MPLS F-Label<tspan | |||
font-size="2.19403px" | ||||
x="102.43288" | ||||
y="104.19681" | ||||
>-</tspan><tspan | ||||
font-size="2.19403px" | ||||
x="103.35279" | ||||
y="104.19681" | ||||
>label</tspan><tspan | ||||
font-size="2.19403px" | font-size="2.19403px" | |||
x="98.254173" | x="98.254173" | |||
y="106.93934" | y="106.93934" | |||
>20001</tspan></text> | >20001</tspan></text> | |||
<rect | <rect | |||
x="106.18688" | x="106.18688" | |||
y="38.661297" | y="38.661297" | |||
width="17.510468" | width="17.510468" | |||
height="9.467185" | height="9.467185" | |||
skipping to change at line 13186 ¶ | skipping to change at line 12451 ¶ | |||
stroke-width="0.319963" | stroke-width="0.319963" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="2.19403px" | font-size="2.19403px" | |||
x="129.85487" | x="129.85487" | |||
y="35.907528" | y="35.907528" | |||
transform="scale(0.84010005,1.1903344)">MPLS F<tspan | transform="scale(0.84010005,1.1903344)">MPLS F-Label<tspan | |||
font-size="2.19403px" | ||||
x="137.77396" | ||||
y="35.907528" | ||||
>-</tspan><tspan | ||||
font-size="2.19403px" | ||||
x="138.69386" | ||||
y="35.907528" | ||||
>label</tspan><tspan | ||||
font-size="2.19403px" | font-size="2.19403px" | |||
x="133.59525" | x="133.59525" | |||
y="38.65007" | y="38.65007" | |||
>20002</tspan></text> | >20002</tspan></text> | |||
<rect | <rect | |||
x="106.18688" | x="106.18688" | |||
y="119.94836" | y="119.94836" | |||
width="17.510468" | width="17.510468" | |||
height="9.4671688" | height="9.4671688" | |||
skipping to change at line 13218 ¶ | skipping to change at line 12473 ¶ | |||
stroke-width="0.319963" | stroke-width="0.319963" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="2.19403px" | font-size="2.19403px" | |||
x="129.92068" | x="129.92068" | |||
y="104.19681" | y="104.19681" | |||
transform="scale(0.84010005,1.1903344)">MPLS F<tspan | transform="scale(0.84010005,1.1903344)">MPLS F-Label<tspan | |||
font-size="2.19403px" | ||||
x="137.83978" | ||||
y="104.19681" | ||||
>-</tspan><tspan | ||||
font-size="2.19403px" | ||||
x="138.75969" | ||||
y="104.19681" | ||||
>label</tspan><tspan | ||||
font-size="2.19403px" | font-size="2.19403px" | |||
x="133.66106" | x="133.66106" | |||
y="106.93934" | y="106.93934" | |||
>20003</tspan></text> | >20003</tspan></text> | |||
<rect | <rect | |||
x="165.16951" | x="165.16951" | |||
y="10.259789" | y="10.259789" | |||
width="17.510468" | width="17.510468" | |||
height="9.467185" | height="9.467185" | |||
skipping to change at line 13321 ¶ | skipping to change at line 12566 ¶ | |||
stroke-width="0.319963" | stroke-width="0.319963" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="2.19403px" | font-size="2.19403px" | |||
x="59.347977" | x="59.347977" | |||
y="27.954165" | y="27.954165" | |||
transform="scale(0.84010005,1.1903344)">MPLS S<tspan | transform="scale(0.84010005,1.1903344)">MPLS S-Label<tspan | |||
font-size="2.19403px" | ||||
x="67.387047" | ||||
y="27.954165" | ||||
>-</tspan><tspan | ||||
font-size="2.19403px" | ||||
x="68.306938" | ||||
y="27.954165" | ||||
>label</tspan><tspan | ||||
font-size="2.19403px" | font-size="2.19403px" | |||
x="64.427383" | x="64.427383" | |||
y="30.696703" | y="30.696703" | |||
>100</tspan></text> | >100</tspan></text> | |||
<rect | <rect | |||
x="46.97385" | x="46.97385" | |||
y="38.661297" | y="38.661297" | |||
width="17.510468" | width="17.510468" | |||
height="9.467185" | height="9.467185" | |||
skipping to change at line 13353 ¶ | skipping to change at line 12588 ¶ | |||
stroke-width="0.319963" | stroke-width="0.319963" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="2.19403px" | font-size="2.19403px" | |||
x="59.407898" | x="59.407898" | |||
y="35.907528" | y="35.907528" | |||
transform="scale(0.84010005,1.1903344)">MPLS F<tspan | transform="scale(0.84010005,1.1903344)">MPLS F-Label<tspan | |||
font-size="2.19403px" | ||||
x="67.326988" | ||||
y="35.907528" | ||||
>-</tspan><tspan | ||||
font-size="2.19403px" | ||||
x="68.24688" | ||||
y="35.907528" | ||||
>label</tspan><tspan | ||||
font-size="2.19403px" | font-size="2.19403px" | |||
x="63.148277" | x="63.148277" | |||
y="38.65007" | y="38.65007" | |||
>10000</tspan></text> | >10000</tspan></text> | |||
<rect | <rect | |||
x="46.97385" | x="46.97385" | |||
y="10.259789" | y="10.259789" | |||
width="17.510468" | width="17.510468" | |||
height="9.467185" | height="9.467185" | |||
skipping to change at line 13426 ¶ | skipping to change at line 12651 ¶ | |||
width="17.510468" | width="17.510468" | |||
height="9.467185" | height="9.467185" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.319963" | stroke-width="0.319963" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="2.19403px" | font-size="2.19403px" | |||
x="169.13216" | x="165.13216" | |||
y="27.954165" | y="27.954165" | |||
transform="scale(0.84010005,1.1903344)">MPLS<tspan | transform="scale(0.84010005,1.1903344)">MPLS S-Label<tspan | |||
font-size="2.19403px" | ||||
x="166.1725" | ||||
y="30.696703" | ||||
>S</tspan><tspan | ||||
font-size="2.19403px" | ||||
x="167.45236" | ||||
y="30.696703" | ||||
>-</tspan><tspan | ||||
font-size="2.19403px" | font-size="2.19403px" | |||
x="168.37225" | x="170.37225" | |||
y="30.696703" | y="30.696703" | |||
>label 102</tspan></text> | >102</tspan></text> | |||
<rect | <rect | |||
x="135.7934" | x="135.7934" | |||
y="38.661297" | y="38.661297" | |||
width="17.510468" | width="17.510468" | |||
height="9.467185" | height="9.467185" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.319963" | stroke-width="0.319963" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="2.19403px" | font-size="2.19403px" | |||
x="165.17194" | x="165.17194" | |||
y="35.907528" | y="35.907528" | |||
transform="scale(0.84010005,1.1903344)">MPLS F<tspan | transform="scale(0.84010005,1.1903344)">MPLS F-Label<tspan | |||
font-size="2.19403px" | ||||
x="173.09103" | ||||
y="35.907528" | ||||
>-</tspan><tspan | ||||
font-size="2.19403px" | ||||
x="174.01094" | ||||
y="35.907528" | ||||
>label</tspan><tspan | ||||
font-size="2.19403px" | font-size="2.19403px" | |||
x="168.91231" | x="168.91231" | |||
y="38.65007" | y="38.65007" | |||
>10005</tspan></text> | >10005</tspan></text> | |||
<rect | <rect | |||
x="135.7934" | x="135.7934" | |||
y="10.259789" | y="10.259789" | |||
width="17.510468" | width="17.510468" | |||
height="9.467185" | height="9.467185" | |||
skipping to change at line 13697 ¶ | skipping to change at line 12902 ¶ | |||
stroke-width="0.319963" | stroke-width="0.319963" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="2.19403px" | font-size="2.19403px" | |||
x="62.335018" | x="62.335018" | |||
y="96.243423" | y="96.243423" | |||
transform="scale(0.84010005,1.1903344)">MPLS S<tspan | transform="scale(0.84010005,1.1903344)">MPLS S-Label<tspan | |||
font-size="2.19403px" | ||||
x="70.374092" | ||||
y="96.243423" | ||||
>-</tspan><tspan | ||||
font-size="2.19403px" | ||||
x="71.293983" | ||||
y="96.243423" | ||||
>label</tspan><tspan | ||||
font-size="2.19403px" | font-size="2.19403px" | |||
x="67.414429" | x="67.414429" | |||
y="98.985977" | y="98.985977" | |||
>103</tspan></text> | >103</tspan></text> | |||
<rect | <rect | |||
x="49.508259" | x="49.508259" | |||
y="91.54686" | y="91.54686" | |||
width="17.510468" | width="17.510468" | |||
height="9.6303797" | height="9.6303797" | |||
skipping to change at line 13831 ¶ | skipping to change at line 13026 ¶ | |||
stroke-width="0.319963" | stroke-width="0.319963" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="2.19403px" | font-size="2.19403px" | |||
x="62.395077" | x="62.395077" | |||
y="104.19681" | y="104.19681" | |||
transform="scale(0.84010005,1.1903344)">MPLS F<tspan | transform="scale(0.84010005,1.1903344)">MPLS F-Label<tspan | |||
font-size="2.19403px" | ||||
x="70.314163" | ||||
y="104.19681" | ||||
>-</tspan><tspan | ||||
font-size="2.19403px" | ||||
x="71.23407" | ||||
y="104.19681" | ||||
>label</tspan><tspan | ||||
font-size="2.19403px" | font-size="2.19403px" | |||
x="66.135452" | x="66.135452" | |||
y="106.93934" | y="106.93934" | |||
>10006</tspan></text> | >10006</tspan></text> | |||
<path | <path | |||
d="m 133.48938,70.164114 22.05398,21.267988" | d="m 133.48938,70.164114 22.05398,21.267988" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.319963" | stroke-width="0.319963" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
skipping to change at line 13871 ¶ | skipping to change at line 13056 ¶ | |||
stroke-width="0.319963" | stroke-width="0.319963" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="2.19403px" | font-size="2.19403px" | |||
x="162.11125" | x="162.11125" | |||
y="96.243423" | y="96.243423" | |||
transform="scale(0.84010005,1.1903344)">MPLS S<tspan | transform="scale(0.84010005,1.1903344)">MPLS S-Label<tspan | |||
font-size="2.19403px" | ||||
x="170.15033" | ||||
y="96.243423" | ||||
>-</tspan><tspan | ||||
font-size="2.19403px" | ||||
x="171.07024" | ||||
y="96.243423" | ||||
>label</tspan><tspan | ||||
font-size="2.19403px" | font-size="2.19403px" | |||
x="167.19067" | x="167.19067" | |||
y="98.985977" | y="98.985977" | |||
>105</tspan></text> | >105</tspan></text> | |||
<rect | <rect | |||
x="133.25899" | x="133.25899" | |||
y="91.54686" | y="91.54686" | |||
width="17.625668" | width="17.625668" | |||
height="9.6303797" | height="9.6303797" | |||
skipping to change at line 14161 ¶ | skipping to change at line 13336 ¶ | |||
font-size="1.64552px" | font-size="1.64552px" | |||
x="94.206909" | x="94.206909" | |||
y="26.72002" | y="26.72002" | |||
transform="scale(0.84010005,1.1903344)">MPLS<tspan | transform="scale(0.84010005,1.1903344)">MPLS<tspan | |||
font-size="1.64552px" | font-size="1.64552px" | |||
x="93.726967" | x="93.726967" | |||
y="28.639799" | y="28.639799" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.64552px" | ||||
x="94.646858" | ||||
y="28.639799" | ||||
>-</tspan><tspan | ||||
font-size="1.64552px" | ||||
x="95.326782" | ||||
y="28.639799" | ||||
>label</tspan><tspan | ||||
font-size="2.19403px" | font-size="2.19403px" | |||
x="94.426086" | x="94.426086" | |||
y="31.245213" | y="31.245213" | |||
>101</tspan></text> | >101</tspan></text> | |||
<rect | <rect | |||
x="85.335602" | x="85.335602" | |||
y="29.194126" | y="29.194126" | |||
width="8.7552338" | width="8.7552338" | |||
height="9.467185" | height="9.467185" | |||
skipping to change at line 14198 ¶ | skipping to change at line 13363 ¶ | |||
font-size="1.64552px" | font-size="1.64552px" | |||
x="104.6372" | x="104.6372" | |||
y="26.72002" | y="26.72002" | |||
transform="scale(0.84010005,1.1903344)">MPLS<tspan | transform="scale(0.84010005,1.1903344)">MPLS<tspan | |||
font-size="1.64552px" | font-size="1.64552px" | |||
x="104.15726" | x="104.15726" | |||
y="28.639799" | y="28.639799" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.64552px" | ||||
x="105.07716" | ||||
y="28.639799" | ||||
>-</tspan><tspan | ||||
font-size="1.64552px" | ||||
x="105.75708" | ||||
y="28.639799" | ||||
>label</tspan><tspan | ||||
font-size="2.19403px" | font-size="2.19403px" | |||
x="104.85638" | x="104.85638" | |||
y="31.245213" | y="31.245213" | |||
>104</tspan></text> | >104</tspan></text> | |||
<rect | <rect | |||
x="76.580368" | x="76.580368" | |||
y="19.726957" | y="19.726957" | |||
width="8.7552338" | width="8.7552338" | |||
height="9.4671526" | height="9.4671526" | |||
skipping to change at line 14232 ¶ | skipping to change at line 13387 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.78265px" | font-size="1.78265px" | |||
x="95.52758" | x="95.52758" | |||
y="19.178034" | y="19.178034" | |||
transform="scale(0.84010005,1.1903344)">IP<tspan | transform="scale(0.84010005,1.1903344)">IP<tspan | |||
font-size="1.78265px" | font-size="1.78265px" | |||
x="93.546997" | x="92.546997" | |||
y="21.234938" | y="21.234938" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="1.78265px" | font-size="1.78265px" | |||
x="93.546997" | x="92.546997" | |||
y="23.291843" | y="23.291843" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<rect | <rect | |||
x="85.335602" | x="85.335602" | |||
y="19.726957" | y="19.726957" | |||
width="8.7552338" | width="8.7552338" | |||
height="9.4671526" | height="9.4671526" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.319963" | stroke-width="0.319963" | |||
skipping to change at line 14259 ¶ | skipping to change at line 13414 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.78265px" | font-size="1.78265px" | |||
x="105.95787" | x="105.95787" | |||
y="19.178034" | y="19.178034" | |||
transform="scale(0.84010005,1.1903344)">IP<tspan | transform="scale(0.84010005,1.1903344)">IP<tspan | |||
font-size="1.78265px" | font-size="1.78265px" | |||
x="103.97729" | x="102.97729" | |||
y="21.234938" | y="21.234938" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="1.78265px" | font-size="1.78265px" | |||
x="103.97729" | x="102.97729" | |||
y="23.291843" | y="23.291843" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<rect | <rect | |||
x="76.580368" | x="76.580368" | |||
y="10.259789" | y="10.259789" | |||
width="8.7552338" | width="8.7552338" | |||
height="9.467185" | height="9.467185" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.319963" | stroke-width="0.319963" | |||
skipping to change at line 14333 ¶ | skipping to change at line 13488 ¶ | |||
font-size="1.64552px" | font-size="1.64552px" | |||
x="94.09803" | x="94.09803" | |||
y="95.0093" | y="95.0093" | |||
transform="scale(0.84010005,1.1903344)">MPLS<tspan | transform="scale(0.84010005,1.1903344)">MPLS<tspan | |||
font-size="1.64552px" | font-size="1.64552px" | |||
x="93.618088" | x="93.618088" | |||
y="96.929077" | y="96.929077" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.64552px" | ||||
x="94.537987" | ||||
y="96.929077" | ||||
>-</tspan><tspan | ||||
font-size="1.64552px" | ||||
x="95.217911" | ||||
y="96.929077" | ||||
>label</tspan><tspan | ||||
font-size="2.19403px" | font-size="2.19403px" | |||
x="94.317207" | x="94.317207" | |||
y="99.534492" | y="99.534492" | |||
>101</tspan></text> | >101</tspan></text> | |||
<rect | <rect | |||
x="85.220398" | x="85.220398" | |||
y="110.4812" | y="110.4812" | |||
width="8.7552338" | width="8.7552338" | |||
height="9.467185" | height="9.467185" | |||
skipping to change at line 14370 ¶ | skipping to change at line 13515 ¶ | |||
font-size="1.64552px" | font-size="1.64552px" | |||
x="104.52833" | x="104.52833" | |||
y="95.0093" | y="95.0093" | |||
transform="scale(0.84010005,1.1903344)">MPLS<tspan | transform="scale(0.84010005,1.1903344)">MPLS<tspan | |||
font-size="1.64552px" | font-size="1.64552px" | |||
x="104.04838" | x="104.04838" | |||
y="96.929077" | y="96.929077" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.64552px" | ||||
x="104.96828" | ||||
y="96.929077" | ||||
>-</tspan><tspan | ||||
font-size="1.64552px" | ||||
x="105.6482" | ||||
y="96.929077" | ||||
>label</tspan><tspan | ||||
font-size="2.19403px" | font-size="2.19403px" | |||
x="104.74751" | x="104.74751" | |||
y="99.534492" | y="99.534492" | |||
>104</tspan></text> | >104</tspan></text> | |||
<rect | <rect | |||
x="76.465164" | x="76.465164" | |||
y="101.01403" | y="101.01403" | |||
width="8.7552338" | width="8.7552338" | |||
height="9.467185" | height="9.467185" | |||
skipping to change at line 14404 ¶ | skipping to change at line 13539 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.78265px" | font-size="1.78265px" | |||
x="95.418694" | x="95.418694" | |||
y="87.4673" | y="87.4673" | |||
transform="scale(0.84010005,1.1903344)">IP<tspan | transform="scale(0.84010005,1.1903344)">IP<tspan | |||
font-size="1.78265px" | font-size="1.78265px" | |||
x="93.438126" | x="92.438126" | |||
y="89.5242" | y="89.5242" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="1.78265px" | font-size="1.78265px" | |||
x="93.438126" | x="92.438126" | |||
y="91.5811" | y="91.5811" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<rect | <rect | |||
x="85.220398" | x="85.220398" | |||
y="101.01403" | y="101.01403" | |||
width="8.7552338" | width="8.7552338" | |||
height="9.467185" | height="9.467185" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.319963" | stroke-width="0.319963" | |||
skipping to change at line 14431 ¶ | skipping to change at line 13566 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.78265px" | font-size="1.78265px" | |||
x="105.84899" | x="105.84899" | |||
y="87.4673" | y="87.4673" | |||
transform="scale(0.84010005,1.1903344)">IP<tspan | transform="scale(0.84010005,1.1903344)">IP<tspan | |||
font-size="1.78265px" | font-size="1.78265px" | |||
x="103.86842" | x="102.86842" | |||
y="89.5242" | y="89.5242" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="1.78265px" | font-size="1.78265px" | |||
x="103.86842" | x="102.86842" | |||
y="91.5811" | y="91.5811" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<rect | <rect | |||
x="76.465164" | x="76.465164" | |||
y="91.54686" | y="91.54686" | |||
width="8.7552338" | width="8.7552338" | |||
height="9.6303797" | height="9.6303797" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.319963" | stroke-width="0.319963" | |||
skipping to change at line 14505 ¶ | skipping to change at line 13640 ¶ | |||
font-size="1.64552px" | font-size="1.64552px" | |||
x="129.43938" | x="129.43938" | |||
y="26.72002" | y="26.72002" | |||
transform="scale(0.84010005,1.1903344)">MPLS<tspan | transform="scale(0.84010005,1.1903344)">MPLS<tspan | |||
font-size="1.64552px" | font-size="1.64552px" | |||
x="128.95943" | x="128.95943" | |||
y="28.639799" | y="28.639799" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.64552px" | ||||
x="129.87932" | ||||
y="28.639799" | ||||
>-</tspan><tspan | ||||
font-size="1.64552px" | ||||
x="130.55927" | ||||
y="28.639799" | ||||
>label</tspan><tspan | ||||
font-size="2.19403px" | font-size="2.19403px" | |||
x="129.65855" | x="129.65855" | |||
y="31.245213" | y="31.245213" | |||
>101</tspan></text> | >101</tspan></text> | |||
<rect | <rect | |||
x="114.94211" | x="114.94211" | |||
y="29.194126" | y="29.194126" | |||
width="8.7552338" | width="8.7552338" | |||
height="9.467185" | height="9.467185" | |||
skipping to change at line 14542 ¶ | skipping to change at line 13667 ¶ | |||
font-size="1.64552px" | font-size="1.64552px" | |||
x="139.86926" | x="139.86926" | |||
y="26.72002" | y="26.72002" | |||
transform="scale(0.84010005,1.1903344)">MPLS<tspan | transform="scale(0.84010005,1.1903344)">MPLS<tspan | |||
font-size="1.64552px" | font-size="1.64552px" | |||
x="139.38931" | x="139.38931" | |||
y="28.639799" | y="28.639799" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.64552px" | ||||
x="140.3092" | ||||
y="28.639799" | ||||
>-</tspan><tspan | ||||
font-size="1.64552px" | ||||
x="140.98914" | ||||
y="28.639799" | ||||
>label</tspan><tspan | ||||
font-size="2.19403px" | font-size="2.19403px" | |||
x="140.08844" | x="140.08844" | |||
y="31.245213" | y="31.245213" | |||
>104</tspan></text> | >104</tspan></text> | |||
<rect | <rect | |||
x="106.18688" | x="106.18688" | |||
y="19.726957" | y="19.726957" | |||
width="8.7552338" | width="8.7552338" | |||
height="9.4671526" | height="9.4671526" | |||
skipping to change at line 14576 ¶ | skipping to change at line 13691 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.78265px" | font-size="1.78265px" | |||
x="130.7599" | x="130.7599" | |||
y="19.178034" | y="19.178034" | |||
transform="scale(0.84010005,1.1903344)">IP<tspan | transform="scale(0.84010005,1.1903344)">IP<tspan | |||
font-size="1.78265px" | font-size="1.78265px" | |||
x="128.77933" | x="127.77933" | |||
y="21.234938" | y="21.234938" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="1.78265px" | font-size="1.78265px" | |||
x="128.77933" | x="127.77933" | |||
y="23.291843" | y="23.291843" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<rect | <rect | |||
x="114.94211" | x="114.94211" | |||
y="19.726957" | y="19.726957" | |||
width="8.7552338" | width="8.7552338" | |||
height="9.4671526" | height="9.4671526" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.319963" | stroke-width="0.319963" | |||
skipping to change at line 14603 ¶ | skipping to change at line 13718 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.78265px" | font-size="1.78265px" | |||
x="141.18979" | x="141.18979" | |||
y="19.178034" | y="19.178034" | |||
transform="scale(0.84010005,1.1903344)">IP<tspan | transform="scale(0.84010005,1.1903344)">IP<tspan | |||
font-size="1.78265px" | font-size="1.78265px" | |||
x="139.20921" | x="138.20921" | |||
y="21.234938" | y="21.234938" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="1.78265px" | font-size="1.78265px" | |||
x="139.20921" | x="138.20921" | |||
y="23.291843" | y="23.291843" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<rect | <rect | |||
x="106.18688" | x="106.18688" | |||
y="10.259789" | y="10.259789" | |||
width="8.7552338" | width="8.7552338" | |||
height="9.467185" | height="9.467185" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.319963" | stroke-width="0.319963" | |||
skipping to change at line 14677 ¶ | skipping to change at line 13792 ¶ | |||
font-size="1.64552px" | font-size="1.64552px" | |||
x="129.5052" | x="129.5052" | |||
y="95.0093" | y="95.0093" | |||
transform="scale(0.84010005,1.1903344)">MPLS<tspan | transform="scale(0.84010005,1.1903344)">MPLS<tspan | |||
font-size="1.64552px" | font-size="1.64552px" | |||
x="129.02525" | x="129.02525" | |||
y="96.929077" | y="96.929077" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.64552px" | ||||
x="129.94514" | ||||
y="96.929077" | ||||
>-</tspan><tspan | ||||
font-size="1.64552px" | ||||
x="130.62508" | ||||
y="96.929077" | ||||
>label</tspan><tspan | ||||
font-size="2.19403px" | font-size="2.19403px" | |||
x="129.72438" | x="129.72438" | |||
y="99.534492" | y="99.534492" | |||
>101</tspan></text> | >101</tspan></text> | |||
<rect | <rect | |||
x="114.94211" | x="114.94211" | |||
y="110.4812" | y="110.4812" | |||
width="8.7552338" | width="8.7552338" | |||
height="9.467185" | height="9.467185" | |||
skipping to change at line 14714 ¶ | skipping to change at line 13819 ¶ | |||
font-size="1.64552px" | font-size="1.64552px" | |||
x="139.93645" | x="139.93645" | |||
y="95.0093" | y="95.0093" | |||
transform="scale(0.84010005,1.1903344)">MPLS<tspan | transform="scale(0.84010005,1.1903344)">MPLS<tspan | |||
font-size="1.64552px" | font-size="1.64552px" | |||
x="139.4565" | x="139.4565" | |||
y="96.929077" | y="96.929077" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.64552px" | ||||
x="140.3764" | ||||
y="96.929077" | ||||
>-</tspan><tspan | ||||
font-size="1.64552px" | ||||
x="141.05634" | ||||
y="96.929077" | ||||
>label</tspan><tspan | ||||
font-size="2.19403px" | font-size="2.19403px" | |||
x="140.15564" | x="140.15564" | |||
y="99.534492" | y="99.534492" | |||
>104</tspan></text> | >104</tspan></text> | |||
<rect | <rect | |||
x="106.18688" | x="106.18688" | |||
y="101.01403" | y="101.01403" | |||
width="8.7552338" | width="8.7552338" | |||
height="9.467185" | height="9.467185" | |||
skipping to change at line 14748 ¶ | skipping to change at line 13843 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.78265px" | font-size="1.78265px" | |||
x="130.82573" | x="130.82573" | |||
y="87.4673" | y="87.4673" | |||
transform="scale(0.84010005,1.1903344)">IP<tspan | transform="scale(0.84010005,1.1903344)">IP<tspan | |||
font-size="1.78265px" | font-size="1.78265px" | |||
x="128.84514" | x="127.84514" | |||
y="89.5242" | y="89.5242" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="1.78265px" | font-size="1.78265px" | |||
x="128.84514" | x="127.84514" | |||
y="91.5811" | y="91.5811" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<rect | <rect | |||
x="114.94211" | x="114.94211" | |||
y="101.01403" | y="101.01403" | |||
width="8.7552338" | width="8.7552338" | |||
height="9.467185" | height="9.467185" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.319963" | stroke-width="0.319963" | |||
skipping to change at line 14775 ¶ | skipping to change at line 13870 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.78265px" | font-size="1.78265px" | |||
x="141.25697" | x="141.25697" | |||
y="87.4673" | y="87.4673" | |||
transform="scale(0.84010005,1.1903344)">IP<tspan | transform="scale(0.84010005,1.1903344)">IP<tspan | |||
font-size="1.78265px" | font-size="1.78265px" | |||
x="139.2764" | x="138.2764" | |||
y="89.5242" | y="89.5242" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="1.78265px" | font-size="1.78265px" | |||
x="139.2764" | x="138.2764" | |||
y="91.5811" | y="91.5811" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<rect | <rect | |||
x="106.18688" | x="106.18688" | |||
y="91.54686" | y="91.54686" | |||
width="8.7552338" | width="8.7552338" | |||
height="9.6303797" | height="9.6303797" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.319963" | stroke-width="0.319963" | |||
skipping to change at line 14844 ¶ | skipping to change at line 13939 ¶ | |||
stroke-width="0.319963" | stroke-width="0.319963" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="2.19403px" | font-size="2.19403px" | |||
x="162.1716" | x="162.1716" | |||
y="104.19681" | y="104.19681" | |||
transform="scale(0.84010005,1.1903344)">MPLS F<tspan | transform="scale(0.84010005,1.1903344)">MPLS F-Label<tspan | |||
font-size="2.19403px" | ||||
x="170.09068" | ||||
y="104.19681" | ||||
>-</tspan><tspan | ||||
font-size="2.19403px" | ||||
x="171.01059" | ||||
y="104.19681" | ||||
>label</tspan><tspan | ||||
font-size="2.19403px" | font-size="2.19403px" | |||
x="165.91196" | x="165.91196" | |||
y="106.93934" | y="106.93934" | |||
>10011</tspan><tspan | >10011</tspan><tspan | |||
font-size="4.52519px" | font-size="4.52519px" | |||
x="188.81236" | x="188.81236" | |||
y="40.43272" | y="40.43272" | |||
>Note: S-label in this</tspan><tspan | >Note: S-Label in this</tspan><tspan | |||
font-size="4.52519px" | font-size="4.52519px" | |||
x="188.81236" | x="188.81236" | |||
y="45.780682" | y="45.780682" | |||
>diagram includes d-CW.</tspan></text> | >diagram includes d-CW.</tspan></text> | |||
<path | <path | |||
d="m 73.268351,69.837657 c -0.429466,0 -0.777603,-1.973086 -0.777603,-4.4 07127 0,-2.434041 0.348137,-4.407131 0.777603,-4.407131 0.429468,0 0.777603,1.97 309 0.777603,4.407131 0,2.434041 -0.348135,4.407127 -0.777603,4.407127 h -5.5872 2 c -0.429468,0 -0.777604,-1.973086 -0.777604,-4.407127 0,-2.434041 0.348136,-4. 407131 0.777604,-4.407131 h 5.58722" | d="m 73.268351,69.837657 c -0.429466,0 -0.777603,-1.973086 -0.777603,-4.4 07127 0,-2.434041 0.348137,-4.407131 0.777603,-4.407131 0.429468,0 0.777603,1.97 309 0.777603,4.407131 0,2.434041 -0.348135,4.407127 -0.777603,4.407127 h -5.5872 2 c -0.429468,0 -0.777604,-1.973086 -0.777604,-4.407127 0,-2.434041 0.348136,-4. 407131 0.777604,-4.407131 h 5.58722" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.319963" | stroke-width="0.319963" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
skipping to change at line 15026 ¶ | skipping to change at line 14111 ¶ | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.239973" | stroke-width="0.239973" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
/> | /> | |||
</g> | </g> | |||
</svg> | </svg> | |||
</artwork> | </artwork> | |||
</artset> | ||||
</figure> | </figure> | |||
<t> <xref target="example-detnet-json-service-aggregation-c-2"/> | <t> <xref target="example-detnet-json-service-aggregation-c-2"/> | |||
contains the operational JSON configuration for the ingress aggregat ion | contains the operational JSON configuration for the ingress aggregat ion | |||
node illustrated in <xref target="case-c2"/>. | node illustrated in <xref target="case-c2"/>. | |||
In this example, a relay performing aggregation at the forwarding su b-layer is illustrated. | In this example, a relay performing aggregation at the forwarding su b-layer is illustrated. | |||
Two DetNet flows DN1 and DN2 are replicated at each | Two DetNet flows -- DN-1 and DN-2 -- are replicated at each | |||
service sub-layer, and the replicated each service sub-layer for the | service sub-layer. Each replicated flow for the service sub-layer fo | |||
upside path is aggregated at the single forwarding sub-layer with | r the | |||
MPLS label 20000, and the replicated each service sub-layer for the | upper path is aggregated at the single forwarding sub-layer with | |||
downside path is aggregated at the forwarding sub-layer with | MPLS label 20000, and each replicated flow for the service sub-layer | |||
for the | ||||
lower path is aggregated at the forwarding sub-layer with | ||||
MPLS label 20001. | MPLS label 20001. | |||
<xref target="example-detnet-json-service-disaggregation-c-2"/> | <xref target="example-detnet-json-service-disaggregation-c-2"/> | |||
contains the operational JSON configuration for the egress disaggreg ation | contains the operational JSON configuration for the egress disaggreg ation | |||
node illustrated in <xref target="case-c2"/>. | node illustrated in <xref target="case-c2"/>. | |||
</t> | </t> | |||
<figure anchor="example-detnet-json-service-aggregation-c-2"> | <figure anchor="example-detnet-json-service-aggregation-c-2"> | |||
<name>Example C-2 DetNet Relay Aggregation Service Sub-Layer</name> | <name>Example C-2: DetNet Relay Aggregation Service Sub-layer</name> | |||
<artwork name="" type="" align="left" alt=""><![CDATA[ | <sourcecode name="" type="json"><![CDATA[ | |||
{ | { | |||
"ietf-detnet:detnet": { | "ietf-detnet:detnet": { | |||
"traffic-profile": [ | "traffic-profile": [ | |||
{ | { | |||
"name": "pf-1", | "name": "pf-1", | |||
"traffic-requirements": { | "traffic-requirements": { | |||
"min-bandwidth": "100000000", | "min-bandwidth": "100000000", | |||
"max-latency": 100000000, | "max-latency": 100000000, | |||
"max-latency-variation": 10000000, | "max-latency-variation": 10000000, | |||
"max-loss": "0.0000001", | "max-loss": "0.0000001", | |||
skipping to change at line 15322 ¶ | skipping to change at line 14406 ¶ | |||
"name": "eth3", | "name": "eth3", | |||
"type": "iana-if-type:ethernetCsmacd", | "type": "iana-if-type:ethernetCsmacd", | |||
"oper-status": "up", | "oper-status": "up", | |||
"statistics": { | "statistics": { | |||
"discontinuity-time": "2024-02-21T18:59:00-05:00" | "discontinuity-time": "2024-02-21T18:59:00-05:00" | |||
} | } | |||
} | } | |||
] | ] | |||
} | } | |||
} | } | |||
]]></artwork> | ]]></sourcecode> | |||
</figure> | </figure> | |||
<figure anchor="example-detnet-json-service-disaggregation-c-2"> | <figure anchor="example-detnet-json-service-disaggregation-c-2"> | |||
<name>Example C-2 DetNet Relay Disaggregation Service Sub-Layer</name> | <name>Example C-2: DetNet Relay Disaggregation Service Sub-layer</name | |||
<artwork name="" type="" align="left" alt=""><![CDATA[ | > | |||
<sourcecode name="" type="json"><![CDATA[ | ||||
{ | { | |||
"ietf-detnet:detnet": { | "ietf-detnet:detnet": { | |||
"traffic-profile": [ | "traffic-profile": [ | |||
{ | { | |||
"name": "pf-1", | "name": "pf-1", | |||
"traffic-requirements": { | "traffic-requirements": { | |||
"min-bandwidth": "100000000", | "min-bandwidth": "100000000", | |||
"max-latency": 100000000, | "max-latency": 100000000, | |||
"max-latency-variation": 10000000, | "max-latency-variation": 10000000, | |||
"max-loss": "0.0000001", | "max-loss": "0.0000001", | |||
skipping to change at line 15602 ¶ | skipping to change at line 14686 ¶ | |||
"name": "eth3", | "name": "eth3", | |||
"type": "iana-if-type:ethernetCsmacd", | "type": "iana-if-type:ethernetCsmacd", | |||
"oper-status": "up", | "oper-status": "up", | |||
"statistics": { | "statistics": { | |||
"discontinuity-time": "2024-02-21T18:59:00-05:00" | "discontinuity-time": "2024-02-21T18:59:00-05:00" | |||
} | } | |||
} | } | |||
] | ] | |||
} | } | |||
} | } | |||
]]></artwork> | ]]></sourcecode> | |||
</figure> | </figure> | |||
</section> | </section> | |||
<section numbered="true" toc="default"> | <section numbered="true" toc="default"> | |||
<name>Example C-3 JSON Relay Service Sub-Layer Aggregation/Disaggr egation</name> | <name>Example C-3: DetNet Relay Service Sub-layer Aggregation/Disa ggregation</name> | |||
<t> | <t> | |||
<xref target="case-c3"/> illustrates the DetNet relay node servi ce sub-layer | <xref target="case-c3"/> illustrates the DetNet relay node's ser vice sub-layer | |||
flows 1 and 2 aggregated into a service sub-layer | flows 1 and 2 aggregated into a service sub-layer | |||
flow. Multiple DetNet flows with the same requirements | flow. Multiple DetNet flows with the same requirements | |||
which can use the same path are aggregated into a single | that can use the same path are aggregated into a single | |||
aggregated DetNet flow, and service protection and resource allo cation | aggregated DetNet flow, and service protection and resource allo cation | |||
are performed by the service sub-layer and forwarding sub-layer of | are performed by the service sub-layer and forwarding sub-layer of | |||
aggregated DetNet flow. A diagram illustrating both aggregation | the aggregated DetNet flow. <xref target="case-c3"/> illustrates | |||
and | both aggregation and | |||
disaggregation is shown and then the corresponding JSON operatio | disaggregation, and the corresponding JSON operational | |||
nal | ||||
data follows. | data follows. | |||
</t> | </t> | |||
<figure anchor="case-c3"> | <figure anchor="case-c3"> | |||
<name>Case C-3 Example Service Aggregation/Disaggregation</name> | <name>Case C-3: Example Service Aggregation/Disaggregation</name | |||
<artset> | > | |||
<artwork align="left" type="ascii-art" name="" alt=""><![CDATA[ | ||||
Please consult the PDF or HTML versions for the Case C-3 Diagram. | ||||
]]></artwork> | ||||
<artwork type="svg"> | <artwork type="svg"> | |||
<svg | <svg | |||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" | xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" | |||
xmlns:svg="http://www.w3.org/2000/svg" | xmlns:svg="http://www.w3.org/2000/svg" | |||
xmlns="http://www.w3.org/2000/svg" | xmlns="http://www.w3.org/2000/svg" | |||
width="180mm" | width="180mm" | |||
height="120mm" | height="120mm" | |||
viewBox="0 0 210 140" | viewBox="0 0 210 140" | |||
version="1.1" | version="1.1" | |||
> | > | |||
skipping to change at line 15695 ¶ | skipping to change at line 14773 ¶ | |||
font-size="1.3787px" | font-size="1.3787px" | |||
x="123.87114" | x="123.87114" | |||
y="26.714422" | y="26.714422" | |||
transform="scale(0.92557641,1.0804078)">MPLS<tspan | transform="scale(0.92557641,1.0804078)">MPLS<tspan | |||
font-size="1.3787px" | font-size="1.3787px" | |||
x="123.46902" | x="123.46902" | |||
y="28.322903" | y="28.322903" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.3787px" | ||||
x="124.23975" | ||||
y="28.322903" | ||||
>-</tspan><tspan | ||||
font-size="1.3787px" | ||||
x="124.80943" | ||||
y="28.322903" | ||||
>label</tspan><tspan | ||||
font-size="1.83826px" | font-size="1.83826px" | |||
x="124.05479" | x="124.05479" | |||
y="30.505838" | y="30.505838" | |||
>104</tspan><tspan | >104</tspan><tspan | |||
font-size="2.64251px" | font-size="2.64251px" | |||
x="13.114499" | x="13.114499" | |||
y="65.662704" | y="65.662704" | |||
>Source 1</tspan><tspan | >Source 1</tspan><tspan | |||
skipping to change at line 15802 ¶ | skipping to change at line 14870 ¶ | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.20106" | stroke-width="0.20106" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
/> | /> | |||
<text | <text | |||
font-size="2.64251px" | font-size="2.64251px" | |||
x="101.72691" | x="100.72691" | |||
y="80.713516" | y="80.713516" | |||
transform="scale(0.92557641,1.0804078)">Transit 2</text> | transform="scale(0.92557641,1.0804078)">Transit 2</text> | |||
<path | <path | |||
d="m 102.00507,78.64189 c 0,-0.344616 -0.23933,-0.623982 -0.53456,-0.6239 82 h -5.84305 c -0.295234,0 -0.534565,0.279366 -0.534565,0.623982 v 5.455069 c 0 ,0.344612 0.239331,0.623978 0.534565,0.623978 h 5.84305 c 0.29523,0 0.53456,-0.2 79366 0.53456,-0.623978 z" | d="m 102.00507,78.64189 c 0,-0.344616 -0.23933,-0.623982 -0.53456,-0.6239 82 h -5.84305 c -0.295234,0 -0.534565,0.279366 -0.534565,0.623982 v 5.455069 c 0 ,0.344612 0.239331,0.623978 0.534565,0.623978 h 5.84305 c 0.29523,0 0.53456,-0.2 79366 0.53456,-0.623978 z" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.26808" | stroke-width="0.26808" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
skipping to change at line 15827 ¶ | skipping to change at line 14895 ¶ | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.20106" | stroke-width="0.20106" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
/> | /> | |||
<text | <text | |||
font-size="2.64251px" | font-size="2.64251px" | |||
x="101.72691" | x="100.72691" | |||
y="50.611893" | y="50.611893" | |||
transform="scale(0.92557641,1.0804078)">Transit 1</text> | transform="scale(0.92557641,1.0804078)">Transit 1</text> | |||
<path | <path | |||
d="m 102.00507,46.243985 c 0,-0.344616 -0.23933,-0.623982 -0.53456,-0.623 982 h -5.84305 c -0.295234,0 -0.534565,0.279366 -0.534565,0.623982 v 5.45507 c 0 ,0.34461 0.239331,0.623977 0.534565,0.623977 h 5.84305 c 0.29523,0 0.53456,-0.27 9367 0.53456,-0.623977 z" | d="m 102.00507,46.243985 c 0,-0.344616 -0.23933,-0.623982 -0.53456,-0.623 982 h -5.84305 c -0.295234,0 -0.534565,0.279366 -0.534565,0.623982 v 5.45507 c 0 ,0.34461 0.239331,0.623977 0.534565,0.623977 h 5.84305 c 0.29523,0 0.53456,-0.27 9367 0.53456,-0.623977 z" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.26808" | stroke-width="0.26808" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
skipping to change at line 15976 ¶ | skipping to change at line 15044 ¶ | |||
stroke-width="0.26808" | stroke-width="0.26808" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.83826px" | font-size="1.83826px" | |||
x="85.863373" | x="85.863373" | |||
y="41.075882" | y="41.075882" | |||
transform="scale(0.92557641,1.0804078)">MPLS F<tspan | transform="scale(0.92557641,1.0804078)">MPLS F-Label<tspan | |||
font-size="1.83826px" | ||||
x="92.49836" | ||||
y="41.075882" | ||||
>-</tspan><tspan | ||||
font-size="1.83826px" | ||||
x="93.269089" | ||||
y="41.075882" | ||||
>label</tspan><tspan | ||||
font-size="1.83826px" | font-size="1.83826px" | |||
x="88.997223" | x="88.997223" | |||
y="43.373711" | y="43.373711" | |||
>20000</tspan></text> | >20000</tspan></text> | |||
<rect | <rect | |||
x="76.908569" | x="76.908569" | |||
y="109.54691" | y="109.54691" | |||
width="16.163839" | width="16.163839" | |||
height="7.1995339" | height="7.1995339" | |||
skipping to change at line 16008 ¶ | skipping to change at line 15066 ¶ | |||
stroke-width="0.26808" | stroke-width="0.26808" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.83826px" | font-size="1.83826px" | |||
x="85.99939" | x="85.99939" | |||
y="104.26631" | y="104.26631" | |||
transform="scale(0.92557641,1.0804078)">MPLS F<tspan | transform="scale(0.92557641,1.0804078)">MPLS F-Label<tspan | |||
font-size="1.83826px" | ||||
x="92.634399" | ||||
y="104.26631" | ||||
>-</tspan><tspan | ||||
font-size="1.83826px" | ||||
x="93.405128" | ||||
y="104.26631" | ||||
>label</tspan><tspan | ||||
font-size="1.83826px" | font-size="1.83826px" | |||
x="89.133263" | x="89.133263" | |||
y="106.56416" | y="106.56416" | |||
>20001</tspan></text> | >20001</tspan></text> | |||
<rect | <rect | |||
x="104.13187" | x="104.13187" | |||
y="41.275452" | y="41.275452" | |||
width="16.270182" | width="16.270182" | |||
height="7.1995463" | height="7.1995463" | |||
skipping to change at line 16040 ¶ | skipping to change at line 15088 ¶ | |||
stroke-width="0.26808" | stroke-width="0.26808" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.83826px" | font-size="1.83826px" | |||
x="115.47947" | x="115.47947" | |||
y="41.075882" | y="41.075882" | |||
transform="scale(0.92557641,1.0804078)">MPLS F<tspan | transform="scale(0.92557641,1.0804078)">MPLS F-Label<tspan | |||
font-size="1.83826px" | ||||
x="122.11445" | ||||
y="41.075882" | ||||
>-</tspan><tspan | ||||
font-size="1.83826px" | ||||
x="122.88519" | ||||
y="41.075882" | ||||
>label</tspan><tspan | ||||
font-size="1.83826px" | font-size="1.83826px" | |||
x="118.61332" | x="118.61332" | |||
y="43.373711" | y="43.373711" | |||
>20002</tspan></text> | >20002</tspan></text> | |||
<rect | <rect | |||
x="104.23822" | x="104.23822" | |||
y="109.54691" | y="109.54691" | |||
width="16.270182" | width="16.270182" | |||
height="7.1995339" | height="7.1995339" | |||
skipping to change at line 16072 ¶ | skipping to change at line 15110 ¶ | |||
stroke-width="0.26808" | stroke-width="0.26808" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.83826px" | font-size="1.83826px" | |||
x="115.59436" | x="115.59436" | |||
y="104.26631" | y="104.26631" | |||
transform="scale(0.92557641,1.0804078)">MPLS F<tspan | transform="scale(0.92557641,1.0804078)">MPLS F-Label<tspan | |||
font-size="1.83826px" | ||||
x="122.22934" | ||||
y="104.26631" | ||||
>-</tspan><tspan | ||||
font-size="1.83826px" | ||||
x="123.00005" | ||||
y="104.26631" | ||||
>label</tspan><tspan | ||||
font-size="1.83826px" | font-size="1.83826px" | |||
x="118.7282" | x="118.7282" | |||
y="106.56416" | y="106.56416" | |||
>20003</tspan></text> | >20003</tspan></text> | |||
<rect | <rect | |||
x="158.57849" | x="158.57849" | |||
y="12.477315" | y="12.477315" | |||
width="16.163839" | width="16.163839" | |||
height="7.1995463" | height="7.1995463" | |||
skipping to change at line 16175 ¶ | skipping to change at line 15203 ¶ | |||
stroke-width="0.26808" | stroke-width="0.26808" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.83826px" | font-size="1.83826px" | |||
x="56.311371" | x="56.311371" | |||
y="27.863342" | y="27.863342" | |||
transform="scale(0.92557641,1.0804078)">MPLS S<tspan | transform="scale(0.92557641,1.0804078)">MPLS S-Label<tspan | |||
font-size="1.83826px" | ||||
x="63.046909" | ||||
y="27.863342" | ||||
>-</tspan><tspan | ||||
font-size="1.83826px" | ||||
x="63.817638" | ||||
y="27.863342" | ||||
>label</tspan><tspan | ||||
font-size="1.83826px" | font-size="1.83826px" | |||
x="60.567173" | x="60.567173" | |||
y="30.161171" | y="30.161171" | |||
>100</tspan></text> | >100</tspan></text> | |||
<rect | <rect | |||
x="49.472607" | x="49.472607" | |||
y="34.20005" | y="34.20005" | |||
width="16.163839" | width="16.163839" | |||
height="7.1995463" | height="7.1995463" | |||
skipping to change at line 16207 ¶ | skipping to change at line 15225 ¶ | |||
stroke-width="0.26808" | stroke-width="0.26808" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.83826px" | font-size="1.83826px" | |||
x="56.361595" | x="56.361595" | |||
y="34.641941" | y="34.641941" | |||
transform="scale(0.92557641,1.0804078)">MPLS F<tspan | transform="scale(0.92557641,1.0804078)">MPLS F-Label<tspan | |||
font-size="1.83826px" | ||||
x="62.996578" | ||||
y="34.641941" | ||||
>-</tspan><tspan | ||||
font-size="1.83826px" | ||||
x="63.76733" | ||||
y="34.641941" | ||||
>label</tspan><tspan | ||||
font-size="1.83826px" | font-size="1.83826px" | |||
x="59.495441" | x="59.495441" | |||
y="36.939781" | y="36.939781" | |||
>10000</tspan></text> | >10000</tspan></text> | |||
<rect | <rect | |||
x="49.472607" | x="49.472607" | |||
y="12.477315" | y="12.477315" | |||
width="16.163839" | width="16.163839" | |||
height="7.1995463" | height="7.1995463" | |||
skipping to change at line 16283 ¶ | skipping to change at line 15291 ¶ | |||
stroke-width="0.26808" | stroke-width="0.26808" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.83826px" | font-size="1.83826px" | |||
x="142.43649" | x="142.43649" | |||
y="27.748436" | y="27.748436" | |||
transform="scale(0.92557641,1.0804078)">MPLS S<tspan | transform="scale(0.92557641,1.0804078)">MPLS S-Label<tspan | |||
font-size="1.83826px" | ||||
x="149.17201" | ||||
y="27.748436" | ||||
>-</tspan><tspan | ||||
font-size="1.83826px" | ||||
x="149.94275" | ||||
y="27.748436" | ||||
>label</tspan><tspan | ||||
font-size="1.83826px" | font-size="1.83826px" | |||
x="146.69226" | x="146.69226" | |||
y="30.046278" | y="30.046278" | |||
>102</tspan></text> | >102</tspan></text> | |||
<rect | <rect | |||
x="129.12206" | x="129.12206" | |||
y="33.951786" | y="33.951786" | |||
width="16.270182" | width="16.270182" | |||
height="7.1995463" | height="7.1995463" | |||
skipping to change at line 16315 ¶ | skipping to change at line 15313 ¶ | |||
stroke-width="0.26808" | stroke-width="0.26808" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.83826px" | font-size="1.83826px" | |||
x="142.4859" | x="142.4859" | |||
y="34.412163" | y="34.412163" | |||
transform="scale(0.92557641,1.0804078)">MPLS F<tspan | transform="scale(0.92557641,1.0804078)">MPLS F-Label<tspan | |||
font-size="1.83826px" | ||||
x="149.12091" | ||||
y="34.412163" | ||||
>-</tspan><tspan | ||||
font-size="1.83826px" | ||||
x="149.89163" | ||||
y="34.412163" | ||||
>label</tspan><tspan | ||||
font-size="1.83826px" | font-size="1.83826px" | |||
x="145.61977" | x="145.61977" | |||
y="36.709995" | y="36.709995" | |||
>10005</tspan></text> | >10005</tspan></text> | |||
<rect | <rect | |||
x="129.12206" | x="129.12206" | |||
y="12.477315" | y="12.477315" | |||
width="16.270182" | width="16.270182" | |||
height="7.1995463" | height="7.1995463" | |||
skipping to change at line 16551 ¶ | skipping to change at line 15539 ¶ | |||
stroke-width="0.26808" | stroke-width="0.26808" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.83826px" | font-size="1.83826px" | |||
x="85.695847" | x="85.695847" | |||
y="34.412163" | y="34.412163" | |||
transform="scale(0.92557641,1.0804078)">MPLS A<tspan | transform="scale(0.92557641,1.0804078)">MPLS A-Label<tspan | |||
font-size="1.83826px" | ||||
x="92.665939" | ||||
y="34.412163" | ||||
>-</tspan><tspan | ||||
font-size="1.83826px" | ||||
x="93.436668" | ||||
y="34.412163" | ||||
>label</tspan><tspan | ||||
font-size="1.83826px" | font-size="1.83826px" | |||
x="89.533417" | x="89.533417" | |||
y="36.709995" | y="36.709995" | |||
>1000</tspan></text> | >1000</tspan></text> | |||
<rect | <rect | |||
x="49.472607" | x="49.472607" | |||
y="102.34737" | y="102.34737" | |||
width="16.163839" | width="16.163839" | |||
height="7.1995096" | height="7.1995096" | |||
skipping to change at line 16583 ¶ | skipping to change at line 15561 ¶ | |||
stroke-width="0.26808" | stroke-width="0.26808" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.83826px" | font-size="1.83826px" | |||
x="56.358143" | x="56.358143" | |||
y="97.717499" | y="97.717499" | |||
transform="scale(0.92557641,1.0804078)">MPLS S<tspan | transform="scale(0.92557641,1.0804078)">MPLS S-Label<tspan | |||
font-size="1.83826px" | ||||
x="63.093662" | ||||
y="97.717499" | ||||
>-</tspan><tspan | ||||
font-size="1.83826px" | ||||
x="63.864391" | ||||
y="97.717499" | ||||
>label</tspan><tspan | ||||
font-size="1.83826px" | font-size="1.83826px" | |||
x="60.613926" | x="60.613926" | |||
y="100.01533" | y="100.01533" | |||
>103</tspan></text> | >103</tspan></text> | |||
<rect | <rect | |||
x="49.472607" | x="49.472607" | |||
y="88.072433" | y="88.072433" | |||
width="16.163839" | width="16.163839" | |||
height="7.3236766" | height="7.3236766" | |||
skipping to change at line 16659 ¶ | skipping to change at line 15627 ¶ | |||
stroke-width="0.26808" | stroke-width="0.26808" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.83826px" | font-size="1.83826px" | |||
x="85.831886" | x="85.831886" | |||
y="97.717499" | y="97.717499" | |||
transform="scale(0.92557641,1.0804078)">MPLS A<tspan | transform="scale(0.92557641,1.0804078)">MPLS A-Label<tspan | |||
font-size="1.83826px" | ||||
x="92.801979" | ||||
y="97.717499" | ||||
>-</tspan><tspan | ||||
font-size="1.83826px" | ||||
x="93.572716" | ||||
y="97.717499" | ||||
>label</tspan><tspan | ||||
font-size="1.83826px" | font-size="1.83826px" | |||
x="89.669456" | x="89.669456" | |||
y="100.01533" | y="100.01533" | |||
>1000</tspan></text> | >1000</tspan></text> | |||
<rect | <rect | |||
x="104.23822" | x="104.23822" | |||
y="102.34737" | y="102.34737" | |||
width="16.270182" | width="16.270182" | |||
height="7.1995096" | height="7.1995096" | |||
skipping to change at line 16691 ¶ | skipping to change at line 15649 ¶ | |||
stroke-width="0.26808" | stroke-width="0.26808" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.83826px" | font-size="1.83826px" | |||
x="115.42661" | x="115.42661" | |||
y="97.717499" | y="97.717499" | |||
transform="scale(0.92557641,1.0804078)">MPLS A<tspan | transform="scale(0.92557641,1.0804078)">MPLS A-Label<tspan | |||
font-size="1.83826px" | ||||
x="122.39669" | ||||
y="97.717499" | ||||
>-</tspan><tspan | ||||
font-size="1.83826px" | ||||
x="123.16743" | ||||
y="97.717499" | ||||
>label</tspan><tspan | ||||
font-size="1.83826px" | font-size="1.83826px" | |||
x="119.26418" | x="119.26418" | |||
y="100.01533" | y="100.01533" | |||
>1000</tspan></text> | >1000</tspan></text> | |||
<rect | <rect | |||
x="104.13187" | x="104.13187" | |||
y="34.07592" | y="34.07592" | |||
width="16.270182" | width="16.270182" | |||
height="7.1995463" | height="7.1995463" | |||
skipping to change at line 16723 ¶ | skipping to change at line 15671 ¶ | |||
stroke-width="0.26808" | stroke-width="0.26808" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.83826px" | font-size="1.83826px" | |||
x="115.31286" | x="115.31286" | |||
y="34.412163" | y="34.412163" | |||
transform="scale(0.92557641,1.0804078)">MPLS A<tspan | transform="scale(0.92557641,1.0804078)">MPLS A-Label<tspan | |||
font-size="1.83826px" | ||||
x="122.28296" | ||||
y="34.412163" | ||||
>-</tspan><tspan | ||||
font-size="1.83826px" | ||||
x="123.05369" | ||||
y="34.412163" | ||||
>label</tspan><tspan | ||||
font-size="1.83826px" | font-size="1.83826px" | |||
x="119.15044" | x="119.15044" | |||
y="36.709995" | y="36.709995" | |||
>1000</tspan></text> | >1000</tspan></text> | |||
<path | <path | |||
d="m 47.452114,78.64189 c 0,-0.344616 -0.239331,-0.623982 -0.534561,-0.62 3982 H 41.07452 c -0.295234,0 -0.534564,0.279366 -0.534564,0.623982 v 5.455047 c 0,0.34462 0.23933,0.623972 0.534564,0.623972 h 5.843033 c 0.29523,0 0.534561,-0 .279352 0.534561,-0.623972 z" | d="m 47.452114,78.64189 c 0,-0.344616 -0.239331,-0.623982 -0.534561,-0.62 3982 H 41.07452 c -0.295234,0 -0.534564,0.279366 -0.534564,0.623982 v 5.455047 c 0,0.34462 0.23933,0.623972 0.534564,0.623972 h 5.843033 c 0.29523,0 0.534561,-0 .279352 0.534561,-0.623972 z" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.26808" | stroke-width="0.26808" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
skipping to change at line 16813 ¶ | skipping to change at line 15751 ¶ | |||
stroke-width="0.26808" | stroke-width="0.26808" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.83826px" | font-size="1.83826px" | |||
x="56.408344" | x="56.408344" | |||
y="104.26631" | y="104.26631" | |||
transform="scale(0.92557641,1.0804078)">MPLS F<tspan | transform="scale(0.92557641,1.0804078)">MPLS F-Label<tspan | |||
font-size="1.83826px" | ||||
x="63.043331" | ||||
y="104.26631" | ||||
>-</tspan><tspan | ||||
font-size="1.83826px" | ||||
x="63.81406" | ||||
y="104.26631" | ||||
>label</tspan><tspan | ||||
font-size="1.83826px" | font-size="1.83826px" | |||
x="59.542217" | x="59.542217" | |||
y="106.56416" | y="106.56416" | |||
>10006</tspan></text> | >10006</tspan></text> | |||
<path | <path | |||
d="m 129.33472,65.232529 20.35793,16.173752" | d="m 129.33472,65.232529 20.35793,16.173752" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.26808" | stroke-width="0.26808" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
skipping to change at line 16853 ¶ | skipping to change at line 15781 ¶ | |||
stroke-width="0.26808" | stroke-width="0.26808" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.83826px" | font-size="1.83826px" | |||
x="142.39743" | x="142.39743" | |||
y="97.6026" | y="97.6026" | |||
transform="scale(0.92557641,1.0804078)">MPLS S<tspan | transform="scale(0.92557641,1.0804078)">MPLS S-Label<tspan | |||
font-size="1.83826px" | ||||
x="149.13295" | ||||
y="97.6026" | ||||
>-</tspan><tspan | ||||
font-size="1.83826px" | ||||
x="149.90369" | ||||
y="97.6026" | ||||
>label</tspan><tspan | ||||
font-size="1.83826px" | font-size="1.83826px" | |||
x="146.6532" | x="146.6532" | |||
y="99.900436" | y="99.900436" | |||
>105</tspan></text> | >105</tspan></text> | |||
<rect | <rect | |||
x="129.12206" | x="129.12206" | |||
y="109.54691" | y="109.54691" | |||
width="16.163839" | width="16.163839" | |||
height="7.1995339" | height="7.1995339" | |||
skipping to change at line 16885 ¶ | skipping to change at line 15803 ¶ | |||
stroke-width="0.26808" | stroke-width="0.26808" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.83826px" | font-size="1.83826px" | |||
x="142.448" | x="142.448" | |||
y="104.26631" | y="104.26631" | |||
transform="scale(0.92557641,1.0804078)">MPLS F<tspan | transform="scale(0.92557641,1.0804078)">MPLS F-Label<tspan | |||
font-size="1.83826px" | ||||
x="149.08298" | ||||
y="104.26631" | ||||
>-</tspan><tspan | ||||
font-size="1.83826px" | ||||
x="149.8537" | ||||
y="104.26631" | ||||
>label</tspan><tspan | ||||
font-size="1.83826px" | font-size="1.83826px" | |||
x="145.58183" | x="145.58183" | |||
y="106.56416" | y="106.56416" | |||
>10011</tspan></text> | >10011</tspan></text> | |||
<rect | <rect | |||
x="129.12206" | x="129.12206" | |||
y="87.948296" | y="87.948296" | |||
width="16.163839" | width="16.163839" | |||
height="7.1995463" | height="7.1995463" | |||
skipping to change at line 17171 ¶ | skipping to change at line 16079 ¶ | |||
font-size="1.3787px" | font-size="1.3787px" | |||
x="85.515114" | x="85.515114" | |||
y="26.714422" | y="26.714422" | |||
transform="scale(0.92557641,1.0804078)">MPLS<tspan | transform="scale(0.92557641,1.0804078)">MPLS<tspan | |||
font-size="1.3787px" | font-size="1.3787px" | |||
x="85.112999" | x="85.112999" | |||
y="28.322903" | y="28.322903" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.3787px" | ||||
x="85.883728" | ||||
y="28.322903" | ||||
>-</tspan><tspan | ||||
font-size="1.3787px" | ||||
x="86.4534" | ||||
y="28.322903" | ||||
>label</tspan><tspan | ||||
font-size="1.83826px" | font-size="1.83826px" | |||
x="85.698753" | x="85.698753" | |||
y="30.505838" | y="30.505838" | |||
>101</tspan></text> | >101</tspan></text> | |||
<rect | <rect | |||
x="76.802231" | x="76.802231" | |||
y="19.676861" | y="19.676861" | |||
width="8.0819197" | width="8.0819197" | |||
height="7.1995463" | height="7.1995463" | |||
skipping to change at line 17205 ¶ | skipping to change at line 16103 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.49359px" | font-size="1.49359px" | |||
x="86.621643" | x="86.621643" | |||
y="20.395372" | y="20.395372" | |||
transform="scale(0.92557641,1.0804078)">IP<tspan | transform="scale(0.92557641,1.0804078)">IP<tspan | |||
font-size="1.49359px" | font-size="1.49359px" | |||
x="84.962219" | x="83.962219" | |||
y="22.11875" | y="22.11875" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="1.49359px" | font-size="1.49359px" | |||
x="84.962219" | x="83.962219" | |||
y="23.842125" | y="23.842125" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<rect | <rect | |||
x="76.802231" | x="76.802231" | |||
y="12.477315" | y="12.477315" | |||
width="8.0819197" | width="8.0819197" | |||
height="7.1995463" | height="7.1995463" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.26808" | stroke-width="0.26808" | |||
skipping to change at line 17257 ¶ | skipping to change at line 16155 ¶ | |||
font-size="1.3787px" | font-size="1.3787px" | |||
x="94.25412" | x="94.25412" | |||
y="26.714422" | y="26.714422" | |||
transform="scale(0.92557641,1.0804078)">MPLS<tspan | transform="scale(0.92557641,1.0804078)">MPLS<tspan | |||
font-size="1.3787px" | font-size="1.3787px" | |||
x="93.852005" | x="93.852005" | |||
y="28.322903" | y="28.322903" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.3787px" | ||||
x="94.622734" | ||||
y="28.322903" | ||||
>-</tspan><tspan | ||||
font-size="1.3787px" | ||||
x="95.192406" | ||||
y="28.322903" | ||||
>label</tspan><tspan | ||||
font-size="1.83826px" | font-size="1.83826px" | |||
x="94.437767" | x="94.437767" | |||
y="30.505838" | y="30.505838" | |||
>104</tspan></text> | >104</tspan></text> | |||
<rect | <rect | |||
x="84.884148" | x="84.884148" | |||
y="19.676861" | y="19.676861" | |||
width="8.0819197" | width="8.0819197" | |||
height="7.1995463" | height="7.1995463" | |||
skipping to change at line 17291 ¶ | skipping to change at line 16179 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.49359px" | font-size="1.49359px" | |||
x="95.360649" | x="95.360649" | |||
y="20.395372" | y="20.395372" | |||
transform="scale(0.92557641,1.0804078)">IP<tspan | transform="scale(0.92557641,1.0804078)">IP<tspan | |||
font-size="1.49359px" | font-size="1.49359px" | |||
x="93.701233" | x="92.701233" | |||
y="22.11875" | y="22.11875" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="1.49359px" | font-size="1.49359px" | |||
x="93.701233" | x="92.701233" | |||
y="23.842125" | y="23.842125" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<rect | <rect | |||
x="84.884148" | x="84.884148" | |||
y="12.477315" | y="12.477315" | |||
width="8.0819197" | width="8.0819197" | |||
height="7.1995463" | height="7.1995463" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.26808" | stroke-width="0.26808" | |||
skipping to change at line 17343 ¶ | skipping to change at line 16231 ¶ | |||
font-size="1.3787px" | font-size="1.3787px" | |||
x="85.651154" | x="85.651154" | |||
y="90.019753" | y="90.019753" | |||
transform="scale(0.92557641,1.0804078)">MPLS<tspan | transform="scale(0.92557641,1.0804078)">MPLS<tspan | |||
font-size="1.3787px" | font-size="1.3787px" | |||
x="85.249039" | x="85.249039" | |||
y="91.628235" | y="91.628235" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.3787px" | ||||
x="86.019775" | ||||
y="91.628235" | ||||
>-</tspan><tspan | ||||
font-size="1.3787px" | ||||
x="86.589439" | ||||
y="91.628235" | ||||
>label</tspan><tspan | ||||
font-size="1.83826px" | font-size="1.83826px" | |||
x="85.834801" | x="85.834801" | |||
y="93.81118" | y="93.81118" | |||
>101</tspan></text> | >101</tspan></text> | |||
<rect | <rect | |||
x="84.990486" | x="84.990486" | |||
y="95.271973" | y="95.271973" | |||
width="8.0819197" | width="8.0819197" | |||
height="7.1995463" | height="7.1995463" | |||
skipping to change at line 17380 ¶ | skipping to change at line 16258 ¶ | |||
font-size="1.3787px" | font-size="1.3787px" | |||
x="94.390167" | x="94.390167" | |||
y="90.019753" | y="90.019753" | |||
transform="scale(0.92557641,1.0804078)">MPLS<tspan | transform="scale(0.92557641,1.0804078)">MPLS<tspan | |||
font-size="1.3787px" | font-size="1.3787px" | |||
x="93.988052" | x="93.988052" | |||
y="91.628235" | y="91.628235" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.3787px" | ||||
x="94.758774" | ||||
y="91.628235" | ||||
>-</tspan><tspan | ||||
font-size="1.3787px" | ||||
x="95.328453" | ||||
y="91.628235" | ||||
>label</tspan><tspan | ||||
font-size="1.83826px" | font-size="1.83826px" | |||
x="94.573807" | x="94.573807" | |||
y="93.81118" | y="93.81118" | |||
>104</tspan></text> | >104</tspan></text> | |||
<rect | <rect | |||
x="76.908569" | x="76.908569" | |||
y="88.072433" | y="88.072433" | |||
width="8.0819197" | width="8.0819197" | |||
height="7.1995463" | height="7.1995463" | |||
skipping to change at line 17414 ¶ | skipping to change at line 16282 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.49359px" | font-size="1.49359px" | |||
x="86.757553" | x="86.757553" | |||
y="83.700706" | y="83.700706" | |||
transform="scale(0.92557641,1.0804078)">IP<tspan | transform="scale(0.92557641,1.0804078)">IP<tspan | |||
font-size="1.49359px" | font-size="1.49359px" | |||
x="85.09816" | x="83.09816" | |||
y="85.42408" | y="85.42408" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="1.49359px" | font-size="1.49359px" | |||
x="85.09816" | x="83.09816" | |||
y="87.147461" | y="87.147461" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<rect | <rect | |||
x="84.990486" | x="84.990486" | |||
y="88.072433" | y="88.072433" | |||
width="8.0819197" | width="8.0819197" | |||
height="7.1995463" | height="7.1995463" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.26808" | stroke-width="0.26808" | |||
skipping to change at line 17441 ¶ | skipping to change at line 16309 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.49359px" | font-size="1.49359px" | |||
x="95.496559" | x="95.496559" | |||
y="83.700706" | y="83.700706" | |||
transform="scale(0.92557641,1.0804078)">IP<tspan | transform="scale(0.92557641,1.0804078)">IP<tspan | |||
font-size="1.49359px" | font-size="1.49359px" | |||
x="93.837166" | x="92.837166" | |||
y="85.42408" | y="85.42408" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="1.49359px" | font-size="1.49359px" | |||
x="93.837166" | x="92.837166" | |||
y="87.147461" | y="87.147461" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<rect | <rect | |||
x="76.908569" | x="76.908569" | |||
y="80.997025" | y="80.997025" | |||
width="8.0819197" | width="8.0819197" | |||
height="7.1995463" | height="7.1995463" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.26808" | stroke-width="0.26808" | |||
skipping to change at line 17515 ¶ | skipping to change at line 16383 ¶ | |||
font-size="1.3787px" | font-size="1.3787px" | |||
x="115.13134" | x="115.13134" | |||
y="26.714422" | y="26.714422" | |||
transform="scale(0.92557641,1.0804078)">MPLS<tspan | transform="scale(0.92557641,1.0804078)">MPLS<tspan | |||
font-size="1.3787px" | font-size="1.3787px" | |||
x="114.72923" | x="114.72923" | |||
y="28.322903" | y="28.322903" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.3787px" | ||||
x="115.49995" | ||||
y="28.322903" | ||||
>-</tspan><tspan | ||||
font-size="1.3787px" | ||||
x="116.06962" | ||||
y="28.322903" | ||||
>label</tspan><tspan | ||||
font-size="1.83826px" | font-size="1.83826px" | |||
x="115.31496" | x="115.31496" | |||
y="30.505838" | y="30.505838" | |||
>101</tspan></text> | >101</tspan></text> | |||
<rect | <rect | |||
x="104.13187" | x="104.13187" | |||
y="19.676861" | y="19.676861" | |||
width="8.0819197" | width="8.0819197" | |||
height="7.1995463" | height="7.1995463" | |||
skipping to change at line 17549 ¶ | skipping to change at line 16407 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.49359px" | font-size="1.49359px" | |||
x="116.23774" | x="116.23774" | |||
y="20.395372" | y="20.395372" | |||
transform="scale(0.92557641,1.0804078)">IP<tspan | transform="scale(0.92557641,1.0804078)">IP<tspan | |||
font-size="1.49359px" | font-size="1.49359px" | |||
x="114.57832" | x="113.57832" | |||
y="22.11875" | y="22.11875" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="1.49359px" | font-size="1.49359px" | |||
x="114.57832" | x="113.57832" | |||
y="23.842125" | y="23.842125" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<rect | <rect | |||
x="112.2138" | x="112.2138" | |||
y="19.676861" | y="19.676861" | |||
width="8.188261" | width="8.188261" | |||
height="7.1995463" | height="7.1995463" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.26808" | stroke-width="0.26808" | |||
skipping to change at line 17576 ¶ | skipping to change at line 16434 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.49359px" | font-size="1.49359px" | |||
x="124.97757" | x="124.97757" | |||
y="20.395372" | y="20.395372" | |||
transform="scale(0.92557641,1.0804078)">IP<tspan | transform="scale(0.92557641,1.0804078)">IP<tspan | |||
font-size="1.49359px" | font-size="1.49359px" | |||
x="123.31812" | x="122.31812" | |||
y="22.11875" | y="22.11875" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="1.49359px" | font-size="1.49359px" | |||
x="123.31812" | x="122.31812" | |||
y="23.842125" | y="23.842125" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<rect | <rect | |||
x="104.13187" | x="104.13187" | |||
y="12.477315" | y="12.477315" | |||
width="8.0819197" | width="8.0819197" | |||
height="7.1995463" | height="7.1995463" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.26808" | stroke-width="0.26808" | |||
skipping to change at line 17650 ¶ | skipping to change at line 16508 ¶ | |||
font-size="1.3787px" | font-size="1.3787px" | |||
x="115.24506" | x="115.24506" | |||
y="90.134636" | y="90.134636" | |||
transform="scale(0.92557641,1.0804078)">MPLS<tspan | transform="scale(0.92557641,1.0804078)">MPLS<tspan | |||
font-size="1.3787px" | font-size="1.3787px" | |||
x="114.84296" | x="114.84296" | |||
y="91.743126" | y="91.743126" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.3787px" | ||||
x="115.61371" | ||||
y="91.743126" | ||||
>-</tspan><tspan | ||||
font-size="1.3787px" | ||||
x="116.18338" | ||||
y="91.743126" | ||||
>label</tspan><tspan | ||||
font-size="1.60848px" | font-size="1.60848px" | |||
x="115.6298" | x="115.6298" | |||
y="93.696281" | y="93.696281" | |||
>101</tspan></text> | >101</tspan></text> | |||
<rect | <rect | |||
x="112.32014" | x="112.32014" | |||
y="95.271973" | y="95.271973" | |||
width="8.188261" | width="8.188261" | |||
height="7.1995463" | height="7.1995463" | |||
skipping to change at line 17687 ¶ | skipping to change at line 16535 ¶ | |||
font-size="1.3787px" | font-size="1.3787px" | |||
x="123.98489" | x="123.98489" | |||
y="90.019753" | y="90.019753" | |||
transform="scale(0.92557641,1.0804078)">MPLS<tspan | transform="scale(0.92557641,1.0804078)">MPLS<tspan | |||
font-size="1.3787px" | font-size="1.3787px" | |||
x="123.58278" | x="123.58278" | |||
y="91.628235" | y="91.628235" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.3787px" | ||||
x="124.35351" | ||||
y="91.628235" | ||||
>-</tspan><tspan | ||||
font-size="1.3787px" | ||||
x="124.92318" | ||||
y="91.628235" | ||||
>label</tspan><tspan | ||||
font-size="1.83826px" | font-size="1.83826px" | |||
x="124.16853" | x="124.16853" | |||
y="93.81118" | y="93.81118" | |||
>104</tspan></text> | >104</tspan></text> | |||
<rect | <rect | |||
x="104.23822" | x="104.23822" | |||
y="88.072433" | y="88.072433" | |||
width="8.0819197" | width="8.0819197" | |||
height="7.1995463" | height="7.1995463" | |||
skipping to change at line 17721 ¶ | skipping to change at line 16559 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.49359px" | font-size="1.49359px" | |||
x="116.35262" | x="116.35262" | |||
y="83.700706" | y="83.700706" | |||
transform="scale(0.92557641,1.0804078)">IP<tspan | transform="scale(0.92557641,1.0804078)">IP<tspan | |||
font-size="1.49359px" | font-size="1.49359px" | |||
x="114.69321" | x="113.69321" | |||
y="85.42408" | y="85.42408" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="1.49359px" | font-size="1.49359px" | |||
x="114.69321" | x="113.69321" | |||
y="87.147461" | y="87.147461" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<rect | <rect | |||
x="112.32014" | x="112.32014" | |||
y="88.072433" | y="88.072433" | |||
width="8.188261" | width="8.188261" | |||
height="7.1995463" | height="7.1995463" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.26808" | stroke-width="0.26808" | |||
skipping to change at line 17748 ¶ | skipping to change at line 16586 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.49359px" | font-size="1.49359px" | |||
x="125.09129" | x="125.09129" | |||
y="83.700706" | y="83.700706" | |||
transform="scale(0.92557641,1.0804078)">IP<tspan | transform="scale(0.92557641,1.0804078)">IP<tspan | |||
font-size="1.49359px" | font-size="1.49359px" | |||
x="123.43187" | x="122.43187" | |||
y="85.42408" | y="85.42408" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="1.49359px" | font-size="1.49359px" | |||
x="123.43187" | x="122.43187" | |||
y="87.147461" | y="87.147461" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<rect | <rect | |||
x="104.23822" | x="104.23822" | |||
y="80.997025" | y="80.997025" | |||
width="8.0819197" | width="8.0819197" | |||
height="7.1995463" | height="7.1995463" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.26808" | stroke-width="0.26808" | |||
skipping to change at line 17805 ¶ | skipping to change at line 16643 ¶ | |||
transform="scale(0.92557641,1.0804078)">DATA <tspan | transform="scale(0.92557641,1.0804078)">DATA <tspan | |||
font-size="1.60848px" | font-size="1.60848px" | |||
x="125.30804" | x="125.30804" | |||
y="79.909279" | y="79.909279" | |||
>2</tspan><tspan | >2</tspan><tspan | |||
font-size="3.79143px" | font-size="3.79143px" | |||
x="163.70938" | x="163.70938" | |||
y="39.23761" | y="39.23761" | |||
>Note: S and A labels in this</tspan><tspan | >Note: S- and A-Labels in this</tspan><tspan | |||
font-size="3.79143px" | font-size="3.79143px" | |||
x="163.70938" | x="163.70938" | |||
y="43.718391" | y="43.718391" | |||
>diagram include d-CWs of their</tspan><tspan | >diagram include d-CWs of their</tspan><tspan | |||
font-size="3.79143px" | font-size="3.79143px" | |||
x="163.70938" | x="163.70938" | |||
y="48.199173" | y="48.199173" | |||
>own.</tspan></text> | >own.</tspan></text> | |||
skipping to change at line 17937 ¶ | skipping to change at line 16775 ¶ | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
/> | /> | |||
<text | <text | |||
font-size="2.64251px" | font-size="2.64251px" | |||
x="70.38549" | x="70.38549" | |||
y="74.509369" | y="74.509369" | |||
transform="scale(0.92557641,1.0804078)">aggregation<tspan | transform="scale(0.92557641,1.0804078)">aggregation<tspan | |||
font-size="2.64251px" | font-size="2.64251px" | |||
x="127.93602" | x="125.93602" | |||
y="74.394478" | y="74.394478" | |||
>disaggregation</tspan></text> | >disaggregation</tspan></text> | |||
</g> | </g> | |||
</svg> | </svg> | |||
</artwork> | </artwork> | |||
</artset> | ||||
</figure> | </figure> | |||
<t> <xref target="example-detnet-json-service-aggregation-c-3"/> | <t> <xref target="example-detnet-json-service-aggregation-c-3"/> | |||
contains the operational JSON configuration for the ingress aggregat ion | contains the operational JSON configuration for the ingress aggregat ion | |||
node illustrated in <xref target="case-c3"/>. | node illustrated in <xref target="case-c3"/>. | |||
In this example a relay performing aggregation at the service sub-la | In this example, a relay performing aggregation at the service sub-l | |||
yer is illustrated. | ayer is illustrated. | |||
Two DetNet flows DN1 and DN2 are relayed at each service | Two DetNet flows -- DN-1 and DN-2 -- are relayed at each service | |||
sub-layer with MPLS labels 101 and 104 respectively, and each servic | sub-layer with MPLS labels 101 and 104, respectively, and each servi | |||
e sub-layer is | ce sub-layer is | |||
aggregated at a single service sub-layer flow and replicated. | aggregated at a single service sub-layer flow and replicated. | |||
<xref target="example-detnet-json-service-disaggregation-c-3"/> | <xref target="example-detnet-json-service-disaggregation-c-3"/> | |||
contains the operational JSON configuration for the egress disaggreg ation | contains the operational JSON configuration for the egress disaggreg ation | |||
node illustrated in <xref target="case-c3"/>. | node illustrated in <xref target="case-c3"/>. | |||
</t> | </t> | |||
<figure anchor="example-detnet-json-service-aggregation-c-3"> | <figure anchor="example-detnet-json-service-aggregation-c-3"> | |||
<name>Example C-3 DetNet Relay Service Sub-Layer Aggregation</name> | <name>Example C-3: DetNet Relay Service Sub-layer Aggregation</name> | |||
<artwork name="" type="" align="left" alt=""><![CDATA[ | <sourcecode name="" type="json"><![CDATA[ | |||
{ | { | |||
"ietf-detnet:detnet": { | "ietf-detnet:detnet": { | |||
"traffic-profile": [ | "traffic-profile": [ | |||
{ | { | |||
"name": "pf-1", | "name": "pf-1", | |||
"traffic-requirements": { | "traffic-requirements": { | |||
"min-bandwidth": "100000000", | "min-bandwidth": "100000000", | |||
"max-latency": 100000000, | "max-latency": 100000000, | |||
"max-latency-variation": 10000000, | "max-latency-variation": 10000000, | |||
"max-loss": "0.0000001", | "max-loss": "0.0000001", | |||
skipping to change at line 18276 ¶ | skipping to change at line 17113 ¶ | |||
"name": "eth3", | "name": "eth3", | |||
"type": "iana-if-type:ethernetCsmacd", | "type": "iana-if-type:ethernetCsmacd", | |||
"oper-status": "up", | "oper-status": "up", | |||
"statistics": { | "statistics": { | |||
"discontinuity-time": "2024-02-21T18:59:00-05:00" | "discontinuity-time": "2024-02-21T18:59:00-05:00" | |||
} | } | |||
} | } | |||
] | ] | |||
} | } | |||
} | } | |||
]]></artwork> | ]]></sourcecode> | |||
</figure> | </figure> | |||
<figure anchor="example-detnet-json-service-disaggregation-c-3"> | <figure anchor="example-detnet-json-service-disaggregation-c-3"> | |||
<name>Example C-3 DetNet Relay Service Sub-Layer Disaggregation</name> | <name>Example C-3: DetNet Relay Service Sub-layer Disaggregation</name | |||
<artwork name="" type="" align="left" alt=""><![CDATA[ | > | |||
<sourcecode name="" type="json"><![CDATA[ | ||||
{ | { | |||
"ietf-detnet:detnet": { | "ietf-detnet:detnet": { | |||
"traffic-profile": [ | "traffic-profile": [ | |||
{ | { | |||
"name": "pf-1", | "name": "pf-1", | |||
"traffic-requirements": { | "traffic-requirements": { | |||
"min-bandwidth": "100000000", | "min-bandwidth": "100000000", | |||
"max-latency": 100000000, | "max-latency": 100000000, | |||
"max-latency-variation": 10000000, | "max-latency-variation": 10000000, | |||
"max-loss": "0.0000001", | "max-loss": "0.0000001", | |||
skipping to change at line 18598 ¶ | skipping to change at line 17435 ¶ | |||
"name": "eth3", | "name": "eth3", | |||
"type": "iana-if-type:ethernetCsmacd", | "type": "iana-if-type:ethernetCsmacd", | |||
"oper-status": "up", | "oper-status": "up", | |||
"statistics": { | "statistics": { | |||
"discontinuity-time": "2024-02-21T18:59:00-05:00" | "discontinuity-time": "2024-02-21T18:59:00-05:00" | |||
} | } | |||
} | } | |||
] | ] | |||
} | } | |||
} | } | |||
]]></artwork> | ]]></sourcecode> | |||
</figure> | </figure> | |||
</section> | </section> | |||
<section numbered="true" toc="default"> | <section numbered="true" toc="default"> | |||
<name>Example C-4 JSON Relay Service Sub-Layer Aggregation/Disaggr egation</name> | <name>Example C-4: DetNet Relay Service Sub-layer Aggregation/Disa ggregation</name> | |||
<t> | <t> | |||
<xref target="case-c4"/> | <xref target="case-c4"/> | |||
illustrates the relay node DetNet forwarding sub-layer | illustrates the DetNet relay node's forwarding sub-layer | |||
flows 1 and 2 aggregated into a service sub-layer | flows 1 and 2 aggregated into a service sub-layer | |||
DetNet flow. Multiple DetNet flows with the same requirements | DetNet flow. Multiple DetNet flows with the same requirements | |||
which can use the same path are aggregated into a single | that can use the same path are aggregated into a single | |||
aggregated DetNet flow. Service protection is performed by the | aggregated DetNet flow. Service protection is performed by the | |||
service sub-layer of the aggregated DetNet flow and resource all ocation | service sub-layer of the aggregated DetNet flow, and resource al location | |||
is performed by the forwarding sub-layer of each aggregated DetN et flow. | is performed by the forwarding sub-layer of each aggregated DetN et flow. | |||
A diagram illustrating both aggregation and disaggregation is sh own and then the | <xref target="case-c4"/> illustrates both aggregation and disagg regation, and the | |||
corresponding JSON operational data follows. | corresponding JSON operational data follows. | |||
</t> | </t> | |||
<figure anchor="case-c4"> | <figure anchor="case-c4"> | |||
<name>Case C-4 Example Service Aggregation/Disaggregation</name> | <name>Case C-4: Example Service Aggregation/Disaggregation</name | |||
<artset> | > | |||
<artwork align="left" type="ascii-art" name="" alt=""><![CDATA[ | ||||
Please consult the PDF or HTML versions for the Case C-4 Diagram | ||||
]]></artwork> | ||||
<artwork type="svg"> | <artwork type="svg"> | |||
<svg | <svg | |||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" | xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" | |||
xmlns:svg="http://www.w3.org/2000/svg" | xmlns:svg="http://www.w3.org/2000/svg" | |||
xmlns="http://www.w3.org/2000/svg" | xmlns="http://www.w3.org/2000/svg" | |||
width="180mm" | width="180mm" | |||
height="155mm" | height="155mm" | |||
viewBox="0 0 210 155" | viewBox="0 0 210 155" | |||
version="1.1" | version="1.1" | |||
> | > | |||
skipping to change at line 18773 ¶ | skipping to change at line 17604 ¶ | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.218253" | stroke-width="0.218253" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
/> | /> | |||
<text | <text | |||
font-size="2.86847px" | font-size="2.86847px" | |||
x="107.06764" | x="106.06764" | |||
y="84.96907" | y="84.96907" | |||
transform="scale(0.85569064,1.1686467)">Transit 2</text> | transform="scale(0.85569064,1.1686467)">Transit 2</text> | |||
<path | <path | |||
d="m 99.493643,89.246081 c 0,-0.404634 -0.240179,-0.732653 -0.536455,-0.7 32653 h -5.863773 c -0.296282,0 -0.536462,0.328019 -0.536462,0.732653 v 6.405145 c 0,0.404618 0.24018,0.732644 0.536462,0.732644 h 5.863773 c 0.296276,0 0.53645 5,-0.328026 0.536455,-0.732644 z" | d="m 99.493643,89.246081 c 0,-0.404634 -0.240179,-0.732653 -0.536455,-0.7 32653 h -5.863773 c -0.296282,0 -0.536462,0.328019 -0.536462,0.732653 v 6.405145 c 0,0.404618 0.24018,0.732644 0.536462,0.732644 h 5.863773 c 0.296276,0 0.53645 5,-0.328026 0.536455,-0.732644 z" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.291003" | stroke-width="0.291003" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
skipping to change at line 18798 ¶ | skipping to change at line 17629 ¶ | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.218253" | stroke-width="0.218253" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
/> | /> | |||
<text | <text | |||
font-size="2.86847px" | font-size="2.86847px" | |||
x="107.06764" | x="106.06764" | |||
y="52.293537" | y="52.293537" | |||
transform="scale(0.85569064,1.1686467)">Transit </text> | transform="scale(0.85569064,1.1686467)">Transit 1</text> | |||
<path | <path | |||
d="m 99.493643,51.205671 c 0,-0.404634 -0.240179,-0.732655 -0.536455,-0.7 32655 h -5.863773 c -0.296282,0 -0.536462,0.328021 -0.536462,0.732655 v 6.40514 c 0,0.404627 0.24018,0.732649 0.536462,0.732649 h 5.863773 c 0.296276,0 0.536455 ,-0.328022 0.536455,-0.732649 z" | d="m 99.493643,51.205671 c 0,-0.404634 -0.240179,-0.732655 -0.536455,-0.7 32655 h -5.863773 c -0.296282,0 -0.536462,0.328021 -0.536462,0.732655 v 6.40514 c 0,0.404627 0.24018,0.732649 0.536462,0.732649 h 5.863773 c 0.296276,0 0.536455 ,-0.328022 0.536455,-0.732649 z" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.291003" | stroke-width="0.291003" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
/> | /> | |||
<path | <path | |||
skipping to change at line 18947 ¶ | skipping to change at line 17778 ¶ | |||
stroke-width="0.291003" | stroke-width="0.291003" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.99545px" | font-size="1.99545px" | |||
x="89.847633" | x="89.847633" | |||
y="42.316277" | y="42.316277" | |||
transform="scale(0.85569064,1.1686467)">MPLS F<tspan | transform="scale(0.85569064,1.1686467)">MPLS F-Label<tspan | |||
font-size="1.99545px" | ||||
x="97.049973" | ||||
y="42.316277" | ||||
>-</tspan><tspan | ||||
font-size="1.99545px" | ||||
x="97.886612" | ||||
y="42.316277" | ||||
>label</tspan><tspan | ||||
font-size="1.99545px" | font-size="1.99545px" | |||
x="93.249466" | x="93.249466" | |||
y="44.810593" | y="44.810593" | |||
>20000</tspan></text> | >20000</tspan></text> | |||
<rect | <rect | |||
x="74.308167" | x="74.308167" | |||
y="134.57001" | y="134.57001" | |||
width="16.221159" | width="16.221159" | |||
height="8.4534101" | height="8.4534101" | |||
skipping to change at line 18979 ¶ | skipping to change at line 17800 ¶ | |||
stroke-width="0.291003" | stroke-width="0.291003" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.99545px" | font-size="1.99545px" | |||
x="89.9953" | x="89.9953" | |||
y="118.26819" | y="118.26819" | |||
transform="scale(0.85569064,1.1686467)">MPLS F<tspan | transform="scale(0.85569064,1.1686467)">MPLS F-Label<tspan | |||
font-size="1.99545px" | ||||
x="97.197632" | ||||
y="118.26819" | ||||
>-</tspan><tspan | ||||
font-size="1.99545px" | ||||
x="98.034264" | ||||
y="118.26819" | ||||
>label</tspan><tspan | ||||
font-size="1.99545px" | font-size="1.99545px" | |||
x="93.397133" | x="93.397133" | |||
y="120.7625" | y="120.7625" | |||
>20001</tspan></text> | >20001</tspan></text> | |||
<rect | <rect | |||
x="101.62801" | x="101.62801" | |||
y="45.663311" | y="45.663311" | |||
width="16.327875" | width="16.327875" | |||
height="8.5991583" | height="8.5991583" | |||
skipping to change at line 19011 ¶ | skipping to change at line 17822 ¶ | |||
stroke-width="0.291003" | stroke-width="0.291003" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.99545px" | font-size="1.99545px" | |||
x="122.00236" | x="122.00236" | |||
y="42.316277" | y="42.316277" | |||
transform="scale(0.85569064,1.1686467)">MPLS F<tspan | transform="scale(0.85569064,1.1686467)">MPLS F-Label<tspan | |||
font-size="1.99545px" | ||||
x="129.2047" | ||||
y="42.316277" | ||||
>-</tspan><tspan | ||||
font-size="1.99545px" | ||||
x="130.04134" | ||||
y="42.316277" | ||||
>label</tspan><tspan | ||||
font-size="1.99545px" | font-size="1.99545px" | |||
x="125.40419" | x="125.40419" | |||
y="44.810593" | y="44.810593" | |||
>20002</tspan></text> | >20002</tspan></text> | |||
<rect | <rect | |||
x="101.73473" | x="101.73473" | |||
y="134.57001" | y="134.57001" | |||
width="16.327875" | width="16.327875" | |||
height="8.4534101" | height="8.4534101" | |||
skipping to change at line 19043 ¶ | skipping to change at line 17844 ¶ | |||
stroke-width="0.291003" | stroke-width="0.291003" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.99545px" | font-size="1.99545px" | |||
x="122.12083" | x="122.12083" | |||
y="118.26819" | y="118.26819" | |||
transform="scale(0.85569064,1.1686467)">MPLS F<tspan | transform="scale(0.85569064,1.1686467)">MPLS F-Label<tspan | |||
font-size="1.99545px" | ||||
x="129.32318" | ||||
y="118.26819" | ||||
>-</tspan><tspan | ||||
font-size="1.99545px" | ||||
x="130.15982" | ||||
y="118.26819" | ||||
>label</tspan><tspan | ||||
font-size="1.99545px" | font-size="1.99545px" | |||
x="125.52267" | x="125.52267" | |||
y="120.7625" | y="120.7625" | |||
>20003</tspan></text> | >20003</tspan></text> | |||
<rect | <rect | |||
x="156.2677" | x="156.2677" | |||
y="3.396188" | y="3.396188" | |||
width="16.221159" | width="16.221159" | |||
height="8.4534388" | height="8.4534388" | |||
skipping to change at line 19146 ¶ | skipping to change at line 17937 ¶ | |||
stroke-width="0.291003" | stroke-width="0.291003" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.99545px" | font-size="1.99545px" | |||
x="57.863644" | x="57.863644" | |||
y="20.615728" | y="20.615728" | |||
transform="scale(0.85569064,1.1686467)">MPLS S<tspan | transform="scale(0.85569064,1.1686467)">MPLS S-Label<tspan | |||
font-size="1.99545px" | ||||
x="65.175102" | ||||
y="20.615728" | ||||
>-</tspan><tspan | ||||
font-size="1.99545px" | ||||
x="66.011749" | ||||
y="20.615728" | ||||
>label</tspan><tspan | ||||
font-size="1.99545px" | font-size="1.99545px" | |||
x="62.48333" | x="62.48333" | |||
y="23.110044" | y="23.110044" | |||
>100</tspan></text> | >100</tspan></text> | |||
<rect | <rect | |||
x="46.881599" | x="46.881599" | |||
y="28.756462" | y="28.756462" | |||
width="16.221159" | width="16.221159" | |||
height="8.4534388" | height="8.4534388" | |||
skipping to change at line 19178 ¶ | skipping to change at line 17959 ¶ | |||
stroke-width="0.291003" | stroke-width="0.291003" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.99545px" | font-size="1.99545px" | |||
x="57.918274" | x="57.918274" | |||
y="27.724531" | y="27.724531" | |||
transform="scale(0.85569064,1.1686467)">MPLS F<tspan | transform="scale(0.85569064,1.1686467)">MPLS F-Label<tspan | |||
font-size="1.99545px" | ||||
x="65.120605" | ||||
y="27.724531" | ||||
>-</tspan><tspan | ||||
font-size="1.99545px" | ||||
x="65.957253" | ||||
y="27.724531" | ||||
>label</tspan><tspan | ||||
font-size="1.99545px" | font-size="1.99545px" | |||
x="61.320107" | x="61.320107" | |||
y="30.218847" | y="30.218847" | |||
>10000</tspan></text> | >10000</tspan></text> | |||
<rect | <rect | |||
x="46.881599" | x="46.881599" | |||
y="3.396188" | y="3.396188" | |||
width="16.221159" | width="16.221159" | |||
height="8.4534388" | height="8.4534388" | |||
skipping to change at line 19254 ¶ | skipping to change at line 18025 ¶ | |||
stroke-width="0.291003" | stroke-width="0.291003" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.99545px" | font-size="1.99545px" | |||
x="153.97824" | x="153.97824" | |||
y="20.615728" | y="20.615728" | |||
transform="scale(0.85569064,1.1686467)">MPLS S<tspan | transform="scale(0.85569064,1.1686467)">MPLS S-Label<tspan | |||
font-size="1.99545px" | ||||
x="161.2897" | ||||
y="20.615728" | ||||
>-</tspan><tspan | ||||
font-size="1.99545px" | ||||
x="162.12634" | ||||
y="20.615728" | ||||
>label</tspan><tspan | ||||
font-size="1.99545px" | font-size="1.99545px" | |||
x="158.5979" | x="158.5979" | |||
y="23.110044" | y="23.110044" | |||
>102</tspan></text> | >102</tspan></text> | |||
<rect | <rect | |||
x="129.05457" | x="129.05457" | |||
y="28.756462" | y="28.756462" | |||
width="16.221159" | width="16.221159" | |||
height="8.4534388" | height="8.4534388" | |||
skipping to change at line 19286 ¶ | skipping to change at line 18047 ¶ | |||
stroke-width="0.291003" | stroke-width="0.291003" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.99545px" | font-size="1.99545px" | |||
x="154.03188" | x="154.03188" | |||
y="27.724531" | y="27.724531" | |||
transform="scale(0.85569064,1.1686467)">MPLS F<tspan | transform="scale(0.85569064,1.1686467)">MPLS F-Label<tspan | |||
font-size="1.99545px" | ||||
x="161.23421" | ||||
y="27.724531" | ||||
>-</tspan><tspan | ||||
font-size="1.99545px" | ||||
x="162.07085" | ||||
y="27.724531" | ||||
>label</tspan><tspan | ||||
font-size="1.99545px" | font-size="1.99545px" | |||
x="157.4337" | x="157.4337" | |||
y="30.218847" | y="30.218847" | |||
>10005</tspan></text> | >10005</tspan></text> | |||
<rect | <rect | |||
x="129.05457" | x="129.05457" | |||
y="3.396188" | y="3.396188" | |||
width="16.221159" | width="16.221159" | |||
height="8.4534388" | height="8.4534388" | |||
skipping to change at line 19522 ¶ | skipping to change at line 18273 ¶ | |||
stroke-width="0.291003" | stroke-width="0.291003" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.99545px" | font-size="1.99545px" | |||
x="89.665794" | x="89.665794" | |||
y="35.082764" | y="35.082764" | |||
transform="scale(0.85569064,1.1686467)">MPLS A<tspan | transform="scale(0.85569064,1.1686467)">MPLS A-Label<tspan | |||
font-size="1.99545px" | ||||
x="97.231895" | ||||
y="35.082764" | ||||
>-</tspan><tspan | ||||
font-size="1.99545px" | ||||
x="98.06852" | ||||
y="35.082764" | ||||
>label</tspan><tspan | ||||
font-size="1.99545px" | font-size="1.99545px" | |||
x="93.831512" | x="93.831512" | |||
y="37.57708" | y="37.57708" | |||
>1000</tspan></text> | >1000</tspan></text> | |||
<rect | <rect | |||
x="46.774883" | x="46.774883" | |||
y="125.97084" | y="125.97084" | |||
width="16.221159" | width="16.221159" | |||
height="8.4534235" | height="8.4534235" | |||
skipping to change at line 19554 ¶ | skipping to change at line 18295 ¶ | |||
stroke-width="0.291003" | stroke-width="0.291003" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.99545px" | font-size="1.99545px" | |||
x="57.808392" | x="57.808392" | |||
y="111.03468" | y="111.03468" | |||
transform="scale(0.85569064,1.1686467)">MPLS S<tspan | transform="scale(0.85569064,1.1686467)">MPLS S-Label<tspan | |||
font-size="1.99545px" | ||||
x="65.119858" | ||||
y="111.03468" | ||||
>-</tspan><tspan | ||||
font-size="1.99545px" | ||||
x="65.95649" | ||||
y="111.03468" | ||||
>label</tspan><tspan | ||||
font-size="1.99545px" | font-size="1.99545px" | |||
x="62.428066" | x="62.428066" | |||
y="113.52899" | y="113.52899" | |||
>103</tspan></text> | >103</tspan></text> | |||
<rect | <rect | |||
x="46.774883" | x="46.774883" | |||
y="109.06399" | y="109.06399" | |||
width="16.221159" | width="16.221159" | |||
height="8.4533949" | height="8.4533949" | |||
skipping to change at line 19630 ¶ | skipping to change at line 18361 ¶ | |||
stroke-width="0.291003" | stroke-width="0.291003" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.99545px" | font-size="1.99545px" | |||
x="89.813461" | x="89.813461" | |||
y="111.03468" | y="111.03468" | |||
transform="scale(0.85569064,1.1686467)">MPLS A<tspan | transform="scale(0.85569064,1.1686467)">MPLS A-Label<tspan | |||
font-size="1.99545px" | ||||
x="97.379539" | ||||
y="111.03468" | ||||
>-</tspan><tspan | ||||
font-size="1.99545px" | ||||
x="98.216187" | ||||
y="111.03468" | ||||
>label</tspan><tspan | ||||
font-size="1.99545px" | font-size="1.99545px" | |||
x="93.979179" | x="93.979179" | |||
y="113.52899" | y="113.52899" | |||
>1000</tspan></text> | >1000</tspan></text> | |||
<rect | <rect | |||
x="101.73473" | x="101.73473" | |||
y="125.97084" | y="125.97084" | |||
width="16.327875" | width="16.327875" | |||
height="8.4534235" | height="8.4534235" | |||
skipping to change at line 19662 ¶ | skipping to change at line 18383 ¶ | |||
stroke-width="0.291003" | stroke-width="0.291003" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.99545px" | font-size="1.99545px" | |||
x="121.93875" | x="121.93875" | |||
y="111.03468" | y="111.03468" | |||
transform="scale(0.85569064,1.1686467)">MPLS A<tspan | transform="scale(0.85569064,1.1686467)">MPLS A-Label<tspan | |||
font-size="1.99545px" | ||||
x="129.50484" | ||||
y="111.03468" | ||||
>-</tspan><tspan | ||||
font-size="1.99545px" | ||||
x="130.34148" | ||||
y="111.03468" | ||||
>label</tspan><tspan | ||||
font-size="1.99545px" | font-size="1.99545px" | |||
x="126.10445" | x="126.10445" | |||
y="113.52899" | y="113.52899" | |||
>1000</tspan></text> | >1000</tspan></text> | |||
<rect | <rect | |||
x="101.62801" | x="101.62801" | |||
y="37.209885" | y="37.209885" | |||
width="16.327875" | width="16.327875" | |||
height="8.4534388" | height="8.4534388" | |||
skipping to change at line 19694 ¶ | skipping to change at line 18405 ¶ | |||
stroke-width="0.291003" | stroke-width="0.291003" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.99545px" | font-size="1.99545px" | |||
x="121.82027" | x="121.82027" | |||
y="35.082764" | y="35.082764" | |||
transform="scale(0.85569064,1.1686467)">MPLS A<tspan | transform="scale(0.85569064,1.1686467)">MPLS A-Label<tspan | |||
font-size="1.99545px" | ||||
x="129.38635" | ||||
y="35.082764" | ||||
>-</tspan><tspan | ||||
font-size="1.99545px" | ||||
x="130.22299" | ||||
y="35.082764" | ||||
>label</tspan><tspan | ||||
font-size="1.99545px" | font-size="1.99545px" | |||
x="125.98598" | x="125.98598" | |||
y="37.57708" | y="37.57708" | |||
>1000</tspan></text> | >1000</tspan></text> | |||
<path | <path | |||
d="m 44.74724,89.246081 c 0,-0.404634 -0.240181,-0.732653 -0.536457,-0.73 2653 h -5.863752 c -0.296281,0 -0.536462,0.328019 -0.536462,0.732653 v 6.405108 c 0,0.404648 0.240181,0.732652 0.536462,0.732652 h 5.863752 c 0.296276,0 0.53645 7,-0.328004 0.536457,-0.732652 z" | d="m 44.74724,89.246081 c 0,-0.404634 -0.240181,-0.732653 -0.536457,-0.73 2653 h -5.863752 c -0.296281,0 -0.536462,0.328019 -0.536462,0.732653 v 6.405108 c 0,0.404648 0.240181,0.732652 0.536462,0.732652 h 5.863752 c 0.296276,0 0.53645 7,-0.328004 0.536457,-0.732652 z" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.291003" | stroke-width="0.291003" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
skipping to change at line 19794 ¶ | skipping to change at line 18495 ¶ | |||
stroke-width="0.291003" | stroke-width="0.291003" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.99545px" | font-size="1.99545px" | |||
x="57.863018" | x="57.863018" | |||
y="118.26819" | y="118.26819" | |||
transform="scale(0.85569064,1.1686467)">MPLS F<tspan | transform="scale(0.85569064,1.1686467)">MPLS F-Label<tspan | |||
font-size="1.99545px" | ||||
x="65.065361" | ||||
y="118.26819" | ||||
>-</tspan><tspan | ||||
font-size="1.99545px" | ||||
x="65.901993" | ||||
y="118.26819" | ||||
>label</tspan><tspan | ||||
font-size="1.99545px" | font-size="1.99545px" | |||
x="61.264858" | x="61.264858" | |||
y="120.7625" | y="120.7625" | |||
>10006</tspan></text> | >10006</tspan></text> | |||
<path | <path | |||
d="m 126.9202,73.50131 20.43012,18.990621" | d="m 126.9202,73.50131 20.43012,18.990621" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.291003" | stroke-width="0.291003" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
skipping to change at line 19834 ¶ | skipping to change at line 18525 ¶ | |||
stroke-width="0.291003" | stroke-width="0.291003" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.99545px" | font-size="1.99545px" | |||
x="154.10545" | x="154.10545" | |||
y="111.03468" | y="111.03468" | |||
transform="scale(0.85569064,1.1686467)">MPLS S<tspan | transform="scale(0.85569064,1.1686467)">MPLS S-Label<tspan | |||
font-size="1.99545px" | ||||
x="161.41692" | ||||
y="111.03468" | ||||
>-</tspan><tspan | ||||
font-size="1.99545px" | ||||
x="162.25356" | ||||
y="111.03468" | ||||
>label</tspan><tspan | ||||
font-size="1.99545px" | font-size="1.99545px" | |||
x="158.72513" | x="158.72513" | |||
y="113.52899" | y="113.52899" | |||
>105</tspan></text> | >105</tspan></text> | |||
<rect | <rect | |||
x="129.16129" | x="129.16129" | |||
y="134.57001" | y="134.57001" | |||
width="16.221159" | width="16.221159" | |||
height="8.4534101" | height="8.4534101" | |||
skipping to change at line 19866 ¶ | skipping to change at line 18547 ¶ | |||
stroke-width="0.291003" | stroke-width="0.291003" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.99545px" | font-size="1.99545px" | |||
x="154.15907" | x="154.15907" | |||
y="118.26819" | y="118.26819" | |||
transform="scale(0.85569064,1.1686467)">MPLS F<tspan | transform="scale(0.85569064,1.1686467)">MPLS F-Label<tspan | |||
font-size="1.99545px" | ||||
x="161.3614" | ||||
y="118.26819" | ||||
>-</tspan><tspan | ||||
font-size="1.99545px" | ||||
x="162.19804" | ||||
y="118.26819" | ||||
>label</tspan><tspan | ||||
font-size="1.99545px" | font-size="1.99545px" | |||
x="157.5609" | x="157.5609" | |||
y="120.7625" | y="120.7625" | |||
>10011</tspan></text> | >10011</tspan></text> | |||
<rect | <rect | |||
x="129.16129" | x="129.16129" | |||
y="109.06399" | y="109.06399" | |||
width="16.221159" | width="16.221159" | |||
height="8.4533949" | height="8.4533949" | |||
skipping to change at line 20157 ¶ | skipping to change at line 18828 ¶ | |||
font-size="1.49659px" | font-size="1.49659px" | |||
x="89.46962" | x="89.46962" | |||
y="19.368572" | y="19.368572" | |||
transform="scale(0.85569064,1.1686467)">MPLS<tspan | transform="scale(0.85569064,1.1686467)">MPLS<tspan | |||
font-size="1.49659px" | font-size="1.49659px" | |||
x="89.033112" | x="89.033112" | |||
y="21.114594" | y="21.114594" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.49659px" | ||||
x="89.869751" | ||||
y="21.114594" | ||||
>-</tspan><tspan | ||||
font-size="1.49659px" | ||||
x="90.488136" | ||||
y="21.114594" | ||||
>label</tspan><tspan | ||||
font-size="1.99545px" | font-size="1.99545px" | |||
x="89.668953" | x="89.668953" | |||
y="23.484194" | y="23.484194" | |||
>101</tspan></text> | >101</tspan></text> | |||
<rect | <rect | |||
x="74.201447" | x="74.201447" | |||
y="11.849612" | y="11.849612" | |||
width="8.1105795" | width="8.1105795" | |||
height="8.4534388" | height="8.4534388" | |||
skipping to change at line 20191 ¶ | skipping to change at line 18852 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.6213px" | font-size="1.6213px" | |||
x="90.670753" | x="90.670753" | |||
y="12.509203" | y="12.509203" | |||
transform="scale(0.85569064,1.1686467)">IP<tspan | transform="scale(0.85569064,1.1686467)">IP<tspan | |||
font-size="1.6213px" | font-size="1.6213px" | |||
x="88.869438" | x="87.869438" | |||
y="14.37994" | y="14.37994" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="1.6213px" | font-size="1.6213px" | |||
x="88.869438" | x="87.869438" | |||
y="16.250677" | y="16.250677" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<rect | <rect | |||
x="74.201447" | x="74.201447" | |||
y="3.396188" | y="3.396188" | |||
width="8.1105795" | width="8.1105795" | |||
height="8.4534388" | height="8.4534388" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.291003" | stroke-width="0.291003" | |||
skipping to change at line 20243 ¶ | skipping to change at line 18904 ¶ | |||
font-size="1.49659px" | font-size="1.49659px" | |||
x="98.955879" | x="98.955879" | |||
y="19.368572" | y="19.368572" | |||
transform="scale(0.85569064,1.1686467)">MPLS<tspan | transform="scale(0.85569064,1.1686467)">MPLS<tspan | |||
font-size="1.49659px" | font-size="1.49659px" | |||
x="98.519371" | x="98.519371" | |||
y="21.114594" | y="21.114594" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.49659px" | ||||
x="99.35601" | ||||
y="21.114594" | ||||
>-</tspan><tspan | ||||
font-size="1.49659px" | ||||
x="99.974388" | ||||
y="21.114594" | ||||
>label</tspan><tspan | ||||
font-size="1.99545px" | font-size="1.99545px" | |||
x="99.15522" | x="99.15522" | |||
y="23.484194" | y="23.484194" | |||
>104</tspan></text> | >104</tspan></text> | |||
<rect | <rect | |||
x="82.312027" | x="82.312027" | |||
y="11.849612" | y="11.849612" | |||
width="8.1105795" | width="8.1105795" | |||
height="8.4534388" | height="8.4534388" | |||
skipping to change at line 20277 ¶ | skipping to change at line 18928 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.6213px" | font-size="1.6213px" | |||
x="100.15701" | x="100.15701" | |||
y="12.509203" | y="12.509203" | |||
transform="scale(0.85569064,1.1686467)">IP<tspan | transform="scale(0.85569064,1.1686467)">IP<tspan | |||
font-size="1.6213px" | font-size="1.6213px" | |||
x="98.35569" | x="97.35569" | |||
y="14.37994" | y="14.37994" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="1.6213px" | font-size="1.6213px" | |||
x="98.35569" | x="97.35569" | |||
y="16.250677" | y="16.250677" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<rect | <rect | |||
x="82.312027" | x="82.312027" | |||
y="3.396188" | y="3.396188" | |||
width="8.1105795" | width="8.1105795" | |||
height="8.4534388" | height="8.4534388" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.291003" | stroke-width="0.291003" | |||
skipping to change at line 20329 ¶ | skipping to change at line 18980 ¶ | |||
font-size="1.49659px" | font-size="1.49659px" | |||
x="89.617279" | x="89.617279" | |||
y="95.320496" | y="95.320496" | |||
transform="scale(0.85569064,1.1686467)">MPLS<tspan | transform="scale(0.85569064,1.1686467)">MPLS<tspan | |||
font-size="1.49659px" | font-size="1.49659px" | |||
x="89.180779" | x="89.180779" | |||
y="97.066505" | y="97.066505" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.49659px" | ||||
x="90.01741" | ||||
y="97.066505" | ||||
>-</tspan><tspan | ||||
font-size="1.49659px" | ||||
x="90.635796" | ||||
y="97.066505" | ||||
>label</tspan><tspan | ||||
font-size="1.99545px" | font-size="1.99545px" | |||
x="89.81662" | x="89.81662" | |||
y="99.436104" | y="99.436104" | |||
>101</tspan></text> | >101</tspan></text> | |||
<rect | <rect | |||
x="82.418739" | x="82.418739" | |||
y="108.91824" | y="108.91824" | |||
width="8.1105795" | width="8.1105795" | |||
height="8.5991583" | height="8.5991583" | |||
skipping to change at line 20366 ¶ | skipping to change at line 19007 ¶ | |||
font-size="1.49659px" | font-size="1.49659px" | |||
x="99.103539" | x="99.103539" | |||
y="95.320496" | y="95.320496" | |||
transform="scale(0.85569064,1.1686467)">MPLS<tspan | transform="scale(0.85569064,1.1686467)">MPLS<tspan | |||
font-size="1.49659px" | font-size="1.49659px" | |||
x="98.66703" | x="98.66703" | |||
y="97.066505" | y="97.066505" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.49659px" | ||||
x="99.503662" | ||||
y="97.066505" | ||||
>-</tspan><tspan | ||||
font-size="1.49659px" | ||||
x="100.12206" | ||||
y="97.066505" | ||||
>label</tspan><tspan | ||||
font-size="1.99545px" | font-size="1.99545px" | |||
x="99.302879" | x="99.302879" | |||
y="99.436104" | y="99.436104" | |||
>104</tspan></text> | >104</tspan></text> | |||
<rect | <rect | |||
x="74.308167" | x="74.308167" | |||
y="100.46481" | y="100.46481" | |||
width="8.1105795" | width="8.1105795" | |||
height="8.4534388" | height="8.4534388" | |||
skipping to change at line 20400 ¶ | skipping to change at line 19031 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.6213px" | font-size="1.6213px" | |||
x="90.818298" | x="90.818298" | |||
y="88.336403" | y="88.336403" | |||
transform="scale(0.85569064,1.1686467)">IP<tspan | transform="scale(0.85569064,1.1686467)">IP<tspan | |||
font-size="1.6213px" | font-size="1.6213px" | |||
x="89.016991" | x="88.016991" | |||
y="90.207146" | y="90.207146" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="1.6213px" | font-size="1.6213px" | |||
x="89.016991" | x="88.016991" | |||
y="92.077873" | y="92.077873" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<rect | <rect | |||
x="82.418739" | x="82.418739" | |||
y="100.46481" | y="100.46481" | |||
width="8.1105795" | width="8.1105795" | |||
height="8.4534388" | height="8.4534388" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.291003" | stroke-width="0.291003" | |||
skipping to change at line 20427 ¶ | skipping to change at line 19058 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.6213px" | font-size="1.6213px" | |||
x="100.30455" | x="100.30455" | |||
y="88.336403" | y="88.336403" | |||
transform="scale(0.85569064,1.1686467)">IP<tspan | transform="scale(0.85569064,1.1686467)">IP<tspan | |||
font-size="1.6213px" | font-size="1.6213px" | |||
x="98.503242" | x="97.503242" | |||
y="90.207146" | y="90.207146" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="1.6213px" | font-size="1.6213px" | |||
x="98.503242" | x="97.503242" | |||
y="92.077873" | y="92.077873" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<rect | <rect | |||
x="74.308167" | x="74.308167" | |||
y="92.011398" | y="92.011398" | |||
width="8.1105795" | width="8.1105795" | |||
height="8.4534388" | height="8.4534388" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.291003" | stroke-width="0.291003" | |||
skipping to change at line 20501 ¶ | skipping to change at line 19132 ¶ | |||
font-size="1.49659px" | font-size="1.49659px" | |||
x="121.62447" | x="121.62447" | |||
y="19.368572" | y="19.368572" | |||
transform="scale(0.85569064,1.1686467)">MPLS<tspan | transform="scale(0.85569064,1.1686467)">MPLS<tspan | |||
font-size="1.49659px" | font-size="1.49659px" | |||
x="121.18797" | x="121.18797" | |||
y="21.114594" | y="21.114594" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.49659px" | ||||
x="122.0246" | ||||
y="21.114594" | ||||
>-</tspan><tspan | ||||
font-size="1.49659px" | ||||
x="122.64299" | ||||
y="21.114594" | ||||
>label</tspan><tspan | ||||
font-size="1.99545px" | font-size="1.99545px" | |||
x="121.82381" | x="121.82381" | |||
y="23.484194" | y="23.484194" | |||
>101</tspan></text> | >101</tspan></text> | |||
<rect | <rect | |||
x="109.84531" | x="109.84531" | |||
y="20.303036" | y="20.303036" | |||
width="8.1105795" | width="8.1105795" | |||
height="8.4534101" | height="8.4534101" | |||
skipping to change at line 20538 ¶ | skipping to change at line 19159 ¶ | |||
font-size="1.49659px" | font-size="1.49659px" | |||
x="131.11035" | x="131.11035" | |||
y="19.368572" | y="19.368572" | |||
transform="scale(0.85569064,1.1686467)">MPLS<tspan | transform="scale(0.85569064,1.1686467)">MPLS<tspan | |||
font-size="1.49659px" | font-size="1.49659px" | |||
x="130.67384" | x="130.67384" | |||
y="21.114594" | y="21.114594" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.49659px" | ||||
x="131.51048" | ||||
y="21.114594" | ||||
>-</tspan><tspan | ||||
font-size="1.49659px" | ||||
x="132.12888" | ||||
y="21.114594" | ||||
>label</tspan><tspan | ||||
font-size="1.99545px" | font-size="1.99545px" | |||
x="131.30969" | x="131.30969" | |||
y="23.484194" | y="23.484194" | |||
>104</tspan></text> | >104</tspan></text> | |||
<rect | <rect | |||
x="101.62801" | x="101.62801" | |||
y="11.849612" | y="11.849612" | |||
width="8.2172976" | width="8.2172976" | |||
height="8.4534388" | height="8.4534388" | |||
skipping to change at line 20572 ¶ | skipping to change at line 19183 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.6213px" | font-size="1.6213px" | |||
x="122.82548" | x="122.82548" | |||
y="12.509203" | y="12.509203" | |||
transform="scale(0.85569064,1.1686467)">IP<tspan | transform="scale(0.85569064,1.1686467)">IP<tspan | |||
font-size="1.6213px" | font-size="1.6213px" | |||
x="121.02419" | x="120.02419" | |||
y="14.37994" | y="14.37994" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="1.6213px" | font-size="1.6213px" | |||
x="121.02419" | x="120.02419" | |||
y="16.250677" | y="16.250677" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<rect | <rect | |||
x="109.84531" | x="109.84531" | |||
y="11.849612" | y="11.849612" | |||
width="8.1105795" | width="8.1105795" | |||
height="8.4534388" | height="8.4534388" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.291003" | stroke-width="0.291003" | |||
skipping to change at line 20599 ¶ | skipping to change at line 19210 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.6213px" | font-size="1.6213px" | |||
x="132.31137" | x="132.31137" | |||
y="12.509203" | y="12.509203" | |||
transform="scale(0.85569064,1.1686467)">IP<tspan | transform="scale(0.85569064,1.1686467)">IP<tspan | |||
font-size="1.6213px" | font-size="1.6213px" | |||
x="130.51007" | x="129.51007" | |||
y="14.37994" | y="14.37994" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="1.6213px" | font-size="1.6213px" | |||
x="130.51007" | x="129.51007" | |||
y="16.250677" | y="16.250677" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<rect | <rect | |||
x="101.62801" | x="101.62801" | |||
y="3.396188" | y="3.396188" | |||
width="8.2172976" | width="8.2172976" | |||
height="8.4534388" | height="8.4534388" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.291003" | stroke-width="0.291003" | |||
skipping to change at line 20673 ¶ | skipping to change at line 19284 ¶ | |||
font-size="1.49659px" | font-size="1.49659px" | |||
x="121.7417" | x="121.7417" | |||
y="95.320496" | y="95.320496" | |||
transform="scale(0.85569064,1.1686467)">MPLS<tspan | transform="scale(0.85569064,1.1686467)">MPLS<tspan | |||
font-size="1.49659px" | font-size="1.49659px" | |||
x="121.3052" | x="121.3052" | |||
y="97.066505" | y="97.066505" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.49659px" | ||||
x="122.14184" | ||||
y="97.066505" | ||||
>-</tspan><tspan | ||||
font-size="1.49659px" | ||||
x="122.76022" | ||||
y="97.066505" | ||||
>label</tspan><tspan | ||||
font-size="1.99545px" | font-size="1.99545px" | |||
x="121.94105" | x="121.94105" | |||
y="99.436104" | y="99.436104" | |||
>101</tspan></text> | >101</tspan></text> | |||
<rect | <rect | |||
x="109.84531" | x="109.84531" | |||
y="108.91824" | y="108.91824" | |||
width="8.2172976" | width="8.2172976" | |||
height="8.5991583" | height="8.5991583" | |||
skipping to change at line 20710 ¶ | skipping to change at line 19311 ¶ | |||
font-size="1.49659px" | font-size="1.49659px" | |||
x="131.22884" | x="131.22884" | |||
y="95.320496" | y="95.320496" | |||
transform="scale(0.85569064,1.1686467)">MPLS<tspan | transform="scale(0.85569064,1.1686467)">MPLS<tspan | |||
font-size="1.49659px" | font-size="1.49659px" | |||
x="130.79233" | x="130.79233" | |||
y="97.066505" | y="97.066505" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.49659px" | ||||
x="131.62897" | ||||
y="97.066505" | ||||
>-</tspan><tspan | ||||
font-size="1.49659px" | ||||
x="132.24736" | ||||
y="97.066505" | ||||
>label</tspan><tspan | ||||
font-size="1.99545px" | font-size="1.99545px" | |||
x="131.42818" | x="131.42818" | |||
y="99.436104" | y="99.436104" | |||
>104</tspan></text> | >104</tspan></text> | |||
<rect | <rect | |||
x="101.73473" | x="101.73473" | |||
y="100.46481" | y="100.46481" | |||
width="8.1105795" | width="8.1105795" | |||
height="8.4534388" | height="8.4534388" | |||
skipping to change at line 20744 ¶ | skipping to change at line 19335 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.6213px" | font-size="1.6213px" | |||
x="122.94396" | x="122.94396" | |||
y="88.336403" | y="88.336403" | |||
transform="scale(0.85569064,1.1686467)">IP<tspan | transform="scale(0.85569064,1.1686467)">IP<tspan | |||
font-size="1.6213px" | font-size="1.6213px" | |||
x="121.14264" | x="120.14264" | |||
y="90.207146" | y="90.207146" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="1.6213px" | font-size="1.6213px" | |||
x="121.14264" | x="120.14264" | |||
y="92.077873" | y="92.077873" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<rect | <rect | |||
x="109.84531" | x="109.84531" | |||
y="100.46481" | y="100.46481" | |||
width="8.2172976" | width="8.2172976" | |||
height="8.4534388" | height="8.4534388" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.291003" | stroke-width="0.291003" | |||
skipping to change at line 20771 ¶ | skipping to change at line 19362 ¶ | |||
fill="none" | fill="none" | |||
/> | /> | |||
<text | <text | |||
font-size="1.6213px" | font-size="1.6213px" | |||
x="132.42984" | x="132.42984" | |||
y="88.336403" | y="88.336403" | |||
transform="scale(0.85569064,1.1686467)">IP<tspan | transform="scale(0.85569064,1.1686467)">IP<tspan | |||
font-size="1.6213px" | font-size="1.6213px" | |||
x="130.62852" | x="129.62852" | |||
y="90.207146" | y="90.207146" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="1.6213px" | font-size="1.6213px" | |||
x="130.62852" | x="129.62852" | |||
y="92.077873" | y="92.077873" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<rect | <rect | |||
x="101.73473" | x="101.73473" | |||
y="92.011398" | y="92.011398" | |||
width="8.1105795" | width="8.1105795" | |||
height="8.4534388" | height="8.4534388" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.291003" | stroke-width="0.291003" | |||
skipping to change at line 20845 ¶ | skipping to change at line 19436 ¶ | |||
font-size="1.49659px" | font-size="1.49659px" | |||
x="89.470367" | x="89.470367" | |||
y="26.851521" | y="26.851521" | |||
transform="scale(0.85569064,1.1686467)">MPLS<tspan | transform="scale(0.85569064,1.1686467)">MPLS<tspan | |||
font-size="1.49659px" | font-size="1.49659px" | |||
x="89.070236" | x="89.070236" | |||
y="28.597538" | y="28.597538" | |||
>F-</tspan><tspan | >F-Label</tspan><tspan | |||
font-size="1.49659px" | ||||
x="90.452507" | ||||
y="28.597538" | ||||
>label</tspan><tspan | ||||
font-size="1.74602px" | font-size="1.74602px" | |||
x="88.869438" | x="88.869438" | |||
y="30.717709" | y="30.717709" | |||
>20004</tspan></text> | >20004</tspan></text> | |||
<rect | <rect | |||
x="82.312027" | x="82.312027" | |||
y="28.756462" | y="28.756462" | |||
width="8.1105795" | width="8.1105795" | |||
height="8.4534388" | height="8.4534388" | |||
skipping to change at line 20877 ¶ | skipping to change at line 19463 ¶ | |||
font-size="1.49659px" | font-size="1.49659px" | |||
x="98.956627" | x="98.956627" | |||
y="26.851521" | y="26.851521" | |||
transform="scale(0.85569064,1.1686467)">MPLS<tspan | transform="scale(0.85569064,1.1686467)">MPLS<tspan | |||
font-size="1.49659px" | font-size="1.49659px" | |||
x="98.556488" | x="98.556488" | |||
y="28.597538" | y="28.597538" | |||
>F-</tspan><tspan | >F-Label</tspan><tspan | |||
font-size="1.49659px" | ||||
x="99.938759" | ||||
y="28.597538" | ||||
>label</tspan><tspan | ||||
font-size="1.74602px" | font-size="1.74602px" | |||
x="98.355698" | x="98.355698" | |||
y="30.717709" | y="30.717709" | |||
>20005</tspan></text> | >20005</tspan></text> | |||
<rect | <rect | |||
x="74.308167" | x="74.308167" | |||
y="117.51743" | y="117.51743" | |||
width="8.1105795" | width="8.1105795" | |||
height="8.4534235" | height="8.4534235" | |||
skipping to change at line 20909 ¶ | skipping to change at line 19490 ¶ | |||
font-size="1.49659px" | font-size="1.49659px" | |||
x="89.617905" | x="89.617905" | |||
y="102.67872" | y="102.67872" | |||
transform="scale(0.85569064,1.1686467)">MPLS<tspan | transform="scale(0.85569064,1.1686467)">MPLS<tspan | |||
font-size="1.49659px" | font-size="1.49659px" | |||
x="89.217781" | x="89.217781" | |||
y="104.42474" | y="104.42474" | |||
>F-</tspan><tspan | >F-Label</tspan><tspan | |||
font-size="1.49659px" | ||||
x="90.600044" | ||||
y="104.42474" | ||||
>label</tspan><tspan | ||||
font-size="1.74602px" | font-size="1.74602px" | |||
x="89.016991" | x="89.016991" | |||
y="106.54491" | y="106.54491" | |||
>20004</tspan></text> | >20004</tspan></text> | |||
<rect | <rect | |||
x="82.418739" | x="82.418739" | |||
y="117.51743" | y="117.51743" | |||
width="8.1105795" | width="8.1105795" | |||
height="8.4534235" | height="8.4534235" | |||
skipping to change at line 20941 ¶ | skipping to change at line 19517 ¶ | |||
font-size="1.49659px" | font-size="1.49659px" | |||
x="99.104164" | x="99.104164" | |||
y="102.67872" | y="102.67872" | |||
transform="scale(0.85569064,1.1686467)">MPLS<tspan | transform="scale(0.85569064,1.1686467)">MPLS<tspan | |||
font-size="1.49659px" | font-size="1.49659px" | |||
x="98.704033" | x="98.704033" | |||
y="104.42474" | y="104.42474" | |||
>F-</tspan><tspan | >F-Label</tspan><tspan | |||
font-size="1.49659px" | ||||
x="100.0863" | ||||
y="104.42474" | ||||
>label</tspan><tspan | ||||
font-size="1.74602px" | font-size="1.74602px" | |||
x="98.503242" | x="98.503242" | |||
y="106.54491" | y="106.54491" | |||
>20005</tspan></text> | >20005</tspan></text> | |||
<rect | <rect | |||
x="101.62801" | x="101.62801" | |||
y="28.756462" | y="28.756462" | |||
width="8.2172976" | width="8.2172976" | |||
height="8.4534388" | height="8.4534388" | |||
skipping to change at line 20973 ¶ | skipping to change at line 19544 ¶ | |||
font-size="1.49659px" | font-size="1.49659px" | |||
x="121.62572" | x="121.62572" | |||
y="26.851521" | y="26.851521" | |||
transform="scale(0.85569064,1.1686467)">MPLS<tspan | transform="scale(0.85569064,1.1686467)">MPLS<tspan | |||
font-size="1.49659px" | font-size="1.49659px" | |||
x="121.22559" | x="121.22559" | |||
y="28.597538" | y="28.597538" | |||
>F-</tspan><tspan | >F-Label</tspan><tspan | |||
font-size="1.49659px" | ||||
x="122.60785" | ||||
y="28.597538" | ||||
>label</tspan><tspan | ||||
font-size="1.74602px" | font-size="1.74602px" | |||
x="121.0248" | x="121.0248" | |||
y="30.717709" | y="30.717709" | |||
>20004</tspan></text> | >20004</tspan></text> | |||
<rect | <rect | |||
x="109.84531" | x="109.84531" | |||
y="28.756462" | y="28.756462" | |||
width="8.1105795" | width="8.1105795" | |||
height="8.4534388" | height="8.4534388" | |||
skipping to change at line 21005 ¶ | skipping to change at line 19571 ¶ | |||
font-size="1.49659px" | font-size="1.49659px" | |||
x="131.1116" | x="131.1116" | |||
y="26.851521" | y="26.851521" | |||
transform="scale(0.85569064,1.1686467)">MPLS<tspan | transform="scale(0.85569064,1.1686467)">MPLS<tspan | |||
font-size="1.49659px" | font-size="1.49659px" | |||
x="130.71147" | x="130.71147" | |||
y="28.597538" | y="28.597538" | |||
>F-</tspan><tspan | >F-Label</tspan><tspan | |||
font-size="1.49659px" | ||||
x="132.09373" | ||||
y="28.597538" | ||||
>label</tspan><tspan | ||||
font-size="1.74602px" | font-size="1.74602px" | |||
x="130.51068" | x="130.51068" | |||
y="30.717709" | y="30.717709" | |||
>20005</tspan></text> | >20005</tspan></text> | |||
<rect | <rect | |||
x="101.73473" | x="101.73473" | |||
y="117.51743" | y="117.51743" | |||
width="8.1105795" | width="8.1105795" | |||
height="8.4534235" | height="8.4534235" | |||
skipping to change at line 21037 ¶ | skipping to change at line 19598 ¶ | |||
font-size="1.49659px" | font-size="1.49659px" | |||
x="121.74295" | x="121.74295" | |||
y="102.67872" | y="102.67872" | |||
transform="scale(0.85569064,1.1686467)">MPLS<tspan | transform="scale(0.85569064,1.1686467)">MPLS<tspan | |||
font-size="1.49659px" | font-size="1.49659px" | |||
x="121.34281" | x="121.34281" | |||
y="104.42474" | y="104.42474" | |||
>F-</tspan><tspan | >F-Label</tspan><tspan | |||
font-size="1.49659px" | ||||
x="122.72508" | ||||
y="104.42474" | ||||
>label</tspan><tspan | ||||
font-size="1.74602px" | font-size="1.74602px" | |||
x="121.14202" | x="121.14202" | |||
y="106.54491" | y="106.54491" | |||
>20004</tspan></text> | >20004</tspan></text> | |||
<rect | <rect | |||
x="109.84531" | x="109.84531" | |||
y="117.51743" | y="117.51743" | |||
width="8.2172976" | width="8.2172976" | |||
height="8.4534235" | height="8.4534235" | |||
skipping to change at line 21069 ¶ | skipping to change at line 19625 ¶ | |||
font-size="1.49659px" | font-size="1.49659px" | |||
x="131.22884" | x="131.22884" | |||
y="102.67872" | y="102.67872" | |||
transform="scale(0.85569064,1.1686467)">MPLS<tspan | transform="scale(0.85569064,1.1686467)">MPLS<tspan | |||
font-size="1.49659px" | font-size="1.49659px" | |||
x="130.82869" | x="130.82869" | |||
y="104.42474" | y="104.42474" | |||
>F-</tspan><tspan | >F-Label</tspan><tspan | |||
font-size="1.49659px" | ||||
x="132.21097" | ||||
y="104.42474" | ||||
>label</tspan><tspan | ||||
font-size="1.74602px" | font-size="1.74602px" | |||
x="130.6279" | x="130.6279" | |||
y="106.54491" | y="106.54491" | |||
>20005</tspan><tspan | >20005</tspan><tspan | |||
font-size="4.11562px" | font-size="4.11562px" | |||
x="161.91939" | x="161.91939" | |||
y="41.443268" | y="41.443268" | |||
>Note: S and A labels in this diagram</tspan><tspan | >Note: S- and A-Labels in this diagram</tspan><tspan | |||
font-size="4.11562px" | font-size="4.11562px" | |||
x="161.91939" | x="161.91939" | |||
y="46.307182" | y="46.307182" | |||
>include d-CWs of their own.</tspan></text> | >include d-CWs of their own.</tspan></text> | |||
<path | <path | |||
d="m 71.133298,73.209813 c -0.397845,0 -0.720348,-1.761811 -0.720348,-3.9 35215 0,-2.173405 0.322503,-3.935215 0.720348,-3.935215 0.397845,0 0.720347,1.76 181 0.720347,3.935215 0,2.173404 -0.322502,3.935215 -0.720347,3.935215 h -5.1758 3 c -0.397845,0 -0.720348,-1.761811 -0.720348,-3.935215 0,-2.173405 0.322503,-3. 935215 0.720348,-3.935215 h 5.17583" | d="m 71.133298,73.209813 c -0.397845,0 -0.720348,-1.761811 -0.720348,-3.9 35215 0,-2.173405 0.322503,-3.935215 0.720348,-3.935215 0.397845,0 0.720347,1.76 181 0.720347,3.935215 0,2.173404 -0.322502,3.935215 -0.720347,3.935215 h -5.1758 3 c -0.397845,0 -0.720348,-1.761811 -0.720348,-3.935215 0,-2.173405 0.322503,-3. 935215 0.720348,-3.935215 h 5.17583" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.291003" | stroke-width="0.291003" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
skipping to change at line 21218 ¶ | skipping to change at line 19769 ¶ | |||
transform="scale(0.85569064,1.1686467)">aggregation<tspan | transform="scale(0.85569064,1.1686467)">aggregation<tspan | |||
font-size="2.86847px" | font-size="2.86847px" | |||
x="135.51781" | x="135.51781" | |||
y="78.359138" | y="78.359138" | |||
>disaggregation</tspan></text> | >disaggregation</tspan></text> | |||
</g> | </g> | |||
</svg> | </svg> | |||
</artwork> | </artwork> | |||
</artset> | ||||
</figure> | </figure> | |||
<t> <xref target="example-detnet-json-forwarding-aggregation-c-4"/> | <t> <xref target="example-detnet-json-forwarding-aggregation-c-4"/> | |||
contains the operational JSON configuration for the ingress aggregat ion | contains the operational JSON configuration for the ingress aggregat ion | |||
node illustrated in <xref target="case-c4"/>. | node illustrated in <xref target="case-c4"/>. | |||
In this example, a relay performing aggregation at the service sub-l ayer is | In this example, a relay performing aggregation at the service sub-l ayer is | |||
illustrated. Two DetNet flows DN1 and DN2 are relayed at each servic e | illustrated. Two DetNet flows -- DN-1 and DN-2 -- are relayed at eac h service | |||
sub-layer. The two DetNet forwarding sub-layer flows with MPLS label s | sub-layer. The two DetNet forwarding sub-layer flows with MPLS label s | |||
20004 and 20005 are aggregated at the single service sub-layer | 20004 and 20005 are aggregated at the single service sub-layer | |||
DetNet flow and then replicated. | DetNet flow and then replicated. | |||
<xref target="example-detnet-json-forwarding-disaggregation-c-4"/> | <xref target="example-detnet-json-forwarding-disaggregation-c-4"/> | |||
contains the operational JSON configuration for the egress disaggreg ation | contains the operational JSON configuration for the egress disaggreg ation | |||
node illustrated in <xref target="case-c4"/>. | node illustrated in <xref target="case-c4"/>. | |||
</t> | </t> | |||
<figure anchor="example-detnet-json-forwarding-aggregation-c-4"> | <figure anchor="example-detnet-json-forwarding-aggregation-c-4"> | |||
<name>Example C-4 DetNet Relay Service Sub-Layer Aggregation</name> | <name>Example C-4: DetNet Relay Service Sub-layer Aggregation</name> | |||
<artwork name="" type="" align="left" alt=""><![CDATA[ | <sourcecode name="" type="json"><![CDATA[ | |||
{ | { | |||
"ietf-detnet:detnet": { | "ietf-detnet:detnet": { | |||
"traffic-profile": [ | "traffic-profile": [ | |||
{ | { | |||
"name": "pf-1", | "name": "pf-1", | |||
"traffic-requirements": { | "traffic-requirements": { | |||
"min-bandwidth": "100000000", | "min-bandwidth": "100000000", | |||
"max-latency": 100000000, | "max-latency": 100000000, | |||
"max-latency-variation": 10000000, | "max-latency-variation": 10000000, | |||
"max-loss": "0.0000001", | "max-loss": "0.0000001", | |||
skipping to change at line 21617 ¶ | skipping to change at line 20167 ¶ | |||
"name": "eth3", | "name": "eth3", | |||
"type": "iana-if-type:ethernetCsmacd", | "type": "iana-if-type:ethernetCsmacd", | |||
"oper-status": "up", | "oper-status": "up", | |||
"statistics": { | "statistics": { | |||
"discontinuity-time": "2024-02-21T18:59:00-05:00" | "discontinuity-time": "2024-02-21T18:59:00-05:00" | |||
} | } | |||
} | } | |||
] | ] | |||
} | } | |||
} | } | |||
]]></artwork> | ]]></sourcecode> | |||
</figure> | </figure> | |||
<figure anchor="example-detnet-json-forwarding-disaggregation-c-4"> | <figure anchor="example-detnet-json-forwarding-disaggregation-c-4"> | |||
<name>Example C-4 DetNet Relay Service Sub-Layer Disaggregation</name> | <name>Example C-4: DetNet Relay Service Sub-layer Disaggregation</name | |||
<artwork name="" type="" align="left" alt=""><![CDATA[ | > | |||
<sourcecode name="" type="json"><![CDATA[ | ||||
{ | { | |||
"ietf-detnet:detnet": { | "ietf-detnet:detnet": { | |||
"traffic-profile": [ | "traffic-profile": [ | |||
{ | { | |||
"name": "pf-1", | "name": "pf-1", | |||
"traffic-requirements": { | "traffic-requirements": { | |||
"min-bandwidth": "100000000", | "min-bandwidth": "100000000", | |||
"max-latency": 100000000, | "max-latency": 100000000, | |||
"max-latency-variation": 10000000, | "max-latency-variation": 10000000, | |||
"max-loss": "0.0000001", | "max-loss": "0.0000001", | |||
skipping to change at line 21991 ¶ | skipping to change at line 20541 ¶ | |||
"name": "eth3", | "name": "eth3", | |||
"type": "iana-if-type:ethernetCsmacd", | "type": "iana-if-type:ethernetCsmacd", | |||
"oper-status": "up", | "oper-status": "up", | |||
"statistics": { | "statistics": { | |||
"discontinuity-time": "2024-02-21T18:59:00-05:00" | "discontinuity-time": "2024-02-21T18:59:00-05:00" | |||
} | } | |||
} | } | |||
] | ] | |||
} | } | |||
} | } | |||
]]></artwork> | ]]></sourcecode> | |||
</figure> | </figure> | |||
</section> | </section> | |||
<section numbered="true" toc="default"> | <section numbered="true" toc="default"> | |||
<name>Example D-1 JSON Transit Forwarding Sub-Layer Aggregation/Disaggre | <name>Example D-1: Transit Node Forwarding Sub-layer Aggregation/Disaggr | |||
gation</name> | egation</name> | |||
<t> | <t>As illustrated in | |||
<xref target="case-d1"/> | <xref target="case-d1"/>, | |||
illustrates at the transit node, forwarding sub-layer | at the transit node, forwarding sub-layer | |||
flows 1 and 2 are aggregated into a single forwarding sub-layer . | flows 1 and 2 are aggregated into a single forwarding sub-layer . | |||
Resource allocation is performed by the | Resource allocation is performed by the | |||
corresponding forwarding sub-layer for all aggregated flows. | corresponding forwarding sub-layer for all aggregated flows. | |||
<xref target="case-d1"/> illustrating both aggregation and disa | <xref target="case-d1"/> illustrates both aggregation and disag | |||
ggregation is shown | gregation, and the corresponding JSON operational data follows. | |||
and then the corresponding JSON operational data follows. | ||||
</t> | </t> | |||
<figure anchor="case-d1"> | <figure anchor="case-d1"> | |||
<name>Case D-1 Example Transit Node Forwarding Aggregation/Disag | <name>Case D-1: Example Transit Node Forwarding Aggregation/Disa | |||
gregation</name> | ggregation</name> | |||
<artset> | ||||
<artwork align="left" type="ascii-art" name="" alt=""><![CDATA[ | ||||
Please consult the PDF or HTML versions for the Case D-1 Diagram | ||||
]]></artwork> | ||||
<artwork type="svg"> | <artwork type="svg"> | |||
<svg | <svg | |||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" | xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" | |||
xmlns:svg="http://www.w3.org/2000/svg" | xmlns:svg="http://www.w3.org/2000/svg" | |||
xmlns="http://www.w3.org/2000/svg" | xmlns="http://www.w3.org/2000/svg" | |||
width="180mm" | width="180mm" | |||
height="130mm" | height="130mm" | |||
viewBox="0 0 210 140" | viewBox="0 0 210 140" | |||
version="1.1" | version="1.1" | |||
id="svg7"> | id="svg7"> | |||
skipping to change at line 22133 ¶ | skipping to change at line 20676 ¶ | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.219914" | stroke-width="0.219914" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
id="path45" /> | id="path45" /> | |||
<text | <text | |||
font-size="2.89029px" | font-size="2.89029px" | |||
x="113.33002" | x="112.33002" | |||
y="76.809273" | y="76.809273" | |||
transform="scale(0.8869959,1.1274009)">Transit 3</text> | transform="scale(0.8869959,1.1274009)">Transit 3</text> | |||
<path | <path | |||
d="m 108.75043,76.823112 c 0,-0.393324 -0.25086,-0.712175 -0.56032,-0.712 175 h -6.12454 c -0.30946,0 -0.56031,0.318851 -0.56031,0.712175 v 6.226091 c 0,0 .393319 0.25085,0.712171 0.56031,0.712171 h 6.12454 c 0.30946,0 0.56032,-0.31885 2 0.56032,-0.712171 z" | d="m 108.75043,76.823112 c 0,-0.393324 -0.25086,-0.712175 -0.56032,-0.712 175 h -6.12454 c -0.30946,0 -0.56031,0.318851 -0.56031,0.712175 v 6.226091 c 0,0 .393319 0.25085,0.712171 0.56031,0.712171 h 6.12454 c 0.30946,0 0.56032,-0.31885 2 0.56032,-0.712171 z" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.293217" | stroke-width="0.293217" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
skipping to change at line 22158 ¶ | skipping to change at line 20701 ¶ | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.219914" | stroke-width="0.219914" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
id="path53" /> | id="path53" /> | |||
<text | <text | |||
font-size="2.89029px" | font-size="2.89029px" | |||
x="113.33002" | x="112.33002" | |||
y="43.885124" | y="43.885124" | |||
transform="scale(0.8869959,1.1274009)">Transit 2</text> | transform="scale(0.8869959,1.1274009)">Transit 2</text> | |||
<path | <path | |||
d="m 108.75043,39.846075 c 0,-0.393324 -0.25086,-0.712177 -0.56032,-0.712 177 h -6.12454 c -0.30946,0 -0.56031,0.318853 -0.56031,0.712177 v 6.226091 c 0,0 .393318 0.25085,0.712171 0.56031,0.712171 h 6.12454 c 0.30946,0 0.56032,-0.31885 3 0.56032,-0.712171 z" | d="m 108.75043,39.846075 c 0,-0.393324 -0.25086,-0.712177 -0.56032,-0.712 177 h -6.12454 c -0.30946,0 -0.56031,0.318853 -0.56031,0.712177 v 6.226091 c 0,0 .393318 0.25085,0.712171 0.56031,0.712171 h 6.12454 c 0.30946,0 0.56032,-0.31885 3 0.56032,-0.712171 z" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.293217" | stroke-width="0.293217" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
skipping to change at line 22244 ¶ | skipping to change at line 20787 ¶ | |||
stroke-width="0.293217" | stroke-width="0.293217" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
id="rect75" /> | id="rect75" /> | |||
<text | <text | |||
font-size="2.01064px" | font-size="2.01064px" | |||
x="63.677887" | x="63.677887" | |||
y="26.16641" | y="26.16641" | |||
transform="scale(0.8869959,1.1274009)">MPLS S<tspan | transform="scale(0.8869959,1.1274009)">MPLS S-Label<tspan | |||
font-size="2.01064px" | ||||
x="71.044991" | ||||
y="26.16641" | ||||
id="tspan77" | ||||
>-</tspan><tspan | ||||
font-size="2.01064px" | ||||
x="71.887978" | ||||
y="26.16641" | ||||
id="tspan79" | ||||
>label</tspan><tspan | ||||
font-size="2.01064px" | font-size="2.01064px" | |||
x="68.33271" | x="68.33271" | |||
y="28.679707" | y="28.679707" | |||
id="tspan81" | id="tspan81" | |||
>100</tspan></text> | >100</tspan></text> | |||
<rect | <rect | |||
x="53.687176" | x="53.687176" | |||
y="34.175293" | y="34.175293" | |||
width="16.942537" | width="16.942537" | |||
height="8.2171326" | height="8.2171326" | |||
skipping to change at line 22276 ¶ | skipping to change at line 20809 ¶ | |||
stroke-width="0.293217" | stroke-width="0.293217" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
id="rect85" /> | id="rect85" /> | |||
<text | <text | |||
font-size="2.01064px" | font-size="2.01064px" | |||
x="63.732933" | x="63.732933" | |||
y="33.454964" | y="33.454964" | |||
transform="scale(0.8869959,1.1274009)">MPLS F<tspan | transform="scale(0.8869959,1.1274009)">MPLS F-Label<tspan | |||
font-size="2.01064px" | ||||
x="70.990051" | ||||
y="33.454964" | ||||
id="tspan87" | ||||
>-</tspan><tspan | ||||
font-size="2.01064px" | ||||
x="71.833046" | ||||
y="33.454964" | ||||
id="tspan89" | ||||
>label</tspan><tspan | ||||
font-size="2.01064px" | font-size="2.01064px" | |||
x="67.16066" | x="67.16066" | |||
y="35.968254" | y="35.968254" | |||
id="tspan91" | id="tspan91" | |||
>10000</tspan></text> | >10000</tspan></text> | |||
<rect | <rect | |||
x="53.687176" | x="53.687176" | |||
y="9.5239382" | y="9.5239382" | |||
width="16.942537" | width="16.942537" | |||
height="8.2171326" | height="8.2171326" | |||
skipping to change at line 22352 ¶ | skipping to change at line 20875 ¶ | |||
stroke-width="0.293217" | stroke-width="0.293217" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
id="rect107" /> | id="rect107" /> | |||
<text | <text | |||
font-size="2.01064px" | font-size="2.01064px" | |||
x="161.43571" | x="161.43571" | |||
y="106.84313" | y="106.84313" | |||
transform="scale(0.8869959,1.1274009)">MPLS S<tspan | transform="scale(0.8869959,1.1274009)">MPLS S-Label<tspan | |||
font-size="2.01064px" | ||||
x="168.80281" | ||||
y="106.84313" | ||||
id="tspan109" | ||||
>-</tspan><tspan | ||||
font-size="2.01064px" | ||||
x="169.64581" | ||||
y="106.84313" | ||||
id="tspan111" | ||||
>label</tspan><tspan | ||||
font-size="2.01064px" | font-size="2.01064px" | |||
x="166.09053" | x="166.09053" | |||
y="109.35642" | y="109.35642" | |||
id="tspan113" | id="tspan113" | |||
>100</tspan></text> | >100</tspan></text> | |||
<rect | <rect | |||
x="140.40622" | x="140.40622" | |||
y="125.1303" | y="125.1303" | |||
width="16.942537" | width="16.942537" | |||
height="8.2171192" | height="8.2171192" | |||
skipping to change at line 22384 ¶ | skipping to change at line 20897 ¶ | |||
stroke-width="0.293217" | stroke-width="0.293217" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
id="rect117" /> | id="rect117" /> | |||
<text | <text | |||
font-size="2.01064px" | font-size="2.01064px" | |||
x="161.48976" | x="161.48976" | |||
y="114.25735" | y="114.25735" | |||
transform="scale(0.8869959,1.1274009)">MPLS F<tspan | transform="scale(0.8869959,1.1274009)">MPLS F-Label<tspan | |||
font-size="2.01064px" | ||||
x="168.74689" | ||||
y="114.25735" | ||||
id="tspan119" | ||||
>-</tspan><tspan | ||||
font-size="2.01064px" | ||||
x="169.5899" | ||||
y="114.25735" | ||||
id="tspan121" | ||||
>label</tspan><tspan | ||||
font-size="2.01064px" | font-size="2.01064px" | |||
x="164.91748" | x="164.91748" | |||
y="116.77065" | y="116.77065" | |||
id="tspan123" | id="tspan123" | |||
>10003</tspan></text> | >10003</tspan></text> | |||
<rect | <rect | |||
x="140.40622" | x="140.40622" | |||
y="100.33727" | y="100.33727" | |||
width="16.942537" | width="16.942537" | |||
height="8.2171326" | height="8.2171326" | |||
skipping to change at line 22513 ¶ | skipping to change at line 21016 ¶ | |||
d="m 137.39669,61.518467 21.33867,18.459756" | d="m 137.39669,61.518467 21.33867,18.459756" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.293217" | stroke-width="0.293217" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
id="path157" /> | id="path157" /> | |||
<text | <text | |||
font-size="2.89029px" | font-size="2.89029px" | |||
x="16.292641" | x="14.292641" | |||
y="31.444321" | y="31.444321" | |||
transform="scale(0.8869959,1.1274009)">Source 1<tspan | transform="scale(0.8869959,1.1274009)">Source 1<tspan | |||
font-size="2.89029px" | font-size="2.89029px" | |||
x="17.354097" | x="14.354097" | |||
y="34.33461" | y="34.33461" | |||
id="tspan159" | id="tspan159" | |||
>192.0.2.1</tspan></text> | >192.0.2.1</tspan></text> | |||
<path | <path | |||
d="m 22.700176,25.820302 c 0,-0.393324 -0.25086,-0.712177 -0.560312,-0.71 2177 h -6.124523 c -0.309457,0 -0.560317,0.318853 -0.560317,0.712177 v 6.226064 c 0,0.39333 0.25086,0.712165 0.560317,0.712165 h 6.124523 c 0.309452,0 0.560312, -0.318835 0.560312,-0.712165 z" | d="m 22.700176,25.820302 c 0,-0.393324 -0.25086,-0.712177 -0.560312,-0.71 2177 h -6.124523 c -0.309457,0 -0.560317,0.318853 -0.560317,0.712177 v 6.226064 c 0,0.39333 0.25086,0.712165 0.560317,0.712165 h 6.124523 c 0.309452,0 0.560312, -0.318835 0.560312,-0.712165 z" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.293217" | stroke-width="0.293217" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
skipping to change at line 22593 ¶ | skipping to change at line 21096 ¶ | |||
x="36.742413" | x="36.742413" | |||
y="19.254856" | y="19.254856" | |||
id="tspan175" | id="tspan175" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="2.01064px" | font-size="2.01064px" | |||
x="36.705769" | x="36.705769" | |||
y="21.893812" | y="21.893812" | |||
id="tspan177" | id="tspan177" | |||
>192.0.2.9</tspan><tspan | >192.0.2.9</tspan><tspan | |||
font-size="2.89029px" | font-size="2.89029px" | |||
x="16.186686" | x="13.186686" | |||
y="105.71215" | y="105.71215" | |||
id="tspan179" | id="tspan179" | |||
>Source 2</tspan><tspan | >Source 2</tspan><tspan | |||
font-size="2.89029px" | font-size="2.89029px" | |||
x="17.248201" | x="13.248201" | |||
y="108.60243" | y="108.60243" | |||
id="tspan181" | id="tspan181" | |||
>192.0.2.2</tspan></text> | >192.0.2.2</tspan></text> | |||
<path | <path | |||
d="m 22.58871,109.40824 c 0,-0.39331 -0.250862,-0.71217 -0.560314,-0.7121 7 h -6.124522 c -0.309457,0 -0.560317,0.31886 -0.560317,0.71217 v 6.22606 c 0,0. 39334 0.25086,0.71217 0.560317,0.71217 h 6.124522 c 0.309452,0 0.560314,-0.31883 0.560314,-0.71217 z" | d="m 22.58871,109.40824 c 0,-0.39331 -0.250862,-0.71217 -0.560314,-0.7121 7 h -6.124522 c -0.309457,0 -0.560317,0.31886 -0.560317,0.71217 v 6.22606 c 0,0. 39334 0.25086,0.71217 0.560317,0.71217 h 6.124522 c 0.309452,0 0.560314,-0.31883 0.560314,-0.71217 z" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.293217" | stroke-width="0.293217" | |||
stroke-linejoin="round" | stroke-linejoin="round" | |||
stroke-miterlimit="10" | stroke-miterlimit="10" | |||
fill="none" | fill="none" | |||
skipping to change at line 22631 ¶ | skipping to change at line 21134 ¶ | |||
d="M 22.58871,112.5312 44.28374,79.936715" | d="M 22.58871,112.5312 44.28374,79.936715" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.293217" | stroke-width="0.293217" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
id="path189" /> | id="path189" /> | |||
<text | <text | |||
font-size="2.89029px" | font-size="2.89029px" | |||
x="207.72052" | x="210.72052" | |||
y="105.71215" | y="105.71215" | |||
transform="scale(0.8869959,1.1274009)">Destination 2<tspan | transform="scale(0.8869959,1.1274009)">Destination 2<tspan | |||
font-size="2.89029px" | font-size="2.89029px" | |||
x="211.54996" | x="211.54996" | |||
y="108.60243" | y="108.60243" | |||
id="tspan191" | id="tspan191" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<path | <path | |||
d="m 194.91213,109.54992 c 0,-0.39332 -0.25085,-0.71217 -0.5603,-0.71217 h -6.12455 c -0.30945,0 -0.56032,0.31885 -0.56032,0.71217 v 6.22609 c 0,0.39331 0.25087,0.71217 0.56032,0.71217 h 6.12455 c 0.30945,0 0.5603,-0.31886 0.5603,-0. 71217 z" | d="m 194.91213,109.54992 c 0,-0.39332 -0.25085,-0.71217 -0.5603,-0.71217 h -6.12455 c -0.30945,0 -0.56032,0.31885 -0.56032,0.71217 v 6.22609 c 0,0.39331 0.25087,0.71217 0.56032,0.71217 h 6.12455 c 0.30945,0 0.5603,-0.31886 0.5603,-0. 71217 z" | |||
skipping to change at line 22669 ¶ | skipping to change at line 21172 ¶ | |||
d="m 166.04294,79.936147 21.63853,32.712643" | d="m 166.04294,79.936147 21.63853,32.712643" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.293217" | stroke-width="0.293217" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
id="path199" /> | id="path199" /> | |||
<text | <text | |||
font-size="2.89029px" | font-size="2.89029px" | |||
x="207.48428" | x="210.48428" | |||
y="31.444321" | y="31.444321" | |||
transform="scale(0.8869959,1.1274009)">Destination 1<tspan | transform="scale(0.8869959,1.1274009)">Destination 1<tspan | |||
font-size="2.89029px" | font-size="2.89029px" | |||
x="211.31371" | x="211.31371" | |||
y="34.33461" | y="34.33461" | |||
id="tspan201" | id="tspan201" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<path | <path | |||
d="m 194.68921,25.678628 c 0,-0.393324 -0.25086,-0.712175 -0.56032,-0.712 175 h -6.12454 c -0.30946,0 -0.56031,0.318851 -0.56031,0.712175 v 6.226092 c 0,0 .393318 0.25085,0.71217 0.56031,0.71217 h 6.12454 c 0.30946,0 0.56032,-0.318852 0.56032,-0.71217 z" | d="m 194.68921,25.678628 c 0,-0.393324 -0.25086,-0.712175 -0.56032,-0.712 175 h -6.12454 c -0.30946,0 -0.56031,0.318851 -0.56031,0.712175 v 6.226092 c 0,0 .393318 0.25085,0.71217 0.56031,0.71217 h 6.12454 c 0.30946,0 0.56032,-0.318852 0.56032,-0.71217 z" | |||
skipping to change at line 22777 ¶ | skipping to change at line 21280 ¶ | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
id="path231" /> | id="path231" /> | |||
<text | <text | |||
font-size="2.89029px" | font-size="2.89029px" | |||
x="67.196251" | x="67.196251" | |||
y="50.545357" | y="50.545357" | |||
transform="scale(0.8869959,1.1274009)">DN - 1</text> | transform="scale(0.8869959,1.1274009)">DN-1</text> | |||
<path | <path | |||
d="m 185.06317,111.78883 c -0.1226,-0.18843 0.25972,-0.85006 0.85605,-1.4 7768 0.59633,-0.6262 1.17929,-0.98038 1.3019,-0.79195 0.12372,0.18984 -0.25972,0 .85146 -0.85605,1.47766 -0.59521,0.62761 -1.17818,0.98181 -1.3019,0.79197 L 167. 25344,84.42992 c -0.1226,-0.189275 0.25972,-0.850898 0.85605,-1.477523 0.59633,- 0.626769 1.17929,-0.981235 1.3019,-0.791821 l 17.80973,27.358624" | d="m 185.06317,111.78883 c -0.1226,-0.18843 0.25972,-0.85006 0.85605,-1.4 7768 0.59633,-0.6262 1.17929,-0.98038 1.3019,-0.79195 0.12372,0.18984 -0.25972,0 .85146 -0.85605,1.47766 -0.59521,0.62761 -1.17818,0.98181 -1.3019,0.79197 L 167. 25344,84.42992 c -0.1226,-0.189275 0.25972,-0.850898 0.85605,-1.477523 0.59633,- 0.626769 1.17929,-0.981235 1.3019,-0.791821 l 17.80973,27.358624" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.293217" | stroke-width="0.293217" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
fill-rule="evenodd" | fill-rule="evenodd" | |||
id="path237" /> | id="path237" /> | |||
<text | <text | |||
font-size="2.89029px" | font-size="2.89029px" | |||
skipping to change at line 22914 ¶ | skipping to change at line 21417 ¶ | |||
stroke-width="0.293217" | stroke-width="0.293217" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
id="rect307" /> | id="rect307" /> | |||
<text | <text | |||
font-size="2.01064px" | font-size="2.01064px" | |||
x="63.677887" | x="63.677887" | |||
y="106.84313" | y="106.84313" | |||
transform="scale(0.8869959,1.1274009)">MPLS S<tspan | transform="scale(0.8869959,1.1274009)">MPLS S-Label<tspan | |||
font-size="2.01064px" | ||||
x="71.044991" | ||||
y="106.84313" | ||||
id="tspan309" | ||||
>-</tspan><tspan | ||||
font-size="2.01064px" | ||||
x="71.887978" | ||||
y="106.84313" | ||||
id="tspan311" | ||||
>label</tspan><tspan | ||||
font-size="2.01064px" | font-size="2.01064px" | |||
x="68.33271" | x="68.33271" | |||
y="109.35642" | y="109.35642" | |||
id="tspan313" | id="tspan313" | |||
>101</tspan></text> | >101</tspan></text> | |||
<rect | <rect | |||
x="53.687176" | x="53.687176" | |||
y="125.1303" | y="125.1303" | |||
width="16.942537" | width="16.942537" | |||
height="8.2171192" | height="8.2171192" | |||
skipping to change at line 22946 ¶ | skipping to change at line 21439 ¶ | |||
stroke-width="0.293217" | stroke-width="0.293217" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
id="rect317" /> | id="rect317" /> | |||
<text | <text | |||
font-size="2.01064px" | font-size="2.01064px" | |||
x="63.732933" | x="63.732933" | |||
y="114.25735" | y="114.25735" | |||
transform="scale(0.8869959,1.1274009)">MPLS F<tspan | transform="scale(0.8869959,1.1274009)">MPLS F-Label<tspan | |||
font-size="2.01064px" | ||||
x="70.990051" | ||||
y="114.25735" | ||||
id="tspan319" | ||||
>-</tspan><tspan | ||||
font-size="2.01064px" | ||||
x="71.833046" | ||||
y="114.25735" | ||||
id="tspan321" | ||||
>label</tspan><tspan | ||||
font-size="2.01064px" | font-size="2.01064px" | |||
x="67.16066" | x="67.16066" | |||
y="116.77065" | y="116.77065" | |||
id="tspan323" | id="tspan323" | |||
>10004</tspan></text> | >10004</tspan></text> | |||
<rect | <rect | |||
x="53.687176" | x="53.687176" | |||
y="100.33727" | y="100.33727" | |||
width="16.942537" | width="16.942537" | |||
height="8.2171326" | height="8.2171326" | |||
skipping to change at line 23066 ¶ | skipping to change at line 21549 ¶ | |||
stroke-width="0.293217" | stroke-width="0.293217" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
id="rect351" /> | id="rect351" /> | |||
<text | <text | |||
font-size="2.01064px" | font-size="2.01064px" | |||
x="95.908493" | x="95.908493" | |||
y="40.49218" | y="40.49218" | |||
transform="scale(0.8869959,1.1274009)">MPLS F<tspan | transform="scale(0.8869959,1.1274009)">MPLS F-Label<tspan | |||
font-size="2.01064px" | ||||
x="103.16564" | ||||
y="40.49218" | ||||
id="tspan353" | ||||
>-</tspan><tspan | ||||
font-size="2.01064px" | ||||
x="104.00863" | ||||
y="40.49218" | ||||
id="tspan355" | ||||
>label</tspan><tspan | ||||
font-size="2.01064px" | font-size="2.01064px" | |||
x="99.33622" | x="99.33622" | |||
y="43.005478" | y="43.005478" | |||
id="tspan357" | id="tspan357" | |||
>20000</tspan></text> | >20000</tspan></text> | |||
<rect | <rect | |||
x="110.97971" | x="110.97971" | |||
y="42.109062" | y="42.109062" | |||
width="16.942537" | width="16.942537" | |||
height="8.2171326" | height="8.2171326" | |||
skipping to change at line 23098 ¶ | skipping to change at line 21571 ¶ | |||
stroke-width="0.293217" | stroke-width="0.293217" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
id="rect361" /> | id="rect361" /> | |||
<text | <text | |||
font-size="2.01064px" | font-size="2.01064px" | |||
x="128.31929" | x="128.31929" | |||
y="40.49218" | y="40.49218" | |||
transform="scale(0.8869959,1.1274009)">MPLS F<tspan | transform="scale(0.8869959,1.1274009)">MPLS F-Label<tspan | |||
font-size="2.01064px" | ||||
x="135.57645" | ||||
y="40.49218" | ||||
id="tspan363" | ||||
>-</tspan><tspan | ||||
font-size="2.01064px" | ||||
x="136.41945" | ||||
y="40.49218" | ||||
id="tspan365" | ||||
>label</tspan><tspan | ||||
font-size="2.01064px" | font-size="2.01064px" | |||
x="131.74704" | x="131.74704" | |||
y="43.005478" | y="43.005478" | |||
id="tspan367" | id="tspan367" | |||
>20001</tspan></text> | >20001</tspan></text> | |||
<rect | <rect | |||
x="82.22197" | x="82.22197" | |||
y="25.816498" | y="25.816498" | |||
width="8.4712687" | width="8.4712687" | |||
height="8.2171326" | height="8.2171326" | |||
skipping to change at line 23135 ¶ | skipping to change at line 21598 ¶ | |||
font-size="1.50798px" | font-size="1.50798px" | |||
x="95.527481" | x="95.527481" | |||
y="24.909765" | y="24.909765" | |||
transform="scale(0.8869959,1.1274009)">MPLS<tspan | transform="scale(0.8869959,1.1274009)">MPLS<tspan | |||
font-size="1.50798px" | font-size="1.50798px" | |||
x="95.087646" | x="95.087646" | |||
y="26.669069" | y="26.669069" | |||
id="tspan373" | id="tspan373" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.50798px" | ||||
x="95.930649" | ||||
y="26.669069" | ||||
id="tspan375" | ||||
>-</tspan><tspan | ||||
font-size="1.50798px" | ||||
x="96.553749" | ||||
y="26.669069" | ||||
id="tspan377" | ||||
>label</tspan><tspan | ||||
font-size="2.01064px" | font-size="2.01064px" | |||
x="95.72834" | x="95.72834" | |||
y="29.0567" | y="29.0567" | |||
id="tspan379" | id="tspan379" | |||
>100</tspan></text> | >100</tspan></text> | |||
<rect | <rect | |||
x="90.693245" | x="90.693245" | |||
y="25.816498" | y="25.816498" | |||
width="8.4712687" | width="8.4712687" | |||
height="8.2171326" | height="8.2171326" | |||
skipping to change at line 23172 ¶ | skipping to change at line 21625 ¶ | |||
font-size="1.50798px" | font-size="1.50798px" | |||
x="105.08591" | x="105.08591" | |||
y="24.909765" | y="24.909765" | |||
transform="scale(0.8869959,1.1274009)">MPLS<tspan | transform="scale(0.8869959,1.1274009)">MPLS<tspan | |||
font-size="1.50798px" | font-size="1.50798px" | |||
x="104.64607" | x="104.64607" | |||
y="26.669069" | y="26.669069" | |||
id="tspan385" | id="tspan385" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.50798px" | ||||
x="105.48909" | ||||
y="26.669069" | ||||
id="tspan387" | ||||
>-</tspan><tspan | ||||
font-size="1.50798px" | ||||
x="106.11217" | ||||
y="26.669069" | ||||
id="tspan389" | ||||
>label</tspan><tspan | ||||
font-size="2.01064px" | font-size="2.01064px" | |||
x="105.28677" | x="105.28677" | |||
y="29.0567" | y="29.0567" | |||
id="tspan391" | id="tspan391" | |||
>101</tspan></text> | >101</tspan></text> | |||
<rect | <rect | |||
x="82.22197" | x="82.22197" | |||
y="17.599375" | y="17.599375" | |||
width="8.4712687" | width="8.4712687" | |||
height="8.2171049" | height="8.2171049" | |||
skipping to change at line 23206 ¶ | skipping to change at line 21649 ¶ | |||
fill="none" | fill="none" | |||
id="rect395" /> | id="rect395" /> | |||
<text | <text | |||
font-size="1.63364px" | font-size="1.63364px" | |||
x="96.73774" | x="96.73774" | |||
y="17.998205" | y="17.998205" | |||
transform="scale(0.8869959,1.1274009)">IP<tspan | transform="scale(0.8869959,1.1274009)">IP<tspan | |||
font-size="1.63364px" | font-size="1.63364px" | |||
x="94.922729" | x="93.922729" | |||
y="19.883175" | y="19.883175" | |||
id="tspan397" | id="tspan397" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="1.63364px" | font-size="1.63364px" | |||
x="94.922729" | x="93.922729" | |||
y="21.768145" | y="21.768145" | |||
id="tspan399" | id="tspan399" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<rect | <rect | |||
x="90.693245" | x="90.693245" | |||
y="17.599375" | y="17.599375" | |||
width="8.4712687" | width="8.4712687" | |||
height="8.2171049" | height="8.2171049" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.293217" | stroke-width="0.293217" | |||
skipping to change at line 23233 ¶ | skipping to change at line 21676 ¶ | |||
fill="none" | fill="none" | |||
id="rect403" /> | id="rect403" /> | |||
<text | <text | |||
font-size="1.63364px" | font-size="1.63364px" | |||
x="106.29618" | x="106.29618" | |||
y="17.998205" | y="17.998205" | |||
transform="scale(0.8869959,1.1274009)">IP<tspan | transform="scale(0.8869959,1.1274009)">IP<tspan | |||
font-size="1.63364px" | font-size="1.63364px" | |||
x="104.48116" | x="103.48116" | |||
y="19.883175" | y="19.883175" | |||
id="tspan405" | id="tspan405" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="1.63364px" | font-size="1.63364px" | |||
x="104.48116" | x="103.48116" | |||
y="21.768145" | y="21.768145" | |||
id="tspan407" | id="tspan407" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<rect | <rect | |||
x="82.22197" | x="82.22197" | |||
y="9.5239382" | y="9.5239382" | |||
width="8.4712687" | width="8.4712687" | |||
height="8.2171326" | height="8.2171326" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.293217" | stroke-width="0.293217" | |||
skipping to change at line 23307 ¶ | skipping to change at line 21750 ¶ | |||
font-size="1.50798px" | font-size="1.50798px" | |||
x="127.93854" | x="127.93854" | |||
y="24.909765" | y="24.909765" | |||
transform="scale(0.8869959,1.1274009)">MPLS<tspan | transform="scale(0.8869959,1.1274009)">MPLS<tspan | |||
font-size="1.50798px" | font-size="1.50798px" | |||
x="127.49872" | x="127.49872" | |||
y="26.669069" | y="26.669069" | |||
id="tspan425" | id="tspan425" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.50798px" | ||||
x="128.34172" | ||||
y="26.669069" | ||||
id="tspan427" | ||||
>-</tspan><tspan | ||||
font-size="1.50798px" | ||||
x="128.9648" | ||||
y="26.669069" | ||||
id="tspan429" | ||||
>label</tspan><tspan | ||||
font-size="2.01064px" | font-size="2.01064px" | |||
x="128.13939" | x="128.13939" | |||
y="29.0567" | y="29.0567" | |||
id="tspan431" | id="tspan431" | |||
>100</tspan></text> | >100</tspan></text> | |||
<rect | <rect | |||
x="119.45098" | x="119.45098" | |||
y="25.816498" | y="25.816498" | |||
width="8.4712687" | width="8.4712687" | |||
height="8.2171326" | height="8.2171326" | |||
skipping to change at line 23344 ¶ | skipping to change at line 21777 ¶ | |||
font-size="1.50798px" | font-size="1.50798px" | |||
x="137.4966" | x="137.4966" | |||
y="24.909765" | y="24.909765" | |||
transform="scale(0.8869959,1.1274009)">MPLS<tspan | transform="scale(0.8869959,1.1274009)">MPLS<tspan | |||
font-size="1.50798px" | font-size="1.50798px" | |||
x="137.05678" | x="137.05678" | |||
y="26.669069" | y="26.669069" | |||
id="tspan437" | id="tspan437" | |||
>S</tspan><tspan | >S-Label</tspan><tspan | |||
font-size="1.50798px" | ||||
x="137.89978" | ||||
y="26.669069" | ||||
id="tspan439" | ||||
>-</tspan><tspan | ||||
font-size="1.50798px" | ||||
x="138.52286" | ||||
y="26.669069" | ||||
id="tspan441" | ||||
>label</tspan><tspan | ||||
font-size="2.01064px" | font-size="2.01064px" | |||
x="137.69746" | x="137.69746" | |||
y="29.0567" | y="29.0567" | |||
id="tspan443" | id="tspan443" | |||
>101</tspan></text> | >101</tspan></text> | |||
<rect | <rect | |||
x="110.97971" | x="110.97971" | |||
y="17.599375" | y="17.599375" | |||
width="8.4712687" | width="8.4712687" | |||
height="8.2171049" | height="8.2171049" | |||
skipping to change at line 23378 ¶ | skipping to change at line 21801 ¶ | |||
fill="none" | fill="none" | |||
id="rect447" /> | id="rect447" /> | |||
<text | <text | |||
font-size="1.63364px" | font-size="1.63364px" | |||
x="129.14868" | x="129.14868" | |||
y="17.998205" | y="17.998205" | |||
transform="scale(0.8869959,1.1274009)">IP<tspan | transform="scale(0.8869959,1.1274009)">IP<tspan | |||
font-size="1.63364px" | font-size="1.63364px" | |||
x="127.33365" | x="126.33365" | |||
y="19.883175" | y="19.883175" | |||
id="tspan449" | id="tspan449" | |||
>192.0.2.1</tspan><tspan | >192.0.2.1</tspan><tspan | |||
font-size="1.63364px" | font-size="1.63364px" | |||
x="127.33365" | x="126.33365" | |||
y="21.768145" | y="21.768145" | |||
id="tspan451" | id="tspan451" | |||
>192.0.2.9</tspan></text> | >192.0.2.9</tspan></text> | |||
<rect | <rect | |||
x="119.45098" | x="119.45098" | |||
y="17.599375" | y="17.599375" | |||
width="8.4712687" | width="8.4712687" | |||
height="8.2171049" | height="8.2171049" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.293217" | stroke-width="0.293217" | |||
skipping to change at line 23405 ¶ | skipping to change at line 21828 ¶ | |||
fill="none" | fill="none" | |||
id="rect455" /> | id="rect455" /> | |||
<text | <text | |||
font-size="1.63364px" | font-size="1.63364px" | |||
x="138.70676" | x="138.70676" | |||
y="17.998205" | y="17.998205" | |||
transform="scale(0.8869959,1.1274009)">IP<tspan | transform="scale(0.8869959,1.1274009)">IP<tspan | |||
font-size="1.63364px" | font-size="1.63364px" | |||
x="136.89171" | x="135.89171" | |||
y="19.883175" | y="19.883175" | |||
id="tspan457" | id="tspan457" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="1.63364px" | font-size="1.63364px" | |||
x="136.89171" | x="135.89171" | |||
y="21.768145" | y="21.768145" | |||
id="tspan459" | id="tspan459" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<rect | <rect | |||
x="110.97971" | x="110.97971" | |||
y="9.5239382" | y="9.5239382" | |||
width="8.4712687" | width="8.4712687" | |||
height="8.2171326" | height="8.2171326" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.293217" | stroke-width="0.293217" | |||
skipping to change at line 23474 ¶ | skipping to change at line 21897 ¶ | |||
stroke-width="0.293217" | stroke-width="0.293217" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
id="rect475" /> | id="rect475" /> | |||
<text | <text | |||
font-size="1.50798px" | font-size="1.50798px" | |||
x="95.528229" | x="95.528229" | |||
y="32.323982" | y="32.323982" | |||
transform="scale(0.8869959,1.1274009)">MPLS F-label<tspan | transform="scale(0.8869959,1.1274009)">MPLS<tspan | |||
font-size="1.75931px" | font-size="1.50798px" | |||
x="94.922752" | ||||
y="34.219585" | ||||
id="tspan997" | ||||
>F-Label</tspan><tspan | ||||
font-size="2.01064px" | ||||
x="94.922752" | x="94.922752" | |||
y="36.219585" | y="36.219585" | |||
id="tspan481" | id="tspan481" | |||
>10002</tspan></text> | >10002</tspan></text> | |||
<rect | <rect | |||
x="90.693245" | x="90.693245" | |||
y="33.891949" | y="33.891949" | |||
width="8.4712687" | width="8.4712687" | |||
height="8.2171326" | height="8.2171326" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.293217" | stroke-width="0.293217" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
id="rect485" /> | id="rect485" /> | |||
<text | <text | |||
font-size="1.50798px" | font-size="1.50798px" | |||
x="105.08666" | x="105.08666" | |||
y="32.323982" | y="32.323982" | |||
transform="scale(0.8869959,1.1274009)">MPLS F-label<tspan | transform="scale(0.8869959,1.1274009)">MPLS<tspan | |||
font-size="1.75931px" | font-size="1.50798px" | |||
x="104.48116" | ||||
y="34.219585" | ||||
id="tspan994" | ||||
>F-Label</tspan><tspan | ||||
font-size="2.01064px" | ||||
x="104.48116" | x="104.48116" | |||
y="36.219585" | y="36.219585" | |||
id="tspan491" | id="tspan481" | |||
>10006</tspan></text> | >10006</tspan></text> | |||
<rect | <rect | |||
x="110.97971" | x="110.97971" | |||
y="33.891949" | y="33.891949" | |||
width="8.4712687" | width="8.4712687" | |||
height="8.2171326" | height="8.2171326" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.293217" | stroke-width="0.293217" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
id="rect495" /> | id="rect495" /> | |||
<text | <text | |||
font-size="1.50798px" | font-size="1.50798px" | |||
x="127.93854" | x="127.93854" | |||
y="32.323982" | y="32.323982" | |||
transform="scale(0.8869959,1.1274009)">MPLS F-label<tspan | transform="scale(0.8869959,1.1274009)">MPLS<tspan | |||
font-size="1.75931px" | font-size="1.50798px" | |||
x="127.33303" | ||||
y="34.219585" | ||||
id="tspan987" | ||||
>F-Label</tspan><tspan | ||||
font-size="2.01064px" | ||||
x="127.33303" | x="127.33303" | |||
y="36.219585" | y="36.219585" | |||
id="tspan501" | id="tspan481" | |||
>10002</tspan></text> | >10002</tspan></text> | |||
<rect | <rect | |||
x="119.45098" | x="119.45098" | |||
y="33.891949" | y="33.891949" | |||
width="8.4712687" | width="8.4712687" | |||
height="8.2171326" | height="8.2171326" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.293217" | stroke-width="0.293217" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
id="rect505" /> | id="rect505" /> | |||
<text | <text | |||
font-size="1.50798px" | font-size="1.50798px" | |||
x="137.4966" | x="137.4966" | |||
y="32.323982" | y="32.323982" | |||
transform="scale(0.8869959,1.1274009)">MPLS F-label<tspan | transform="scale(0.8869959,1.1274009)">MPLS<tspan | |||
font-size="1.75931px" | font-size="1.50798px" | |||
x="136.8911" | x="136.4966" | |||
y="34.323982" | ||||
id="tspan977" | ||||
>F-Label</tspan><tspan | ||||
font-size="2.01064px" | ||||
x="136.4966" | ||||
y="36.219585" | y="36.219585" | |||
id="tspan511" | id="tspan969" | |||
>10006</tspan></text> | >10006</tspan></text> | |||
<rect | <rect | |||
x="139.51451" | x="139.51451" | |||
y="25.958176" | y="25.958176" | |||
width="16.942537" | width="16.942537" | |||
height="8.2171326" | height="8.2171326" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.293217" | stroke-width="0.293217" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
id="rect515" /> | id="rect515" /> | |||
<text | <text | |||
font-size="2.01064px" | font-size="2.01064px" | |||
x="160.39145" | x="160.39145" | |||
y="26.16641" | y="26.16641" | |||
transform="scale(0.8869959,1.1274009)">MPLS S<tspan | transform="scale(0.8869959,1.1274009)">MPLS S-Label<tspan | |||
font-size="2.01064px" | ||||
x="167.75854" | ||||
y="26.16641" | ||||
id="tspan517" | ||||
>-</tspan><tspan | ||||
font-size="2.01064px" | ||||
x="168.60155" | ||||
y="26.16641" | ||||
id="tspan519" | ||||
>label</tspan><tspan | ||||
font-size="2.01064px" | font-size="2.01064px" | |||
x="165.04628" | x="165.04628" | |||
y="28.679707" | y="28.679707" | |||
id="tspan521" | id="tspan521" | |||
>101</tspan></text> | >101</tspan></text> | |||
<rect | <rect | |||
x="139.51451" | x="139.51451" | |||
y="34.175293" | y="34.175293" | |||
width="16.942537" | width="16.942537" | |||
height="8.2171326" | height="8.2171326" | |||
skipping to change at line 23594 ¶ | skipping to change at line 22027 ¶ | |||
stroke-width="0.293217" | stroke-width="0.293217" | |||
stroke-miterlimit="8" | stroke-miterlimit="8" | |||
fill="none" | fill="none" | |||
id="rect525" /> | id="rect525" /> | |||
<text | <text | |||
font-size="2.01064px" | font-size="2.01064px" | |||
x="160.44673" | x="160.44673" | |||
y="33.580624" | y="33.580624" | |||
transform="scale(0.8869959,1.1274009)">MPLS F<tspan | transform="scale(0.8869959,1.1274009)">MPLS F-Label<tspan | |||
font-size="2.01064px" | ||||
x="167.70387" | ||||
y="33.580624" | ||||
id="tspan527" | ||||
>-</tspan><tspan | ||||
font-size="2.01064px" | ||||
x="168.54688" | ||||
y="33.580624" | ||||
id="tspan529" | ||||
>label</tspan><tspan | ||||
font-size="2.01064px" | font-size="2.01064px" | |||
x="163.87445" | x="163.87445" | |||
y="36.093918" | y="36.093918" | |||
id="tspan531" | id="tspan531" | |||
>10007</tspan></text> | >10007</tspan></text> | |||
<rect | <rect | |||
x="139.51451" | x="139.51451" | |||
y="9.5239382" | y="9.5239382" | |||
width="16.942537" | width="16.942537" | |||
height="8.2171326" | height="8.2171326" | |||
skipping to change at line 23645 ¶ | skipping to change at line 22068 ¶ | |||
fill="none" | fill="none" | |||
id="rect539" /> | id="rect539" /> | |||
<text | <text | |||
font-size="2.89029px" | font-size="2.89029px" | |||
x="161.7662" | x="161.7662" | |||
y="19.254856" | y="19.254856" | |||
transform="scale(0.8869959,1.1274009)">IP <tspan | transform="scale(0.8869959,1.1274009)">IP <tspan | |||
font-size="2.01064px" | font-size="2.01064px" | |||
x="165.50475" | x="164.50475" | |||
y="19.254856" | y="19.254856" | |||
id="tspan541" | id="tspan541" | |||
>192.0.2.2</tspan><tspan | >192.0.2.2</tspan><tspan | |||
font-size="2.01064px" | font-size="2.01064px" | |||
x="165.46808" | x="164.46808" | |||
y="21.893812" | y="21.893812" | |||
id="tspan543" | id="tspan543" | |||
>192.0.2.8</tspan></text> | >192.0.2.8</tspan></text> | |||
<rect | <rect | |||
x="168.27223" | x="168.27223" | |||
y="9.5239382" | y="9.5239382" | |||
width="17.054001" | width="17.054001" | |||
height="8.2171326" | height="8.2171326" | |||
stroke="#000000" | stroke="#000000" | |||
stroke-width="0.293217" | stroke-width="0.293217" | |||
skipping to change at line 23731 ¶ | skipping to change at line 22154 ¶ | |||
transform="scale(0.8869959,1.1274009)">aggregation<tspan | transform="scale(0.8869959,1.1274009)">aggregation<tspan | |||
font-size="2.89029px" | font-size="2.89029px" | |||
x="141.99666" | x="141.99666" | |||
y="72.159683" | y="72.159683" | |||
id="tspan563" | id="tspan563" | |||
>disaggregation</tspan></text> | >disaggregation</tspan></text> | |||
</g> | </g> | |||
</svg> | </svg> | |||
</artwork> | </artwork> | |||
</artset> | ||||
</figure> | </figure> | |||
<t> <xref target="example-detnet-json-forwarding-aggregation-d-1"/> | <t> <xref target="example-detnet-json-forwarding-aggregation-d-1"/> | |||
contains the operational JSON configuration for the ingress aggregat ion | contains the operational JSON configuration for the ingress aggregat ion | |||
node illustrated in <xref target="case-d1"/>. | node illustrated in <xref target="case-d1"/>. | |||
In this example, a transit node performing aggregation at the forwar ding sub-layer | In this example, a transit node performing aggregation at the forwar ding sub-layer | |||
is illustrated. | is illustrated. | |||
Two DetNet flows DN1 and DN2 are transmitted at each | Two DetNet flows -- DN-1 and DN-2 -- are transmitted at each | |||
forwarding sub-layer. The DetNet forwarding sub-layer flows with | forwarding sub-layer. The DetNet forwarding sub-layer flows with | |||
MPLS labels 10002 and 10006 are aggregated at the single forwarding | MPLS labels 10002 and 10006 are aggregated at the single forwarding | |||
sub-layer. The resulting aggregated DetNet flow has MPLS label 20000 . | sub-layer. The resulting aggregated DetNet flow has MPLS label 20000 . | |||
<xref target="example-detnet-json-forwarding-disaggregation-d-1"/> | <xref target="example-detnet-json-forwarding-disaggregation-d-1"/> | |||
contains the operational JSON configuration for the egress disaggreg ation | contains the operational JSON configuration for the egress disaggreg ation | |||
transit node illustrated in <xref target="case-d1"/>. | transit node illustrated in <xref target="case-d1"/>. | |||
</t> | </t> | |||
<figure anchor="example-detnet-json-forwarding-aggregation-d-1"> | <figure anchor="example-detnet-json-forwarding-aggregation-d-1"> | |||
<name>Example D-1 Transit Node Forwarding Aggregation</name> | <name>Example D-1: Transit Node Forwarding Aggregation</name> | |||
<artwork name="" type="" align="left" alt=""><![CDATA[ | <sourcecode name="" type="json"><![CDATA[ | |||
{ | { | |||
"ietf-detnet:detnet": { | "ietf-detnet:detnet": { | |||
"traffic-profile": [ | "traffic-profile": [ | |||
{ | { | |||
"name": "pf-1", | "name": "pf-1", | |||
"traffic-spec": { | "traffic-spec": { | |||
"interval": 125, | "interval": 125, | |||
"max-pkts-per-interval": 1, | "max-pkts-per-interval": 1, | |||
"max-payload-size": 1518 | "max-payload-size": 1518 | |||
}, | }, | |||
skipping to change at line 23858 ¶ | skipping to change at line 22280 ¶ | |||
"incoming": { | "incoming": { | |||
"forwarding-aggregation": { | "forwarding-aggregation": { | |||
"sub-layer": [ | "sub-layer": [ | |||
"fsl-1", | "fsl-1", | |||
"fsl-2" | "fsl-2" | |||
] | ] | |||
} | } | |||
}, | }, | |||
"outgoing": { | "outgoing": { | |||
"interface": { | "interface": { | |||
"outgoing-interface": "eth3", | "outgoing-interface": "eth2", | |||
"mpls-label-stack": { | "mpls-label-stack": { | |||
"entry": [ | "entry": [ | |||
{ | { | |||
"id": 0, | "id": 0, | |||
"label": 20000 | "label": 20000 | |||
} | } | |||
] | ] | |||
} | } | |||
} | } | |||
} | } | |||
skipping to change at line 23892 ¶ | skipping to change at line 22314 ¶ | |||
}, | }, | |||
{ | { | |||
"name": "eth1", | "name": "eth1", | |||
"type": "iana-if-type:ethernetCsmacd", | "type": "iana-if-type:ethernetCsmacd", | |||
"oper-status": "up", | "oper-status": "up", | |||
"statistics": { | "statistics": { | |||
"discontinuity-time": "2024-02-21T18:59:00-05:00" | "discontinuity-time": "2024-02-21T18:59:00-05:00" | |||
} | } | |||
}, | }, | |||
{ | { | |||
"name": "eth3", | "name": "eth2", | |||
"type": "iana-if-type:ethernetCsmacd", | "type": "iana-if-type:ethernetCsmacd", | |||
"oper-status": "up", | "oper-status": "up", | |||
"statistics": { | "statistics": { | |||
"discontinuity-time": "2024-02-21T18:59:00-05:00" | "discontinuity-time": "2024-02-21T18:59:00-05:00" | |||
} | } | |||
} | } | |||
] | ] | |||
} | } | |||
} | } | |||
]]></artwork> | ]]></sourcecode> | |||
</figure> | </figure> | |||
<figure anchor="example-detnet-json-forwarding-disaggregation-d-1"> | <figure anchor="example-detnet-json-forwarding-disaggregation-d-1"> | |||
<name>Example D-1 Transit Node Forwarding Disaggregation</name> | <name>Example D-1: Transit Node Forwarding Disaggregation</name> | |||
<artwork name="" type="" align="left" alt=""><![CDATA[ | <sourcecode name="" type="json"><![CDATA[ | |||
{ | { | |||
"ietf-detnet:detnet": { | "ietf-detnet:detnet": { | |||
"traffic-profile": [ | "traffic-profile": [ | |||
{ | { | |||
"name": "pf-1", | "name": "pf-1", | |||
"traffic-spec": { | "traffic-spec": { | |||
"interval": 125, | "interval": 125, | |||
"max-pkts-per-interval": 1, | "max-pkts-per-interval": 1, | |||
"max-payload-size": 1518 | "max-payload-size": 1518 | |||
}, | }, | |||
skipping to change at line 24056 ¶ | skipping to change at line 22478 ¶ | |||
"name": "eth3", | "name": "eth3", | |||
"type": "iana-if-type:ethernetCsmacd", | "type": "iana-if-type:ethernetCsmacd", | |||
"oper-status": "up", | "oper-status": "up", | |||
"statistics": { | "statistics": { | |||
"discontinuity-time": "2024-02-21T18:59:00-05:00" | "discontinuity-time": "2024-02-21T18:59:00-05:00" | |||
} | } | |||
} | } | |||
] | ] | |||
} | } | |||
} | } | |||
]]></artwork> | ]]></sourcecode> | |||
</figure> | </figure> | |||
</section> | </section> | |||
</section> | </section> | |||
<section anchor="Acknowledgments" numbered="false" toc="default"> | ||||
<name>Acknowledgments</name> | ||||
<t>The authors of this document would like to thank <contact fullname="Lou | ||||
Berger"/>, <contact fullname="Tom Petch"/>, | ||||
<contact fullname="Xufeng Liu"/>, <contact fullname="Julien Meuric" | ||||
/>, <contact fullname="John Scudder"/>, and <contact fullname="Florian Kauer"/> | ||||
for their detailed comments. | ||||
</t> | ||||
</section> | ||||
<section anchor="Contributors" numbered="false" toc="default"> | ||||
<name>Contributors</name> | ||||
<t>The authors of this document wish to thank and acknowledge | ||||
the following individual, who contributed substantially to the content | ||||
of this document and should be considered a coauthor: | ||||
</t> | ||||
<contact fullname="Mach(Guoyi) Chen" initials="M." surname="Chen"> | ||||
<organization>Huawei Technologies</organization> | ||||
<address> | ||||
<email>mach.chen@huawei.com</email> | ||||
</address> | ||||
</contact> | ||||
</section> | ||||
</back> | </back> | |||
</rfc> | </rfc> | |||
End of changes. 790 change blocks. | ||||
2950 lines changed or deleted | 1433 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. |