什麼是計算機網絡?
計算機網絡定義:將地理位置不同的終端系統通過網絡設備和傳輸介質,實現網絡通信和資源共享。
終端系統:可以連接到網絡中的終端設備。比如手機,電腦,平板等。
網絡設備:連接網絡的物理實體。比如集線器,交換機,路由器防火牆設備等。
傳輸介質:光,電,電磁波。比如常用的網線(雙絞線),近幾年普及的光纖,以及無線通信的電磁波等。
資源共享:比如百度百科是百度存儲在他們的服務器中,所有人都可以通過上網來查詢訪問,這就實現資源的共享。
網絡的本質/網絡的最根本目的是什麼?
數據傳輸。
爲什麼需要網絡,是因爲大家可以利用網絡來傳輸數據,網絡是一個傳輸信息的載體。就像交通網,道路是基礎,有了道路車輛纔可以通信,人和貨物才能才能交流。這裏道路可以類比網絡,人和貨物就是網絡中傳送的數據。
OSI參考模型
什麼是OSI?
爲了解決網絡設備之間的兼容性問題,幫助各個廠商生產出可兼容的網絡設備。ISO組織在1984年提出了OSI參考模型。目的是希望通過這樣一個統一的標準,實現網絡的互聯互通,而不再有設備和廠家的區分。
OSI和ISO是什麼關係?
ISO是一個國際化標準組織,全稱是International Organization for Standardization。
OSI是參考模型--開發式系統互聯。全稱是Open System Interconnection。
開放式(open): 不區分設備。不管是手機,還是電腦還是其他的終端。
系統(system):統一的標準,所以不區分系統。不管是Windows,Mac,還是Linux。
互聯(interconnection):互聯互通。實現網絡通信,資源共享。
之所以是參考模型是因爲該標準在制定的時候,市場上的大量通信設備已經默認按照TCP/IP網絡模型互聯互通了,所以現在實際應用中的通信設備,基本上是按照TCP/IP的模型實現的,但是OSI參考模型對於理解網絡很有幫助,所以學習網絡必須學習OSI參考模型。
OSI參考模型
層次 |
英文縮寫 |
解釋說明 |
應用層 |
Application Layer |
提供人機交互的方式。 |
表示層 |
Presention Layer |
用戶數據處理。如壓縮也解壓,加密和解密,編碼和解碼。 |
會話層 |
Session Layer |
會話的建立,維護和終止,會話隔離。 |
傳輸層 |
Transportion Layer |
提供邏輯上的端到端通信。 |
網絡層 |
Network Layer |
尋址和路由選擇,邏輯地址IP。 |
數據鏈路層 |
DataLink Layer |
提供介質訪問,鏈路管理等,物理地址。LLC,MAC。 |
物理層 |
Physical Layer |
標準的電器規格,實現bit流傳輸。 |
就上面的描述,下面做一個簡單的解釋:
會話層,表示層,應用層一般稱爲高層,負責主機之間的數據傳輸,因爲和人有關,所以處理一些與人相關的應用數據和信息。
網路層,數據鏈路層和物理層,一般稱爲低層或者底層,因爲主要是一些協議處理,路由選擇,硬件交互等工作。
具體的以微信發消息爲例:
應用層:
比如微信需要提供用戶可以理解和操作的界面、對話框、功能按鈕等。等待用戶輸入或者操作之後給予響應並將結果以人能理解的方式呈現出來。
表示層:
將用戶的數據進行處理,爲了安全需要加密和解密,爲了節省寬帶和提高利用率需要壓縮和解壓縮,爲了變成人機識別的信息需要編碼和解碼,比如將用戶的數據轉換成ASCII碼,或者ASCII碼轉化成文字,視頻,圖片等。
會話層:
比如你微信中有張三,李四,王五,並且正在和這三個人聊天,那麼相當於和這三個人建立了三個會話,張三的消息不會發到李四的對話框,發給李四的消息也不會發到王五的微信上,這個就是不同的會話實現的。並且這些會話相互獨立,互不干擾,這就是會話隔離。
傳輸層:
區別不同的應用程序的。主要用端口號區分,範圍是1-65535,常見的端口號有21:ftp,22:ssh,23:telnet,80:http等。這裏主要用的兩種協議是TCP和UDP。
網絡層:
主要是提供路由選擇,路由器就是位於這一層。主要是邏輯地址IP的尋址。
數據鏈路層:
提供物理地址的尋址,MAC地址。又分爲LLC和MAC兩個邏輯子層。LLC邏輯鏈路控制子層,MAC介質訪問控制子層。
物理層:提供統一的電氣標準。這樣網口就具有了統一的規格,所以只要是網線插上網口,就可以實現數據收發。機器只能識別0和1,所以一般用高電平表示1,低電平表示0。
假設要發給張三的微信消息爲 你好,那麼下面的上層數據就是 你好,通過這七層參考模型,先從本機的微信編輯框獲取數據並處理,將報文層層封裝後發出,張三的手機接受到報文後再層層解析,最終呈現在微信對話框中的就是消息 你好。具體過程參考下面兩個流程圖(圖片來自網絡):
你好 通過微信對話框接收,並將報文層層封裝後從物理網口發出過程:
從物理端口收到數據後,經過層層解析,顯示到微信對話框的消息 你好
下面是另外一篇參考文章,裏面的是一些官方或者書籍上的解釋,爲防止鏈接失效,原文貼上,可對比參考學習:
原文鏈接:https://blog.csdn.net/qq_38131333/article/details/81533192
一、圖形描述
(1)OSI七層模型
(2)TCP/IP五層模型的協議
(3)數據封裝
不同的協議層對數據包有不同的稱謂,在傳輸層叫做段(segment),在網絡層叫做數據報(datagram),在鏈路層叫做幀(frame)加上MAC頭,加完後再加上一個FCS校驗組成數據幀,就封裝完成了,然後在物理層通過Bit來傳輸。發到傳輸介質上,到達目的主機後每層協議再剝掉相應的首部,最後將應用層數據交給應用程序處理。
二、TCP/UDP協議
TCP (Transmission Control Protocol)和UDP(User Datagram Protocol)協議屬於傳輸層協議。其中TCP提供IP環境下的數據可靠傳輸,它提供的服務包括數據流傳送、可靠性、有效流控、全雙工操作和多路復 用。通過面向連接、端到端和可靠的數據包發送。通俗說,它是事先爲所發送的數據開闢出連接好的通道,然後再進行數據發送;而UDP則不爲IP提供可靠性、 流控或差錯恢復功能。一般來說,TCP對應的是可靠性要求高的應用,而UDP對應的則是可靠性要求低、傳輸經濟的應用。TCP支持的應用協議主要 有:Telnet、FTP、SMTP等;UDP支持的應用層協議主要有:NFS(網絡文件系統)、SNMP(簡單網絡管理協議)、DNS(主域名稱系 統)、TFTP(通用文件傳輸協議)等.
TCP/IP協議與低層的數據鏈路層和物理層無關,這也是TCP/IP的重要特點
三、OSI的基本概念
OSI是Open System Interconnect的縮寫,意爲開放式系統互聯。
OSI七層參考模型的各個層次的劃分遵循下列原則:
1、同一層中的各網絡節點都有相同的層次結構,具有同樣的功能。
2、同一節點內相鄰層之間通過接口(可以是邏輯接口)進行通信。
3、七層結構中的每一層使用下一層提供的服務,並且向其上層提供服務。
4、不同節點的同等層按照協議實現對等層之間的通信。
第一層:物理層(PhysicalLayer)
規定通信設備的機械的、電氣的、功能的和過程的特性,用以建立、維護和拆除物理鏈路連接。具體地講,機械 特性規定了網絡連接時所需接插件的規格尺寸、引腳數量和排列情況等;電氣特性規定了在物理連接上傳輸bit流時線路上信號電平的大小、阻抗匹配、傳輸速率 距離限制等;功能特性是指對各個信號先分配確切的信號含義,即定義了DTE和DCE之間各個線路的功能;規程特性定義了利用信號線進行bit流傳輸的一組 操作規程,是指在物理連接的建立、維護、交換信息是,DTE和DCE雙放在各電路上的動作系列。在這一層,數據的單位稱爲比特(bit)。屬於物理層定義的典型規範代表包括:EIA/TIA RS-232、EIA/TIA RS-449、V.35、RJ-45等。
第二層:數據鏈路層(DataLinkLayer)
在物理層提供比特流服務的基礎上,建立相鄰結點之間的數據鏈路,通過差錯控制提供數據幀(Frame)在信道上無差錯的傳輸,並進行各電路上的動作系列。數據鏈路層在不可靠的物理介質上提供可靠的傳輸。該層的作用包括:物理地址尋址、數據的成幀、流量控制、數據的檢錯、重發等。在這一層,數據的單位稱爲幀(frame)。數據鏈路層協議的代表包括:SDLC、HDLC、PPP、STP、幀中繼等。
第三層:網絡層
在 計算機網絡中進行通信的兩個計算機之間可能會經過很多個數據鏈路,也可能還要經過很多通信子網。網絡層的任務就是選擇合適的網間路由和交換結點, 確保數據及時傳送。網絡層將數據鏈路層提供的幀組成數據包,包中封裝有網絡層包頭,其中含有邏輯地址信息- -源站點和目的站點地址的網絡地址。如 果你在談論一個IP地址,那麼你是在處理第3層的問題,這是“數據包”問題,而不是第2層的“幀”。IP是第3層問題的一部分,此外還有一些路由協議和地 址解析協議(ARP)。有關路由的一切事情都在這第3層處理。地址解析和路由是3層的重要目的。網絡層還可以實現擁塞控制、網際互連等功能。在這一層,數據的單位稱爲數據包(packet)。網絡層協議的代表包括:IP、IPX、RIP、OSPF等。
第四層:處理信息的傳輸層
第4層的數據單元也稱作數據包(packets)。但是,當你談論TCP等具體的協議時又有特殊的叫法,TCP的數據單元稱爲段 (segments)而UDP協議的數據單元稱爲“數據報(datagrams)”。這個層負責獲取全部信息,因此,它必須跟蹤數據單元碎片、亂序到達的 數據包和其它在傳輸過程中可能發生的危險。第4層爲上層提供端到端(最終用戶到最終用戶)的透明的、可靠的數據傳輸服務。所爲透明的傳輸是指在通信過程中 傳輸層對上層屏蔽了通信傳輸系統的具體細節。傳輸層協議的代表包括:TCP、UDP、SPX等。
第五層:會話層
這一層也可以稱爲會晤層或對話層,在會話層及以上的高層次中,數據傳送的單位不再另外命名,而是統稱爲報文。會話層不參與具體的傳輸,它提供包括訪問驗證和會話管理在內的建立和維護應用之間通信的機制。如服務器驗證用戶登錄便是由會話層完成的。
第六層:表示層
這一層主要解決擁護信息的語法表示問題。它將欲交換的數據從適合於某一用戶的抽象語法,轉換爲適合於OSI系統內部使用的傳送語法。即提供格式化的表示和轉換數據服務。數據的壓縮和解壓縮, 加密和解密等工作都由表示層負責。
第七層:應用層
應用層爲操作系統或網絡應用程序提供訪問網絡服務的接口。應用層協議的代表包括:Telnet、FTP、HTTP、SNMP等。
除了層的數量之外,開放式系統互聯(OSI)模型與TCP/IP協議有什麼區別?
開放式系統互聯模型是一個參考標準,解釋協議相互之間應該如何相互作用。TCP/IP協議是美國國防部發明的,是讓互聯網成爲了目前這個樣子的標準之一。開放式系統互聯模型中沒有清楚地描繪TCP/IP協議,但是在解釋TCP/IP協議時很容易想到開放式系統互聯模型。兩者的主要區別如下:
TCP/IP協議中的應用層處理開放式系統互聯模型中的第五層、第六層和第七層的功能。
TCP/IP協議中的傳輸層並不能總是保證在傳輸層可靠地傳輸數據包,而開放式系統互聯模型可以做到。TCP/IP協議還提供一項名爲UDP(用戶數據報協議)的選擇。UDP不能保證可靠的數據包傳輸。
TCP/IP協議
TCP(Transmission Control Protocol)和UDP(User Datagram Protocol)協議屬於傳輸層協議。其中TCP提供IP環境下的數據可靠傳輸,它提供的服務包括數據流傳送、可靠性、有效流控、全雙工操作和多路複用。通過面向連接、端到端和可靠的數據包發送。通俗說,它是事先爲所發送的數據開闢出連接好的通道,然後再進行數據發送;而UDP則不爲IP提供可靠性、流控或差錯恢復功能。一般來說,TCP對應的是可靠性要求高的應用,而UDP對應的則是可靠性要求低、傳輸經濟的應用。
TCP支持的應用協議主要有:Telnet、FTP、SMTP等;UDP支持的應用層協議主要有:NFS(網絡文件系統)、SNMP(簡單網絡管理協議)、DNS(主域名稱系統)、TFTP(通用文件傳輸協議)等。
TCP/IP協議與低層的數據鏈路層和物理層無關,這也是TCP/IP的重要特點。
OSI是Open System Interconnect的縮寫,意爲開放式系統互聯。