OSI七層模型
七層模型柔纵,也稱OSI(Open System Interconnection)參考模型粹污。用于計算機或通信系統(tǒng)間互聯(lián)的標準體系。一般稱為OSI參考模型或七層模型首量。它從低到高分別是:物理層、數(shù)據(jù)鏈路層进苍、網(wǎng)絡(luò)層加缘、傳輸層、會話層觉啊、表示層和應(yīng)用層拣宏。
應(yīng)用層(Application) 提供網(wǎng)絡(luò)與用戶應(yīng)用軟件之間的接口服務(wù)
表示層(Presentation) 提供格式化的表示和轉(zhuǎn)換數(shù)據(jù)服務(wù),如加密和壓縮
會話層(Session) 提供包括訪問驗證和會話管理在內(nèi)的建立和維護應(yīng)用之間通信的機制
傳輸層(Transimission) 提供建立杠人、維護和取消傳輸連接功能勋乾,負責可靠地傳輸數(shù)據(jù)(PC)
網(wǎng)絡(luò)層(Network) 處理網(wǎng)絡(luò)間路由,確保數(shù)據(jù)及時傳送(路由器)
數(shù)據(jù)鏈路層(DataLink) 負責無錯傳輸數(shù)據(jù)嗡善,確認幀辑莫、發(fā)錯重傳等(交換機)
物理層(Physics) 提供機械、電氣罩引、功能和過程特性(網(wǎng)卡各吨、網(wǎng)線、雙絞線袁铐、同軸電纜揭蜒、中繼器)
TCP/IP參考模型
TCP/IP是傳輸控制協(xié)議/網(wǎng)絡(luò)互聯(lián)協(xié)議的簡稱
早期的TCP/IP模型是一個四層結(jié)構(gòu),從下往上依次是網(wǎng)絡(luò)接口層剔桨、互聯(lián)網(wǎng)層屉更、傳輸層和應(yīng)用層
后來在使用過程中,借鑒OSI七層參考模型洒缀,將網(wǎng)絡(luò)接口層劃分為了物理層和數(shù)據(jù)鏈路層瑰谜,形成五層結(jié)構(gòu)
常用協(xié)議
TCP/IP協(xié)議被稱為傳輸控制協(xié)議/互聯(lián)網(wǎng)協(xié)議,又稱網(wǎng)絡(luò)通訊協(xié)議
是由網(wǎng)絡(luò)層的IP協(xié)議和傳輸層的TCP協(xié)議組成,是一個很大的協(xié)議集合
物理層和數(shù)據(jù)鏈路層沒有定義任何特定協(xié)議似舵,支持所有的標準和專用的協(xié)議
網(wǎng)絡(luò)層定義了網(wǎng)絡(luò)互聯(lián)也就是IP協(xié)議
傳輸層定義了TCP(傳輸控制協(xié)議)和UDP(用戶數(shù)據(jù)報)協(xié)議
應(yīng)用層定義了HTTP(超文本傳輸協(xié)議)脚猾、FTP(文件傳輸協(xié)議)、DNS(域名系統(tǒng))等協(xié)議
物理層
物理層砚哗, 為數(shù)據(jù)端設(shè)備提供傳送數(shù)據(jù)的通路龙助。可以雙向通信蛛芥,為數(shù)據(jù)傳輸提供可靠的環(huán)境提鸟。對應(yīng)我們的網(wǎng)線、光纖(物理設(shè)備)仅淑。
全雙工:雙向通道称勋,相互通信⊙木梗互不干擾赡鲜。比如:電話。
單工:單向車道庐船,只能一方通信银酬。比如:廣播。
半雙工:同一時間點只能一方通信筐钟。比如:對講機揩瞪。
數(shù)據(jù)鏈路層
數(shù)據(jù)鏈路層們于物理層和互聯(lián)網(wǎng)層之間,用來向網(wǎng)絡(luò)層提供數(shù)據(jù)篓冲,就是把源計算機網(wǎng)絡(luò)層傳過來的信息傳遞給目標主機李破。對應(yīng)我們的網(wǎng)卡,處理的是網(wǎng)卡到網(wǎng)卡的連接壹将。數(shù)據(jù)到這一層包裝加上了mac頭嗤攻,這一層的數(shù)據(jù)叫數(shù)據(jù)幀(Frame)。
網(wǎng)絡(luò)層
位于傳輸層和網(wǎng)絡(luò)接口層之間,用于把數(shù)據(jù)從源主機經(jīng)過若干個中間節(jié)點傳送到目標主機,并向傳輸層提供最基礎(chǔ)的數(shù)據(jù)傳輸服務(wù),它要提供路由和IP選址的工作瞭恰。數(shù)據(jù)到達網(wǎng)絡(luò)層屯曹,會加IP頭,這層的數(shù)據(jù)叫數(shù)據(jù)包(Packet)惊畏。
選址:交換機是靠MAC來尋址的恶耽,而因為MAC地址是無層次的,所以要靠IP地址來確認計算機的位置,這就是選址。
路由:在能夠選擇的多條道路之間選擇一條最短的路徑就是路由的工作颜启。
IP:在網(wǎng)絡(luò)中偷俭,每臺計算機都有一個唯一的地址,方便別人找到它缰盏,這個地址稱為IP地址涌萤。
?傳輸層
傳輸層位于應(yīng)用層和網(wǎng)絡(luò)接口層之間淹遵。提供了一種端到端的連接。傳輸層的協(xié)議分為TCP(Transimision Control Protocal)和UDP(User Datagram Protocal)负溪。使用TCP還是UDP取決于對可靠性的要求透揣。數(shù)據(jù)到達這層會加tcp/udp頭,這層數(shù)據(jù)叫報文段(Segment)。
TCP
傳輸控制協(xié)議
可靠的川抡、面向連接的協(xié)議
傳輸效率低
UDP
用戶數(shù)據(jù)報協(xié)議
不可靠的辐真、無連接的服務(wù)
傳輸效率高
應(yīng)用于QQ、視頻軟件崖堤、TFTP 簡單文件傳輸協(xié)議(短信)
TCP3次握手和4次斷開
TCP是面向連接的協(xié)議侍咱,它在源點和終點之間建立虛擬連接,而不是物理連接
在數(shù)據(jù)通信之前密幔,發(fā)送端與接收端要先建立連接楔脯,等數(shù)據(jù)發(fā)送結(jié)束后,雙方再斷開連接
TCP連接的每一方都是由一個IP地址和一個端口組成
三次握手
第一次握手主機A通過一個標識為SYN標識位的數(shù)據(jù)段發(fā)送給主機B請求連接胯甩,通過該數(shù)據(jù)段告訴主機B希望建立連接昧廷,需要B應(yīng)答,并告訴主機B傳輸?shù)钠鹗夹蛄刑?/p>
? ? ? ?SYN:1? ? ?seq=x
第二次握手是主機B用一個確認應(yīng)答ACK和同步序列號SYNC標志位的數(shù)據(jù)段來響應(yīng)主機A偎箫,一是發(fā)送ACK告訴主機A收到了數(shù)據(jù)段麸粮,二是通知主機A從哪個序列號做標記。
? ? ?SYN:1? ?seq=y? ?ACK=x+1
第三次握手是主機A確認收到了主機B的數(shù)據(jù)段并可以開始傳輸實際數(shù)據(jù).
ACK=y+1
抓包
四次斷開
主機A發(fā)送FIN控制位發(fā)出斷開連接的請求
主機B進行響應(yīng)镜廉,確認收到斷開連接請求
主機B提出反方向的關(guān)閉要求
主機A確認收到的主機B的關(guān)閉連接請求
tcp三次握手四次斷開正好符合的是tcp可靠的特點,多次確認愚战。四次斷開娇唯,有可能是某一方還未發(fā)送完數(shù)據(jù)所以需要四次斷開。
應(yīng)用層
網(wǎng)絡(luò)服務(wù)與最終用戶的一個接口寂玲。通過應(yīng)用層發(fā)送塔插、解封裝數(shù)據(jù)。
應(yīng)用層常見協(xié)議
HTTP 超文件傳輸協(xié)議
FTP 文件傳輸協(xié)議
SMTP(發(fā)送郵件)和POP3(接收郵件)