mirror of
https://github.com/irungentoo/toxcore.git
synced 2024-03-22 13:30:51 +08:00
updated/fixed TODO list.
This commit is contained in:
parent
bba2027e7b
commit
2772cb318b
35
docs/TCP_Network.txt
Normal file
35
docs/TCP_Network.txt
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
It has come to our attention that to achieve decent market penetration Tox
|
||||||
|
must work behind ALL internet connections, may they be behind enterprise NATs
|
||||||
|
or any other bad network conditions.
|
||||||
|
|
||||||
|
The people who have issues with the UDP direct connection approach seem to be a
|
||||||
|
small minority though it is hard to estimate how many.
|
||||||
|
|
||||||
|
This means that routing their packets using good nodes on the network will
|
||||||
|
probably not take a huge toll on the network and will assure that people
|
||||||
|
can use Tox regardless of the quality of their internet connection.
|
||||||
|
|
||||||
|
|
||||||
|
How it's probably going to work:
|
||||||
|
1. Alice, a Tox client on a TCP only network generates a temporary public key
|
||||||
|
and connects to a bootstrap server.
|
||||||
|
|
||||||
|
2. Using the bootstrap server she find and connects to a couple (exact number
|
||||||
|
to be determined later) number of random nodes that have TCP relay support.
|
||||||
|
|
||||||
|
3. She uses the onion through the TCP relay connections to send friend requests
|
||||||
|
or tell online friends which TCP nodes she is connected to and her temporary
|
||||||
|
public key.
|
||||||
|
|
||||||
|
4. Bob receives an onion packet from Alice telling him which nodes she is
|
||||||
|
connected to. Bob connects to these nodes and establishes a routed connection
|
||||||
|
with alice using that temporary public key.
|
||||||
|
|
||||||
|
5. That connection is used by both to transmit encrypted Messenger and A/V
|
||||||
|
packets.
|
||||||
|
|
||||||
|
6. If one of the nodes shuts down while it is currently routing traffic, Alice
|
||||||
|
and bob just switch to one of the other nodes they are both connected to.
|
||||||
|
|
||||||
|
|
||||||
|
Actual detailed implementation details coming soon.
|
14
docs/TODO
14
docs/TODO
|
@ -7,7 +7,7 @@ Networking:
|
||||||
[NOT STARTED] NAT-PMP port forwarding.
|
[NOT STARTED] NAT-PMP port forwarding.
|
||||||
|
|
||||||
DHT:
|
DHT:
|
||||||
[IN PROGRESS] Metadata collection prevention. (docs/Prevent_Tracking.txt)
|
[ALMOST DONE] Metadata collection prevention. (docs/Prevent_Tracking.txt)
|
||||||
[IN PROGRESS] Hardening against attacks.
|
[IN PROGRESS] Hardening against attacks.
|
||||||
[IN PROGRESS] Optimizing the code.
|
[IN PROGRESS] Optimizing the code.
|
||||||
|
|
||||||
|
@ -20,14 +20,14 @@ Lossless UDP:
|
||||||
[NOT STARTED] Make clients sign their messages so that peers can't modify them.
|
[NOT STARTED] Make clients sign their messages so that peers can't modify them.
|
||||||
|
|
||||||
[IN PROGRESS] Audio/Video
|
[IN PROGRESS] Audio/Video
|
||||||
[DONE] Capture/encoding/streaming/decoding/displaying
|
[DONE] encoding/streaming/decoding
|
||||||
[IN PROGRESS] Call initiation
|
[IN PROGRESS] Call initiation
|
||||||
[NOT STARTED] Encryption
|
[IN PROGRESS] Encryption
|
||||||
|
[IN PROGRESS] Auditing.
|
||||||
[NOT STARTED] Small group chats
|
[NOT STARTED] Small group chats
|
||||||
[NOT STARTED] Push to talk for audio
|
|
||||||
|
|
||||||
Friend_requests.c:
|
Friend_requests.c:
|
||||||
[NOT STARTED] What happens when a friend request is recieved needs to be changed.
|
[NOT STARTED] What happens when a friend request is received needs to be changed.
|
||||||
[NOT STARTED] Add multiple nospam functionality.
|
[NOT STARTED] Add multiple nospam functionality.
|
||||||
|
|
||||||
[DONE] File transfers
|
[DONE] File transfers
|
||||||
|
@ -38,6 +38,10 @@ Friend_requests.c:
|
||||||
[DONE] DHT + Messenger
|
[DONE] DHT + Messenger
|
||||||
[NOT STARTED] Group chats (They work with IPv6 but some things need to be tested.)
|
[NOT STARTED] Group chats (They work with IPv6 but some things need to be tested.)
|
||||||
|
|
||||||
|
|
||||||
|
[NOT STARTED] A way for people to connect to people on Tox if they are behind a bad NAT that
|
||||||
|
blocks UDP (or is just unpunchable) (docs/TCP_Network.txt)
|
||||||
|
|
||||||
[NEEDS TESTING] Make the save made with tox_save_encrypted(...) harder to brute force.
|
[NEEDS TESTING] Make the save made with tox_save_encrypted(...) harder to brute force.
|
||||||
See: (https://github.com/jencka/ProjectTox-libtoxdata)
|
See: (https://github.com/jencka/ProjectTox-libtoxdata)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user