Commit Graph

21 Commits

Author SHA1 Message Date
20kdc 2c13ad9469 Move workspace forward to include some applications & application protocol documents 2017-03-22 23:05:31 +00:00
20kdc bf3ec0ec26 Those changes lost in the midst of testing. 2017-03-21 12:50:23 +00:00
20kdc eeb01821c3 Fix the hierarchial gateway and make the OC/CU/RE driver more resilient 2017-03-20 22:58:05 +00:00
20kdc 9df9823a4f Clarify possibilities of interaction between broadcast packets and hierarchial gateways.
The implementation in the oc/ subfolder of a hierarchial gateway goes
with the "allow subnets to cause higher-level broadcasts, and allow
 higher levels to cause subnet broadcasts, but don't let messages leak"
 solution
That is, the default if hierarchial gateways have no special
 handling for broadcast addresses.
2017-03-20 16:20:52 +00:00
20kdc 8e8b3f650d Make relib relatively backend-independent, increase the max timers to 0x400.
relib now relies on an additional parameter which should be
 require("culib"), but could instead be a Copper-like library.
2017-03-20 16:14:36 +00:00
20kdc 4a4cd485b1 Add an (as of yet untested) OC implementation of a Hierarchial Gateway 2017-03-20 00:40:28 +00:00
20kdc c91f3bd2a9 Be more explicit in protocol.1 about packet alterations, add license header to occure.lua 2017-03-20 00:33:06 +00:00
20kdc a998d3412c Clean up and add anti-OOM safety to culib, split data encode/decode to cdlib 2017-03-20 00:14:56 +00:00
20kdc 880a4dff08 Adjust the tuning parameters for real-world usage.
The tests assume a mesh network with known connections, the node doesn't,
 so unneeded packet leakage isn't really as controllable as I'd hoped.

What's definitely important is that the system doesn't cache entries for
 long enough that it starts continuously sending packets the wrong way
 no matter what.
2017-03-19 21:54:57 +00:00
20kdc 7f2d0c99a7 Uh, actually fix the stupid bug (How did this not get added again?) 2017-03-19 21:43:40 +00:00
20kdc 3f77445da7 Fix stupid bug in relib 2017-03-19 21:41:55 +00:00
20kdc 1cd7d82e98 Relib bugfixes
Hopefully should just be in general *better* now
2017-03-18 21:44:50 +00:00
20kdc 3497708747 Add occure 2017-03-18 21:21:27 +00:00
gamemanj c5f174e6ed Fixes to RELib.
It should work now.
2017-03-18 18:30:14 +00:00
gamemanj b5013044f6 Broadcast Address support. 2017-03-18 16:12:31 +00:00
gamemanj d63ba8db06 Hopefully maybe implement the reliability layer. 2017-03-18 16:06:56 +00:00
gamemanj aabbb554c6 Remove the fragmentation part of the reliablility layer
In practice it is unlikely that data that's too big for the reliability layer won't need splitting
 anyway by the application at some point, and the libraries are already too open to OOM DoS.
2017-03-18 15:31:25 +00:00
gamemanj e77c203514 Write docs on a possible broadcast extension and tune culib.lua some more. 2017-03-18 13:33:26 +00:00
gamemanj 47ec74bc89 Lowered protocol packet size limit and changed how it's calculated, also changed testcase to be slightly less worst-case.
The previous testcase was "all nodes communicating randomly", basically a worst-case.
This testcase is somewhat more realistic, a set of nodes communicating between each other via other
 nodes, a given TO node recurring once every 5 seconds (approximately).
Notably, the 'packet transfer total' figure should be halved, as in the testcase pings and responses
 are used, but only responses are counted.
2017-03-18 12:28:46 +00:00
gamemanj 97fd892922 Set up a proper test of a simple Copper network.
The reliability layer isn't in use here, as it will be tested separately.
I need to adjust the base Copper protocol first.
2017-03-18 11:32:14 +00:00
20kdc 2b458b5df8 Add incomplete workspace, for now. 2017-03-18 09:37:56 +00:00