Arceliar
|
59896f17fd
|
more cleanup
|
2020-05-23 10:28:57 -05:00 |
|
Arceliar
|
ef1e506a0c
|
work-in-progress on more cleanup
|
2020-05-23 10:23:55 -05:00 |
|
Arceliar
|
59c5644a52
|
some peer/link cleanup
|
2020-05-23 10:08:23 -05:00 |
|
Arceliar
|
d43b93f60a
|
safer check for the queues if we're blocked on a send, should work even if we're blocked on a link packet send
|
2020-05-17 13:23:15 -05:00 |
|
Arceliar
|
0dcc555eab
|
cleaner startup/shutdown of the link writer's worker
|
2020-05-17 08:34:22 -05:00 |
|
Arceliar
|
15ac2595aa
|
use a dedicated per-stream writer goroutine, send messages to it over a 1-buffered channel, this eliminates most of the false positive blocking that causes drops
|
2020-05-17 08:22:02 -05:00 |
|
Arceliar
|
62b9fab5f8
|
more work-in-progress, debugging why things are dropping so often
|
2020-05-16 18:56:04 -05:00 |
|
Arceliar
|
052de98f12
|
work-in-progress on buffering overhaul
|
2020-05-16 17:07:47 -05:00 |
|
Arceliar
|
dc128121e5
|
update switch blockPeer/unblockPeer logic and dht reset when coords change
|
2020-05-16 09:25:57 -05:00 |
|
Arceliar
|
20ef591013
|
fix some crashes with races during peer setup
|
2020-05-02 11:16:11 -05:00 |
|
Arceliar
|
6d89570860
|
eliminate most sync.Pool use, gives a safer but slightly slower interface
|
2020-05-02 06:44:51 -05:00 |
|
Arceliar
|
9d0969db2b
|
prevent a hypothetical block on link message sending
|
2020-04-05 14:57:05 -05:00 |
|
Arceliar
|
945930aa2c
|
WIP have peer actors queue packets, temporarily a single simple FIFO queue with head drop
|
2020-04-03 00:32:26 -05:00 |
|
Arceliar
|
9834f222db
|
more work in progress actorizing the remaining parts of the switch
|
2020-03-29 19:01:50 -05:00 |
|
Arceliar
|
e926a3be6d
|
work in progress actorizing core.peers and replacing switch worker with per-peer switch-generated lookupTable
|
2020-03-29 00:23:38 -05:00 |
|
Arceliar
|
f308e81bf3
|
in the switch, keep a separate set of queues per peer instead of a global queue
|
2020-02-18 20:13:39 -06:00 |
|
Dimitris Apostolou
|
73f50af3b7
|
Fix typos
|
2019-11-29 11:45:02 +02:00 |
|
Arceliar
|
3e07995518
|
it helps to actually set the flag...
|
2019-11-24 18:53:58 -06:00 |
|
Arceliar
|
27cc57dbbc
|
attempt to prevent incorrect idle notification in switch, needs testing
|
2019-11-24 18:24:17 -06:00 |
|
Neil Alexander
|
6a22e6c9de
|
Initial connection upgrade/TLS peering support
|
2019-10-23 17:26:35 +01:00 |
|
Arceliar
|
ac58c3586e
|
cleanup/comments
|
2019-09-25 17:53:25 -05:00 |
|
Arceliar
|
b9e74f34ec
|
replace the send-to-self with a timer and an arbitrary timeout; i don't really like this but it seems to work better (1 ms is fast by human standards but an eternity for a syscall or the scheduler, so i think that's reasonable)
|
2019-09-24 18:28:13 -05:00 |
|
Arceliar
|
8c64e6fa09
|
explicitly notify the switch when a link appears to be blocked in a send instead of assuming this is the case for all idle links. how we decide when it's really blocked still needs testing/optimizing
|
2019-09-24 18:01:35 -05:00 |
|
Arceliar
|
93e81867fd
|
have link.stop signal active links to close, have tcp.stop wait for all listeners and active connections to close
|
2019-09-19 19:15:59 -05:00 |
|
Neil Alexander
|
b959f53fee
|
Shut down listeners when stopping
|
2019-09-18 16:32:22 +01:00 |
|
Neil Alexander
|
846df4789a
|
Be more verbose when a peer or listener is badly formatted
|
2019-09-18 15:01:19 +01:00 |
|
Neil Alexander
|
fc9a1c6c31
|
Simplify reconfiguration
|
2019-08-28 19:31:04 +01:00 |
|
Neil Alexander
|
e553f3e013
|
Reconfigure functions now ran by actors
|
2019-08-28 12:46:12 +01:00 |
|
Arceliar
|
3845f81357
|
update to latest phony, adjust interface use accordingly
|
2019-08-27 19:43:54 -05:00 |
|
Arceliar
|
4d9c6342a7
|
more link updates
|
2019-08-26 18:37:38 -05:00 |
|
Arceliar
|
c97dd4ad28
|
fix dial bug
|
2019-08-26 00:38:14 -05:00 |
|
Arceliar
|
ab59129557
|
have the writer clean things up. note that their still seem to be bugs in the main linkInterface actor's state machine--links sometimes just die, presumably because they're dropped from the switch and never replaced
|
2019-08-25 23:24:18 -05:00 |
|
Arceliar
|
bd3eaefb72
|
more link migration
|
2019-08-25 22:55:17 -05:00 |
|
Arceliar
|
b5b179904b
|
ugly work-in-progress to migrate link to the actor model
|
2019-08-25 22:19:20 -05:00 |
|
Arceliar
|
502f2937a9
|
a couple race fixes and use timer.AfterFunc instead of sleeping goroutines or ticker in a few places
|
2019-08-25 17:00:02 -05:00 |
|
Arceliar
|
a3d4d8125b
|
make the main library reconfiguration more actor-friendly
|
2019-08-25 12:10:59 -05:00 |
|
Arceliar
|
aa30c6cc98
|
upgrade phony dependency and switch to its new interface
|
2019-08-25 10:36:09 -05:00 |
|
Arceliar
|
48bbdac9b3
|
add a helper actor to the link reader to make it play nicer with backpressure
|
2019-08-24 16:27:12 -05:00 |
|
Arceliar
|
99be6b037d
|
stop synchronizing message reads for now, not 100% safe but I don't have any better ideas
|
2019-08-24 16:13:34 -05:00 |
|
Arceliar
|
998c76fd8c
|
more switch migration
|
2019-08-24 15:22:46 -05:00 |
|
Arceliar
|
88161009e9
|
more peer migration
|
2019-08-24 12:55:49 -05:00 |
|
Arceliar
|
62337bcd64
|
allow links to send multiple packets at once, currently we still only bother to send 1 at a time from the switch level
|
2019-08-18 12:17:54 -05:00 |
|
Arceliar
|
46c5df1c23
|
when we abandon a link because we already have a connection to that peer, only wait for the connection to close if it's an *outgoing* link, otherwise incomming connection attempts can cause us to leak links
|
2019-08-13 18:49:49 -05:00 |
|
Neil Alexander
|
39baf7365c
|
Unexport/modify some interfaces to revive broken iOS/Android builds
|
2019-03-30 00:09:35 +00:00 |
|
Neil Alexander
|
dc3a05f13a
|
Correctly classify link-local addresses in the TCP handler, fix AllowedPublicEncryptionKeys warning
|
2019-03-12 16:03:02 +00:00 |
|
Neil Alexander
|
229de91a3a
|
Fix AllowedEncryptionPublicKeys so that it works in incoming connections and not outgoing ones
|
2019-03-12 15:01:27 +00:00 |
|
Arceliar
|
c7b4bfcef5
|
misc fixes
|
2019-03-09 18:08:26 -06:00 |
|
Arceliar
|
a0e6edd219
|
Merge pull request #360 from neilalexander/multilink
Support for multiple listeners
|
2019-03-08 18:56:47 -06:00 |
|
Neil Alexander
|
917ca6c1c5
|
Make changes based on review comments
|
2019-03-08 10:26:46 +00:00 |
|
Arceliar
|
02b1892cc5
|
try to switch parents if a parent link is blocked
|
2019-03-07 21:36:12 -06:00 |
|