

應(yīng)用層
例如郵件,微信等,會在發(fā)送郵件時加入標(biāo)簽信息:內(nèi)容+收件人
表示層
網(wǎng)絡(luò)數(shù)據(jù)格式的轉(zhuǎn)換,將計算機(jī)使用的格式轉(zhuǎn)換為網(wǎng)絡(luò)通用的通信格式,也會增加首部信息:如utf-8等數(shù)據(jù)格式
會話層
會話層用來決定需要建立多少次網(wǎng)絡(luò)鏈接,例如五封郵件可建立五次,也可建立一次連續(xù)發(fā)松五封郵件
傳輸層
負(fù)責(zé)建立網(wǎng)絡(luò)鏈接和斷開鏈接,tcp鏈接會保證數(shù)據(jù)的觸達(dá)性,例如主機(jī)A發(fā)送的主機(jī)B“早上好”,如果在發(fā)送完“早上”后數(shù)據(jù)被破壞,那么主機(jī)B會告訴A沒有收到完整的數(shù)據(jù),A會再次向B發(fā)送剩下的數(shù)據(jù)。知道確認(rèn)發(fā)送接收到完整的數(shù)據(jù)后才會關(guān)閉鏈接
網(wǎng)絡(luò)層
網(wǎng)絡(luò)層實際是傳輸層的一部分,實在網(wǎng)絡(luò)鏈接建立后進(jìn)行數(shù)據(jù)傳輸?shù)囊粚?,網(wǎng)絡(luò)層需要跟數(shù)據(jù)鏈路層配合來保證數(shù)據(jù)傳輸?shù)竭_(dá)的可靠性
數(shù)據(jù)鏈路層和物理層
數(shù)據(jù)傳輸實際是通過物理的傳輸介質(zhì)實現(xiàn)的,數(shù)據(jù)鏈路層就是對這些互聯(lián)的傳輸介質(zhì)間通信數(shù)據(jù)進(jìn)行處理,
物理層中,將數(shù)據(jù)0,1轉(zhuǎn)換為電壓和脈沖光傳輸給物理的傳輸介質(zhì),而相互直連的物理介質(zhì)間也通過地址進(jìn)行傳輸,這種被稱作MAC地址Media Access Controll,這一層會將MAC地址信息加入到網(wǎng)絡(luò)層傳輸過來的首部中,發(fā)送到網(wǎng)絡(luò)。網(wǎng)絡(luò)層與數(shù)據(jù)鏈路層都是基于目標(biāo)地址發(fā)送數(shù)據(jù),網(wǎng)絡(luò)負(fù)責(zé)將整個數(shù)據(jù)發(fā)送到最終目標(biāo)地址,數(shù)據(jù)鏈路只負(fù)責(zé)一個分段內(nèi)的,例如從一個路由到另外一個路由的數(shù)據(jù)傳輸。
以太網(wǎng)(Ethernet)是一種計算機(jī)局域網(wǎng)技術(shù)。IEEE組織的IEEE 802.3標(biāo)準(zhǔn)制定了以太網(wǎng)的技術(shù)標(biāo)準(zhǔn),它規(guī)定了包括物理層的連線、電子信號和介質(zhì)訪問層協(xié)議的內(nèi)容
有鏈接傳輸方式
例如:ATM,幀中鏈,TCP等
無鏈接傳輸方式
例如:以太網(wǎng),IP,UDP協(xié)議
電路交換:獨占電路只能兩個用戶之間傳輸使用
分組交換:將數(shù)據(jù)分為多個包,每個包帶有發(fā)送端和接受端的信息,這樣實現(xiàn)多個用戶使用一條電路的功能。
網(wǎng)卡(NIC)
中繼器:信號放大
網(wǎng)橋/2層交換機(jī):osi第二層數(shù)據(jù)鏈路層的通過物理地址(MAC)進(jìn)行網(wǎng)絡(luò)處理,以太網(wǎng)常用的交換集線器(HUB)也是一種網(wǎng)橋,只有中繼器的HUB叫做集線器
路由器/3層交換機(jī):osi第三層網(wǎng)絡(luò)層,根據(jù)ip鏈接網(wǎng)絡(luò)
4-7層交換機(jī)(負(fù)載均衡器)
網(wǎng)關(guān):負(fù)責(zé)將傳輸層到應(yīng)用層數(shù)據(jù)進(jìn)行交換和轉(zhuǎn)發(fā)的設(shè)備
TCP(Transmission Control Protocol) / IP(Internet Protocol)

TCP是一種面向有鏈接的傳輸層協(xié)議,可以保證兩端通信可達(dá),保證傳輸中的丟包順序錯亂等問題,還可有效利用帶寬緩解網(wǎng)絡(luò)擁堵
UDP無鏈接傳輸協(xié)議,不關(guān)注對端是否收到數(shù)據(jù)
FTP文件傳輸協(xié)議
TELNET和SSH遠(yuǎn)程登錄
每個分層中都會為數(shù)據(jù)添加一個首部信息包含了目標(biāo)地址和協(xié)議相關(guān)信息等。包最后追加了以太網(wǎng)包尾(Ethernet trailer)

