Commit Graph

74 Commits

Author SHA1 Message Date
xenia e5b8d8f8ae Estimate rtt and drop rate for fun and profit 2020-03-14 17:18:14 -04:00
Milo Turner 0b2f61f9fb work on batched ack's 2020-03-14 15:52:03 -04:00
Milo Turner f6cddca534 refactor 2020-03-14 15:51:49 -04:00
Milo Turner c37b767cb9 quit on file completed 2020-03-14 15:41:55 -04:00
Milo Turner 7d3715ab02 oops 2020-03-14 15:08:04 -04:00
xenia 63390aa7b8 Copy grading scripts 2020-03-14 15:07:14 -04:00
Milo Turner ce56278a68 send a lot of acks at the end 2020-03-14 15:06:22 -04:00
Milo Turner 6be8f77a1b rotate retransmitting packets 2020-03-14 15:06:22 -04:00
Milo Turner b5b2cd44df dont use hashmap 2020-03-14 15:06:22 -04:00
Milo Turner 2e6c441194 rustfmt 2020-03-14 15:06:22 -04:00
xenia c8940bbaee Add grade script with just the 4 performance tests 2020-03-14 15:03:59 -04:00
xenia 815471d6d1 Implement more efficient scheme for ack packet coding 2020-03-14 14:42:03 -04:00
xenia ee3db94155 Comments, add grade script 2020-03-13 23:42:16 -04:00
xenia 269bb8b104 Integrate hex encoder/decoder with hptp protocol 2020-03-13 23:27:50 -04:00
xenia a6d4af87ce Implement better heck encoding (not used yet) 2020-03-13 20:28:33 -04:00
xenia e042551263 Minor test update 2020-03-13 17:27:27 -04:00
xenia a9732fcebd Add silly hex encoder 2020-03-13 17:26:08 -04:00
Milo Turner 954e25b055 keep multiple un-ack'd packets in flight 2020-03-12 18:13:51 -04:00
Milo Turner 4fd8a45689 send acks on timeout 2020-03-12 18:13:49 -04:00
Milo Turner 038fd9037a ooop 2020-03-11 13:53:50 -04:00
Milo Turner 4fb26866c2 oop 2020-03-11 13:49:26 -04:00
Milo Turner f858cbc398 segment data in its own type called SegData; handles EOF (badly) 2020-03-11 13:14:55 -04:00
xenia aefc4d73ab With a rust-toolchain file I think manual rustup is no longer necessary 2020-03-11 00:01:38 -04:00
xenia 7c384ed949 Delete useless file 2020-03-10 23:59:47 -04:00
xenia f035ab682b symlink 2020-03-10 23:57:53 -04:00
xenia e361aabe72 Fix perl issues 2020-03-10 23:53:51 -04:00
xenia 56fafc9dd5 Fix makefile 2020-03-10 23:32:08 -04:00
xenia dc2e851655 Create test environment 2020-03-10 23:21:47 -04:00
Milo Turner 847d327d58 hmm 2020-03-10 20:58:14 -04:00
Milo Turner f48846f325 segmentsink datastructure for hptp-recv 2020-03-10 20:56:42 -04:00
Milo Turner 3820b28964 rename SegmentStore => SegmentSource 2020-03-10 20:46:02 -04:00
Milo Turner 924e7d28b3 receive ACKs 2020-03-10 18:35:54 -04:00
Milo Turner 6b3d8acdf1 change ack msg to store as array 2020-03-10 18:34:55 -04:00
Milo Turner a37edf2112 fix leading zeros in timestamp formatting 2020-03-10 18:33:47 -04:00
Milo Turner 634389125d hptp-send "receives ACKs", but doesn't act on them 2020-03-10 17:49:43 -04:00
Milo Turner dfd33acf1e segment store 2020-03-10 17:46:10 -04:00
Milo Turner 86af734542 handle duplicate packets 2020-03-10 12:32:23 -04:00
Milo Turner dd6c4ff088 *very* primitive segment-index ack's 2020-03-10 12:01:44 -04:00
Milo Turner f0481e350d rename 2020-03-09 17:36:23 -04:00
Milo Turner 5dcda7aec3 put constants in hptp::seg module 2020-03-09 17:34:37 -04:00
Milo Turner bb6f534626 let the kernel pick my UDP ports 2020-03-09 17:18:08 -04:00
Milo Turner 4ad767e5c4 begin fleshing out package types 2020-03-09 16:25:25 -04:00
Milo Turner 87fd190378 don't create intermediate Vec's while serializing messages 2020-03-09 14:31:57 -04:00
Milo Turner 6652ddb3d1 separate types for upload/download messages 2020-03-09 14:15:27 -04:00
Milo Turner 9553c25b26 write hptp-send more like a state machine 2020-03-09 14:15:17 -04:00
Milo Turner 39fc9a5a48 release build, create 3700xxx binaries 2020-03-09 12:47:45 -04:00
Milo Turner e687f03227 use 'chrono' for grabbing and printing timestamps in log 2020-03-09 12:23:19 -04:00
Milo Turner ca8a1b6884 implement other log functions and use them 2020-03-09 11:59:09 -04:00
Milo Turner ebd3c8333e dumb simple Ack messages and peer error handling 2020-03-09 11:33:19 -04:00
Milo Turner a569737ba2 don't worry about it ... 2020-03-09 11:12:04 -04:00