OSI七層模型
七層模型,也稱OSI(Open System Interconnection)參考模型。用於計算機或通訊系統間互聯的標準體系。一般稱為OSI參考模型或七層模型。它從低到高分別是:物理層、資料鏈路層、網路層、傳輸層、會話層、表示層和應用層。
- 應用層(Application) 提供網路與使用者應用軟體之間的介面服務
- 表示層(Presentation) 提供格式化的表示和轉換資料服務,如加密和壓縮
- 會話層(Session) 提供包括訪問驗證和會話管理在內的建立和維護應用之間通訊的機制
- 傳輸層(Transimission) 提供建立、維護和取消傳輸連線功能,負責可靠地傳輸資料(PC)
- 網路層(Network) 處理網路間路由,確保資料及時傳送(路由器)
- 資料鏈路層(DataLink) 負責無錯傳輸資料,確認幀、發錯重傳等(交換機)
- 物理層(Physics) 提供機械、電氣、功能和過程特性(網路卡、網線、雙絞線、同軸電纜、中繼器)
TCP/IP參考模型
- TCP/IP是傳輸控制協議/網路互聯協議的簡稱
- 早期的TCP/IP模型是一個四層結構,從下往上依次是網路介面層、網際網路層、傳輸層和應用層
- 後來在使用過程中,借鑑OSI七層參考模型,將網路介面層劃分為了物理層和資料鏈路層,形成五層結構
常用協議
- TCP/IP協議被稱為傳輸控制協議/網際網路協議,又稱網路通訊協議
- 是由網路層的IP協議和傳輸層的TCP協議組成,是一個很大的協議集合
- 物理層和資料鏈路層沒有定義任何特定協議,支援所有的標準和專用的協議
- 網路層定義了網路互聯也就是IP協議
- 傳輸層定義了TCP(傳輸控制協議)和UDP(使用者資料包)協議
- 應用層定義了HTTP(超文字傳輸協議)、FTP(檔案傳輸協議)、DNS(域名系統)等協議
物理層
物理層, 為資料端裝置提供傳送資料的通路。可以雙向通訊,為資料傳輸提供可靠的環境。對應我們的網線、光纖(物理裝置)。
- 全雙工:雙向通道,相互通訊。互不干擾。比如:電話。
- 單工:單向車道,只能一方通訊。比如:廣播。
- 半雙工:同一時間點只能一方通訊。比如:對講機。
資料鏈路層
資料鏈路層們於物理層和網際網路層之間,用來向網路層提供資料,就是把源計算機網路層傳過來的資訊傳遞給目標主機。對應我們的網路卡,處理的是網路卡到網路卡的連線。資料到這一層包裝加上了mac頭,這一層的資料叫資料幀(Frame)。
網路層
位於傳輸層和網路介面層之間,用於把資料從源主機經過若干個中間節點傳送到目標主機,並向傳輸層提供最基礎的資料傳輸服務,它要提供路由和IP選址的工作。資料到達網路層,會加IP頭,這層的資料叫資料包(Packet)。
選址:交換機是靠MAC來定址的,而因為MAC地址是無層次的,所以要靠IP地址來確認計算機的位置,這就是選址。
路由:在能夠選擇的多條道路之間選擇一條最短的路徑就是路由的工作。
IP:在網路中,每臺計算機都有一個唯一的地址,方便別人找到它,這個地址稱為IP地址。
傳輸層
傳輸層位於應用層和網路介面層之間。提供了一種端到端的連線。傳輸層的協議分為TCP(Transimision Control Protocal)和UDP(User Datagram Protocal)。使用TCP還是UDP取決於對可靠性的要求。資料到達這層會加tcp/udp頭,這層資料叫報文段(Segment)。
TCP
- 傳輸控制協議
- 可靠的、面向連線的協議
- 傳輸效率低
UDP
- 使用者資料包協議
- 不可靠的、無連線的服務
- 傳輸效率高
應用於QQ、視訊軟體、TFTP 簡單檔案傳輸協議(簡訊)
TCP3次握手和4次斷開
- TCP是面向連線的協議,它在源點和終點之間建立虛擬連線,而不是物理連線
- 在資料通訊之前,傳送端與接收端要先建立連線,等資料傳送結束後,雙方再斷開連線
- TCP連線的每一方都是由一個IP地址和一個埠組成
三次握手
- 第一次握手主機A通過一個標識為SYN標識位的資料段傳送給主機B請求連線,通過該資料段告訴主機B希望建立連線,需要B應答,並告訴主機B傳輸的起始序列號
SYN:1 seq=x
- 第二次握手是主機B用一個確認應答ACK和同步序列號SYNC標誌位的資料段來響應主機A,一是傳送ACK告訴主機A收到了資料段,二是通知主機A從哪個序列號做標記。
SYN:1 seq=y ACK=x+1
- 第三次握手是主機A確認收到了主機B的資料段並可以開始傳輸實際資料.
ACK=y+1
抓包
四次斷開
- 主機A傳送FIN控制位發出斷開連線的請求
- 主機B進行響應,確認收到斷開連線請求
- 主機B提出反方向的關閉要求
- 主機A確認收到的主機B的關閉連線請求
tcp三次握手四次斷開正好符合的是tcp可靠的特點,多次確認。四次斷開,有可能是某一方還未傳送完資料所以需要四次斷開。
應用層
網路服務與終端使用者的一個介面。通過應用層傳送、解封裝資料。
應用層常見協議
- HTTP 超檔案傳輸協議
- FTP 檔案傳輸協議
- SMTP(傳送郵件)和POP3(接收郵件)