天天看點

軟體開發架構及網絡傳輸

目錄

  • 一.軟體開發架構
    • 1.介紹
    • 2.c/s架構
    • 3.b/s架構
  • 二.網絡傳輸
    • 1.早期 : 聯機
    • 2.以太網 : 區域網路與交換機
    • 3.廣播
    • 4.ip位址與ip協定
    • 5.mac位址
    • 6.arp協定 ——查詢IP位址和MAC位址的對應關系
  • 三.廣域網與路由器
    • 1.路由器
    • 2.區域網路
    • 3.子網路遮罩

我們了解的涉及到兩個程式之間通訊的應用大緻可以分為兩種:

第一種是應用類:qq、微信、網盤、優酷這一類是屬于需要安裝的桌面應用

第二種是web類:比如百度、知乎、部落格園等使用浏覽器通路就可以直接使用的應用

這些應用的本質其實都是兩個程式之間的通訊。而這兩個分類又對應了兩個軟體開發的架構~

C/S即:Client與Server ,中文意思:用戶端與伺服器端架構,這種架構也是從使用者層面(也可以是實體層面)來劃分的。将用戶端看成是去店裡消費客人,将服務端看成是提供服務的店面, 比如,手機各種app其實就是各大軟體的用戶端.

軟體開發架構及網絡傳輸

這裡的用戶端一般泛指用戶端應用程式EXE,程式需要先安裝後,才能運作在使用者的電腦上,對使用者的電腦作業系統環境依賴較大。

B/S即:Browser與Server,中文意思:浏覽器端與伺服器端架構,這種架構是從使用者層面來劃分的。

Browser浏覽器,其實也是一種Client用戶端,隻是這個用戶端不需要大家去安裝什麼應用程式,隻需在浏覽器上通過HTTP請求伺服器端相關的資源(網頁資源),用戶端Browser浏覽器就能進行增删改查。

軟體開發架構及網絡傳輸

問題:網絡到底是什麼?計算機之間是如何通信的?

軟體開發架構及網絡傳輸

軟體開發架構及網絡傳輸

主機之間“一對所有”的通訊模式,網絡對其中每一台主機發出的信号都進行無條件複制并轉發,所有主機都可以接收到所有資訊(不管你是否需要),由于其不用路徑選擇,是以其網絡成本可以很低廉。有線電視網就是典型的廣播型網絡,我們的電視機實際上是接受到所有頻道的信号,但隻将一個頻道的信号還原成畫面。在資料網絡中也允許廣播的存在,但其被限制在二層交換機的區域網路範圍内,禁止廣播資料穿過路由器,防止廣播資料影響大面積的主機。

  • 規定網絡位址的協定叫ip協定,它定義的位址稱之為ip位址,廣泛采用的v4版本即ipv4它規定網絡位址由32位2進制表示,IPV6版本, 能夠表示出地球上每一粒沙子,
  • 範圍0.0.0.0-255.255.255.255
  • 一個ip位址通常寫成四段十進制數,例:172.16.10.1

head中包含的源和目标位址由來:ethernet規定接入internet的裝置都必須具備網卡,發送端和接收端的位址便是指網卡的位址,即mac位址。

  mac位址:每塊網卡出廠時都被燒制上一個世界唯一的mac位址,長度為48位2進制,通常由12位16進制數表示(前六位是廠商編号,後六位是流水線号)

