1. 程式人生 > 實用技巧 >在IDEA中設定依賴呼叫公共模組程式碼

在IDEA中設定依賴呼叫公共模組程式碼

計算機網路參考模型與5G模型

1984年國際標準化組織(ISO)頒佈了開放式互連(OSI)參考模型,這是一個開放式體系結構,將網路分為7層

1.應用層:網路服務與終端使用者的一個介面,人機互動介面

人機互動視窗,把人的語言輸入到計算機當中。例如,在QQ的對話視窗輸入字元。

2.表示層:資料的表示、安全、壓縮

將接收到的資料翻譯成二進位制陣列成的計算機語言,並對資料進行壓縮解壓、資料加密解密等工作。

3.會話層:建立、管理、中止會話

管理是否允許不同機器上的使用者之間建立會話連線關係

4.傳輸層:定義傳輸資料的協議埠號

,以及流控和差錯校驗,使用者程序之間的通訊

將上層應用資料分片並加上埠號封裝成資料段,或通過對報文頭中的埠識別,實現網路中不同主機上的使用者程序之間的資料通訊。

5.網路層:進行邏輯地址定址,實現不同網路之間的路徑選擇

將上層資料加上源和目的方的邏輯(IP)地址封裝成資料包,實現資料從源端到目的端的傳輸。

6.資料鏈路層:建立邏輯連線、進行硬體地址定址、差錯校驗等功能

將上層資料加上源和目的方的物理(MAC)地址封裝成資料幀,MAC地址是用來標識網絡卡的實體地址,建立資料鏈路,當發現數據錯誤時,可以重傳資料幀。

7.物理層:建立、維護、斷開物理連線

報文頭部和上層資料資訊都是由二進位制陣列成的,物理層將這些二進位制數字組成的位元流轉換成電訊號在網路中傳輸

應用層相當於在一個微信的對話方塊輸入你想要傳送的文字

表示層會將文字轉化為由二進位制組成的計算機語言,並把計算機語言進行壓縮,加密傳給會話層

會話層相當於在雙方都有網路的情況下都打開了微信,理論上已經可以進行會話連線,會話層會控制我們的軟體應用是否能進行連線

傳輸層會將上層資料(壓縮加密的計算機語言)進行分片,分配成數個數據,然後把我的程式源埠和目的程式埠進行封裝成資料段,每個程式都有自己對應的埠,

網路層將上層資料,加上我的源IP地址和目的IP地址進行封裝,封裝成資料包再進行傳輸(IP地址邏輯地址相當於家庭住址是可變的)

資料鏈路層會將上層資料加上源MAC地址和目的方MAC地址進行封裝成資料幀(MAC地址相當於座標,全球唯一)

MAC(Media Access Control)地址,或稱為 MAC位址、硬體位址。用來定義網路裝置的位置。一個主機會有一個IP地址,而每個網路位置會有一個專屬於它的MAC位址。由48位元/bit長(6位元組/byte,1byte=8bits),16進位制的數字組成。0-23位叫做組織唯一標誌符(organizationally unique,是識別LAN(區域網)節點的標識。24-47位是由廠家自己分配.其中第40位是組播地址標誌位。網絡卡的實體地址通常是由網絡卡生產廠家燒入網絡卡的EPROM(一種快閃記憶體晶片,通常可以通過程式擦寫),它儲存的是傳輸資料時真正賴以標識發出資料的電腦和接收資料的主機的地址。在網路底層的物理傳輸過程中,是通過實體地址來識別主機的,它一般也是全球唯一的。因此MAC地址就如同我們身份證上的身份證號碼,具有全球唯一性

物理層 通過網絡卡傳送出去的位元流轉換成電訊號和光訊號在網路中再進行傳輸

資料鏈路層 接收到資料幀,經過拆封,有源MAC和目標MAC地址,如果確定目標MAC地址準確無誤將會把資料接著往上傳輸到網路層

網路層 接收到資料包,經過拆封,裡面有源IP地址和目標IP地址,確定目標IP地址無誤,資料將會往上到傳輸層

傳輸層 接收到的資料段,有源埠和目的埠,會傳輸給目的埠

表示層 會將接收到的計算機語言進行解壓解密,翻譯

會話層 會話層確認雙方可以連線通訊

應用層 翻譯完將資訊展示給對方使用者

程式之間通過埠識別

運行當中的程式:程序

傳輸層的通訊為端到端的通訊 程式埠到程式埠的通訊

網路層及以下的通訊為點對點通訊 主機地址到主機地址的通訊

資料鏈路層和物理層偏向硬體方面


TCP/IP協議

IEEE802.3用於有線區域網(乙太網)標準

IEEE202.11無線區域網為標準

TCP(傳輸控制協議)協議應用的埠及其協議功能----傳輸更加穩定可靠

80HTTP(超文字傳輸協議):用於瀏覽器和web伺服器之間的請求和響應的互動

21FTP(檔案傳輸協 議):用於控制連線FTP伺服器

53DNS(域名系統):用於連線DNS伺服器

25SMTP(簡單郵件傳輸協議):用於傳送郵件

110POP3(郵局協議版本3):用於接收郵件

22SSH(安全外殼協議):用於計算機之間的遠端加密登入

UDP(使用者資料報協議)協議應用的埠及其協議功能----傳輸效率更高

69TFTP(簡單檔案傳輸協議):用於小檔案的傳輸

53DNS(域名系統):用於解析DNS

111RPC(遠端呼叫協議):用於遠端過程呼叫

161SNMP(簡單網路管理協議):用於網路裝置的管理

123NTP(網路時間協議):用於網路時間同步

IP(網際協議)協議及其功能

ARP(地址解析協議):用於在區域網中根據IP地址獲取實體地址

RARP(逆地址解析協議):用於在區域網中通過ARP表根據實體地址請求IP地址

ICMP(網際控制報文協議):用於驗證網路是否暢通

IGMP(網際組管理協議):用於主機與組播路由器之間組播通訊

上層應用層下發一個應用資料到傳輸層會加上一個埠,假如是TCP協議,會加上一個TCP頭部裡面有源埠和目的埠,資料再傳到網路層會變成資料包,會加上IP頭部,裡面有源IP地址和目的IP地址,再往下到達資料鏈路層變成資料幀,加上MAC頭部,裡面包含源MAC地址和目的MAC地址,再往下到達物理層變成位元流轉換為電訊號和光訊號再進行傳輸。

物理層位元流轉換為電訊號光訊號上傳到資料鏈路層變成資料幀,確認裡面目的MAC地址準確無誤,接著傳輸到網路層變成資料包,確認目的IP地址無誤接著往上傳,到傳輸層變成資料段,裡面有源埠號和目的埠號,如果發現目的埠是匹配程式將會在應用層解壓解密翻譯出來在使用者介面。

PDU協議資料單元

PDU:協議資料單元:資料鏈路層的PDU是資料幀,網路層的PDU是資料包,傳輸層的ODU是資料段,物理層的PDU是位元流。