day3.网络基础之网络协议
一.操作系統基礎
操作系統:(Operating System,簡稱OS)是管理和控制計算機硬件與軟件資源的計算機程序,是直接運行在“裸機”上的最基本的系統軟件,任何其他軟件都必須在操作系統的支持下才能運行。 注:計算機(硬件)->os->應用軟件二.網絡通信原理
2.1 什么是互聯網
連接兩臺計算機之間的internet實際上就是一系列統一的標準,這些標準稱之為互聯網協議 互聯網的本質就是一系列的協議,總稱為‘互聯網協議’(Internet Protocol Suite). 互聯網協議的功能:定義計算機如何接入internet,以及接入internet的計算機通信的標準。2.2 osi七層協議
互聯網協議按照功能不同分為osi七層或tcp/ip五層或tcp/ip四層(應表會傳網數物) 每層運行常見物理設備2.3 tcp/ip五層模型講解
我們將應用層,表示層,會話層并作應用層,從tcp/ip五層協議的角度來闡述每層的由來與功能,搞清楚了每層的主要協議就理解了整個互聯網通信的原理。 首先,用戶感知到的只是最上面一層應用層,自上而下每層都依賴于下一層,所以我們從最下一層開始切入,比較好理解。 每層都運行特定的協議,越往上越靠近用戶,越往下越靠近硬件。2.3.1 物理層
物理層由來:孤立的計算機之間要想一起玩,就必須接入internet,言外之意就是計算機之間必須完成組網 物理層功能:主要是基于電器特性發送高低電壓(電信號),高電壓對應數字1,低電壓對應數字0(發送電信號)2.3.2 數據鏈路層
數據鏈路層由來:單純的電信號0和1沒有任何意義,必須規定電信號多少位一組,每組什么意思 數據鏈路層的功能:定義了電信號的分組方式 (ethernet)以太網協議 :(基于MAC地址進行廣播通信)-
-
- 一組電信號構成一個數據包,叫做‘幀’
- 每一數據幀分成:報頭head和數據data兩部分
-
-
-
- 發送者/源地址,6個字節
- 接收者/目標地址,6個字節
- 數據類型,6個字節
-
-
-
- 數據包的具體內容
-
2.3.3 網絡層
網絡層由來:有了ethernet、mac地址、廣播的發送方式,世界上的計算機就可以彼此通信了,問題是世界范圍的互聯網是由一個個彼此隔離的小的局域網組成的,那么如果所有的通信都采用以太網的廣播方式,那么一臺機器發送的包全世界都會收到,這就不僅僅是效率低的問題了,這會是一種災難。 網絡層功能:引入一套新的地址用來區分不同的廣播域/子網,這套地址即網絡地址 IP協議:-
- 規定網絡地址的協議叫ip協議,它定義的地址稱之為ip地址,廣泛采用的v4版本即ipv4,它規定網絡地址由32位2進制表示
- 范圍0.0.0.0-255.255.255.255
- 一個ip地址通常寫成四段十進制數,例:172.16.10.1
-
-
- 網絡部分:標識子網
- 主機部分:標識主機
-
| 場景 | 數據包地址 |
| 同一子網 | 目標主機mac,目標主機ip |
| 不同子網 | 網關mac,目標主機ip |
| ? | 源mac | 目標mac | 源ip | 目標ip | 數據部分 |
| 發送端主機 | 發送端mac | FF:FF:FF:FF:FF:FF | 172.16.10.10/24 | 172.16.10.11/24 | 數據 |
2.3.4 傳輸層
傳輸層功能:建立端口到端口的通信
補充:端口范圍0-65535,0-1023為系統占用端口
tcp協議:
可靠傳輸,TCP數據包沒有長度限制,理論上可以無限長,但是為了保證網絡的效率,通常TCP數據包的長度不會超過IP數據包的長度,以確保單個TCP數據包不必再分割。
udp協議:
不可靠傳輸,”報頭”部分一共只有8個字節,總長度不超過65,535字節,正好放進一個IP數據包。
tcp報文
?
tcp三次握手和四次揮手
?
2.3.5 應用層
應用層功能:規定應用程序的數據格式。
例:TCP協議可以為各種各樣的程序傳遞數據,比如Email、WWW、FTP等等。那么,必須有不同協議規定電子郵件、網頁、FTP數據的格式,這些應用程序協議就構成了”應用層”。
?
四.網絡通信流程
1.本機獲取
- 本機的IP地址:192.168.1.100
- 子網掩碼:255.255.255.0
- 網關的IP地址:192.168.1.1
- DNS的IP地址:8.8.8.8
2.打開瀏覽器,想要訪問Google,在地址欄輸入了網址:www.google.com。
3.dns協議(基于udp協議)
域名定義:http://jingyan.baidu.com/article/1974b289a649daf4b1f774cb.html
4.http協議
?
5.TCP協議
6 IP協議
7 以太網協議
最后,IP數據包嵌入以太網數據包。以太網數據包需要設置雙方的MAC地址,發送方為本機的網卡MAC地址,接收方為網關192.168.1.1的MAC地址(通過ARP協議得到)。
以太網數據包的數據部分,最大長度為1500字節,而現在的IP數據包長度為5000字節。因此,IP數據包必須分割成四個包。因為每個包都有自己的IP標頭(20字節),所以四個包的IP數據包的長度分別為1500、1500、1500、560。
8.服務器端響應
?
轉載于:https://www.cnblogs.com/maxiaotiaoshishui/p/7160929.html
總結
以上是生活随笔為你收集整理的day3.网络基础之网络协议的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 查询反模式 - 隐式的列
- 下一篇: BZOJ 3309 DZY Loves