網(wǎng)絡(luò)基礎(chǔ)參考: 圖解HTTP
1. 網(wǎng)絡(luò)基礎(chǔ) TCP/IP
1.協(xié)議:
不同的硬件、操作系統(tǒng)之間的通信, 所有的這一切都需要一種規(guī)則考廉。而我們就把這種規(guī)則稱為協(xié)議(protocol)上忍。
2.TCP/IP
像這樣把與互聯(lián)網(wǎng)相關(guān)聯(lián)的協(xié)議集合起來總稱為 TCP/IP(一種定義)。
3.分層
TCP/IP 協(xié)議族里重要的一點(diǎn)就是分層酱吝。TCP/IP 協(xié)議族按層次分別分為以下 4 層:應(yīng)用層也殖、傳輸層、網(wǎng)絡(luò)層 和數(shù)據(jù)鏈路層务热。
應(yīng)用層:
應(yīng)用層決定了向用戶提供應(yīng)用服務(wù)時(shí) 通信的活動(dòng)忆嗜。 比如 FTP(File Transfer Protocol,文件傳輸協(xié)議)和 DNS(Domain Name System陕习,域名系統(tǒng))服務(wù)就是其中兩類霎褐。 還有HTTP協(xié)議也處于該層。
傳輸層:
提供處于網(wǎng)絡(luò)連接中的兩臺(tái)計(jì)算機(jī)之間的 數(shù)據(jù)傳輸该镣。
在傳輸層有兩個(gè)性質(zhì)不同的協(xié)議:TCP(Transmission Control Protocol冻璃,傳輸控制協(xié)議)和 UDP(User Data Protocol,用戶數(shù)據(jù)報(bào)協(xié)議)。
網(wǎng)絡(luò)層:
網(wǎng)絡(luò)層用來處理在網(wǎng)絡(luò)上流動(dòng)的 數(shù)據(jù)包省艳。數(shù)據(jù)包是網(wǎng)絡(luò)傳輸?shù)淖钚?shù)據(jù)單位娘纷。該層規(guī)定了通過怎樣的路徑 (所謂的傳輸路線)到達(dá)對(duì)方計(jì)算機(jī),并把數(shù)據(jù)包傳送給對(duì)方跋炕。
數(shù)據(jù)鏈路層:
用來處理連接網(wǎng)絡(luò)的硬件部分赖晶。包括控制操作系統(tǒng)、硬件的設(shè)備驅(qū)動(dòng)辐烂、NIC(Network Interface Card遏插,網(wǎng)絡(luò) 適配器,即網(wǎng)卡)纠修,及光纖等物理可見部分(還包括連接器等一切傳輸媒介)胳嘲。硬件上的范疇均在鏈路層的 作用范圍之內(nèi)。
利用 TCP/IP 協(xié)議族進(jìn)行網(wǎng)絡(luò)通信時(shí)扣草,會(huì)通過分層順序與對(duì)方進(jìn)行通信了牛。發(fā)送端從應(yīng)用層往下走,接收端則往 應(yīng)用層往上走辰妙。
發(fā)送端在層與層之間傳輸數(shù)據(jù)時(shí)鹰祸,每經(jīng)過一層時(shí)必定會(huì)被打上一個(gè)該層所屬的首部信息,這種把數(shù)據(jù)信息包裝起來的做法稱為封裝(encapsulate)密浑。
2. IP蛙婴,TCP,DNS 等協(xié)議肴掷。
1.負(fù)責(zé)域名解析的DNS協(xié)議:
DNS(Domain Name System)位于應(yīng)用層的協(xié)議敬锐。提供域名到 IP 地址之間的解析服務(wù)。
計(jì)算機(jī)既可以被賦予 IP 地址呆瞻,也可以被賦予主機(jī)名和域名台夺。比如 www.hackr.jp。用戶通常使用主機(jī)名或域名來訪問對(duì)方的計(jì)算機(jī)痴脾,而不是直接通過 IP 地址訪問颤介。
- 確保可靠性的TCP協(xié)議赞赖。
TCP協(xié)議屬于傳輸層滚朵,提供可靠地字節(jié)流服務(wù)。
字節(jié)流服務(wù)(Byte Stream Service):
為了方便傳輸前域,將大塊數(shù)據(jù)分割成以報(bào)文段(segment) 為單位的數(shù)據(jù)包進(jìn)行管理
可靠性:
為提供可靠地服務(wù)辕近,TCP 協(xié)議采用了三次握手(three-way handshaking)策略。用 TCP 協(xié) 議把數(shù)據(jù)包送出去后匿垄,TCP 不會(huì)對(duì)傳送后的情況置之不理移宅,它一定會(huì)向?qū)Ψ酱_認(rèn)是否成功送達(dá)归粉。握手過程中 使用了 TCP 的標(biāo)志(flag) —— SYN(synchronize) 和 ACK(acknowledgement)
- 負(fù)責(zé)傳輸?shù)腎P協(xié)議:
IP(Internet Protocol)網(wǎng)際協(xié)議位于網(wǎng)絡(luò)層。IP 協(xié)議的作用是把各種數(shù)據(jù)包傳送給對(duì)方漏峰。
要保證確實(shí)傳送到對(duì)方那里糠悼,則需要滿足各類條件。其中兩個(gè) 重要的條件是 IP 地址和 MAC 地址(Media Access Control Address)浅乔。
IP 地址指明了節(jié)點(diǎn)被分配到的地址倔喂,MAC 地址是指網(wǎng)卡所屬的固定地址。
3.URI和URL
URI 是 Uniform Resource Identifier 的縮寫靖苇,URI 就是由某個(gè)協(xié)議方案表示的資源的定位標(biāo)識(shí)符席噩。URL 表示資源的地點(diǎn)(互聯(lián)網(wǎng)上所處的位置)。
采用 HTTP 協(xié)議時(shí)顾复,協(xié)議方案就是 http班挖。除此之外,還有 ftp芯砸、mailto、telnet给梅、file 等30種左右假丧。
幾種 URI 例子:
ftp://ftp.is.co.za/rfc/rfc1808.txt
http://www.ietf.org/rfc/rfc2396.txt ldap://[2001:db8::7]/c=GB?objectClass?one
mailto:John.Doe@example.com
news:comp.infosystems.www.servers.unix
tel:+1-816-555-1212
telnet://192.0.2.16:80/
urn:oasis:names:specification:docbook:dtd:xml:4.1.2
URI的格式:
協(xié)議方案名:登錄信息(可選項(xiàng)) 服務(wù)器地址 端口號(hào) 文件路徑 查詢字符串(可選) 片段標(biāo)識(shí)符(可選項(xiàng))