Commit Graph

  • a65dbdbc8a Pend send state on all deliveries Matt Joiner 2015-10-03 20:40:50 +10:00
  • 39a586360a Put the sendState timer into a dedicated delivery goroutine Matt Joiner 2015-10-03 20:39:44 +10:00
  • 43be55a3df cmd/ucat: Try to send ST_FIN before exiting on SIGINT Matt Joiner 2015-10-03 20:35:55 +10:00
  • 615ece47b2 Log goroutine counts in some tests Matt Joiner 2015-10-02 23:21:59 +10:00
  • 64e1b8927d Batch sendState calls using a timer Matt Joiner 2015-10-02 22:16:33 +10:00
  • a1344fea5c Test improvements Matt Joiner 2015-10-02 20:54:06 +10:00
  • b774080e7b Implement PacketConn on Socket Matt Joiner 2015-10-02 20:31:55 +10:00
  • 8df16de01b Calculate resendTimeout based on previous ack times Matt Joiner 2015-10-02 19:01:16 +10:00
  • 0952ee6ec2 Raise minMTU from 576 to 1232 Matt Joiner 2015-10-02 19:00:26 +10:00
  • 264f5bf47c Add the drone.io status badge Matt Joiner 2015-10-02 14:47:26 +10:00
  • e79ddacc79 Rework Conn.write, and a lot of connection state management Matt Joiner 2015-10-02 14:43:49 +10:00
  • 73c98675d9 Tidy Matt Joiner 2015-09-28 15:23:04 +10:00
  • 97ed88c169 Reset unexpected packets Matt Joiner 2015-09-28 15:22:54 +10:00
  • 50cd320521 Restore the original packet drop chance in test Matt Joiner 2015-09-28 15:21:23 +10:00
  • d2ab163edf pingpong: Turn off GOPPROF by default Matt Joiner 2015-09-27 15:43:38 +10:00
  • 5ea016235c sendTimeout constant Matt Joiner 2015-09-27 15:43:17 +10:00
  • 62660ad5f6 Poking it with a stick Matt Joiner 2015-09-27 11:43:44 +10:00
  • b95aeacd71 Add TestCloseDetachesQuickly Matt Joiner 2015-09-26 21:01:04 +10:00
  • a71fcc5e7c Break up the Conn.deliver Matt Joiner 2015-09-26 21:00:40 +10:00
  • 5f1f46de86 Create a packet type Matt Joiner 2015-09-26 20:54:27 +10:00
  • ef67246305 Protect artificialPacketDropChance with a mutex Matt Joiner 2015-09-26 19:45:57 +10:00
  • 125b756c38 Helps to be explicit with constants, especially for debugging Matt Joiner 2015-09-26 16:26:38 +10:00
  • 901cefe9e9 Tweaks to the way finishing works Matt Joiner 2015-09-26 16:24:49 +10:00
  • fb8dc46db0 Test improvements Matt Joiner 2015-09-26 16:22:25 +10:00
  • 563ce24de6 All UDP writes go through Socket.writeTo Matt Joiner 2015-09-26 16:21:29 +10:00
  • 1f0c178841 I should never have added this Matt Joiner 2015-09-26 11:02:39 +10:00
  • 4e42ed5617 Test tidying Matt Joiner 2015-09-26 11:02:04 +10:00
  • 269458c8ce Log errors resending Matt Joiner 2015-09-25 21:20:34 +10:00
  • 2a9078d68d Add TestReadFinishedConnection, and delay closing Socket until all Conns are detached Matt Joiner 2015-09-25 13:31:13 +10:00
  • d21e5d493e Some tidying Matt Joiner 2015-09-25 13:18:55 +10:00
  • b25ac8466e Should be sending fin packet if one already hasn't been sent Matt Joiner 2015-09-25 13:17:07 +10:00
  • dbff664557 Improve pingpong's reporting of average rate Matt Joiner 2015-09-24 21:22:07 +10:00
  • 4abad7cf80 Tidy dispatcher Matt Joiner 2015-09-24 21:16:03 +10:00
  • 94b3b4bf3f Reduce contention on Socket mutex Matt Joiner 2015-09-24 20:51:06 +10:00
  • 6d22c5ae51 Spawn a goroutine for each dispatch to reduce the time between ReadFrom's on the socket Matt Joiner 2015-09-24 20:46:11 +10:00
  • 5550442b56 Rate limit concurrent connections in the tests Matt Joiner 2015-09-16 21:34:01 +10:00
  • 942e885ecd Ditch monotonic time which requires cgo for just using the standard library time Matt Joiner 2015-09-16 21:33:14 +10:00
  • 0051631c1d Improve the pingpong script for benchmarking Matt Joiner 2015-09-16 21:32:23 +10:00
  • bf70a191f2 Back off on the unexpected seqnr logging Matt Joiner 2015-08-17 22:38:13 +10:00
  • d99d23902f Add network parameter to NewSocket Matt Joiner 2015-08-05 02:50:45 +10:00
  • 4b2ab88975 Reduce overly taxing test Matt Joiner 2015-08-04 00:24:09 +10:00
  • 02fc9e530e Remove debugging noise from tests Matt Joiner 2015-08-04 00:23:28 +10:00
  • 4f8170a723 Some functions have moved to missinggo Matt Joiner 2015-08-04 00:23:01 +10:00
  • 8eb0cc7e7c Fix the Close methods on several objects Matt Joiner 2015-08-04 00:22:30 +10:00
  • a61c0bf709 Improve readme. Matt Joiner 2015-07-27 21:36:11 +10:00
  • 6e62490a36 Comments and doc Matt Joiner 2015-07-27 21:33:44 +10:00
  • 1fc224766e Merge consts Matt Joiner 2015-07-27 21:32:53 +10:00
  • a0ac6b232d sortimports Matt Joiner 2015-07-27 21:32:03 +10:00
  • 833f43cc36 pingpong: Some commented out code that may be useful Matt Joiner 2015-06-30 01:02:18 +10:00
  • 4464dbfe22 Add errAckTimeout Matt Joiner 2015-06-30 00:54:04 +10:00
  • c49ffdc41c Try to avoid more than 64 unacked sends or receives Matt Joiner 2015-06-30 00:53:28 +10:00
  • 9a71cc8b4e Use a sync.Pool for send/write buffers Matt Joiner 2015-06-30 00:50:33 +10:00
  • 2b91ef9c2e Reduce test noisiness Matt Joiner 2015-06-30 00:48:09 +10:00
  • 89a933285a Yes, yes I believe they are Matt Joiner 2015-04-20 17:27:06 +10:00
  • c01c929209 Squelch unknown utp extension log message Matt Joiner 2015-04-20 17:26:34 +10:00
  • 80429dcdcf Fix a race alert when fiddling the resendTimer Matt Joiner 2015-04-20 17:25:46 +10:00
  • d6eb1d0fe7 Do resends through timers to reduce go routine count Matt Joiner 2015-04-14 23:54:29 +10:00
  • aec9e68bde Log shortfile in tests Matt Joiner 2015-03-30 22:51:18 +11:00
  • 8220d141ba The artificial packet dropping code had migrated into the wrong send method Matt Joiner 2015-03-30 22:50:31 +11:00
  • 6db6fd7dfd Interface needs to return net.Conn interfaces, or tests against net.Conn with a nil pointer inside get annoying Matt Joiner 2015-03-30 22:49:47 +11:00
  • 10003179f3 Improve pingpong comments Matt Joiner 2015-03-30 22:45:08 +11:00
  • bc4d5b9b36 Fix data race Matt Joiner 2015-03-30 12:43:40 +11:00
  • 2af35ea7b5 Sort imports with sortimports Matt Joiner 2015-03-28 02:40:56 +11:00
  • 885dda780b Create README.md Matt Joiner 2015-03-25 23:00:42 +11:00
  • 665bac2103 License is MPL2.0 Matt Joiner 2015-03-25 17:36:14 +11:00
  • 627dc1fcb4 Some tweaks to docs Matt Joiner 2015-03-20 20:24:05 +11:00
  • f64e5d7e0a bitbucket.org/anacrolix/sync moved to github Matt Joiner 2015-03-20 16:47:04 +11:00
  • 5e92d7c9c0 Rewrite paths for migration from Bitbucket Matt Joiner 2015-03-20 16:36:07 +11:00
  • 0d8db12cfa Fix package doc Matt Joiner 2015-03-20 16:25:24 +11:00
  • 681576ec0c Backlog channel was storing duplicate SYNs Matt Joiner 2015-03-18 21:41:07 +11:00
  • 0e146ab7b3 Support ST_RESET and improve handling of connID collisions Matt Joiner 2015-03-18 18:07:30 +11:00
  • 4f99a15851 Avoid crash on nil .detach when DialTimeout fails to register a new connection Matt Joiner 2015-03-04 13:16:30 +11:00
  • 6049d8fe03 Detach from Socket via a callback Matt Joiner 2015-02-18 21:27:55 +11:00
  • 0ae190cc1d Make use of deadline in Conn.Write Matt Joiner 2015-02-10 00:06:39 +11:00
  • 2616df386e Share emulated deadlines code in connDeadlines Matt Joiner 2015-02-10 00:06:14 +11:00
  • 09bda75811 io.EOF when remote sends FIN Matt Joiner 2015-02-09 15:44:51 +11:00
  • 3b4979ee66 Comments Matt Joiner 2015-02-09 15:43:45 +11:00
  • 8f469104e7 Tidy interface and doc Matt Joiner 2015-02-06 17:23:04 +11:00
  • 9ebd7a7824 Logging Matt Joiner 2015-02-06 14:57:11 +11:00
  • a26acfc874 Unregister connections that are closed Matt Joiner 2015-02-06 14:56:52 +11:00
  • 166242ab56 Fix dial race Matt Joiner 2015-02-06 14:56:40 +11:00
  • ae01d31b04 Conn.waitAck updated Matt Joiner 2015-01-29 14:14:54 +11:00
  • 1e55fbfc92 Receiving ST_FIN was skipping Conn.destroy call and leaking writes Matt Joiner 2015-01-29 14:13:42 +11:00
  • 365473d164 Comments and tidy Matt Joiner 2015-01-29 14:12:41 +11:00
  • 4634c92091 Ensure writes don't occur after Conn is set to destroy Matt Joiner 2015-01-29 14:12:15 +11:00
  • 3848024705 dial timeout is a net.Error Matt Joiner 2015-01-29 14:11:23 +11:00
  • e2d8cb0f5b Send duplicate SYNs through so we can ack them in case our last ack went missing Matt Joiner 2015-01-29 14:11:01 +11:00
  • b763eedd0a Add env var to artificially drop packets Matt Joiner 2015-01-29 14:09:17 +11:00
  • 189e3ba2ee TODO Matt Joiner 2015-01-28 01:10:45 +11:00
  • 589ddbb526 Discard inbound packets that are more than 64 sequence numbers ahead of what's expected Matt Joiner 2015-01-28 01:10:32 +11:00
  • 33a7296d5c Send selective ACKs Matt Joiner 2015-01-28 01:09:52 +11:00
  • d08e3d9224 Updates to pingpong Matt Joiner 2015-01-28 01:08:13 +11:00
  • 9ed14654f9 Update comment Matt Joiner 2015-01-26 01:03:36 +11:00
  • 94d6e238da errTimeout is a net.Error Matt Joiner 2015-01-26 01:03:24 +11:00
  • 4ab017fc80 Fix some bad behaviour Matt Joiner 2015-01-22 00:39:42 +11:00
  • 2d641c2eba Reduce memory use in reader Matt Joiner 2015-01-22 00:39:27 +11:00
  • 3784a6159e Improve timeout retries, add ack skipped retry Matt Joiner 2015-01-17 00:02:43 +11:00
  • e2f30af837 pingpong: Updates Matt Joiner 2015-01-17 00:01:42 +11:00
  • 382f476cde Make errTimeout support net.Error Matt Joiner 2015-01-14 14:34:58 +11:00
  • 0446dac8e9 Return from Accept when the socket is closed Matt Joiner 2015-01-14 14:34:33 +11:00