Skip to content
This repository has been archived by the owner on Mar 31, 2023. It is now read-only.

Add vxlan-generic support #180

Merged
merged 1 commit into from
Jan 6, 2021
Merged

Conversation

zhangml
Copy link
Contributor

@zhangml zhangml commented Dec 16, 2020

This change include:

  1. Remove “aca_oam_port_manager”, and transfer the corresponding function to “aca_zeta_programming.cpp”.
  2. Modify the direct path rule and zeta group table rule output to vxlan-generic.
  3. Add group multicast rules to table22. E.g
    ovs-ofctl add-flow br-tun table=22,priority=50,dl_vlan=100,actions="strip_vlan,load:0x1->NXM_NX_TUN_ID[],group:100"
  4. Fixed some bug.
  5. This PR will not destroy the existing test results. The results of running aca_tests are as follows:
[----------] Global test environment tear-down
[==========] 40 tests from 8 test suites ran. (8088 ms total)
[  PASSED  ] 40 tests.

  YOU HAVE 12 DISABLED TESTS

g_total_execute_system_time = 10533620 microseconds or 10533 milliseconds
g_total_execute_ovsdb_time = 5509316 microseconds or 5509 milliseconds
g_total_execute_openflow_time = 2242602 microseconds or 2242 milliseconds
g_total_vpcs_table_mutex_time = 0 microseconds or 0 milliseconds
g_total_update_GS_time = 792763 microseconds or 792 milliseconds
Program exiting, cleaning up...
ACA_Zeta_Programming::clear_all_data ---> Entering
ACA_Zeta_Programming::clear_all_data <--- Exiting
ACA_OVS_L2_Programmer::execute_openflow_command ---> Entering
Executing command: ovs-ofctl del-flows br-int "udp,udp_src=68,udp_dst=67"
Command succeeded!
 Elapsed time for system command took: 3217 microseconds or 3 milliseconds.
Elapsed time for openflow client call took: 3283 microseconds or 3 milliseconds. rc: 0
ACA_OVS_L2_Programmer::execute_openflow_command <--- Exiting, rc = 0

@er1cthe0ne er1cthe0ne self-requested a review December 16, 2020 18:21
@er1cthe0ne er1cthe0ne added the Zeta Integration with Zeta label Dec 16, 2020
@zzxgzgz
Copy link
Contributor

zzxgzgz commented Dec 17, 2020

@zhangml Hi,

FYI, I'm seeing this error when running scale test, do you think it is fixed your latest code? Thanks.

OFPT_ERROR (OF1.3) (xid=0x4): OFPGMFC_GROUP_EXISTS

OFPT_GROUP_MOD (OF1.3) (xid=0x4):

 ADD group_id=1,type=select,bucket=actions=output:"vxlan-13638762",bucket=actions=output:"vxlan-6738570",bucket=actions=output:"vxlan-10278243",bucket=actions=output:"vxlan-45591622",bucket=actions=output:"vxlan-92400250",bucket=actions=output:"vxlan-89234581",bucket=actions=output:"vxlan-82387939",bucket=actions=output:"vxlan-99236635",bucket=actions=output:"vxlan-87509512",bucket=actions=output:"vxlan-73778365",bucket=actions=output:"vxlan-15858795",bucket=actions=output:"vxlan-32912808",bucket=actions=output:"vxlan-49017784",bucket=actions=output:"vxlan-42966254",bucket=actions=output:"vxlan-45916437",bucket=actions=output:"vxlan-58213253"

OFPT_ERROR (OF1.3) (xid=0x4): OFPGMFC_GROUP_EXISTS

OFPT_GROUP_MOD (OF1.3) (xid=0x4):

 ADD group_id=1,type=select,bucket=actions=output:"vxlan-13638762",bucket=actions=output:"vxlan-6738570",bucket=actions=output:"vxlan-10278243",bucket=actions=output:"vxlan-45591622",bucket=actions=output:"vxlan-92400250",bucket=actions=output:"vxlan-89234581",bucket=actions=output:"vxlan-82387939",bucket=actions=output:"vxlan-99236635",bucket=actions=output:"vxlan-87509512",bucket=actions=output:"vxlan-73778365",bucket=actions=output:"vxlan-15858795",bucket=actions=output:"vxlan-32912808",bucket=actions=output:"vxlan-49017784",bucket=actions=output:"vxlan-42966254",bucket=actions=output:"vxlan-45916437",bucket=actions=output:"vxlan-58213253"

Command failed!!! rc: 256

 Elapsed time for system command took: 4843 microseconds or 4 milliseconds.

Elapsed time for openflow client call took: 4915 microseconds or 4 milliseconds. rc: 256

ACA_OVS_L2_Programmer::execute_openflow_command <--- Exiting, rc = 256

update_zeta_group_entry failed!!! overrall_rc: 256

@zhangml
Copy link
Contributor Author

zhangml commented Dec 18, 2020

@zhangml Hi,

FYI, I'm seeing this error when running scale test, do you think it is fixed your latest code? Thanks.

OFPT_ERROR (OF1.3) (xid=0x4): OFPGMFC_GROUP_EXISTS

OFPT_GROUP_MOD (OF1.3) (xid=0x4):

 ADD group_id=1,type=select,bucket=actions=output:"vxlan-13638762",bucket=actions=output:"vxlan-6738570",bucket=actions=output:"vxlan-10278243",bucket=actions=output:"vxlan-45591622",bucket=actions=output:"vxlan-92400250",bucket=actions=output:"vxlan-89234581",bucket=actions=output:"vxlan-82387939",bucket=actions=output:"vxlan-99236635",bucket=actions=output:"vxlan-87509512",bucket=actions=output:"vxlan-73778365",bucket=actions=output:"vxlan-15858795",bucket=actions=output:"vxlan-32912808",bucket=actions=output:"vxlan-49017784",bucket=actions=output:"vxlan-42966254",bucket=actions=output:"vxlan-45916437",bucket=actions=output:"vxlan-58213253"

OFPT_ERROR (OF1.3) (xid=0x4): OFPGMFC_GROUP_EXISTS

OFPT_GROUP_MOD (OF1.3) (xid=0x4):

 ADD group_id=1,type=select,bucket=actions=output:"vxlan-13638762",bucket=actions=output:"vxlan-6738570",bucket=actions=output:"vxlan-10278243",bucket=actions=output:"vxlan-45591622",bucket=actions=output:"vxlan-92400250",bucket=actions=output:"vxlan-89234581",bucket=actions=output:"vxlan-82387939",bucket=actions=output:"vxlan-99236635",bucket=actions=output:"vxlan-87509512",bucket=actions=output:"vxlan-73778365",bucket=actions=output:"vxlan-15858795",bucket=actions=output:"vxlan-32912808",bucket=actions=output:"vxlan-49017784",bucket=actions=output:"vxlan-42966254",bucket=actions=output:"vxlan-45916437",bucket=actions=output:"vxlan-58213253"

