揭秘 Ginkgo 的 P2P 联邦组网架构
为什么需要 P2P?
传统私有云最大的痛点是"外网访问难"。用户往往需要购买公网 IP、设置复杂的端口转发 (DDNS),这直接劝退了 99% 的用户。
Ginkgo 的解决方案:联邦组网
我们借鉴了 BitTorrent 和 Tor 网络的灵感,构建了一套去中心化的联邦网络。
1. NAT 穿透 (Hole Punching)
利用 STUN/TURN 协议,Ginkgo 能自动穿透学校复杂的防火墙和多层 NAT。无论你在图书馆、教室还是家里,都能像在局域网一样直接连接寝室的电脑。
2. 身份即路由 (Identity Based Routing)
这并非魔法,而是基于 DHT (分布式哈希表) 技术。它的原理类似于手机号:
- 不管你搬家到哪里(IP 变动),只要手机号(Device ID)不变,朋友就能找到你。
- 设备上线时,会向 P2P 网络注册:“我是 ID-A,我现在的新 IP 是 192.168.1.10”。
- 当另一台设备想连接 ID-A 时,会先查询 Discovery Server 获得最新 IP,实现全自动寻址。无需公网 IP,无需手动配置。
3. 资源池化 (Pool Architecture)
这是 Ginkgo 最引以为傲的技术。我们将分散在舍友 A、B、C 电脑上的空闲空间,虚拟化为一个逻辑整体。上传文件时,文件会被切片并分散存储(类似 RAID 技术),确保存储效率和容灾能力的平衡。