add .gitignore
[swift-upb.git] / TODO
diff --git a/TODO b/TODO
index 336a7b5..fe284a5 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,19 +1,31 @@
     TRIAL TODO
 
 STATE MACHINE
-* imposed HINTs are terribly broken, resend the same data over and over again
+* imposed HINTs are terribly broken, resent for the data in flight 
 * check ACK/HAVE redundancy
+* HAVE overuses find_filtered
+* set priorities on ranges
 * small-progress update problem (aka peer nap)
   guarantee size of updates < x% of data, on both ends
+* pex is affected by peer nap
+* how will tracker aggregate pexes?
+* SWIFT_MSGTYPE_RCVD
 * HAVE ALL / HAVE NONE
 * aggregate ACKS (schedule for +x ms)
+* channel close msg (hs 0)
+* connection rotation / pex / pex_del
+* misterious bug: Rdata (NONE)
+* ?amend MAX_REORDER depending on rtt_dev
+* Tdata repetitions bug
 
 PERFORMANCE
 * move to the.zett's binmaps
 * optimize redundant HASH messages
-* move to rotated ACK queue
+* move to rolling HAVE queue
 * 32 bit time field
 * ?empty/full binmaps
+* initiate RTT with prev RTT to host:port
+* fractional cwnd
 
 CACHING/FILES
 * connection rotation
@@ -26,6 +38,7 @@ CACHING/FILES
 * move to 64-bit IO
 * Transfer(fd) constructor
 * think of sliding window(s)
+* the ability to sniff file without downloading
 
 MANIFOLD
 * all-swarm performance stats
@@ -37,7 +50,27 @@ MANIFOLD
 * recover mfold.libswift.org
 * integrate Windowses
 
+API
+* pluggable storage
+
+NAT
+* NAT type detection => need peer identifiers (x100 amplification)
+
+MFOLD
+* integrate multi-peer changes by Jori
+* do global swarm stats
+
 OTHER
+* httpgw or nginx?
 * Sha1Hash constructor ambiguity
 * don't #include .cpp
 * think of using HTTP (?) as a fallback
+* add header/footer, better abstract to the draft
+* Gertjan: separate peer from channel? cng ctrl per peer ?
+* packing hashes into a single datagram (tracking 1000s)
+* partial channels / lightweight channels
+
+THOUGHTS
+* 6 degrees of sep = 3-hop TorrentSmell
+* 60% immediately not connectable
+* support traffic