文件历史

提交图

289 次代码提交

作者 SHA1 备注 提交日期
Milos Gajdos 3d5d9be02a Avoid recursive calls to RLock()
Topology calls itsel recursively invoking RLock. This, according to go
documentation is wrong. This commit moves the body of Topology function
to a non-thread safe unexported function to keep locsk at check!
2019-10-18 11:26:43 +01:00
Asim Aslam 5c38f38dd9 No need to lock here since Topology read locks and makes copies 2019-10-18 11:26:43 +01:00
Milos Gajdos 2ae583ce94 Cleanup of tunnel dial code. Clean up network channel processors 2019-10-16 20:44:22 +01:00
Asim Aslam b1d5dc20fa Merge pull request #860 from micro/tunnel-mode
Tunnel mode
2019-10-15 16:14:38 +01:00
Asim Aslam be5093798b Use DialMode/ListenMode 2019-10-15 16:08:38 +01:00
Milos Gajdos 4936a2e1a5 Exponential backoff for failed accept connections 2019-10-15 15:58:33 +01:00
Asim Aslam ca934951ad Use multicast on network/control channels 2019-10-15 15:57:13 +01:00
Milos Gajdos fed5af68e6 Handle Accept errors gracefully.
Originally when Accept fails we log the error and let the program flow
continue. This can lead to us spawning handling connection go routines
on nil connections which in turn leads to Go panics.
2019-10-15 15:07:28 +01:00
Asim Aslam b1fed01752 add network name to node 2019-10-14 22:26:23 +01:00
Asim Aslam f77df51f60 Support reconnects 2019-10-13 18:36:22 +01:00
Asim Aslam d6c6e7815e Spaces not tabs 2019-10-13 12:40:53 +01:00
Asim Aslam 01492997ea add Network.Init method 2019-10-13 12:38:13 +01:00
Asim Aslam 174f1b857c Network handler moves to service/handler 2019-10-13 12:37:56 +01:00
Asim Aslam 5029d80e68 add Network.Connect handler and network/metadata fields to node 2019-10-13 12:37:39 +01:00
Asim Aslam b59c5a4488 move network handler to service/handler 2019-10-13 12:37:13 +01:00
Asim Aslam 2e47fdc6f5 Check the node map to avoid dupes in resolved nodes 2019-10-12 20:26:06 +01:00
Milos Gajdos f6931f3da7 Prune routes from routers that are not in your peer graph 2019-10-10 15:28:27 +01:00
Asim Aslam b2f99a27b7 Visit all the nodes in flatten 2019-10-10 14:35:11 +01:00
Asim Aslam 0dee11e006 Prune the peer address 2019-10-10 11:25:28 +01:00
Asim Aslam fe94237448 Update router querying method (#834)
* Add address to router query options. Drop Query interface for QueryOptions

* Cleanup isMatch function

* Update network proto
2019-10-09 17:13:52 +01:00
Milos Gajdos fe5846603a Only limit the number of nodes returned by network resolver. 2019-10-08 15:48:52 +01:00
Milos Gajdos 61800fb7d7 Fix typo: MaxCconnections -> MaxConnections 2019-10-08 15:15:50 +01:00
Milos Gajdos ec2fbde979 Limit the number of outbound connections to MaxConnections
This commit also fixes control channel shenanigans:
- recover error in control channel accept
2019-10-08 14:48:04 +01:00
Asim Aslam 94adeebed4 Use dns resolver on peer nodes 2019-10-08 09:25:23 +01:00
Asim Aslam ad823d5177 Add dns net.LookupHost resolver! 2019-10-08 09:04:13 +01:00
Milos Gajdos 9d9683b6f9 Recover net channel Accept errors. Init tunnel nodes before Connect 2019-10-07 19:09:04 +01:00
Asim Aslam 3c6b6553fb Use peerAddress as the thing to listen on 2019-10-03 18:35:54 +01:00
Asim Aslam 2244eb8597 Advertise your peer address as advertised address 2019-10-03 17:37:29 +01:00
Asim Aslam 2370fb1209 Set gateway to node address rather than id 2019-10-02 15:52:31 +01:00
Asim Aslam 308424488b Hash the network address 2019-10-02 15:22:44 +01:00
Asim Aslam b90871c241 Add Network.Services handler 2019-09-30 07:51:13 +01:00
Milos Gajdos 77f3e7ef48 Simplified table code. Fixed event dedup. 2019-09-26 11:56:30 +01:00
Asim Aslam dfcedbab1e In case of non 200 response return error 2019-09-25 16:53:06 +01:00
Asim Aslam ae40553bad only solicit the first time seeing a peer 2019-09-25 14:30:35 +01:00
Asim Aslam f23c6d91ba Do not embed proxy/router/tunnel 2019-09-25 12:56:52 +01:00
Asim Aslam d8dc713e2d Fix the http resolver to use micro.mu url 2019-09-23 17:50:53 +01:00
Asim Aslam 4260913b45 Set rpc methods as Network.Graph/Nodes/Routes 2019-09-23 15:41:05 +01:00
Asim Aslam f13887f604 Only hash address if its a local route 2019-09-20 09:40:55 +01:00
Asim Aslam 66769e671f Merge pull request #772 from micro/peers
Replace Nodes with Peers
2019-09-19 16:53:17 +01:00
Asim Aslam 7e05d2c440 Replace Nodes with Peers 2019-09-19 16:32:15 +01:00
Milos Gajdos a38482ffcb Remove data race; Unlock once done pruning/deleting 2019-09-19 11:53:13 +01:00
Asim Aslam 6222bc2a1e only set tunnel address if advertise is blank 2019-09-18 19:04:22 +01:00
Asim Aslam 05e62a2b95 allow setting advertise address 2019-09-18 18:56:02 +01:00
Milos Gajdos 38d6ffdf9a Hash the service address before advertising it to the network. 2019-09-17 18:34:06 +01:00
Asim Aslam e586763301 Merge pull request #761 from milosgajdos83/delete-peer-gw
Delete dead peer [gateway] routes
2019-09-17 16:54:35 +01:00
Milos Gajdos 3201b4cb36 Gateway is now set to node Id, hence we prune peer.id Gateway 2019-09-17 16:31:33 +01:00
Milos Gajdos 21dc7bcccf Fix gateway addressing
- Set Gateway as node.ID when advertising
- Set server.Address as node.ID to listen on
- Set server.Advertise as node.Address
2019-09-17 16:11:02 +01:00
Asim Aslam 9147d378bc Set node address to tunnel address 2019-09-17 15:40:00 +01:00
Milos Gajdos a72a2f717d Prune stale nodes in the whole topology. 2019-09-16 19:22:55 +01:00
Milos Gajdos 2599ee8591 Prune routes routable via dead node. 2019-09-15 12:17:12 +01:00