N59030-第五周作業

  1. 简述osi七层模型和TCP/IP五层模型

    OSI 模型 功能
    7 應用層 處理應用程式,進而提供使用者網路應用服務。
    6 表達層 應用層收到的資料後,透過展示層可轉換表達方式。如:JPG圖檔。
    5 會話層 負責建立網路連線,等到資料傳輸結束時,再將連線中斷。
    4 傳輸層 傳輸層主要負責電腦整體的資料傳輸及控制。
    3 網路層 網路層定義網路路由及定址功能,讓資料能夠在網路間傳遞。如:IP、路由。
    2 資料連接層 主要是在網路之間建立邏輯連結,並且在傳輸過程中處理流量控制及錯誤偵測,讓資料傳送與接收更穩定,如:MAC。
    1 物理層 用來定義網路裝置之間的位元資料傳輸,傳遞0與1電子訊號,形成網路。
    TCP/IP 模型 功能
    5 應用層 應用程式間溝通的協定,如:SMTP、FTP、TELNET。
    4 傳輸層 提供端點間的資料傳送服務,如:TCP、UDP。
    3 網路層 提供基本的封包傳送功能,讓每一塊資料封包都能夠到達目的端主機。如:IP。
    2 資料連接層 實質網路媒體的管理協定,定義如何使用實際網路來傳送資料。
    1 物理層 用來定義網路裝置之間的位元資料傳輸,傳遞0與1電子訊號,形成網路。
  2. 总结描述TCP三次握手四次挥手:TCP 的連接的拆除需要發送四個包,因此稱為四次揮手(Four-way handshake),是為了改進的三次握手的缺失。客戶端或服務器均可主動發起揮手動作,在 socket 編程中,任何一方執行 close() 操作即可產生揮手操作。

    x x X
    第一次揮手 FIN=1,seq=x 客戶端想要關閉連接,客戶端發送一個 FIN 標誌位置為1的包,表示自己已經沒有數據可以發送了,但是仍然可以接受數據。發送完畢後,客戶端進入 FIN_WAIT_1 狀態。
    第二次揮手 ACK=1,ACKnum=x+1 服務器端確認客戶端的 FIN 包,發送一個確認包,表明自己接受到了客戶端關閉連接的請求,但還沒有準備好關閉連接。發送完畢後,服務器端進入 CLOSE_WAIT 狀態,客戶端接收到這個確認包之後,進入 FIN_WAIT_2 狀態,等待服務器端關閉連接。
    第三次揮手 FIN=1,seq=y 服務器端準備好關閉連接時,向客戶端發送結束連接請求,FIN 置為1。發送完畢後,服務器端進入 LAST_ACK 狀態,等待來自客戶端的最後一個ACK。
    第四次揮手 ACK=1,ACKnum=y+1 客戶端接收到來自服務器端的關閉請求,發送一個確認包,並進入 TIME_WAIT狀態,等待可能出現的要求重傳的 ACK 包。服務器端接收到這個確認包之後,關閉連接,進入 CLOSED 狀態。
    客戶端等待了某個固定時間(兩個最大段生命週期,2MSL,2 Maximum Segment Lifetime)之後,沒有收到服務器端的 ACK ,認為服務器端已經正常關閉連接,於是自己也關閉連接,進入 CLOSED 狀態。
  3. 描述TCP和UDP区别:在 TCP/ IP 協定家族中﹐傳送層主要有兩個協定﹕TCP 與 UDP。

    協議 說明
    TCP 提供的是一個連線導向(Connection Oriented)的可靠傳輸﹐前面所介紹的傳送層檢測手續﹐都會在 TCP 中得到實現。
    UDP 是一個非連線型(Connectionless)的非可靠傳輸協定﹐它並不會運用確認機制來保證資料是否正確的被接收、不需要重傳遺失的資料、資料的接收可不必按順序進行、也不提供回傳機制來控制資料流的速度。
    因此﹐ UDP 信息可能會在網路傳送過程中丟失﹑重複﹑或不依順序﹐而且抵達速度也可能比接收端的處理速度還快。對於某些訊息量較大、時效性大於可靠性的傳輸來說(比方說語音 / 影像),UDP 的確是個不錯的選擇。
  4. 网卡绑定bond0的实现:將 ens192及ens224兩張網卡綁定

    $ sudo modprobe bonding
    $ sudo nmcli connection add type bond con-name vbond0 mode balance-rr ipv4.methmod manual ipv4.addresses 192.168.30.238 ipv4.gateway 192.168.30.22
    $ sudo nmcli connection add type bond-slave ifname ens192 master vbond0
    $ sudo nmcli connection add type bond-slave ifname ens224 master vbond0
    $ sudo nmcli connection up bond-slave-ens192
    $ sudo nmcli connection up bond-slave-ens224
    $ sudo nmcli connection up vbond0
    
    • 模擬一張網卡失效後,網路仍正常


©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容