2024-09-01 13:47:04 +08:00
2021-08-07 19:06:09 +08:00
2021-10-23 11:26:57 +08:00
2021-08-13 21:40:27 +08:00
2021-09-16 17:24:45 +08:00
2021-10-23 11:26:57 +08:00
2021-08-01 14:13:17 +08:00
2020-10-08 21:05:13 +08:00
2021-08-13 21:40:27 +08:00
2021-08-01 23:04:12 +08:00
2020-07-20 20:08:23 +08:00
2021-08-13 21:40:27 +08:00
2021-08-13 21:40:27 +08:00
2019-09-08 19:25:28 +08:00
2020-07-18 21:18:58 +08:00
2021-03-06 19:26:26 +08:00
2024-09-01 13:47:04 +08:00
2021-03-07 13:38:35 +08:00

go report Build Status license

English | 简体中文

状态: Alpha

介绍

cframe是一款网格VPN(mesh vpn)项目能解决多个IP地址不冲突的网络互联以下是一些典型的应用场景

  • 跨VPC跨云之间网络互联
  • VPC与IDC网络互联
  • k8s多集群互联

cframe包括两个重要组件controlleredgecontroller也即是控制平面用于路由下发以及edge节点管理edge也即是转发平面用于路由和转发数据到对应的edge节点任意两个edge节点互联形成一个网状结构。

您可以将edge类比为路由器每个路由器上保存着全量的路由信息当一个数据包到来时edge节点查找全局路由找到对应的下一跳edge并转发。

目录

cframe的核心技术原理

如上图所示cframe包括controlleredge两个重要角色,除此之外还附加网络管理工具cfctl模块,用于管理edge以及路由。

controller是控制平面,是整个系统最核心的部分,负责管理管理edge以及路由,controller通过读取和订阅存储与etcd当中的信息并通过长连接实时下发到edge当中。

edge是转发层面每个edge即是所在的可用区的网关edge节点之间两两互联形成一个网状的网络拓扑结构edge实时接收来自controller的消息然后将其变更应用到本地。

每个edge所在的可用区包括一个或者多个网络通常如果只需要VPC互通那么一个网络就可以解决如果需要VPC内的k8s集群互通那么就需要使用路由将该edge所在的可用区的k8s的网段下发到其他edge当中让其他edge感知到其存在从而能够正确的路由。

关于更多的设计文档以及使用细节,您可以阅读:

返回目录

有问题怎么办

返回目录

关于作者

一个爱好编程的人网名叫ICKelin。对于以下任何问题包括

  • 项目实现细节
  • 项目使用问题
  • 项目建议,代码问题
  • 案例分享
  • 技术交流

可加微信: zyj995139094

Description
mesh vpn,支持IDC,VPC混合组网,商业化产品请关注:https://www.beyondnetwork.net
Readme MIT 37 MiB
Languages
Go 99.8%
Shell 0.1%