Command failed!!! rc: 256

 Elapsed time for system command took: 4843 microseconds or 4 milliseconds.

Elapsed time for openflow client call took: 4915 microseconds or 4 milliseconds. rc: 256

ACA_OVS_L2_Programmer::execute_openflow_command <--- Exiting, rc = 256

update_zeta_group_entry failed!!! overrall_rc: 256

The bug did not appear when executing ./build/tests/aca_tests. But I'm not sure whether it is the same in a scale testing environment? Please tell me how to perform this test?

@zzxgzgz
Copy link
Contributor

zzxgzgz commented Dec 18, 2020

@zhangml Hi,
FYI, I'm seeing this error when running scale test, do you think it is fixed your latest code? Thanks.

OFPT_ERROR (OF1.3) (xid=0x4): OFPGMFC_GROUP_EXISTS

OFPT_GROUP_MOD (OF1.3) (xid=0x4):

 ADD group_id=1,type=select,bucket=actions=output:"vxlan-13638762",bucket=actions=output:"vxlan-6738570",bucket=actions=output:"vxlan-10278243",bucket=actions=output:"vxlan-45591622",bucket=actions=output:"vxlan-92400250",bucket=actions=output:"vxlan-89234581",bucket=actions=output:"vxlan-82387939",bucket=actions=output:"vxlan-99236635",bucket=actions=output:"vxlan-87509512",bucket=actions=output:"vxlan-73778365",bucket=actions=output:"vxlan-15858795",bucket=actions=output:"vxlan-32912808",bucket=actions=output:"vxlan-49017784",bucket=actions=output:"vxlan-42966254",bucket=actions=output:"vxlan-45916437",bucket=actions=output:"vxlan-58213253"

OFPT_ERROR (OF1.3) (xid=0x4): OFPGMFC_GROUP_EXISTS

OFPT_GROUP_MOD (OF1.3) (xid=0x4):

 ADD group_id=1,type=select,bucket=actions=output:"vxlan-13638762",bucket=actions=output:"vxlan-6738570",bucket=actions=output:"vxlan-10278243",bucket=actions=output:"vxlan-45591622",bucket=actions=output:"vxlan-92400250",bucket=actions=output:"vxlan-89234581",bucket=actions=output:"vxlan-82387939",bucket=actions=output:"vxlan-99236635",bucket=actions=output:"vxlan-87509512",bucket=actions=output:"vxlan-73778365",bucket=actions=output:"vxlan-15858795",bucket=actions=output:"vxlan-32912808",bucket=actions=output:"vxlan-49017784",bucket=actions=output:"vxlan-42966254",bucket=actions=output:"vxlan-45916437",bucket=actions=output:"vxlan-58213253"

Command failed!!! rc: 256

 Elapsed time for system command took: 4843 microseconds or 4 milliseconds.

Elapsed time for openflow client call took: 4915 microseconds or 4 milliseconds. rc: 256

ACA_OVS_L2_Programmer::execute_openflow_command <--- Exiting, rc = 256

update_zeta_group_entry failed!!! overrall_rc: 256

The bug did not appear when executing ./build/tests/aca_tests. But I'm not sure whether it is the same in a scale testing environment? Please tell me how to perform this test?

Sure, if you have the test environment set up, the following is how to reproduce that error:

  1. On the host where you want to run the pseudo controller and the hosts for aca_nodes, pull the latest code from the alcor repo and build it.
  2. On the pseudo controller's host, get into ../alcor-control-agent/test/zeta-aca-test_controllerScript, if you do a ls you will see something similar to the following:
