3 ms·
IPv6 is already being deployed from top tier mobile carriers and that allows globally rout-able addresses even behind NATs. If you have no social graph on yada
by pdxwebdev 16y ago
IPv6 is already being deployed from top tier mobile carriers and that allows globally rout-able addresses even behind NATs.
If you have no social graph on yada, then your very first connection to a friend may have to be unencrypted, but not in every case.
- dinedal 16y ago> IPv6 is already being deployed from top tier mobile carriers and that allows globally rout-able addresses even behind NATs. You're making a lot of assumptions: 1) That IPv6 will assign a unique and constant IP to every device. Many ISPs provide this as an up-sell feature, not the default, and I don't expect them to change their behavior even if the cost of it approaches 0. 2) That IPv6 will solve all your network problems. It doesn't solve the issue of a bad link or a restrictive firewall. Consider Hosts [A,B,C] and Firewall F. F will block all connections from B. How will yada connect A and B in this arrangement: A <-F-> [B,C] ? Will is use C to route the connection? How will it determine that C can act as an intermediary, and how will it protect A's data such that C can not be used as a MTM (Man in The Middle) attack vector?
- pdxwebdev 16y ago1) Each client checks for internal and external IPs and saves them. That list is transmitted to your friends every time you update them with other data. It automatically manages this list of possible places to reach you. 2) There will be indexers for these cases which can be used as relay points. C would merely be a match-maker, telling each host which IP address and port is currently open. No data is sent through C. Skype does this.
- dinedal 16y agoSkype doesn't do this. Please read: http://www.mjalali.com/blog/?p=10 http://www.mjalali.com/blog/?p=10 >1) Each client checks for internal and external IPs and saves them. That list is transmitted to your friends every time you update them with other data. It automatically manages this list of possible places to reach you. According to the link, "supernodes" route connections and provide matchmaking between Skype callers. How do you find the "supernodes"? "If this file is not present, SC tries to establish a TCP connection with each of the seven Skype maintained default SNs IP address on port 33033." >2) There will be indexers for these cases which can be used as relay points. C would merely be a match-maker, telling each host which IP address and port is currently open. No data is sent through C. "If caller and receiver are behind a UDP-restricted firewall they will need a relay (node) in between to establish TCP connection to and then the traffic (including media) will go through from one side to the other." Skype's protocol would use host C as an intermediary.
- pdxwebdev 16y agoThat's true, its not exactly the same as your example. But the method I have developed does work.
- dinedal 16y agoYou didn't address my point about initial discovery being maintained by Skype. Also, could you please point out to me the method you have developed for initial discovery? I've yet to see it in your source code. This is a very tough nut to crack and if you've got it done already then I'm impressed.
- pdxwebdev 16y agoAnd if you're impressed, what happens? Do you help me? Because I'll fight tooth and nail to impress you if you'll help me. Seriously.
- dinedal 16y agoShow me one place in your code right now where you have done something innovative with peer discovery, that no network engineer, or researcher has tried before, doesn't use a central meeting point, and is successful at discovering peers in a reasonable amount of time. I'll start work immediately. I'm pretty sure more people will join in on it too if this is the case.
- pdxwebdev 16y agoThat is not coded at this time but you shall see, sir.