diff --git a/README.md b/README.md index a1c64bc12ea5abda54c54468cafd5e1848848aa5..c27bd40f04f7786af729addacb3df3dbd8ba394a 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Tiny Nets -TinyNets presents a networking strategy for distributed robotic control systems. +TinyNets presents a networking strategy for distributed robotic control systems. Resilient Stateless Multipath Message Passing for Very Fast Very Small Messages: RSMMRVFVSM ... ## Networked Control Systems (NCS) @@ -222,6 +222,22 @@ Buffer Depth Updates are Periodic as well as event-based (on buffer-depth change See /circuit See /embedded +# Next Steps + +Presents a good option for wired routing over robust networks, with some complexity pushed into the nodes. Only really advantageous when we want to be able to re-route messages upstream in order to move around bottlenecks. TN does load-balancing without thinking about it... other approaches would require some implementation. Perhaps there's a learning function for network path planning & routing? + +If we include flows, needs per-flow, not per-packet, routing - if we are going to hop about per buffers etc. + +Wants a C API for packetizing streams / flows. + +Still some question about duplicate message arrivals after message? OR don't packetize flows - add source -> destination 0-255 counter, only take next in this series. + +TN wins over the blissfully simple APA when we want a *very big* network, say, want 1,000,000 objects to individually address 1,000,000 objects. Here we also need to introduce heirarchichal addressing. + +'Napoleon's Messenger' + +APA is *loads* simpler to implement on FPGA + # Reading #### Networked Control Systems diff --git a/circuit/atsams70n-switch/eagle.epf b/circuit/atsams70n-switch/eagle.epf index 22ab89bcfbc47917791662e5f457eb6eb86467e3..2b7cccb86a13940ac457a27e90f290078ae2149d 100644 --- a/circuit/atsams70n-switch/eagle.epf +++ b/circuit/atsams70n-switch/eagle.epf @@ -9,9 +9,9 @@ AutoSaveProject=1 UsedLibraryUrn="urn:adsk.eagle:library:217" UsedLibraryUrn="urn:adsk.eagle:library:325" UsedLibrary="D:/Dropbox (Personal)/CBA/doc/libraries/eagle/fab.lbr" -UsedLibrary="D:/Dropbox (Personal)/CBA/doc/libraries_jake/eagle/jake/tag-connect-2030.lbr" -UsedLibrary="D:/Dropbox (Personal)/CBA/doc/libraries_jake/eagle/jake/tag-connect-2050.lbr" UsedLibrary="D:/Dropbox (Personal)/CBA/doc/libraries_jake/eagle/sparkfun/SparkFun-Connectors.lbr" +UsedLibrary="D:/Dropbox (Personal)/CBA/doc/libraries_jake/eagle/marekr/borkedlabs-passives.lbr" +UsedLibrary="D:/Dropbox (Personal)/CBA/doc/libraries_jake/eagle/jake/tag-connect-2050.lbr" UsedLibrary="C:/EAGLE 8.3.2/lbr/ltspice/Comparators.lbr" UsedLibrary="C:/EAGLE 8.3.2/lbr/ltspice/Digital.lbr" UsedLibrary="C:/EAGLE 8.3.2/lbr/ltspice/FilterProducts.lbr" @@ -28,7 +28,6 @@ UsedLibrary="C:/EAGLE 8.3.2/lbr/ltspice/lt-spice-simulation.lbr" UsedLibrary="C:/EAGLE 8.3.2/lbr/ltspice/lt-supply.lbr" UsedLibrary="C:/EAGLE 8.3.2/lbr/ltspice/rload.lbr" UsedLibrary="C:/EAGLE 8.3.2/lbr/ltspice/sym.lbr" -UsedLibrary="D:/Dropbox (Personal)/CBA/doc/libraries_jake/eagle/marekr/borkedlabs-passives.lbr" [Win_1] Type="Schematic Editor" @@ -36,7 +35,7 @@ Loc="0 0 1919 1039" State=1 Number=2 File="atsams70n-switch.sch" -View="62.9279 -21.864 249.52 84.3376" +View="-130.19 -93.1136 426.971 224.002" WireWidths=" 0.0762 0.1016 0.127 0.15 0.2 0.2032 0.254 0.3048 0.4064 0.508 0.6096 0.8128 1.016 1.27 2.54 0.1524" PadDiameters=" 0.254 0.3048 0.4064 0.6096 0.8128 1.016 1.27 1.4224 1.6764 1.778 1.9304 2.1844 2.54 3.81 6.4516 0" PadDrills=" 0.2 0.25 0.3 0.35 0.4 0.45 0.5 0.55 0.65 0.7 0.75 0.8 0.85 0.9 1 0.6" @@ -75,7 +74,7 @@ ArcDirection=0 AddLevel=2 PadsSameType=0 Layer=91 -Views=" 1: 62.9279 -21.864 249.52 84.3376" +Views=" 1: -130.19 -93.1136 426.971 224.002" Sheet="1" [Win_2] @@ -84,7 +83,7 @@ Loc="0 0 1919 1039" State=1 Number=1 File="atsams70n-switch.brd" -View="16.7928 5.66944 52.3586 41.5147" +View="26.4046 18.3162 61.9705 54.1616" WireWidths=" 0.0762 0.1016 0.127 0.15 0.2 0.254 0.4064 0.508 0.6096 0.8128 1.016 1.27 2.54 0.2032 0.1524 0.3048" PadDiameters=" 0.254 0.3048 0.4064 0.6096 0.8128 1.016 1.27 1.4224 1.6764 1.778 1.9304 2.1844 2.54 3.81 6.4516 0" PadDrills=" 0.2 0.25 0.3 0.35 0.4 0.45 0.5 0.55 0.65 0.7 0.75 0.8 0.85 0.9 1 0.6" @@ -126,12 +125,12 @@ Layer=48 [Win_3] Type="Control Panel" -Loc="0 0 1919 1039" +Loc="0 0 1919 1016" State=1 Number=0 [Desktop] -Screen="3840 1080" +Screen="1920 1080" Window="Win_1" Window="Win_2" Window="Win_3" diff --git a/document/6-829-tinynet-presentation.pdf b/document/6-829-tinynet-presentation.pdf index f8913b0e823e81456035149395a3b15b9105189c..7ce80c554e88e66624fdbbb28e16ee5a3354149c 100644 Binary files a/document/6-829-tinynet-presentation.pdf and b/document/6-829-tinynet-presentation.pdf differ diff --git a/document/6-829_project-jr_dk_ns_pw_Tiny_Nets_finalReport.pdf b/document/6-829_project-jr_dk_ns_pw_Tiny_Nets_finalReport.pdf new file mode 100644 index 0000000000000000000000000000000000000000..f514e48ad92f2415d6f1d130d8ae4d5a7af3875d Binary files /dev/null and b/document/6-829_project-jr_dk_ns_pw_Tiny_Nets_finalReport.pdf differ diff --git a/document/tinynet-presentation.indd b/document/tinynet-presentation.indd index f8255912b40b2bef77d9d5eea3476351fb88e980..865529620655a1a5c66f1dd671595fe615cdac3b 100644 Binary files a/document/tinynet-presentation.indd and b/document/tinynet-presentation.indd differ diff --git a/network-plotter.md b/network-plotter.md new file mode 100644 index 0000000000000000000000000000000000000000..be2dcf095433fef0167e754ce86890965f8ed7f5 --- /dev/null +++ b/network-plotter.md @@ -0,0 +1,8 @@ +# Plotting Network Performance + +This a bit of a tricky problem, networks are a bit of a design exercise. Bitrate between two points, ok, but as soon as we approach graphs, in some sense we have to model the whole graph to determine RTT ? + +Certainly we have these axis: + - Bitrate + - RTT + - Goodput - but this varies on packet size ?