1.OSI國(guó)際一個(gè)認(rèn)證規(guī)范
? 1.1 OSI7層網(wǎng)絡(luò)模型
? ? 1、指定它的意義
? ? 2、要指定一個(gè)國(guó)際通用的標(biāo)準(zhǔn)
? ? ? ? 1.物理層? ? ? 常見的標(biāo)準(zhǔn) RJ-45? RJ-11 買那個(gè)廠商提供RJ-45接口標(biāo)準(zhǔn)的 水晶頭
? 水晶頭? ? ? ? 水晶/塑料/接觸片/鍍金的/純銅/鍍銅/ 網(wǎng)線
? ? 2.數(shù)據(jù)鏈路層? 常見的標(biāo)準(zhǔn)MAC地址 二級(jí)網(wǎng)絡(luò)? 交換機(jī)
3.網(wǎng)絡(luò)層? ? ? 標(biāo)準(zhǔn)IP地址? ? ? ? 三層網(wǎng)絡(luò)? 路由器?
? ? ? ? ? ? ? 公網(wǎng)IP? 相當(dāng)于家庭地址? ? ? ? ? ?
? 私網(wǎng)IP? 局域網(wǎng)內(nèi)
? ? ? ? ? ? 192.168.0.1
192.168.1.1
相當(dāng)于你的房間號(hào)
4.傳輸層? ? ? TCP穩(wěn)定傳輸*****? UDP傳輸?shù)姆绞?/p>
? ? ? ? ? ? ? ssh 服務(wù)
開發(fā)人員(程序員)使用↓
? ? ? ? 5.會(huì)話層? Linux C / Unix? C語(yǔ)言編程? 控制包數(shù)據(jù)
? ? ? ? 6.表示層? 文件的格式 類型(PNG JPEG MPEG)? 數(shù)據(jù)加密
? ? ? ? 7.應(yīng)用層? 操作系統(tǒng)上裝的程序
? ? ? ? ? ? ? ? ? 自己開發(fā)。
? ? ? ? ? ? ? ? ? 標(biāo)準(zhǔn)? HTTP 80? HTTPS 443? FTP 21? SSH22? POP/SMTP 等
? ? OSI? 7層模型中的數(shù)據(jù)傳輸結(jié)構(gòu)
? ? ? 應(yīng)用層? hello? world? 一共網(wǎng)絡(luò)服務(wù)? ? 常見協(xié)議HTTPS FTP? ?
? 表示層? 類型 TEXT JPEG PNG? ? ? 也可以加密? ? ? ?
? 會(huì)話層? 建立SOCKET連接? 編程結(jié)構(gòu) 實(shí)現(xiàn)數(shù)據(jù)的交換? ? ?
? 傳輸層? 報(bào)文消息頭 TCP UDP? 按TCP協(xié)議把數(shù)據(jù)流分段? ? ? ? ? ? ? ? 數(shù)據(jù)段?
? 網(wǎng)絡(luò)層? IP地址? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 數(shù)據(jù)包
? 鏈路層? 交換機(jī)? 以太信息 (MAC和邏輯鏈路)? ? ? ? ? ? ? ? ? ? ? ? 數(shù)據(jù)幀
? 物理層? 網(wǎng)卡? ? 信息轉(zhuǎn)化成二進(jìn)制轉(zhuǎn)化成電信號(hào)? ? ? ? ? ? ? ? ? ? ? 比特流
? 7層模型封包的一個(gè)過程
? 7層解包過程。?
? 物理層? 網(wǎng)接到信息? 網(wǎng)卡 電信號(hào)轉(zhuǎn)化成二進(jìn)制? ? ? ? ? ? ? 比特流
? 鏈路層? 拆出以太信息? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 數(shù)據(jù)幀
? 網(wǎng)絡(luò)層? IP? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 數(shù)據(jù)包
? 傳輸層? TCP/UDP? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 數(shù)據(jù)段
? 會(huì)話層? 建立SOCKET連接? 編程結(jié)構(gòu) 實(shí)現(xiàn)數(shù)據(jù)的交換? ? ? ? ? ?
? ? ? ? ? 表示層? 類型 TEXT JPEG PNG? ? ? ? ? ? ? ? ? ? ? ? ? ?
? 應(yīng)用層? 向操作系統(tǒng)要數(shù)據(jù)? hello? world
TCP與UDP主要區(qū)別
1.TCP連接,UDP不連接。
2.TCP更為穩(wěn)定
3.UDP結(jié)構(gòu)較簡(jiǎn)單
4.TCP用于傳輸大量數(shù)據(jù),UDP少量。
5.DDP流模式與TCP數(shù)據(jù)報(bào)模式。
主要還是使用TCP/IP 五層模型。
? ? (應(yīng)用層+表示層+會(huì)話層)==》應(yīng)用層
傳輸層
網(wǎng)絡(luò)層
數(shù)據(jù)鏈路層
物理層
2.TCP/IP協(xié)議
2.1 IP層的主要作用
? ? ? 1.數(shù)據(jù)傳送
? ? ? 2.尋址 發(fā)現(xiàn)正確目的主機(jī)地址
? ? ? 3.路由選擇? 選擇數(shù)據(jù)在互聯(lián)網(wǎng)上的傳送路徑
? ? ? 4.數(shù)據(jù)報(bào)文的分段? 將數(shù)據(jù)進(jìn)行分段發(fā)送和接受并組裝。
2.2 TCP傳輸控制協(xié)議
? ? ? 最大的特點(diǎn)就是可靠性。
? ? ? 是一種穩(wěn)定的連接,收發(fā)郵件。要求穩(wěn)定的傳輸。
? ? ? 收件箱 100封
通過抓包工具 過濾器 選擇? TCP協(xié)議數(shù)據(jù)包
seq 序號(hào)
ACK 表示確認(rèn)號(hào)有效
SYN 用于發(fā)起一個(gè)TCP鏈接
FIN 用于表示將要斷開的TCP鏈接
TCP? C/S架構(gòu)建立鏈接三次握手的過程
1.客戶端向服務(wù)端發(fā)起TCP鏈接請(qǐng)求。?
seq=x,? ? ? ? ? ? ? ? SYN=1
2.服務(wù)端同意客戶端發(fā)起的TCP請(qǐng)求,同時(shí)向客戶端發(fā)送確認(rèn),此時(shí)需要消耗一個(gè)序列號(hào)。
seq=y? ? [ACK] ack=x+1? SYN=1? ? ?
3.客戶端確認(rèn),并向服務(wù)端發(fā)送數(shù)據(jù)。 若不發(fā)送數(shù)據(jù),則不需要消耗序列號(hào)。
seq=x+1? [ACK] ack=y+1? ? ? ? ? ?
ACK為1表示確認(rèn)號(hào)有效,為0表示報(bào)文中不包含確認(rèn)信息,忽略確認(rèn)號(hào)字段。
確認(rèn)號(hào)指的是期望接受到下一個(gè)字節(jié)的編號(hào)
TCP? C/S架構(gòu)建立鏈接x四次揮手的過程
1.客戶端向服務(wù)端發(fā)起TCP斷開請(qǐng)求。
seq=a? ? ? ? ? ? ? ? ? FIN=1
2.服務(wù)端同意客戶端斷開TCP的請(qǐng)求,同時(shí)向客戶端發(fā)送確認(rèn),此時(shí)需要消耗一個(gè)序列號(hào)。
seq=b? ? [ACK] ack=a+1?
3.關(guān)閉服務(wù)器到客戶端的鏈接,發(fā)送一個(gè)FIN給客戶端
seq=c? ? [ACK] ack=a+1? FIN=1
4.客戶端確認(rèn)斷開,向服務(wù)端回一個(gè)ACK報(bào)文。
seq=a+1? [ACK] ack=c+1?
服務(wù)端收到FIN報(bào)文,要先發(fā)送報(bào)文,等客戶端所有報(bào)文發(fā)完了,才能發(fā)送FIN報(bào)文,
7層模型OSI? 5層模型TCP\IP?
TCP 建立連接 3次握手
TCP 斷開連接 4次揮手 ?