淺談osi模型 三次握手 四次揮手 ddos攻擊原理

C/S B/S 架構

C:client 端html

B:browser 瀏覽器數據庫

S:server 端瀏覽器

C/S架構,基於客戶端與服務端之間的通訊緩存

  • 例如:QQ,抖音,快手,微信,支付寶等等
  • 優勢:個性化設置,響應速度快
  • 缺點:開發維護成本高,佔用空間,用戶固定

B/S架構:基於瀏覽器與服務端之間的通訊服務器

  • 谷歌瀏覽器,火狐瀏覽器
  • 優勢:開發維護成本低,佔用空間相對低,用戶不固定
  • 缺點:功能單一,沒有個性化設置,響應速度相對慢一些

網絡通訊原理

  • 兩臺計算機要有一堆物理鏈接介質鏈接
  • 找到對方計算機軟件位置
  • 遵循一攬子互聯網通訊協議

osi七層協議

  • 物理層微信

    • 物理層指的就是網線,光纖,雙膠線等等物理鏈接介質
    • 物理層發送的是比特流,只發送比特流會有什麼問題?
    • 不知道多長爲一組,多長爲一個字節,頭是哪一個?尾在哪兒?
    • 引出數據應該有規律分組的問題,分組是數據鏈路層作的事情
  • 數據鏈路層網絡

    • 數據鏈路層對比特流進行分組
    • 剛開始從事互聯網企業的就是美國的幾家公司,各家有各家自定的分組標準。後來統一了標準,對數據分組的標準
    • 以太網協議:對比特流進行合理的分組。
    • 一組數據01010010叫作一幀,數據報。
      • head|data("aaa")
      • head 是固定的長度:18個字節
        • 源地址:6個字節
        • 目標地址:6個字節
        • 數據類型:6個字節
      • data:最少46個字節,最大1500字節。
      • 一幀數據:最少64個字節,最大1518個字節
    • MAC地址:每臺電腦獨一無二的地址,前6個是廠商編號,後6個是流水線號
    • 計算機的通訊方式:
      • 同一個局域網內,經過廣播的形式通訊。
      • 交換機的mac地址學習功能
        • 第一次經過廣播找到目標mac地址,而後將其對應
        • 第二次直接單播
        • 前提是必須知道對方的mac地址,你才能夠以廣播的形式發消息。實際上,網絡通訊中,你只要知道對方的IP與本身打的IP便可
      • 消息一經廣播發出,該局域網下全部的計算機都能接收到消息,分析消息,是不是找本身的,不是就丟棄
    • 計算機只能在局域網內進行廣播:範圍大了會形成廣播風暴,效率極低
  • 網絡層架構

    • IP協議:肯定局域網(子網)的位置學習

    • ARP協議:經過對方的ip地址獲取到對方的mac地址spa

    • 源碼mac 目標mac 源IP 目標IP 數據

      1C-1B-0D-A4-E6-44 FF:FF:FF:FF:FF:FF 172.16.10.13 172.16.10.156 數據

      第一次發消息: 發送到交換機 ---> 路由器 廣播的形式發出去

      目標計算機收到消息:就要回消息:

      源碼mac 目標mac 源IP 目標IP 數據

      1B-1B-0D-A4-E6-54 1C-1B-0D-A4-E6-44 172.16.10.156 172.16.10.13 數據

    • 總結:前提:知道目標mac

      計算機A發送一個消息給計算機B

      源碼mac 目標mac 源IP 目標IP 數據

      單播的形式發送到交換機,交換機會檢測本身的對照表有沒有目標mac,若是有,單播傳,若是沒有,交由上一層:路由器

      路由器收到消息:對消息進行分析:

      要肯定目標計算機與本計算機是否在同一個網段,若是在同一個網段,直接發送給對應的交換機,交換機再單播發給目標mac

      若是不是在同一網段: ?

      前提:不知道目標mac:

      計算機A 發送一個消息給 計算機B

      源碼mac 目標mac不知道 源IP 目標IP 數據

      單播的形式發送到交換機,交換機交由上一層路由器:路由器收到消息: 對消息進行分析:

      要肯定目標計算機與本計算機是否在同一網段,

      ​ 若是在同一網段經過 IP以及ARP協議獲取到對方的mac地址,而後在通訊.

  • 傳輸層

    • TCP/UDP 肯定軟件在計算機的位置
  • 應用層

    • 本身定義的協議
  • 廣播(局域網內) + mac地址(計算機位置) + ip(局域網的位置) + 端口(軟件在計算機的位置)

  • 有了以上四個參數:你就能夠肯定世界上任何一個計算機的軟件的位置

UDP協議 TCP協議

  • TCP(Transmission Control Protocol)可靠的、面向鏈接的協議(eg:打電話)、流式協議, 傳輸效率低全雙工通訊(發送緩存&接收緩存)、面向字節流。使用TCP的應用:Web瀏覽器;文件傳輸程序。

  • UDP(User Datagram Protocol)不可靠的、無鏈接的服務,傳輸效率高(發送前時延小),一對1、一對多、多對1、多對多、面向報文(數據包),盡最大努力服務,無擁塞控制。使用UDP的應用:域名系統 (DNS);視頻流;IP語音(VoIP)。

  • 端口

  • 65535端口

  • 1~1023 操做系統專門使用的端口 -- 周知端口

  • 1024-49151 分配給用戶進程或應用程序 -- 註冊端口

  • 49152-65535 動態端口 動態分配,不固定分配某種服務 -- 動態端口

  • 舉例:3306數據庫

TCP協議的三次握手和四次揮手

四次揮手

syn洪水攻擊:製造大量的假的無效的IP請求服務器,導致正常的IP訪問不了服務器

原文出處:https://www.cnblogs.com/alex3174/p/11348190.html

相關文章
相關標籤/搜索