Merge branch 'master' of gitlab.ethz.ch:nicosc/master-thesis
This commit is contained in:
commit
c06649304b
18 changed files with 62106 additions and 21 deletions
123
doc/plan.org
123
doc/plan.org
|
@ -7208,7 +7208,8 @@ IOError: [Errno 2] No such file or directory: '/home/nico/projects/P4-NetFPGA/co
|
||||||
nico@nsg-System:~/master-thesis/netpfga/minip4/sw/CLI$
|
nico@nsg-System:~/master-thesis/netpfga/minip4/sw/CLI$
|
||||||
|
|
||||||
#+END_CENTER
|
#+END_CENTER
|
||||||
*** TODO 2019-07-28: setting ipv6 neighbor entries
|
*** DONE 2019-07-28: setting ipv6 neighbor entries
|
||||||
|
CLOSED: [2019-07-28 Sun 13:07]
|
||||||
#+BEGIN_CENTER
|
#+BEGIN_CENTER
|
||||||
|
|
||||||
nico@ESPRIMO-P956:~/master-thesis$ ./netpfga/set_ipv6_neighbour.sh
|
nico@ESPRIMO-P956:~/master-thesis$ ./netpfga/set_ipv6_neighbour.sh
|
||||||
|
@ -7263,7 +7264,125 @@ success
|
||||||
|
|
||||||
#+END_CENTER
|
#+END_CENTER
|
||||||
|
|
||||||
*** TODO 2019-07-28: ping6 test for getting packet: failure
|
*** DONE 2019-07-28: ping6 test for getting packet: failure
|
||||||
|
CLOSED: [2019-07-28 Sun 12:43]
|
||||||
|
|
||||||
|
*** DONE 2019-07-28: !!!!!!! NETPFGA PORT MAPPINGS
|
||||||
|
CLOSED: [2019-07-28 Sun 13:07]
|
||||||
|
nf_port_map = {
|
||||||
|
"nf0":0b00000001,
|
||||||
|
"nf1":0b00000100,
|
||||||
|
"nf2":0b00010000,
|
||||||
|
"nf3":0b01000000,
|
||||||
|
"dma0":0b00000010
|
||||||
|
}
|
||||||
|
|
||||||
|
| port 0 | 1 | likely: esprimo enp2s0f0 | |
|
||||||
|
| port 1 | 4 | likely: esprimo enp2s0f1 | |
|
||||||
|
| port 2 | 16 | not connected likely | |
|
||||||
|
| port 3 | 64 | eth1 @ nsg | PROBALY NOT, probably 1! |
|
||||||
|
| | | | |
|
||||||
|
|
||||||
|
*** DONE 2019-07-28: testing with port = 64 (first or last in theory): LAST! WORKS!
|
||||||
|
CLOSED: [2019-07-28 Sun 13:19]
|
||||||
|
#+BEGIN_CENTER
|
||||||
|
>> table_cam_add_entry realmain_v6_networks_0 realmain.set_egress_port 42540766411362381960998550477184434276 => 1 64 64 0 0
|
||||||
|
fields = [(u'hit', 1), (u'action_run', 3), (u'out_port', 8), (u'out_port', 8), (u'mac_addr', 48), (u'task', 16), (u'table_id', 16)]
|
||||||
|
action_name = TopPipe.realmain.set_egress_port
|
||||||
|
field_vals = [1, '1', '64', '64', '0', '0']
|
||||||
|
CAM_Init_ValidateContext() - done
|
||||||
|
WROTE 0x44020150 = 0x0064
|
||||||
|
WROTE 0x44020154 = 0x0000
|
||||||
|
WROTE 0x44020158 = 0x420000
|
||||||
|
WROTE 0x4402015c = 0x20010db8
|
||||||
|
WROTE 0x44020180 = 0x0000
|
||||||
|
WROTE 0x44020184 = 0x0040
|
||||||
|
WROTE 0x44020188 = 0x1400000
|
||||||
|
WROTE 0x4402018c = 0x0001
|
||||||
|
READ 0x44020144 = 0x0001
|
||||||
|
WROTE 0x44020140 = 0x0001
|
||||||
|
READ 0x44020144 = 0x0001
|
||||||
|
READ 0x44020144 = 0x0001
|
||||||
|
success
|
||||||
|
|
||||||
|
#+END_CENTER
|
||||||
|
|
||||||
|
*** TODO 2019-07-28: and another bug in the table code: invalid literal for int() with base 0:
|
||||||
|
|
||||||
|
#+BEGIN_CENTER
|
||||||
|
>> table_cam_delete_entry realmain_v6_networks_0 42540766411362381960998550477184434180
|
||||||
|
ERROR: failed to convert of type <type 'str'> to an integer: invalid literal for int() with base 0: ''
|
||||||
|
nico@nsg-System:~/master-thesis/netpfga/minip4/sw/CLI$
|
||||||
|
|
||||||
|
#+END_CENTER
|
||||||
|
|
||||||
|
*** DONE 2019-07-28: try pinging nsg <-> esprimo: reply is being created, not received
|
||||||
|
CLOSED: [2019-07-28 Sun 13:32]
|
||||||
|
- reply seems to come back, too => wrong out port?
|
||||||
|
#+BEGIN_CENTER
|
||||||
|
nico@ESPRIMO-P956:~/master-thesis/netpfga$ sudo ip -6 neighbor add 2001:db8:42::64 lladdr f8:f2:1e:41:44:9c dev enp2s0f1
|
||||||
|
⚡ root root ip -6 neighbor add 2001:db8:42::42 lladdr f8:f2:1e:09:62:d1 dev eth1
|
||||||
|
|
||||||
|
|
||||||
|
13:27:21.387690 IP6 2001:db8:42::42 > 2001:db8:42::64: ICMP6, echo request, seq 1, length 64
|
||||||
|
13:27:21.387721 IP6 2001:db8:42::64 > 2001:db8:42::42: ICMP6, echo reply, seq 1, length 64
|
||||||
|
13:27:21.387741 IP6 2001:db8:42::64 > 2001:db8:42::42: ICMP6, echo reply, seq 1, length 64
|
||||||
|
13:27:22.404759 IP6 2001:db8:42::42 > 2001:db8:42::64: ICMP6, echo request, seq 2, length 64
|
||||||
|
13:27:22.404788 IP6 2001:db8:42::64 > 2001:db8:42::42: ICMP6, echo reply, seq 2, length 64
|
||||||
|
13:27:22.404807 IP6 2001:db8:42::64 > 2001:db8:42::42: ICMP6, echo reply, seq 2, length 64
|
||||||
|
|
||||||
|
#+END_CENTER
|
||||||
|
|
||||||
|
*** TODO 2019-07-28: try setting correct out port for 42: seems all go to port3
|
||||||
|
- solution: lookup table still in place!!!!
|
||||||
|
|
||||||
|
#+BEGIN_CENTER
|
||||||
|
>> table_cam_add_entry realmain_v6_networks_0 realmain.set_egress_port 42540766411362381960998550477184434242 => 4 4 4 0 0
|
||||||
|
fields = [(u'hit', 1), (u'action_run', 3), (u'out_port', 8), (u'out_port', 8), (u'mac_addr', 48), (u'task', 16), (u'table_id', 16)]
|
||||||
|
action_name = TopPipe.realmain.set_egress_port
|
||||||
|
field_vals = [1, '4', '4', '4', '0', '0']
|
||||||
|
CAM_Init_ValidateContext() - done
|
||||||
|
WROTE 0x44020150 = 0x0042
|
||||||
|
WROTE 0x44020154 = 0x0000
|
||||||
|
WROTE 0x44020158 = 0x420000
|
||||||
|
WROTE 0x4402015c = 0x20010db8
|
||||||
|
WROTE 0x44020180 = 0x0000
|
||||||
|
WROTE 0x44020184 = 0x0004
|
||||||
|
WROTE 0x44020188 = 0x4040000
|
||||||
|
WROTE 0x4402018c = 0x0001
|
||||||
|
READ 0x44020144 = 0x0001
|
||||||
|
WROTE 0x44020140 = 0x0001
|
||||||
|
READ 0x44020144 = 0x0001
|
||||||
|
READ 0x44020144 = 0x0001
|
||||||
|
success
|
||||||
|
>>
|
||||||
|
|
||||||
|
#+END_CENTER
|
||||||
|
|
||||||
|
Rewriting/adding:
|
||||||
|
|
||||||
|
#+BEGIN_CENTER
|
||||||
|
>> table_cam_add_entry realmain_v6_networks_0 realmain.set_egress_port 42540766411362381960998550477184434242 => 4 4 4 4 4
|
||||||
|
fields = [(u'hit', 1), (u'action_run', 3), (u'out_port', 8), (u'out_port', 8), (u'mac_addr', 48), (u'task', 16), (u'table_id', 16)]
|
||||||
|
action_name = TopPipe.realmain.set_egress_port
|
||||||
|
field_vals = [1, '4', '4', '4', '4', '4']
|
||||||
|
CAM_Init_ValidateContext() - done
|
||||||
|
WROTE 0x44020150 = 0x0042
|
||||||
|
WROTE 0x44020154 = 0x0000
|
||||||
|
WROTE 0x44020158 = 0x420000
|
||||||
|
WROTE 0x4402015c = 0x20010db8
|
||||||
|
WROTE 0x44020180 = 0x40004
|
||||||
|
WROTE 0x44020184 = 0x0004
|
||||||
|
WROTE 0x44020188 = 0x4040000
|
||||||
|
WROTE 0x4402018c = 0x0001
|
||||||
|
READ 0x44020144 = 0x0001
|
||||||
|
WROTE 0x44020140 = 0x0001
|
||||||
|
READ 0x44020144 = 0x0001
|
||||||
|
READ 0x44020144 = 0x0001
|
||||||
|
success
|
||||||
|
>>
|
||||||
|
|
||||||
|
#+END_CENTER
|
||||||
|
|
||||||
** The NetPFGA saga
|
** The NetPFGA saga
|
||||||
Problems encountered:
|
Problems encountered:
|
||||||
|
|
1
netpfga/delete_ipv6_neighbor.sh
Normal file
1
netpfga/delete_ipv6_neighbor.sh
Normal file
|
@ -0,0 +1 @@
|
||||||
|
sudo ip -6 neigh del 2001:db8:42::64 dev enp2s0f1
|
17
netpfga/delete_table_entries.sh
Executable file
17
netpfga/delete_table_entries.sh
Executable file
|
@ -0,0 +1,17 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
set -x
|
||||||
|
|
||||||
|
read=yes
|
||||||
|
if [ $# -ge 1 ]; then
|
||||||
|
read=""
|
||||||
|
fi
|
||||||
|
|
||||||
|
for addr in $(seq 1 64); do
|
||||||
|
ip=2001:db8:42::$addr
|
||||||
|
echo "Next to ping: ${ip}"
|
||||||
|
if [ "$read" ]; then
|
||||||
|
read dummy
|
||||||
|
fi
|
||||||
|
ping6 -c1 "$ip"
|
||||||
|
done
|
34175
netpfga/log/compile-2019-07-25-202647-plus-ipv4-6.6
Normal file
34175
netpfga/log/compile-2019-07-25-202647-plus-ipv4-6.6
Normal file
File diff suppressed because one or more lines are too long
27
netpfga/log/compile-2019-07-27-213747-6.7-commandstxt
Normal file
27
netpfga/log/compile-2019-07-27-213747-6.7-commandstxt
Normal file
File diff suppressed because one or more lines are too long
27
netpfga/log/compile-2019-07-27-213823-6.7-commandstxt
Normal file
27
netpfga/log/compile-2019-07-27-213823-6.7-commandstxt
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
+ date
|
||||||
|
Sam Jul 27 21:38:23 CEST 2019
|
||||||
|
+ cd /home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4
|
||||||
|
+ make
|
||||||
|
make -C src/ clean
|
||||||
|
make[1]: Entering directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/src'
|
||||||
|
rm -f *.sdnet *.tbl .sdnet_switch_info.dat
|
||||||
|
make[1]: Leaving directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/src'
|
||||||
|
make -C testdata/ clean
|
||||||
|
make[1]: Entering directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/testdata'
|
||||||
|
rm -f *.pcap *.txt *.pyc *.axi config_writes.* *_reg_defines.py
|
||||||
|
make[1]: Leaving directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/testdata'
|
||||||
|
rm -rf nf_sume_sdnet_ip/
|
||||||
|
rm -f
|
||||||
|
rm -f sw/config_tables.c
|
||||||
|
make -C src/
|
||||||
|
make[1]: Entering directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/src'
|
||||||
|
p4c-sdnet -o minip4.sdnet --sdnet_info .sdnet_switch_info.dat minip4_solution.p4
|
||||||
|
minip4_solution.p4(157):syntax error, unexpected INTEGER, expecting { or CONST
|
||||||
|
1
|
||||||
|
^
|
||||||
|
error: 1 errors encountered, aborting compilation
|
||||||
|
Makefile:34: recipe for target 'all' failed
|
||||||
|
make[1]: *** [all] Error 1
|
||||||
|
make[1]: Leaving directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/src'
|
||||||
|
Makefile:31: recipe for target 'frontend' failed
|
||||||
|
make: *** [frontend] Error 2
|
35
netpfga/log/compile-2019-07-27-213829-6.7-commandstxt
Normal file
35
netpfga/log/compile-2019-07-27-213829-6.7-commandstxt
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
+ date
|
||||||
|
Sam Jul 27 21:38:29 CEST 2019
|
||||||
|
+ cd /home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4
|
||||||
|
+ make
|
||||||
|
make -C src/ clean
|
||||||
|
make[1]: Entering directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/src'
|
||||||
|
rm -f *.sdnet *.tbl .sdnet_switch_info.dat
|
||||||
|
make[1]: Leaving directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/src'
|
||||||
|
make -C testdata/ clean
|
||||||
|
make[1]: Entering directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/testdata'
|
||||||
|
rm -f *.pcap *.txt *.pyc *.axi config_writes.* *_reg_defines.py
|
||||||
|
make[1]: Leaving directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/testdata'
|
||||||
|
rm -rf nf_sume_sdnet_ip/
|
||||||
|
rm -f
|
||||||
|
rm -f sw/config_tables.c
|
||||||
|
make -C src/
|
||||||
|
make[1]: Entering directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/src'
|
||||||
|
p4c-sdnet -o minip4.sdnet --sdnet_info .sdnet_switch_info.dat minip4_solution.p4
|
||||||
|
minip4_solution.p4(19): [--Wwarn=uninitialized_out_param] warning: out parameter meta may be uninitialized when RealParser terminates
|
||||||
|
out metadata meta,
|
||||||
|
^^^^
|
||||||
|
minip4_solution.p4(16)
|
||||||
|
parser RealParser(
|
||||||
|
^^^^^^^^^^
|
||||||
|
/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/bin/p4_px_tables.py commands.txt .sdnet_switch_info.dat
|
||||||
|
ERROR: not enough fields provided to complete _hexify()
|
||||||
|
fields = [(u'hit', 1), (u'action_run', 3), (u'out_port', 8), (u'out_port', 8), (u'mac_addr', 48), (u'task', 16), (u'table_id', 16)]
|
||||||
|
action_name = TopPipe.realmain.set_egress_port
|
||||||
|
field_vals = [1, '1']
|
||||||
|
fv [1, '1'] 2 fs [3, 8, 8, 48, 16, 16] 6
|
||||||
|
Makefile:34: recipe for target 'all' failed
|
||||||
|
make[1]: *** [all] Error 1
|
||||||
|
make[1]: Leaving directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/src'
|
||||||
|
Makefile:31: recipe for target 'frontend' failed
|
||||||
|
make: *** [frontend] Error 2
|
31
netpfga/log/compile-2019-07-27-213909-6.7-commandstxt
Normal file
31
netpfga/log/compile-2019-07-27-213909-6.7-commandstxt
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
+ date
|
||||||
|
Sam Jul 27 21:39:09 CEST 2019
|
||||||
|
+ cd /home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4
|
||||||
|
+ make
|
||||||
|
make -C src/ clean
|
||||||
|
make[1]: Entering directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/src'
|
||||||
|
rm -f *.sdnet *.tbl .sdnet_switch_info.dat
|
||||||
|
make[1]: Leaving directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/src'
|
||||||
|
make -C testdata/ clean
|
||||||
|
make[1]: Entering directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/testdata'
|
||||||
|
rm -f *.pcap *.txt *.pyc *.axi config_writes.* *_reg_defines.py
|
||||||
|
make[1]: Leaving directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/testdata'
|
||||||
|
rm -rf nf_sume_sdnet_ip/
|
||||||
|
rm -f
|
||||||
|
rm -f sw/config_tables.c
|
||||||
|
make -C src/
|
||||||
|
make[1]: Entering directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/src'
|
||||||
|
p4c-sdnet -o minip4.sdnet --sdnet_info .sdnet_switch_info.dat minip4_solution.p4
|
||||||
|
minip4_solution.p4(19): [--Wwarn=uninitialized_out_param] warning: out parameter meta may be uninitialized when RealParser terminates
|
||||||
|
out metadata meta,
|
||||||
|
^^^^
|
||||||
|
minip4_solution.p4(16)
|
||||||
|
parser RealParser(
|
||||||
|
^^^^^^^^^^
|
||||||
|
/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/bin/p4_px_tables.py commands.txt .sdnet_switch_info.dat
|
||||||
|
ERROR: dummy_table_for_netpfga is not a recognized table name
|
||||||
|
Makefile:34: recipe for target 'all' failed
|
||||||
|
make[1]: *** [all] Error 1
|
||||||
|
make[1]: Leaving directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/src'
|
||||||
|
Makefile:31: recipe for target 'frontend' failed
|
||||||
|
make: *** [frontend] Error 2
|
44
netpfga/log/compile-2019-07-28-121759-6.8-egress-only
Normal file
44
netpfga/log/compile-2019-07-28-121759-6.8-egress-only
Normal file
|
@ -0,0 +1,44 @@
|
||||||
|
+ date
|
||||||
|
Son Jul 28 12:17:59 CEST 2019
|
||||||
|
+ cd /home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4
|
||||||
|
+ make
|
||||||
|
make -C src/ clean
|
||||||
|
make[1]: Entering directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/src'
|
||||||
|
rm -f *.sdnet *.tbl .sdnet_switch_info.dat
|
||||||
|
make[1]: Leaving directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/src'
|
||||||
|
make -C testdata/ clean
|
||||||
|
make[1]: Entering directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/testdata'
|
||||||
|
rm -f *.pcap *.txt *.pyc *.axi config_writes.* *_reg_defines.py
|
||||||
|
make[1]: Leaving directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/testdata'
|
||||||
|
rm -rf nf_sume_sdnet_ip/
|
||||||
|
rm -f
|
||||||
|
rm -f sw/config_tables.c
|
||||||
|
make -C src/
|
||||||
|
make[1]: Entering directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/src'
|
||||||
|
p4c-sdnet -o minip4.sdnet --sdnet_info .sdnet_switch_info.dat minip4_solution.p4
|
||||||
|
actions_nat64_generic.p4(159): warning: Table nat64 is not used; removing
|
||||||
|
table nat64 {
|
||||||
|
^^^^^
|
||||||
|
actions_nat64_generic.p4(178): warning: Table nat46 is not used; removing
|
||||||
|
table nat46 {
|
||||||
|
^^^^^
|
||||||
|
minip4_solution.p4(91): warning: Table lookup_table is not used; removing
|
||||||
|
table lookup_table {
|
||||||
|
^^^^^^^^^^^^
|
||||||
|
minip4_solution.p4(19): [--Wwarn=uninitialized_out_param] warning: out parameter meta may be uninitialized when RealParser terminates
|
||||||
|
out metadata meta,
|
||||||
|
^^^^
|
||||||
|
minip4_solution.p4(16)
|
||||||
|
parser RealParser(
|
||||||
|
^^^^^^^^^^
|
||||||
|
/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/bin/p4_px_tables.py commands.txt .sdnet_switch_info.dat
|
||||||
|
ERROR: not enough fields provided to complete _hexify()
|
||||||
|
fields = [(u'hit', 1), (u'action_run', 3), (u'out_port', 8), (u'out_port', 8), (u'mac_addr', 48), (u'task', 16), (u'table_id', 16)]
|
||||||
|
action_name = TopPipe.realmain.set_egress_port
|
||||||
|
field_vals = [1, '1']
|
||||||
|
fv [1, '1'] 2 fs [3, 8, 8, 48, 16, 16] 6
|
||||||
|
Makefile:34: recipe for target 'all' failed
|
||||||
|
make[1]: *** [all] Error 1
|
||||||
|
make[1]: Leaving directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/src'
|
||||||
|
Makefile:31: recipe for target 'frontend' failed
|
||||||
|
make: *** [frontend] Error 2
|
44
netpfga/log/compile-2019-07-28-121904-6.8-egress-only
Normal file
44
netpfga/log/compile-2019-07-28-121904-6.8-egress-only
Normal file
|
@ -0,0 +1,44 @@
|
||||||
|
+ date
|
||||||
|
Son Jul 28 12:19:04 CEST 2019
|
||||||
|
+ cd /home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4
|
||||||
|
+ make
|
||||||
|
make -C src/ clean
|
||||||
|
make[1]: Entering directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/src'
|
||||||
|
rm -f *.sdnet *.tbl .sdnet_switch_info.dat
|
||||||
|
make[1]: Leaving directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/src'
|
||||||
|
make -C testdata/ clean
|
||||||
|
make[1]: Entering directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/testdata'
|
||||||
|
rm -f *.pcap *.txt *.pyc *.axi config_writes.* *_reg_defines.py
|
||||||
|
make[1]: Leaving directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/testdata'
|
||||||
|
rm -rf nf_sume_sdnet_ip/
|
||||||
|
rm -f
|
||||||
|
rm -f sw/config_tables.c
|
||||||
|
make -C src/
|
||||||
|
make[1]: Entering directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/src'
|
||||||
|
p4c-sdnet -o minip4.sdnet --sdnet_info .sdnet_switch_info.dat minip4_solution.p4
|
||||||
|
actions_nat64_generic.p4(159): warning: Table nat64 is not used; removing
|
||||||
|
table nat64 {
|
||||||
|
^^^^^
|
||||||
|
actions_nat64_generic.p4(178): warning: Table nat46 is not used; removing
|
||||||
|
table nat46 {
|
||||||
|
^^^^^
|
||||||
|
minip4_solution.p4(91): warning: Table lookup_table is not used; removing
|
||||||
|
table lookup_table {
|
||||||
|
^^^^^^^^^^^^
|
||||||
|
minip4_solution.p4(19): [--Wwarn=uninitialized_out_param] warning: out parameter meta may be uninitialized when RealParser terminates
|
||||||
|
out metadata meta,
|
||||||
|
^^^^
|
||||||
|
minip4_solution.p4(16)
|
||||||
|
parser RealParser(
|
||||||
|
^^^^^^^^^^
|
||||||
|
/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/bin/p4_px_tables.py commands.txt .sdnet_switch_info.dat
|
||||||
|
ERROR: not enough fields provided to complete _hexify()
|
||||||
|
fields = [(u'hit', 1), (u'action_run', 3), (u'out_port', 8), (u'out_port', 8), (u'mac_addr', 48), (u'task', 16), (u'table_id', 16)]
|
||||||
|
action_name = TopPipe.realmain.set_egress_port
|
||||||
|
field_vals = [1, '1']
|
||||||
|
fv [1, '1'] 2 fs [3, 8, 8, 48, 16, 16] 6
|
||||||
|
Makefile:34: recipe for target 'all' failed
|
||||||
|
make[1]: *** [all] Error 1
|
||||||
|
make[1]: Leaving directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/src'
|
||||||
|
Makefile:31: recipe for target 'frontend' failed
|
||||||
|
make: *** [frontend] Error 2
|
47
netpfga/log/compile-2019-07-28-121929-6.8-egress-only
Normal file
47
netpfga/log/compile-2019-07-28-121929-6.8-egress-only
Normal file
|
@ -0,0 +1,47 @@
|
||||||
|
+ date
|
||||||
|
Son Jul 28 12:19:29 CEST 2019
|
||||||
|
+ cd /home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4
|
||||||
|
+ make
|
||||||
|
make -C src/ clean
|
||||||
|
make[1]: Entering directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/src'
|
||||||
|
rm -f *.sdnet *.tbl .sdnet_switch_info.dat
|
||||||
|
make[1]: Leaving directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/src'
|
||||||
|
make -C testdata/ clean
|
||||||
|
make[1]: Entering directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/testdata'
|
||||||
|
rm -f *.pcap *.txt *.pyc *.axi config_writes.* *_reg_defines.py
|
||||||
|
make[1]: Leaving directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/testdata'
|
||||||
|
rm -rf nf_sume_sdnet_ip/
|
||||||
|
rm -f
|
||||||
|
rm -f sw/config_tables.c
|
||||||
|
make -C src/
|
||||||
|
make[1]: Entering directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/src'
|
||||||
|
p4c-sdnet -o minip4.sdnet --sdnet_info .sdnet_switch_info.dat minip4_solution.p4
|
||||||
|
actions_nat64_generic.p4(159): warning: Table nat64 is not used; removing
|
||||||
|
table nat64 {
|
||||||
|
^^^^^
|
||||||
|
actions_nat64_generic.p4(178): warning: Table nat46 is not used; removing
|
||||||
|
table nat46 {
|
||||||
|
^^^^^
|
||||||
|
minip4_solution.p4(91): warning: Table lookup_table is not used; removing
|
||||||
|
table lookup_table {
|
||||||
|
^^^^^^^^^^^^
|
||||||
|
minip4_solution.p4(19): [--Wwarn=uninitialized_out_param] warning: out parameter meta may be uninitialized when RealParser terminates
|
||||||
|
out metadata meta,
|
||||||
|
^^^^
|
||||||
|
minip4_solution.p4(16)
|
||||||
|
parser RealParser(
|
||||||
|
^^^^^^^^^^
|
||||||
|
/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/bin/p4_px_tables.py commands.txt .sdnet_switch_info.dat
|
||||||
|
Traceback (most recent call last):
|
||||||
|
File "/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/bin/p4_px_tables.py", line 445, in <module>
|
||||||
|
main()
|
||||||
|
File "/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/bin/p4_px_tables.py", line 441, in main
|
||||||
|
fill_px_tables(args.commands_file)
|
||||||
|
File "/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/bin/p4_px_tables.py", line 416, in fill_px_tables
|
||||||
|
with open(commands_file) as f:
|
||||||
|
IOError: [Errno 2] No such file or directory: 'commands.txt'
|
||||||
|
Makefile:34: recipe for target 'all' failed
|
||||||
|
make[1]: *** [all] Error 1
|
||||||
|
make[1]: Leaving directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/src'
|
||||||
|
Makefile:31: recipe for target 'frontend' failed
|
||||||
|
make: *** [frontend] Error 2
|
1324
netpfga/log/compile-2019-07-28-121947-6.8-egress-only
Normal file
1324
netpfga/log/compile-2019-07-28-121947-6.8-egress-only
Normal file
File diff suppressed because it is too large
Load diff
26189
netpfga/log/compile-2019-07-28-122845-6.8-egress-only
Normal file
26189
netpfga/log/compile-2019-07-28-122845-6.8-egress-only
Normal file
File diff suppressed because it is too large
Load diff
|
@ -32,7 +32,7 @@ nf_port_map = {
|
||||||
"nf3":0b01000000,
|
"nf3":0b01000000,
|
||||||
"dma0":0b00000010
|
"dma0":0b00000010
|
||||||
}
|
}
|
||||||
|
n
|
||||||
nf_id_map = {
|
nf_id_map = {
|
||||||
"nf0":0,
|
"nf0":0,
|
||||||
"nf1":1,
|
"nf1":1,
|
||||||
|
|
|
@ -32,7 +32,7 @@ action controller_reply(task_t task) {
|
||||||
action controller_reply(task_t task) {
|
action controller_reply(task_t task) {
|
||||||
meta.task = task;
|
meta.task = task;
|
||||||
meta.ingress_port = sume_metadata.src_port;
|
meta.ingress_port = sume_metadata.src_port;
|
||||||
set_egress_port(4); /* port1 = 1, port2 = 2, port3=4 */
|
set_egress_port(1);
|
||||||
}
|
}
|
||||||
#endif /* _SUME_SWITCH_P4_ */
|
#endif /* _SUME_SWITCH_P4_ */
|
||||||
|
|
||||||
|
|
|
@ -88,21 +88,6 @@ control RealMain(
|
||||||
mac_addr_t temp = hdr.ethernet.dst_addr;
|
mac_addr_t temp = hdr.ethernet.dst_addr;
|
||||||
}
|
}
|
||||||
|
|
||||||
table lookup_table {
|
|
||||||
key = {
|
|
||||||
hdr.ethernet.dst_addr: exact;
|
|
||||||
}
|
|
||||||
|
|
||||||
actions = {
|
|
||||||
swap_eth_addresses;
|
|
||||||
do_nothing;
|
|
||||||
send_to_port1;
|
|
||||||
send_to_all_ports;
|
|
||||||
}
|
|
||||||
size = 64;
|
|
||||||
default_action = send_to_port1; // test_port1()
|
|
||||||
}
|
|
||||||
|
|
||||||
apply {
|
apply {
|
||||||
bit<17> tmp17 = 0;
|
bit<17> tmp17 = 0;
|
||||||
bool apply_v4networks = true;
|
bool apply_v4networks = true;
|
||||||
|
|
|
@ -57,5 +57,3 @@
|
||||||
if(apply_v6networks == true) {
|
if(apply_v6networks == true) {
|
||||||
v6_networks.apply();
|
v6_networks.apply();
|
||||||
}
|
}
|
||||||
|
|
||||||
lookup_table.apply();
|
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
// only used on netpfga for dummy packet reply
|
// only used on netpfga for dummy packet reply
|
||||||
|
|
||||||
//table_cam_add_entry dummy_table_for_netpfga send_to_port1 0x082222222208 => 0x1
|
//table_cam_add_entry dummy_table_for_netpfga send_to_port1 0x082222222208 => 0x1
|
||||||
|
// likely wrong!
|
||||||
|
|
||||||
table_cam_add_entry realmain_v6_networks_0 realmain.set_egress_port 42540766411362381960998550477184434177 => 1 0 0 0 0
|
table_cam_add_entry realmain_v6_networks_0 realmain.set_egress_port 42540766411362381960998550477184434177 => 1 0 0 0 0
|
||||||
table_cam_add_entry realmain_v6_networks_0 realmain.set_egress_port 42540766411362381960998550477184434178 => 2 0 0 0 0
|
table_cam_add_entry realmain_v6_networks_0 realmain.set_egress_port 42540766411362381960998550477184434178 => 2 0 0 0 0
|
||||||
table_cam_add_entry realmain_v6_networks_0 realmain.set_egress_port 42540766411362381960998550477184434179 => 3 0 0 0 0
|
table_cam_add_entry realmain_v6_networks_0 realmain.set_egress_port 42540766411362381960998550477184434179 => 3 0 0 0 0
|
||||||
|
@ -9,3 +11,23 @@ table_cam_add_entry realmain_v6_networks_0 realmain.set_egress_port 425407664113
|
||||||
table_cam_add_entry realmain_v6_networks_0 realmain.set_egress_port 42540766411362381960998550477184434182 => 6 0 0 0 0
|
table_cam_add_entry realmain_v6_networks_0 realmain.set_egress_port 42540766411362381960998550477184434182 => 6 0 0 0 0
|
||||||
table_cam_add_entry realmain_v6_networks_0 realmain.set_egress_port 42540766411362381960998550477184434183 => 7 0 0 0 0
|
table_cam_add_entry realmain_v6_networks_0 realmain.set_egress_port 42540766411362381960998550477184434183 => 7 0 0 0 0
|
||||||
table_cam_add_entry realmain_v6_networks_0 realmain.set_egress_port 42540766411362381960998550477184434184 => 8 0 0 0 0
|
table_cam_add_entry realmain_v6_networks_0 realmain.set_egress_port 42540766411362381960998550477184434184 => 8 0 0 0 0
|
||||||
|
|
||||||
|
// 1
|
||||||
|
table_cam_add_entry realmain_v6_networks_0 realmain.set_egress_port 42540766411362381960998550477184434177 => 1 1 1 0 0
|
||||||
|
|
||||||
|
// 4
|
||||||
|
table_cam_add_entry realmain_v6_networks_0 realmain.set_egress_port 42540766411362381960998550477184434180 => 1 4 4 0 0
|
||||||
|
|
||||||
|
// 16
|
||||||
|
table_cam_add_entry realmain_v6_networks_0 realmain.set_egress_port 42540766411362381960998550477184434198 => 1 16 16 0 0
|
||||||
|
|
||||||
|
// 32
|
||||||
|
table_cam_add_entry realmain_v6_networks_0 realmain.set_egress_port 42540766411362381960998550477184434226 => 1 32 32 0 0
|
||||||
|
|
||||||
|
//64
|
||||||
|
table_cam_add_entry realmain_v6_networks_0 realmain.set_egress_port 42540766411362381960998550477184434276 => 1 64 64 0 0
|
||||||
|
|
||||||
|
|
||||||
|
// deleting: table_cam_delete_entry realmain_v6_networks_0 42540766411362381960998550477184434179
|
||||||
|
|
||||||
|
// 42 del: table_cam_delete_entry realmain_v6_networks_0 42540766411362381960998550477184434242
|
||||||
|
|
Loading…
Reference in a new issue