網絡基礎

網絡編程即 使用套接字來達到進程間通訊

1、C/S和B/S架構

  • 一、CSClient/Server (客戶機/服務器)架構,C/S架構在技術上很成熟,它的主要特色是交互性強、具備安全的存取模式網絡通訊量低響應速度快利於處理大量數據。可是該架構的程序是針對性開發,變動不夠靈活,維護和管理的難度較大。一般只侷限於小型局域網,不利於擴展。而且,因爲該架構的每臺客戶機都須要安裝相應的客戶端程序,分佈功能弱且兼容性差,不能實現快速部署安裝和配置,所以缺乏通用性,具備較大的侷限性。編程

  • 二、BSBrowser/Server (瀏覽器/服務器)架構,就是隻安裝維護一個服務器(Server),而客戶端採用瀏覽器(Browse)運行軟件。B/S架構應用程序相對於傳統的C/S架構應用程序是一個很是大的進步。 B/S結構的主要特色是分佈性強、維護方便、開發簡單且共享性強、整體擁有成本低。但數據安全性問題、對服務器要求太高、數據傳輸速度慢、軟件的個性化特色明顯下降,這些缺點是有目共睹的,難以實現傳統模式下的特殊功能要求。例如經過瀏覽器進行大量的數據輸入或進行報表的應答、專用性打印輸出都比較困難。此外,實現複雜的應用構造有較大的困難瀏覽器

  • 三、總結:
    • CS 優勢:本地響應速度快,在硬件和網絡環境很差的狀況下用CS能提升效率(實際上是下降用戶憤怒值)
    • CS 缺點: 若是二次開發較多,投入很大。首先你不能保證不繼續修改二次開發方案,那麼CS 的兼容性就會不斷接受挑戰
    • BS 優勢: 部署簡單,打開就用,不用太擔憂二次開發帶來的兼容性
    • BS 缺點: 給用戶的感受就是反應慢

2、兩臺機器如何通訊?

一、IP地址
  • IP地址: ⽤來在⽹絡中標記⼀臺電腦的⼀串數字, ⽐如192.168.1.1(c類); 在同一⽹絡上是唯⼀的(用來標記惟一的一臺電腦)緩存

  • 每⼀個IP地址包括兩部分: **⽹絡地址和主機地址 **安全

  • 主機號0,255兩個數不能使用(網絡號、廣播地址)服務器

  • 詳情解釋網絡

    • A類IP地址1個字節的⽹絡地址3個字節的主機地址組成, ⽹絡地址的最⾼位必須是「0」地址範圍1.0.0.1-126.255.255.254 ,可⽤的A類⽹絡有126個, 每一個⽹絡能容納1677214個主機架構


    • B類IP地址2個字節的⽹絡地址2個字節的主機地址組成, ⽹絡地址的最⾼位必須是「10」地址範圍128.1.0.1-191.255.255.254 ,可⽤的B類⽹絡有16384個, 每一個⽹絡能容納65534主機tcp


    • C類IP地址3個字節的⽹絡地址1個字節的主機地址組成,⽹絡地址的最⾼位必須是「110」地址範圍192.0.1.1-223.255.255.254 ,可用的C類⽹絡可達2097152個, 每一個⽹絡能容納254個主機工具


    • D類IP地址 第⼀個字節以「1110」開始, 它是⼀個專⻔保留的地址。它並不指向特定的⽹絡, ⽬前這⼀類地址被⽤在多點⼴播(一對多) 中多點⼴播地址⽤來⼀次尋址⼀組計算機地址範圍224.0.0.1-239.255.255.254學習


    • E類IP地址 以「1111」開始, 爲未來使⽤保留 E類地址保留, 僅做實驗和開發⽤

二、注意:
私有IP:本地局域網上的IP,專門爲組織機構內部使用

在這麼多⽹絡IP中, 國際規定有⼀部分IP地址是⽤於咱們的局域⽹使⽤, 屬於私⽹IP, 不在公⽹中使⽤的, 它們的範圍是:

- 10.0.0.0~10.255.255.255
- 172.16.0.0~172.31.255.255 
- 192.168.0.0~192.168.255.255 

私有IP禁止出如今Internet中,來自於私有IP的流量所有都會阻止並丟掉。公有IP能夠全球訪問
IP地址127. 0. 0.1表明本機IP地址, ⽤ http://127.0.0.1 就能夠測試本機中配置的Web服務器

經常使用來ping 127.0.0.1來看本地ip/tcp正不正常

3、子網掩碼

