Removed fabric.p4 data plane test files

Now living in separate fabric-p4testrepo:
https://github.com/opennetworkinglab/fabric-p4test

Change-Id: I333906fe36b02a6ea5efed86b6dcd59405bffb17
This commit is contained in:
Carmelo Cascone 2018-06-19 23:22:33 +02:00
parent df32beae1e
commit 8a51743927
17 changed files with 0 additions and 435 deletions

View File

@ -1,3 +0,0 @@
main.json
main.p4info
entries.txt

View File

@ -1,5 +0,0 @@
all:
p4c-bm2-ss -o main.json \
-DWITH_SPGW -I ../../../main/resources/ \
--p4runtime-file main.p4info \
--p4runtime-format text ../../../main/resources/fabric.p4

View File

@ -1,130 +0,0 @@
{
"fabric-spgw": {
"addr": "localhost:50051",
"flows": [
{
"table_name": "filtering.ingress_port_vlan",
"match_fields": {
"standard_metadata.ingress_port": 1,
"hdr.vlan_tag.is_valid": 0,
"hdr.vlan_tag.vlan_id": [0, 0]
},
"action_name": "filtering.push_internal_vlan",
"action_params": {
"new_vlan_id": 4094
}
},
{
"table_name": "filtering.fwd_classifier",
"match_fields": {
"standard_metadata.ingress_port": 1,
"hdr.ethernet.dst_addr": "c2:42:59:2d:3a:84",
"fabric_metadata.original_ether_type": 2048
},
"action_name": "filtering.set_forwarding_type",
"action_params": {
"fwd_type": 2
}
},
{
"table_name": "forwarding.unicast_v4",
"match_fields": {
"hdr.ipv4.dst_addr": ["192.168.103.11", 32]
},
"action_name": "forwarding.set_next_id",
"action_params": {
"next_id": 1
}
},
{
"table_name": "next.simple",
"match_fields": {
"fabric_metadata.next_id": 1
},
"action_name": "next.l3_routing",
"action_params": {
"port_num": 2,
"smac": "3a:c1:e2:53:e1:50",
"dmac": "52:54:00:29:c9:b7"
}
},
{
"table_name": "filtering.ingress_port_vlan",
"match_fields": {
"standard_metadata.ingress_port": 2,
"hdr.vlan_tag.is_valid": 0,
"hdr.vlan_tag.vlan_id": [0, 0]
},
"action_name": "filtering.push_internal_vlan",
"action_params": {
"new_vlan_id": 20
}
},
{
"table_name": "filtering.fwd_classifier",
"match_fields": {
"standard_metadata.ingress_port": 2,
"hdr.ethernet.dst_addr": "3a:c1:e2:53:e1:50",
"fabric_metadata.original_ether_type": 2048
},
"action_name": "filtering.set_forwarding_type",
"action_params": {
"fwd_type": 2
}
},
{
"table_name": "forwarding.unicast_v4",
"match_fields": {
"hdr.ipv4.dst_addr": ["16.255.255.252", 32]
},
"action_name": "forwarding.set_next_id",
"action_params": {
"next_id": 2
}
},
{
"table_name": "next.simple",
"match_fields": {
"fabric_metadata.next_id": 2
},
"action_name": "next.mpls_routing_v4",
"action_params": {
"port_num": 1,
"smac": "c2:42:59:2d:3a:84",
"dmac": "52:54:00:05:7b:59",
"label": 204
}
},
{
"table_name": "spgw_ingress.ue_filter_table",
"match_fields": {
"ipv4.dst_addr": ["16.255.255.252", 32]
},
"action_name": "NoAction",
"action_params": {
}
},
{
"table_name": "spgw_ingress.s1u_filter_table",
"match_fields": {
"spgw_meta.s1u_sgw_addr": "192.168.102.13"
},
"action_name": "NoAction",
"action_params": {
}
},
{
"table_name": "spgw_ingress.dl_sess_lookup",
"match_fields": {
"ipv4.dst_addr": "16.255.255.252"
},
"action_name": "spgw_ingress.set_dl_sess_info",
"action_params": {
"teid": 1,
"s1u_enb_addr": "192.168.102.11",
"s1u_sgw_addr": "192.168.102.13"
}
}
]
}
}

