<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>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                上一篇文章分析了互聯網的總體構思,從下至上,每一層協議的設計思想。 這是從設計者的角度看問題,今天我想切換到用戶的角度,看看用戶是如何從上至下,與這些協議互動的。 先對前面的內容,做一個小結。 我們已經知道,網絡通信就是交換數據包。電腦A向電腦B發送一個數據包,后者收到了,回復一個數據包,從而實現兩臺電腦之間的通信。數據包的結構,基本上是下面這樣: ![](https://box.kancloud.cn/2015-08-04_55c0531b891dd.png) 發送這個包,需要知道兩個地址: >   * 對方的MAC地址 > >   * 對方的IP地址 有了這兩個地址,數據包才能準確送到接收者手中。但是,前面說過,MAC地址有局限性,如果兩臺電腦不在同一個子網絡,就無法知道對方的MAC地址,必須通過網關(gateway)轉發。 ![2015-08-04/55c0533482a7c](https://box.kancloud.cn/2015-08-04_55c0533482a7c.png) 上圖中,1號電腦要向4號電腦發送一個數據包。它先判斷4號電腦是否在同一個子網絡,結果發現不是(后文介紹判斷方法),于是就把這個數據包發到網關A。網關A通過路由協議,發現4號電腦位于子網絡B,又把數據包發給網關B,網關B再轉發到4號電腦。 1號電腦把數據包發到網關A,必須知道網關A的MAC地址。所以,數據包的目標地址,實際上分成兩種情況: | 場景 | 數據包地址 | |--|---| | 同一個子網絡 | 對方的MAC地址,對方的IP地址 | | 非同一個子網絡 | 網關的MAC地址,對方的IP地址 | 發送數據包之前,電腦必須判斷對方是否在同一個子網絡,然后選擇相應的MAC地址。接下來,我們就來看,實際使用中,這個過程是怎么完成的。
                  <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>

                              哎呀哎呀视频在线观看