Fault-Tolerant Virtual Machines
摘要
-
VM FT是从机器级别进行复制,可以使得任意软件都具有容错性
-
在商业服务器上,对性能影响低于10%,主备服务器间的通信带宽约20Mbit/s,可用于远距离备份.
-
通过执行与主服务器相同的输入(磁盘读,键盘输入,网络输入等)来备份,而不是复制主服务器的所有状态(CPU、memory、IO设备),所以通信带宽很小.
-
在多核的机器中,两个核交互处理指令的行为是不确定的,所以就算Primary和Backup执行相同的指令,在多核的机器中,它们也不一定产生相同的结果.还不确定论文中的方案如何扩展到多核处理器的机器中
-
VMware FT的独特之处在于,它从机器级别实现复制,因此它不关心你在机器上运行什么样的软件,它就是复制底层的寄存器和内存。你可以在VMware FT管理的机器上运行任何软件,只要你的软件可以运行在VMware FT支持的微处理器上。
视频
-
fail-stop 因为故障导致的停机
我们通过 replication 复制来防止这种故障
但是不能防止软件中的 bug 或是硬件本身设计缺陷 -
- state transfer
副本完全复制primary的内存,开销大
- state transfer
-
- replicated state machine
接受与primary相同的输入,进行相同的计算
- replicated state machine
-
要复制什么状态? what state
复制所有内存的东西,而不在意机器上运行了什么应用程序 -
怎么处理随机数问题?
backup识别到特异性问题,不执行输入,primary会输出特异性问题的结果,backup把这个结果当成自己的结果 -
P要收到B已经接受的消息后才会把输出返回client