
什么是TCP/IP
首先來說,TCP/IP協議是瀏覽器與服務器鏈接因特網的協議,瀏覽器使用TCP/IP協議進入服務器,服務器使用TCP/IP協議來發送HTML檔案到瀏覽器,
TCP/IP的作用
TCP/IP(Transmission Control Protocol / Internet Protocol)是一個讓已連接因特網的計算機進行互相通信的協議,這個協議控制的不僅僅是計算機接入因特網,也有其他電子設備,以及他們之間如何傳輸資料,
TCP/IP的三次握手
目的:
- 為了對每次發送的資料量進行跟蹤與協商,確保資料段的發送和接收同步,根據所接收到的資料量而確認資料發送、接收完畢后何時撤消聯系,并建立虛連接,
三次握手的步驟如下:
- 第一次握手:建立連接時,客戶端發送syn包(seq=j)到服務器,并進入SYN_SENT狀態,等待服務器確認;SYN:同步序列編號(Synchronize Sequence Numbers)
- 第二次握手:服務器收到syn包,必須確認客戶的SYN(ack=j+1),同時自己也發送一個SYN包(seq=k),即SYN+ACK包,此時服務器進入SYN_RECV狀態,
- 第三次握手:客戶端收到服務器的SYN+ACK包,向服務器發送確認包ACK(ack=k+1),此包發送完畢,客戶端和服務器進入ESTABLISHED(TCP連接成功)狀態,完成三次握手,
TCP/IP的四次握手
目的:
- 對于一個已經建立的連接,TCP使用改進的四次握手來釋放連接(使用一個帶有FIN附加標記的報文段)
TCP關閉連接的步驟如下:
- 第一步,當主機A的應用程式通知TCP資料已經發送完畢時,TCP向主機B發送一個帶有FIN附加標記的報文段(FIN表示英文finish)
- 第二步,主機B收到這個FIN報文段之后,并不立即用FIN報文段回復主機A,而是先向主機A發送一個確認序號ACK,同時通知自己相應的應用程式:對方要求關閉連接(先發送ACK的目的是為了防止在這段時間內,對方重傳FIN報文段)
- 第三步,主機B的應用程式告訴TCP:我要徹底的關閉連接,TCP向主機A送一個FIN報文段
- 第四步,主機A收到這個FIN報文段后,向主機B發送一個ACK表示連接徹底釋放,
TCP/IP 協議
TCP/IP 是不同的通信協議的大集合,是一個基于TCP和IP這兩個最初的協議之上的不同的通信協議的大集合,也稱為協議族,
TCP - 傳輸控制協議
- TCP 用于從應用程式到網路的資料傳輸控制,
TCP 負責在資料傳送之前將它們分割為 IP 包,然后在它們到達的時候將它們重組,
IP - 網際協議(Internet Protocol)
- IP 負責計算機之間的通信,
IP 負責在因特網上發送和接收資料包,只是以一種邏輯的方式隔離傳播,真正起到定位作用的是MAC
HTTP - 超文本傳輸協議(Hyper Text Transfer Protocol)
- HTTP 負責 web 服務器與 web 瀏覽器之間的通信,
HTTP 用于從 web 客戶端(瀏覽器)向 web 服務器發送請求,并從 web 服務器向 web 客戶端回傳內容(網頁),
HTTPS - 安全的 HTTP(HTTP Secure)
- HTTPS 負責在 web 服務器和 web 瀏覽器之間的安全通信,
作為有代表性的應用,HTTPS 會用于處理信用卡交易和其他的敏感資料,
SSL - 安全套接字層(Secure Sockets Layer)
- SSL 協議用于為安全資料傳輸加密資料,
FTP - 檔案傳輸協議(File Transfer Protocol)
- FTP 負責計算機之間的檔案傳輸,
ARP - 地址決議協議(Address Resolution Protocol)
- ARP - 用于通過 IP 來查找基于 IP 地址的計算機網卡的硬體地址,
SMTP - 簡易郵件傳輸協議(Simple Mail Transfer Protocol)
SMTP 用于電子郵件的傳輸,
MIME - 多用途因特網郵件擴展(Multi-purpose Internet Mail Extensions)
MIME 協議使 SMTP 有能力通過 TCP/IP 網路傳輸多媒體檔案,包括聲音、視頻和二進制資料,
IMAP - 因特網訊息訪問協議(Internet Message Access Protocol)
IMAP 用于存盤和取回電子郵件,
POP - 郵局協議(Post Office Protocol)
POP 用于從電子郵件服務器向個人電腦下載電子郵件,
NTP - 網路時間協議(Network Time Protocol)
NTP 用于在計算機之間同步時間(鐘),
DHCP - 動態主機配置協議(Dynamic Host Configuration Protocol)
DHCP 用于向網路中的計算機分配動態 IP 地址,
SNMP - 簡單網路管理協議(Simple Network Management Protocol)
SNMP 用于計算機網路的管理,
LDAP - 輕量級的目錄訪問協議(Lightweight Directory Access Protocol)
LDAP 用于從因特網搜集關于用戶和電子郵件地址的資訊,
ICMP - 因特網訊息控制協議(Internet Control Message Protocol)
ICMP 負責網路中的錯誤處理,
RARP - 反向地址轉換協議(Reverse Address Resolution Protocol)
RARP 用于通過 IP 查找基于硬體地址的計算機網卡的 IP 地址,
BOOTP - 自舉協議(Boot Protocol)
BOOTP 用于從網路啟動計算機,
PPTP - 點對點隧道協議(Point to Point Tunneling Protocol)
PPTP 用于私人網路之間的連接(隧道),
TCP/IP的結構
TCP/IP協議分為四層(也就是資料傳輸一次主要經歷以下4個步驟),分別是從上到下為:應用層,傳輸層,Internet,物理層,
如果你給你的同學發送一個訊息的時候,要傳輸資料,這時候你傳輸的資料要遵循TCP/IP協議,電腦會做出以下的反應(這些動作我們是看不到的!)
- 應用層先把你的訊息進行格式轉換,你的訊息是文字,圖片,還是視頻,并進行加密等操作交給傳輸層,(這時的資料單元(單位)是資訊)
- 傳輸層將資料切割成一段一段的,便與傳輸并往里加上一些標記,比如當前應用的埠號等,交給Internet,(這時的資料單元(單位)是資料流)
- Internet開始在將資料進行分組,分組頭部包含目標地址的IP及一些相關資訊交給物理層,(這時的資料單元(單位)是分組)
- 物理層將資料轉換為位元流開始查找主機真實物理地址進行校驗等操作,校驗通過,開始嗖嗖嗖~的住目的地跑,(這時的資料單元(單位)是位元)
- 最后到達目的地后,對方設備會將上面的順序反向的操作一遍,最后呈現出來,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/230726.html
標籤:其他
