matplotlib 使用簡明教程(三)-一些專業圖表簡介
OSI七層模型
網際網路建立的目的
網路建立的目的就是為了資料互動
OSI七層模型
1.物理層
中繼器,集線器,網線
2.資料鏈路層
資料鏈路層由來:單純的電訊號0和1沒有任何意義,必須規定電訊號多少位一組,每組什麼意思
資料鏈路層的功能:定義了電訊號的分組方式
乙太網協議:
1)要有一塊網絡卡,網絡卡上要有一個獨一無二的地址(mac地址)
2)一組電訊號構成一個數據包,叫做“幀”
3)每一幀被分為兩個部分:報頭head和資料data兩部分
-
報頭(head):固定18個位元組(18個字元)
- 傳送者(源地址):6位元組
- 接收者(目標地址):6位元組
- 資料型別:6位元組
-
資料(data):最短46個位元組,最長1500個位元組,超過最大限制就分片傳送
mac地址:每塊網絡卡出廠時都被燒製上一個世界上唯一的mac地址,長度為48位2進位制,通常由12位16進位制數表示(前六位是廠商編號,後六位是流水線號)
計算機通訊,基本靠吼
廣播:讓所有的其它計算機都能接收到你的資料包,其它計算機要根據報頭(head)來判斷,這個資料是不是傳送給自己 的
3.網路層
IP地址:(點分十進位制,以點為分隔符)範圍:0.0.0.0 - 255.255.255.255
一個IP地址分為兩部分:
1)網路位
2)主機位
多個IP在不在同一個網段,取決於子網掩碼 + IP地址
10.0.0.7/255.255.255.0
將IP和子網進行二進位制轉換:
IP: 00001010.00000000.00000000.00000111
子網:11111111.11111111.11111111.00000000
根據下面的按位與運算:
00001010.00000000.00000000.00000000 = 10.0.0.0
IP和子網掩碼之間的運算:AND(按位與運算)符號:&
1&1=1
1&0=0
0&0=0
&&:邏輯與運算
乙太網資料包=乙太網頭+報頭+資料
arp協議:地址對映協議
IP地址繫結在mac地址上
4.傳輸層
傳輸層的功能:建立埠到埠的通訊
埠範圍:0-65535,系統佔用的埠:0-1023
TCP/IP協議:可靠傳輸,TCP資料包沒有長度限制,理論上可以無限長,但是為了保證網路效率,通常tcp資料包的長度不會超過ip資料包的長度,以確保單個TCP資料包不必再被分割
UDP協議:不可靠傳輸
埠對映:將物理機A的埠對映到虛擬機器B,我們連線物理機A時就相當於連線上了虛擬機器B
三次握手:
SYN:請求連線
ACK:確認請求,可以連線
資料傳輸:
四次揮手:
TCP協議的11種狀態
三次握手中:
1.SYN_SENT
2.LISTEN
3.SYN_REVD(syn洪水攻擊)半連線池
4.ESTABLISHED
四次揮手中:
1.FIN_WAIT_1
2.CLOSE_WAIT
3.FIN_WAIT_2
4.LAST_ACK
5.TIME_WAIT(TIME_WAIT多,證明伺服器上有大併發)
關閉狀態:
1.CLOSED(被動關閉端在接收到ack包後,進入CLOSED狀態關閉
TCP連線)
2.CLOSING(客戶端和服務端同時發起斷開連線)
5.會話層
會話層主要三大功能:
建立會話:
A、B兩臺網路裝置之間要通訊,要建立一條會話供他們使用,在建立會話的過程中也會有身份驗證,許可權鑑定等環節
保持會話:
通訊會話建立後,通訊雙方開始傳遞資料,當資料傳遞完成後,OSI會話層不一定會立刻將兩者這條通訊會話斷開,它會根據應用程式和應用層的設定對該會話進行維護,在會話維持期間兩者可以隨時使用這條會話傳輸局
斷開會話:
當應用程式或應用層規定的超時時間到期後,OSI會話層才會釋放這條會話。或者A、B重啟、關機、手動執行斷開連線的操作時,OSI會話層也會將A、B之間的會話斷開
6.表示層
表示層主要三大功能:
1.內碼轉換
2.壓縮與解壓縮
3.加密與解密
7.應用層
應用層由來:使用者使用的都是應用程式,均工作於應用層,網際網路是開發的,大家都可以開發自己的應用程式,資料多種多樣,必須規定好資料的組織形式
應用層功能:規定應用程式的資料格式
例:TCP協議可以為各種各樣的程式傳遞資料,比如Email、WWW、FTP等等。那麼,必須有不同協議規定電子郵件、網頁、FTP資料的格式,這些應用程式協議就構成了”應用層”