Skip to content

Commit

Permalink
Make tunnel IPv4 only, since we don't support IPv6 tunnel yet.
Browse files Browse the repository at this point in the history
  • Loading branch information
r12f committed Sep 2, 2024
1 parent 9100172 commit bd617cd
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 3 deletions.
5 changes: 4 additions & 1 deletion dash-pipeline/bmv2/dash_metadata.p4
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,9 @@ enum bit<32> dash_routing_actions_t {
NAT = (1 << 1),
NAT46 = (1 << 2),
NAT64 = (1 << 3),
NAT_PORT = (1 << 4)
NAT_PORT = (1 << 4),
TUNNEL = (1 << 5),
REVERSE_TUNNEL = (1 << 6),
};

enum bit<16> dash_direction_t {
Expand Down Expand Up @@ -320,6 +322,7 @@ struct metadata_t {
encap_data_t encap_data;
// tunnel_data is used by dash_tunnel_id
encap_data_t tunnel_data;
IPv4Address reverse_tunnel_sip;
overlay_rewrite_data_t overlay_data;
bit<16> dash_tunnel_id;
bit<32> meter_class;
Expand Down
6 changes: 4 additions & 2 deletions dash-pipeline/bmv2/dash_pipeline.p4
Original file line number Diff line number Diff line change
Expand Up @@ -80,8 +80,7 @@ control dash_ingress(
bit<1> full_flow_resimulation_requested,
bit<64> max_resimulated_flow_per_second,
@SaiVal[type="sai_object_id_t"] bit<16> outbound_routing_group_id,
@SaiVal[type="sai_ip_address_t"] IPv4ORv6Address reverse_tunnel_sip,
bit<1> reverse_tunnel_sip_is_v6,
@SaiVal[type="sai_ip_address_t"] IPv4Address reverse_tunnel_sip,
bit<1> is_ha_flow_owner)
{
meta.eni_data.cps = cps;
Expand All @@ -101,6 +100,9 @@ control dash_ingress(
meta.encap_data.vni = vm_vni;
meta.vnet_id = vnet_id;

meta.reverse_tunnel_sip = reverse_tunnel_sip;
meta.routing_actions = meta.routing_actions | dash_routing_actions_t.REVERSE_TUNNEL;

if (meta.is_overlay_ip_v6 == 1) {
if (meta.direction == dash_direction_t.OUTBOUND) {
ACL_GROUPS_COPY_TO_META(outbound_v6);
Expand Down

0 comments on commit bd617cd

Please sign in to comment.