log update
This commit is contained in:
parent
89e0576d22
commit
2462356e68
1 changed files with 221 additions and 57 deletions
278
doc/plan.org
278
doc/plan.org
|
@ -987,7 +987,8 @@ PING 10.1.1.1 (10.1.1.1) 56(84) bytes of data.
|
|||
rtt min/avg/max/mdev = 12.593/12.593/12.593/0.000 ms
|
||||
p4@ubuntu:~$
|
||||
|
||||
** TODO Implement ipv6<->ipv4 udp translation
|
||||
** DONE Implement ipv6<->ipv4 udp translation
|
||||
CLOSED: [2019-07-21 Sun 13:57]
|
||||
*** DONE udp: ipv6->ipv4
|
||||
|
||||
p4@ubuntu:~$ mx h3 "echo V4-OK | socat - UDP-LISTEN:2342"
|
||||
|
@ -1001,7 +1002,8 @@ V4-OK
|
|||
p4@ubuntu:~$
|
||||
**** pcap/v6_udp-2019-04-11-0840-h1.pcap
|
||||
**** pcap/v6_udp-2019-04-11-0840-h3.pcap
|
||||
*** TODO udp: ipv4->ipv6
|
||||
*** DONE udp: ipv4->ipv6
|
||||
CLOSED: [2019-07-21 Sun 13:57]
|
||||
p4@ubuntu:~$ mx h3 "echo V4-OK | socat - UDP:10.1.1.1:2342"
|
||||
/usr/bin/mx: line 25: [: too many arguments
|
||||
V6-OK
|
||||
|
@ -1039,8 +1041,10 @@ p4@ubuntu:~$
|
|||
pcap/v4_tcp-2019-04-11-0853-h1.pcap | Bin 0 -> 1174 bytes
|
||||
pcap/v4_tcp-2019-04-11-0853-h3.pcap | Bin 0 -> 1070 bytes
|
||||
|
||||
** TODO Update p4c to avoid compiler bug
|
||||
*** TODO Updating p4c
|
||||
** DONE Update p4c to avoid compiler bug
|
||||
CLOSED: [2019-07-21 Sun 13:59]
|
||||
*** DONE Updating p4c
|
||||
CLOSED: [2019-07-21 Sun 13:57]
|
||||
**** DONE Try1
|
||||
p4@ubuntu:~/p4-learning/vm/bin$ sh update-p4c.sh
|
||||
update-p4c.sh: 34: update-p4c.sh: Syntax error: "(" unexpected
|
||||
|
@ -1107,12 +1111,15 @@ p4@ubuntu:~/p4-tools/p4c/build$
|
|||
**** DONE Build on notebook succeeds 900557c5
|
||||
[16:37] line:p4c% git describe --always
|
||||
900557c5
|
||||
**** TODO Build on VM with 900557c5 after removing build/
|
||||
** TODO Get p4 VM / vagrant running
|
||||
**** DONE Build on VM with 900557c5 after removing build/: no, stay with old p4c
|
||||
CLOSED: [2019-07-21 Sun 13:57]
|
||||
** DONE Get p4 VM / vagrant running: running on VM
|
||||
CLOSED: [2019-07-21 Sun 13:57]
|
||||
*** DONE install libvirtd-daemon
|
||||
*** DONE install ebtables
|
||||
*** DONE install dnsmasq
|
||||
** TODO Get p4c & co. running on the notebook
|
||||
** DONE Get p4c & co. running eon the notebook: no, stay on VM
|
||||
CLOSED: [2019-07-21 Sun 13:58]
|
||||
*** DONE mininet via packages
|
||||
*** DONE p4c
|
||||
(virtualenv-with-site) [17:43] line:build% make install
|
||||
|
@ -1545,8 +1552,6 @@ Cannot find required executable simple_switch.
|
|||
Please make sure that it is installed and available in your $PATH:
|
||||
(/home/nico/vcs/master-thesis/support/virtualenv-with-site/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/home/nico/vcs/master-thesis/support/p4c/build/)
|
||||
(virtualenv-with-site) root@line:/home/nico/vcs/master-thesis/p4app#
|
||||
** TODO Setup test VM [dual stack] for Jool:
|
||||
** TODO Setup test VM [dual stack] for tayga:
|
||||
** TODO Port to Hardware
|
||||
*** NetPFGA documentation
|
||||
**** Port mapping
|
||||
|
@ -1569,7 +1574,8 @@ Cannot obtain license
|
|||
make: *** [Makefile:67: compile_no_cpp_test] Error 1
|
||||
nico@loch:~/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/switch_calc$
|
||||
|
||||
**** TODO Testing / compiling / uploading stuff to the NetPFGA --
|
||||
**** DONE Testing / compiling / uploading stuff to the NetPFGA --
|
||||
CLOSED: [2019-07-21 Sun 13:56]
|
||||
https://github.com/NetFPGA/P4-NetFPGA-public/wiki/Tutorial-Assignments
|
||||
***** DONE try 1
|
||||
According to
|
||||
|
@ -1654,7 +1660,8 @@ nico@loch:~/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/swit
|
|||
****** DONE testdata: skipped
|
||||
****** DONE compile_cpp_test: ok
|
||||
****** DONE run_scripts: ok
|
||||
****** TODO cpp_test: error
|
||||
****** DONE cpp_test: error
|
||||
CLOSED: [2019-07-21 Sun 13:59]
|
||||
# Fix introduced for SDNet 2017.4
|
||||
sed -i 's/xsim\.dir\/xsc\/dpi\.so/dpi\.so/g' nf_sume_sdnet_ip/SimpleSumeSwitch/vivado_sim.bash
|
||||
sed -i 's/xsim\.dir\/xsc\/dpi\.so/dpi\.so/g' nf_sume_sdnet_ip/SimpleSumeSwitch/vivado_sim_waveform.bash
|
||||
|
@ -1667,7 +1674,8 @@ make: *** [Makefile:23: cpp_test] Error 1
|
|||
[23:12] loch:minip4%
|
||||
******* DONE Removing cp of *tbl
|
||||
******* DONE Removing pcap copy
|
||||
******* TODO removing all cp's
|
||||
******* DONE removing all cp's
|
||||
CLOSED: [2019-07-21 Sun 13:59]
|
||||
***** DONE try 3: good until step 4; broken at the simulation
|
||||
****** log 1
|
||||
[15:26] rainbow:~% echo $P4_PROJECT_DIR
|
||||
|
@ -1751,7 +1759,8 @@ root@rainbow:~# apt install libncurses5
|
|||
****** command
|
||||
cd $P4_PROJECT_DIR && make
|
||||
****** DONE commented out the test data step to progress
|
||||
****** TODO re-enable test data cp step => data required later
|
||||
****** DONE re-enable test data cp step => data required later
|
||||
CLOSED: [2019-07-21 Sun 13:57]
|
||||
all: clean frontend compile_no_cpp_test run_scripts
|
||||
cp src/*.tbl ${SDNET_OUT_DIR}/${P4_SWITCH}/
|
||||
cp testdata/*.txt ${SDNET_OUT_DIR}/${P4_SWITCH}/
|
||||
|
@ -1798,7 +1807,8 @@ make[1]: *** [Makefile:5: all] Error 1
|
|||
make[1]: Leaving directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/testdata'
|
||||
make: *** [Makefile:32: frontend] Error 2
|
||||
[15:47] rainbow:minip4%
|
||||
****** TODO debug gen_testdata.py
|
||||
****** DONE debug gen_testdata.py
|
||||
CLOSED: [2019-07-21 Sun 13:57]
|
||||
***** DONE Run step 5: ok
|
||||
****** command
|
||||
#+BEGIN_EXAMPLE
|
||||
|
@ -2027,7 +2037,8 @@ INFO: [Common 17-206] Exiting Vivado at Mon May 20 13:07:53 2019...
|
|||
make[1]: Leaving directory '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/simple_sume_switch/hw'
|
||||
[13:07] rainbow:simple_sume_switch%
|
||||
#+END_CENTER
|
||||
******* TODO clarifying "simple_sume_switch.tcl"
|
||||
******* DONE clarifying "simple_sume_switch.tcl"
|
||||
CLOSED: [2019-07-21 Sun 13:59]
|
||||
******** DONE What is it?
|
||||
Seems to be some kind of batch system for vivado
|
||||
******** DONE Who or what created it?
|
||||
|
@ -2308,7 +2319,6 @@ new dic: OrderedDict()
|
|||
****** DONE try10: find out, why nf_sume_sdnet_ip/SimpleSumeSwitch/config_writes.txt has too less content
|
||||
******* DONE find out what generates config_writes.txt
|
||||
Seems to be step 5:
|
||||
|
||||
#+BEGIN_CENTER
|
||||
[14:22] rainbow:SimpleSumeSwitch% pwd
|
||||
/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/nf_sume_sdnet_ip/SimpleSumeSwitch
|
||||
|
@ -3020,7 +3030,8 @@ SimpleSumeSwitch(
|
|||
TopDeparser()
|
||||
) main;
|
||||
**** Understand the different switch models (?)
|
||||
*** TODO Find out whether delta based checksumming is feasible [in P4]
|
||||
*** DONE Find out whether delta based checksumming is feasible [in P4]
|
||||
CLOSED: [2019-07-21 Sun 13:53]
|
||||
**** DONE Analysing scapy
|
||||
CLOSED: [2019-06-23 Sun 14:18]
|
||||
#+BEGIN_CENTER
|
||||
|
@ -3066,7 +3077,8 @@ else:
|
|||
|
||||
|
||||
#+END_CENTER
|
||||
**** TODO Trying to create a delta diff: AAAA vs. BBAA
|
||||
**** DONE Trying to create a delta diff: AAAA vs. BBAA
|
||||
CLOSED: [2019-07-21 Sun 13:53]
|
||||
#+BEGIN_CENTER
|
||||
[14:17] line:bin% python3 checksum_from_scapy.py AAAA
|
||||
b'AAAA'
|
||||
|
@ -3146,10 +3158,13 @@ sum=33667
|
|||
|
||||
|
||||
#+END_CENTER
|
||||
*** TODO Get ANY p4 program to successfully run on netpfga
|
||||
**** TODO mirroring ethernet
|
||||
*** DONE Get ANY p4 program to successfully run on netpfga
|
||||
CLOSED: [2019-07-21 Sun 14:00]
|
||||
**** DONE mirroring ethernet
|
||||
CLOSED: [2019-07-21 Sun 14:00]
|
||||
***** no packets seen on source interface
|
||||
**** TODO sending data to switch port 1
|
||||
**** DONE sending data to switch port 1
|
||||
CLOSED: [2019-07-21 Sun 14:00]
|
||||
***** DONE figuring out which is port 1: nf0
|
||||
expected
|
||||
actual
|
||||
|
@ -3193,7 +3208,8 @@ listening on nf1, link-type EN10MB (Ethernet), capture size 262144 bytes
|
|||
19:28:37.725181 IP6 2001:db8::1 > ff02::1:ff00:2: ICMP6, neighbor solicitation, who has 2001:db8::2, length 32
|
||||
19:28:38.749195 IP6 2001:db8::1 > ff02::1:ff00:2: ICMP6, neighbor solicitation, who has 2001:db8::2, length 32
|
||||
|
||||
***** TODO Testing packets with send_packet.py: nothing arrives
|
||||
***** DONE Testing packets with send_packet.py: nothing arrives: broken card problem
|
||||
CLOSED: [2019-07-21 Sun 13:54]
|
||||
root@rainbow:/home/nico/master-thesis/bin# python send_packet.py nf1
|
||||
.
|
||||
Sent 1 packets.
|
||||
|
@ -3204,7 +3220,8 @@ root@rainbow:/home/nico/master-thesis/bin#
|
|||
|
||||
-> only shows up on the interface that we send, not on nf0 if sending
|
||||
on nf1
|
||||
***** TODO Trying to add explicit table entry
|
||||
***** DONE Trying to add explicit table entry: broken card problem
|
||||
CLOSED: [2019-07-21 Sun 13:54]
|
||||
#+BEGIN_CENTER
|
||||
>> table_cam_add_entry lookup_table send_to_port1 ff:ff:ff:ff:ff:ff =>
|
||||
CAM_Init_ValidateContext() - done
|
||||
|
@ -3214,7 +3231,8 @@ WROTE 0x44020080 = 0x0003
|
|||
python: ioctl: Unknown error 512
|
||||
[20:27] rainbow:CLI%
|
||||
#+END_CENTER
|
||||
***** TODO Trying to read a table entry
|
||||
***** DONE Trying to read a table entry: broken card problem
|
||||
CLOSED: [2019-07-21 Sun 13:54]
|
||||
#+BEGIN_CENTER
|
||||
>> table_cam_read_entry lookup_table 0
|
||||
CAM_Init_ValidateContext() - done
|
||||
|
@ -3243,14 +3261,19 @@ ERROR: failed to convert p.ethernet.dstAddr of type <type 'str'> to an integer
|
|||
|
||||
#+END_CENTER
|
||||
|
||||
*** TODO Create either HDL or PX for supporting payload checksum
|
||||
*** DONE Create either HDL or PX for supporting payload checksum: no, not doing payload
|
||||
CLOSED: [2019-07-21 Sun 13:54]
|
||||
https://github.com/NetFPGA/P4-NetFPGA-public/issues/13
|
||||
https://github.com/NetFPGA/P4-NetFPGA-public/issues/13#issuecomment-490431016
|
||||
**** TODO Explore HDL
|
||||
**** TODO Explore PX
|
||||
*** TODO Integrate nat64 code into netfpga
|
||||
**** figure out how to do ANY checksums
|
||||
** TODO Diff / Delta based checksums
|
||||
**** DONE Explore HDL: no, not needed
|
||||
CLOSED: [2019-07-21 Sun 13:54]
|
||||
**** DONE Explore PX: no, not needed
|
||||
CLOSED: [2019-07-21 Sun 13:54]
|
||||
*** Integrate nat64 code into netfpga: continue further down
|
||||
**** DONE figure out how to do ANY checksums
|
||||
CLOSED: [2019-07-21 Sun 13:55]
|
||||
** DONE Diff / Delta based checksums
|
||||
CLOSED: [2019-07-21 Sun 13:55]
|
||||
*** DONE create test case / test theory
|
||||
CLOSED: [2019-07-13 Sat 21:50]
|
||||
*** Understand the complement implementation in P4/C
|
||||
|
@ -3272,7 +3295,8 @@ checksum, should be zero if there is no corruption.
|
|||
https://en.wikipedia.org/wiki/IPv4_header_checksum
|
||||
|
||||
|
||||
**** TODO try first v6/v6
|
||||
**** DONE try first v6/v6
|
||||
CLOSED: [2019-07-21 Sun 14:00]
|
||||
**** using python/struct
|
||||
***** find right byte orders
|
||||
**** using python/scapy
|
||||
|
@ -3282,20 +3306,33 @@ https://en.wikipedia.org/wiki/IPv4_header_checksum
|
|||
**** using p4
|
||||
|
||||
**** using p4/netpfga
|
||||
** NAT64/NAT46 Features in jool and tayga
|
||||
*** TODO Static 1:1 NAT46: translate from IPv4 to IPv6 with a table
|
||||
**** TODO TCP
|
||||
**** TODO UDP
|
||||
**** TODO ICMP <-> ICMPv6
|
||||
*** TODO Stateless Prefix based NAT64: IPv6 to IPv4 translation prefix based
|
||||
** DONE NAT64/NAT46 Features in jool and tayga
|
||||
CLOSED: [2019-07-21 Sun 14:02]
|
||||
*** DONE Static 1:1 NAT46: translate from IPv4 to IPv6 with a table
|
||||
CLOSED: [2019-07-21 Sun 13:55]
|
||||
**** DONE TCP
|
||||
CLOSED: [2019-07-21 Sun 13:55]
|
||||
**** DONE UDP
|
||||
CLOSED: [2019-07-21 Sun 13:55]
|
||||
**** DONE ICMP <-> ICMPv6
|
||||
CLOSED: [2019-07-21 Sun 13:55]
|
||||
*** DONE Stateless Prefix based NAT64: IPv6 to IPv4 translation prefix based
|
||||
CLOSED: [2019-07-21 Sun 13:55]
|
||||
**** Allows IPv6 hosts to reach the IPv4 Internet
|
||||
*** See time table above
|
||||
** Additional features queue (to be discussed)
|
||||
*** TODO Offset based translation (v4->v6) -> same as range (?)
|
||||
*** TODO IP address learning (v6/v4) for real life switch? How do hosts find it?
|
||||
** Netpfga cabling
|
||||
** DONE Additional features queue (to be discussed)
|
||||
CLOSED: [2019-07-21 Sun 14:01]
|
||||
*** DONE Offset based translation (v4->v6) -> same as range (?)
|
||||
CLOSED: [2019-07-21 Sun 14:00]
|
||||
*** DONE IP address learning (v6/v4) for real life switch? How do hosts find it?
|
||||
CLOSED: [2019-07-21 Sun 14:00]
|
||||
** DONE Netpfga cabling
|
||||
CLOSED: [2019-07-21 Sun 14:01]
|
||||
| eth2 <--> nf0 |
|
||||
| eth1 <--> nf3 |
|
||||
** TODO Benchmark/comparison
|
||||
*** TODO Setup / Benchmark Jool
|
||||
*** TODO Setup / Benchmark tayga
|
||||
* Thesis documentation
|
||||
** Introduction
|
||||
*** Related work
|
||||
|
@ -3349,7 +3386,8 @@ user@T:~# iptables -t mangle -A PREROUTING \
|
|||
```
|
||||
5656
|
||||
*** Cisco (?)
|
||||
** TODO P4 based implementation
|
||||
** DONE P4 based implementation
|
||||
CLOSED: [2019-07-21 Sun 13:55]
|
||||
*** General
|
||||
|
||||
- IPv6 subnet 2001:db8::/32
|
||||
|
@ -3360,7 +3398,8 @@ user@T:~# iptables -t mangle -A PREROUTING \
|
|||
- IPv4 hosts are in 10.0.4.0/24
|
||||
- IPv6 in IPv4 mapped hosts are in 10.0.6.0/24
|
||||
- IPv4 default router = 10.0.0.42
|
||||
*** TODO IPv4 embedding
|
||||
*** DONE IPv4 embedding
|
||||
CLOSED: [2019-07-21 Sun 13:55]
|
||||
|
||||
RFC6052
|
||||
|
||||
|
@ -3704,7 +3743,8 @@ debug packets - analyse code - goto 1
|
|||
[21:26] line:~% sudo apt install thrift-compiler
|
||||
libnanomsg-dev libjudy-dev
|
||||
|
||||
*** TODO Session / dynamice mappings
|
||||
*** DONE Session / dynamice mappings
|
||||
CLOSED: [2019-07-21 Sun 13:56]
|
||||
**** General
|
||||
- Have 1..n session IPv4 addresses
|
||||
- Handle outgoing IPv6: create new session
|
||||
|
@ -3727,10 +3767,12 @@ libnanomsg-dev libjudy-dev
|
|||
|
||||
***** TODO Case IPv4 initiator
|
||||
- Needs upper level protol
|
||||
**** TODO General network matching
|
||||
**** DONE General network matching
|
||||
CLOSED: [2019-07-21 Sun 13:56]
|
||||
***** DONE Create table(s)
|
||||
***** DONE Fill it up from the controller: general network
|
||||
***** TODO Create controller session handler
|
||||
***** DONE Create controller session handler
|
||||
CLOSED: [2019-07-21 Sun 13:55]
|
||||
****** Controller Logic
|
||||
- controller selects "outgoing" IPv4 address range => base for sessions
|
||||
- IPv4 addresses can be "random" (in our test case), but need
|
||||
|
@ -3745,7 +3787,8 @@ libnanomsg-dev libjudy-dev
|
|||
***** DONE Feed back to controller: implemented in switch
|
||||
***** DONE Create ipv6 session in the controller
|
||||
***** Create ipv4 session in the controller
|
||||
***** TODO Ensure translation code works
|
||||
***** DONE Ensure translation code works
|
||||
CLOSED: [2019-07-21 Sun 13:55]
|
||||
>>> ipaddress.IPv6Network("2001:db8:100::/96")[int(ipaddress.IPv4Address("10.0.0.1"))]
|
||||
IPv6Address('2001:db8:100::a00:1')
|
||||
|
||||
|
@ -3757,9 +3800,12 @@ INFO:main:unhandled reassambled=<Ether dst=00:00:0a:00:00:42 src=00:00:0a:00:00
|
|||
INFO:main:unhandled reassambled=<Ether dst=00:00:0a:00:00:42 src=00:00:0a:00:00:01 type=0x86dd |<IPv6 version=6 tc=0 fl=765494 plen=40 nh=TCP hlim=64 src=2001:db8::1 dst=2001:db8:100::a00:1 |<TCP sport=36458 dport=2342 seq=1287954527 ack=0 dataofs=10 reserved=0 flags=S window=28320 chksum=0xdce7 urgptr=0 options=[('MSS', 9440), ('SAckOK', ''), ('Timestamp', (795132605, 0)), ('NOP', None), ('WScale', 9)] |>>> from table TABLE_V6_NETWORKS
|
||||
|
||||
****** DONE action nat64_tcp_session_create is called
|
||||
**** TODO tcp session
|
||||
**** TODO udp session
|
||||
**** TODO tcp session
|
||||
**** DONE tcp session
|
||||
CLOSED: [2019-07-21 Sun 13:55]
|
||||
**** DONE udp session
|
||||
CLOSED: [2019-07-21 Sun 13:55]
|
||||
**** DONE tcp session
|
||||
CLOSED: [2019-07-21 Sun 13:55]
|
||||
** TODO Hardware port
|
||||
*** Installation issues
|
||||
Installing vivado would stall/sleep/hang forverer due to missing
|
||||
|
@ -5281,7 +5327,8 @@ sum 0xc5f2 (incorrect -> 0xe7cf)
|
|||
*** 2019-07-16: pcap for debugging udp
|
||||
pcap/tcp-udp-delta-2019-07-16-0856-h3.pcap
|
||||
pcap/tcp-udp-delta-2019-07-16-0856-h1.pcap
|
||||
*** 2019-07-16: testing with udp
|
||||
*** DONE 2019-07-16: testing with udp
|
||||
CLOSED: [2019-07-21 Sun 14:08]
|
||||
- suspicion: missing some cases in tcp6
|
||||
|
||||
#+BEGIN_CENTER
|
||||
|
@ -5302,8 +5349,10 @@ p4@ubuntu:~/master-thesis/bin$ mx h3 "echo V4-OK | socat - UDP:10.1.1.1:2342"
|
|||
|
||||
My code is +1 too high
|
||||
|
||||
*** 2019-07-17: continuing on wrap around issue
|
||||
*** 2019-07-17: connect new intel card: cable problem
|
||||
*** DONE 2019-07-17: continuing on wrap around issue
|
||||
CLOSED: [2019-07-21 Sun 14:08]
|
||||
*** DONE 2019-07-17: connect new intel card: cable problem
|
||||
CLOSED: [2019-07-21 Sun 14:08]
|
||||
#+BEGIN_CENTER
|
||||
|
||||
[ 37.557095] ixgbe 0000:02:00.0: failed to initialize because an unsupported SFP+ module type was detected.
|
||||
|
@ -5633,7 +5682,8 @@ PCAP files to prove it works:
|
|||
create mode 100644 pcap/tcp-udp-delta-2019-07-17-1558-h3.pcap
|
||||
|
||||
#+END_CENTER
|
||||
*** TODO 2019-07-21: fix "compilation error" on minip4 / netpfga
|
||||
*** DONE 2019-07-21: fix "compilation error" on minip4 / netpfga
|
||||
CLOSED: [2019-07-21 Sun 12:29]
|
||||
#+BEGIN_CENTER
|
||||
source tcl/export_hardware.tcl
|
||||
# set design [lindex $argv 0]
|
||||
|
@ -5660,7 +5710,8 @@ Vivado%
|
|||
Vivado%
|
||||
#+END_CENTER
|
||||
*** TODO 2019-07-21: whether or not to handle icmp(6) checksums
|
||||
*** TODO 2019-07-21: implement v6->v4 delta based
|
||||
*** DONE 2019-07-21: implement v6->v4 delta based
|
||||
CLOSED: [2019-07-21 Sun 12:30]
|
||||
#+BEGIN_CENTER
|
||||
while true; do mx h3 "echo V4-OK | socat - TCP-LISTEN:2343"; sleep 2;
|
||||
done
|
||||
|
@ -5674,7 +5725,7 @@ TCP6:[2001:db8:1::a00:1]:2343"; sleep 2; done
|
|||
Result: no reply, but translated packets seen on h3; wrong IPv4
|
||||
checksum; tcp checksum is ok
|
||||
-> doing manual calculation to see where diff comes from
|
||||
*** DONE Shifting / compile errors
|
||||
*** DONE 2019-07-21: Shifting / compile errors
|
||||
CLOSED: [2019-07-21 Sun 10:55]
|
||||
|
||||
v1: wrong parenthesis
|
||||
|
@ -5713,12 +5764,125 @@ p4c --target bmv2 --arch v1model --std p4-16 "../p4src/checksum_diff.p4" -o "/ho
|
|||
|
||||
#+END_CENTER
|
||||
|
||||
*** Proof of v6->v4 working delta based
|
||||
*** DONE 2019-07-21: Proof of v6->v4 working delta based
|
||||
CLOSED: [2019-07-21 Sun 12:30]
|
||||
#+BEGIN_CENTER
|
||||
pcap/tcp-udp-delta-from-v6-2019-07-21-0853-h1.pcap | Bin 0 -> 4252 bytes
|
||||
pcap/tcp-udp-delta-from-v6-2019-07-21-0853-h3.pcap | Bin 0 -> 2544 bytes
|
||||
#+END_CENTER
|
||||
|
||||
*** TODO 2019-07-21: Porting to netfpga: found relevant EMPTY FILE CHECK / config writes
|
||||
**** DONE try1: Initial log
|
||||
CLOSED: [2019-07-21 Sun 14:03]
|
||||
If
|
||||
./projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/simple_sume_switch/bitfiles/config_writes.sh
|
||||
is empty -> compile will fail
|
||||
|
||||
This files is used by
|
||||
simple_sume_switch/bitfiles/program_switch.sh:${SUME_SDNET}/tools/program_switch.sh
|
||||
minip4.bit config_writes.sh
|
||||
|
||||
in
|
||||
|
||||
nico@nsg-System:~/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4$ grep config_writes.sh -r *
|
||||
|
||||
None of the previous compile runs has touched that file:
|
||||
|
||||
#+BEGIN_CENTER
|
||||
nico@nsg-System:~$ cat ./projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/simple_sume_switch/bitfiles/config_writes.sh
|
||||
nico@nsg-System:~$ ls -alh ./projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/simple_sume_switch/bitfiles
|
||||
/config_writes.sh
|
||||
-rw-rw-r-- 1 nico nico 13 Jun 24 15:40 ./projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/simple_sume_switch/bitfiles/config_writes.sh
|
||||
#+END_CENTER
|
||||
|
||||
|
||||
Traversing back the tree again:
|
||||
|
||||
#+BEGIN_CENTER
|
||||
nico@nsg-System:~/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4$ make config_writes
|
||||
echo /home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/bin/gen_config_writes.py nf_sume_sdnet_ip/SimpleSumeSwitch/config_writes.txt 0x44020000 testdata
|
||||
/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/bin/gen_config_writes.py nf_sume_sdnet_ip/SimpleSumeSwitch/config_writes.txt 0x44020000 testdata
|
||||
#/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/bin/gen_config_writes.py nf_sume_sdnet_ip/SimpleSumeSwitch/config_writes.txt 0x44020000 testdata
|
||||
nico@nsg-System:~/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4$
|
||||
|
||||
#+END_CENTER
|
||||
|
||||
Seems like output is really different from previous installation (?)
|
||||
or previous compiles (?):
|
||||
|
||||
#+BEGIN_CENTER
|
||||
[2260762] INFO: finished packet stimulus file
|
||||
[3728508] INFO: packet 1 tuple OK < tuple_out_digest_data, tuple_out_standard_metadata > = < 0000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000001010000 >
|
||||
[3728508] INFO: packet 1 data OK (tlast, tkeep, tdata) = (0, ffffffff, 0000000000000000000000000000000000000000081111111108082222222208)
|
||||
[3731840] INFO: packet 1 data OK (tlast, tkeep, tdata) = (1, ffffffff, 0000000000000000000000000000000000000000000000000000000000000000)
|
||||
[7067172] INFO: stopping simulation after 1000 idle cycles
|
||||
[7067172] INFO: all expected data successfully received
|
||||
[7067172] INFO: TEST PASSED
|
||||
|
||||
#+END_CENTER
|
||||
|
||||
vs before:
|
||||
#+BEGIN_CENTER
|
||||
projects/minip4/nf_sume_sdnet_ip/SimpleSumeSwitch/S_BRIDGERs.HDL/xpm_memory.sv
|
||||
[SW] CAM_Init() - start
|
||||
[SW] CAM_Init() - done
|
||||
[SW] CAM_EnableDevice() - start
|
||||
SV_write_control()- start
|
||||
SV_write_control()- done
|
||||
SV_read_control()- start
|
||||
SV_read_control()- done
|
||||
SV_write_control()- start
|
||||
SV_write_control()- done
|
||||
[SW] CAM_EnableDevice() - done
|
||||
[2420698] INFO: finished packet stimulus file
|
||||
[2735572] ERROR: tuple mismatch for packet 1
|
||||
expected < tuple_out_digest_data, tuple_out_sume_metadata > = < 0000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000001010000 >
|
||||
actual < tuple_out_digest_data, tuple_out_sume_metadata > = < 0000000000000000000000000000000000000000000000000000000000000000 00000000000000000000000000010000 >
|
||||
$finish called at time : 2735572 ps : File "/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/nf_sume_sdnet_ip/SimpleSumeSwitch/Testbench/Check.v" Line 120
|
||||
exit
|
||||
INFO: [Common 17-206] Exiting xsim at Sat May 25 14:38:05 2019...
|
||||
[14:38] rainbow:SimpleSumeSwitch% echo $?
|
||||
0
|
||||
[14:38] rainbow:SimpleSumeSwitch%
|
||||
|
||||
#+END_CENTER
|
||||
|
||||
As suspected, config_writes output is again "too less"
|
||||
|
||||
#+BEGIN_CENTER
|
||||
+ make config_writes
|
||||
/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/bin/gen_config_writes.py nf_sume_sdnet_ip/SimpleSumeSwitch/config_writes.txt 0x44020000 testdata
|
||||
orig dic: OrderedDict([(0, ('00000020', '00000001')), (1, ('00000020', '00000000'))])
|
||||
new dic: OrderedDict()
|
||||
|
||||
#+END_CENTER
|
||||
|
||||
**** DONE try2: finding out how/where/why the config_writes.py matters
|
||||
CLOSED: [2019-07-21 Sun 14:07]
|
||||
***** answer: step8 references the file, but it does not exist
|
||||
|
||||
#+BEGIN_CENTER
|
||||
nico@nsg-System:~/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/simple_sume_switch/test/sim_switch_default$ cd $NF_DESIGN_DIR/test/sim_switch_default && make 2>&1 | tee ~/master-thesis/netpfga/log/step8-$(date +%F-%H%M%S)
|
||||
rm -f config_writes.py*
|
||||
rm -f *.pyc
|
||||
cp /home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/testdata/config_writes.py ./
|
||||
cp: cannot stat '/home/nico/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/testdata/config_writes.py': No such file or directory
|
||||
Makefile:36: recipe for target 'all' failed
|
||||
make: *** [all] Error 1
|
||||
nico@nsg-System:~/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4/simple_sume_switch/test/sim_switch_default$
|
||||
nico@nsg-System:~/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4$ ls ~/master-thesis/netpfga/log/
|
||||
compile-20190713-1906-failure compile-20190713-2208-failure step4-2019-07-21-120937 step4-2019-07-21-122139 step5-2019-07-21-134905 step8-2019-07-21-140436
|
||||
compile-20190713-1935-failure compile-2019-07-21-122852 step4-2019-07-21-121529 step4-2019-07-21-122730 step6-2019-07-21-135059 step8-2019-07-21-140549
|
||||
nico@nsg-System:~/projects/P4-NetFPGA/contrib-projects/sume-sdnet-switch/projects/minip4$
|
||||
|
||||
#+END_CENTER
|
||||
**** TODO try3: find out again, what generates config_writes.py
|
||||
*** TODO Further notes P4/master thesis
|
||||
- Cannot easily run P4 on notebook - changes to the system very
|
||||
invasive
|
||||
- Varous compiler bugs/limitations
|
||||
- Very very deep rabbithole problems
|
||||
- Hanging/sleeping issue -- unclear whether it does something or not
|
||||
|
||||
** The NetPFGA saga
|
||||
Problems encountered:
|
||||
|
|
Loading…
Reference in a new issue