TODO updated
[re6stnet.git] / TODO
1 Bugs :
2     When no peer is avalaible without the --no-boot option, it crash
3
4 To be done :
5     Do a clean-up in the import
6
7 To be discuss:
8     Remove the --no-boot option since we know when no node is avalaible
9
10     Find a better solution for config than utils.config = config, openv.config = config, ...
11
12     When I created PeersDB, I thought only be used to access the DB and not do some logic. 
13         We should decide what it is suppose to do :
14             Just access the DB
15             Or manage the peers
16
17     The organisation of the code
18         vifibnet.py         Just contain the main loop and the init
19         openpvn.py          To launch openvpn processes
20         utils.py            Small functions to do some usefull job, also contains the config
21         db.py               Function to access the DB (merge with utils ?)
22         tunnelmanager.py    To choose wich connection delete/keep/...
23         upnpigd.py          To open a port and find the external IP
24
25     How we choose which protocol we use :
26         IMO, we should use UDP. I've read many times than TCP other TCP can be catastrophic in terme of performance 
27         Every time a packet is lost, it is resend 2 times, one for each TCP tunnel
28         And many GW allow UDP port forwarding (for bittorent, Xbox, ...) but not TCP port forwarding
29
30     Use peers_db.populate(100) every once in a while ? -> yes but be warry of the refresh time ( populate
31     the db once every 20s is bad.. )