Adam Ierymenko
758bf949db
Check for subscribed multicast groups should be able to check groups bridged behind me.
11 years ago
Adam Ierymenko
488f5bf977
More build fixes, and attic/ some stuff.
11 years ago
Adam Ierymenko
93012b0ee5
Re-incorporation: ZeroTier Networks -> ZeroTier, Inc. [Delaware]
11 years ago
Adam Ierymenko
4e95384ad6
Cleanup, add tristate to config code in Network, and happy new year!
11 years ago
Adam Ierymenko
149dbff3ea
Windows Visual Studio meaningless-warning-ectomy.
11 years ago
Adam Ierymenko
04e4c5263e
Remove more legacy code -- just doing the supernode redist for old multicast is now good enough given the small number of legacy nodes left.
11 years ago
Adam Ierymenko
4303376ba6
cleanup and docs
11 years ago
Adam Ierymenko
cda61fe2d9
docs and cleanup
11 years ago
Adam Ierymenko
15d3e383e6
Add ZT_SUPPORT_LEGACY_MULTICAST ifdef to enable the legacy code to all be toggled.
11 years ago
Adam Ierymenko
6888c6482c
Re-enable legacy multicast distribution -- still too many pre1.0.0 nodes online.
11 years ago
Adam Ierymenko
d772639cc6
Multicast code cleanup.
11 years ago
Adam Ierymenko
acac88cf77
A few more tweaks to MC algo...
11 years ago
Adam Ierymenko
959f611a65
Fix thinko in multicast changes... works now!
11 years ago
Adam Ierymenko
7619b0ecbd
Send multicasts in random order.
...
This should not affect most users, but on large networks it should cause service
announcements to work a lot better. This is the result of a prolonged discussion
with a user about the visibility of game servers on a large network. The old
multicast algorithm was de-facto randomized due to its distributed nature, while
the new algorithm is more deterministic. This will restore some randomization
beyond limit-overflow conditions.
It won't affect small networks at all.
11 years ago
Adam Ierymenko
5484cf4309
More cleanup, and fix a bug in Multicaster::gather()
12 years ago
Adam Ierymenko
22d8aa4dc9
Moderate efficiency improvement on multicast gather result parsing, and go ahead and keep track of total known peers.
12 years ago
Adam Ierymenko
5bb854e504
Fix a nasty bug introduced in packet fragmentation a while back during refactoring, and a few other things related to multicast.
12 years ago
Adam Ierymenko
4dec598fb8
Make multicast gather slightly more aggressive, and add total to list command in testnet.
12 years ago
Adam Ierymenko
7c0f5e97e1
Don't need to check peer version for every item in txQueue since there is only one peer.
12 years ago
Adam Ierymenko
74f36f5dc0
Windows build fixes.
12 years ago
Adam Ierymenko
42d644a57e
More fixes to legacy support, and to a potential issue on quit.
12 years ago
Adam Ierymenko
c2aac69a9f
Fixes to legacy peer support.
12 years ago
Adam Ierymenko
56f8f8aa24
Return self in GATHER requests if self is a member of multicast group, and reinstate legacy support.
12 years ago
Adam Ierymenko
4941c8a1f3
New multicast bug fixes, TRACE improvements, and temporarily disable legacy multicast for debugging purposes.
12 years ago
Adam Ierymenko
d5e0f7e3e4
Reorg multicast packet, and a whole bunch of refactoring around the pushing of certificates of membership.
12 years ago
Adam Ierymenko
ab22feba9a
Bump version to 1.0.0, add legacy support code to Multicaster to not send new frame to known-to-be-old peers.
12 years ago
Adam Ierymenko
10c196df50
Send a VERB_P5_MULTICAST_FRAME to the supernode for each multicast -- for now. This will allow supernodes to echo these down to pre-1.0.0 peers.
12 years ago
Adam Ierymenko
2c8321be1f
Pull logic to always send new multicasts to supernode since we need to do that differently, re-add support for active bridges, and remove some gratuitous use of std::set where not needed.
12 years ago
Adam Ierymenko
62da7e67b6
Add some rate limiting to implicit gathers, and always send multicasts to at least one supernode so they can broadcast to old peers (temporary).
12 years ago
Adam Ierymenko
e7c81ef34e
Turns out that needed to be a list after all. Also clean up Multicaster::gather().
12 years ago
Adam Ierymenko
3f7e7e8a88
Do not multicast to self.
12 years ago
Adam Ierymenko
1109046782
Last steps before test: parse OK(MULTICAST_GATHER) and OK(MULTICAST_FRAME)
12 years ago
Adam Ierymenko
49dc47ff38
Make multicast gathering a bit smarter.
12 years ago
Adam Ierymenko
e1882b614b
Some cleanup, Multicaster now sends multicasts as it gets additional members.
12 years ago
Adam Ierymenko
2659427864
Multicaster needs to be global, not per-network, and a bunch of other stuff.
12 years ago
Adam Ierymenko
8607aa7c3c
Everything in for new multicast except IncomingPacket parsing...
12 years ago
Adam Ierymenko
ed0ba49502
A few more revisions to new multicast verbs.
12 years ago
Adam Ierymenko
0778332747
.
12 years ago
Adam Ierymenko
9e186bbd89
.
12 years ago
Adam Ierymenko
050a0ce85d
.
12 years ago
Adam Ierymenko
6c87f9f765
Rename MulticastTopology to Multicaster -- same name as old multicast controller but different code. More descriptive though.
12 years ago
Adam Ierymenko
431476e2e4
Some more multicast algo work...
12 years ago
Adam Ierymenko
9180a30986
.
12 years ago
Adam Ierymenko
61d0f27d2a
Make MulticastTopology have its own mutex.
12 years ago
Adam Ierymenko
954f9cbc13
Yet more WIP on mulitcast algo...
12 years ago
Adam Ierymenko
d9abd4d9be
Work on defining new direct broadcast multicast algorithm.
12 years ago