edgemesh icon indicating copy to clipboard operation
edgemesh copied to clipboard

EdgeMesh supports high availability architecture

Open Poorunga opened this issue 3 years ago • 1 comments

Background:

image

The current architecture of edgemesh is divided into two parts, edgemesh-agent and edgemesh-server. For edgemesh-server, its accusation are:

  1. Assist two edgemesh-agents to exchange peer information and then try to punch holes.
  2. Act as a relay server if the hole punching fails.

As mentioned above, edgemesh-server does not currently support multi-point deployments, so it can be problematic in some cases.

Case 1: image

When the number of connections is too large or the communication traffic is too large, it will cause the single point of failure problem of edgemesh-server.

Case 2: image

The location of edgemesh-server will affect the delay with traffic forwarding. If the location of the relay server is too far away, it will greatly increase the delay.

Case 3: image

In the case of some private networks, edgemesh-agent cannot connect to edgemesh-server in external network, thus causing edgemesh-agent not to work properly.

What contents are to be added/modified:

  1. The implementation code of autorelay and autonat in edgemesh

Consider how to incorporate edgemesh-server capabilities into edgemesh-agent. That is, the edgemesh-agent can become a coordinator and help other peers with the responsibilities of punching and relaying. This can refer to: https://github.com/libp2p/specs/tree/master/relay.

  1. The implementation code of mdns discovery in edgemesh

Ensure that non-coordinator peers can work even when the external network cannot be connected. This can refer to: https://github.com/libp2p/specs/blob/master/discovery/mdns.md

  1. Documentation of all new code and user manual

Poorunga avatar May 10 '22 09:05 Poorunga

May I ask other question? When I deploy the "Cloud access edge " test case, they are scheduled correctly. But when I try using the "Edge access cloud" test case, I get the error "telnet: bad address 'tcp-echo-cloud-svc.cloudzone'". What is the problem?

Aix6 avatar May 16 '22 02:05 Aix6

@Aix6 Please create a new issue

Poorunga avatar Nov 01 '22 03:11 Poorunga