~/src/github.com/zzxgzgz/alcor-control-agent/test/zeta-aca-test_controllerScript$ ls
data  run.py
  1. Run the pseudo controller with total amount of ports to create, how many ports to create, how much time to sleep between calls. For example, you can run python3 run.py 10 10 0, to create 10 ports in total, each /ports POST api call creates 10 ports from Zeta, and it sleeps 0 seconds between calls.
  2. Observe the output of the pseudo controller, who should run tests DISABLED_zeta_scale_PARENT and DISABLED_zeta_scale_PARENT, and they should all fail (that's what I saw in my output). Inside the test outputs, you will see the above error.

Thanks.

@er1cthe0ne
Copy link
Contributor

@zhangml - I took a more detail look at this PR, we are moving in the right direction, we should do the following as the next steps:

  1. Address comments in this PR
  2. rename aca_oam_server.h to aca_zeta_oam_server.h, aca_oam_server.cpp to aca_zeta_oam_server.cpp.
  3. Confirm this change didn't break any existing aca_tests, share the test result

@zhangml zhangml force-pushed the integration branch 3 times, most recently from a968092 to 787fecf Compare December 21, 2020 12:25
@zhangml
Copy link
Contributor Author

zhangml commented Jan 5, 2021

@er1cthe0ne I have run all the tests and the test results are as follows:

[       OK ] ovs_l2_test_cases.DISABLED_2_ports_CREATE_test_traffic_CHILD (709 ms)
[----------] 1 test from ovs_l2_test_cases (709 ms total)

[----------] Global test environment tear-down
[==========] 1 test from 1 test suite ran. (710 ms total)
[  PASSED  ] 1 test.



[       OK ] ovs_l2_test_cases.DISABLED_2_ports_CREATE_test_traffic_PARENT (34094 ms)
[----------] 1 test from ovs_l2_test_cases (34094 ms total)

[----------] Global test environment tear-down
[==========] 1 test from 1 test suite ran. (34094 ms total)
[  PASSED  ] 1 test.



[METRICS] Elapsed time for message total operation took: 17902 microseconds or 17 milliseconds
[       OK ] ovs_l3_test_cases.DISABLED_2_ports_ROUTING_test_traffic_CHILD (22049 ms)
[----------] 1 test from ovs_l3_test_cases (22049 ms total)

[----------] Global test environment tear-down
[==========] 1 test from 1 test suite ran. (22049 ms total)
[  PASSED  ] 1 test.

[       OK ] ovs_l3_test_cases.DISABLED_2_ports_ROUTING_test_traffic_PARENT (69347 ms)
[----------] 1 test from ovs_l3_test_cases (69348 ms total)

[----------] Global test environment tear-down
[==========] 1 test from 1 test suite ran. (69348 ms total)
[  PASSED  ] 1 test.



 Elapsed time for system command took: 1151119 microseconds or 1151 milliseconds.
[       OK ] dhcp_request_test_case.DISABLED_l2_dhcp_test (9081 ms)
[----------] 1 test from dhcp_request_test_case (9081 ms total)

[----------] Global test environment tear-down
[==========] 1 test from 1 test suite ran. (9082 ms total)
[  PASSED  ] 1 test.



[       OK ] dhcp_request_test_case.DISABLED_l3_dhcp_test (9177 ms)
[----------] 1 test from dhcp_request_test_case (9177 ms total)

[----------] Global test environment tear-down
[==========] 1 test from 1 test suite ran. (9178 ms total)
[  PASSED  ] 1 test.

 Elapsed time for system command took: 1372229 microseconds or 1372 milliseconds.
[       OK ] ovs_l3_test_cases.DISABLED_2_ports_ROUTING_test_traffic_one_machine (31378 ms)
[----------] 1 test from ovs_l3_test_cases (31379 ms total)

[----------] Global test environment tear-down
[==========] 1 test from 1 test suite ran. (31379 ms total)
[  PASSED  ] 1 test.

But there is a failed test DISABLED_pulsar_consumer_test. The results are as follows:

[  FAILED  ] pulsar_test_cases.DISABLED_pulsar_consumer_test (94 ms)
[----------] 1 test from pulsar_test_cases (94 ms total)

[----------] Global test environment tear-down
[==========] 1 test from 1 test suite ran. (94 ms total)
[  PASSED  ] 0 tests.
[  FAILED  ] 1 test, listed below:
[  FAILED  ] pulsar_test_cases.DISABLED_pulsar_consumer_test

 1 FAILED TEST

@er1cthe0ne
Copy link
Contributor

thanks for sharing the test result, it looks good. The DISABLED_pulsar_consumer_test failure is expected because it requires pulsar setup which you don't have.

I have merged in my PR as discussed, the next step is to rebase your branch with offical master and then we can plan to merge this in.

@zzxgzgz
Copy link
Contributor

zzxgzgz commented Jan 5, 2021

Hi @zhangml

Thank you very much for sharing the your test results.

Can you please try to run sudo ./build/tests/aca_tests --gtest_also_run_disabled_tests --gtest_filter=*DISABLED_zeta_scale_PARENT?

This requires the aca_data.json, which is generated by the pseudo controller and uploaded to the aca parent/child nodes.

When I run the above test, I got this weird outpout:

.......
AuxGateway_type is zeta!
ACA_Zeta_Programming::create_zeta_config ---> Entering
ACA_Zeta_Programming::create_entry ---> Entering
ACA_Zeta_Programming::create_entry <--- Exiting
ACA_Zeta_Programming::_create_oam_ofp ---> Entering
Command succeeded!
 Elapsed time for system command took: 24969 microseconds or 24 milliseconds.
Elapsed time for ovsdb client call took: 25058 microseconds or 25 milliseconds. rc: 0
ACA_OVS_L2_Programmer::execute_ovsdb_command <--- Exiting, rc = 0
Executing command: ip addr add 123.0.0.4/16 dev tap0000004ae-7
Command succeeded!
 Elapsed time for system command took: 26427 microseconds or 26 milliseconds.
Command succeeded!
Elapsed time for ovsdb client call took: 26828 microseconds or 26 milliseconds. rc: 0
ACA_OVS_L2_Programmer::execute_ovsdb_command <--- Exiting, rc = 0
Executing command: ip addr add 123.0.0.2/16 dev tap0000002ae-7
 Elapsed time for system command took: 25494 microseconds or 25 milliseconds.
Elapsed time for ovsdb client call took: 26244 microseconds or 26 milliseconds. rc: 0
ACA_OVS_L2_Programmer::execute_ovsdb_command <--- Exiting, rc = 0
Executing command: ip addr add 123.0.0.6/16 dev tap0000006ae-7
Command succeeded!
 Elapsed time for system command took: 3700 microseconds or 3 milliseconds.
Executing command: ip link set dev tap0000004ae-7 address 6c:dd:ee:0:0:4
Command succeeded!
 Elapsed time for system command took: 2483 microseconds or 2 milliseconds.
Executing command: ip link set dev tap0000006ae-7 address 6c:dd:ee:0:0:6
Command succeeded!
 Elapsed time for system command took: 3752 microseconds or 3 milliseconds.
Executing command: ip link set dev tap0000002ae-7 address 6c:dd:ee:0:0:2
(null): talking to unix:/var/run/openvswitch/br-int.mgmt (Connection reset by peer)
ACA_Zeta_Programming::clear_all_data ---> Entering
ACA_Zeta_Programming::clear_all_data <--- Exiting

After the last line, no more outputs were generated for this test, it just ended abruptly.

I wonder if it's because of the environment I have, can you please run the test on your side and share the results?

Thank you.

@liangbin-pub
Copy link
Contributor

@zzxgzgz Are you adding just 3 ports? the "ip addr add 123.0.0.x/16 dev tapxxx" command tooks a little too long for just ovsdb update in user space (25ms)

@zzxgzgz
Copy link
Contributor

zzxgzgz commented Jan 6, 2021

@zzxgzgz Are you adding just 3 ports? the "ip addr add 123.0.0.x/16 dev tapxxx" command tooks a little too long for just ovsdb update in user space (25ms)

I'm trying to add 5 ports on this aca node, and as I mentioned above the test quits abruptly without showing if the test passed or failed, it just ended there.

@er1cthe0ne
Copy link
Contributor

This requires the aca_data.json, which is generated by the pseudo controller and uploaded to the aca parent/child nodes.

@zzxgzgz - to generate aca_data.json, does it require a pseudo controller setup or can we share a sample/static aca_data.json here?

@zzxgzgz Are you adding just 3 ports? the "ip addr add 123.0.0.x/16 dev tapxxx" command tooks a little too long for just ovsdb update in user space (25ms)

@liangbin-pub these command is for aca demo mode only to setup internal OVS port on br-int when there is no VM/Container setup. It will not be executed in non-demo mode in openstack environment.

@zzxgzgz
Copy link
Contributor

zzxgzgz commented Jan 6, 2021

This requires the aca_data.json, which is generated by the pseudo controller and uploaded to the aca parent/child nodes.

@zzxgzgz - to generate aca_data.json, does it require a pseudo controller setup or can we share a sample/static aca_data.json here?

@zzxgzgz Are you adding just 3 ports? the "ip addr add 123.0.0.x/16 dev tapxxx" command tooks a little too long for just ovsdb update in user space (25ms)

@liangbin-pub these command is for aca demo mode only to setup internal OVS port on br-int when there is no VM/Container setup. It will not be executed in non-demo mode in openstack environment.

This is a sample of aca_data.json that I generated with 10 ports:

{
	"vpc_response": {
		"gws": [{
			"ip": "192.168.20.100",
			"mac": "82:83:c0:a8:14:64"
		}, {
			"ip": "192.168.20.101",
			"mac": "82:83:c0:a8:14:65"
		}, {
			"ip": "192.168.20.102",
			"mac": "82:83:c0:a8:14:66"
		}, {
			"ip": "192.168.20.103",
			"mac": "82:83:c0:a8:14:67"
		}, {
			"ip": "192.168.20.104",
			"mac": "82:83:c0:a8:14:68"
		}, {
			"ip": "192.168.20.105",
			"mac": "82:83:c0:a8:14:69"
		}, {
			"ip": "192.168.20.106",
			"mac": "82:83:c0:a8:14:6a"
		}, {
			"ip": "192.168.20.107",
			"mac": "82:83:c0:a8:14:6b"
		}, {
			"ip": "192.168.20.108",
			"mac": "82:83:c0:a8:14:6c"
		}, {
			"ip": "192.168.20.109",
			"mac": "82:83:c0:a8:14:6d"
		}, {
			"ip": "192.168.20.110",
			"mac": "82:83:c0:a8:14:6e"
		}, {
			"ip": "192.168.20.111",
			"mac": "82:83:c0:a8:14:6f"
		}, {
			"ip": "192.168.20.112",
			"mac": "82:83:c0:a8:14:70"
		}, {
			"ip": "192.168.20.113",
			"mac": "82:83:c0:a8:14:71"
		}, {
			"ip": "192.168.20.114",
			"mac": "82:83:c0:a8:14:72"
		}, {
			"ip": "192.168.20.115",
			"mac": "82:83:c0:a8:14:73"
		}],
		"id": 1,
		"port_ibo": "8300",
		"ports": [],
		"vni": 888,
		"vpc_id": "3dda2801-d675-4688-a63f-dcda8d327f61",
		"zgc_id": "6b713a16-5031-4aa4-8c84-e0776f476578"
	},
	"port_response": [{
		"ip_node": "192.168.20.92",
		"ips_port": [{
			"ip": "123.0.0.0",
			"vip": ""
		}],
		"mac_node": "e8:bd:d1:01:77:ec",
		"mac_port": "6c:dd:ee:0:0:0",
		"port_id": "0000000ae-7dec-11d0-a765-00a0c9341120",
		"vpc_id": "3dda2801-d675-4688-a63f-dcda8d327f61"
	}, {
		"ip_node": "192.168.20.93",
		"ips_port": [{
			"ip": "123.0.0.1",
			"vip": ""
		}],
		"mac_node": "e8:bd:d1:01:72:c8",
		"mac_port": "6c:dd:ee:0:0:1",
		"port_id": "0000001ae-7dec-11d0-a765-00a0c9341120",
		"vpc_id": "3dda2801-d675-4688-a63f-dcda8d327f61"
	}, {
		"ip_node": "192.168.20.92",
		"ips_port": [{
			"ip": "123.0.0.2",
			"vip": ""
		}],
		"mac_node": "e8:bd:d1:01:77:ec",
		"mac_port": "6c:dd:ee:0:0:2",
		"port_id": "0000002ae-7dec-11d0-a765-00a0c9341120",
		"vpc_id": "3dda2801-d675-4688-a63f-dcda8d327f61"
	}, {
		"ip_node": "192.168.20.93",
		"ips_port": [{
			"ip": "123.0.0.3",
			"vip": ""
		}],
		"mac_node": "e8:bd:d1:01:72:c8",
		"mac_port": "6c:dd:ee:0:0:3",
		"port_id": "0000003ae-7dec-11d0-a765-00a0c9341120",
		"vpc_id": "3dda2801-d675-4688-a63f-dcda8d327f61"
	}, {
		"ip_node": "192.168.20.92",
		"ips_port": [{
			"ip": "123.0.0.4",
			"vip": ""
		}],
		"mac_node": "e8:bd:d1:01:77:ec",
		"mac_port": "6c:dd:ee:0:0:4",
		"port_id": "0000004ae-7dec-11d0-a765-00a0c9341120",
		"vpc_id": "3dda2801-d675-4688-a63f-dcda8d327f61"
	}, {
		"ip_node": "192.168.20.93",
		"ips_port": [{
			"ip": "123.0.0.5",
			"vip": ""
		}],
		"mac_node": "e8:bd:d1:01:72:c8",
		"mac_port": "6c:dd:ee:0:0:5",
		"port_id": "0000005ae-7dec-11d0-a765-00a0c9341120",
		"vpc_id": "3dda2801-d675-4688-a63f-dcda8d327f61"
	}, {
		"ip_node": "192.168.20.92",
		"ips_port": [{
			"ip": "123.0.0.6",
			"vip": ""
		}],
		"mac_node": "e8:bd:d1:01:77:ec",
		"mac_port": "6c:dd:ee:0:0:6",
		"port_id": "0000006ae-7dec-11d0-a765-00a0c9341120",
		"vpc_id": "3dda2801-d675-4688-a63f-dcda8d327f61"
	}, {
		"ip_node": "192.168.20.93",
		"ips_port": [{
			"ip": "123.0.0.7",
			"vip": ""
		}],
		"mac_node": "e8:bd:d1:01:72:c8",
		"mac_port": "6c:dd:ee:0:0:7",
		"port_id": "0000007ae-7dec-11d0-a765-00a0c9341120",
		"vpc_id": "3dda2801-d675-4688-a63f-dcda8d327f61"
	}, {
		"ip_node": "192.168.20.92",
		"ips_port": [{
			"ip": "123.0.0.8",
			"vip": ""
		}],
		"mac_node": "e8:bd:d1:01:77:ec",
		"mac_port": "6c:dd:ee:0:0:8",
		"port_id": "0000008ae-7dec-11d0-a765-00a0c9341120",
		"vpc_id": "3dda2801-d675-4688-a63f-dcda8d327f61"
	}, {
		"ip_node": "192.168.20.93",
		"ips_port": [{
			"ip": "123.0.0.9",
			"vip": ""
		}],
		"mac_node": "e8:bd:d1:01:72:c8",
		"mac_port": "6c:dd:ee:0:0:9",
		"port_id": "0000009ae-7dec-11d0-a765-00a0c9341120",
		"vpc_id": "3dda2801-d675-4688-a63f-dcda8d327f61"
	}]
}

To use it with your setup, you need to:

  1. Change the ip_node of every port info to the tenent network interface's IP of your aca node.
  2. Change the mac_node to the mac of that interface with that above IP.

@zhangml
Copy link
Contributor Author

zhangml commented Jan 6, 2021

Hi @zhangml

Thank you very much for sharing the your test results.

Can you please try to run sudo ./build/tests/aca_tests --gtest_also_run_disabled_tests --gtest_filter=*DISABLED_zeta_scale_PARENT?

This requires the aca_data.json, which is generated by the pseudo controller and uploaded to the aca parent/child nodes.

When I run the above test, I got this weird outpout:

.......
AuxGateway_type is zeta!
ACA_Zeta_Programming::create_zeta_config ---> Entering
ACA_Zeta_Programming::create_entry ---> Entering
ACA_Zeta_Programming::create_entry <--- Exiting
ACA_Zeta_Programming::_create_oam_ofp ---> Entering
Command succeeded!
 Elapsed time for system command took: 24969 microseconds or 24 milliseconds.
Elapsed time for ovsdb client call took: 25058 microseconds or 25 milliseconds. rc: 0
ACA_OVS_L2_Programmer::execute_ovsdb_command <--- Exiting, rc = 0
Executing command: ip addr add 123.0.0.4/16 dev tap0000004ae-7
Command succeeded!
 Elapsed time for system command took: 26427 microseconds or 26 milliseconds.
Command succeeded!
Elapsed time for ovsdb client call took: 26828 microseconds or 26 milliseconds. rc: 0
ACA_OVS_L2_Programmer::execute_ovsdb_command <--- Exiting, rc = 0
Executing command: ip addr add 123.0.0.2/16 dev tap0000002ae-7
 Elapsed time for system command took: 25494 microseconds or 25 milliseconds.
Elapsed time for ovsdb client call took: 26244 microseconds or 26 milliseconds. rc: 0
ACA_OVS_L2_Programmer::execute_ovsdb_command <--- Exiting, rc = 0
Executing command: ip addr add 123.0.0.6/16 dev tap0000006ae-7
Command succeeded!
 Elapsed time for system command took: 3700 microseconds or 3 milliseconds.
Executing command: ip link set dev tap0000004ae-7 address 6c:dd:ee:0:0:4
Command succeeded!
 Elapsed time for system command took: 2483 microseconds or 2 milliseconds.
Executing command: ip link set dev tap0000006ae-7 address 6c:dd:ee:0:0:6
Command succeeded!
 Elapsed time for system command took: 3752 microseconds or 3 milliseconds.
Executing command: ip link set dev tap0000002ae-7 address 6c:dd:ee:0:0:2
(null): talking to unix:/var/run/openvswitch/br-int.mgmt (Connection reset by peer)
ACA_Zeta_Programming::clear_all_data ---> Entering
ACA_Zeta_Programming::clear_all_data <--- Exiting

After the last line, no more outputs were generated for this test, it just ended abruptly.

I wonder if it's because of the environment I have, can you please run the test on your side and share the results?

Thank you.

Hi, @zzxgzgz I ran the test using the latest version of the code(https://github.com/zhangml/alcor-control-agent/tree/integration). This is the result of my test:

Note: Google Test filter = *DISABLED_zeta_scale_PARENT
[==========] Running 1 test from 1 test suite.
[----------] Global test environment set-up.
[----------] 1 test from zeta_programming_test_cases
[ RUN      ] zeta_programming_test_cases.DISABLED_zeta_scale_PARENT
ACA_OVS_L2_Programmer::execute_ovsdb_command ---> Entering
Executing command: ovs-vsctl del-br br-int
Command succeeded!
 Elapsed time for system command took: 338686 microseconds or 338 milliseconds.
Elapsed time for ovsdb client call took: 338766 microseconds or 338 milliseconds. rc: 0
ACA_OVS_L2_Programmer::execute_ovsdb_command <--- Exiting, rc = 0
ACA_OVS_L2_Programmer::execute_ovsdb_command ---> Entering
Executing command: ovs-vsctl del-br br-tun
Command succeeded!
 Elapsed time for system command took: 109133 microseconds or 109 milliseconds.
Elapsed time for ovsdb client call took: 109264 microseconds or 109 milliseconds. rc: 0
ACA_OVS_L2_Programmer::execute_ovsdb_command <--- Exiting, rc = 0
ACA_OVS_L2_Programmer::setup_ovs_bridges_if_need ---> Entering
ACA_OVS_L2_Programmer::execute_ovsdb_command ---> Entering
Executing command: ovs-vsctl br-exists br-int
Command failed!!! rc: 512
 Elapsed time for system command took: 9710 microseconds or 9 milliseconds.
Elapsed time for ovsdb client call took: 9826 microseconds or 9 milliseconds. rc: 512
ACA_OVS_L2_Programmer::execute_ovsdb_command <--- Exiting, rc = 512
ACA_OVS_L2_Programmer::execute_ovsdb_command ---> Entering
Executing command: ovs-vsctl br-exists br-tun
Command failed!!! rc: 512
 Elapsed time for system command took: 7063 microseconds or 7 milliseconds.
Elapsed time for ovsdb client call took: 7168 microseconds or 7 milliseconds. rc: 512
ACA_OVS_L2_Programmer::execute_ovsdb_command <--- Exiting, rc = 512
Both br-int and br-tun not existed: create them
ACA_OVS_L2_Programmer::execute_ovsdb_command ---> Entering
Executing command: ovs-vsctl add-br br-int
Command succeeded!
 Elapsed time for system command took: 21029 microseconds or 21 milliseconds.
Elapsed time for ovsdb client call took: 21130 microseconds or 21 milliseconds. rc: 0
ACA_OVS_L2_Programmer::execute_ovsdb_command <--- Exiting, rc = 0
ACA_OVS_L2_Programmer::execute_ovsdb_command ---> Entering
Executing command: ovs-vsctl add-br br-tun
Command succeeded!
 Elapsed time for system command took: 12161 microseconds or 12 milliseconds.
Elapsed time for ovsdb client call took: 12437 microseconds or 12 milliseconds. rc: 0
ACA_OVS_L2_Programmer::execute_ovsdb_command <--- Exiting, rc = 0
ACA_OVS_L2_Programmer::execute_ovsdb_command ---> Entering
Executing command: ovs-vsctl -- add-port br-int patch-tun -- set interface patch-tun type=patch options:peer=patch-int -- add-port br-tun patch-int -- set interface patch-int type=patch options:peer=patch-tun
Command succeeded!
 Elapsed time for system command took: 9266 microseconds or 9 milliseconds.
Elapsed time for ovsdb client call took: 9332 microseconds or 9 milliseconds. rc: 0
ACA_OVS_L2_Programmer::execute_ovsdb_command <--- Exiting, rc = 0
ACA_OVS_L2_Programmer::execute_openflow_command ---> Entering
Executing command: ovs-ofctl add-flow br-tun "table=0,priority=1,in_port="patch-int" actions=resubmit(,2)"
Command succeeded!
 Elapsed time for system command took: 393289 microseconds or 393 milliseconds.
Elapsed time for openflow client call took: 393470 microseconds or 393 milliseconds. rc: 0
ACA_OVS_L2_Programmer::execute_openflow_command <--- Exiting, rc = 0
ACA_OVS_L2_Programmer::execute_openflow_command ---> Entering
Executing command: ovs-ofctl add-flow br-tun "table=2,priority=1,dl_dst=00:00:00:00:00:00/01:00:00:00:00:00 actions=resubmit(,20)"
Command succeeded!
 Elapsed time for system command took: 9165 microseconds or 9 milliseconds.
Elapsed time for openflow client call took: 9365 microseconds or 9 milliseconds. rc: 0
ACA_OVS_L2_Programmer::execute_openflow_command <--- Exiting, rc = 0
ACA_OVS_L2_Programmer::execute_openflow_command ---> Entering
Executing command: ovs-ofctl add-flow br-tun "table=2,priority=1,dl_dst=01:00:00:00:00:00/01:00:00:00:00:00 actions=resubmit(,22)"
Command succeeded!
 Elapsed time for system command took: 8587 microseconds or 8 milliseconds.
Elapsed time for openflow client call took: 8765 microseconds or 8 milliseconds. rc: 0
ACA_OVS_L2_Programmer::execute_openflow_command <--- Exiting, rc = 0
ACA_OVS_L2_Programmer::execute_openflow_command ---> Entering
Executing command: ovs-ofctl add-flow br-tun "table=20,priority=1 actions=resubmit(,22)"
Command succeeded!
 Elapsed time for system command took: 8918 microseconds or 8 milliseconds.
Elapsed time for openflow client call took: 9069 microseconds or 9 milliseconds. rc: 0
ACA_OVS_L2_Programmer::execute_openflow_command <--- Exiting, rc = 0
ACA_OVS_L2_Programmer::execute_openflow_command ---> Entering
Executing command: ovs-ofctl add-flow br-tun "table=2,priority=25,arp,arp_op=1,in_port="patch-int" actions=resubmit(,51)"
Command succeeded!
 Elapsed time for system command took: 7632 microseconds or 7 milliseconds.
Elapsed time for openflow client call took: 7778 microseconds or 7 milliseconds. rc: 0
ACA_OVS_L2_Programmer::execute_openflow_command <--- Exiting, rc = 0
ACA_OVS_L2_Programmer::execute_openflow_command ---> Entering
Executing command: ovs-ofctl add-flow br-tun "table=51,priority=1 actions=resubmit(,22)"
Command succeeded!
 Elapsed time for system command took: 7738 microseconds or 7 milliseconds.
Elapsed time for openflow client call took: 7890 microseconds or 7 milliseconds. rc: 0
ACA_OVS_L2_Programmer::execute_openflow_command <--- Exiting, rc = 0
ACA_OVS_L2_Programmer::execute_openflow_command ---> Entering
Executing command: ovs-ofctl add-flow br-tun "table=2,priority=25,icmp,icmp_type=8,in_port="patch-int" actions=resubmit(,52)"
Command succeeded!
 Elapsed time for system command took: 8172 microseconds or 8 milliseconds.
Elapsed time for openflow client call took: 8573 microseconds or 8 milliseconds. rc: 0
ACA_OVS_L2_Programmer::execute_openflow_command <--- Exiting, rc = 0
ACA_OVS_L2_Programmer::execute_openflow_command ---> Entering
Executing command: ovs-ofctl add-flow br-tun "table=52,priority=1 actions=resubmit(,20)"
Command succeeded!
 Elapsed time for system command took: 7008 microseconds or 7 milliseconds.
Elapsed time for openflow client call took: 7160 microseconds or 7 milliseconds. rc: 0
ACA_OVS_L2_Programmer::execute_openflow_command <--- Exiting, rc = 0
ACA_OVS_L2_Programmer::execute_ovsdb_command ---> Entering
Executing command: ovs-vsctl --may-exist add-port br-tun vxlan-generic -- set interface vxlan-generic type=vxlan options:df_default=true options:egress_pkt_mark=0 options:in_key=flow options:out_key=flow options:remote_ip=flow
Command succeeded!
 Elapsed time for system command took: 15299 microseconds or 15 milliseconds.
Elapsed time for ovsdb client call took: 15403 microseconds or 15 milliseconds. rc: 0
ACA_OVS_L2_Programmer::execute_ovsdb_command <--- Exiting, rc = 0
ACA_OVS_L2_Programmer::execute_openflow_command ---> Entering
Executing command: ovs-ofctl add-flow br-tun "table=0,priority=25,in_port="vxlan-generic" actions=resubmit(,4)"
Command succeeded!
 Elapsed time for system command took: 8000 microseconds or 8 milliseconds.
Elapsed time for openflow client call took: 8095 microseconds or 8 milliseconds. rc: 0
ACA_OVS_L2_Programmer::execute_openflow_command <--- Exiting, rc = 0
ACA_OVS_L2_Programmer::setup_ovs_bridges_if_need <--- Exiting, overall_rc = 0
{"port_response":[{"ip_node":"192.168.20.92","ips_port":[{"ip":"123.0.0.0","vip":""}],"mac_node":"e8:bd:d1:01:77:ec","mac_port":"6c:dd:ee:0:0:0","port_id":"0000000ae-7dec-11d0-a765-00a0c9341120","vpc_id":"3dda2801-d675-4688-a63f-dcda8d327f61"},{"ip_node":"192.168.20.93","ips_port":[{"ip":"123.0.0.1","vip":""}],"mac_node":"e8:bd:d1:01:72:c8","mac_port":"6c:dd:ee:0:0:1","port_id":"0000001ae-7dec-11d0-a765-00a0c9341120","vpc_id":"3dda2801-d675-4688-a63f-dcda8d327f61"},{"ip_node":"192.168.20.92","ips_port":[{"ip":"123.0.0.2","vip":""}],"mac_node":"e8:bd:d1:01:77:ec","mac_port":"6c:dd:ee:0:0:2","port_id":"0000002ae-7dec-11d0-a765-00a0c9341120","vpc_id":"3dda2801-d675-4688-a63f-dcda8d327f61"},{"ip_node":"192.168.20.93","ips_port":[{"ip":"123.0.0.3","vip":""}],"mac_node":"e8:bd:d1:01:72:c8","mac_port":"6c:dd:ee:0:0:3","port_id":"0000003ae-7dec-11d0-a765-00a0c9341120","vpc_id":"3dda2801-d675-4688-a63f-dcda8d327f61"},{"ip_node":"192.168.20.92","ips_port":[{"ip":"123.0.0.4","vip":""}],"mac_node":"e8:bd:d1:01:77:ec","mac_port":"6c:dd:ee:0:0:4","port_id":"0000004ae-7dec-11d0-a765-00a0c9341120","vpc_id":"3dda2801-d675-4688-a63f-dcda8d327f61"},{"ip_node":"192.168.20.93","ips_port":[{"ip":"123.0.0.5","vip":""}],"mac_node":"e8:bd:d1:01:72:c8","mac_port":"6c:dd:ee:0:0:5","port_id":"0000005ae-7dec-11d0-a765-00a0c9341120","vpc_id":"3dda2801-d675-4688-a63f-dcda8d327f61"},{"ip_node":"192.168.20.92","ips_port":[{"ip":"123.0.0.6","vip":""}],"mac_node":"e8:bd:d1:01:77:ec","mac_port":"6c:dd:ee:0:0:6","port_id":"0000006ae-7dec-11d0-a765-00a0c9341120","vpc_id":"3dda2801-d675-4688-a63f-dcda8d327f61"},{"ip_node":"192.168.20.93","ips_port":[{"ip":"123.0.0.7","vip":""}],"mac_node":"e8:bd:d1:01:72:c8","mac_port":"6c:dd:ee:0:0:7","port_id":"0000007ae-7dec-11d0-a765-00a0c9341120","vpc_id":"3dda2801-d675-4688-a63f-dcda8d327f61"},{"ip_node":"192.168.20.92","ips_port":[{"ip":"123.0.0.8","vip":""}],"mac_node":"e8:bd:d1:01:77:ec","mac_port":"6c:dd:ee:0:0:8","port_id":"0000008ae-7dec-11d0-a765-00a0c9341120","vpc_id":"3dda2801-d675-4688-a63f-dcda8d327f61"},{"ip_node":"192.168.20.93","ips_port":[{"ip":"123.0.0.9","vip":""}],"mac_node":"e8:bd:d1:01:72:c8","mac_port":"6c:dd:ee:0:0:9","port_id":"0000009ae-7dec-11d0-a765-00a0c9341120","vpc_id":"3dda2801-d675-4688-a63f-dcda8d327f61"}],"vpc_response":{"gws":[{"ip":"192.168.20.100","mac":"82:83:c0:a8:14:64"},{"ip":"192.168.20.101","mac":"82:83:c0:a8:14:65"},{"ip":"192.168.20.102","mac":"82:83:c0:a8:14:66"},{"ip":"192.168.20.103","mac":"82:83:c0:a8:14:67"},{"ip":"192.168.20.104","mac":"82:83:c0:a8:14:68"},{"ip":"192.168.20.105","mac":"82:83:c0:a8:14:69"},{"ip":"192.168.20.106","mac":"82:83:c0:a8:14:6a"},{"ip":"192.168.20.107","mac":"82:83:c0:a8:14:6b"},{"ip":"192.168.20.108","mac":"82:83:c0:a8:14:6c"},{"ip":"192.168.20.109","mac":"82:83:c0:a8:14:6d"},{"ip":"192.168.20.110","mac":"82:83:c0:a8:14:6e"},{"ip":"192.168.20.111","mac":"82:83:c0:a8:14:6f"},{"ip":"192.168.20.112","mac":"82:83:c0:a8:14:70"},{"ip":"192.168.20.113","mac":"82:83:c0:a8:14:71"},{"ip":"192.168.20.114","mac":"82:83:c0:a8:14:72"},{"ip":"192.168.20.115","mac":"82:83:c0:a8:14:73"}],"id":1,"port_ibo":"8300","ports":[],"vni":888,"vpc_id":"3dda2801-d675-4688-a63f-dcda8d327f61","zgc_id":"6b713a16-5031-4aa4-8c84-e0776f476578"}}
VPC DATA:
"8300"
888
"3dda2801-d675-4688-a63f-dcda8d327f61"
"6b713a16-5031-4aa4-8c84-e0776f476578"
PORT DATA:
"192.168.20.92"
"6c:dd:ee:0:0:0"
Filling in vni: 888
Filling in vpc_id: "3dda2801-d675-4688-a63f-dcda8d327f61"
Filling in zgc_id: "6b713a16-5031-4aa4-8c84-e0776f476578"
Filling in port_ibo: "8300"
uint in port_ibo: 8300
Try to fill in gw ips/macs now
Filling in: {"ip":"192.168.20.100","mac":"82:83:c0:a8:14:64"}to the destination
Filling in: {"ip":"192.168.20.101","mac":"82:83:c0:a8:14:65"}to the destination
Filling in: {"ip":"192.168.20.102","mac":"82:83:c0:a8:14:66"}to the destination
Filling in: {"ip":"192.168.20.103","mac":"82:83:c0:a8:14:67"}to the destination
Filling in: {"ip":"192.168.20.104","mac":"82:83:c0:a8:14:68"}to the destination
Filling in: {"ip":"192.168.20.105","mac":"82:83:c0:a8:14:69"}to the destination
Filling in: {"ip":"192.168.20.106","mac":"82:83:c0:a8:14:6a"}to the destination
Filling in: {"ip":"192.168.20.107","mac":"82:83:c0:a8:14:6b"}to the destination
Filling in: {"ip":"192.168.20.108","mac":"82:83:c0:a8:14:6c"}to the destination
Filling in: {"ip":"192.168.20.109","mac":"82:83:c0:a8:14:6d"}to the destination
Filling in: {"ip":"192.168.20.110","mac":"82:83:c0:a8:14:6e"}to the destination
Filling in: {"ip":"192.168.20.111","mac":"82:83:c0:a8:14:6f"}to the destination
Filling in: {"ip":"192.168.20.112","mac":"82:83:c0:a8:14:70"}to the destination
Filling in: {"ip":"192.168.20.113","mac":"82:83:c0:a8:14:71"}to the destination
Filling in: {"ip":"192.168.20.114","mac":"82:83:c0:a8:14:72"}to the destination
Filling in: {"ip":"192.168.20.115","mac":"82:83:c0:a8:14:73"}to the destination
Executing command: ifconfig  | grep 192.168.20.92
Command failed!!! rc: 256
 Elapsed time for system command took: 99869 microseconds or 99 milliseconds.
Executing command: ifconfig  | grep 192.168.20.93
Command failed!!! rc: 256
 Elapsed time for system command took: 5137 microseconds or 5 milliseconds.
Executing command: ifconfig  | grep 192.168.20.92
Command failed!!! rc: 256
 Elapsed time for system command took: 5126 microseconds or 5 milliseconds.
Executing command: ifconfig  | grep 192.168.20.93
Command failed!!! rc: 256
 Elapsed time for system command took: 5795 microseconds or 5 milliseconds.
Executing command: ifconfig  | grep 192.168.20.92
Command failed!!! rc: 256
 Elapsed time for system command took: 5139 microseconds or 5 milliseconds.
Executing command: ifconfig  | grep 192.168.20.93
Command failed!!! rc: 256
 Elapsed time for system command took: 4895 microseconds or 4 milliseconds.
Executing command: ifconfig  | grep 192.168.20.92
Command failed!!! rc: 256
 Elapsed time for system command took: 5373 microseconds or 5 milliseconds.
Executing command: ifconfig  | grep 192.168.20.93
Command failed!!! rc: 256
 Elapsed time for system command took: 4506 microseconds or 4 milliseconds.
Executing command: ifconfig  | grep 192.168.20.92
Command failed!!! rc: 256
 Elapsed time for system command took: 4411 microseconds or 4 milliseconds.
Executing command: ifconfig  | grep 192.168.20.93
Command failed!!! rc: 256
 Elapsed time for system command took: 4944 microseconds or 4 milliseconds.
Starting to update goal state with format_version: 0
[METRICS] Goal state message size is: 823 bytes
parsed_struct.vpc_states(0).operation_type(): INFO
current_VpcConfiguration.revision_number(): 0
current_VpcConfiguration.request_id():
current_VpcConfiguration.id(): 3dda2801-d675-4688-a63f-dcda8d327f61
current_VpcConfiguration.update_type(): 0
current_VpcConfiguration.project_id():
current_VpcConfiguration.name():
current_VpcConfiguration.cidr():
current_VpcConfiguration.tunnel_id(): 888
current_auxiliary_gateway.auxgateway_type(): 1
current_auxiliary_gateway.id(): 6b713a16-5031-4aa4-8c84-e0776f476578
current_auxiliary_gateway.destinations(0).ip_address(): 192.168.20.100
current_auxiliary_gateway.destinations(0).mac_address(): 82:83:c0:a8:14:64
current_auxiliary_gateway.destinations(1).ip_address(): 192.168.20.101
current_auxiliary_gateway.destinations(1).mac_address(): 82:83:c0:a8:14:65
current_auxiliary_gateway.destinations(2).ip_address(): 192.168.20.102
current_auxiliary_gateway.destinations(2).mac_address(): 82:83:c0:a8:14:66
current_auxiliary_gateway.destinations(3).ip_address(): 192.168.20.103
current_auxiliary_gateway.destinations(3).mac_address(): 82:83:c0:a8:14:67
current_auxiliary_gateway.destinations(4).ip_address(): 192.168.20.104
current_auxiliary_gateway.destinations(4).mac_address(): 82:83:c0:a8:14:68
current_auxiliary_gateway.destinations(5).ip_address(): 192.168.20.105
current_auxiliary_gateway.destinations(5).mac_address(): 82:83:c0:a8:14:69
current_auxiliary_gateway.destinations(6).ip_address(): 192.168.20.106
current_auxiliary_gateway.destinations(6).mac_address(): 82:83:c0:a8:14:6a
current_auxiliary_gateway.destinations(7).ip_address(): 192.168.20.107
current_auxiliary_gateway.destinations(7).mac_address(): 82:83:c0:a8:14:6b
current_auxiliary_gateway.destinations(8).ip_address(): 192.168.20.108
current_auxiliary_gateway.destinations(8).mac_address(): 82:83:c0:a8:14:6c
current_auxiliary_gateway.destinations(9).ip_address(): 192.168.20.109
current_auxiliary_gateway.destinations(9).mac_address(): 82:83:c0:a8:14:6d
current_auxiliary_gateway.destinations(10).ip_address(): 192.168.20.110
current_auxiliary_gateway.destinations(10).mac_address(): 82:83:c0:a8:14:6e
current_auxiliary_gateway.destinations(11).ip_address(): 192.168.20.111
current_auxiliary_gateway.destinations(11).mac_address(): 82:83:c0:a8:14:6f
current_auxiliary_gateway.destinations(12).ip_address(): 192.168.20.112
current_auxiliary_gateway.destinations(12).mac_address(): 82:83:c0:a8:14:70
current_auxiliary_gateway.destinations(13).ip_address(): 192.168.20.113
current_auxiliary_gateway.destinations(13).mac_address(): 82:83:c0:a8:14:71
current_auxiliary_gateway.destinations(14).ip_address(): 192.168.20.114
current_auxiliary_gateway.destinations(14).mac_address(): 82:83:c0:a8:14:72
current_auxiliary_gateway.destinations(15).ip_address(): 192.168.20.115
current_auxiliary_gateway.destinations(15).mac_address(): 82:83:c0:a8:14:73
current_auxiliary_gateway.zeta_info().port_inband_operation: 8300

parsed_struct.subnet_states(0).operation_type(): INFO
current_SubnetConfiguration.revision_number(): 1
current_SubnetConfiguration.request_id():
current_SubnetConfiguration.id(): 27330ae4-b718-11ea-b3de-111111111111
current_SubnetConfiguration.update_type(): 0
current_SubnetConfiguration.network_type(): 0
current_SubnetConfiguration.vpc_id(): 3dda2801-d675-4688-a63f-dcda8d327f61
current_SubnetConfiguration.name():
current_SubnetConfiguration.cidr(): 10.10.0.0/16
current_SubnetConfiguration.tunnel_id(): 888
current_SubnetConfiguration.gateway().ip_address(): 10.10.0.1
current_SubnetConfiguration.gateway().mac_address(): fa:16:3e:d7:f2:11
current_SubnetConfiguration.dhcp_enable(): 0
current_SubnetConfiguration.availability_zone():

DHCP State Handler: using dhcp server
ACA_OVS_L2_Programmer::execute_openflow_command ---> Entering
Executing command: ovs-ofctl add-flow br-int "table=0,priority=25,udp,udp_src=68,udp_dst=67,actions=CONTROLLER"
Command succeeded!
 Elapsed time for system command took: 8885 microseconds or 8 milliseconds.
Elapsed time for openflow client call took: 9095 microseconds or 9 milliseconds. rc: 0
ACA_OVS_L2_Programmer::execute_openflow_command <--- Exiting, rc = 0
[METRICS] Elapsed time for message total operation took: 10184 microseconds or 10 milliseconds
[       OK ] zeta_programming_test_cases.DISABLED_zeta_scale_PARENT (1145 ms)
[----------] 1 test from zeta_programming_test_cases (1145 ms total)

[----------] Global test environment tear-down
[==========] 1 test from 1 test suite ran. (1145 ms total)
[  PASSED  ] 1 test.
g_total_execute_system_time = 1134936 microseconds or 1134 milliseconds
g_total_execute_ovsdb_time = 523326 microseconds or 523 milliseconds
g_total_execute_openflow_time = 469260 microseconds or 469 milliseconds
g_total_vpcs_table_mutex_time = 0 microseconds or 0 milliseconds
g_total_update_GS_time = 10184 microseconds or 10 milliseconds
Program exiting, cleaning up...
ACA_OVS_L2_Programmer::execute_openflow_command ---> Entering
Executing command: ovs-ofctl del-flows br-int "udp,udp_src=68,udp_dst=67"
Command succeeded!
 Elapsed time for system command took: 8700 microseconds or 8 milliseconds.
Elapsed time for openflow client call took: 8851 microseconds or 8 milliseconds. rc: 0
ACA_OVS_L2_Programmer::execute_openflow_command <--- Exiting, rc = 0

@er1cthe0ne
Copy link
Contributor

I was able to repro both the success case and also error case that @zzxgzgz saw in my container setup. @zhangml - can you run it more times like 10 times to see if you can reproduce the error?

@zhangml
Copy link
Contributor Author

zhangml commented Jan 6, 2021

I was able to repro both the success case and also error case that @zzxgzgz saw in my container setup. @zhangml - can you run it more times like 10 times to see if you can reproduce the error?

I ran it 10 times and the result was the same. But unlike Rio, the aca_data.json I used is copied directly from the comments, and the code I used for testing is my latest PR.

@er1cthe0ne
Copy link
Contributor

I ran it 10 times and the result was the same. But unlike Rio, the aca_data.json I used is copied directly from the comments, and the code I used for testing is my latest PR.

Interesting, I also used the aca_data.json copied from the comments and also use the latest code in this PR.

Next step, please go ahead to rebased with the official master, there is more comments in the add_flow code which may help. And then we will run the test again on both sides.

@zzxgzgz
Copy link
Contributor

zzxgzgz commented Jan 6, 2021

@zhangml

Thanks you for testing, I think there are something not right in my environment.

Copy link
Contributor

@er1cthe0ne er1cthe0ne left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking good now. Let's go ahead to merge this in now and continue with integration testing with Zeta.

@er1cthe0ne er1cthe0ne merged commit 404cc8b into futurewei-cloud:master Jan 6, 2021
@zhangml zhangml deleted the integration branch January 27, 2021 13:13
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Zeta Integration with Zeta
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants