Closed liangbin-pub closed 3 years ago
Initial findings:
Minli may want to take a look before we come back tomorrow
Eric's note: two extra bytes 0x0000 between outer source MAC and ethertype 0x0800 was not seen on the compute host with the latest run, @zhangml don't need to investigate that yet. Please focus on the issue (1).
for reference: oot@fw001157:~# ovs-ofctl -O OpenFlow13 dump-groups br-tun 1 OFPST_GROUP_DESC reply (OF1.3) (xid=0x2): group_id=1,type=select,bucket=actions=set_field:192.168.20.113->tun_dst,output:"vxlan-generic",bucket=actions=set_field:192.168.20.111->tun_dst,output:"vxlan-generic",bucket=actions=set_field:192.168.20.110->tun_dst,output:"vxlan-generic",bucket=actions=set_field:192.168.20.109->tun_dst,output:"vxlan-generic",bucket=actions=set_field:192.168.20.114->tun_dst,output:"vxlan-generic",bucket=actions=set_field:192.168.20.108->tun_dst,output:"vxlan-generic",bucket=actions=set_field:192.168.20.107->tun_dst,output:"vxlan-generic",bucket=actions=set_field:192.168.20.106->tun_dst,output:"vxlan-generic",bucket=actions=set_field:192.168.20.115->tun_dst,output:"vxlan-generic",bucket=actions=set_field:192.168.20.101->tun_dst,output:"vxlan-generic",bucket=actions=set_field:192.168.20.102->tun_dst,output:"vxlan-generic",bucket=actions=set_field:192.168.20.100->tun_dst,output:"vxlan-generic",bucket=actions=set_field:192.168.20.103->tun_dst,output:"vxlan-generic",bucket=actions=set_field:192.168.20.112->tun_dst,output:"vxlan-generic",bucket=actions=set_field:192.168.20.104->tun_dst,output:"vxlan-generic",bucket=actions=set_field:192.168.20.105->tun_dst,output:"vxlan-generic"
Non-zeta packet can be communicated with OVS fine and able to use tcpdump to capture the valid IPv4 tunnelled packet.
zeta packet is sent to zgc and the packet capture by @liangbin-pub show that it has extra "0000" before "0800" which make it an invalid packet.
I am seeing difference in how the Zeta openflow rule is constructed and understood by OVS:
int ACA_Zeta_Programming::_create_zeta_group_entry(zeta_config *zeta_cfg) { ...
// adding group table rule
string cmd = "-O OpenFlow13 add-group br-tun group_id=" + to_string(zeta_cfg->group_id) +
",type=select";
unordered_set
root@28abfb290c2e:/mnt/host/code/aca-zeta# ovs-ofctl dump-flows br-tun -O OpenFlow13 ... cookie=0x0, duration=2.493s, table=22, n_packets=0, n_bytes=0, reset_counts priority=50,dl_vlan=1 actions=pop_vlan,load:0x378->NXM_NX_TUN_ID[],group:1
ovs-ofctl dump-groups br-tun -O OpenFlow13 OFPST_GROUP_DESC reply (OF1.3) (xid=0x2): group_id=1,type=select,bucket=actions=set_field:192.168.20.113->tun_dst,output:"vxlan-generic",bucket=actions=set_field:192.168.20.111->tun_dst,output:"vxlan-generic",bucket=actions=set_field:192.168.20.110->tun_dst,output:"vxlan-generic",bucket=actions=set_field:192.168.20.109->tun_dst,output:"vxlan-generic",bucket=actions=set_field:192.168.20.114->tun_dst,output:"vxlan-generic",bucket=actions=set_field:192.168.20.108->tun_dst,output:"vxlan-generic",bucket=actions=set_field:192.168.20.107->tun_dst,output:"vxlan-generic",bucket=actions=set_field:192.168.20.106->tun_dst,output:"vxlan-generic",bucket=actions=set_field:192.168.20.115->tun_dst,output:"vxlan-generic",bucket=actions=set_field:192.168.20.101->tun_dst,output:"vxlan-generic",bucket=actions=set_field:192.168.20.102->tun_dst,output:"vxlan-generic",bucket=actions=set_field:192.168.20.100->tun_dst,output:"vxlan-generic",bucket=actions=set_field:192.168.20.103->tun_dst,output:"vxlan-generic",bucket=actions=set_field:192.168.20.112->tun_dst,output:"vxlan-generic",bucket=actions=set_field:192.168.20.104->tun_dst,output:"vxlan-generic",bucket=actions=set_field:192.168.20.105->tun_dst,output:"vxlan-generic"
for non-zeta ports:
int ACA_Vlan_Manager::create_l2_neighbor(string virtual_ip, string virtual_mac, string remote_host_ip, uint tunnel_id, ulong &culminative_time) { ... string cmd_string = "add-flow br-tun table=20,priority=50,dl_vlan=" + to_string(internal_vlan_id) + ",dl_dst:" + virtual_mac + ",\"actions=strip_vlan,load:" + to_string(tunnel_id) + "->NXM_NX_TUN_ID[],set_field:" + remote_host_ip + "->tun_dst,output:vxlan-generic\"";
ovs-ofctl dump-flows br-tun -O OpenFlow13 ... cookie=0x0, duration=732.671s, table=20, n_packets=0, n_bytes=0, reset_counts priority=50,dl_vlan=1,dl_dst=fa:16:3e:d7:f2:6c actions=pop_vlan,load:0x14->NXM_NX_TUN_ID[],load:0xac110002->NXM_NX_TUN_IPV4_DST[],output:"vxlan-generic"
@er1cthe0ne Similar to CTSL::HashMap, is there a library file for hashSet?
@zhangml - please note that the mac change (number 1 above) is highest priority and we need the change pretty quickly.
@er1cthe0ne Similar to CTSL::HashMap, is there a library file for hashSet?
This is second priority. You can still leverage CTSL::HashMap and use it similar to hashSet, please see:
namespace aca_vlan_manager { struct vpc_table_entry { uint vlan_id;
// list of ovs_ports names on this host in the same VPC to share the same internal vlan_id // CTSL::HashMap <key: ovs_port name, value: int (not used)> CTSL::HashMap<string, int > ovs_ports;
string auxGateway_id; };
Update as of 1/13/21: Ping respond was not captured at requester. Observation:
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on br-tenant, link-type EN10MB (Ethernet), capture size 262144 bytes
14:50:02.553954 e8:bd:d1:01:77:ec > 82:83:c0:a8:14:6e, ethertype IPv4 (0x0800), length 148: 192.168.20.92.36828 > 192.168.20.110.4789: VXLAN, flags [I] (0x08), vni 888
6c:dd:ee:00:00:02 > 6c:dd:ee:00:00:01, ethertype IPv4 (0x0800), length 98: 123.0.0.2 > 123.0.0.1: ICMP echo request, id 21593, seq 1, length 64
0x0000: 8283 c0a8 146e e8bd d101 77ec 0800 4500 .....n....w...E.
0x0010: 0086 1d44 4000 4011 7308 c0a8 145c c0a8 ...D@.@.s....\..
0x0020: 146e 8fdc 12b5 0072 0000 0800 0000 0003 .n.....r........
0x0030: 7800 6cdd ee00 0001 6cdd ee00 0002 0800 x.l.....l.......
0x0040: 4500 0054 ca09 4000 4001 7a9c 7b00 0002 E..T..@.@.z.{...
0x0050: 7b00 0001 0800 7c80 5459 0001 1a79 ff5f {.....|.TY...y._
0x0060: 0000 0000 4679 0800 0000 0000 1011 1213 ....Fy..........
0x0070: 1415 1617 1819 1a1b 1c1d 1e1f 2021 2223 .............!"#
0x0080: 2425 2627 2829 2a2b 2c2d 2e2f 3031 3233 $%&'()*+,-./0123
0x0090: 3435 3637 4567
14:50:02.554047 e8:bd:d1:01:77:ec > e8:bd:d1:01:72:c8, ethertype IPv4 (0x0800), length 148: 192.168.20.92.36828 > 192.168.20.93.4789: VXLAN, flags [I] (0x08), vni 888
6c:dd:ee:00:00:02 > 6c:dd:ee:00:00:01, ethertype IPv4 (0x0800), length 98: 123.0.0.2 > 123.0.0.1: ICMP echo request, id 21593, seq 1, length 64
0x0000: e8bd d101 72c8 e8bd d101 77ec 0800 4500 ....r.....w...E.
0x0010: 0086 1d44 4000 3f11 7419 c0a8 145c c0a8 ...D@.?.t....\..
0x0020: 145d 8fdc 12b5 0072 0000 0800 0000 0003 .].....r........
0x0030: 7800 6cdd ee00 0001 6cdd ee00 0002 0800 x.l.....l.......
0x0040: 4500 0054 ca09 4000 4001 7a9c 7b00 0002 E..T..@.@.z.{...
0x0050: 7b00 0001 0800 7c80 5459 0001 1a79 ff5f {.....|.TY...y._
0x0060: 0000 0000 4679 0800 0000 0000 1011 1213 ....Fy..........
0x0070: 1415 1617 1819 1a1b 1c1d 1e1f 2021 2223 .............!"#
0x0080: 2425 2627 2829 2a2b 2c2d 2e2f 3031 3233 $%&'()*+,-./0123
0x0090: 3435 3637 4567
14:50:02.554545 e8:bd:d1:01:72:c8 > 82:83:c0:a8:14:6e, ethertype IPv4 (0x0800), length 148: 192.168.20.93.46639 > 192.168.20.110.4789: VXLAN, flags [I] (0x08), vni 888
6c:dd:ee:00:00:01 > 6c:dd:ee:00:00:02, ethertype IPv4 (0x0800), length 98: 123.0.0.1 > 123.0.0.2: ICMP echo reply, id 21593, seq 1, length 64
0x0000: 8283 c0a8 146e e8bd d101 72c8 0800 4500 .....n....r...E.
0x0010: 0086 4607 4000 4011 4a44 c0a8 145d c0a8 ..F.@.@.JD...]..
0x0020: 146e b62f 12b5 0072 0000 0800 0000 0003 .n./...r........
0x0030: 7800 6cdd ee00 0002 6cdd ee00 0001 0800 x.l.....l.......
0x0040: 4500 0054 e775 0000 4001 9d30 7b00 0001 E..T.u..@..0{...
0x0050: 7b00 0002 0000 8480 5459 0001 1a79 ff5f {.......TY...y._
0x0060: 0000 0000 4679 0800 0000 0000 1011 1213 ....Fy..........
0x0070: 1415 1617 1819 1a1b 1c1d 1e1f 2021 2223 .............!"#
0x0080: 2425 2627 2829 2a2b 2c2d 2e2f 3031 3233 $%&'()*+,-./0123
0x0090: 3435 3637 4567
14:50:02.554598 e8:bd:d1:01:72:c8 > e8:bd:d1:01:77:ec, ethertype IPv4 (0x0800), length 148: 192.168.20.93.46639 > 192.168.20.92.4789: VXLAN, flags [I] (0x08), vni 888
6c:dd:ee:00:00:01 > 6c:dd:ee:00:00:02, ethertype IPv4 (0x0800), length 98: 123.0.0.1 > 123.0.0.2: ICMP echo reply, id 21593, seq 1, length 64
0x0000: e8bd d101 77ec e8bd d101 72c8 0800 4500 ....w.....r...E.
0x0010: 0086 4607 4000 3f11 4b56 c0a8 145d c0a8 ..F.@.?.KV...]..
0x0020: 145c b62f 12b5 0072 0000 0800 0000 0003 .\./...r........
0x0030: 7800 6cdd ee00 0002 6cdd ee00 0001 0800 x.l.....l.......
0x0040: 4500 0054 e775 0000 4001 9d30 7b00 0001 E..T.u..@..0{...
0x0050: 7b00 0002 0000 8480 5459 0001 1a79 ff5f {.......TY...y._
0x0060: 0000 0000 4679 0800 0000 0000 1011 1213 ....Fy..........
0x0070: 1415 1617 1819 1a1b 1c1d 1e1f 2021 2223 .............!"#
0x0080: 2425 2627 2829 2a2b 2c2d 2e2f 3031 3233 $%&'()*+,-./0123
0x0090: 3435 3637 4567
14:50:07.589243 e8:bd:d1:01:72:c8 > 82:83:c0:a8:14:68, ethertype IPv4 (0x0800), length 92: 192.168.20.93.38768 > 192.168.20.104.4789: VXLAN, flags [I] (0x08), vni 888
6c:dd:ee:00:00:01 > 6c:dd:ee:00:00:02, ethertype ARP (0x0806), length 42: Request who-has 123.0.0.2 tell 123.0.0.1, length 28
0x0000: 8283 c0a8 1468 e8bd d101 72c8 0800 4500 .....h....r...E.
0x0010: 004e 45ff 4000 4011 4a8a c0a8 145d c0a8 .NE.@.@.J....]..
0x0020: 1468 9770 12b5 003a 0000 0800 0000 0003 .h.p...:........
0x0030: 7800 6cdd ee00 0002 6cdd ee00 0001 0806 x.l.....l.......
0x0040: 0001 0800 0604 0001 6cdd ee00 0001 7b00 ........l.....{.
0x0050: 0001 0000 0000 0000 7b00 0002 ........{...
14:50:07.589341 82:83:c0:a8:14:68 > e8:bd:d1:01:72:c8, ethertype IPv4 (0x0800), length 92: 192.168.20.104.38768 > 192.168.20.93.4789: VXLAN, flags [I] (0x08), vni 888
6c:dd:ee:00:00:02 > 6c:dd:ee:00:00:01, ethertype ARP (0x0806), length 42: Reply 123.0.0.2 is-at 6c:dd:ee:00:00:02, length 28
0x0000: e8bd d101 72c8 8283 c0a8 1468 0800 4500 ....r......h..E.
0x0010: 004e 45ff 4000 3f11 4b8a c0a8 1468 c0a8 .NE.@.?.K....h..
0x0020: 145d 9770 12b5 003a 0000 0800 0000 0003 .].p...:........
0x0030: 7800 6cdd ee00 0001 6cdd ee00 0002 0806 x.l.....l.......
0x0040: 0001 0800 0604 0002 6cdd ee00 0002 7b00 ........l.....{.
0x0050: 0002 6cdd ee00 0001 7b00 0001 ..l.....{...
14:50:07.705044 e8:bd:d1:01:77:ec > 82:83:c0:a8:14:68, ethertype IPv4 (0x0800), length 92: 192.168.20.92.42216 > 192.168.20.104.4789: VXLAN, flags [I] (0x08), vni 888
6c:dd:ee:00:00:02 > 6c:dd:ee:00:00:01, ethertype ARP (0x0806), length 42: Request who-has 123.0.0.1 tell 123.0.0.2, length 28
0x0000: 8283 c0a8 1468 e8bd d101 77ec 0800 4500 .....h....w...E.
0x0010: 004e db3d 4000 4011 b54c c0a8 145c c0a8 .N.=@.@..L...\..
0x0020: 1468 a4e8 12b5 003a 0000 0800 0000 0003 .h.....:........
0x0030: 7800 6cdd ee00 0001 6cdd ee00 0002 0806 x.l.....l.......
0x0040: 0001 0800 0604 0001 6cdd ee00 0002 7b00 ........l.....{.
0x0050: 0002 0000 0000 0000 7b00 0001 ........{...
14:50:07.705123 82:83:c0:a8:14:68 > e8:bd:d1:01:77:ec, ethertype IPv4 (0x0800), length 92: 192.168.20.104.42216 > 192.168.20.92.4789: VXLAN, flags [I] (0x08), vni 888
6c:dd:ee:00:00:01 > 6c:dd:ee:00:00:02, ethertype ARP (0x0806), length 42: Reply 123.0.0.1 is-at 6c:dd:ee:00:00:01, length 28
0x0000: e8bd d101 77ec 8283 c0a8 1468 0800 4500 ....w......h..E.
0x0010: 004e db3d 4000 3f11 b64c c0a8 1468 c0a8 .N.=@.?..L...h..
0x0020: 145c a4e8 12b5 003a 0000 0800 0000 0003 .\.....:........
0x0030: 7800 6cdd ee00 0002 6cdd ee00 0001 0806 x.l.....l.......
0x0040: 0001 0800 0604 0002 6cdd ee00 0001 7b00 ........l.....{.
0x0050: 0001 6cdd ee00 0002 7b00 0002 ..l.....{...
2. On bridge between ACAs and ZGC nodes, captured OAM packets we generated and sent by ZGC:
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on ens4, link-type EN10MB (Ethernet), capture size 262144 bytes 23:04:12.291849 82:83:c0:a8:14:6e > e8:bd:d1:01:77:ec, ethertype IPv4 (0x0800), length 86: 192.168.20.110.0 > 192.168.20.92.8300: UDP, length 44 0x0000: e8bd d101 77ec 8283 c0a8 146e 0800 4500 ....w......n..E. 0x0010: 0048 d431 0000 3f11 fd58 c0a8 146e c0a8 .H.1..?..X...n.. 0x0020: 145c 0000 206c 0034 0000 0000 0000 7b00 ....l.4......{. 0x0030: 0002 7b00 0001 0000 0000 0100 0378 7b00 ..{..........x{. 0x0040: 0001 c0a8 145d 6cdd ee00 0001 e8bd d101 .....]l......... 0x0050: 72c8 001e 0000 r..... 23:04:12.291966 82:83:c0:a8:14:6e > e8:bd:d1:01:72:c8, ethertype IPv4 (0x0800), length 86: 192.168.20.110.0 > 192.168.20.93.8300: UDP, length 44 0x0000: e8bd d101 72c8 8283 c0a8 146e 0800 4500 ....r......n..E. 0x0010: 0048 d431 0000 3f11 fd57 c0a8 146e c0a8 .H.1..?..W...n.. 0x0020: 145d 0000 206c 0034 0000 0000 0000 7b00 .]...l.4......{. 0x0030: 0001 7b00 0002 0000 0000 0100 0378 7b00 ..{..........x{. 0x0040: 0002 c0a8 145c 6cdd ee00 0002 e8bd d101 .....\l......... 0x0050: 77ec 001e 0000 w.....
Next: debug if KVM host doesn't forward some packets
Complete ARP-Ping-OAM round trip test passed!
Pseudo controller test result:
Command for ping: ping -I 123.0.0.2 -c1 123.0.0.1
executing command: ping -I 123.0.0.2 -c1 123.0.0.1
Output: PING 123.0.0.1 (123.0.0.1) from 123.0.0.2 : 56(84) bytes of data.
64 bytes from 123.0.0.1: icmp_seq=1 ttl=64 time=2.33 ms
--- 123.0.0.1 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 2.337/2.337/2.337/0.000 ms
Ping requester (ACA parent) packet capture:
23:46:50.931939 e8:bd:d1:01:77:ec > 82:83:c0:a8:14:6c, ethertype IPv4 (0x0800), length 92: 192.168.20.92.42216 > 192.168.20.108.4789: VXLAN, flags [I] (0x08), vni 888
6c:dd:ee:00:00:02 > ff:ff:ff:ff:ff:ff, ethertype ARP (0x0806), length 42: Request who-has 123.0.0.1 tell 123.0.0.2, length 28
0x0000: 8283 c0a8 146c e8bd d101 77ec 0800 4500 .....l....w...E.
0x0010: 004e cb0c 4000 4011 c579 c0a8 145c c0a8 .N..@.@..y...\..
0x0020: 146c a4e8 12b5 003a 0000 0800 0000 0003 .l.....:........
0x0030: 7800 ffff ffff ffff 6cdd ee00 0002 0806 x.......l.......
0x0040: 0001 0800 0604 0001 6cdd ee00 0002 7b00 ........l.....{.
0x0050: 0002 0000 0000 0000 7b00 0001 ........{...
23:46:50.932171 82:83:c0:a8:14:6c > e8:bd:d1:01:77:ec, ethertype IPv4 (0x0800), length 92: 192.168.20.108.42216 > 192.168.20.92.4789: VXLAN, flags [I] (0x08), vni 888
6c:dd:ee:00:00:01 > 6c:dd:ee:00:00:02, ethertype ARP (0x0806), length 42: Reply 123.0.0.1 is-at 6c:dd:ee:00:00:01, length 28
0x0000: e8bd d101 77ec 8283 c0a8 146c 0800 4500 ....w......l..E.
0x0010: 004e cb0c 4000 3f11 c679 c0a8 146c c0a8 .N..@.?..y...l..
0x0020: 145c a4e8 12b5 003a 0000 0800 0000 0003 .\.....:........
0x0030: 7800 6cdd ee00 0002 6cdd ee00 0001 0806 x.l.....l.......
0x0040: 0001 0800 0604 0002 6cdd ee00 0001 7b00 ........l.....{.
0x0050: 0001 6cdd ee00 0002 7b00 0002 ..l.....{...
23:46:50.932551 e8:bd:d1:01:77:ec > 82:83:c0:a8:14:6e, ethertype IPv4 (0x0800), length 148: 192.168.20.92.36828 > 192.168.20.110.4789: VXLAN, flags [I] (0x08), vni 888
6c:dd:ee:00:00:02 > 6c:dd:ee:00:00:01, ethertype IPv4 (0x0800), length 98: 123.0.0.2 > 123.0.0.1: ICMP echo request, id 23422, seq 1, length 64
0x0000: 8283 c0a8 146e e8bd d101 77ec 0800 4500 .....n....w...E.
0x0010: 0086 0683 4000 4011 89c9 c0a8 145c c0a8 ....@.@......\..
0x0020: 146e 8fdc 12b5 0072 0000 0800 0000 0003 .n.....r........
0x0030: 7800 6cdd ee00 0001 6cdd ee00 0002 0800 x.l.....l.......
0x0040: 4500 0054 8729 4000 4001 bd7c 7b00 0002 E..T.)@.@..|{...
0x0050: 7b00 0001 0800 a81f 5b7e 0001 eaf6 ff5f {.......[~....._
0x0060: 0000 0000 3d37 0e00 0000 0000 1011 1213 ....=7..........
0x0070: 1415 1617 1819 1a1b 1c1d 1e1f 2021 2223 .............!"#
0x0080: 2425 2627 2829 2a2b 2c2d 2e2f 3031 3233 $%&'()*+,-./0123
0x0090: 3435 3637 4567
23:46:50.932999 82:83:c0:a8:14:6e > e8:bd:d1:01:77:ec, ethertype IPv4 (0x0800), length 86: 192.168.20.110.0 > 192.168.20.92.8300: UDP, length 44
0x0000: e8bd d101 77ec 8283 c0a8 146e 0800 4500 ....w......n..E.
0x0010: 0048 d431 0000 3f11 fd58 c0a8 146e c0a8 .H.1..?..X...n..
0x0020: 145c 0000 206c 0034 0000 0000 0000 7b00 .\...l.4......{.
0x0030: 0002 7b00 0001 0000 0000 0100 0378 7b00 ..{..........x{.
0x0040: 0001 c0a8 145d 6cdd ee00 0001 e8bd d101 .....]l.........
0x0050: 72c8 001e 0000 r.....
23:46:50.933239 e8:bd:d1:01:72:c8 > 82:83:c0:a8:14:66, ethertype IPv4 (0x0800), length 92: 192.168.20.93.38768 > 192.168.20.102.4789: VXLAN, flags [I] (0x08), vni 888
6c:dd:ee:00:00:01 > ff:ff:ff:ff:ff:ff, ethertype ARP (0x0806), length 42: Request who-has 123.0.0.2 tell 123.0.0.1, length 28
0x0000: 8283 c0a8 1466 e8bd d101 72c8 0800 4500 .....f....r...E.
0x0010: 004e b58e 4000 4011 dafc c0a8 145d c0a8 .N..@.@......]..
0x0020: 1466 9770 12b5 003a 0000 0800 0000 0003 .f.p...:........
0x0030: 7800 ffff ffff ffff 6cdd ee00 0001 0806 x.......l.......
0x0040: 0001 0800 0604 0001 6cdd ee00 0001 7b00 ........l.....{.
0x0050: 0001 0000 0000 0000 7b00 0002 ........{...
23:46:50.933823 82:83:c0:a8:14:6e > e8:bd:d1:01:77:ec, ethertype IPv4 (0x0800), length 148: 192.168.20.110.46639 > 192.168.20.92.4789: VXLAN, flags [I] (0x08), vni 888
6c:dd:ee:00:00:01 > 6c:dd:ee:00:00:02, ethertype IPv4 (0x0800), length 98: 123.0.0.1 > 123.0.0.2: ICMP echo reply, id 23422, seq 1, length 64
0x0000: e8bd d101 77ec 8283 c0a8 146e 0800 4500 ....w......n..E.
0x0010: 0086 a47f 4000 3f11 eccc c0a8 146e c0a8 ....@.?......n..
0x0020: 145c b62f 12b5 0072 0000 0800 0000 0003 .\./...r........
0x0030: 7800 6cdd ee00 0002 6cdd ee00 0001 0800 x.l.....l.......
0x0040: 4500 0054 cbac 0000 4001 b8f9 7b00 0001 E..T....@...{...
0x0050: 7b00 0002 0000 b01f 5b7e 0001 eaf6 ff5f {.......[~....._
0x0060: 0000 0000 3d37 0e00 0000 0000 1011 1213 ....=7..........
0x0070: 1415 1617 1819 1a1b 1c1d 1e1f 2021 2223 .............!"#
0x0080: 2425 2627 2829 2a2b 2c2d 2e2f 3031 3233 $%&'()*+,-./0123
0x0090: 3435 3637 4567
br-tun flow table dump after test should have dynamic flow added by OAM packet (4th packet above), Eric and Minli please check:
Dump flow after PING:
executing command: sudo ovs-ofctl dump-flows br-tun
Output: Huawei@2018
[sudo] password for user:
cookie=0x0, duration=1.256s, table=0, n_packets=10, n_bytes=938, priority=1,in_port="patch-int" actions=resubmit(,2)
cookie=0x0, duration=1.213s, table=0, n_packets=2, n_bytes=140, priority=25,in_port="vxlan-generic" actions=resubmit(,4)
cookie=0x0, duration=1.271s, table=0, n_packets=0, n_bytes=0, priority=0 actions=NORMAL
cookie=0x0, duration=1.237s, table=2, n_packets=1, n_bytes=42, priority=25,arp,in_port="patch-int",arp_op=1 actions=resubmit(,51)
cookie=0x0, duration=1.229s, table=2, n_packets=1, n_bytes=98, priority=25,icmp,in_port="patch-int",icmp_type=8 actions=resubmit(,52)
cookie=0x0, duration=1.251s, table=2, n_packets=0, n_bytes=0, priority=1,dl_dst=00:00:00:00:00:00/01:00:00:00:00:00 actions=resubmit(,20)
cookie=0x0, duration=1.246s, table=2, n_packets=8, n_bytes=798, priority=1,dl_dst=01:00:00:00:00:00/01:00:00:00:00:00 actions=resubmit(,22)
cookie=0x0, duration=1.186s, table=4, n_packets=2, n_bytes=140, priority=1,tun_id=0x378 actions=mod_vlan_vid:1,output:"patch-int"
cookie=0x0, duration=1.241s, table=20, n_packets=1, n_bytes=98, priority=1 actions=resubmit(,22)
cookie=0x0, duration=1.150s, table=22, n_packets=9, n_bytes=884, priority=50,dl_vlan=1 actions=strip_vlan,load:0x378->NXM_NX_TUN_ID[],group:1
cookie=0x0, duration=1.233s, table=51, n_packets=1, n_bytes=42, priority=1 actions=resubmit(,22)
cookie=0x0, duration=1.225s, table=52, n_packets=1, n_bytes=98, priority=1 actions=resubmit(,20)
@liangbin-pub ACA should install the rules on table20 after receiving oam packets, but I did not see it. Please check whether the format of some data packets defined in aca_zeta_oam_server.h is consistent with the format of oam packets sent by zeta to ACA.
struct flow_inject_msg {
struct in_addr inner_src_ip; // Inner Packet SIP 32bit
struct in_addr inner_dst_ip; // Inner Packet DIP 32bit
uint16_t src_port; // Inner Packet SPort 16bit
uint16_t dst_port; // Inner Packet DPort 16bit
uint8_t proto; // Inner Packet Protocol 8bit
uint8_t vni[3]; // tunnel_id, 3bytes 24bit
struct in_addr inst_dst_ip; // Destination Inst IP 32bit
struct in_addr node_dst_ip; // Destination Node IP 32bit
uint8_t inst_dst_mac[6]; // Destination Inst MAC 48bit
uint8_t node_dst_mac[6]; // Destination Node MAC 48bit
uint16_t idle_timeout; // 0 - 65536s 16bit
};
we got ping working E2E now, the remaining issues are tracked by: #194 and #195
Track and communicate data path integration findings