【目錄】 一、C/S 架構 和 B/S 架構 二、網路通信 三、互聯網通信協議——osi 七層協議(應表會傳網數物) 四、五層協議 五,小結 一、C/S 架構 和 B/S 架構 1、C/S 架構——Client/Server Client< >Server 客戶端軟體send 服務端軟體recv操作 ...
【目錄】
一、C/S 架構 和 B/S 架構
二、網路通信
三、互聯網通信協議——osi 七層協議(應表會傳網數物)
四、五層協議
五,小結
一、C/S 架構 和 B/S 架構
1、C/S 架構——Client/Server
Client<===========>Server
客戶端軟體send 服務端軟體recv
操作系統 操作系統
電腦硬體<====物理介質=====>電腦硬體* 操作系統:(operating system,簡稱os)是管理和控制電腦硬體與軟體資源的電腦程式,是直接運行在“裸機”上的最基本的系統軟體,任何其他軟體都必須在操作系統的支持下才能運行。
註:電腦(硬體)->os->應用軟體
2、B/S 架構——Browser/Server
Browser<===========>Server
b/s架構也是c/s架構的一種
二、網路通信
網路存在的意義就是跨地域數據傳輸,稱之為通信
網路=物理鏈接介質+互聯網通信協議
三、互聯網通信協議——osi 七層協議(巧記—應表會傳網數物)
1、互聯網的本質就是一系列的網路協議
* 英語成為世界上所有人通信的統一標準,如果把電腦看成分佈於世界各地的人,
那麼連接兩台電腦之間的internet實際上就是 一系列統一的標準,這些標準稱之為互聯網協議。
* 互聯網的本質就是一系列的協議,總稱為‘互聯網協議’(Internet Protocol Suite).
* 互聯網協議的功能:定義電腦如何接入internet,以及接入internet的電腦通信的標準。
2、osi七層協議——應用層,表示層,會話層,傳輸層,網絡層,數據鏈路層,物理層 —(巧記—應表會傳網數物)
1)互聯網協議按照功能不同分為osi七層或tcp/ip五層或tcp/ip四層
2)每層運行常見物理設備
3)osi七層協議數據傳輸的封包與解包過程
四、五層協議
1、五層協議的組成——應用層、傳輸層、網路層、數據鏈路層、物理層
電腦1: 電腦2:
應用層 應用層
傳輸層 傳輸層
網路層 網路層
數據鏈路層 數據鏈路層
物理層 <===========交互機===========> 物理層
0101010101010(源mac地址,目標mac地址)(源ip地址,目標ip地址)數據
2、物理層:負責發送電信號
1)物理層由來:上面提到,孤立的電腦之間要想一起玩,就必須接入internet,言外之意就是電腦之間必須完成組網
2)物理層功能:主要是基於電器特性發送高低電壓(電信號),高電壓對應數字1,低電壓對應數字0
3)一組物理層數據稱之為:位
單純的電信號毫無意義,必須對其進行分組
3、數據鏈路層:ethernet 乙太網協議
1)數據鏈路層由來:
單純的電信號0和1沒有任何意義,必須規定電信號多少位一組,每組什麼意思
2)數據鏈路層的功能:
定義了電信號的分組方式
3)乙太網協議:
早期的時候各個公司都有自己的分組方式,後來形成了統一的標準,即乙太網協議ethernet:
規定1:一組電信號構成一個數據包,叫做‘幀’一組數據稱之為一個數據幀
規定2:數據幀分成兩部分=》報頭head+數據data兩部分
頭包含:源地址與目標地址,該地址是mac地址
數據包含:包含的是網路層發過來的整體的內容
head
data
head包含:(固定18個位元組)
發送者/源地址,6個位元組
接收者/目標地址,6個位元組
數據類型,6個位元組
data包含:(最短46位元組,最長1500位元組)
數據包的具體內容
head長度+data長度=最短64位元組,最長1518位元組,超過最大限制就分片發送
規定3:規定但凡接入互聯網的主機必須有一塊網卡,每塊網卡在出廠時都燒制好一個全世界獨一無二的地址,
該地址稱之為mac地址。
4)mac地址
head中包含的源和目標地址由來:ethernet規定接入internet的設備都必須具備網卡,發送端和接收端的地址便是指網卡的地址,即mac地址 。
mac地址:每塊網卡出廠時都被燒制上一個世界唯一的mac地址,長度為48位2進位,通常由12位16進位數表示(前六位是廠商編號,後六位是流水線號)
5)廣播
電腦通信基本靠吼,即乙太網協議的工作方式是廣播。
有了mac地址,同一網路內的兩台主機就可以通信了(一臺主機通過arp協議獲取另外一臺主機的mac地址)
ethernet採用最原始的方式,廣播的方式進行通信,即電腦通信基本靠吼。
4、 網路層:IP協議
1)IP協議
要達到的目的:
劃分廣播域
每一個廣播域但凡要接通外部,一定要有一個網關幫內部的電腦轉發包到公網
網關與外界通信走的是路由協議規定1:一組數據稱之為一個數據包
規定2:數據幀分成兩部分=》頭+數據
頭包含:源地址與目標地址,該地址是IP地址
數據包含的:傳輸層發過來的整體的內容
2)IP地址和子網掩碼
ipv4地址:
8bit.8bit.8bit.8bit0.0.0.0
255.255.255.255子網掩碼:
8bit.8bit.8bit.8bit
255.255.255.0對應的二進位表達
11111111.11111111.11111111.00000000
一個合法的ipv4地址組成部分=ip地址/子網掩碼地址
172.16.10.1/255.255.255.0
172.16.10.1/24
電腦1:
172.16.10.1: 10101100.00010000.00001010.000000001
255255.255.255.0: 11111111.11111111.11111111.000000000
172.16.10.0: 10101100.00010000.00001010.000000000
電腦2:
172.16.10.2: 10101100.00010000.00001010.000000010
255.255.255.255.0: 11111111.11111111.11111111.000000000
172.16.10.0: 10101100.00010000.00001010.000000000
電腦1: 電腦2:
應用層 應用層
傳輸層 傳輸層
網路層 網路層
數據鏈路層 數據鏈路層
物理層 <=========二層交互機========> 物理層
0101010101010(源mac地址,xxxx)(源ip地址,目標ip地址)數據
(源mac地址,網關的mac地址)(172.16.10.10/24,101.100.200.11/10)數據
*事先知道的是對方的ip地址
但是電腦的底層通信是基於ethernet乙太網協議的mac地址通信
3)ARP協議
【ARP協議】:
所以必須能夠將ip地址解析成mac地址* arp協議由來:電腦通信基本靠吼,即廣播的方式,所有上層的包到最後都要封裝上乙太網頭,然後通過乙太網協議發送,在談及乙太網協議時候,我們瞭解到,通信是基於mac的廣播方式實現,電腦在發包時,獲取自身的mac是容易的,如何獲取目標主機的mac,就需要通過arp協議。
* arp協議功能:廣播的方式發送數據包,獲取目標主機的mac地址
4)電腦在同一區域網以及不同區域網內的通信方式
# 兩台電腦在同一個區域網內
電腦1:172.16.10.10/24 —— 直接 —— 電腦2:172.16.10.11/24
ARP:
自己的ip,對方的ip
1、計算二者網路地址,如果一樣,拿到電腦2的mac地址就可以了
2、發送廣播包
發送端mac FF:FF:FF:FF:FF:FF 172.16.10.10/24 172.16.10.11/24 數據
# 兩台電腦不在同一個區域網內
電腦1:172.16.10.10/24 —— 網關 —— 電腦2:101.100.200.11/10
ARP:
自己的ip,對方的ip
1、電腦二者網路地址,如果不一樣,應該拿到網關的mac地址
2、發送廣播包
發送端mac FF:FF:FF:FF:FF:FF 172.16.10.10/24 172.16.10.1/24 數據
5、傳輸層——tcp協議、udp協議
1)傳輸層的由來:
網路層的ip幫我們區分子網,乙太網層的mac幫我們找到主機,然後大家使用的都是應用程式,你的電腦上可能同時開啟qq,暴風影音,等多個應用程式,那麼我們通過ip和mac找到了一臺特定的主機,如何標識這台主機上的應用程式,答案就是埠,埠即應用程式與網卡關聯的編號。
2)傳輸層功能:
建立埠到埠的通信
補充:埠範圍0-65535,0-1023為系統占用埠
3)tcp協議:
可靠傳輸,TCP數據包沒有長度限制,理論上可以無限長,但是為了保證網路的效率,
通常TCP數據包的長度不會超過IP數據包的長度,以確保單個TCP數據包不必再分割。
乙太網頭
ip 頭
tcp頭
數據
4)udp協議:
不可靠傳輸,”報頭”部分一共只有8個位元組,總長度不超過65,535位元組,正好放進一個IP數據包。
乙太網頭
ip頭
udp頭
數據
5)tcp報文
6)tcp三次握手和四次揮手
tcp三次握手詳解:
6、應用層
1)應用層由來:
用戶使用的都是應用程式,均工作於應用層,互聯網是開發的,大家都可以開發自己的應用程式,
數據多種多樣,必須規定好數據的組織形式
2)應用層功能
應用層功能:規定應用程式的數據格式。
例:TCP協議可以為各種各樣的程式傳遞數據,比如Email、WWW、FTP等等。那麼,必須有不同協議規定電子郵件、網頁、FTP數據的格式,這些應用程式協議就構成了”應用層”。
五、小結
1、總結圖
2、數據傳輸動圖
參考資料:
https://zhuanlan.zhihu.com/p/110296719
https://www.cnblogs.com/linhaifeng/articles/6129246.html
https://www.cnblogs.com/linhaifeng/articles/5937962.html