From a031632ccf87d329510b938c2a9eb6243d787d38 Mon Sep 17 00:00:00 2001 From: Likai Liu Date: Thu, 25 Jan 2024 14:01:38 -0500 Subject: [PATCH] Update wbb.p4info.pb.txt (#2146) --- feature/experimental/p4rt/wbb.p4info.pb.txt | 633 +------------------- 1 file changed, 4 insertions(+), 629 deletions(-) diff --git a/feature/experimental/p4rt/wbb.p4info.pb.txt b/feature/experimental/p4rt/wbb.p4info.pb.txt index 81b862ef193..d5ddec0d53a 100644 --- a/feature/experimental/p4rt/wbb.p4info.pb.txt +++ b/feature/experimental/p4rt/wbb.p4info.pb.txt @@ -1,287 +1,9 @@ pkg_info { name: "wbb.p4" + version: "0.0.0" arch: "v1model" organization: "Google" } -tables { - preamble { - id: 33554503 - name: "ingress.l3_admit.l3_admit_table" - alias: "l3_admit_table" - annotations: "@p4runtime_role(\"sdn_controller\")" - } - match_fields { - id: 1 - name: "dst_mac" - annotations: "@format(MAC_ADDRESS)" - bitwidth: 48 - match_type: TERNARY - } - match_fields { - id: 2 - name: "in_port" - match_type: OPTIONAL - type_name { - name: "port_id_t" - } - } - action_refs { - id: 16777224 - annotations: "@proto_id(1)" - } - action_refs { - id: 21257015 - annotations: "@defaultonly" - scope: DEFAULT_ONLY - } - const_default_action_id: 21257015 - size: 128 -} -tables { - preamble { - id: 33554496 - name: "ingress.routing.neighbor_table" - alias: "neighbor_table" - annotations: "@p4runtime_role(\"sdn_controller\")" - } - match_fields { - id: 1 - name: "router_interface_id" - annotations: "@refers_to(router_interface_table , router_interface_id)" - match_type: EXACT - type_name { - name: "router_interface_id_t" - } - } - match_fields { - id: 2 - name: "neighbor_id" - annotations: "@format(IPV6_ADDRESS)" - bitwidth: 128 - match_type: EXACT - } - action_refs { - id: 16777217 - annotations: "@proto_id(1)" - } - action_refs { - id: 21257015 - annotations: "@defaultonly" - scope: DEFAULT_ONLY - } - const_default_action_id: 21257015 - size: 1024 -} -tables { - preamble { - id: 33554497 - name: "ingress.routing.router_interface_table" - alias: "router_interface_table" - annotations: "@p4runtime_role(\"sdn_controller\")" - } - match_fields { - id: 1 - name: "router_interface_id" - match_type: EXACT - type_name { - name: "router_interface_id_t" - } - } - action_refs { - id: 16777218 - annotations: "@proto_id(1)" - } - action_refs { - id: 21257015 - annotations: "@defaultonly" - scope: DEFAULT_ONLY - } - const_default_action_id: 21257015 - size: 256 -} -tables { - preamble { - id: 33554498 - name: "ingress.routing.nexthop_table" - alias: "nexthop_table" - annotations: "@p4runtime_role(\"sdn_controller\")" - } - match_fields { - id: 1 - name: "nexthop_id" - match_type: EXACT - type_name { - name: "nexthop_id_t" - } - } - action_refs { - id: 16777219 - annotations: "@proto_id(1)" - } - action_refs { - id: 16777236 - annotations: "@proto_id(3)" - } - action_refs { - id: 21257015 - annotations: "@defaultonly" - scope: DEFAULT_ONLY - } - const_default_action_id: 21257015 - size: 1024 -} -tables { - preamble { - id: 33554499 - name: "ingress.routing.wcmp_group_table" - alias: "wcmp_group_table" - annotations: "@p4runtime_role(\"sdn_controller\")" - annotations: "@oneshot" - } - match_fields { - id: 1 - name: "wcmp_group_id" - match_type: EXACT - type_name { - name: "wcmp_group_id_t" - } - } - action_refs { - id: 16777221 - annotations: "@proto_id(1)" - } - action_refs { - id: 21257015 - annotations: "@defaultonly" - scope: DEFAULT_ONLY - } - const_default_action_id: 21257015 - implementation_id: 299650760 - size: 3968 -} -tables { - preamble { - id: 33554506 - name: "ingress.routing.vrf_table" - alias: "vrf_table" - annotations: "@entry_restriction(\"\n // The VRF ID 0 (or \'\' in P4Runtime) encodes the default VRF, which cannot\n // be read or written via this table, but is always present implicitly.\n // TODO: This constraint should read `vrf_id != \'\'` (since\n // constraints are a control plane (P4Runtime) concept), but\n // p4-constraints does not currently support strings.\n vrf_id != 0;\n \")" - annotations: "@p4runtime_role(\"sdn_controller\")" - } - match_fields { - id: 1 - name: "vrf_id" - match_type: EXACT - type_name { - name: "vrf_id_t" - } - } - action_refs { - id: 24742814 - annotations: "@proto_id(1)" - } - const_default_action_id: 24742814 - size: 64 -} -tables { - preamble { - id: 33554500 - name: "ingress.routing.ipv4_table" - alias: "ipv4_table" - annotations: "@p4runtime_role(\"sdn_controller\")" - } - match_fields { - id: 1 - name: "vrf_id" - annotations: "@refers_to(vrf_table , vrf_id)" - match_type: EXACT - type_name { - name: "vrf_id_t" - } - } - match_fields { - id: 2 - name: "ipv4_dst" - annotations: "@format(IPV4_ADDRESS)" - bitwidth: 32 - match_type: LPM - } - action_refs { - id: 16777222 - annotations: "@proto_id(1)" - } - action_refs { - id: 16777221 - annotations: "@proto_id(2)" - } - action_refs { - id: 16777220 - annotations: "@proto_id(3)" - } - action_refs { - id: 16777231 - annotations: "@proto_id(4)" - } - action_refs { - id: 16777232 - annotations: "@proto_id(5)" - } - action_refs { - id: 16777233 - annotations: "@proto_id(6)" - } - const_default_action_id: 16777222 - size: 32768 -} -tables { - preamble { - id: 33554501 - name: "ingress.routing.ipv6_table" - alias: "ipv6_table" - annotations: "@p4runtime_role(\"sdn_controller\")" - } - match_fields { - id: 1 - name: "vrf_id" - annotations: "@refers_to(vrf_table , vrf_id)" - match_type: EXACT - type_name { - name: "vrf_id_t" - } - } - match_fields { - id: 2 - name: "ipv6_dst" - annotations: "@format(IPV6_ADDRESS)" - bitwidth: 128 - match_type: LPM - } - action_refs { - id: 16777222 - annotations: "@proto_id(1)" - } - action_refs { - id: 16777221 - annotations: "@proto_id(2)" - } - action_refs { - id: 16777220 - annotations: "@proto_id(3)" - } - action_refs { - id: 16777231 - annotations: "@proto_id(4)" - } - action_refs { - id: 16777232 - annotations: "@proto_id(5)" - } - action_refs { - id: 16777233 - annotations: "@proto_id(6)" - } - const_default_action_id: 16777222 - size: 4096 -} tables { preamble { id: 33554691 @@ -289,7 +11,7 @@ tables { alias: "acl_wbb_ingress_table" annotations: "@p4runtime_role(\"sdn_controller\")" annotations: "@sai_acl(INGRESS)" - annotations: "@entry_restriction(\"\n // WBB only allows for very specific table entries:\n\n // Traceroute (6 entries)\n (\n // IPv4 or IPv6\n ((is_ipv4 == 1 && is_ipv6::mask == 0) ||\n (is_ipv4::mask == 0 && is_ipv6 == 1)) &&\n // TTL 0, 1, and 2\n (ttl == 0 || ttl == 1 || ttl == 2) &&\n ether_type::mask == 0 && outer_vlan_id::mask == 0\n ) ||\n // LLDP\n (\n ether_type == 0x88cc &&\n is_ipv4::mask == 0 && is_ipv6::mask == 0 && ttl::mask == 0 &&\n outer_vlan_id::mask == 0\n ) ||\n // ND\n (\n // TODO remove optional match for VLAN ID once VLAN ID is\n // completely removed from ND flows.\n (( outer_vlan_id::mask == 0xfff && outer_vlan_id == 0x0FA0) ||\n outer_vlan_id::mask == 0);\n ether_type == 0x6007;\n is_ipv4::mask == 0;\n is_ipv6::mask == 0;\n ttl::mask == 0\n )\n \")" + annotations: "@entry_restriction(\"\n // WBB only allows for very specific table entries:\n\n // Traceroute (6 entries)\n (\n // IPv4 or IPv6\n ((is_ipv4 == 1 && is_ipv6::mask == 0) ||\n (is_ipv4::mask == 0 && is_ipv6 == 1)) &&\n // TTL 0, 1, and 2\n (ttl == 0 || ttl == 1 || ttl == 2) &&\n ether_type::mask == 0 && outer_vlan_id::mask == 0\n ) ||\n // LLDP\n (\n ether_type == 0x88cc &&\n is_ipv4::mask == 0 && is_ipv6::mask == 0 && ttl::mask == 0 &&\n outer_vlan_id::mask == 0\n ) ||\n // ND\n (\n // TODO(b/188575259) remove optional match for VLAN ID once VLAN ID is\n // completely removed from ND flows.\n (( outer_vlan_id::mask == 0xfff && outer_vlan_id == 0x0FA0) ||\n outer_vlan_id::mask == 0);\n ether_type == 0x6007;\n is_ipv4::mask == 0;\n is_ipv6::mask == 0;\n ttl::mask == 0\n )\n \")" } match_fields { id: 1 @@ -344,60 +66,6 @@ tables { direct_resource_ids: 352321793 size: 8 } -tables { - preamble { - id: 33554502 - name: "ingress.mirroring_clone.mirror_session_table" - alias: "mirror_session_table" - annotations: "@p4runtime_role(\"sdn_controller\")" - } - match_fields { - id: 1 - name: "mirror_session_id" - match_type: EXACT - type_name { - name: "mirror_session_id_t" - } - } - action_refs { - id: 16777223 - annotations: "@proto_id(1)" - } - action_refs { - id: 21257015 - annotations: "@defaultonly" - scope: DEFAULT_ONLY - } - const_default_action_id: 21257015 - size: 2 -} -tables { - preamble { - id: 33554504 - name: "ingress.mirroring_clone.mirror_port_to_pre_session_table" - alias: "mirror_port_to_pre_session_table" - annotations: "@p4runtime_role(\"packet_replication_engine_manager\")" - } - match_fields { - id: 1 - name: "mirror_port" - match_type: EXACT - type_name { - name: "port_id_t" - } - } - action_refs { - id: 16777225 - annotations: "@proto_id(1)" - } - action_refs { - id: 21257015 - annotations: "@defaultonly" - scope: DEFAULT_ONLY - } - const_default_action_id: 21257015 - size: 1024 -} actions { preamble { id: 21257015 @@ -406,184 +74,6 @@ actions { annotations: "@noWarn(\"unused\")" } } -actions { - preamble { - id: 16777224 - name: "ingress.l3_admit.admit_to_l3" - alias: "admit_to_l3" - } -} -actions { - preamble { - id: 16777217 - name: "ingress.routing.set_dst_mac" - alias: "set_dst_mac" - } - params { - id: 1 - name: "dst_mac" - annotations: "@format(MAC_ADDRESS)" - bitwidth: 48 - } -} -actions { - preamble { - id: 16777218 - name: "ingress.routing.set_port_and_src_mac" - alias: "set_port_and_src_mac" - } - params { - id: 1 - name: "port" - type_name { - name: "port_id_t" - } - } - params { - id: 2 - name: "src_mac" - annotations: "@format(MAC_ADDRESS)" - bitwidth: 48 - } -} -actions { - preamble { - id: 16777236 - name: "ingress.routing.set_ip_nexthop" - alias: "set_ip_nexthop" - } - params { - id: 1 - name: "router_interface_id" - annotations: "@refers_to(router_interface_table , router_interface_id)" - annotations: "@refers_to(neighbor_table , router_interface_id)" - type_name { - name: "router_interface_id_t" - } - } - params { - id: 2 - name: "neighbor_id" - annotations: "@format(IPV6_ADDRESS)" - annotations: "@refers_to(neighbor_table , neighbor_id)" - bitwidth: 128 - } -} -actions { - preamble { - id: 16777219 - name: "ingress.routing.set_nexthop" - alias: "set_nexthop" - annotations: "@deprecated(\"Use set_ip_nexthop instead.\")" - } - params { - id: 1 - name: "router_interface_id" - annotations: "@refers_to(router_interface_table , router_interface_id)" - annotations: "@refers_to(neighbor_table , router_interface_id)" - type_name { - name: "router_interface_id_t" - } - } - params { - id: 2 - name: "neighbor_id" - annotations: "@format(IPV6_ADDRESS)" - annotations: "@refers_to(neighbor_table , neighbor_id)" - bitwidth: 128 - } -} -actions { - preamble { - id: 16777221 - name: "ingress.routing.set_nexthop_id" - alias: "set_nexthop_id" - } - params { - id: 1 - name: "nexthop_id" - annotations: "@refers_to(nexthop_table , nexthop_id)" - type_name { - name: "nexthop_id_t" - } - } -} -actions { - preamble { - id: 16777232 - name: "ingress.routing.set_nexthop_id_and_metadata" - alias: "set_nexthop_id_and_metadata" - } - params { - id: 1 - name: "nexthop_id" - annotations: "@refers_to(nexthop_table , nexthop_id)" - type_name { - name: "nexthop_id_t" - } - } - params { - id: 2 - name: "route_metadata" - bitwidth: 6 - } -} -actions { - preamble { - id: 24742814 - name: "ingress.routing.no_action" - alias: "no_action" - } -} -actions { - preamble { - id: 16777222 - name: "ingress.routing.drop" - alias: "drop" - } -} -actions { - preamble { - id: 16777220 - name: "ingress.routing.set_wcmp_group_id" - alias: "set_wcmp_group_id" - } - params { - id: 1 - name: "wcmp_group_id" - annotations: "@refers_to(wcmp_group_table , wcmp_group_id)" - type_name { - name: "wcmp_group_id_t" - } - } -} -actions { - preamble { - id: 16777233 - name: "ingress.routing.set_wcmp_group_id_and_metadata" - alias: "set_wcmp_group_id_and_metadata" - } - params { - id: 1 - name: "wcmp_group_id" - annotations: "@refers_to(wcmp_group_table , wcmp_group_id)" - type_name { - name: "wcmp_group_id_t" - } - } - params { - id: 2 - name: "route_metadata" - bitwidth: 6 - } -} -actions { - preamble { - id: 16777231 - name: "ingress.routing.trap" - alias: "trap" - } -} actions { preamble { id: 16777479 @@ -600,77 +90,6 @@ actions { annotations: "@sai_action(SAI_PACKET_ACTION_TRAP)" } } -actions { - preamble { - id: 16777223 - name: "ingress.mirroring_clone.mirror_as_ipv4_erspan" - alias: "mirror_as_ipv4_erspan" - } - params { - id: 1 - name: "port" - type_name { - name: "port_id_t" - } - } - params { - id: 2 - name: "src_ip" - annotations: "@format(IPV4_ADDRESS)" - bitwidth: 32 - } - params { - id: 3 - name: "dst_ip" - annotations: "@format(IPV4_ADDRESS)" - bitwidth: 32 - } - params { - id: 4 - name: "src_mac" - annotations: "@format(MAC_ADDRESS)" - bitwidth: 48 - } - params { - id: 5 - name: "dst_mac" - annotations: "@format(MAC_ADDRESS)" - bitwidth: 48 - } - params { - id: 6 - name: "ttl" - bitwidth: 8 - } - params { - id: 7 - name: "tos" - bitwidth: 8 - } -} -actions { - preamble { - id: 16777225 - name: "ingress.mirroring_clone.set_pre_session" - alias: "set_pre_session" - } - params { - id: 1 - name: "id" - bitwidth: 32 - } -} -action_profiles { - preamble { - id: 299650760 - name: "ingress.routing.wcmp_group_selector" - alias: "wcmp_group_selector" - } - table_ids: 33554499 - with_selector: true - size: 65536 - max_group_size: 256 -} direct_counters { preamble { id: 318767363 @@ -737,28 +156,11 @@ controller_packet_metadata { metadata { id: 3 name: "unused_pad" - bitwidth: 7 + annotations: "@padding" + bitwidth: 6 } } type_info { - new_types { - key: "mirror_session_id_t" - value { - translated_type { - sdn_string { - } - } - } - } - new_types { - key: "nexthop_id_t" - value { - translated_type { - sdn_string { - } - } - } - } new_types { key: "port_id_t" value { @@ -768,31 +170,4 @@ type_info { } } } - new_types { - key: "router_interface_id_t" - value { - translated_type { - sdn_string { - } - } - } - } - new_types { - key: "vrf_id_t" - value { - translated_type { - sdn_string { - } - } - } - } - new_types { - key: "wcmp_group_id_t" - value { - translated_type { - sdn_string { - } - } - } - } }