Skip to content

Commit

Permalink
Updated overlay test plans.
Browse files Browse the repository at this point in the history
- Removed one dirrection lookup test based on PR #238.
- Added connection tracking tests for the custom ageing timeout.
- Fixed spellcheck errors.

Signed-off-by: Anton Putria <antonx.putria@intel.com>
  • Loading branch information
aputriax committed Sep 29, 2022
1 parent 5a648a9 commit 5b5d7b6
Show file tree
Hide file tree
Showing 4 changed files with 35 additions and 30 deletions.
4 changes: 4 additions & 0 deletions .wordlist.txt
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ adaptor
adaptors
ADDR
addr
ageing
agnostically
amd
apache
Expand Down Expand Up @@ -293,6 +294,7 @@ lookups
loopback
LPM
lts
MACs
Macsec
makefile
Makefile
Expand All @@ -310,6 +312,7 @@ MaxTcpFlow
MaxTotalFlowEntry
MaxUdpFlow
md
mgmt
microsoft
misorder
MSFT
Expand Down Expand Up @@ -598,6 +601,7 @@ Vnic
vnic
vnics
VNID
VNIs
VPC
vpc
vport
Expand Down
10 changes: 6 additions & 4 deletions test/docs/testplans/conntrack.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,10 +56,12 @@ Test cases are automated:

| # | Test case | Test Class.Method
| --- | --- | ---
| 1 | Standard ageing (fully correct TCP session). | -
| 2 | Standard ageing (fully correct UDP session). | -
| 3 | Open TCP session but no data and no FIN | -
| 4 | TCP session started from the middle (no SYN packet) | -
| 1 | Standard ageing (fully correct TCP session, session dropped immediately). | -
| 2 | Standard ageing (fully correct UDP session, session dropped after timeout). | -
| 3 | Custom ageing (fully correct TCP session). | -
| 4 | Custom ageing (fully correct UDP session). | -
| 5 | Open TCP session but no data and no FIN. | -
| 6 | TCP session started from the middle (no SYN packet). | -

## Integration

Expand Down
34 changes: 17 additions & 17 deletions test/docs/testplans/eni.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,28 +37,28 @@ Verifies create operations, an association with VNI, MAC.

| # | Test case | Test Class.Method
| --- | --- | ---
| 1 | create inbound/outbound DASH ACL groups | CreateDeleteEniTest.createInOutAclGroupsTest
| 2 | create VNET | CreateDeleteEniTest.createVnetTest
| 3 | create ENI | CreateDeleteEniTest.createEniTest
| 4 | create ENI Ether address map entry | CreateDeleteEniTest.createEniEtherAddressMapTest
| 5 | create PA validation entry | CreateDeleteEniTest.createPaValidationTest
| 6 | create Outbound routing entry | CreateDeleteEniTest.createOutboundRoutingEntryTest
| 7 | create Inbound routing entry | CreateDeleteEniTest.createInboundRoutingEntryTest |
| 8 | verify Inbound routing entry attributes getting/setting | CreateDeleteEniTest.inboundRoutingEntryAttributesTest |
| 9 | verify ENI attributes getting/setting | CreateDeleteEniTest.eniAttributesTest
| 10 | verify ENI Ether address map entry attributes getting/setting | CreateDeleteEniTest.eniEtherAddressMapAttributesTest
| 11 | verify PA validation entry attributes getting/setting | CreateDeleteEniTest.paValidationEntryAttributesTest
| 12 | verify Outbound routing entry attributes getting/setting | CreateDeleteEniTest.outboundRoutingEntryAttributesTest
| 1 | create inbound/outbound DASH ACL groups | `CreateDeleteEniTest.createInOutAclGroupsTest`
| 2 | create VNET | `CreateDeleteEniTest.createVnetTest`
| 3 | create ENI | `CreateDeleteEniTest.createEniTest`
| 4 | create ENI Ether address map entry | `CreateDeleteEniTest.createEniEtherAddressMapTest`
| 5 | create PA validation entry | `CreateDeleteEniTest.createPaValidationTest`
| 6 | create Outbound routing entry | `CreateDeleteEniTest.createOutboundRoutingEntryTest`
| 7 | create Inbound routing entry | `CreateDeleteEniTest.createInboundRoutingEntryTest`
| 8 | verify Inbound routing entry attributes getting/setting | `CreateDeleteEniTest.inboundRoutingEntryAttributesTest`
| 9 | verify ENI attributes getting/setting | `CreateDeleteEniTest.eniAttributesTest`
| 10 | verify ENI Ether address map entry attributes getting/setting | `CreateDeleteEniTest.eniEtherAddressMapAttributesTest`
| 11 | verify PA validation entry attributes getting/setting | `CreateDeleteEniTest.paValidationEntryAttributesTest`
| 12 | verify Outbound routing entry attributes getting/setting | `CreateDeleteEniTest.outboundRoutingEntryAttributesTest`

