<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                二將軍問題是網絡領域的一個經典問題,用于表達計算機網絡中互聯協議設計的微妙性和復雜性。這里給出一個二將軍問題的簡化版本: 一支白軍被圍困在一個山谷中,山谷的左右兩側是藍軍。困在山谷中的白軍人數多于山谷兩側的任意一支藍軍,而少于兩支藍軍的之和。若一支藍軍對白軍單獨發起進攻,則必敗無疑;但若兩支藍軍同時發起進攻,則可取勝。兩只藍軍的總指揮位于山谷左側,他希望兩支藍軍同時發起進攻,這樣就要把命令傳到山谷右側的藍軍,以告知發起進攻的具體時間。假設他們只能派遣士兵穿越白軍所在的山谷(唯一的通信信道)來傳遞消息,那么在穿越山谷時,士兵有可能被俘虜 ![](https://img.kancloud.cn/d1/89/d1895f0a7c98352b39481dda696e1050_390x732.png) ![](https://img.kancloud.cn/d1/89/d1895f0a7c98352b39481dda696e1050_390x732.png) ![](https://img.kancloud.cn/d1/89/d1895f0a7c98352b39481dda696e1050_390x732.png) 只有當送信士兵成功往返后,總指揮才能確認這場戰爭的勝利(上方圖)。現在問題來了,派遣出去送信的士兵沒有回來,則左側藍軍中的總指揮能不能決定按命令中約定的時間發起進攻? 答案是不確定,派遣出去送信的士兵沒有回來,他可能遇到兩種狀況: 1)命令還沒送達就被俘虜了(中間圖),這時候右側藍軍根本不知道要何時進攻; 2)命令送達,但返回途中被俘虜了(下方圖),這時候右側藍軍知道要何時進攻,但左側藍軍不知道右側藍軍是否知曉進攻時間 類似的問題在計算機網絡中普遍存在,例如發送者給接受者發送一個 HTTP 請求,或者 MySQL 客戶端向 MySQL 服務器發送一條插入語句,然后超時了沒有得到響應。請問服務器是寫入成功了還是失敗了?答案是不確定,有以下幾種情況: 1)可能請求由于網絡故障根本沒有送到服務器,因此寫入失敗; 2)可能服務器收到了,也寫入成功了,但是向客戶端發送響應前服務器宕機了; 3)可能服務器收到了,也寫入成功了,也向客戶端發送了響應,但是由于網絡故障未送到客戶端。 無論哪種場景,在客戶端看來都是一樣的結果:它發出的請求沒有得到響應。為了確保服務端成功寫入數據,客戶端只能重發請求,直至接收到服務端的響應。 類似的問題問題被稱為網絡二將軍問題
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看