一、簡介
1、傳輸控制協議/網絡互聯協議,是針對Internet開發的一種體系結構和協議標准,相對於OSI體系結構更簡潔。
2、結構類型:分層體系,由下至上分別是網絡接口層、網際層、傳輸層和應用層(四層分法)。
3、TCP/IP協議與OSI模型的對應關系(五層分法)。
二、TCP/IP體系結構
1、應用層:為用戶的應用程序提供接口,使用戶可以訪問網絡。(IE瀏覽器就處於應用層)
HTTP 超文本傳輸協議(瀏覽網頁服務)
TFTP 文件傳輸協議(較快,但是不可靠)
FTP 文件傳輸協議(提供文件上傳,文件下載服務,較慢但是可靠)
NFS 網絡文件系統(Unix和Linux系統之間共享文件)
SMTP 簡單郵件傳輸協議(郵件的發送和轉發)
POP3 接收郵件(由服務器下載到本地)
Talnet (遠程登錄功能(配置交換機、路由器))
SNMP 簡單網絡管理協議(通過網管軟件來管理網絡)
DNS 域名系統,將域名解析為IP地址(將百度的域名轉換為服務器的IP地址)
2、傳輸層:提供端到端的通信(兩台計算機上的軟件間的連接),對信息流具有調節作用。
TCP 傳輸控制協議 面向連接(打電話) 可靠服務
在通信之前要先建立連接 需要同時在線
UDP 用戶數據報協議 非面向連接(發快遞)不可靠 不穩定 但速度更快
傳輸層-TCP數據包格式
源端口(Source Port) 目的端口(Desination Port)
序列號(Sequence Number)【數據包的序號】
確認號(Acknowledgment Number)(序列號+1)【用於指示下一個數據包序號】
報頭的長度(HLEN):以32字節為單位的報頭長度
保留域(Reserved):設置為0
編碼位(Code Bits):用於控制段的傳輸(如會話的建立和終止)
包括:URG、ACK、PSH、RST、SYN、FIN 6個位
SYN(synchronous):請求建立TCP連接
FIN:斷開TCP連接
RST:重置TCP連接
ACK:確認、反饋連接情況
PSH:將數據立刻送到應用層進行處理的命令
URG:判斷緊急指針是否有效的命令
窗口大小(Windows):接收方能夠繼續接收的字節數【控制發送的速度】
校驗和(Checksum):baokuo TCP報頭和數據在內的校驗和【判斷數據傳輸是否出錯】
緊急指針(Urgent Pointer):當前序列號到緊急位置的偏移量
選項(Option):廠商根據需要自定義的內容
MAC地址
數據(Data):上層協議數據
傳輸層-TCP端口號
HTTP:80
端口范圍是:0-6535
端口的使用
TCP的三次握手
順序號和確認號
TCP滑動窗口
UDP數據結構
3、網絡層:IP包的封裝和路徑的選擇
網絡層的協議
IP數據包的封裝,定義IP地址
ICMP錯誤診斷(用ping測試網絡連通性)
ARP將IP地址解析為MAC地址
RARP將MAC地址轉換為IP地址
4、數據鏈路層
MAC地址(網卡編號):48位的二進制數。表示為12位的16進制數。分為兩部分:前24位為廠商編號,后24位為網卡的編號(由專門的機構分配)
5、物理層
總結
H.248 為電話語音協議
數據封裝
課后練習
1、TCP/IP協議族中每一層的功能是什么,包括哪些協議?
物理層:在物理傳輸媒體上傳送比特流
數據鏈路層:為上層提供可靠的數據幀的傳輸
網絡層:IP包的封裝和路徑選擇
傳輸層:建立端到端的連接
應用層:提供應用程序網絡接口
2、TCP協議和UDP協議的區別有哪些?
TCP 傳輸控制協議 面向連接(打電話) 可靠服務
在通信之前要先建立連接 需要同時在線
UDP 用戶數據報協議 非面向連接(發快遞)不可靠 不穩定
但速度更快
3、什么是端口號,其范圍是什么?常用的端口號有哪些?
端口號:指示了正在使用的上層協議
范圍是:0-6535
常用的端口號:
FTP——21 文件傳輸協議(慢但是穩)
TELNET——23 遠程登錄協議
SMTP——25 簡單郵件傳輸協議
DNS——53 域名系統協議
TFTP——69 文件傳輸協議(快而不穩)
HTTP——80 超文本傳輸協議
SNMP——161 簡單網絡管理協議
RIP——520 內部網關協議
4、MAC地址有多少位,分為哪幾部分?
MAC地址(網卡編號):48位的二進制數。表示為12位的16進制數。分為兩部分:前24位為廠商編號,后24位為網卡的編號(由專門的機構分配)
5、TCP/IP模型中每一層的數據單元是什么?
物理層——比特流
數據鏈路層——幀
網絡層——數據包
傳輸層——數據報文
數據發送時,由上層向下層封裝。
四層,協議層傳輸的是數據報文,主要是協議格式。
三層,網絡層傳輸的是數據包,包含數據報文,並且增加傳輸使用的IP地址等三層信息
二層,數據鏈路層傳輸的是數據幀,包含數據包,並且增加相應MAC地址與二層信息
數據接收的時候,下層向上層解封裝。
6、TCP報文的編碼位包括哪些值?
源端口(Source Port) 目的端口(Desination Port)
序列號(Sequence Number)【數據包的序號】
確認號(Acknowledgment Number)(序列號+1)【用於指示下一個數據包序號】
報頭的長度(HLEN):以32字節為單位的報頭長度
保留域(Reserved):設置為0
編碼位(Code Bits):用於控制段的傳輸(如會話的建立和終止)
包括:URG、ACK、PSH、RST、SYN、FIN 6個位
SYN(synchronous):請求建立TCP連接
FIN:斷開TCP連接
RST:重置TCP連接
ACK:確認、反饋連接情況
PSH:將數據立刻送到應用層進行處理的命令
URG:判斷緊急指針是否有效的命令
窗口大小(Windows):接收方能夠繼續接收的字節數【控制發送的速度】
校驗和(Checksum):baokuo TCP報頭和數據在內的校驗和【判斷數據傳輸是否出錯】
緊急指針(Urgent Pointer):當前序列號到緊急位置的偏移量
選項(Option):廠商根據需要自定義的內容
MAC地址
數據(Data):上層協議數據