Commit Graph

2732 Commits

Author SHA1 Message Date
Jeremy Lakeman
0ba1b50d83 Allow receiver to hold 64 packets 2013-11-27 13:18:21 +10:30
Jeremy Lakeman
b3ce046f7f Tweak radio link to reduce peak latency 2013-11-27 13:17:36 +10:30
Jeremy Lakeman
c0003e1d81 Remember the time that each packet was added 2013-11-27 13:17:35 +10:30
Jeremy Lakeman
0f67ec7ab3 Reject packets with a jump in sequence numbers 2013-11-27 13:16:51 +10:30
Jeremy Lakeman
37e480c623 Add network coding stats to html output 2013-11-27 13:16:08 +10:30
Jeremy Lakeman
c1e90a7bce Dont resend packets over a 'reliable' link 2013-11-27 13:15:23 +10:30
Jeremy Lakeman
76267904d9 Start using network coding over the radio link 2013-11-27 13:14:39 +10:30
Jeremy Lakeman
d67dfa22b2 Add network coding test app to the build 2013-11-27 13:13:56 +10:30
Jeremy Lakeman
c1a7abdaa9 Reduce seq to a rotating uint8 2013-11-27 13:13:55 +10:30
Jeremy Lakeman
82d9da2171 Add window size to ACK, ensure only one new degree of freedom per packet 2013-11-27 13:13:55 +10:30
Jeremy Lakeman
8bc4c27ab2 Simplify test result handling 2013-11-27 13:13:54 +10:30
gardners
746b33b53d added initial work on network coding.
Refactor network coding
2013-11-27 13:13:53 +10:30
Jeremy Lakeman
d45470ce81 Refactor radio link for better encapsulation 2013-11-27 13:13:08 +10:30
Jeremy Lakeman
cd639ba3b6 Use constants instead of magic numbers 2013-11-27 13:12:25 +10:30
Jeremy Lakeman
99d5d9fa1f Refactor dataformats into separate header 2013-11-27 13:11:42 +10:30
Jeremy Lakeman
6dbc623643 Increase mdp timeout based on file size 2013-11-27 13:11:40 +10:30
Jeremy Lakeman
0e6a3cd7cc Use interval parameter correctly even for unlimited pings 2013-11-27 13:11:37 +10:30
Jeremy Lakeman
28fc1da2d2 Encapsulate rhizome fetch logging 2013-11-27 13:10:55 +10:30
Jeremy Lakeman
1681abd620 Increase default mdp timeout & make it configurable 2013-11-27 13:10:11 +10:30
Jeremy Lakeman
62cd8c7555 Log any alarm we call more than 10,000 times a second (probably indicates a bug) 2013-11-27 13:10:10 +10:30
Jeremy Lakeman
844afcff0e Calculate golay parity regardless of CPU endian 2013-11-27 13:10:10 +10:30
Jeremy Lakeman
1b34c2dc13 Improve test reliability 2013-11-27 13:10:09 +10:30
Jeremy Lakeman
ad33264834 Rename mavlink to radio_link
- split link state from slip structures and encapsulate it completely
- allocate interface specific buffers on demand
2013-11-27 13:09:26 +10:30
Jeremy Lakeman
a77642fc9e Support for binding internal handlers to mdp ports 2013-11-27 13:08:43 +10:30
Jeremy Lakeman
0d5d878521 Refactor socket name and address length handling 2013-11-27 13:08:37 +10:30
Jeremy Lakeman
5ea19ab538 Better approximation of TDMA timing 2013-11-27 13:00:02 +10:30
Jeremy Lakeman
bea9d36411 Drop radio packets based on the probability of receiving the header 2013-11-27 13:00:01 +10:30
Jeremy Lakeman
6ec6a6c966 Fix printf formats 2013-11-27 12:59:52 +10:30
Andrew Bettison
46363db257 Format MDP port numbers as 0xXXXXXXXX 2013-11-26 17:44:49 +10:30
Andrew Bettison
e97e3db444 Silence unconditional DEBUG log message 2013-11-26 17:44:25 +10:30
Andrew Bettison
56349b962e Remove bogus ERROR messages from Batphone log
Improve overlay buffer primitives to eliminate bugus logged ERRORs
"ob_makespace() failed" and "could not append payload of N bytes" and
also add buffer overflow checks to more packet construction code.

Fix link state timing logic to eliminate logged ERROR "Alarm `link_send`
tried to schedule a deadline 1343871867115ms ago"

Improve debug logging of some MDP and dummy interface read/write code

Add 'debug.overlaybuffer' and 'debug.subscriber' config options
2013-11-26 15:44:16 +10:30
Andrew Bettison
fb39dd84ef Improve dummy file Read/Write debug logging 2013-11-26 15:33:54 +10:30
Andrew Bettison
39d6c4fc3a strbuf_append_sockaddr_in() 2013-11-26 15:33:54 +10:30
Andrew Bettison
851dbb4d64 Add 'debug.subscriber' config option
Add debug logging to find_subscriber() function
2013-11-26 15:33:54 +10:30
Andrew Bettison
59a6ded10c Update 'dnaprotocol' debug flags 2013-11-26 15:33:54 +10:30
Andrew Bettison
97ce07b76c Improve MDP debug logging 2013-11-26 15:33:54 +10:30
Andrew Bettison
1bb60fd8bc Add 'debug.overlaybuffer' logging
Instrument all ob_xxx() primitives with __whence
2013-11-26 15:33:54 +10:30
Andrew Bettison
e3ceedddf8 Fix link state routing timing logic
Avoid calling schedule() with zero alarm time
2013-11-26 15:33:54 +10:30
Andrew Bettison
a9ccd38adc Improve overlay buffer ob_xxx() primitives
All ob_append_xxx(b,...) functions return void

ob_makespace() returns 1 if successful, 0 if not

Add ob_overrun(b) predicate to check for overrun after any number of
appends
2013-11-26 15:33:54 +10:30
Andrew Bettison
9cdf053320 Fix RETURN macros
Remove trailing semicolon

Fix RETURNNULL(X) -- was not executing X at all
2013-11-25 13:22:40 +10:30
Andrew Bettison
45450386db Improve sendto(2) failure diagnostics
In MDP client and server MDP overlay code
2013-11-22 13:12:29 +10:30
Andrew Bettison
3805650736 Use ssize_t for sendto(2) return value, not int
Also improve error checking on ssize_t values (use ==-1 not <0) test
and cast ssize_t to size_t for comparisons
2013-11-22 11:55:09 +10:30
Andrew Bettison
e92e7cb65e Improve sendto(2) error log messages 2013-11-22 11:55:09 +10:30
Andrew Bettison
9ddcfb87aa Fix output delimiter in "reverse lookup" command 2013-11-22 11:55:09 +10:30
Jeremy Lakeman
0085291ae6 Remove stop file last during server shutdown to allow database cleanup 2013-11-21 18:11:47 +10:30
Jeremy Lakeman
a13189e554 Fix printf formats 2013-11-21 18:11:47 +10:30
Andrew Bettison
67a724b29d Fix Android compiler warnings ("%zd" and ssize_t)
Also squash some unconditional DEBUG statements
2013-11-21 17:32:58 +10:30
Andrew Bettison
702d22de99 Fix version_string.sh: check for .git directory was too early 2013-11-21 17:09:25 +10:30
Andrew Bettison
711364ad8d Merge branch 'meshextender' into 'development' 2013-11-21 17:05:03 +10:30
Andrew Bettison
8c06881fa3 Fix compiler warning 2013-11-21 16:49:44 +10:30