PairMesh是什么?
Pairmesh是一款先进的虚拟局域网(VPN)工具,用来搭建与访问安全,易用,高性能的点对点的软件定义虚拟局域网,为远程办公的网络连接问题提供了开箱即用的解决方案。
拥抱开源,拥抱开放
PairMesh是主要使用go语言开发实现的开源项目,您可以查看并获取PairMesh源代码:https://github.com/pairmesh/pairmesh
这个repo包含了PairMesh的全部三个核心组件。具体的PairMesh服务组件架构如图:
Peer Node
使用者在终端计算设备安装并启动PairMesh应用之后,PairMesh将会创建一个虚拟网络设备,用来进行虚拟局域网内的收发与路由,成为一个终端节点。
Portal Service
Portal Service是集中化的节点元数据管理中心。所有的终端节点需要与其连接来进行验证登录,获取网络接入权限,并定期进行网络拓扑信息更新,从而获得网络内其他节点的信息。除此之外,节点间的实际网络信息传输并不需要经过Portal。同时Portal也负责用户的注册,登录。其前端作为可视化显示面板呈现用户,节点与网络的详细统计信息。Portal的后端元数据管理和前端可视化共同构成PairMesh的Control Plane(控制平面)。
Relay Service
在大多数情况下,终端节点A与B之间可以建立稳定高速的点对点直连网络连接。但是在少数情况下,点对点的连接无法稳定创建,例如节点处于动态SNAT内网环境中。这时我们还拥有relay server作为中转服务器,用来提供可靠的网络转发传输服务。终端节点在此时将会自动切换至relay模式进行网络传输。并且在建立连接时,还会通过内置算法自动寻找最优的relay server,来使得两点间的传输延迟最低。
后现代时代的远程办公
在被Covid-19深刻影响与改变后的世界,我们都看到了远程办公