TCP/UDP則會使用端口號座位識別兩端主機(jī)的地址

數(shù)據(jù)包接收處理:
主機(jī)接收到以太網(wǎng)包后找到包首部的MAC地址判斷是否是發(fā)給自己的,不是的話丟棄數(shù)據(jù)。如果是則判斷數(shù)據(jù)類型是否是IP是交給IP子程序,如果是其他類型找到相應(yīng)的類型處理程序,找不到則丟棄。
IP模塊處理:判斷IP地址是否與自己的匹配,再查找上層是TCP則交給TCP模塊處理,對于有路由的情況接收端地址往往不是自己,此時需要借助路由控制表查找應(yīng)該送達(dá)的主機(jī)
TCP處理:計算一下校驗和,判斷數(shù)據(jù)是否被損壞,校驗是否是按序號發(fā)送的最后校驗端口號確認(rèn)具體應(yīng)用程序,數(shù)據(jù)接收完畢后發(fā)送“確認(rèn)回執(zhí)”給發(fā)送端,如果回執(zhí)沒達(dá)到發(fā)送端那么發(fā)送端會認(rèn)為數(shù)據(jù)沒有接收到會一直發(fā)送。

ip地址分為網(wǎng)絡(luò)地址和主機(jī)地址兩部分:192.168.128.10/24,24表示從第一位到多少位屬于網(wǎng)絡(luò)地址,此例表示192.168.128屬于網(wǎng)絡(luò)地址
A類:0.0.0.0~127.0.0.0
B類:128.0.0.0~191.255.0.0
C類:192.168.0.0~239.255.255.0
D類:224.0.0.0~239.255.255.255
廣播地址:相同鏈路中主機(jī)地址設(shè)置成1則為廣播地址,172.20.1.0轉(zhuǎn)換為172.20.255.255
子網(wǎng)掩碼:將ip地址的網(wǎng)絡(luò)地址全部設(shè)置為1,主機(jī)設(shè)置為0,用來區(qū)分A,B類IP類型

DNS: 域名解析

DHCP 動態(tài)地址配置協(xié)議,自動配置ip
ARP
數(shù)據(jù)鏈路層中網(wǎng)絡(luò)設(shè)備需要MAC地址,獲取MAC地址的方式,主機(jī)A向主機(jī)B發(fā)送數(shù)據(jù),但是沒有對方MAC地址,只有ip地址,則發(fā)送ARP廣播將主機(jī)B的ip地址廣播出去,主機(jī)B接收到廣播發(fā)現(xiàn)ip地址與自己的一致,則將MAC地址返回給主機(jī)A。

NAT
Network Address Translator
私有地址轉(zhuǎn)換成全局地址的技術(shù)
通訊處理
unix系統(tǒng)中http服務(wù)的程序是httpd,ssh是sshd,unix不需要逐個啟動這些程序,而是啟動一個超級守護(hù)進(jìn)程inetd(互聯(lián)網(wǎng)守護(hù)進(jìn)程),該進(jìn)程接收到互聯(lián)網(wǎng)請求后會fork新的進(jìn)程并轉(zhuǎn)換成httpd或sshd,通過端口號可判斷80是http,22是sshd
套接字 Socket

三次握手和四次揮手

tcp以斷為單位發(fā)送數(shù)據(jù),mss(最大消息長度),tcp會在三次握手的時候在tcp首部加入mss信息
tcp首部信息
確認(rèn)應(yīng)答號:指下一次應(yīng)該收到數(shù)據(jù)的序列號。

控制位:

窗口大小WindowSize:打開多少個窗口,之前只有一個窗口時,只能1-100-200的發(fā)送,窗口相當(dāng)于并發(fā)發(fā)送排列好的數(shù)據(jù)
TELNET
telnet利用tcp的一條鏈接,通過這一條鏈接向主機(jī)直接發(fā)送命令操作,telnetd守護(hù)進(jìn)程。
SSH
加密的遠(yuǎn)程登陸系統(tǒng)
ssh服務(wù)器對命令,密碼等做加密,保證安全
FTP
FTP文件傳輸協(xié)議,使用兩個tcp鏈接:一個用來控制,一個用來傳輸
控制鏈接登陸用戶名密碼驗證,發(fā)送文件的名稱,發(fā)送方式等,通過ASCII碼發(fā)送請求和應(yīng)答,使用tcp21端口,在tcp21端口進(jìn)行文件put,get,list操作時,會創(chuàng)建第二個tcp鏈接用于文件傳輸
SMTP郵件協(xié)議 TCP25端口
現(xiàn)在通過DNS管理電子郵件的發(fā)送地址,
MIME,郵件格式信息,多媒體使用
POP服務(wù)器,