前言
本文的東西是基礎理論知識,前面的操作系統(tǒng)的文章我不想更新了,現(xiàn)在想寫一寫網(wǎng)絡相關的文章,本篇文章是第一篇,僅傳遞網(wǎng)絡相關知識的概念,不必牢記~
什么是TCP/IP協(xié)議
簡單來說TCP/IP協(xié)議是網(wǎng)絡中所有相關協(xié)議簇的簡稱,它是眾多網(wǎng)絡協(xié)議的集合,這一類協(xié)議簇是有非常多的協(xié)議,如常見的:ARP/TCP/UDP/IP/ICMP/IGMP/HTTP/DNS/DHCP/TFP/MQTT
等等
分層思想
TCP/IP
模型是一個抽象的分層模型,這個模型中,所有的TCP/IP
系列網(wǎng)絡協(xié)議都被歸類到4個抽象的"層"中。每一抽象層創(chuàng)建在低一層提供的服務上,并且為高一層提供服務。 完成一些特定的任務需要眾多的協(xié)議協(xié)同工作,這些協(xié)議分布在參考模型的不同層中的,因此有時稱它們?yōu)橐粋€協(xié)議棧。
網(wǎng)絡協(xié)議通常分不同層次進行開發(fā),每一層分別負責不同的通信功能。一個協(xié)議族,比如TCP/IP
,是一組不同層次上的多個協(xié)議的組合。TCP/IP
通常被認為是一個四層協(xié)議系統(tǒng),其分層模型如下:
分層模型
每一層都負責不同的功能。
鏈路層
也稱作數(shù)據(jù)鏈路層或網(wǎng)絡接口層,通常包括操作系統(tǒng)中的設備驅動程序和計算機中對應的網(wǎng)絡接口卡。它們一起處理與電纜(或其他任何傳輸媒介)的物理接口細節(jié)。
網(wǎng)絡層
有時也稱作互聯(lián)網(wǎng)層,處理數(shù)據(jù)報在網(wǎng)絡中的活動,例如數(shù)據(jù)報路由。其中網(wǎng)絡層協(xié)議包括IP
協(xié)議(網(wǎng)際協(xié)議), ICMP
協(xié)議(互聯(lián)網(wǎng)控制報文協(xié)議),以及IGMP
協(xié)議(英特網(wǎng)組管理協(xié)議)。
運輸層
運輸層主要為兩臺主機上的應用程序提供端到端的通信。在TCP/IP
協(xié)議族中,有兩個傳輸層協(xié)議: TCP(傳輸控制協(xié)議)和UDP(用戶數(shù)據(jù)報協(xié)議)。TCP為兩臺主機提供高可靠性
的數(shù)據(jù)通信。它所做的工作包括把應用程序交給它的數(shù)據(jù)分成合適的小塊交給下面的網(wǎng)絡層
,同時還要確認接收到的數(shù)據(jù)是正確的,并且將其組裝成有序的數(shù)據(jù)遞交到應用層,同時還要處理超時重傳、流量控制等。由于運輸層提供了高可靠性的端到端的通信,因此應用層可以更加方便來處理數(shù)據(jù)。
而另一方面,UDP
則為應用層提供一種非常簡單的服務。它只是把稱作數(shù)據(jù)報的分組從一臺主機發(fā)送到另一臺主機,但并不保證該數(shù)據(jù)報能到達另一端,因此數(shù)據(jù)的可靠性必須由應用層來提供,這就導致應用層處理程序的困難,但是對于數(shù)據(jù)要求不可靠的傳輸通常使用UDP協(xié)議,如視頻的播放等。
應用層
應用層就是用戶程序,不同的應用會有不一樣的操作
各種協(xié)議:
HTTP (Hypertext Transfer Protocol,超文本傳輸協(xié)議),主要用于普通瀏覽。
HTTPS (Hypertext Transfer Protocol over Secure Socket Layer, or HTTP over SSL,安全超文本傳輸協(xié)議),HTTP協(xié)議的安全版本。
FTP (File Transfer Protocol,文件傳輸協(xié)議),由名知義,用于文件傳輸。
POP3 (Post Office Protocol, version 3,郵局協(xié)議),收郵件用。
SMTP (Simple Mail Transfer Protocol,簡單郵件傳輸協(xié)議),用來發(fā)送電子郵件。
SSH (Secure Shell,用于替代安全性差的TELNET),用于加密安全登陸用。
OOTP (Boot Protocol,啟動協(xié)議),應用于無盤設備。
NTP (Network Time Protocol,網(wǎng)絡時間協(xié)議),用于網(wǎng)絡同步。
DHCP (Dynamic Host Configuration Protocol,動態(tài)主機配置協(xié)議),動態(tài)配置IP地址。
DNS (Domain Name Service,域名服務),用于完成地址查找,郵件轉發(fā)等工作(運行在TCP和UDP協(xié)議上)。
ECHO (Echo Protocol,回繞協(xié)議),用于查錯及測量應答時間(運行在TCP和UDP協(xié)議上)。
SNMP (Simple Network Management Protocol,簡單網(wǎng)絡管理協(xié)議),用于網(wǎng)絡信息的收集和網(wǎng)絡管理。
ARP (Address Resolution Protocol,地址解析協(xié)議),用于動態(tài)解析以太網(wǎng)硬件的地址。
協(xié)議
提示:圖中的RARP(逆地址解析協(xié)議)是基本不怎么使用的協(xié)議。
IP地址
為了標識互聯(lián)網(wǎng)中的每臺主機的身份,設計人員為每個接入網(wǎng)絡中的主機都分配一個IP
地址(Internet Protocol Address
),是一個32
位的整數(shù)地址,只有合法的IP
地址才能接入互聯(lián)網(wǎng)中并且與其他主機進行通信。注意了:IP
地址是軟件地址,是協(xié)議棧中識別主機身份的唯一標識。如果IP地址是不合法的,那么無法連接上公網(wǎng)(或者稱為廣域網(wǎng))。
IP分類編址
互聯(lián)網(wǎng)上的每個接口必須有一個唯一的IP地址, IP地址長 32bit,IP地址并不采用平面形式的地址空間,如 1、2、3等。 IP地址具有一定的結構,有五類不同的互聯(lián)網(wǎng)地址格式:
IP地址
A 類網(wǎng)絡地址的第一個字節(jié)的第一位必須為0 ,因此, A 類網(wǎng)絡地址第一個字節(jié)的取值范圍為0~127
(注意:但0 和127 不是有效的A 類網(wǎng)絡地址號)
B 類網(wǎng)絡地址的第一個字節(jié)的第一位必須為1 ,且第二位必須為0,因此, B 類網(wǎng)絡地址第一個字節(jié)的取值范圍為128~191
C 類網(wǎng)絡地址的第一個字節(jié)的第一位必須為1,第二位必須為1,第三位必須為0,因此C類網(wǎng)絡第一個字節(jié)的取值范圍為192~223
D 類IP地址的第一個字節(jié)前四位為1110
,那么它第一個字節(jié)的取值范圍為224~239
,約占據(jù)了所有IP地址的十六分之一,它是一個專門保留的地址,它并不指向特定的網(wǎng)絡,目前這一類地址被用于多播。
E 類IP地址的第一個字節(jié)前四位必須為1111
,那么它第一個字節(jié)的取值范圍為240~255
,約占據(jù)了所有IP地址的十六分之一,是為將來使用而保留的,其中32bit全為1的IP地址(255.255.255.255)用作廣播地址。
IP地址特點
類別 | 第一字節(jié)(二進制) | 第一字節(jié)取值范圍 | 網(wǎng)絡號個數(shù) | 主機號個數(shù) | 適用范圍 |
---|---|---|---|---|---|
A類 | 0XXX XXXX | 0~127 | 125 | 16777214 | 大型網(wǎng)絡 |
B類 | 10XX XXXX | 128~191 | 16368 | 65534 | 中型網(wǎng)絡 |
C類 | 110X XXXX | 192~223 | 2097152 | 254 | 小型網(wǎng)絡 |
D類 | 1110 XXXX | 224~239 | — | — | 多播 |
E類 | 1111 XXXX | 240~255 | — | — | 保留 |
局域網(wǎng)的概念
局域網(wǎng)(Local Area Network
,縮寫為LAN
),又稱內(nèi)網(wǎng),指覆蓋局部區(qū)域(如辦公室或樓層)的計算機網(wǎng)絡,局域網(wǎng)可以實現(xiàn)文件管理、應用軟件共享、打印機共享、工作組內(nèi)的日程安排、電子郵件和傳真通信服務等功能,是在一定區(qū)域內(nèi)由多個計算機連接組成的網(wǎng)絡,比如騰訊、阿里的內(nèi)網(wǎng),在內(nèi)部的計算機上的數(shù)據(jù)可以互聯(lián)互通、數(shù)據(jù)共享等。簡單來說,當我們使用的開發(fā)板接入路由器的時候,電腦的網(wǎng)絡也接入路由器,那么開發(fā)板與電腦就組成局域網(wǎng),數(shù)據(jù)在鏈路層上是互聯(lián)互通的。當然,板子也能通過網(wǎng)線直連電腦,這樣子也是組成一個局域網(wǎng)絡,數(shù)據(jù)可以在兩個主機之間進行通信。
廣域網(wǎng)
廣域網(wǎng)(Wide Area Network
,縮寫為WAN
),又稱廣域網(wǎng)、外網(wǎng)(與翻墻的外網(wǎng)是不一樣的概念)、公網(wǎng)。是連接不同地區(qū)計算機以進行通信的網(wǎng)絡,這種網(wǎng)絡通常會跨越很大的范圍,覆蓋的范圍從幾十公里到幾千公里,它能連接多個地區(qū)、城市并能提供遠距離通信服務, 但是注意的是我們說的廣域網(wǎng)并不等同于互聯(lián)網(wǎng) 。
簡單來說(我使用比喻的方式表達),如果局域網(wǎng)是小溪,不同區(qū)域有很多的小溪,這些小溪匯聚成江河,那么這些江河就是廣域網(wǎng),然后這些江河再流入大海,這個大海就是互聯(lián)網(wǎng)。互聯(lián)網(wǎng)就是由無數(shù)個局域網(wǎng),通過廣域網(wǎng)線路匯聚互聯(lián)起來,就形成了互聯(lián)網(wǎng)?;ヂ?lián)網(wǎng)的特點是開放、互聯(lián),如果一個公司的局域網(wǎng)沒有連接到互聯(lián)網(wǎng),那這個局域網(wǎng)就不屬于互聯(lián)網(wǎng),僅僅屬于內(nèi)部通信的網(wǎng)絡。
舉個例子,如果你家在某網(wǎng)絡運營商辦理了網(wǎng)絡服務,可能他們將送你一個光貓,然后你拿著這個光貓就能上網(wǎng)了,你可能覺得需要多人使用網(wǎng)絡,所以你又去買了一個無線路由器,讓家人也能連接到網(wǎng)絡上,那么這個家就是一個局域網(wǎng),然后局域網(wǎng)的通信是通過運營商連接到廣域網(wǎng)上的。
局域網(wǎng)與廣域網(wǎng)
這個示意圖雖然簡單,卻把LAN、WAN、Internet
三者全包含了。無線路由器把電腦、手機等設備連接到局域網(wǎng)LAN
上,并分配IP地址,即局域網(wǎng)IP
,我們可以稱之為LAN-IP
,LAN-IP
所到之處,就是局域網(wǎng)的范圍,像我們電腦的IP地址(192.168.1.xxx)
就是一個局域網(wǎng)IP
,而路由器的地址就是運營商給我們的一個IP
地址,這個IP地址是絕對合法的,可以看做是WAN-IP
(實際上這個IP
地址也是運營商的局域網(wǎng)IP地址(相對運營商來說),這個地址在運營商中轉換成一個真正的廣域網(wǎng)IP
地址,因為真正的IP地址是不夠的,只能再細分下去,但是這些事情我們暫時無需理會
,只要把路由器的IP地址看做是WAN-IP
即可)。
而運營商是一個邊界,國家與國家之間有邊界,網(wǎng)絡之間也有邊界,運營商就是局域網(wǎng)LAN
與廣域網(wǎng)WAN
的邊界。局域網(wǎng)LAN-IP
可以在局域網(wǎng)內(nèi)部有效,但是無法跨越邊界進入廣域網(wǎng)中,LAN-IP是路由器分配給我們的IP,那么我們想要跨越邊界進入廣域網(wǎng)中,就需要將LAN-IP變成有效的的IP地址,也就是WAN-IP
,那么在路由器中就需要將IP地址進行轉換,完成LAN-IP<—>WAN-IP
地址轉換(NAT
)。
當持有WAN-IP
的IP包順利到達下一個邊界Internet Gateway
,這是通往互聯(lián)網(wǎng)Internet
的最后一道關卡,即邊界。左邊是廣域網(wǎng),右邊是互聯(lián)網(wǎng),也需要做WAN-IP 與 Global-IP
(互聯(lián)網(wǎng)公共IP)的轉換才能進入互聯(lián)網(wǎng)中,我們知道這種概念即可,無需過多深入。
-
IP
+關注
關注
5文章
1767瀏覽量
151007 -
網(wǎng)絡協(xié)議
+關注
關注
3文章
273瀏覽量
21940 -
TCP
+關注
關注
8文章
1395瀏覽量
80122 -
協(xié)議棧
+關注
關注
2文章
145瀏覽量
33961
發(fā)布評論請先 登錄
相關推薦
為什么會有TCP/IP協(xié)議
TCP/IP協(xié)議,TCP/IP協(xié)議內(nèi)容和作用是什么?
tcp ip協(xié)議_什么是tcp ip協(xié)議

TCP-IP協(xié)議講解

評論