​ 位址解析協定,即ARP(Address Resolution Protocol),是根據IP位址擷取實體位址的一個TCP/IP協定。

  主機發送資訊時将包含目标IP位址的ARP請求廣播到網絡上的所有主機,并接收傳回消息,以此确定目标的實體位址。

  收到傳回消息後将該IP位址和實體位址存入本機ARP緩存中并保留一定時間,下次請求時直接查詢ARP緩存以節約資源。

  位址解析協定是建立在網絡中各個主機互相信任的基礎上的,網絡上的主機可以自主發送ARP應答消息,其他主機收到應答封包時不會檢測該封包的真實性就會将其記入本機ARP緩存;由此攻擊者就可以向某一主機發送僞ARP應答封包,使其發送的資訊無法到達預期的主機或到達錯誤的主機,這就構成了一個ARP欺騙。ARP指令可用于查詢本機ARP緩存中IP位址和MAC位址的對應關系、添加或删除靜态對應關系等。相關協定有RARP、代理ARP。NDP用于在IPv6中代替位址解析協定。

軟體開發架構及網絡傳輸

​ 路由器(Router),是連接配接網際網路中各區域網路、廣域網的裝置,它會根據信道的情況自動選擇和設定路由,以最佳路徑,按前後順序發送信号。 路由器是網際網路絡的樞紐,"交通警察"。目前路由器已經廣泛應用于各行各業,各種不同檔次的産品已成為實作各種骨幹網内部連接配接、骨幹網間互聯和骨幹網與網際網路互聯互通業務的主力軍。路由和交換機之間的主要差別就是交換機發生在OSI參考模型第二層(資料鍊路層),而路由發生在第三層,即網絡層。這一差別決定了路由和交換機在移動資訊的過程中需使用不同的控制資訊,是以說兩者實作各自功能的方式是不同的。

  路由器(Router)又稱網關裝置(Gateway)是用于連接配接多個邏輯上分開的網絡,所謂邏輯網絡是代表一個單獨的網絡或者一個子網。當資料從一個子網傳輸到另一個子網時,可通過路由器的路由功能來完成。是以,路由器具有判斷網絡位址和選擇IP路徑的功能,它能在多網絡互聯環境中,建立靈活的連接配接,可用完全不同的資料分組和媒體通路方法連接配接各種子網,路由器隻接受源站或其他路由器的資訊,屬網絡層的一種互聯裝置。

  區域網路(Local Area Network,LAN)是指在某一區域内由多台計算機互聯成的計算機組。一般是方圓幾千米以内。區域網路可以實作檔案管理、應用軟體共享、列印機共享、工作組内的日程安排、電子郵件和傳真通信服務等功能。區域網路是封閉型的,可以由辦公室内的兩台計算機組成,也可以由一個公司内的上千台計算機組成。  

  所謂”子網路遮罩”,就是表示子網絡特征的一個參數。它在形式上等同于IP位址,也是一個32位二進制數字,它的網絡部分全部為1,主機部分全部為0。比如,IP位址172.16.10.1,如果已知網絡部分是前24位,主機部分是後8位,那麼子網絡掩碼就是11111111.11111111.11111111.00000000,寫成十進制就是255.255.255.0。

  知道”子網路遮罩”,我們就能判斷,任意兩個IP位址是否處在同一個子網絡。方法是将兩個IP位址與子網路遮罩分别進行AND運算(兩個數位都為1,運算結果為1,否則為0),然後比較結果是否相同,如果是的話,就表明它們在同一個子網絡中,否則就不是。

比如,已知IP位址172.16.10.1和172.16.10.2的子網路遮罩都是255.255.255.0,請問它們是否在同一個子網絡?兩者與子網路遮罩分别進行AND運算,

172.16.10.1:10101100.00010000.00001010.000000001
255255.255.255.0:11111111.11111111.11111111.00000000
AND運算得網絡位址結果:10101100.00010000.00001010.000000001->172.16.10.0


172.16.10.2:10101100.00010000.00001010.00000010
255255.255.255.0:11111111.11111111.11111111.00000000
AND運算得網絡位址結果:10101100.00010000.00001010.000000001->172.16.10.0
結果都是172.16.10.0,是以它們在同一個子網絡。


           

總結一下,IP協定的作用主要有兩個,一個是為每一台計算機配置設定IP位址,另一個是确定哪些位址在同一個子網絡。

繼續閱讀