## ENI removal

Verifies remove operations.

| # | Test case | Test Class.Method
| --- | --- | ---
| 1 | normal delete:<br>verify deletion of: inbound/outbound DASH ACL groups, VNET, ENI, ENI Ether address map entry, PA validation entry, inbound/outbound routing entry | Is a part of CreateDeleteEniTest.destroy_teardown_obj
| 2 | error id mapped rules exist:<br>verify ENI cannot be deleted when map exist | CreateDeleteEniTest.deleteEniWhenMapExistTest
| 3 | duplicated deletion<br>no errors | CreateDeleteEniTest.duplicatedEniDeletionTest
| 1 | normal delete:<br>verify deletion of: inbound/outbound DASH ACL groups, VNET, ENI, ENI Ether address map entry, PA validation entry, inbound/outbound routing entry | Is a part of `CreateDeleteEniTest.destroy_teardown_obj`
| 2 | error id mapped rules exist:<br>verify ENI cannot be deleted when map exist | `CreateDeleteEniTest.deleteEniWhenMapExistTest`
| 3 | duplicated deletion<br>no errors | `CreateDeleteEniTest.duplicatedEniDeletionTest`
| 4 | normal bulk delete | -
| 5 | bulk delete does not remove any if there is a mapping for some ENI | -

Expand All @@ -68,5 +68,5 @@ Verifies basic ENI scale, create/remove/recreate maximum number of ENIs.