View File

@ -1,105 +0,0 @@
{
"fabric-spgw": {
"addr": "localhost:5051",
"flows": [
{
"table_name": "filtering.fwd_classifier",
"match_fields": {
"standard_metadata.ingress_port": 1,
"hdr.ethernet.dst_addr": "c2:42:59:2d:3a:84",
"fabric_metadata.original_ether_type": 2048
},
"action_name": "filtering.set_forwarding_type",
"action_params": {
"fwd_type": 2
}
},
{
"table_name": "forwarding.unicast_v4",
"match_fields": {
"hdr.ipv4.dst_addr": ["192.168.103.11", 32]
},
"action_name": "forwarding.set_next_id",
"action_params": {
"next_id": 1
}
},
{
"table_name": "next.simple",
"match_fields": {
"fabric_metadata.next_id": 1
},
"action_name": "next.l3_routing",
"action_params": {
"port_num": 2,
"smac": "3a:c1:e2:53:e1:50",
"dmac": "52:54:00:29:c9:b7"
}
},
{
"table_name": "filtering.fwd_classifier",
"match_fields": {
"standard_metadata.ingress_port": 2,
"hdr.ethernet.dst_addr": "3a:c1:e2:53:e1:50",
"fabric_metadata.original_ether_type": 2048
},
"action_name": "filtering.set_forwarding_type",
"action_params": {
"fwd_type": 2
}
},
{
"table_name": "forwarding.unicast_v4",
"match_fields": {
"hdr.ipv4.dst_addr": ["16.255.255.252", 32]
},
"action_name": "forwarding.set_next_id",
"action_params": {
"next_id": 2
}
},
{
"table_name": "next.simple",
"match_fields": {
"fabric_metadata.next_id": 2
},
"action_name": "next.l3_routing",
"action_params": {
"port_num": 1,
"smac": "c2:42:59:2d:3a:84",
"dmac": "52:54:00:05:7b:59"
}
},
{
"table_name": "spgw_ingress.ue_filter_table",
"match_fields": {
"ipv4.dst_addr": ["16.255.255.252", 32]
},
"action_name": "NoAction",
"action_params": {
}
},
{
"table_name": "spgw_ingress.s1u_filter_table",
"match_fields": {
"spgw_meta.s1u_sgw_addr": "192.168.102.13"
},
"action_name": "NoAction",
"action_params": {
}
},
{
"table_name": "spgw_ingress.dl_sess_lookup",
"match_fields": {
"ipv4.dst_addr": "16.255.255.252"
},
"action_name": "spgw_ingress.set_dl_sess_info",
"action_params": {
"teid": 1,
"s1u_enb_addr": "192.168.102.11",
"s1u_sgw_addr": "192.168.102.13"
}
}
]
}
}

View File

@ -1,2 +0,0 @@
main.json
main.p4info

View File

@ -1,5 +0,0 @@
all:
p4c-bm2-ss -o main.json \
-DWITH_SPGW -I ../../../main/resources/ \
--p4runtime-file main.p4info \
--p4runtime-format text main.p4

View File

@ -1,37 +0,0 @@
{
"spgw": {
"addr": "localhost:5051",
"flows": [
{
"table_name": "spgw_ingress.ue_filter_table",
"match_fields": {
"ipv4.dst_addr": ["16.255.255.252", 32]
},
"action_name": "NoAction",
"action_params": {
}
},
{
"table_name": "spgw_ingress.s1u_filter_table",
"match_fields": {
"spgw_meta.s1u_sgw_addr": "192.168.102.13"
},
"action_name": "NoAction",
"action_params": {
}
},
{
"table_name": "spgw_ingress.dl_sess_lookup",
"match_fields": {
"ipv4.dst_addr": "16.255.255.252"
},
"action_name": "spgw_ingress.set_dl_sess_info",
"action_params": {
"teid": 1,
"s1u_enb_addr": "192.168.102.11",
"s1u_sgw_addr": "192.168.102.13"
}
}
]
}
}

View File

