Hi Ben and all, Some more replies are inline. Attached is the up to date sub-version(08v1) of the document and the associated diff file with last version 07. I have to metion I still have not yet finished to change last pages of the document to past tense. I'l continue doing it. Hope to see more comments and then with more modification, I hope to update to IETF with that version. thanks a lot. Weiming ----- Original Message ----- From: "Ben Campbell" <ben@xxxxxxxxxxx> Thanks for the response. Comments inline. I removed sections for which I have no further comment. Thanks! Ben. On May 16, 2013, at 10:19 PM, "Wang,Weiming" <wmwang2001@xxxxxxxxxxx> wrote: > [...] > -- The draft mentions a couple of instances of tests that failed because of an incorrect implementation or differing encapsulation formats. Does this suggest that the specifications should be clarified? In particular, in the case of encapsulation format mismatch, should the specs include stronger requirements to be able to receive all encapsulation formats? Or should the number of options be reduced? > [Re. by ΕΗ] The protocol provides a number of different approaches > [Re. by Weiming] The key issue is still from the deep understanding of the protocol from implementations. I still have not seen need for any urgent change for the protocol. I don't have enough knowledge of the protocol to form a specific opinion, but it's been my experience in other areas that when implementors interpret things differently, there's often room for clarification, even if the text is formally correct. I agree it doesn't imply an urgent need, but would it be worth one or more errata? [Re:] We have actually submitted a suggestion to errata of RFC 5810, but was denied with the reason that mutual understanding of different encapsulation formats are essential to protocol implementations, and need not a specific notification. [...] > -- section 4.4, last paragraph: > > The text says that since the mentioned failures were likely the result of bugs, it doesn't indicate an interoperability problem in the specs. I have to point out that, it also doesn't prove interoperability in both directions for the particular test. It would also be worth commenting on whether the probably bugs were programming errors rather than misunderstandings of the specification. > [Re. by Weiming] to change the whole paragraph to: > <t> The two test items failed. Note that Test #7 and #8 were identical to the tests, only with CE and FE implementers were exchanged. Moreover, test #12 and #13 showed that the redirect channel worked well. Therefore, it can be reasonably inferred that the problem caused the failure was from the implementations, rather than from the ForCES protocol itself or from misunderstanding of implementations on the protocol specification. Although the failure made the OSPF interoperability test incomplete, it did not show interoperability problem. More test work is needed to verify the OSPF interoperability.</t> Works for me, thanks! [Re: ] Thanks too. [...] [Re. by Weiming] The section 3.2 para.3 has been changed to: > <t>... Because there came unfortunately a problem with the test system in Greece to deploy IPSec over TML during the test process, this test only took place between test systems in China and Japan.</t> The sentence is still hard to parse. Do you mean the following? "Because an unfortunate problem with the test system in Greece prevented the deployment of IPSec over TML, this test only took place between the test systems in China and Japan." [Re.] Thanks again. I'v just incorparated it. [...]Title: Diff: draft-ietf-forces-interop-08v1.txt - draft-ietf-forces-interop-07.txt
< draft-ietf-forces-interop-08v1.txt | draft-ietf-forces-interop-07.txt > | |||
---|---|---|---|---|
Internet Engineering Task Force W. Wang | Internet Engineering Task Force W. Wang | |||
Internet-Draft Zhejiang Gongshang University | Internet-Draft Zhejiang Gongshang University | |||
Updates: 6053 (if approved) K. Ogawa | Updates: 6053 (if approved) K. Ogawa | |||
Intended status: Informational NTT Corporation | Intended status: Informational NTT Corporation | |||
Expires: November 23, 2013 E. Haleplidis | Expires: October 17, 2013 E. Haleplidis | |||
University of Patras | University of Patras | |||
M. Gao | M. Gao | |||
Hangzhou BAUD Networks | Hangzhou BAUD Networks | |||
J. Hadi Salim | J. Hadi Salim | |||
Mojatatu Networks | Mojatatu Networks | |||
May 22, 2013 | April 15, 2013 | |||
Interoperability Report for Forwarding and Control Element Separation | Interoperability Report for Forwarding and Control Element Separation | |||
(ForCES) | (ForCES) | |||
draft-ietf-forces-interop-08 | draft-ietf-forces-interop-07 | |||
Abstract | Abstract | |||
This document captured results of the second Forwarding and Control | This document captures results of the second Forwarding and Control | |||
Element Separation (ForCES) interoperability test which took place on | Element Separation (ForCES) interoperability test which took place on | |||
February 24-25, 2011 in the Internet Technology Lab (ITL) of Zhejiang | February 24-25, 2011 in the Internet Technology Lab (ITL) of Zhejiang | |||
Gongshang University, China. RFC 6053 had reported the results of | Gongshang University, China. RFC 6053 reported the results of the | |||
the first ForCES interoperability test, and this document updates RFC | first ForCES interoperability test, and this document updates RFC | |||
6053 by providing further interoperability results. | 6053 by providing further interoperability results. | |||
Status of this Memo | Status of This Memo | |||
This Internet-Draft is submitted in full conformance with the | This Internet-Draft is submitted in full conformance with the | |||
provisions of BCP 78 and BCP 79. | provisions of BCP 78 and BCP 79. | |||
Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
Task Force (IETF). Note that other groups may also distribute | Task Force (IETF). Note that other groups may also distribute | |||
working documents as Internet-Drafts. The list of current Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
Drafts is at http://datatracker.ietf.org/drafts/current/. | Drafts is at http://datatracker.ietf.org/drafts/current/. | |||
Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
This Internet-Draft will expire on November 23, 2013. | This Internet-Draft will expire on October 17, 2013. | |||
Copyright Notice | Copyright Notice | |||
Copyright (c) 2013 IETF Trust and the persons identified as the | Copyright (c) 2013 IETF Trust and the persons identified as the | |||
document authors. All rights reserved. | document authors. All rights reserved. | |||
This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
Provisions Relating to IETF Documents | Provisions Relating to IETF Documents | |||
(http://trustee.ietf.org/license-info) in effect on the date of | (http://trustee.ietf.org/license-info) in effect on the date of | |||
publication of this document. Please review these documents | publication of this document. Please review these documents | |||
carefully, as they describe your rights and restrictions with respect | carefully, as they describe your rights and restrictions with respect | |||
to this document. Code Components extracted from this document must | to this document. Code Components extracted from this document must | |||
include Simplified BSD License text as described in Section 4.e of | include Simplified BSD License text as described in Section 4.e of | |||
the Trust Legal Provisions and are provided without warranty as | the Trust Legal Provisions and are provided without warranty as | |||
described in the Simplified BSD License. | described in the Simplified BSD License. | |||
Table of Contents | Table of Contents | |||
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
1.1. ForCES Protocol . . . . . . . . . . . . . . . . . . . . . 3 | 1.1. ForCES Protocol . . . . . . . . . . . . . . . . . . . . . 3 | |||
1.2. ForCES FE Model . . . . . . . . . . . . . . . . . . . . . 4 | 1.2. ForCES FE Model . . . . . . . . . . . . . . . . . . . . . 3 | |||
1.3. Transport Mapping Layer . . . . . . . . . . . . . . . . . 4 | 1.3. Transport Mapping Layer . . . . . . . . . . . . . . . . . 4 | |||
1.4. Definitions . . . . . . . . . . . . . . . . . . . . . . . 4 | 1.4. Definitions . . . . . . . . . . . . . . . . . . . . . . . 4 | |||
2. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 | 2. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . 4 | |||
2.1. Date, Location, and Participants . . . . . . . . . . . . . 5 | 2.1. Date, Location, and Participants . . . . . . . . . . . . 4 | |||
2.2. Testbed Configuration . . . . . . . . . . . . . . . . . . 5 | 2.2. Testbed Configuration . . . . . . . . . . . . . . . . . . 5 | |||
2.2.1. Participants Access . . . . . . . . . . . . . . . . . 6 | 2.2.1. Participants Access . . . . . . . . . . . . . . . . . 5 | |||
2.2.2. Testbed Configuration . . . . . . . . . . . . . . . . 6 | 2.2.2. Testbed Configuration . . . . . . . . . . . . . . . . 6 | |||
3. Scenarios . . . . . . . . . . . . . . . . . . . . . . . . . . 9 | 3. Scenarios . . . . . . . . . . . . . . . . . . . . . . . . . . 7 | |||
3.1. Scenario 1 - LFB Operation . . . . . . . . . . . . . . . . 9 | 3.1. Scenario 1 - LFB Operation . . . . . . . . . . . . . . . 7 | |||
3.2. Scenario 2 - TML with IPSec . . . . . . . . . . . . . . . 9 | 3.2. Scenario 2 - TML with IPSec . . . . . . . . . . . . . . . 8 | |||
3.3. Scenario 3 - CE High Availability . . . . . . . . . . . . 10 | 3.3. Scenario 3 - CE High Availability . . . . . . . . . . . . 9 | |||
3.4. Scenario 4 - Packet forwarding . . . . . . . . . . . . . . 12 | 3.4. Scenario 4 - Packet forwarding . . . . . . . . . . . . . 10 | |||
4. Test Results . . . . . . . . . . . . . . . . . . . . . . . . . 15 | 4. Test Results . . . . . . . . . . . . . . . . . . . . . . . . 12 | |||
4.1. LFB Operation Test . . . . . . . . . . . . . . . . . . . . 15 | 4.1. LFB Operation Test . . . . . . . . . . . . . . . . . . . 12 | |||
4.2. TML with IPSec Test . . . . . . . . . . . . . . . . . . . 20 | 4.2. TML with IPSec Test . . . . . . . . . . . . . . . . . . . 18 | |||
4.3. CE High Availability Test . . . . . . . . . . . . . . . . 21 | 4.3. CE High Availability Test . . . . . . . . . . . . . . . . 19 | |||
4.4. Packet Forwarding Test . . . . . . . . . . . . . . . . . . 22 | 4.4. Packet Forwarding Test . . . . . . . . . . . . . . . . . 19 | |||
5. Discussions . . . . . . . . . . . . . . . . . . . . . . . . . 25 | 5. Discussions . . . . . . . . . . . . . . . . . . . . . . . . . 22 | |||
5.1. On Data Encapsulation Format . . . . . . . . . . . . . . . 25 | 5.1. On Data Encapsulation Format . . . . . . . . . . . . . . 22 | |||
6. Contributors . . . . . . . . . . . . . . . . . . . . . . . . . 28 | 6. Contributors . . . . . . . . . . . . . . . . . . . . . . . . 24 | |||
7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 29 | 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 25 | |||
8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 30 | 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 25 | |||
9. Security Considerations . . . . . . . . . . . . . . . . . . . 31 | 9. Security Considerations . . . . . . . . . . . . . . . . . . . 25 | |||
10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 32 | 10. References . . . . . . . . . . . . . . . . . . . . . . . . . 25 | |||
10.1. Normative References . . . . . . . . . . . . . . . . . . . 32 | 10.1. Normative References . . . . . . . . . . . . . . . . . . 26 | |||
10.2. Informative References . . . . . . . . . . . . . . . . . . 32 | 10.2. Informative References . . . . . . . . . . . . . . . . . 26 | |||
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 34 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 27 | |||
1. Introduction | 1. Introduction | |||
This document captured results of the second interoperability test of | This document captures results of the second interoperability test of | |||
the Forwarding and Control Element Separation (ForCES) which took | the Forwarding and Control Element Separation (ForCES) which took | |||
place February 24-25, 2011 in the Internet Technology Lab (ITL) of | place February 24-25, 2011 in the Internet Technology Lab (ITL) of | |||
Zhejiang Gongshang University, China. The test involved protocol | Zhejiang Gongshang University, China. The test involved protocol | |||
elements described in several documents namely: | elements described in several documents namely: | |||
- ForCES Protocol [RFC5810] | - ForCES Protocol [RFC5810] | |||
- ForCES Forwarding Element (FE) Model [RFC5812] | - ForCES Forwarding Element Model [RFC5812] | |||
- ForCES Transport Mapping Layer (TML) [RFC5811] | - ForCES Transport Mapping Layer [RFC5811] | |||
The test also involved protocol elements described in the then- | The test also involved protocol elements described in the then- | |||
current versions of two Internet-Drafts. Although these documents | current versions of two Internet-Drafts. Although these documents | |||
have subsequently been revised and advanced, it is important to | have subsequently been revised and advanced, it is important to | |||
understand which versions of the work were used during this test. | understand which versions of the work were used during this test. | |||
The then-current Internet-Drafts were: | The then-current Internet-Drafts are: | |||
- ForCES Logical Function Block (LFB) Library | - ForCES Logical Function Block (LFB) Library | |||
[I-D.ietf-forces-lfb-lib-03]. | [I-D.ietf-forces-lfb-lib-03]. | |||
- ForCES Intra-NE High Availability [I-D.ietf-forces-ceha-00]. | - ForCES Intra-NE High Availability [I-D.ietf-forces-ceha-00]. | |||
Up to date, the 'ForCES Logical Function Block (LFB) Library' | ||||
document has been publilshed by IETF as RFC 6956. | ||||
Three independent ForCES implementations participated in the test. | Three independent ForCES implementations participated in the test. | |||
Scenarios of ForCES LFB Operation, TML with IPSec, CE High | Scenarios of ForCES LFB Operation, TML with IPSec, CE High | |||
Availability, and Packet Forwarding were constructed. Series of | Availability, and Packet Forwarding are constructed. Series of | |||
testing items for every scenario were carried out and | testing items for every scenario are carried out and interoperability | |||
interoperability results were achieved. Popular packet analyzers | results are achieved. Popular packet analyzers Ethereal/ | |||
Ethereal/Wireshark[Ethereal] and Tcpdump[Tcpdump] were used to verify | Wireshark[Ethereal] and Tcpdump[Tcpdump] are used to verify the wire | |||
the wire results. | results. | |||
This document is an update to RFC 6053, which captured the results of | This document is an update to RFC 6053, which captured the results of | |||
the first ForCES interoperability test. The first test on ForCES was | the first ForCES interoperability test. The first test on ForCES was | |||
held in July 2008 at the University of Patras, Greece. That test | held in July 2008 at the University of Patras, Greece. That test | |||
focused on validating the basic semantics of the ForCES protocol and | focused on validating the basic semantics of the ForCES protocol and | |||
ForCES FE model. | ForCES FE model. | |||
1.1. ForCES Protocol | 1.1. ForCES Protocol | |||
The ForCES protocol works in a master-slave mode in which Forwarding | The ForCES protocol works in a master-slave mode in which FEs are | |||
Elements (FEs) are slaves and Control Elements (CEs) are masters. | slaves and CEs are masters. The protocol includes commands for | |||
The protocol includes commands for transport of Logical Function | transport of Logical Function Block (LFB) configuration information, | |||
Block (LFB) configuration information, association setup, status, and | association setup, status, and event notifications, etc. The reader | |||
event notifications, etc. The reader is encouraged to read the | is encouraged to read the ForCES protocol specification [RFC5810] for | |||
ForCES protocol specification [RFC5810] for further information. | further information. | |||
1.2. ForCES FE Model | 1.2. ForCES FE Model | |||
The ForCES FE model [RFC5812] presents a formal way to define FE | ||||
The ForCES Forwarding Element (FE) model [RFC5812] presents a formal | Logical Function Blocks (LFBs) using XML. LFB configuration | |||
way to define FE Logical Function Blocks (LFBs) using XML. LFB | components, capabilities, and associated events are defined when the | |||
configuration components, capabilities, and associated events are | LFB is formally created. The LFBs within the FE are accordingly | |||
defined when the LFB is formally created. The LFBs within the FE are | controlled in a standardized way by the ForCES protocol. | |||
accordingly controlled in a standardized way by the ForCES protocol. | ||||
1.3. Transport Mapping Layer | 1.3. Transport Mapping Layer | |||
The ForCES Transport Mapping Layer (TML) transports the ForCES | The ForCES Transport Mapping Layer (TML) transports the ForCES | |||
Protocol Layer (PL) messages. The TML is where the issues of how to | Protocol Layer (PL) messages. The TML is where the issues of how to | |||
achieve transport level reliability, congestion control, multicast, | achieve transport level reliability, congestion control, multicast, | |||
ordering, etc are handled. It is expected that more than one TML | ordering, etc are handled. It is expected that more than one TML | |||
will be standardized. RFC 5811 specifies an SCTP-Based Transport | will be standardized. RFC 5811 specifies an SCTP-Based Transport | |||
Mapping Layer (TML) for ForCES protocol, which is a mandated TML for | Mapping Layer (TML) for ForCES protocol, which is a mandated TML for | |||
ForCES. See RFC 5811 for more details. | ForCES. See RFC 5811 for more details. | |||
skipping to change at page 5, line 16 | skipping to change at page 4, line 37 | |||
2.1. Date, Location, and Participants | 2.1. Date, Location, and Participants | |||
The second ForCES interoperability test meeting was held by IETF | The second ForCES interoperability test meeting was held by IETF | |||
ForCES Working Group on February 24-25, 2011, and was chaired by | ForCES Working Group on February 24-25, 2011, and was chaired by | |||
Jamal Hadi Salim. Three independent ForCES implementations | Jamal Hadi Salim. Three independent ForCES implementations | |||
participated in the test: | participated in the test: | |||
o Zhejiang Gongshang University/Hangzhou BAUD Corporation of | o Zhejiang Gongshang University/Hangzhou BAUD Corporation of | |||
Information and Networks Technology (Hangzhou BAUD Networks), | Information and Networks Technology (Hangzhou BAUD Networks), | |||
China. This implementation is referred to as "ZJSU" or in some | China. This implementation is referred to as "China" or in some | |||
cases "Z" in the document for the sake of brevity. | cases "C" in the document for the sake of brevity. | |||
o NTT Corporation, Japan. This implementation is referred to as | o NTT Corporation, Japan. This implementation is referred to as | |||
"NTT" or in some cases "N" in the document for the sake of | "Japan" or in some cases "J" in the document for the sake of | |||
brevity. | brevity. | |||
o The University of Patras, Greece. This implementation is referred | o The University of Patras, Greece. This implementation is referred | |||
to as "UoP" or in some cases "P" in the document for the sake of | to as "Greece" or in some cases "G" in the document for the sake | |||
brevity. | of brevity. | |||
Two other organizations, Mojatatu Networks and Hangzhou BAUD Networks | Two other organizations, Mojatatu Networks and Hangzhou BAUD Networks | |||
Corporation, which independently extended two different well known | Corporation, which independently extended two different well known | |||
public domain protocol analyzers, Ethereal/Wireshark [Ethereal] and | public domain protocol analyzers, Ethereal/Wireshark [Ethereal] and | |||
Tcpdump [Tcpdump], also participated in the interop test. During the | Tcpdump [Tcpdump], also participated in the interop test. During the | |||
interoperability test, the two protocol analyzers were used to verify | interoperability test, the two protocol analyzers were used to verify | |||
the validity of ForCES protocol messages and in some cases semantics. | the validity of ForCES protocol messages and in some cases semantics. | |||
Some issues related to interoperability among implementations were | Some issues related to interoperability among implementations were | |||
discovered. Most of the issues were solved on site during the test. | discovered. Most of the issues were solved on site during the test. | |||
The most contentious issue found was on the format of encapsulation | The most contentious issue found was on the format of encapsulation | |||
for protocol TLV (Refer to Section 5.1 ). | for protocol TLV (Refer to Section 5.1 ). | |||
Some errata related to ForCES document were found by the | Some errata related to ForCES document were found by the | |||
interoperability test. The errata has been reported to related IETF | interoperability test. The errata has been reported to related IETF | |||
RFCs. | RFCs. | |||
At times, interoperability testing was exercised between two instead | At times, interoperability testing was exercised between two instead | |||
of all three representative implementations due to a third one | of all three representative implementations due to a third one | |||
lacking a specific feature; however, in ensuing discussions, all | lacking a specific feature; however, in ensuing discussions, all | |||
implementers mentioned they would be implementing any missing | implementers mentioned they will be implementing any missing features | |||
features in the future. | in the future. | |||
2.2. Testbed Configuration | 2.2. Testbed Configuration | |||
2.2.1. Participants Access | 2.2.1. Participants Access | |||
NTT and ZJSU physically attended on site at the Internet Technology | Japan and China physically attended on site at the Internet | |||
Lab (ITL) of Zhejiang Gongshang University in China. The University | Technology Lab (ITL) of Zhejiang Gongshang University in China. The | |||
of Patras implementation joined remotely from Greece. The chair, | University of Patras implementation joined remotely from Greece. The | |||
Jamal Hadi Salim, joined remotely from Canada by using the Teamviewer | chair, Jamal Hadi Salim, joined remotely from Canada by using the | |||
as the monitoring tool[Teamviewer]. The approach is as shown in | Teamviewer as the monitoring tool[Teamviewer]. The approach is as | |||
Figure 1. In the figure, FE/CE refers to FE or CE that the | shown in Figure 1. In the figure, FE/CE refers to FE or CE that the | |||
implementer may act alternatively. | implementer may act alternatively. | |||
+---------+ +----+ +----------+ | +---------+ +----+ +----------+ | |||
| FE/CE | | | +---|Monitoring| | | FE/CE | | | +---|Monitoring| | |||
| ZJSU |-----| | /\/\/\/\/\ | |(TeamViewer) | | China |-----| | /\/\/\/\/\ | |(TeamViewer) | |||
+---------+ | | \Internet/ | | Mojatatu | | +---------+ | | \Internet/ | | Canada | | |||
|LAN |----/ \--| +----------+ | |LAN |----/ \--| +----------+ | |||
+---------+ | | \/\/\/\/\/ | +----------+ | +---------+ | | \/\/\/\/\/ | +----------+ | |||
| FE/CE |-----| | | | FE/CE | | | FE/CE |-----| | | | FE/CE | | |||
| NTT | | | +---| UoP | | | Japan | | | +---| Greece | | |||
+---------+ +----+ +----------+ | +---------+ +----+ +----------+ | |||
Figure 1: Access for Participants | Figure 1: Access for Participants | |||
As specified in RFC 5811, all CEs and FEs shall implement IPSec | As specified in RFC 5811, all CEs and FEs shall implement IPSec | |||
security in the TML. | security in the TML. | |||
On the internet boundary, gateways used must allow for IPSec, SCTP | On the internet boundary, gateways used must allow for IPSec, SCTP | |||
protocol and SCTP ports as defined in the ForCES SCTP-TML [RFC5811] . | protocol and SCTP ports as defined in the ForCES SCTP-TML [RFC5811] . | |||
2.2.2. Testbed Configuration | 2.2.2. Testbed Configuration | |||
CEs and FEs from ZJSU and NTT implementations were physically located | CEs and FEs from China and Japan implementations were physically | |||
within the ITL Lab of Zhejiang Gongshang University and connected | located within the ITL Lab of Zhejiang Gongshang University and | |||
together using Ethernet switches. The configuration can be seen in | connected together using Ethernet switches. The configuration can be | |||
Figure 2. In the figure, the SmartBits was a third-party supplied | seen in Figure 2. In the figure, the SmartBits is a third-party | |||
routing protocol testing machine, which acted as a router running | supplied routing protocol testing machine, which acts as a router | |||
OSPF and RIP and exchanged routing protocol messages with ForCES | running OSPF and RIP and exchanges routing protocol messages with | |||
routers in the network. Connection to the Internet was via an ADSL | ForCES routers in the network. The Internet is connected via an ADSL | |||
channel. | channel. | |||
/\/\/\/\/\ | /\/\/\/\/\ | |||
\Internet/ | \Internet/ | |||
/ \ | / \ | |||
\/\/\/\/\/ | \/\/\/\/\/ | |||
| | | | |||
|(ADSL) | |124.90.146.218 (ADSL) | |||
| | | | |||
+------------------------------------------------------------------+ | +------------------------------------------------------------------+ | |||
| LAN (10.20.0.0/24) | | | LAN (10.20.0.0/24) | | |||
+------------------------------------------------------------------+ | +------------------------------------------------------------------+ | |||
| | | | | | | | | | | | | | |||
| | | | | | | | | | | | | | |||
|.222 |.230 |.221 |.179 |.231 |.220 | |.222 |.230 |.221 |.179 |.231 |.220 | |||
+-----+ +-----+ +-----+ +-----+ +-----+ +---------+ | +-----+ +-----+ +-----+ +-----+ +-----+ +---------+ | |||
| CE | | CE | | | | | | | | Protocol| | | CE | | CE | | | | | | | | Protocol| | |||
|ZJSU | | NTT | | FE1 |.1 .2| FE |.1 .2| FE2 | | Analyzer| | |China| |Japan| | FE1 |.1 .2| FE |.1 .2| FE2 | | Analyzer| | |||
+-----+ +-----+ |ZJSU |---------| NTT |---------|ZJSU | +---------+ | +-----+ +-----+ |China|---------|Japan|---------|China| +---------+ | |||
+---------| |192.169. | | 192.168.| |------+ | +---------| |192.169. | | 192.168.| |------+ | |||
| .2 +-----+ 20.0.24 +-----+ 30.0/24+-----+ .2 | | | .2 +-----+ 20.0.24 +-----+ 30.0/24+-----+ .2 | | |||
| .12| |.12 | | | .12| |.12 | | |||
| | | | | | | | | | |||
192.168.50.0/24 | |192.168.60.0/24 | 192.168.50.0/24 | |192.168.60.0/24 | |||
| 192.168.10.0/24 192.168.40.0/24 | | | 192.168.10.0/24 192.168.40.0/24 | | |||
.1 | |.11 |.11 |.1 | .1 | |.11 |.11 |.1 | |||
+--------+ +--------------------------------------+ +--------+ | +--------+ +--------------------------------------+ +--------+ | |||
|Terminal| | Smartbits | |Terminal| | |Terminal| | Smartbits | |Terminal| | |||
+--------+ +--------------------------------------+ +--------+ | +--------+ +--------------------------------------+ +--------+ | |||
Figure 2: Testbed Configuration Located in ITL Lab,China | Figure 2: Testbed Configuration Located in ITL Lab,China | |||
CE and FE from the UoP implementation were located within the | Hardware and Software (CE and FE) of Greece those were located within | |||
University of Patras, Greece, and were connected together using LAN | the University of Patras, Greece, were connected together using LAN | |||
as shown in Figure 3. Connection to the Internet was via a VPN | as shown in Figure 3. The Internet is connected via a VPN channel. | |||
channel. | ||||
/\/\/\/\/\ | /\/\/\/\/\ | |||
\Internet/ | \Internet/ | |||
/ \ | / \ | |||
\/\/\/\/\/ | \/\/\/\/\/ | |||
| | | | |||
|(VPN) | |150.140.254.110(VPN) | |||
| | | | |||
+------------------------------------+ | +------------------------------------+ | |||
| LAN | | | LAN | | |||
+------------------------------------+ | +------------------------------------+ | |||
| | | | | | | | |||
| | | | | | | | |||
+------+ +--------+ +------+ | +------+ +--------+ +------+ | |||
| FE | |Protocol| | CE | | | FE | |Protocol| | CE | | |||
| UoP | |Analyzer| | UoP | | |Greece| |Analyzer| |Greece| | |||
+------+ +--------+ +------+ | +------+ +--------+ +------+ | |||
Figure 3: Testbed Configuration Located in the University of | Figure 3: Testbed Configuration Located in the University of | |||
Patras,Greece | Patras,Greece | |||
All above testbed configurations were then able to satisfy | All above testbed configurations can then satisfy requirements of all | |||
requirements of all the interoperability test scenarios that were | the interoperability test scenarios that are mentioned in this | |||
mentioned in this document. | document. | |||
3. Scenarios | 3. Scenarios | |||
3.1. Scenario 1 - LFB Operation | 3.1. Scenario 1 - LFB Operation | |||
This scenario was to test the interoperability on LFB operations | This scenario is to test the interoperability on LFB operations among | |||
among the participants. The connection diagram for the participants | the participants. The connection diagram for the participants is as | |||
is as shown in Figure 4. | shown in Figure 4. | |||
+------+ +------+ +------+ +------+ +------+ +------+ | +------+ +------+ +------+ +------+ +------+ +------+ | |||
| CE | | CE | | CE | | CE | | CE | | CE | | | CE | | CE | | CE | | CE | | CE | | CE | | |||
| ZJSU | | NTT | | ZJSU | | UoP | | NTT | | UoP | | | China| | Japan| | China| |Greece| | Japan| |Greece| | |||
+------+ +------+ +------+ +------+ +------+ +------+ | +------+ +------+ +------+ +------+ +------+ +------+ | |||
| | | | | | | | | | | | | | |||
| | | | | | | | | | | | | | |||
+------+ +------+ +------+ +------+ +------+ +------+ | +------+ +------+ +------+ +------+ +------+ +------+ | |||
| FE | | FE | | FE | | FE | | FE | | FE | | | FE | | FE | | FE | | FE | | FE | | FE | | |||
| NTT | | ZJSU | | UoP | | ZJSU | | UoP | | NTT | | |Japan | |China | |Greece| |China | |Greece| |Japan | | |||
+------+ +------+ +------+ +------+ +------+ +------+ | +------+ +------+ +------+ +------+ +------+ +------+ | |||
Figure 4: Scenario for LFB Operation | Figure 4: Scenario for LFB Operation | |||
In order to make interoperability more credible, the three | In order to make interoperability more credible, the three | |||
implementers were required to carry out the test in a way acting as | implementers are required to carry out the test in a way acting as CE | |||
CE or FE alternatively. As a result, every LFB operation was | or FE alternatively. As a result, every LFB operation is combined | |||
combined with 6 scenarios, as shown by Figure 4. | with 6 scenarios, as shown by Figure 4. | |||
The test scenario was designed with the following purposes: | The test scenario is designed with the following purposes: | |||
Firstly, the scenario was designed to verify all kinds of protocol | Firstly, the scenario is designed to verify all kinds of protocol | |||
messages with their complex data formats, which are defined in RFC | messages with their complex data formats, which are defined in RFC | |||
5810. Specially, we tried to verify the data format of a PATH-DATA | 5810. Specially, we try to verify the data format of a PATH-DATA | |||
with nested PATH-DATAs, and the operation(SET, GET, DEL) of an array | with nested PATH-DATAs, and the operation(SET, GET, DEL) of an array | |||
or an array with a nested array. | or an array with a nested array. | |||
Secondly, the scenario was designed to verify the definition of | Secondly, the scenario is designed to verify the definition of ForCES | |||
ForCES LFB Library [I-D.ietf-forces-lfb-lib-03], which defined a base | LFB Library [I-D.ietf-forces-lfb-lib-03], which defines a base set of | |||
set of ForCES LFB classes for typical router functions. Successful | ForCES LFB classes for typical router functions. Successful test | |||
test under this scenario may help the validity of the LFB | under this scenario also means the validity of the LFB definitions. | |||
definitions. | ||||
3.2. Scenario 2 - TML with IPSec | 3.2. Scenario 2 - TML with IPSec | |||
This scenario was designed to implement a TML with IPSec, which is | This scenario is designed to implement a TML with IPSec, which is the | |||
the requirement by RFC 5811. TML with IPSec was not implemented in | requirement by RFC 5811. TML with IPSec was not implemented in the | |||
the first ForCES interoperability test as reported by RFC 6053. For | first ForCES interoperability test as reported by RFC 6053. For this | |||
this reason, in the second interoperability test, we specifically | reason, in the second interoperability test, we specifically designed | |||
designed the test scenario to verify the TML over IPSec channel. | the test scenario to verify the TML over IPSec channel. | |||
In this scenario, tests on LFB operations for Scenario 1 were | In this scenario, tests on LFB operations for Scenario 1 were | |||
repeated with the difference that TML was secured via IPSec. This | repeated with the difference that TML was secured via IPSec. This | |||
setup scenario allowed us to verify whether all interactions between | setup scenario allows us to verify whether all interactions between | |||
CE and FE could be made correctly under an IPSec TML environment. | CE and FE can be made correctly under an IPSec TML environment. | |||
The connection diagram for this scenario was shown as Figure 5. | The connection diagram for this scenario is shown as Figure 5. | |||
Because an unfortunate problem with the test system in UoP prevented | Because of system deficiency to deploy IPSec over TML in Greece, the | |||
the deployment of IPSec over TML, this test only took place between | text only took place between China and Japan. | |||
the test systems in ZJSU and NTT. | ||||
+------+ +------+ | +------+ +------+ | |||
| CE | | CE | | | CE | | CE | | |||
| ZJSU | | NTT | | | China| | Japan| | |||
+------+ +------+ | +------+ +------+ | |||
| | | | | | |||
|TML over IPSec |TML over IPSec | |TML over IPSec |TML over IPSec | |||
+------+ +------+ | +------+ +------+ | |||
| FE | | FE | | | FE | | FE | | |||
| NTT | | ZJSU | | |Japan | |China | | |||
+------+ +------+ | +------+ +------+ | |||
Figure 5: Scenario for LFB Operation with TML over IPSec | Figure 5: Scenario for LFB Operation with TML over IPSec | |||
In this scenario, ForCES TML was run over the IPSec channel. | In this scenario, ForCES TML was run over IPSec channel. | |||
Implementers joined in this interoperability have used the same | Implementers joined in this interoperability have used the same | |||
third-party software 'racoon' to establish the IPSec channel. The | third-party software 'racoon' to have established the IPSec channel. | |||
'racoon' in NetBSD is a well-known IKE daemon performing the IPsec | ||||
Key Exchange (IKE) with the peers. | ||||
ZJSU and NTT made a successful test with the scenario, and the | China and Japan have made a successful test with the scenario, and | |||
following items were realized: | the following items have been realized: | |||
o Internet Key Exchange (IKE) with certificates for endpoint | o Internet Key Exchange (IKE) with certificates for endpoint | |||
authentication. | authentication. | |||
o Transport Mode Encapsulating Security Payload (ESP). HMAC-SHA1-96 | o Transport Mode Encapsulating Security Payload (ESP). HMAC-SHA1-96 | |||
for message integrity protection. | for message integrity protection. | |||
3.3. Scenario 3 - CE High Availability | 3.3. Scenario 3 - CE High Availability | |||
CE High Availability (CEHA) was tested based on the ForCES CEHA | CE High Availability (CEHA) was tested based on the ForCES CEHA | |||
document [I-D.ietf-forces-ceha-00] | document [I-D.ietf-forces-ceha-00] | |||
The design of the setup and the scenario for the CEHA were simplified | The design of the setup and the scenario for the CEHA were simplified | |||
so as to focus mostly on the mechanics of the CEHA, which were: | so as to focus mostly on the mechanics of the CEHA, which are: | |||
o Associating with more than one CE. | o Associating with more than one CE. | |||
o Switching to backup CE on master CE failure. | o Switching to backup CE on master CE failure. | |||
The connection diagram for the scenario was as shown in Figure 6. | The connection diagram for the scenario is as shown in Figure 6. | |||
master standby master standby | master standby master standby | |||
+------+ +------+ +------+ +------+ | +------+ +------+ +------+ +------+ | |||
| CE | | CE | | CE | | CE | | | CE | | CE | | CE | | CE | | |||
| ZJSU | | UoP | | NTT | | UoP | | | China| |Greece| |Japan | |Greece| | |||
+------+ +------+ +------+ +------+ | +------+ +------+ +------+ +------+ | |||
| | | | | | | | | | |||
+----------+ +-----------+ | +----------+ +-----------+ | |||
| | | | | | |||
+------+ +------+ | +------+ +------+ | |||
| FE | | FE | | | FE | | FE | | |||
| UoP | | UoP | | |Greece| |Greece| | |||
+------+ +------+ | +------+ +------+ | |||
(a) (b) | (a) (b) | |||
Figure 6: Scenario for CE High Availability | Figure 6: Scenario for CE High Availability | |||
In this scenario one FE was connected and associated to a master CE | In this scenario one FE is connected and associated to a master CE | |||
and a backup CE. In the pre-association phase, the FE would be | and a backup CE. In the pre-association phase, the FE would be | |||
configured to have ZJSU's or NTT's CE as master CE and UoP's CE as | configured to have China's or Japan's CE as master CE and Greece's CE | |||
standby CE. The CEFailoverPolicy component of the FE Protocol Object | as standby CE. The CEFailoverPolicy component of the FE Protocol | |||
LFB that specified whether the FE was in High Availability mode | Object LFB that specifies whether the FE is in High Availability mode | |||
(value 2 or 3) would either be set in the pre-association phase by | (value 2 or 3) would either be set in the pre-association phase by | |||
the FEM interface or in post-association phase by the master CE. | the FEM interface or in post-association phase by the master CE. | |||
If the CEFailoverPolicy value was set to 2 or 3, the FE (in the post- | If the CEFailoverPolicy value is set to 2 or 3, the FE (in the post- | |||
association phase) would attempt to connect and associate with the | association phase) will attempt to connect and associate with the | |||
standby CE. | standby CE. | |||
When the master CE was deemed disconnected, either by a TearDown, | When the master CE is deemed disconnected, either by a TearDown, Loss | |||
Loss of Heartbeats or physically disconnected, the FE would assume | of Heartbeats or physically disconnected, the FE would assume that | |||
that the standby CE was now the master CE. The FE would then send an | the standby CE is now the master CE. The FE will then send an Event | |||
Event Notification, Primary CE Down,to all associated CEs, only the | Notification, Primary CE Down,to all associated CEs, only the standby | |||
standby CE in this case, with the value of the new master CEID. The | CE in this case, with the value of the new master CEID. The standby | |||
standby CE would then respond by sending a configuration message to | CE will then respond by sending a configuration message to the CEID | |||
the CEID component of the FE Protocol Object with its own ID to | component of the FE Protocol Object with its own ID to confirm that | |||
confirm that the CE considered itself as the master as well. | the CE considers itself as the master as well. | |||
The steps of the CEHA test scenario were as follows: | The steps of the CEHA test scenario are as follows: | |||
1. In the pre-association phase, setup of FE with master CE and | 1. In the pre-association phase, setup of FE with master CE and | |||
backup CE | backup CE | |||
2. FE connecting and associating with master CE. | 2. FE connecting and associating with master CE. | |||
3. When CEFailoverPolicy is set to 2 or 3, the FE will connect and | 3. When CEFailoverPolicy is set to 2 or 3, the FE will connect and | |||
associate with backup CE. | associate with backup CE. | |||
4. Once the master CE is considered disconnected then the FE chooses | 4. Once the master CE is considered disconnected then the FE chooses | |||
skipping to change at page 12, line 22 | skipping to change at page 10, line 40 | |||
5. It sends an Event Notification specifying that the master CE is | 5. It sends an Event Notification specifying that the master CE is | |||
down and who is now the master CE. | down and who is now the master CE. | |||
6. The new master CE sends a SET Configuration message to the FE | 6. The new master CE sends a SET Configuration message to the FE | |||
setting the CEID value to who is now the new master CE completing | setting the CEID value to who is now the new master CE completing | |||
the switch. | the switch. | |||
3.4. Scenario 4 - Packet forwarding | 3.4. Scenario 4 - Packet forwarding | |||
This test scenario was to verify LFBs like RedirectIn, RedirectOut, | This test scenario is to verify LFBs like RedirectIn, RedirectOut, | |||
IPv4NextHop, IPv4UcastLPM defined by the ForCES LFB library document | IPv4NextHop, IPv4UcastLPM defined by the ForCES LFB library document | |||
[I-D.ietf-forces-lfb-lib-03], and more importantly, to verify the | [I-D.ietf-forces-lfb-lib-03], and more importantly, to verify the | |||
combination of the LFBs to implement IP packet forwarding. | combination of the LFBs to implement IP packet forwarding. | |||
The connection diagram for this scenario was as Figure 7. | The connection diagram for this scenario is as Figure 7. | |||
+------+ | +------+ | |||
| CE | | | CE | | |||
| NTT | | | Japan| | |||
+------+ | +------+ | |||
| ^ | | ^ | |||
| | OSPF | | | OSPF | |||
| +-------> | | +-------> | |||
+------+ +------+ | +------+ +------+ | |||
+--------+ | FE | | OSPF | +--------+ | +--------+ | FE | | OSPF | +--------+ | |||
|Terminal|------| ZJSU |-------|Router|------|Terminal| | |Terminal|------|China |-------|Router|------|Terminal| | |||
+--------+ +------+ +------+ +--------+ | +--------+ +------+ +------+ +--------+ | |||
<--------------------------------------------> | <--------------------------------------------> | |||
Packet Forwarding | Packet Forwarding | |||
(a) | (a) | |||
+------+ | +------+ | |||
| CE | | | CE | | |||
| ZJSU | | | China| | |||
+------+ | +------+ | |||
^ | ^ | ^ | ^ | |||
OSPF | | | OSPF | OSPF | | | OSPF | |||
<-----+ | +-----> | <-----+ | +-----> | |||
+-------+ +------+ +------+ | +-------+ +------+ +------+ | |||
+--------+ | OSPF | | FE | | OSPF | +--------+ | +--------+ | OSPF | | FE | | OSPF | +--------+ | |||
|Terminal|----|Router |----| NTT |-----|Router|--|Terminal| | |Terminal|----|Router |----|Japan |-----|Router|--|Terminal| | |||
+--------+ +-------+ +------+ +------+ +--------+ | +--------+ +-------+ +------+ +------+ +--------+ | |||
<--------------------------------------------> | <--------------------------------------------> | |||
Packet Forwarding | Packet Forwarding | |||
(b) | (b) | |||
+------+ +------+ | +------+ +------+ | |||
| CE | | CE | | | CE | | CE | | |||
| NTT | | ZJSU | | | Japan| | China| | |||
+------+ +------+ | +------+ +------+ | |||
| ^ ^ | | | ^ ^ | | |||
| | OSPF | | | | | OSPF | | | |||
| +----------+ | | | +----------+ | | |||
+------+ +------+ | +------+ +------+ | |||
+--------+ | FE | | FE | +--------+ | +--------+ | FE | | FE | +--------+ | |||
|Terminal|------| ZJSU |-------| NTT |------|Terminal| | |Terminal|------|China |-------|Japan |------|Terminal| | |||
+--------+ +------+ +------+ +--------+ | +--------+ +------+ +------+ +--------+ | |||
<--------------------------------------------> | <--------------------------------------------> | |||
Packet Forwarding | Packet Forwarding | |||
(c) | (c) | |||
Figure 7: Scenario for IP Packet forwarding | Figure 7: Scenario for IP Packet forwarding | |||
In case (a), a CE by NTT was connected to an FE by ZJSU to form a | In case (a), a CE by Japan is connected to an FE by China to form a | |||
ForCES router. A Smartbits test machine with its routing protocol | ForCES router. A Smartbits test machine with its routing protocol | |||
software were used to simulate an OSPF router and were connected with | software are used to simulate an OSPF router and are connected with | |||
the ForCES router to try to exchange OSPF hello packets and LSA | the ForCES router to try to exchange OSPF hello packets and LSA | |||
packets among them. Terminals were simulated by Smartbits to send | packets among them. Terminals are simulated by Smartbits to send and | |||
and receive packets. As a result, the CE in the ForCES router needed | receive packets. As a result, the CE in the ForCES router need to be | |||
to be configured to run and support OSPF routing protocol. | configured to run and support OSPF routing protocol. | |||
In case (b), a CE by ZJSU was connected to an FE by NTT to form a | In case (b), a CE by China is connected to an FE by Japan to form a | |||
ForCES router. Two routers running OSPF were simulated and connected | ForCES router. Two routers running OSPF are simulated and connected | |||
to the ForCES router to test if the ForCES router could support OSPF | to the ForCES router to test if the ForCES router can support OSPF | |||
protocol and support packet forwarding. | protocol and support packet forwarding. | |||
In case (c), two ForCES routers were constructed. One was with CE by | In case (c), two ForCES routers are constructed. One is with CE by | |||
NTT and FE by ZJSU and the other was opposite. OSPF and packet | Japan and FE by China and the other is opposite. OSPF and packet | |||
forwarding were tested in the environment. | forwarding are tested in the environment. | |||
Testing process for this scenario was as below: | Testing process for this scenario is as below: | |||
1. Boot terminals and routers, and set IP addresses of their | 1. Boot terminals and routers, and set IP addresses of their | |||
interfaces. | interfaces. | |||
2. Boot CE and FE. | 2. Boot CE and FE. | |||
3. Establish association between CE and FE, and set IP addresses of | 3. Establish association between CE and FE, and set IP addresses of | |||
FEs interfaces. | FEs interfaces. | |||
4. Start OSPF among CE and routers, and set FIB on FE. | 4. Start OSPF among CE and routers, and set FIB on FE. | |||
5. Send packets between terminals. | 5. Send packets between terminals. | |||
4. Test Results | 4. Test Results | |||
4.1. LFB Operation Test | 4.1. LFB Operation Test | |||
The test result was as reported by Figure 8. For the convenience | The test result is as reported by Figure 8. For the convenience | |||
sake, as mentioned earlier, abbreviations of 'Z' in the table means | sake, as mentioned earlier, abbreviations of 'C' in the table means | |||
implementation from ZJSU ,'N' NTT implementation, and 'P' UoP | implementation from China,'J'Japan implementation, and 'G' Greece | |||
implementation. | implementation. | |||
+-----+----+-----+-----+--------------+-------------------+---------+ | +-----+----+-----+-----+--------------+-------------------+---------+ | |||
|Test#| CE |FE(s)|Oper | LFB | Component | Result | | |Test#| CE |FE(s)|Oper | LFB | Component | Result | | |||
| | | | | | /Capability | | | | | | | | | /Capability | | | |||
+-----+----+-----+-----+--------------+-------------------+---------+ | +-----+----+-----+-----+--------------+-------------------+---------+ | |||
| 1 | Z | N | GET | FEObject | LFBTopology | Success | | | 1 | C | J | GET | FEObject | LFBTopology | Success | | |||
| | N | Z | | | | Success | | | | J | C | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 2 | Z | N | GET | FEObject | LFBSelector | Success | | | 2 | C | J | GET | FEObject | LFBSelector | Success | | |||
| | N | Z | | | | Success | | | | J | C | | | | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 3 | Z | N | GET | EtherPHYCop | PHYPortID | Success | | | 3 | C | J | GET | EtherPHYCop | PHYPortID | Success | | |||
| | N | Z | | | | Success | | | | J | C | | | | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 4 | Z | N | GET | EtherPHYCop | AdminStatus | Success | | | 4 | C | J | GET | EtherPHYCop | AdminStatus | Success | | |||
| | N | Z | | | | Success | | | | J | C | | | | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 5 | Z | N | GET | EtherPHYCop | OperStatus | Success | | | 5 | C | J | GET | EtherPHYCop | OperStatus | Success | | |||
| | N | Z | | | | Success | | | | J | C | | | | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 6 | Z | N | GET | EtherPHYCop | AdminLinkSpeed | Success | | | 6 | C | J | GET | EtherPHYCop | AdminLinkSpeed | Success | | |||
| | N | Z | | | | Success | | | | J | C | | | | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 7 | Z | N | GET | EtherPHYCop | OperLinkSpeed | Success | | | 7 | C | J | GET | EtherPHYCop | OperLinkSpeed | Success | | |||
| | N | Z | | | | Success | | | | J | C | | | | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 8 | Z | N | GET | EtherPHYCop | AdminDuplexSpeed | Success | | | 8 | C | J | GET | EtherPHYCop | AdminDuplexSpeed | Success | | |||
| | N | Z | | | | Success | | | | J | C | | | | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 9 | Z | N | GET | EtherPHYCop | OperDuplexSpeed | Success | | | 9 | C | J | GET | EtherPHYCop | OperDuplexSpeed | Success | | |||
| | N | Z | | | | Success | | | | J | C | | | | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 10 | Z | N | GET | EtherPHYCop | CarrierStatus | Success | | | 10 | C | J | GET | EtherPHYCop | CarrierStatus | Success | | |||
| | N | Z | | | | Success | | | | J | C | | | | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 11 | Z | N | GET | EtherMACIn | AdminStatus | Success | | | 11 | C | J | GET | EtherMACIn | AdminStatus | Success | | |||
| | N | Z | | | | Success | | | | J | C | | | | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 12 | Z | N | GET | EtherMACIn | LocalMacAddresses | Success | | | 12 | C | J | GET | EtherMACIn | LocalMacAddresses | Success | | |||
| | N | Z | | | | Success | | | | J | C | | | | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 13 | Z | N | GET | EtherMACIn | L2Bridging | Success | | | 13 | C | J | GET | EtherMACIn | L2Bridging | Success | | |||
| | N | Z | | | PathEnable | Success | | | | J | C | | | PathEnable | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 14 | Z | N | GET | EtherMACIn | PromiscuousMode | Success | | | 14 | C | J | GET | EtherMACIn | PromiscuousMode | Success | | |||
| | N | Z | | | | Success | | | | J | C | | | | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 15 | Z | N | GET | EtherMACIn | TxFlowControl | Success | | | 15 | C | J | GET | EtherMACIn | TxFlowControl | Success | | |||
| | N | Z | | | | Success | | | | J | C | | | | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 16 | Z | N | GET | EtherMACIn | RxFlowControl | Success | | | 16 | C | J | GET | EtherMACIn | RxFlowControl | Success | | |||
| | N | Z | | | | Success | | | | J | C | | | | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 17 | Z | N | GET | EtherMACIn | MACInStats | Success | | | 17 | C | J | GET | EtherMACIn | MACInStats | Success | | |||
| | N | Z | | | | Success | | | | J | C | | | | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 18 | Z | N | GET | EtherMACOut | AdminStatus | Success | | | 18 | C | J | GET | EtherMACOut | AdminStatus | Success | | |||
| | N | Z | | | | Success | | | | J | C | | | | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 19 | Z | N | GET | EtherMACOut | MTU | Success | | | 19 | C | J | GET | EtherMACOut | MTU | Success | | |||
| | N | Z | | | | Success | | | | J | C | | | | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 20 | Z | N | GET | EtherMACOut | TxFlowControl | Success | | | 20 | C | J | GET | EtherMACOut | TxFlowControl | Success | | |||
| | N | Z | | | | Success | | | | J | C | | | | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 21 | Z | N | GET | EtherMACOut | TxFlowControl | Success | | | 21 | C | J | GET | EtherMACOut | TxFlowControl | Success | | |||
| | N | Z | | | | Success | | | | J | C | | | | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 22 | Z | N | GET | EtherMACOut | MACOutStats | Success | | | 22 | C | J | GET | EtherMACOut | MACOutStats | Success | | |||
| | N | Z | | | | Success | | | | J | C | | | | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 23 | Z | N | GET | ARP |PortV4AddrInfoTable| Success | | | 23 | C | J | GET | ARP |PortV4AddrInfoTable| Success | | |||
| | N | Z | | | | Success | | | | J | C | | | | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 24 | Z | N | SET | ARP |PortV4AddrInfoTable| Success | | | 24 | C | J | SET | ARP |PortV4AddrInfoTable| Success | | |||
| | N | Z | | | | Success | | | | J | C | | | | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 25 | Z | N | DEL | ARP |PortV4AddrInfoTable| Success | | | 25 | C | J | DEL | ARP |PortV4AddrInfoTable| Success | | |||
| | N | Z | | | | Success | | | | J | C | | | | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 26 | Z | N | SET | EtherMACIn | LocalMACAddresses | Success | | | 26 | C | J | SET | EtherMACIn | LocalMACAddresses | Success | | |||
| | N | Z | | | | Success | | | | J | C | | | | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 27 | Z | N | SET | EtherMACIn | MTU | Success | | | 27 | C | J | SET | EtherMACIn | MTU | Success | | |||
| | N | Z | | | | Success | | | | J | C | | | | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 28 | Z | N | SET | IPv4NextHop | IPv4NextHopTable | Success | | | 28 | C | J | SET | IPv4NextHop | IPv4NextHopTable | Success | | |||
| | N | Z | | | | Success | | | | J | C | | | | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 29 | Z | N | SET | IPv4UcastLPM | IPv4PrefixTable | Success | | | 29 | C | J | SET | IPv4UcastLPM | IPv4PrefixTable | Success | | |||
| | N | Z | | | | Success | | | | J | C | | | | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 30 | Z | N | DEL | IPv4NextHop | IPv4NextHopTable | Success | | | 30 | C | J | DEL | IPv4NextHop | IPv4NextHopTable | Success | | |||
| | N | Z | | | | Success | | | | J | C | | | | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 31 | Z | N | DEL | IPv4UcastLPM | IPv4PrefixTable | Success | | | 31 | C | J | DEL | IPv4UcastLPM | IPv4PrefixTable | Success | | |||
| | N | Z | | | | Success | | | | J | C | | | | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 32 | Z | N | SET | EtherPHYCop | AdminStatus | Success | | | 32 | C | J | SET | EtherPHYCop | AdminStatus | Success | | |||
| | N | Z | | | | Success | | | | J | C | | | | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 33 | Z | N | SET | Ether | VlanInputTable | Success | | | 33 | C | J | SET | Ether | VlanInputTable | Success | | |||
| | N | Z | | Classifier | | Success | | | | J | C | | Classifier | | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 34 | Z | N | DEL | Ether | VlanInputTable | Success | | | 34 | C | J | DEL | Ether | VlanInputTable | Success | | |||
| | N | Z | | Classifier | | Success | | | | J | C | | Classifier | | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 35 | Z | N | SET | Ether | VlanOutputTable | Success | | | 35 | C | J | SET | Ether | VlanOutputTable | Success | | |||
| | N | Z | | Encapsulator | | Success | | | | J | C | | Encapsulator | | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 36 | Z | N | DEL | Ether | VlanOutputTable | Success | | | 36 | C | J | DEL | Ether | VlanOutputTable | Success | | |||
| | N | Z | | Encapsulator | | Success | | | | J | C | | Encapsulator | | Success | | |||
| | Z | P | | | | Success | | | | C | G | | | | Success | | |||
| | P | Z | | | | Success | | | | G | C | | | | Success | | |||
| | N | P | | | | Success | | | | J | G | | | | Success | | |||
| | P | N | | | | Success | | | | G | J | | | | Success | | |||
+-----+----+-----+-----+--------------+-------------------+---------+ | +-----+----+-----+-----+--------------+-------------------+---------+ | |||
Figure 8: LFB Operation Test Results | Figure 8: LFB Operation Test Results | |||
Note on test #1: | Note on test 1#: | |||
On the wire format of encapsulation on array, only the case of | On the wire format of encapsulation on array, only the case of | |||
FULLDATA-in-FULLDATA was tested. | FULLDATA-in-FULLDATA was tested. | |||
In ZJSU's implementation, after test #2 CE have to get all LFBs' | In China's implementation, after test 2# CE have to get all LFBs' | |||
instance data actively according to the queried component of | instance data actively according to the queried component of | |||
LFBSelectors. | LFBSelectors. | |||
Note on test 28# and 29#: | ||||
Only had new reachable network destination been set, can route entry | ||||
be added into system. | ||||
Note on test 30# and 31#: | ||||
Corresponding nexthop entry must be deleted before prefix entry which | ||||
is decided by FE's routing management. | ||||
4.2. TML with IPSec Test | 4.2. TML with IPSec Test | |||
In this scenario, the ForCES TML was run over IPSec. Implementers | In this scenario, the ForCES TML is run over IPSec. Implementers | |||
joined this interoperability test used the same third-party tool | joined this interoperability test use the same third-party tool | |||
software 'racoon' to establish IPSec channel. Some typical LFB | software 'racoon' to establish IPSec channel. Some typical LFB | |||
operation tests as in Scenario 1 were repeated with the IPSec enabled | operation tests as in Scenario 1 are repeated with the IPSec enabled | |||
TML. | TML. | |||
As mentioned, this scenario only took place between implementers of | A note on this test is, because of the system difficulty to implement | |||
ZJSU and NTT. | IPSec over TML, Greece did not join in the test. Therefore, this | |||
scenario only took place between C and J. | ||||
The TML with IPSec test results are reported by Figure 9. | The TML with IPSec test results are reported by Figure 9. | |||
+-----+----+-----+-----+--------------+-------------------+---------+ | +-----+----+-----+-----+--------------+-------------------+---------+ | |||
|Test#| CE |FE(s)|Oper | LFB | Component/ | Result | | |Test#| CE |FE(s)|Oper | LFB | Component/ | Result | | |||
| | | | | | Capability | | | | | | | | | Capability | | | |||
+-----+----+-----+-----+--------------+-------------------+---------+ | +-----+----+-----+-----+--------------+-------------------+---------+ | |||
| 1 | Z | N | GET | FEObject | LFBTopology | Success | | | 1 | C | J | GET | FEObject | LFBTopology | Success | | |||
| | N | Z | | | | Success | | | | J | C | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 2 | Z | N | GET | FEObject | LFBSelectors | Success | | | 2 | C | J | GET | FEObject | LFBSelectors | Success | | |||
| | N | Z | | | | Success | | | | J | C | | | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 3 | Z | N | SET | Ether | VlanInputTable | Success | | | 3 | C | J | SET | Ether | VlanInputTable | Success | | |||
| | N | Z | | Classifier | | Success | | | | J | C | | Classifier | | Success | | |||
| | | | | | | | | | | | | | | | | | |||
| 4 | Z | N | DEL | Ether | VlanInputTable | Success | | | 4 | C | J | DEL | Ether | VlanInputTable | Success | | |||
| | N | Z | | Classifier | | Success | | | | J | C | | Classifier | | Success | | |||
+-----+----+-----+-----+--------------+-------------------+---------+ | +-----+----+-----+-----+--------------+-------------------+---------+ | |||
Figure 9: TML with IPSec Test Results | Figure 9: TML with IPSec Test Results | |||
4.3. CE High Availability Test | 4.3. CE High Availability Test | |||
In this scenario one FE connects and associates with a master CE and | In this scenario one FE connects and associates with a master CE and | |||
a backup CE. When the master CE is deemed disconnected the FE would | a backup CE. When the master CE is deemed disconnected the FE would | |||
attempt to find another associated CE to become the master CE. | attempt to find another associated CE to become the master CE. | |||
skipping to change at page 22, line 34 | skipping to change at page 20, line 29 | |||
By running OSPF, the CE in the ForCES router can generate new routes | By running OSPF, the CE in the ForCES router can generate new routes | |||
and load them to routing table in FE. The FE is then able to forward | and load them to routing table in FE. The FE is then able to forward | |||
packets according to the routing table. | packets according to the routing table. | |||
The test is reported with the results in Figure 10 | The test is reported with the results in Figure 10 | |||
+-----+----+-----+-------------------------+--------------+---------+ | +-----+----+-----+-------------------------+--------------+---------+ | |||
|Test#| CE |FE(s)| Item | LFBs Related | Result | | |Test#| CE |FE(s)| Item | LFBs Related | Result | | |||
+-----+----+-----+-------------------------+--------------+---------+ | +-----+----+-----+-------------------------+--------------+---------+ | |||
| 1 | N | Z | IPv4NextHopTable SET | IPv4NextHop | Success | | | 1 | J | C | IPv4NextHopTable SET | IPv4NextHop | Success | | |||
| | | | | | | | | | | | | | | | |||
| 2 | N | Z | IPv4PrefixTable SET | IPv4UcastLPM | Success | | | 2 | J | C | IPv4PrefixTable SET | IPv4UcastLPM | Success | | |||
| | | | | | | | | | | | | | | | |||
| 3 | N | Z |Redirect OSPF packet from| RedirectIn | Success | | | 3 | J | C |Redirect OSPF packet from| RedirectIn | Success | | |||
| | | | CE to SmartBits | | | | | | | | CE to SmartBits | | | | |||
| | | | | | | | | | | | | | | | |||
| 4 | N | Z |Redirect OSPF packet from| RedirectOut | Success | | | 4 | J | C |Redirect OSPF packet from| RedirectOut | Success | | |||
| | | | SmartBits to CE | | | | | | | | SmartBits to CE | | | | |||
| | | | | | | | | | | | | | | | |||
| 5 | N | Z | Metadata in | RedirectOut | Success | | | 5 | J | C | Metadata in | RedirectOut | Success | | |||
| | | | redirect message | RedirectIn | | | | | | | redirect message | RedirectIn | | | |||
| | | | | | | | | | | | | | | | |||
| 6 | N | Z | OSPF neighbor discovery | RedirectOut | Success | | | 6 | J | C | OSPF neighbor discovery | RedirectOut | Success | | |||
| | | | | RedirectIn | | | | | | | | RedirectIn | | | |||
| | | | | | | | | | | | | | | | |||
| 7 | N | Z | OSPF DD exchange | RedirectOut | Success | | | 7 | J | C | OSPF DD exchange | RedirectOut | Success | | |||
| | | | | RedirectIn | | | | | | | | RedirectIn | | | |||
| | | | | IPv4NextHop | | | | | | | | IPv4NextHop | | | |||
| | | | | | | | | | | | | | | | |||
| 8 | N | Z | OSPF LSA exchange | RedirectOut | Success | | | 8 | J | C | OSPF LSA exchange | RedirectOut | Success | | |||
| | | | | RedirectIn | | | | | | | | RedirectIn | | | |||
| | | | | IPv4NextHop | | | | | | | | IPv4NextHop | | | |||
| | | | | IPv4UcastLPM| | | | | | | | IPv4UcastLPM| | | |||
| | | | | | | | | | | | | | | | |||
| 9 | N | Z | Data Forwarding | RedirectOut | Success | | | 9 | J | C | Data Forwarding | RedirectOut | Success | | |||
| | | | | RedirectIn | | | | | | | | RedirectIn | | | |||
| | | | | IPv4NextHop | | | | | | | | IPv4NextHop | | | |||
| | | | | IPv4UcastLPM| | | | | | | | IPv4UcastLPM| | | |||
| | | | | | | | | | | | | | | | |||
| 10 | Z | N | IPv4NextHopTable SET | IPv4NextHop | Success | | | 10 | C | J | IPv4NextHopTable SET | IPv4NextHop | Success | | |||
| | | | | | | | | | | | | | | | |||
| 11 | Z | N | IPv4PrefixTable SET | IPv4UcastLPM| Success | | | 11 | C | J | IPv4PrefixTable SET | IPv4UcastLPM| Success | | |||
| | | | | | | | | | | | | | | | |||
| 12 | Z | N |Redirect OSPF packet from| RedirectIn | Success | | | 12 | C | J |Redirect OSPF packet from| RedirectIn | Success | | |||
| | | | CE to other OSPF router | | | | | | | | CE to other OSPF router | | | | |||
| | | | | | | | | | | | | | | | |||
| 13 | Z | N |Redirect OSPF packet from| RedirectOut | Success | | | 13 | C | J |Redirect OSPF packet from| RedirectOut | Success | | |||
| | | |other OSPF router to CE | | | | | | | |other OSPF router to CE | | | | |||
| | | | | | | | | | | | | | | | |||
| 14 | Z | N | Metadata in | RedirectOut | Success | | | 14 | C | J | Metadata in | RedirectOut | Success | | |||
| | | | redirect message | RedirectIn | | | | | | | redirect message | RedirectIn | | | |||
| | | | | | | | | | | | | | | | |||
| 15 | Z | N |OSPF neighbor discovery | RedirectOut | Success | | | 15 | C | J |OSPF neighbor discovery | RedirectOut | Success | | |||
| | | | | RedirectIn | | | | | | | | RedirectIn | | | |||
| | | | | | | | | | | | | | | | |||
| 16 | Z | N | OSPF DD exchange | RedirectOut | Failure | | | 16 | C | J | OSPF DD exchange | RedirectOut | Failure | | |||
| | | | | RedirectIn | | | | | | | | RedirectIn | | | |||
| | | | | IPv4NextHop | | | | | | | | IPv4NextHop | | | |||
| | | | | | | | | | | | | | | | |||
| 17 | Z | N | OSPF LSA exchange | RedirectOut | Failure | | | 17 | C | J | OSPF LSA exchange | RedirectOut | Failure | | |||
| | | | | RedirectIn | | | | | | | | RedirectIn | | | |||
| | | | | IPv4NextHop | | | | | | | | IPv4NextHop | | | |||
| | | | | IPv4UcastLPM| | | | | | | | IPv4UcastLPM| | | |||
+-----+----+-----+-------------------------+--------------+---------+ | +-----+----+-----+-------------------------+--------------+---------+ | |||
Figure 10: Packet Forwarding Test Results | Figure 10: Packet Forwarding Test Results | |||
Note on test #1 and #2: | Note on test 1# and 2#: | |||
A multicast route pointed to localhost was manually set before | A multicast route pointed to localhost was manually set before | |||
redirect channel could work normally. | redirect channel could work normally. | |||
Note on test #3 to #9: | Note on test 3# to 9#: | |||
During the tests, OSPF packets received from CE were found by | During the tests, OSPF packets received from CE were found by | |||
Ethereal/Wireshark with checksum errors. ZJSU's FE corrected the | Ethereal/Wireshark with checksum errors. China's FE corrected the | |||
checksum in FE so that the Smartbits would not drop the packets and | checksum in FE so that the Smartbits would not drop the packets and | |||
the neighbor discovery can continue. Such correcting action does not | the neighbor discovery can continue. Such correcting action does not | |||
affect the test scenarios and the results. | affect the test scenarios and the results. | |||
Comment on Test #16 and #17: | Comment on Test #16 and #17: | |||
The two test items failed. Note that Test #7 and #8 were identical | The two test items failed. Note that Test #7 and #8 are exactly the | |||
to the tests, only with CE and FE implementers were exchanged. | same as these tests, only with CE and FE implementers are exchanged, | |||
Moreover, test #12 and #13 showed that the redirect channel worked | and Test #12 and #13 show the redirect channel works well. As a | |||
well. Therefore, it can be reasonably inferred that the problem | result, it can be inferred that the problem caused the test failure | |||
caused the failure was from the implementations, rather than from the | was almost certainly from the implementation of the related LFBs | |||
ForCES protocol itself or from misunderstanding of implementations on | rather than from the ForCES protocol design problem, therefore the | |||
the protocol specification. Although the failure made the OSPF | failure does not lead to the interoperability problem on ForCES. | |||
interoperability test incomplete, it did not show interoperability | ||||
problem. More test work is needed to verify the OSPF | ||||
interoperability. | ||||
5. Discussions | 5. Discussions | |||
5.1. On Data Encapsulation Format | 5.1. On Data Encapsulation Format | |||
In the first day of the test, it was found that the LFB inter- | In the first day of the test, it was found that the LFB inter- | |||
operations about tables all failed. The reason is found to be the | operations about tables all failed. The reason is found to be the | |||
different ForCES protocol data encapsulation method among different | different ForCES protocol data encapsulation method among different | |||
implementations. The encapsulation issues are detailed as below: | implementations. The encapsulation issues are detailed as below: | |||
Assuming that an LFB has two components, one is a struct with ID 1 | Assuming that an LFB has two components, one is a struct with ID 1 | |||
and the other an array with ID 2, further with two components of u32 | and the other an array with ID 2, further with two components of u32 | |||
both inside, as below: | both inside, as below: | |||
struct1: type struct, ID=1 | struct1: type struct, ID=1 | |||
components are: | components are: | |||
a, type u32, ID=1 | a, type u32, ID=1 | |||
b, type u32, ID=2 | b, type u32, ID=2 | |||
table1: type array, ID=2 | table1: type array, ID=2 | |||
components for each row are (a struct of): | components for each row are (a struct of): | |||
x, type u32, ID=1 | x, type u32, ID=1 | |||
y, type u32, ID=2 | y, type u32, ID=2 | |||
1. On response of PATH-DATA format | 1. On response of PATH-DATA format | |||
When a CE sends a config/query ForCES protocol message to an FE from | When a CE sends a config/query ForCES protocol message to an FE from | |||
a different implementer, the CE probably receives response from the | a different implementer, the CE probably receives response from the | |||
FE with different PATH-DATA encapsulation format. For example, if a | FE with different PATH-DATA encapsulation format. For example, if a | |||
CE sends a query message with a path of 1 to a third party FE to | CE sends a query message with a path of 1 to a third party FE to | |||
manipulate struct 1 as defined above, the FE is probable to generate | manipulate struct 1 as defined above, the FE is probable to generate | |||
response with two different PATH-DATA encapsulation format: one is | response with two different PATH-DATA encapsulation format: one is | |||
the value with FULL/SPARSE-DATA and the other is the value with many | the value with FULL/SPARSE-DATA and the other is the value with many | |||
skipping to change at page 26, line 6 | skipping to change at page 23, line 18 | |||
OPER = GET-RESPONSE-TLV | OPER = GET-RESPONSE-TLV | |||
PATH-DATA-TLV: | PATH-DATA-TLV: | |||
IDs=1 | IDs=1 | |||
PATH-DATA-TLV: | PATH-DATA-TLV: | |||
IDs=1 | IDs=1 | |||
FULLDATA-TLV containing valueof(a) | FULLDATA-TLV containing valueof(a) | |||
PATH-DATA-TLV: | PATH-DATA-TLV: | |||
IDs=2 | IDs=2 | |||
FULLDATA-TLV containing valueof(b) | FULLDATA-TLV containing valueof(b) | |||
The interoperability testers witnessed that a ForCES element (CE or | The interoperability test witnessed that a ForCES element (CE or FE) | |||
FE) sender is free to choose whatever data structure that IETF ForCES | sender is free to choose whatever data structure that IETF ForCES | |||
documents define and best suits the element, while a ForCES element | documents define and best suits the element, while a ForCES element | |||
(CE or FE) should be able to accept and process information (requests | (CE or FE) should be able to accept and process information (requests | |||
and responses) that use any legitimate structure defined by IETF | and responses) that use any legitimate structure defined by IETF | |||
ForCES documents. While in the case a ForCES element is free to | ForCES documents. While in the case a ForCES element is free to | |||
choose any legitimate data structure as a response, it is preferred | choose any legitimate data structure as a response, it is preferred | |||
the ForCES element responds in the same format that the request was | the ForCES element responds in the same format that the request was | |||
made, as it is most probably the data structure is the request sender | made, as it is most probably the data structure is the request sender | |||
looks forward to receive. | looks forward to receive. | |||
2. On operation to array | 2. On operation to array | |||
skipping to change at page 31, line 8 | skipping to change at page 25, line 40 | |||
The authors also thank very much to Adrian Farrel and Joel Halpern | The authors also thank very much to Adrian Farrel and Joel Halpern | |||
for their important help in the document publication process. | for their important help in the document publication process. | |||
8. IANA Considerations | 8. IANA Considerations | |||
This memo includes no request to IANA. | This memo includes no request to IANA. | |||
9. Security Considerations | 9. Security Considerations | |||
Developers of ForCES FEs and CEs must take the security | Developers of ForCES FEs and CEs must take the security | |||
considerations of the ForCES Framework [RFC3746] and the ForCES | considerations of the ForCES Framework [RFC3746] and the ForCES | |||
Protocol [RFC5810] into account. Also, as specified in the security | Protocol [RFC5810] into account. Also, as specified in the security | |||
considerations section of the SCTP-Based TML for the ForCES Protocol | considerations section of the SCTP-Based TML for the ForCES Protocol | |||
[RFC5811], the transport-level security has to be ensured by IPsec. | [RFC5811], the transport-level security has to be ensured by IPsec. | |||
Test results of TML with IPsec supported have been shown in | ||||
Section 4.2 of the document. | ||||
10. References | 10. References | |||
10.1. Normative References | 10.1. Normative References | |||
[RFC5810] Doria, A., Hadi Salim, J., Haas, R., Khosravi, H., Wang, | [RFC5810] Doria, A., Hadi Salim, J., Haas, R., Khosravi, H., Wang, | |||
W., Dong, L., Gopal, R., and J. Halpern, "Forwarding and | W., Dong, L., Gopal, R., and J. Halpern, "Forwarding and | |||
Control Element Separation (ForCES) Protocol | Control Element Separation (ForCES) Protocol | |||
Specification", RFC 5810, March 2010. | Specification", RFC 5810, March 2010. | |||
[RFC5811] Hadi Salim, J. and K. Ogawa, "SCTP-Based Transport Mapping | [RFC5811] Hadi Salim, J. and K. Ogawa, "SCTP-Based Transport Mapping | |||
Layer (TML) for the Forwarding and Control Element | Layer (TML) for the Forwarding and Control Element | |||
Separation (ForCES) Protocol", RFC 5811, March 2010. | Separation (ForCES) Protocol", RFC 5811, March 2010. | |||
skipping to change at page 32, line 19 | skipping to change at page 26, line 16 | |||
[RFC5810] Doria, A., Hadi Salim, J., Haas, R., Khosravi, H., Wang, | [RFC5810] Doria, A., Hadi Salim, J., Haas, R., Khosravi, H., Wang, | |||
W., Dong, L., Gopal, R., and J. Halpern, "Forwarding and | W., Dong, L., Gopal, R., and J. Halpern, "Forwarding and | |||
Control Element Separation (ForCES) Protocol | Control Element Separation (ForCES) Protocol | |||
Specification", RFC 5810, March 2010. | Specification", RFC 5810, March 2010. | |||
[RFC5811] Hadi Salim, J. and K. Ogawa, "SCTP-Based Transport Mapping | [RFC5811] Hadi Salim, J. and K. Ogawa, "SCTP-Based Transport Mapping | |||
Layer (TML) for the Forwarding and Control Element | Layer (TML) for the Forwarding and Control Element | |||
Separation (ForCES) Protocol", RFC 5811, March 2010. | Separation (ForCES) Protocol", RFC 5811, March 2010. | |||
[RFC5812] Halpern, J. and J. Hadi Salim, "Forwarding and Control | [RFC5812] Halpern, J. and J. Hadi Salim, "Forwarding and Control | |||
Element Separation (ForCES) Forwarding Element Model", | Element Separation (ForCES) Forwarding Element Model", RFC | |||
RFC 5812, March 2010. | 5812, March 2010. | |||
[RFC5813] Haas, R., "Forwarding and Control Element Separation | [RFC5813] Haas, R., "Forwarding and Control Element Separation | |||
(ForCES) MIB", RFC 5813, March 2010. | (ForCES) MIB", RFC 5813, March 2010. | |||
10.2. Informative References | 10.2. Informative References | |||
[Ethereal] | [Ethereal] | |||
"Ethereal, also named Wireshark, is a protocol analyzer. | , "Ethereal, also named Wireshark, is a protocol analyzer. | |||
The specific Ethereal that was used is an updated | The specific Ethereal that was used is an updated | |||
Ethereal, by Fenggen Jia, that can analyze and decode the | Ethereal, by Fenggen Jia, that can analyze and decode the | |||
ForCES protocol messages", http://www.ietf.org/ | ForCES protocol messages", http://www.ietf.org/mail- | |||
mail-archive/web/forces/current/msg03687.html . | archive/web/forces/current/msg03687.html , . | |||
[I-D.ietf-forces-ceha-00] | [I-D.ietf-forces-ceha-00] | |||
Ogawa, K., Wang, W., Haleplidis, E., and J. Salim, "ForCES | Ogawa, K., Wang, W., Haleplidis, E., and J. Salim, "ForCES | |||
Intra-NE High Availability", draft-ietf-forces-ceha-00 | Intra-NE High Availability", draft-ietf-forces-ceha-00 | |||
(work in progress) [RFC Editor Note: This reference is | (work in progress) [RFC Editor Note: This reference is | |||
intended to indicate a specific version of an Internet- | intended to indicate a specific version of an Internet- | |||
Draft that was used during interop testing. Please Do NOT | Draft that was used during interop testing. Please Do NOT | |||
update this reference to a more recent version of the | update this reference to a more recent version of the | |||
draft or to an RFC. Please remove this note before | draft or to an RFC. Please remove this note before | |||
publication] , October 2010. | publication] , October 2010. | |||
[I-D.ietf-forces-lfb-lib-03] | [I-D.ietf-forces-lfb-lib-03] | |||
Wang, W., Haleplidis, E., Ogawa, K., Li, C., and J. | Wang, W., Haleplidis, E., Ogawa, K., Li, C., and J. | |||
Halpern, "ForCES Logical Function Block (LFB) Library", | Halpern, "ForCES Logical Function Block (LFB) Library", | |||
draft-ietf-forces-lfb-lib-03 (work in progress) [RFC | draft-ietf-forces-lfb-lib-03 (work in progress) [RFC | |||
Editor Note: This reference is intended to indicate a | Editor Note: This reference is intended to indicate a | |||
specific version of an Internet-Draft that was used during | specific version of an Internet-Draft that was used during | |||
interop testing. Please Do NOT update this reference to a | interop testing. Please Do NOT update this reference to a | |||
more recent version of the draft or to an RFC. Please | more recent version of the draft or to an RFC. Please | |||
remove this note before publication] , December 2010. | remove this note before publication] , December 2010. | |||
[RFC3654] Khosravi, H. and T. Anderson, "Requirements for Separation | [RFC3654] Khosravi, H. and T. Anderson, "Requirements for Separation | |||
of IP Control and Forwarding", RFC 3654, November 2003. | of IP Control and Forwarding", RFC 3654, November 2003. | |||
[RFC3746] Yang, L., Dantu, R., Anderson, T., and R. Gopal, | [RFC3746] Yang, L., Dantu, R., Anderson, T., and R. Gopal, | |||
"Forwarding and Control Element Separation (ForCES) | "Forwarding and Control Element Separation (ForCES) | |||
Framework", RFC 3746, April 2004. | Framework", RFC 3746, April 2004. | |||
[RFC6053] Haleplidis, E., Ogawa, K., Wang, W., and J. Hadi Salim, | [RFC6053] Haleplidis, E., Ogawa, K., Wang, W., and J. Hadi Salim, | |||
"Implementation Report for Forwarding and Control Element | "Implementation Report for Forwarding and Control Element | |||
Separation (ForCES)", RFC 6053, November 2010. | Separation (ForCES)", RFC 6053, November 2010. | |||
[Tcpdump] "Tcpdump is a Linux protocol analyzer. The specific | [Tcpdump] , "Tcpdump is a Linux protocol analyzer. The specific | |||
tcpdump that was used is a modified tcpdump, by Jamal Hadi | tcpdump that was used is a modified tcpdump, by Jamal Hadi | |||
Salim, that can analyze and decode the ForCES protocol | Salim, that can analyze and decode the ForCES protocol | |||
messages", http://www.ietf.org/mail-archive/web/forces/ | messages", http://www.ietf.org/mail-archive/web/forces/ | |||
current/msg03811.html . | current/msg03811.html , . | |||
[Teamviewer] | [Teamviewer] | |||
"TeamViewer connects to any PC or server around the world | , "TeamViewer connects to any PC or server around the | |||
within a few seconds.", http://www.teamviewer.com/ . | world within a few seconds. ", http://www.teamviewer.com/ | |||
, . | ||||
Authors' Addresses | Authors' Addresses | |||
Weiming Wang | Weiming Wang | |||
Zhejiang Gongshang University | Zhejiang Gongshang University | |||
18 Xuezheng Str., Xiasha University Town | 18 Xuezheng Str., Xiasha University Town | |||
Hangzhou, 310018 | Hangzhou 310018 | |||
P.R.China | P.R.China | |||
Phone: +86-571-28877721 | Phone: +86-571-28877721 | |||
Email: wmwang@xxxxxxxxxxx | Email: wmwang@xxxxxxxxxxx | |||
Kentaro Ogawa | Kentaro Ogawa | |||
NTT Corporation | NTT Corporation | |||
Tokyo, | Tokyo | |||
Japan | Japan | |||
Email: ogawa.kentaro@xxxxxxxxxxxxx | Email: ogawa.kentaro@xxxxxxxxxxxxx | |||
Evangelos Haleplidis | Evangelos Haleplidis | |||
University of Patras | University of Patras | |||
Department of Electrical & Computer Engineering | Patras | |||
Patras, 26500 | ||||
Greece | Greece | |||
Email: ehalep@xxxxxxxxxxxxxx | Email: ehalep@xxxxxxxxxxxxxx | |||
Ming Gao | Ming Gao | |||
Hangzhou BAUD Networks | Hangzhou BAUD Networks | |||
408 Wen-San Road | 408 Wen-San Road | |||
Hangzhou, 310012 | Hangzhou 310012 | |||
P.R.China | P.R.China | |||
Email: gmyyqno1@xxxxxxxxxxx | Email: gmyyqno1@xxxxxxxxxxx | |||
Jamal Hadi Salim | Jamal Hadi Salim | |||
Mojatatu Networks | Mojatatu Networks | |||
Ottawa | Ottawa | |||
Canada | Canada | |||
Email: hadi@xxxxxxxxxxxx | Email: hadi@xxxxxxxxxxxx | |||
End of changes. 155 change blocks. | ||||
494 lines changed or deleted | 489 lines changed or added | |||
This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |
Internet Engineering Task Force W. Wang Internet-Draft Zhejiang Gongshang University Updates: 6053 (if approved) K. Ogawa Intended status: Informational NTT Corporation Expires: November 23, 2013 E. Haleplidis University of Patras M. Gao Hangzhou BAUD Networks J. Hadi Salim Mojatatu Networks May 22, 2013 Interoperability Report for Forwarding and Control Element Separation (ForCES) draft-ietf-forces-interop-08 Abstract This document captured results of the second Forwarding and Control Element Separation (ForCES) interoperability test which took place on February 24-25, 2011 in the Internet Technology Lab (ITL) of Zhejiang Gongshang University, China. RFC 6053 had reported the results of the first ForCES interoperability test, and this document updates RFC 6053 by providing further interoperability results. Status of this Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." This Internet-Draft will expire on November 23, 2013. Copyright Notice Copyright (c) 2013 IETF Trust and the persons identified as the document authors. All rights reserved. Wang, et al. Expires November 23, 2013 [Page 1] Internet-Draft ForCES Interop Report May 2013 This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.1. ForCES Protocol . . . . . . . . . . . . . . . . . . . . . 3 1.2. ForCES FE Model . . . . . . . . . . . . . . . . . . . . . 4 1.3. Transport Mapping Layer . . . . . . . . . . . . . . . . . 4 1.4. Definitions . . . . . . . . . . . . . . . . . . . . . . . 4 2. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2.1. Date, Location, and Participants . . . . . . . . . . . . . 5 2.2. Testbed Configuration . . . . . . . . . . . . . . . . . . 5 2.2.1. Participants Access . . . . . . . . . . . . . . . . . 6 2.2.2. Testbed Configuration . . . . . . . . . . . . . . . . 6 3. Scenarios . . . . . . . . . . . . . . . . . . . . . . . . . . 9 3.1. Scenario 1 - LFB Operation . . . . . . . . . . . . . . . . 9 3.2. Scenario 2 - TML with IPSec . . . . . . . . . . . . . . . 9 3.3. Scenario 3 - CE High Availability . . . . . . . . . . . . 10 3.4. Scenario 4 - Packet forwarding . . . . . . . . . . . . . . 12 4. Test Results . . . . . . . . . . . . . . . . . . . . . . . . . 15 4.1. LFB Operation Test . . . . . . . . . . . . . . . . . . . . 15 4.2. TML with IPSec Test . . . . . . . . . . . . . . . . . . . 20 4.3. CE High Availability Test . . . . . . . . . . . . . . . . 21 4.4. Packet Forwarding Test . . . . . . . . . . . . . . . . . . 22 5. Discussions . . . . . . . . . . . . . . . . . . . . . . . . . 25 5.1. On Data Encapsulation Format . . . . . . . . . . . . . . . 25 6. Contributors . . . . . . . . . . . . . . . . . . . . . . . . . 28 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 29 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 30 9. Security Considerations . . . . . . . . . . . . . . . . . . . 31 10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 32 10.1. Normative References . . . . . . . . . . . . . . . . . . . 32 10.2. Informative References . . . . . . . . . . . . . . . . . . 32 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 34 Wang, et al. Expires November 23, 2013 [Page 2] Internet-Draft ForCES Interop Report May 2013 1. Introduction This document captured results of the second interoperability test of the Forwarding and Control Element Separation (ForCES) which took place February 24-25, 2011 in the Internet Technology Lab (ITL) of Zhejiang Gongshang University, China. The test involved protocol elements described in several documents namely: - ForCES Protocol [RFC5810] - ForCES Forwarding Element (FE) Model [RFC5812] - ForCES Transport Mapping Layer (TML) [RFC5811] The test also involved protocol elements described in the then- current versions of two Internet-Drafts. Although these documents have subsequently been revised and advanced, it is important to understand which versions of the work were used during this test. The then-current Internet-Drafts were: - ForCES Logical Function Block (LFB) Library [I-D.ietf-forces-lfb-lib-03]. - ForCES Intra-NE High Availability [I-D.ietf-forces-ceha-00]. Up to date, the 'ForCES Logical Function Block (LFB) Library' document has been publilshed by IETF as RFC 6956. Three independent ForCES implementations participated in the test. Scenarios of ForCES LFB Operation, TML with IPSec, CE High Availability, and Packet Forwarding were constructed. Series of testing items for every scenario were carried out and interoperability results were achieved. Popular packet analyzers Ethereal/Wireshark[Ethereal] and Tcpdump[Tcpdump] were used to verify the wire results. This document is an update to RFC 6053, which captured the results of the first ForCES interoperability test. The first test on ForCES was held in July 2008 at the University of Patras, Greece. That test focused on validating the basic semantics of the ForCES protocol and ForCES FE model. 1.1. ForCES Protocol The ForCES protocol works in a master-slave mode in which Forwarding Elements (FEs) are slaves and Control Elements (CEs) are masters. The protocol includes commands for transport of Logical Function Block (LFB) configuration information, association setup, status, and event notifications, etc. The reader is encouraged to read the ForCES protocol specification [RFC5810] for further information. Wang, et al. Expires November 23, 2013 [Page 3] Internet-Draft ForCES Interop Report May 2013 1.2. ForCES FE Model The ForCES Forwarding Element (FE) model [RFC5812] presents a formal way to define FE Logical Function Blocks (LFBs) using XML. LFB configuration components, capabilities, and associated events are defined when the LFB is formally created. The LFBs within the FE are accordingly controlled in a standardized way by the ForCES protocol. 1.3. Transport Mapping Layer The ForCES Transport Mapping Layer (TML) transports the ForCES Protocol Layer (PL) messages. The TML is where the issues of how to achieve transport level reliability, congestion control, multicast, ordering, etc are handled. It is expected that more than one TML will be standardized. RFC 5811 specifies an SCTP-Based Transport Mapping Layer (TML) for ForCES protocol, which is a mandated TML for ForCES. See RFC 5811 for more details. 1.4. Definitions This document follows the terminology defined by ForCES related documents, including RFC3654, RFC3746, RFC5810, RFC5811, RFC5812, RFC5813, etc. Wang, et al. Expires November 23, 2013 [Page 4] Internet-Draft ForCES Interop Report May 2013 2. Overview 2.1. Date, Location, and Participants The second ForCES interoperability test meeting was held by IETF ForCES Working Group on February 24-25, 2011, and was chaired by Jamal Hadi Salim. Three independent ForCES implementations participated in the test: o Zhejiang Gongshang University/Hangzhou BAUD Corporation of Information and Networks Technology (Hangzhou BAUD Networks), China. This implementation is referred to as "ZJSU" or in some cases "Z" in the document for the sake of brevity. o NTT Corporation, Japan. This implementation is referred to as "NTT" or in some cases "N" in the document for the sake of brevity. o The University of Patras, Greece. This implementation is referred to as "UoP" or in some cases "P" in the document for the sake of brevity. Two other organizations, Mojatatu Networks and Hangzhou BAUD Networks Corporation, which independently extended two different well known public domain protocol analyzers, Ethereal/Wireshark [Ethereal] and Tcpdump [Tcpdump], also participated in the interop test. During the interoperability test, the two protocol analyzers were used to verify the validity of ForCES protocol messages and in some cases semantics. Some issues related to interoperability among implementations were discovered. Most of the issues were solved on site during the test. The most contentious issue found was on the format of encapsulation for protocol TLV (Refer to Section 5.1 ). Some errata related to ForCES document were found by the interoperability test. The errata has been reported to related IETF RFCs. At times, interoperability testing was exercised between two instead of all three representative implementations due to a third one lacking a specific feature; however, in ensuing discussions, all implementers mentioned they would be implementing any missing features in the future. 2.2. Testbed Configuration Wang, et al. Expires November 23, 2013 [Page 5] Internet-Draft ForCES Interop Report May 2013 2.2.1. Participants Access NTT and ZJSU physically attended on site at the Internet Technology Lab (ITL) of Zhejiang Gongshang University in China. The University of Patras implementation joined remotely from Greece. The chair, Jamal Hadi Salim, joined remotely from Canada by using the Teamviewer as the monitoring tool[Teamviewer]. The approach is as shown in Figure 1. In the figure, FE/CE refers to FE or CE that the implementer may act alternatively. +---------+ +----+ +----------+ | FE/CE | | | +---|Monitoring| | ZJSU |-----| | /\/\/\/\/\ | |(TeamViewer) +---------+ | | \Internet/ | | Mojatatu | |LAN |----/ \--| +----------+ +---------+ | | \/\/\/\/\/ | +----------+ | FE/CE |-----| | | | FE/CE | | NTT | | | +---| UoP | +---------+ +----+ +----------+ Figure 1: Access for Participants As specified in RFC 5811, all CEs and FEs shall implement IPSec security in the TML. On the internet boundary, gateways used must allow for IPSec, SCTP protocol and SCTP ports as defined in the ForCES SCTP-TML [RFC5811] . 2.2.2. Testbed Configuration CEs and FEs from ZJSU and NTT implementations were physically located within the ITL Lab of Zhejiang Gongshang University and connected together using Ethernet switches. The configuration can be seen in Figure 2. In the figure, the SmartBits was a third-party supplied routing protocol testing machine, which acted as a router running OSPF and RIP and exchanged routing protocol messages with ForCES routers in the network. Connection to the Internet was via an ADSL channel. Wang, et al. Expires November 23, 2013 [Page 6] Internet-Draft ForCES Interop Report May 2013 /\/\/\/\/\ \Internet/ / \ \/\/\/\/\/ | |(ADSL) | +------------------------------------------------------------------+ | LAN (10.20.0.0/24) | +------------------------------------------------------------------+ | | | | | | | | | | | | |.222 |.230 |.221 |.179 |.231 |.220 +-----+ +-----+ +-----+ +-----+ +-----+ +---------+ | CE | | CE | | | | | | | | Protocol| |ZJSU | | NTT | | FE1 |.1 .2| FE |.1 .2| FE2 | | Analyzer| +-----+ +-----+ |ZJSU |---------| NTT |---------|ZJSU | +---------+ +---------| |192.169. | | 192.168.| |------+ | .2 +-----+ 20.0.24 +-----+ 30.0/24+-----+ .2 | | .12| |.12 | | | | | 192.168.50.0/24 | |192.168.60.0/24 | 192.168.10.0/24 192.168.40.0/24 | .1 | |.11 |.11 |.1 +--------+ +--------------------------------------+ +--------+ |Terminal| | Smartbits | |Terminal| +--------+ +--------------------------------------+ +--------+ Figure 2: Testbed Configuration Located in ITL Lab,China CE and FE from the UoP implementation were located within the University of Patras, Greece, and were connected together using LAN as shown in Figure 3. Connection to the Internet was via a VPN channel. Wang, et al. Expires November 23, 2013 [Page 7] Internet-Draft ForCES Interop Report May 2013 /\/\/\/\/\ \Internet/ / \ \/\/\/\/\/ | |(VPN) | +------------------------------------+ | LAN | +------------------------------------+ | | | | | | +------+ +--------+ +------+ | FE | |Protocol| | CE | | UoP | |Analyzer| | UoP | +------+ +--------+ +------+ Figure 3: Testbed Configuration Located in the University of Patras,Greece All above testbed configurations were then able to satisfy requirements of all the interoperability test scenarios that were mentioned in this document. Wang, et al. Expires November 23, 2013 [Page 8] Internet-Draft ForCES Interop Report May 2013 3. Scenarios 3.1. Scenario 1 - LFB Operation This scenario was to test the interoperability on LFB operations among the participants. The connection diagram for the participants is as shown in Figure 4. +------+ +------+ +------+ +------+ +------+ +------+ | CE | | CE | | CE | | CE | | CE | | CE | | ZJSU | | NTT | | ZJSU | | UoP | | NTT | | UoP | +------+ +------+ +------+ +------+ +------+ +------+ | | | | | | | | | | | | +------+ +------+ +------+ +------+ +------+ +------+ | FE | | FE | | FE | | FE | | FE | | FE | | NTT | | ZJSU | | UoP | | ZJSU | | UoP | | NTT | +------+ +------+ +------+ +------+ +------+ +------+ Figure 4: Scenario for LFB Operation In order to make interoperability more credible, the three implementers were required to carry out the test in a way acting as CE or FE alternatively. As a result, every LFB operation was combined with 6 scenarios, as shown by Figure 4. The test scenario was designed with the following purposes: Firstly, the scenario was designed to verify all kinds of protocol messages with their complex data formats, which are defined in RFC 5810. Specially, we tried to verify the data format of a PATH-DATA with nested PATH-DATAs, and the operation(SET, GET, DEL) of an array or an array with a nested array. Secondly, the scenario was designed to verify the definition of ForCES LFB Library [I-D.ietf-forces-lfb-lib-03], which defined a base set of ForCES LFB classes for typical router functions. Successful test under this scenario may help the validity of the LFB definitions. 3.2. Scenario 2 - TML with IPSec This scenario was designed to implement a TML with IPSec, which is the requirement by RFC 5811. TML with IPSec was not implemented in the first ForCES interoperability test as reported by RFC 6053. For this reason, in the second interoperability test, we specifically designed the test scenario to verify the TML over IPSec channel. Wang, et al. Expires November 23, 2013 [Page 9] Internet-Draft ForCES Interop Report May 2013 In this scenario, tests on LFB operations for Scenario 1 were repeated with the difference that TML was secured via IPSec. This setup scenario allowed us to verify whether all interactions between CE and FE could be made correctly under an IPSec TML environment. The connection diagram for this scenario was shown as Figure 5. Because an unfortunate problem with the test system in UoP prevented the deployment of IPSec over TML, this test only took place between the test systems in ZJSU and NTT. +------+ +------+ | CE | | CE | | ZJSU | | NTT | +------+ +------+ | | |TML over IPSec |TML over IPSec +------+ +------+ | FE | | FE | | NTT | | ZJSU | +------+ +------+ Figure 5: Scenario for LFB Operation with TML over IPSec In this scenario, ForCES TML was run over the IPSec channel. Implementers joined in this interoperability have used the same third-party software 'racoon' to establish the IPSec channel. The 'racoon' in NetBSD is a well-known IKE daemon performing the IPsec Key Exchange (IKE) with the peers. ZJSU and NTT made a successful test with the scenario, and the following items were realized: o Internet Key Exchange (IKE) with certificates for endpoint authentication. o Transport Mode Encapsulating Security Payload (ESP). HMAC-SHA1-96 for message integrity protection. 3.3. Scenario 3 - CE High Availability CE High Availability (CEHA) was tested based on the ForCES CEHA document [I-D.ietf-forces-ceha-00] The design of the setup and the scenario for the CEHA were simplified so as to focus mostly on the mechanics of the CEHA, which were: Wang, et al. Expires November 23, 2013 [Page 10] Internet-Draft ForCES Interop Report May 2013 o Associating with more than one CE. o Switching to backup CE on master CE failure. The connection diagram for the scenario was as shown in Figure 6. master standby master standby +------+ +------+ +------+ +------+ | CE | | CE | | CE | | CE | | ZJSU | | UoP | | NTT | | UoP | +------+ +------+ +------+ +------+ | | | | +----------+ +-----------+ | | +------+ +------+ | FE | | FE | | UoP | | UoP | +------+ +------+ (a) (b) Figure 6: Scenario for CE High Availability In this scenario one FE was connected and associated to a master CE and a backup CE. In the pre-association phase, the FE would be configured to have ZJSU's or NTT's CE as master CE and UoP's CE as standby CE. The CEFailoverPolicy component of the FE Protocol Object LFB that specified whether the FE was in High Availability mode (value 2 or 3) would either be set in the pre-association phase by the FEM interface or in post-association phase by the master CE. If the CEFailoverPolicy value was set to 2 or 3, the FE (in the post- association phase) would attempt to connect and associate with the standby CE. When the master CE was deemed disconnected, either by a TearDown, Loss of Heartbeats or physically disconnected, the FE would assume that the standby CE was now the master CE. The FE would then send an Event Notification, Primary CE Down,to all associated CEs, only the standby CE in this case, with the value of the new master CEID. The standby CE would then respond by sending a configuration message to the CEID component of the FE Protocol Object with its own ID to confirm that the CE considered itself as the master as well. The steps of the CEHA test scenario were as follows: 1. In the pre-association phase, setup of FE with master CE and backup CE Wang, et al. Expires November 23, 2013 [Page 11] Internet-Draft ForCES Interop Report May 2013 2. FE connecting and associating with master CE. 3. When CEFailoverPolicy is set to 2 or 3, the FE will connect and associate with backup CE. 4. Once the master CE is considered disconnected then the FE chooses the first Associated backup CE. 5. It sends an Event Notification specifying that the master CE is down and who is now the master CE. 6. The new master CE sends a SET Configuration message to the FE setting the CEID value to who is now the new master CE completing the switch. 3.4. Scenario 4 - Packet forwarding This test scenario was to verify LFBs like RedirectIn, RedirectOut, IPv4NextHop, IPv4UcastLPM defined by the ForCES LFB library document [I-D.ietf-forces-lfb-lib-03], and more importantly, to verify the combination of the LFBs to implement IP packet forwarding. The connection diagram for this scenario was as Figure 7. +------+ | CE | | NTT | +------+ | ^ | | OSPF | +-------> +------+ +------+ +--------+ | FE | | OSPF | +--------+ |Terminal|------| ZJSU |-------|Router|------|Terminal| +--------+ +------+ +------+ +--------+ <--------------------------------------------> Packet Forwarding (a) +------+ | CE | | ZJSU | +------+ ^ | ^ OSPF | | | OSPF Wang, et al. Expires November 23, 2013 [Page 12] Internet-Draft ForCES Interop Report May 2013 <-----+ | +-----> +-------+ +------+ +------+ +--------+ | OSPF | | FE | | OSPF | +--------+ |Terminal|----|Router |----| NTT |-----|Router|--|Terminal| +--------+ +-------+ +------+ +------+ +--------+ <--------------------------------------------> Packet Forwarding (b) +------+ +------+ | CE | | CE | | NTT | | ZJSU | +------+ +------+ | ^ ^ | | | OSPF | | | +----------+ | +------+ +------+ +--------+ | FE | | FE | +--------+ |Terminal|------| ZJSU |-------| NTT |------|Terminal| +--------+ +------+ +------+ +--------+ <--------------------------------------------> Packet Forwarding (c) Figure 7: Scenario for IP Packet forwarding In case (a), a CE by NTT was connected to an FE by ZJSU to form a ForCES router. A Smartbits test machine with its routing protocol software were used to simulate an OSPF router and were connected with the ForCES router to try to exchange OSPF hello packets and LSA packets among them. Terminals were simulated by Smartbits to send and receive packets. As a result, the CE in the ForCES router needed to be configured to run and support OSPF routing protocol. In case (b), a CE by ZJSU was connected to an FE by NTT to form a ForCES router. Two routers running OSPF were simulated and connected to the ForCES router to test if the ForCES router could support OSPF protocol and support packet forwarding. In case (c), two ForCES routers were constructed. One was with CE by NTT and FE by ZJSU and the other was opposite. OSPF and packet forwarding were tested in the environment. Wang, et al. Expires November 23, 2013 [Page 13] Internet-Draft ForCES Interop Report May 2013 Testing process for this scenario was as below: 1. Boot terminals and routers, and set IP addresses of their interfaces. 2. Boot CE and FE. 3. Establish association between CE and FE, and set IP addresses of FEs interfaces. 4. Start OSPF among CE and routers, and set FIB on FE. 5. Send packets between terminals. Wang, et al. Expires November 23, 2013 [Page 14] Internet-Draft ForCES Interop Report May 2013 4. Test Results 4.1. LFB Operation Test The test result was as reported by Figure 8. For the convenience sake, as mentioned earlier, abbreviations of 'Z' in the table means implementation from ZJSU ,'N' NTT implementation, and 'P' UoP implementation. +-----+----+-----+-----+--------------+-------------------+---------+ |Test#| CE |FE(s)|Oper | LFB | Component | Result | | | | | | | /Capability | | +-----+----+-----+-----+--------------+-------------------+---------+ | 1 | Z | N | GET | FEObject | LFBTopology | Success | | | N | Z | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | | | P | N | | | | Success | | | | | | | | | | 2 | Z | N | GET | FEObject | LFBSelector | Success | | | N | Z | | | | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | | | P | N | | | | Success | | | | | | | | | | 3 | Z | N | GET | EtherPHYCop | PHYPortID | Success | | | N | Z | | | | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | | | P | N | | | | Success | | | | | | | | | | 4 | Z | N | GET | EtherPHYCop | AdminStatus | Success | | | N | Z | | | | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | | | P | N | | | | Success | | | | | | | | | | 5 | Z | N | GET | EtherPHYCop | OperStatus | Success | | | N | Z | | | | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | | | P | N | | | | Success | | | | | | | | | | 6 | Z | N | GET | EtherPHYCop | AdminLinkSpeed | Success | Wang, et al. Expires November 23, 2013 [Page 15] Internet-Draft ForCES Interop Report May 2013 | | N | Z | | | | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | | | P | N | | | | Success | | | | | | | | | | 7 | Z | N | GET | EtherPHYCop | OperLinkSpeed | Success | | | N | Z | | | | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | | | P | N | | | | Success | | | | | | | | | | 8 | Z | N | GET | EtherPHYCop | AdminDuplexSpeed | Success | | | N | Z | | | | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | | | P | N | | | | Success | | | | | | | | | | 9 | Z | N | GET | EtherPHYCop | OperDuplexSpeed | Success | | | N | Z | | | | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | | | P | N | | | | Success | | | | | | | | | | 10 | Z | N | GET | EtherPHYCop | CarrierStatus | Success | | | N | Z | | | | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | | | P | N | | | | Success | | | | | | | | | | 11 | Z | N | GET | EtherMACIn | AdminStatus | Success | | | N | Z | | | | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | | | P | N | | | | Success | | | | | | | | | | 12 | Z | N | GET | EtherMACIn | LocalMacAddresses | Success | | | N | Z | | | | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | | | P | N | | | | Success | | | | | | | | | Wang, et al. Expires November 23, 2013 [Page 16] Internet-Draft ForCES Interop Report May 2013 | 13 | Z | N | GET | EtherMACIn | L2Bridging | Success | | | N | Z | | | PathEnable | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | | | P | N | | | | Success | | | | | | | | | | 14 | Z | N | GET | EtherMACIn | PromiscuousMode | Success | | | N | Z | | | | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | | | P | N | | | | Success | | | | | | | | | | 15 | Z | N | GET | EtherMACIn | TxFlowControl | Success | | | N | Z | | | | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | | | P | N | | | | Success | | | | | | | | | | 16 | Z | N | GET | EtherMACIn | RxFlowControl | Success | | | N | Z | | | | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | | | P | N | | | | Success | | | | | | | | | | 17 | Z | N | GET | EtherMACIn | MACInStats | Success | | | N | Z | | | | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | | | P | N | | | | Success | | | | | | | | | | 18 | Z | N | GET | EtherMACOut | AdminStatus | Success | | | N | Z | | | | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | | | P | N | | | | Success | | | | | | | | | | 19 | Z | N | GET | EtherMACOut | MTU | Success | | | N | Z | | | | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | | | P | N | | | | Success | Wang, et al. Expires November 23, 2013 [Page 17] Internet-Draft ForCES Interop Report May 2013 | | | | | | | | | 20 | Z | N | GET | EtherMACOut | TxFlowControl | Success | | | N | Z | | | | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | | | P | N | | | | Success | | | | | | | | | | 21 | Z | N | GET | EtherMACOut | TxFlowControl | Success | | | N | Z | | | | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | | | P | N | | | | Success | | | | | | | | | | 22 | Z | N | GET | EtherMACOut | MACOutStats | Success | | | N | Z | | | | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | | | P | N | | | | Success | | | | | | | | | | 23 | Z | N | GET | ARP |PortV4AddrInfoTable| Success | | | N | Z | | | | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | | | P | N | | | | Success | | | | | | | | | | 24 | Z | N | SET | ARP |PortV4AddrInfoTable| Success | | | N | Z | | | | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | | | P | N | | | | Success | | | | | | | | | | 25 | Z | N | DEL | ARP |PortV4AddrInfoTable| Success | | | N | Z | | | | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | | | P | N | | | | Success | | | | | | | | | | 26 | Z | N | SET | EtherMACIn | LocalMACAddresses | Success | | | N | Z | | | | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | Wang, et al. Expires November 23, 2013 [Page 18] Internet-Draft ForCES Interop Report May 2013 | | P | N | | | | Success | | | | | | | | | | 27 | Z | N | SET | EtherMACIn | MTU | Success | | | N | Z | | | | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | | | P | N | | | | Success | | | | | | | | | | 28 | Z | N | SET | IPv4NextHop | IPv4NextHopTable | Success | | | N | Z | | | | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | | | P | N | | | | Success | | | | | | | | | | 29 | Z | N | SET | IPv4UcastLPM | IPv4PrefixTable | Success | | | N | Z | | | | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | | | P | N | | | | Success | | | | | | | | | | 30 | Z | N | DEL | IPv4NextHop | IPv4NextHopTable | Success | | | N | Z | | | | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | | | P | N | | | | Success | | | | | | | | | | 31 | Z | N | DEL | IPv4UcastLPM | IPv4PrefixTable | Success | | | N | Z | | | | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | | | P | N | | | | Success | | | | | | | | | | 32 | Z | N | SET | EtherPHYCop | AdminStatus | Success | | | N | Z | | | | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | | | P | N | | | | Success | | | | | | | | | | 33 | Z | N | SET | Ether | VlanInputTable | Success | | | N | Z | | Classifier | | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | Wang, et al. Expires November 23, 2013 [Page 19] Internet-Draft ForCES Interop Report May 2013 | | N | P | | | | Success | | | P | N | | | | Success | | | | | | | | | | 34 | Z | N | DEL | Ether | VlanInputTable | Success | | | N | Z | | Classifier | | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | | | P | N | | | | Success | | | | | | | | | | 35 | Z | N | SET | Ether | VlanOutputTable | Success | | | N | Z | | Encapsulator | | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | | | P | N | | | | Success | | | | | | | | | | 36 | Z | N | DEL | Ether | VlanOutputTable | Success | | | N | Z | | Encapsulator | | Success | | | Z | P | | | | Success | | | P | Z | | | | Success | | | N | P | | | | Success | | | P | N | | | | Success | +-----+----+-----+-----+--------------+-------------------+---------+ Figure 8: LFB Operation Test Results Note on test #1: On the wire format of encapsulation on array, only the case of FULLDATA-in-FULLDATA was tested. In ZJSU's implementation, after test #2 CE have to get all LFBs' instance data actively according to the queried component of LFBSelectors. 4.2. TML with IPSec Test In this scenario, the ForCES TML was run over IPSec. Implementers joined this interoperability test used the same third-party tool software 'racoon' to establish IPSec channel. Some typical LFB operation tests as in Scenario 1 were repeated with the IPSec enabled TML. As mentioned, this scenario only took place between implementers of ZJSU and NTT. The TML with IPSec test results are reported by Figure 9. Wang, et al. Expires November 23, 2013 [Page 20] Internet-Draft ForCES Interop Report May 2013 +-----+----+-----+-----+--------------+-------------------+---------+ |Test#| CE |FE(s)|Oper | LFB | Component/ | Result | | | | | | | Capability | | +-----+----+-----+-----+--------------+-------------------+---------+ | 1 | Z | N | GET | FEObject | LFBTopology | Success | | | N | Z | | | | Success | | | | | | | | | | 2 | Z | N | GET | FEObject | LFBSelectors | Success | | | N | Z | | | | Success | | | | | | | | | | 3 | Z | N | SET | Ether | VlanInputTable | Success | | | N | Z | | Classifier | | Success | | | | | | | | | | 4 | Z | N | DEL | Ether | VlanInputTable | Success | | | N | Z | | Classifier | | Success | +-----+----+-----+-----+--------------+-------------------+---------+ Figure 9: TML with IPSec Test Results 4.3. CE High Availability Test In this scenario one FE connects and associates with a master CE and a backup CE. When the master CE is deemed disconnected the FE would attempt to find another associated CE to become the master CE. The CEHA scenario as is described in Scenario 3 was completed successfully for both setups. Due to a bug in one of the FEs, a interesting issue was caught: it was observed that the buggy FE took up to a second to failover. It was eventually found that the issue was due to the FE's prioritization of the different CEs. All messages from the backup CE were being ignored unless the master CE is disconnected. While the bug was fixed and the CEHA scenario was completed successfully, the authors feel it was important to capture the implementation issue in this document. The recommended approach is the following: o The FE should receive and handle messages first from the master CE on all priority channels to maintain proper functionality and then receive and handle messages from the backup CEs. o Only when the FE is attempting to associate with the backup CEs, then the FE should receive and handle messages per priority channel from all CEs. When all backup CEs are associated with or deemed unreachable, then the FE should return to receiving and handling messages first from the master CE. Wang, et al. Expires November 23, 2013 [Page 21] Internet-Draft ForCES Interop Report May 2013 4.4. Packet Forwarding Test As described in the ForCES LFB library [I-D.ietf-forces-lfb-lib-03], packet forwarding is implemented by a set of LFB classes that compose a processing path for packets. In this test scenario, as shown in Figure 7, a ForCES router running OSPF protocol was constructed. In addition, a set of LFBs including RedirectIn, RedirectOut, IPv4UcastLPM, and IPv4NextHop LFBs are used. RedirectIn and RedirectOut LFBs redirect OSPF hello and LSA packets from and to CE. A Smartbits test machine is used to simulate an OSPF router and exchange the OSPF hello and LSA packets with CE in ForCES router. Cases (a) and (b) in Figure 7 both need a RedirectIn LFB to send OSPF packets generated by CE to FE by use of ForCES packet redirect messages. The OSPF packets are further sent to an outside OSPF Router by the FE via forwarding LFBs including IPv4NextHop and IPv4UcastLPM LFBs. A RedirectOut LFB in the FE is used to send OSPF packets received from outside OSPF Router to CE by ForCES packet redirect messages. By running OSPF, the CE in the ForCES router can generate new routes and load them to routing table in FE. The FE is then able to forward packets according to the routing table. The test is reported with the results in Figure 10 +-----+----+-----+-------------------------+--------------+---------+ |Test#| CE |FE(s)| Item | LFBs Related | Result | +-----+----+-----+-------------------------+--------------+---------+ | 1 | N | Z | IPv4NextHopTable SET | IPv4NextHop | Success | | | | | | | | | 2 | N | Z | IPv4PrefixTable SET | IPv4UcastLPM | Success | | | | | | | | | 3 | N | Z |Redirect OSPF packet from| RedirectIn | Success | | | | | CE to SmartBits | | | | | | | | | | | 4 | N | Z |Redirect OSPF packet from| RedirectOut | Success | | | | | SmartBits to CE | | | | | | | | | | | 5 | N | Z | Metadata in | RedirectOut | Success | | | | | redirect message | RedirectIn | | | | | | | | | | 6 | N | Z | OSPF neighbor discovery | RedirectOut | Success | | | | | | RedirectIn | | | | | | | | | | 7 | N | Z | OSPF DD exchange | RedirectOut | Success | | | | | | RedirectIn | | | | | | | IPv4NextHop | | Wang, et al. Expires November 23, 2013 [Page 22] Internet-Draft ForCES Interop Report May 2013 | | | | | | | | 8 | N | Z | OSPF LSA exchange | RedirectOut | Success | | | | | | RedirectIn | | | | | | | IPv4NextHop | | | | | | | IPv4UcastLPM| | | | | | | | | | 9 | N | Z | Data Forwarding | RedirectOut | Success | | | | | | RedirectIn | | | | | | | IPv4NextHop | | | | | | | IPv4UcastLPM| | | | | | | | | | 10 | Z | N | IPv4NextHopTable SET | IPv4NextHop | Success | | | | | | | | | 11 | Z | N | IPv4PrefixTable SET | IPv4UcastLPM| Success | | | | | | | | | 12 | Z | N |Redirect OSPF packet from| RedirectIn | Success | | | | | CE to other OSPF router | | | | | | | | | | | 13 | Z | N |Redirect OSPF packet from| RedirectOut | Success | | | | |other OSPF router to CE | | | | | | | | | | | 14 | Z | N | Metadata in | RedirectOut | Success | | | | | redirect message | RedirectIn | | | | | | | | | | 15 | Z | N |OSPF neighbor discovery | RedirectOut | Success | | | | | | RedirectIn | | | | | | | | | | 16 | Z | N | OSPF DD exchange | RedirectOut | Failure | | | | | | RedirectIn | | | | | | | IPv4NextHop | | | | | | | | | | 17 | Z | N | OSPF LSA exchange | RedirectOut | Failure | | | | | | RedirectIn | | | | | | | IPv4NextHop | | | | | | | IPv4UcastLPM| | +-----+----+-----+-------------------------+--------------+---------+ Figure 10: Packet Forwarding Test Results Note on test #1 and #2: A multicast route pointed to localhost was manually set before redirect channel could work normally. Note on test #3 to #9: During the tests, OSPF packets received from CE were found by Ethereal/Wireshark with checksum errors. ZJSU's FE corrected the Wang, et al. Expires November 23, 2013 [Page 23] Internet-Draft ForCES Interop Report May 2013 checksum in FE so that the Smartbits would not drop the packets and the neighbor discovery can continue. Such correcting action does not affect the test scenarios and the results. Comment on Test #16 and #17: The two test items failed. Note that Test #7 and #8 were identical to the tests, only with CE and FE implementers were exchanged. Moreover, test #12 and #13 showed that the redirect channel worked well. Therefore, it can be reasonably inferred that the problem caused the failure was from the implementations, rather than from the ForCES protocol itself or from misunderstanding of implementations on the protocol specification. Although the failure made the OSPF interoperability test incomplete, it did not show interoperability problem. More test work is needed to verify the OSPF interoperability. Wang, et al. Expires November 23, 2013 [Page 24] Internet-Draft ForCES Interop Report May 2013 5. Discussions 5.1. On Data Encapsulation Format In the first day of the test, it was found that the LFB inter- operations about tables all failed. The reason is found to be the different ForCES protocol data encapsulation method among different implementations. The encapsulation issues are detailed as below: Assuming that an LFB has two components, one is a struct with ID 1 and the other an array with ID 2, further with two components of u32 both inside, as below: struct1: type struct, ID=1 components are: a, type u32, ID=1 b, type u32, ID=2 table1: type array, ID=2 components for each row are (a struct of): x, type u32, ID=1 y, type u32, ID=2 1. On response of PATH-DATA format When a CE sends a config/query ForCES protocol message to an FE from a different implementer, the CE probably receives response from the FE with different PATH-DATA encapsulation format. For example, if a CE sends a query message with a path of 1 to a third party FE to manipulate struct 1 as defined above, the FE is probable to generate response with two different PATH-DATA encapsulation format: one is the value with FULL/SPARSE-DATA and the other is the value with many parallel PATH-DATA TLV and nested PATH-DATA TLV, as below: format 1: OPER = GET-RESPONSE-TLV PATH-DATA-TLV: IDs=1 FULLDATA-TLV containing valueof(a),valueof(b) format 2: OPER = GET-RESPONSE-TLV PATH-DATA-TLV: IDs=1 PATH-DATA-TLV: IDs=1 FULLDATA-TLV containing valueof(a) PATH-DATA-TLV: IDs=2 Wang, et al. Expires November 23, 2013 [Page 25] Internet-Draft ForCES Interop Report May 2013 FULLDATA-TLV containing valueof(b) The interoperability testers witnessed that a ForCES element (CE or FE) sender is free to choose whatever data structure that IETF ForCES documents define and best suits the element, while a ForCES element (CE or FE) should be able to accept and process information (requests and responses) that use any legitimate structure defined by IETF ForCES documents. While in the case a ForCES element is free to choose any legitimate data structure as a response, it is preferred the ForCES element responds in the same format that the request was made, as it is most probably the data structure is the request sender looks forward to receive. 2. On operation to array An array operation may also have several different data encapsulation formats. For instance, if a CE sends a config message to table 1 with a path of (2.1), which refers to component with ID=2, which is an array, and the second ID is the row, so row 1, it may be encapsulated with three formats as below: format 1: OPER = SET-TLV PATH-DATA-TLV: IDs=2.1 FULLDATA-TLV containing valueof(x),valueof(y) format 2: OPER = SET-TLV PATH-DATA-TLV: IDs=2.1 PATH-DATA-TLV: IDs=1 FULLDATA-TLV containing valueof(x) PATH-DATA-TLV IDs=2 FULLDATA-TLV containing valueof(y) Moreover, if CE is targeting the whole array, for example if the array is empty and CE wants to add the first row to the table, it could also adopt another format: format 3: OPER = SET-TLV PATH-DATA-TLV: IDs=2 FULLDATA-TLV containing rowindex=1,valueof(x),valueof(y) Wang, et al. Expires November 23, 2013 [Page 26] Internet-Draft ForCES Interop Report May 2013 The interoperability test experience shows that format 1 and format 3, which take full advantage of multiple data elements description in one TLV of FULLDATA-TLV, get more efficiency, although format 2 can also get the same operating goal. Wang, et al. Expires November 23, 2013 [Page 27] Internet-Draft ForCES Interop Report May 2013 6. Contributors Contributors who have made major contributions to the interoperability test are as below: Hirofumi Yamazaki NTT Corporation Tokyo Japan Email: yamazaki.horofumi@xxxxxxxxxxxxx Rong Jin Zhejiang Gongshang University Hangzhou P.R.China Email: jinrong@xxxxxxxxxxx Yuta Watanabe NTT Corporation Tokyo Japan Email: yuta.watanabe@xxxxxxxxxxxx Xiaochun Wu Zhejiang Gongshang University Hangzhou P.R.China Email: spring-403@xxxxxxxxxxx Wang, et al. Expires November 23, 2013 [Page 28] Internet-Draft ForCES Interop Report May 2013 7. Acknowledgements The authors thank the following test participants: Chuanhuang Li, Hangzhou BAUD Networks Ligang Dong, Zhejiang Gongshang University Bin Zhuge, Zhejiang Gongshang University Jingjing Zhou, Zhejiang Gongshang University Liaoyuan Ke, Hangzhou BAUD Networks Kelei Jin, Hangzhou BAUD Networks The authors also thank very much to Adrian Farrel and Joel Halpern for their important help in the document publication process. Wang, et al. Expires November 23, 2013 [Page 29] Internet-Draft ForCES Interop Report May 2013 8. IANA Considerations This memo includes no request to IANA. Wang, et al. Expires November 23, 2013 [Page 30] Internet-Draft ForCES Interop Report May 2013 9. Security Considerations Developers of ForCES FEs and CEs must take the security considerations of the ForCES Framework [RFC3746] and the ForCES Protocol [RFC5810] into account. Also, as specified in the security considerations section of the SCTP-Based TML for the ForCES Protocol [RFC5811], the transport-level security has to be ensured by IPsec. Test results of TML with IPsec supported have been shown in Section 4.2 of the document. Wang, et al. Expires November 23, 2013 [Page 31] Internet-Draft ForCES Interop Report May 2013 10. References 10.1. Normative References [RFC5810] Doria, A., Hadi Salim, J., Haas, R., Khosravi, H., Wang, W., Dong, L., Gopal, R., and J. Halpern, "Forwarding and Control Element Separation (ForCES) Protocol Specification", RFC 5810, March 2010. [RFC5811] Hadi Salim, J. and K. Ogawa, "SCTP-Based Transport Mapping Layer (TML) for the Forwarding and Control Element Separation (ForCES) Protocol", RFC 5811, March 2010. [RFC5812] Halpern, J. and J. Hadi Salim, "Forwarding and Control Element Separation (ForCES) Forwarding Element Model", RFC 5812, March 2010. [RFC5813] Haas, R., "Forwarding and Control Element Separation (ForCES) MIB", RFC 5813, March 2010. 10.2. Informative References [Ethereal] "Ethereal, also named Wireshark, is a protocol analyzer. The specific Ethereal that was used is an updated Ethereal, by Fenggen Jia, that can analyze and decode the ForCES protocol messages", http://www.ietf.org/ mail-archive/web/forces/current/msg03687.html . [I-D.ietf-forces-ceha-00] Ogawa, K., Wang, W., Haleplidis, E., and J. Salim, "ForCES Intra-NE High Availability", draft-ietf-forces-ceha-00 (work in progress) [RFC Editor Note: This reference is intended to indicate a specific version of an Internet- Draft that was used during interop testing. Please Do NOT update this reference to a more recent version of the draft or to an RFC. Please remove this note before publication] , October 2010. [I-D.ietf-forces-lfb-lib-03] Wang, W., Haleplidis, E., Ogawa, K., Li, C., and J. Halpern, "ForCES Logical Function Block (LFB) Library", draft-ietf-forces-lfb-lib-03 (work in progress) [RFC Editor Note: This reference is intended to indicate a specific version of an Internet-Draft that was used during interop testing. Please Do NOT update this reference to a more recent version of the draft or to an RFC. Please remove this note before publication] , December 2010. Wang, et al. Expires November 23, 2013 [Page 32] Internet-Draft ForCES Interop Report May 2013 [RFC3654] Khosravi, H. and T. Anderson, "Requirements for Separation of IP Control and Forwarding", RFC 3654, November 2003. [RFC3746] Yang, L., Dantu, R., Anderson, T., and R. Gopal, "Forwarding and Control Element Separation (ForCES) Framework", RFC 3746, April 2004. [RFC6053] Haleplidis, E., Ogawa, K., Wang, W., and J. Hadi Salim, "Implementation Report for Forwarding and Control Element Separation (ForCES)", RFC 6053, November 2010. [Tcpdump] "Tcpdump is a Linux protocol analyzer. The specific tcpdump that was used is a modified tcpdump, by Jamal Hadi Salim, that can analyze and decode the ForCES protocol messages", http://www.ietf.org/mail-archive/web/forces/ current/msg03811.html . [Teamviewer] "TeamViewer connects to any PC or server around the world within a few seconds.", http://www.teamviewer.com/ . Wang, et al. Expires November 23, 2013 [Page 33] Internet-Draft ForCES Interop Report May 2013 Authors' Addresses Weiming Wang Zhejiang Gongshang University 18 Xuezheng Str., Xiasha University Town Hangzhou, 310018 P.R.China Phone: +86-571-28877721 Email: wmwang@xxxxxxxxxxx Kentaro Ogawa NTT Corporation Tokyo, Japan Email: ogawa.kentaro@xxxxxxxxxxxxx Evangelos Haleplidis University of Patras Department of Electrical & Computer Engineering Patras, 26500 Greece Email: ehalep@xxxxxxxxxxxxxx Ming Gao Hangzhou BAUD Networks 408 Wen-San Road Hangzhou, 310012 P.R.China Email: gmyyqno1@xxxxxxxxxxx Jamal Hadi Salim Mojatatu Networks Ottawa Canada Email: hadi@xxxxxxxxxxxx Wang, et al. Expires November 23, 2013 [Page 34]