| # | Test case | Test Class.Method
| --- | --- | ---
| 1 | Create/remove a max number of ENI entries | EniScaleTest.eniScaleTest
| 2 | Recreate (repeated creation/removal a max number of ENI entries) | EniScaleTest.eniScaleTest
| 1 | Create/remove a max number of ENI entries | `EniScaleTest.eniScaleTest`
| 2 | Recreate (repeated creation/removal a max number of ENI entries) | `EniScaleTest.eniScaleTest`
17 changes: 8 additions & 9 deletions test/docs/testplans/vnet.md
Original file line number Diff line number Diff line change
Expand Up @@ -81,8 +81,8 @@ Scale and performance tests automation approach - to be defined.
| # | Test case | Test Class.Method
| --- | --- | ---
| 1 | Route action ROUTE_VNET | -
| 2 | Route action ROUTE_VNET_DIRECT | Vnet2VnetInboundTest.<br>Vnet2VnetOutboundRouteVnetDirectTest
| 3 | Route action ROUTE_DIRECT | Vnet2VnetOutboundTest.<br>Vnet2VnetOutboundRouteDirectTest
| 2 | Route action ROUTE_VNET_DIRECT | `Vnet2VnetInboundTest.`<br>`Vnet2VnetOutboundRouteVnetDirectTest`
| 3 | Route action ROUTE_DIRECT | `Vnet2VnetOutboundTest.`<br>`Vnet2VnetOutboundRouteDirectTest`
| 4 | dst_vnet_id True/False in OUTBOUND_CA_TO_PA_ENTRY | -
| 5 | Use same CA prefixes in different outbound routing tables (different ENIs) | -
| 6 | Use multiple overlapping routing prefixes in the same outbound routing table. | -
Expand All @@ -94,17 +94,16 @@ Original table [link](https://github.com/Azure/DASH/blob/main/documentation/gene

| # | Test case | Test Class.Method
| --- | --- | ---
| 1 | VNET2VNET routing with PA validation entry PERMIT.<br>SAI_INBOUND_ROUTING_ENTRY_ACTION_VXLAN_DECAP_PA_VALIDATE<br>SAI_PA_VALIDATION_ENTRY_ACTION_PERMIT| Vnet2VnetInboundTest.<br>vnet2VnetInboundPaValidatePermitTest
| 2 | Direction lookup DENY action | Vnet2VnetInboundTest.<br/>vnet2VnetInboundDenyVniTest
| 3 | VNET2VNET routing without PA validation entry<br>SAI_INBOUND_ROUTING_ENTRY_ACTION_VXLAN_DECAP | -
| 1 | VNET2VNET routing with PA validation entry PERMIT.<br>SAI_INBOUND_ROUTING_ENTRY_ACTION_VXLAN_DECAP_PA_VALIDATE<br>SAI_PA_VALIDATION_ENTRY_ACTION_PERMIT| `Vnet2VnetInboundTest`.<br>`vnet2VnetInboundPaValidatePermitTest`
| 2 | VNET2VNET routing without PA validation entry<br>SAI_INBOUND_ROUTING_ENTRY_ACTION_VXLAN_DECAP | -


### **Integration**

| # | Test case | Test Class.Method
| --- | --- | ---
| 1 |Multiple inbound and outbound configurations at the same time. Send multiple allowed and forbidden traffic types. | -
| 2 |Send non VXLAN traffic. (**to clarify** underlay routing?) | VnetRouteTest
| 2 |Send non VXLAN traffic. (**to clarify** underlay routing?) | `VnetRouteTest`
| 3 |Use multiple VIPs | -
| 4 | Use same prefixes in CA and PA networks for outbound and inbound VNET at the same time | -

Expand All @@ -115,8 +114,8 @@ Original table [link](https://github.com/Azure/DASH/blob/main/documentation/gene
| 1 | Traffic with invalid VIP (Inbound and Outbound) | -
| 2 | Traffic with valid VNI but no match to any ENI MAC | -
| 3 | Invalid configurations:<br>- Multiple MACs for same ENI<br>- All different VNIs in ENI, direction lookup, vnet configuration.<br>- Add same VNI for different direction lookup entries. | -
| 4 | Drop if CA DMAC does not match | Vnet2VnetInboundTest.<br/>vnet2VnetInboundInvalidEniMacTest
| 5 | Drop if PA SIP does not match on PA validation | Vnet2VnetInboundTest.<br/>vnet2VnetInboundInvalidPaSrcIpTest
| 4 | Drop if CA DMAC does not match | `Vnet2VnetInboundTest.`<br/>`vnet2VnetInboundInvalidEniMacTest`
| 5 | Drop if PA SIP does not match on PA validation | `Vnet2VnetInboundTest.`<br/>`vnet2VnetInboundInvalidPaSrcIpTest`

### **Scaling & Performance**

Expand All @@ -132,7 +131,7 @@ To be defined.
- static rule
- based on mapping lookup
- inner packet SRC/DEST IP calculated based on part of outer packet SRC/DEST IP<br>
Question: What is static rule nad calculated values?
Question: What is static rule and calculated values?
1. How to test - Inbound (priority) route rules processing:
- Most Outer Source IP Prefix
- Most Outer Destination IP Prefix
Expand Down

0 comments on commit 5b5d7b6

Please sign in to comment.