用於測量兩個IP地址是否屬於同一個網段的工具

  • ⼦⽹掩碼不能單獨存在, 它必須結合IP地址⼀起使⽤

  • ⼦⽹掩碼只有⼀個做⽤, 就是將某個IP地址劃分紅⽹絡地址和主機地址兩部分

  • ⼦⽹掩碼的設定必須遵循⼀定的規則:與IP地址相同,⼦⽹掩碼的長度也是32位,左邊是⽹絡位, ⽤⼆進制數字「1」表示;右邊是主機位, ⽤⼆進制數字「0」表示

  • 假設IP地址爲「192.168.1.1」⼦⽹掩碼爲「255.255.255.0」

    • 「1」有24個, 表明與此相對應的IP地址左邊24位是⽹絡號
    • 「0」有8個, 表明與此相對應的IP地址右邊8位是主機號
    • 即C類ip

4、端口號:用來標記區分進程

  • ⼀臺擁有IP地址的主機能夠提供許多服務, ⽐如HTTP(萬維⽹服務) 、 FTP(⽂件傳輸) 、 SMTP(電⼦郵件) 等, 這些服務徹底能夠經過1個IP地址來實現。 那麼, 主機是怎樣區分不一樣的⽹絡服務呢?

  • 顯然不能只靠IP地址, 由於IP地址與⽹絡服務的關係是⼀對多的關係。其實是經過 「IP地址+端⼝號」 來區分不一樣的服務的

注意:端⼝號是一個數字,只有整數, 範圍是從0到65535 (分爲知名和動態兩種)

  • 知名端⼝是衆所周知的端⼝號(用來作固定事情), 範圍從0到1023,例如:
    • 80端⼝分配給HTTP服務(網站)
    • 21端⼝分配給FTP服務(文件下載)
    • 能夠理解爲, ⼀些**常⽤的功能使⽤的號碼是固定的 **
  • 動態端⼝的範圍是從1024到65535之因此稱爲動態端⼝
    • 之因此稱爲動態端⼝,是由於它⼀般不固定分配某種服務, ⽽是動態分配
    • 動態分配是指當⼀個系統進程或應⽤程序進程須要⽹絡通訊時, 它向主機申請⼀個端⼝, 主機從可⽤的端⼝號中分配⼀個供它使⽤

5、網卡

網卡(網絡適配器,網絡接口卡)是一塊被設計用來容許計算機在網絡上進行通信的計算機硬件


6、mac地址

  • 每個網卡都有一個被稱爲MAC地址的獨一無二的48位串行號

  • 也叫物理地址(實際地址):由網絡設備製造商生產時寫在硬件內部

  • IP地址與MAC地址在計算機裏都是以二進制表示的,IP地址是32位的,而**MAC地址則是48位的(6個字節)

如:08:00:20:0A:8C:6D就是一個MAC地址,其中前3組16進制數08:00:20表明網絡硬件製造商的編號**,它由IEEE(電氣與電子工程師協會)分配

後3組16進制數0A:8C:6D表明該製造商所製造的某個網絡產品(如網卡)的系列號

  • MAC地址在世界是唯一的

(能夠直接理解爲網卡的序列號)


7、交換機

  • 集線器(HUB)是計算機網絡中鏈接多個計算機或其餘設備的鏈接設備,是對網絡進行集中管理的最小單元。英文Hub就是中心的意思,像樹的主幹同樣,它是各分支的聚集點。HUB是一個共享設備,主要提供信號放大和中轉的功能,它把一個端口接收的全部信號向全部端口分發出去

  • 交換機(Switch)是一種基於MAC(網卡的硬件地址)識別,能完成封裝轉發數據包功能的網絡設備。交換機能夠「學習」MAC地址,並把其存放在內部地址表中,經過在數據幀的始發者和目標接收者之間創建臨時的交換路徑,使數據幀直接由源地址到達目的地址

  • arp協議:地址解析協議(arp在七層中的第三層,mac在第二層)
    經過一臺機器的IP地址獲取到了它的mac地址,用到了交換機:
    主機發送信息時將包含目標IP地址ARP請求廣播到局域網絡上的全部主機,並接收返回消息,以此肯定目標的物理地址
    收到返回消息後將該IP地址和物理地址存入本機ARP緩存中並保留必定時間,下次請求時直接查詢ARP緩存以節約資源
  • 注:第一次是廣播,後面是單播

8、路由器

  • 路由器:肯定一條路徑的設備,路由器是鏈接因特網中用來連接網絡號不一樣的網絡,至關於中間人;各局域網、廣域網的設備,它會根據信道的狀況自動選擇和設定路由,以最佳路徑,按先後順序發送信號的設備。
    路由器的一個做用是連通不一樣的網絡,另外一個做用是選擇信息傳送的線路

  • 同一個局域網當中的終端之間進行通信的基礎是處於同一個網段中,一個路由器至少有兩個網卡,可以連接不一樣網段的網絡使之能夠通訊

  • 選擇通暢快捷的近路,能大大提升通訊速度,減輕網絡系統通訊負荷,節約網絡系統資源,提升網絡系統暢通率

相關文章
相關標籤/搜索