我使用的嵌入式 Linux 设备通常具有硬线以太网以及蜂窝调制解调器连接。如果我要使用 MPTCP,是否可以轻松地将系统配置为始终使用 eth0(如果可用),然后在 eth0 关闭时回退到 ppp0?
这样的切换对于使用套接字的网络应用程序来说也是透明的吗?
答案1
普通协议是专门为执行您的请求而设计的。使用 MPTCP,您可以
- 与您的同伴建立连接
- 告诉对方您的可用端点(例如
ppp0
和的 IP 地址eth0
) - 从此时起所有协商路径能可以使用,但您也可以将一个链接定义为活动链接,将其他链接定义为后备链接
如果您的一条路径发生故障,MPTCP 将使您能够透明地故障转移到另一条已知路径(当然,您的对等方需要知道该路径)。如果之前失败的路径再次可用,您可以切换回来。如果您解决了两者之间的变化,只要一条可用路径保持可用,您就可以告诉您的同伴发生了变化(因为您需要一个渠道来传达变化)。
但你必须记住,只有当你的客户和
- 您的远程对等点需要支持 MPTCP
- 您路径上的所有中间路由器/网关都需要远离您的 MPTCP TCP 选项(至少许多塑料路由器,如“客户级”ADSL 路由器等,已知会剥离它们不理解的 TCP 选项)。
在完美的世界中,我们都会使用 SCTP,*叹息*。