计算机中简述两军问题,【翻译】两军问题(Two Generals’ Problem)

两军问题是一个探讨不可靠通信链路上达成一致的计算机领域思想实验,与拜占庭将军问题相关,常用于解释TCP协议的不确定性。问题无解,强调在通信失败情况下确保一致性的困难。解决方案通常涉及接受通信不可靠性并尽量降低其影响。
摘要由CSDN通过智能技术生成

两军问题是计算机领域的一个思想实验,用来阐述在一个不可靠的通信链路上试图通过通信以达成一致是存在缺陷的和困难的。这个问题和更有名的“拜占庭将军问题”有关(译者注:拜占庭将军问题很早就被提出,但是没有普及,后来为了普及,采用故事的方式来说明问题,并命名为拜占庭将军问题),并且经常出现在计算机网络课程的开头(特别是由于解释传输控制协议中的TCP协议并不能保证通信两端状态的一致性)。不过两军问题适用于任何有可能通信失败情况下的两点通信。在认知逻辑上一个重要概念是,两军问题强调了常识的重要性。也有些学者称之为“两军悖论”、“两军难题”、“协同攻击问题“等。两军问题是在计算机通信领域首个被证明无解的问题(译者注:据说量子通信可能会解决此问题),由此也可推论出,随机通信失败条件下的“拜占庭将军问题”也同样无解。

[定义]

两支军队,分别由两个将军领导,正在准备攻击一个坚固的城市。两支军队都驻扎在城市旁边的两个不同的山谷里。两军之间隔着第三个山谷,两个将军想要通讯的唯一方法就是穿过第三个山谷传送信件。问题是,第三个山谷被城市的守卫军占据,并且经此传送的信件可能会被守卫军截获。

虽然两个将军商量好要同时对城市发起攻击,但是他们没有约定特定的攻击时间。为了保证取胜,他们必须同时发起攻击,否则任何单独发起攻击的军队都有可能全军覆没。他们必须互相通信来决定一个同时攻击时间,并且同意在那个时间发起攻击。两个将军彼此之间要知道另一个将军知道自己同意了作战计划。(译者注:A同意了作战计划,A将同意作战计划的信发给B,A将军要知道:B知道了A同意了作战计划。)因为返回来的信件和送出去的信件一样容易丢失,未来大量的消息必须保持一致性。

这个思想实验致力于考虑两军怎么做才能达成一致。在最简单的情况下,其

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值