@ -1,148 +0,0 @@
/*
* Copyright 2017-present Open Networking Foundation
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
*/
#define S1U_PORT 1
#define SGI_PORT 2
#define AS_MAC_ADDR 0x52540029c9b7
#define S1U_MAC_ADDR 0xc242592d3a84
#define SGI_MAC_ADDR 0x3ac1e253e150
#define ENB_MAC_ADDR 0x525400057b59
#include <core.p4>
#include <v1model.p4>
#include "include/define.p4"
#include "include/header.p4"
#include "include/checksum.p4"
#include "include/parser.p4"
#include "include/control/packetio.p4"
#include "include/spgw.p4"
control table0_control(inout parsed_headers_t hdr,
inout fabric_metadata_t fabric_metadata,
inout standard_metadata_t standard_metadata) {
action send_to_cpu() {
standard_metadata.egress_spec = CPU_PORT;
exit;
}
table table0 {
key = {
standard_metadata.ingress_port : ternary;
hdr.ethernet.src_addr : ternary;
hdr.ethernet.dst_addr : ternary;
hdr.ethernet.ether_type : ternary;
hdr.ipv4.src_addr : ternary;
hdr.ipv4.dst_addr : ternary;
hdr.ipv4.protocol : ternary;
fabric_metadata.l4_src_port : ternary;
fabric_metadata.l4_dst_port : ternary;
}
actions = {
send_to_cpu();
NoAction();
}
const default_action = NoAction();
}
apply {
table0.apply();
}
}
//------------------------------------------------------------------------------
// INGRESS PIPELINE
//------------------------------------------------------------------------------
control ingress_impl(inout parsed_headers_t hdr,
inout fabric_metadata_t fabric_metadata,
inout standard_metadata_t standard_metadata) {
apply {
PacketIoIngress.apply(hdr, fabric_metadata, standard_metadata);
// Drop garbage, so we get a clean pcap.
if (standard_metadata.ingress_port == S1U_PORT
&& hdr.ethernet.src_addr != ENB_MAC_ADDR) {
mark_to_drop();
exit;
} else if (standard_metadata.ingress_port == SGI_PORT
&& hdr.ethernet.src_addr != AS_MAC_ADDR) {
mark_to_drop();
exit;
}
table0_control.apply(hdr, fabric_metadata, standard_metadata);
if (standard_metadata.egress_spec == CPU_PORT) {
return;
}
if (standard_metadata.ingress_port == S1U_PORT) {
if (hdr.ethernet.dst_addr != S1U_MAC_ADDR) {
mark_to_drop();
exit;
}
standard_metadata.egress_spec = SGI_PORT;
hdr.ethernet.src_addr = SGI_MAC_ADDR;
hdr.ethernet.dst_addr = AS_MAC_ADDR;
} else if (standard_metadata.ingress_port == SGI_PORT) {
if (hdr.ethernet.dst_addr != SGI_MAC_ADDR) {
mark_to_drop();
exit;
}
standard_metadata.egress_spec = S1U_PORT;
hdr.ethernet.src_addr = S1U_MAC_ADDR;
hdr.ethernet.dst_addr = ENB_MAC_ADDR;
}
#ifdef WITH_SPGW_PCC_GATING
fabric_metadata.spgw.l4_src_port = fabric_metadata.l4_src_port;
fabric_metadata.spgw.l4_dst_port = fabric_metadata.l4_dst_port;
#endif // WITH_SPGW_PCC_GATING
spgw_ingress.apply(hdr.gtpu_ipv4, hdr.gtpu_udp, hdr.gtpu,
hdr.ipv4, hdr.udp, fabric_metadata.spgw);
}
}
//------------------------------------------------------------------------------
// EGRESS PIPELINE
//------------------------------------------------------------------------------
control egress_impl(inout parsed_headers_t hdr,
inout fabric_metadata_t fabric_metadata,
inout standard_metadata_t standard_metadata) {
apply {
PacketIoEgress.apply(hdr, fabric_metadata, standard_metadata);
spgw_egress.apply(hdr.gtpu_ipv4, hdr.gtpu_udp, hdr.gtpu,
fabric_metadata.spgw, standard_metadata);
}
}
//------------------------------------------------------------------------------
// SWITCH INSTANTIATION
//------------------------------------------------------------------------------
V1Switch(FabricParser(),
FabricVerifyChecksum(),
ingress_impl(),
egress_impl(),
FabricComputeChecksum(),
FabricDeparser()) main;