Difference between revisions of "CSIT/func1609-draft"
Mackonstan (Talk | contribs) |
Mackonstan (Talk | contribs) |
||
Line 7: | Line 7: | ||
Following priority tagging scheme is used in this CSIT wiki and FD.io jira for CSIT: | Following priority tagging scheme is used in this CSIT wiki and FD.io jira for CSIT: | ||
− | * [ | + | * [$VppRlsNo-$RelPrio] |
− | ** | + | ** VppRlsNo - aligned VPP release number - 16.09, 16.12, 17.03. |
− | ** | + | ** RelPrio - CSIT release priority - P0 for Must Have, P1 for Should Have, P2 for Could Have |
− | * [1609-P0] - CSIT | + | * CSIT dev work tagging examples: |
− | * [1609-P1] - CSIT | + | ** [1609-P0] - CSIT Must Have for vpp-v1609 |
− | * [1609-P2] - CSIT | + | ** [1609-P1] - CSIT Should Have for vpp-v1609 |
+ | ** [1609-P2] - CSIT Could Have for vpp-v1609 | ||
− | + | CSIT dev work plan execution tracked on [https://jira.fd.io/secure/RapidBoard.jspa?rapidView=1&projectKey=CSIT CSIT jira], with priority tags encoded as Jira labels for easy of tracking and reporting. | |
=CSIT functional tests - dev plan= | =CSIT functional tests - dev plan= | ||
− | CSIT functional test cases | + | For the purpose of tracking CSIT dev work, CSIT functional test cases are grouped into the following VPP functional areas: |
# IPv4 data plane | # IPv4 data plane | ||
Line 26: | Line 27: | ||
# IPv6 control plane | # IPv6 control plane | ||
# IPv6 encapsulations | # IPv6 encapsulations | ||
− | # L2 data plane | + | # Ethernet L2 data plane |
− | # L2 control plane | + | # Ethernet L2 control plane |
− | # L2 encapsulations | + | # Ethernet L2 encapsulations |
− | # L2 management plane | + | # Ethernet L2 management plane |
# MPLS data plane | # MPLS data plane | ||
# NSH data plane | # NSH data plane | ||
# OPNFV-FDS integration | # OPNFV-FDS integration | ||
− | + | Following sections provide a top-level breakdown of CSIT dev work items covering functional test cases per area, and their proposed priorities. Items completed to date are prefixed with [DONE]; remaining items are prefixed with their respective priority per target release as described earlier. Indicative VPP functionality coverage is listed at the beginning of each section. | |
+ | |||
+ | Identified VPP working code availability dependencies are marked by VPP Jira ticket [TODO VPP-xxx]. | ||
==IPv4 data plane== | ==IPv4 data plane== | ||
− | # [1609-P0] | + | Indicative coverage = 30% |
− | # [1609-P0] | + | |
− | # [1609-P0] security - source IPv4 Reverse Path Forwarding (RPF) | + | # [1609-P0] VPN routed forwarding (VRF) - baseline. |
− | # [1609-P0] qos - ingress policing - 1r2c-(cb,ca), 2r3c-(cb,ca) policers | + | # [1609-P0] extranet VPN routed forwarding (VRF) - baseline. |
− | # [1609-P1] | + | # [1609-P0] security - source IPv4 Reverse Path Forwarding (RPF). |
− | # [1609- | + | # [1609-P0] qos - ingress policing - 1r2c-(cb,ca), 2r3c-(cb,ca) policers, RFC2475, RFC2697, RFC2698. |
− | + | # [1609-P1] routing multipath (ECMP, UECMP) - baseline. | |
− | # [DONE] | + | # [1609-P1] [TODO VPP-xxx] carrier grade nat 44, CGN44, RFC6598, RFC6888. |
− | # [DONE] security - iacl with n-tuple classification | + | # [1609-P2] [TODO VPP-xxx] security - stateful firewall. |
− | # [DONE] security - cop white-/black- | + | # [1606-DONE] IPv4 routing RFC791 - baseline. |
+ | # [1606-DONE] security - iacl with n-tuple classification, ip4, ip6, mac. | ||
+ | # [1606-DONE] security - cop white-/black-list ip4 src addr filtering. | ||
==IPv4 control plane== | ==IPv4 control plane== | ||
+ | |||
+ | Indicative coverage = 50% | ||
+ | |||
+ | # [1609-P0] Proxy ARP. | ||
+ | # [1609-P0] IKEv2. | ||
+ | # [1609-P1] DHCPv4 proxy. | ||
+ | # [1606-DONE] ARP. | ||
+ | # [1606-DONE] ICMPv4. | ||
+ | # [1606-DONE] DHCPv4 client. | ||
+ | |||
==IPv4 encapsulations== | ==IPv4 encapsulations== | ||
+ | |||
+ | Indicative coverage = 50% | ||
+ | |||
+ | # [1609-P0] ip4-ipsec-ip4 - baseline. | ||
+ | # [1606-DONE] ip4-gre-ip4 - baseline. | ||
+ | |||
==IPv6 data plane== | ==IPv6 data plane== | ||
+ | |||
+ | Indicative coverage = 67% | ||
+ | |||
+ | # [1609-P0] VPN routed forwarding (VRF) - baseline. | ||
+ | # [1609-P0] extranet VPN routed forwarding (VRF) - baseline. | ||
+ | # [1609-P0] security - source IPv6 Reverse Path Forwarding (RPF). | ||
+ | # [1609-P0] qos - ingress policing - 1r2c-(cb,ca), 2r3c-(cb,ca) policers, RFC2475, RFC2697, RFC2698. | ||
+ | # [1609-P1] routing multipath (ECMP, UECMP) - baseline. | ||
+ | # [1609-P2] [TODO VPP-xxx] security - stateful firewall. | ||
+ | # [1606-DONE] routing [rfc2460] - baseline. | ||
+ | # [1606-DONE] security - iacl with n-tuple classification. | ||
+ | # [1606-DONE] security - cop white-/black-list ip4 src addr filtering. | ||
+ | |||
==IPv6 control plane== | ==IPv6 control plane== | ||
+ | |||
+ | Indicative coverage = 40% | ||
+ | |||
+ | # [1609-P0] router advertisement. | ||
+ | # [1609-P1] DHCPv6 proxy. | ||
+ | # [1609-P2] [TODO VPP-xxx] ip6-ioam, in-band OAM. | ||
+ | # [1606-DONE] neighbor discovery, RFC4861. | ||
+ | # [1606-DONE] ICMPv6. | ||
+ | |||
==IPv6 encapsulations== | ==IPv6 encapsulations== | ||
− | ==L2 data plane== | + | |
− | ==L2 control plane== | + | Indicative coverage = 0% |
− | ==L2 encapsulations== | + | |
− | = | + | # [1609-P0] ip4-o-ip6 softwire. |
+ | # [1609-P0] ip6-ipsec-ip6. | ||
+ | # [1609-P1] [TODO VPP-xxx] ip6-segment-routing. | ||
+ | |||
+ | ==Ethernet L2 data plane== | ||
+ | |||
+ | Indicative coverage = 60% | ||
+ | |||
+ | # [1609-P0] Bridge domain - with VLAN tag acrobatics 1-to-1, 1-to-2, 2-to-1, 2-to-2. | ||
+ | # [1609-P1] Integrated Routing-Bridging (IRB) - baseline. | ||
+ | # [1606-DONE] L2 Cross-connec - baseline. | ||
+ | # [1606-DONE] L2 Cross-connect - with VLAN tag acrobatics 1-to-1, 1-to-2, 2-to-1, 2-to-2. | ||
+ | # [1606-DONE] Bridge domain - baseline. | ||
+ | |||
+ | ==Ethernet L2 control plane== | ||
+ | |||
+ | Indicative coverage = | ||
+ | |||
+ | # [1609-P2] [TODO VPP-xxx] CDP/LLDP. | ||
+ | # [1606-DONE] MAC learning. | ||
+ | # [1606-DONE] MAC split-horizon. | ||
+ | |||
+ | ==Ethernet L2 encapsulations== | ||
+ | |||
+ | Indicative coverage = 33% | ||
+ | |||
+ | # [1609-P2] l2-eth-l2tpv3-ip4. | ||
+ | # [1609-P2] l2-eth-l2tpv3-ip6. | ||
+ | # [1609-P2] l2-eth-gre-ip4. | ||
+ | # [1609-P2] l2-eth-gre-ip6. | ||
+ | # [1606-DONE] l2-vxlan-ipv4 - with bridge-domain. | ||
+ | # [1606-DONE] l2-vxlan-ipv4 - with L2 cross-connect. | ||
+ | |||
==MPLS data plane== | ==MPLS data plane== | ||
+ | |||
+ | Indicative coverage = 0% | ||
+ | |||
+ | # [1609-P2] vpnv4-mpls-gre-ip4. | ||
+ | # [1609-P2] mpls-o-eth. | ||
+ | |||
==NSH data plane== | ==NSH data plane== | ||
+ | |||
+ | Indicative coverage = 0% | ||
+ | |||
+ | # [1609-P1] ip4-nsh-gre-ip4. | ||
+ | # [1609-P1] ip4-nsh-vxlan-gpe-ip4. | ||
+ | |||
==OPNFV-FDS integration== | ==OPNFV-FDS integration== | ||
+ | |||
+ | Indicative coverage = 100% | ||
+ | |||
+ | # [1606-DONE] FDS VM scenario with two L2 bridge domains – ICMPv4. | ||
+ | # [1606-DONE] FDS VM scenario with two L2 bridge domains with static L2FIB entries – ICMPv4. | ||
+ | # [1606-DONE] FDS VM scenario with two L2 bridge domains – ICMPv6. | ||
+ | # [1606-DONE] FDS VM scenario with two L2 bridge domains with static L2FIB entries – ICMPv6. | ||
+ | # [1606-DONE] FDS VM scenario with L2 cross-connect – ICMPv4. | ||
+ | # [1606-DONE] FDS VM scenario with L2 cross-connect – ICMPv6. | ||
+ | # [1606-DONE] FDS L2 test cases with tenant networks (VXLAN). | ||
+ | # [1606-DONE] FDS L2 test cases with provider physical networks (VLAN). |
Revision as of 20:34, 12 July 2016
CSIT development plan - background
CSIT test development priorities are aligned with VPP releases timeline, with relative dev work prioritization for each VPP release driven by perceived importance of test verification for VPP functionality and performance. Specific CSIT dev work priorities are driven by rough consensus within the project and contributors and committers availability and willingness to do work.
Following priority tagging scheme is used in this CSIT wiki and FD.io jira for CSIT:
- [$VppRlsNo-$RelPrio]
- VppRlsNo - aligned VPP release number - 16.09, 16.12, 17.03.
- RelPrio - CSIT release priority - P0 for Must Have, P1 for Should Have, P2 for Could Have
- CSIT dev work tagging examples:
- [1609-P0] - CSIT Must Have for vpp-v1609
- [1609-P1] - CSIT Should Have for vpp-v1609
- [1609-P2] - CSIT Could Have for vpp-v1609
CSIT dev work plan execution tracked on CSIT jira, with priority tags encoded as Jira labels for easy of tracking and reporting.
CSIT functional tests - dev plan
For the purpose of tracking CSIT dev work, CSIT functional test cases are grouped into the following VPP functional areas:
- IPv4 data plane
- IPv4 control plane
- IPv4 encapsulations
- IPv6 data plane
- IPv6 control plane
- IPv6 encapsulations
- Ethernet L2 data plane
- Ethernet L2 control plane
- Ethernet L2 encapsulations
- Ethernet L2 management plane
- MPLS data plane
- NSH data plane
- OPNFV-FDS integration
Following sections provide a top-level breakdown of CSIT dev work items covering functional test cases per area, and their proposed priorities. Items completed to date are prefixed with [DONE]; remaining items are prefixed with their respective priority per target release as described earlier. Indicative VPP functionality coverage is listed at the beginning of each section.
Identified VPP working code availability dependencies are marked by VPP Jira ticket [TODO VPP-xxx].
IPv4 data plane
Indicative coverage = 30%
- [1609-P0] VPN routed forwarding (VRF) - baseline.
- [1609-P0] extranet VPN routed forwarding (VRF) - baseline.
- [1609-P0] security - source IPv4 Reverse Path Forwarding (RPF).
- [1609-P0] qos - ingress policing - 1r2c-(cb,ca), 2r3c-(cb,ca) policers, RFC2475, RFC2697, RFC2698.
- [1609-P1] routing multipath (ECMP, UECMP) - baseline.
- [1609-P1] [TODO VPP-xxx] carrier grade nat 44, CGN44, RFC6598, RFC6888.
- [1609-P2] [TODO VPP-xxx] security - stateful firewall.
- [1606-DONE] IPv4 routing RFC791 - baseline.
- [1606-DONE] security - iacl with n-tuple classification, ip4, ip6, mac.
- [1606-DONE] security - cop white-/black-list ip4 src addr filtering.
IPv4 control plane
Indicative coverage = 50%
- [1609-P0] Proxy ARP.
- [1609-P0] IKEv2.
- [1609-P1] DHCPv4 proxy.
- [1606-DONE] ARP.
- [1606-DONE] ICMPv4.
- [1606-DONE] DHCPv4 client.
IPv4 encapsulations
Indicative coverage = 50%
- [1609-P0] ip4-ipsec-ip4 - baseline.
- [1606-DONE] ip4-gre-ip4 - baseline.
IPv6 data plane
Indicative coverage = 67%
- [1609-P0] VPN routed forwarding (VRF) - baseline.
- [1609-P0] extranet VPN routed forwarding (VRF) - baseline.
- [1609-P0] security - source IPv6 Reverse Path Forwarding (RPF).
- [1609-P0] qos - ingress policing - 1r2c-(cb,ca), 2r3c-(cb,ca) policers, RFC2475, RFC2697, RFC2698.
- [1609-P1] routing multipath (ECMP, UECMP) - baseline.
- [1609-P2] [TODO VPP-xxx] security - stateful firewall.
- [1606-DONE] routing [rfc2460] - baseline.
- [1606-DONE] security - iacl with n-tuple classification.
- [1606-DONE] security - cop white-/black-list ip4 src addr filtering.
IPv6 control plane
Indicative coverage = 40%
- [1609-P0] router advertisement.
- [1609-P1] DHCPv6 proxy.
- [1609-P2] [TODO VPP-xxx] ip6-ioam, in-band OAM.
- [1606-DONE] neighbor discovery, RFC4861.
- [1606-DONE] ICMPv6.
IPv6 encapsulations
Indicative coverage = 0%
- [1609-P0] ip4-o-ip6 softwire.
- [1609-P0] ip6-ipsec-ip6.
- [1609-P1] [TODO VPP-xxx] ip6-segment-routing.
Ethernet L2 data plane
Indicative coverage = 60%
- [1609-P0] Bridge domain - with VLAN tag acrobatics 1-to-1, 1-to-2, 2-to-1, 2-to-2.
- [1609-P1] Integrated Routing-Bridging (IRB) - baseline.
- [1606-DONE] L2 Cross-connec - baseline.
- [1606-DONE] L2 Cross-connect - with VLAN tag acrobatics 1-to-1, 1-to-2, 2-to-1, 2-to-2.
- [1606-DONE] Bridge domain - baseline.
Ethernet L2 control plane
Indicative coverage =
- [1609-P2] [TODO VPP-xxx] CDP/LLDP.
- [1606-DONE] MAC learning.
- [1606-DONE] MAC split-horizon.
Ethernet L2 encapsulations
Indicative coverage = 33%
- [1609-P2] l2-eth-l2tpv3-ip4.
- [1609-P2] l2-eth-l2tpv3-ip6.
- [1609-P2] l2-eth-gre-ip4.
- [1609-P2] l2-eth-gre-ip6.
- [1606-DONE] l2-vxlan-ipv4 - with bridge-domain.
- [1606-DONE] l2-vxlan-ipv4 - with L2 cross-connect.
MPLS data plane
Indicative coverage = 0%
- [1609-P2] vpnv4-mpls-gre-ip4.
- [1609-P2] mpls-o-eth.
NSH data plane
Indicative coverage = 0%
- [1609-P1] ip4-nsh-gre-ip4.
- [1609-P1] ip4-nsh-vxlan-gpe-ip4.
OPNFV-FDS integration
Indicative coverage = 100%
- [1606-DONE] FDS VM scenario with two L2 bridge domains – ICMPv4.
- [1606-DONE] FDS VM scenario with two L2 bridge domains with static L2FIB entries – ICMPv4.
- [1606-DONE] FDS VM scenario with two L2 bridge domains – ICMPv6.
- [1606-DONE] FDS VM scenario with two L2 bridge domains with static L2FIB entries – ICMPv6.
- [1606-DONE] FDS VM scenario with L2 cross-connect – ICMPv4.
- [1606-DONE] FDS VM scenario with L2 cross-connect – ICMPv6.
- [1606-DONE] FDS L2 test cases with tenant networks (VXLAN).
- [1606-DONE] FDS L2 test cases with provider physical networks (VLAN).