前端需要掌握的計(jì)算機(jī)網(wǎng)絡(luò)知識(shí)

計(jì)算機(jī)網(wǎng)絡(luò)知識(shí)

  • DNS

即域名系統(tǒng)魁淳。因特網(wǎng)上作為域名和IP地址相互映射的一個(gè)分布式數(shù)據(jù)庫(kù),能夠使用戶更方便的訪問(wèn)互聯(lián)網(wǎng),而不用去記住能夠被機(jī)器直接讀取的IP數(shù)串虱肄。通過(guò)主機(jī)名,最終得到該主機(jī)名對(duì)應(yīng)的IP地址的過(guò)程叫做域名解析(或主機(jī)名解析)交煞。

1咏窿、瀏覽器中輸入www.qq.com域名,操作系統(tǒng)會(huì)先檢查本地的hosts文件是否有這個(gè)網(wǎng)址映射關(guān)系素征,如果有集嵌,就先調(diào)用這個(gè)IP地址映射,完成域名解析御毅。 
2根欧、如果hosts里沒(méi)有這個(gè)域名的映射,則查找本地DNS解析器緩存端蛆,是否有這個(gè)網(wǎng)址映射關(guān)系凤粗,如果有,直接返回今豆,完成域名解析嫌拣。 
3、如果兩者都沒(méi)有相應(yīng)的網(wǎng)址映射關(guān)系呆躲,首先會(huì)找TCP/IP參數(shù)中設(shè)置的首選DNS服務(wù)器异逐,在此我們叫它本地DNS服務(wù)器,此服務(wù)器收到查詢時(shí)歼秽,如果要查詢的域名应役,包含在本地配置區(qū)域資源中,則返回解析結(jié)果給客戶機(jī)燥筷,完成域名解析箩祥,此解析具有權(quán)威性。 
4肆氓、如果要查詢的域名袍祖,不由本地DNS服務(wù)器區(qū)域解析,但該服務(wù)器已緩存了此網(wǎng)址映射關(guān)系谢揪,則調(diào)用這個(gè)IP地址映射蕉陋,完成域名解析捐凭,此解析不具有權(quán)威性。 
5凳鬓、如果本地DNS服務(wù)器本地區(qū)域文件與緩存解析都失效茁肠,則根據(jù)本地DNS服務(wù)器的設(shè)置(是否設(shè)置轉(zhuǎn)發(fā)器)進(jìn)行查詢,如果未用轉(zhuǎn)發(fā)模式缩举,本地DNS就把請(qǐng)求發(fā)至13臺(tái)根DNS垦梆,根DNS服務(wù)器收到請(qǐng)求后會(huì)判斷這個(gè)域名(.com)是誰(shuí)來(lái)授權(quán)管理,并會(huì)返回一個(gè)負(fù)責(zé)該頂級(jí)域名服務(wù)器的一個(gè)IP仅孩。本地DNS服務(wù)器收到IP信息后托猩,將會(huì)聯(lián)系負(fù)責(zé).com域的這臺(tái)服務(wù)器。這臺(tái)負(fù)責(zé).com域的服務(wù)器收到請(qǐng)求后辽慕,如果自己無(wú)法解析京腥,它就會(huì)找一個(gè)管理.com域的下一級(jí)DNS服務(wù)器地址(qq.com)給本地DNS服務(wù)器。當(dāng)本地DNS服務(wù)器收到這個(gè)地址后溅蛉,就會(huì)找qq.com域服務(wù)器公浪,重復(fù)上面的動(dòng)作,進(jìn)行查詢船侧,直至找到www.qq.com主機(jī)因悲。 
6、如果用的是轉(zhuǎn)發(fā)模式勺爱,此DNS服務(wù)器就會(huì)把請(qǐng)求轉(zhuǎn)發(fā)至上一級(jí)DNS服務(wù)器晃琳,由上一級(jí)服務(wù)器進(jìn)行解析,上一級(jí)服務(wù)器如果不能解析琐鲁,或找根DNS或把轉(zhuǎn)請(qǐng)求轉(zhuǎn)至上上級(jí)卫旱,以此循環(huán)。不管是本地DNS服務(wù)器用是是轉(zhuǎn)發(fā)围段,還是根提示顾翼,最后都是把結(jié)果返回給本地DNS服務(wù)器,由此DNS服務(wù)器再返回給客戶機(jī)奈泪。 
  • ARP

在同一個(gè)網(wǎng)絡(luò)(無(wú)特別說(shuō)明适贸,均指以太網(wǎng)絡(luò))中進(jìn)行通信的主機(jī),必須要擁有目標(biāo)主機(jī)的MAC地址才能夠正確地將數(shù)據(jù)發(fā)送給目標(biāo)主機(jī)涝桅,那么如何知道目標(biāo)主機(jī)的MAC地址呢拜姿?可以通過(guò)ARP協(xié)議。ARP協(xié)議就是用來(lái)獲取目標(biāo)IP地址所對(duì)應(yīng)的MAC地址的冯遂,也就是說(shuō)蕊肥,ARP協(xié)議可以動(dòng)態(tài)地在三層IP地址和二層MAC地址之間建立一種映射關(guān)系。
ARP是一個(gè)網(wǎng)絡(luò)層的協(xié)議蛤肌,這是出于它為網(wǎng)絡(luò)層的IP協(xié)議提供服務(wù)而考慮的壁却。但實(shí)際上批狱,由于ARP協(xié)議用以解析出IP地址(邏輯地址)所對(duì)應(yīng)數(shù)據(jù)鏈路層中的地址(物理地址/硬件地址),所以把其劃分在數(shù)據(jù)鏈路層也是沒(méi)有問(wèn)題的展东,這并沒(méi)有嚴(yán)格的定義赔硫。

  • RIP

路由選擇協(xié)議,:確定數(shù)據(jù)報(bào)在源與目的地之間采用的路徑

  • HTPP請(qǐng)求

HTTP(HyperText Transfer Protocol盐肃,超文本傳輸協(xié)議)卦停,即計(jì)算機(jī)通過(guò)網(wǎng)絡(luò)通信的規(guī)則。
HTTP通信機(jī)制是在一次完整的HTTP通信過(guò)程中恼蓬,Web瀏覽器與Web服務(wù)器之間將完成下列7個(gè)步驟:

1) 建立TCP連接
在HTTP工作開始之前,Web瀏覽器首先要通過(guò)網(wǎng)絡(luò)與Web服務(wù)器建立TCP連接僵芹,該協(xié)議與IP協(xié)議共同構(gòu)建Internet处硬,即著名的TCP/IP協(xié)議族,因此Internet又被稱作TCP/IP網(wǎng)絡(luò)拇派。
HTTP是比TCP更高層次的應(yīng)用層協(xié)議荷辕,根據(jù)規(guī)則,低層協(xié)議建立之后才能進(jìn)行更層協(xié)議的連接件豌,因此疮方,首先要建立TCP連接
一般TCP連接的端口號(hào)是80
2) Web瀏覽器向Web服務(wù)器發(fā)送請(qǐng)求命令
一旦建立了TCP連接,Web瀏覽器就會(huì)向Web服務(wù)器發(fā)送請(qǐng)求命令
例如:GET/sample/hello.jsp HTTP/1.1
3) Web瀏覽器發(fā)送請(qǐng)求頭信息
瀏覽器發(fā)送其請(qǐng)求命令之后茧彤,還要以頭信息的形式向Web服務(wù)器發(fā)送一些別的信息骡显,之后瀏覽器發(fā)送了一空白行來(lái)通知服務(wù)器,它已經(jīng)結(jié)束了該頭信息的發(fā)送曾掂。
4) Web服務(wù)器應(yīng)答
客戶機(jī)向服務(wù)器發(fā)出請(qǐng)求后惫谤,服務(wù)器會(huì)向客戶機(jī)回送應(yīng)答,
HTTP/1.1 200 OK
應(yīng)答的第一部分是協(xié)議的版本號(hào)和應(yīng)答狀態(tài)碼
5) Web服務(wù)器發(fā)送應(yīng)答頭信息
服務(wù)器隨同應(yīng)答向用戶發(fā)送關(guān)于它自己的數(shù)據(jù)及被請(qǐng)求的文檔珠洗。
6) Web服務(wù)器向?yàn)g覽器發(fā)送數(shù)據(jù)
以Content-Type應(yīng)答頭信息所描述的格式發(fā)送用戶所請(qǐng)求的實(shí)際數(shù)據(jù)
7) Web服務(wù)器關(guān)閉TCP連接
一般情況下溜歪,一旦Web服務(wù)器向?yàn)g覽器發(fā)送了請(qǐng)求數(shù)據(jù),它就要關(guān)閉TCP連接许蓖,然后如果瀏覽器或者服務(wù)器在其頭信息加入了這行代碼
Connection:keep-alive
TCP連接在發(fā)送后將仍然保持打開狀態(tài)蝴猪,于是,瀏覽器可以繼續(xù)通過(guò)相同的連接發(fā)送請(qǐng)求膊爪。
保持連接節(jié)省了為每個(gè)請(qǐng)求建立新連接所需的時(shí)間自阱,還節(jié)約了網(wǎng)絡(luò)帶寬。

請(qǐng)求報(bào)文格式:請(qǐng)求方法URI協(xié)議/版本米酬、 請(qǐng)求頭(Request Header)动壤、 請(qǐng)求正文

GET/sample.jspHTTP/1.1
Accept:image/gif.image/jpeg,*/*
Accept-Language:zh-cn
Connection:Keep-Alive
Host:localhost
User-Agent:Mozila/4.0(compatible;MSIE5.01;Window NT5.0)
Accept-Encoding:gzip,deflate
username=jinqiao&password=1234

響應(yīng)報(bào)文格式:協(xié)議狀態(tài)版本代碼描述、響應(yīng)頭(Response Header)淮逻、響應(yīng)正文

  • get方法與post方法對(duì)比
    GET方法
    GET方法是默認(rèn)的HTTP請(qǐng)求方法琼懊,我們?nèi)粘S肎ET方法來(lái)提交表單數(shù)據(jù)阁簸,然而用GET方法提交的表單數(shù)據(jù)只經(jīng)過(guò)了簡(jiǎn)單的編碼,同時(shí)它將作為URL的一部分向Web服務(wù)器發(fā)送哼丈,因此启妹,如果使用GET方法來(lái)提交表單數(shù)據(jù)就存在著安全隱患上。例如
Http://127.0.0.1/login.jsp?Name=zhangsan&Age=30&Submit=%cc%E+%BD%BB

從上面的URL請(qǐng)求中醉旦,很容易就可以辯認(rèn)出表單提交的內(nèi)容饶米。另外由于GET方法提交的數(shù)據(jù)是作為URL請(qǐng)求的一部分所以提交的數(shù)據(jù)量不能太大
POST方法
POST方法是GET方法的一個(gè)替代方法,它主要是向Web服務(wù)器提交表單數(shù)據(jù)车胡,尤其是大批量的數(shù)據(jù)檬输。POST方法克服了GET方法的一些缺點(diǎn)。通過(guò)POST方法提交表單數(shù)據(jù)時(shí)匈棘,數(shù)據(jù)不是作為URL請(qǐng)求的一部分而是作為標(biāo)準(zhǔn)數(shù)據(jù)傳送給Web服務(wù)器丧慈,這就克服了GET方法中的信息無(wú)法保密和數(shù)據(jù)量太小的缺點(diǎn)。因此主卫,出于安全的考慮以及對(duì)用戶隱私的尊重逃默,通常表單提交時(shí)采用POST方法。

  • cookie

HTTP Cookie(也叫Web cookie或者瀏覽器Cookie)是服務(wù)器發(fā)送到用戶瀏覽器并保存在瀏覽器上的一塊數(shù)據(jù)簇搅,它會(huì)在瀏覽器下一次發(fā)起請(qǐng)求時(shí)被攜帶并發(fā)送到服務(wù)器上完域。比較經(jīng)典的,可以它用來(lái)確定兩次請(qǐng)求是否來(lái)自于同一個(gè)瀏覽器瘩将,從而能夠確認(rèn)和保持用戶的登錄狀態(tài)吟税。Cookie的使用使得基于無(wú)狀態(tài)的HTTP協(xié)議上記錄穩(wěn)定的狀態(tài)信息成為了可能。
cookie的屬性
key-value:cookie通過(guò)key-value的方式存儲(chǔ)屬性名和值姿现。
domain:規(guī)定了需要發(fā)送Cookie的主機(jī)名乌妙。如果沒(méi)有指定,默認(rèn)為當(dāng)前的文檔地址上的主機(jī)名(但是不包含子域名)建钥。如果指定了Domain藤韵,則一般包含子域名。
path:Path指令表明需要發(fā)送Cookie的URL路徑熊经。字符%x2F (即"/")用做文件夾分隔符泽艘,子文件夾也會(huì)被匹配到。
hostOnly:布爾型的值镐依,true表示cookie只能匹配domain中指定好的請(qǐng)求路徑匹涮。反之則不。
httpOnly:HTTP-only類型的Cookie不能使用Javascript通過(guò)Document.cookie
屬性來(lái)訪問(wèn)槐壳,從而能夠在一定程度上阻止跨域腳本攻擊(XSS)然低。
secure:布爾型的值,true表示cookie只在安全的情況下有效。一般是在https情況下雳攘。即在使用SLL和HTTPS協(xié)議向服務(wù)器發(fā)起請(qǐng)求時(shí)带兜,才能確保Cookie被安全地發(fā)送到服務(wù)器。
expirationDate:指明cookie的過(guò)期的時(shí)間吨灭。
Max-Age:指明cookie的有效期刚照。
session:布爾值,true表示cookie是session cookie喧兄。false的話表示持續(xù)的cookie且不過(guò)期无畔。
storeId:代表存放cookie的id的字符串。

  • HTTP與HTTPS

HTTPS(全稱:Hypertext Transfer Protocol over Secure Socket Layer)吠冤,是以安全為目標(biāo)的HTTP通道浑彰,簡(jiǎn)單講是HTTP的安全版。即HTTP下加入SSL層拯辙,HTTPS的安全基礎(chǔ)是SSL郭变,因此加密的詳細(xì)內(nèi)容就需要SSL。
https協(xié)議需要到ca申請(qǐng)證書薄风,一般免費(fèi)證書很少,需要交費(fèi)拍嵌。http是超文本傳輸協(xié)議遭赂,信息是明文傳輸,https 則是具有安全性的ssl加密傳輸協(xié)議http和https使用的是完全不同的連接方式用的端口也不一樣,前者是80,后者是443横辆。
客戶端產(chǎn)生一個(gè)對(duì)稱的密鑰,通過(guò)server 的證書來(lái)交換密鑰. 一般意義上的握手過(guò)程.ii. 加下來(lái)所有的信息往來(lái)就都是加密的. 第三方即使截獲,也沒(méi)有任何意義.因?yàn)樗麤](méi)有密鑰

  • HTTP狀態(tài)碼

  • HTTP請(qǐng)求方法method

  • URL撇他、URN與URI
    URI:uniform resource identifier,統(tǒng)一資源標(biāo)識(shí)符,用于唯一的標(biāo)識(shí)一個(gè)資源狈蚤。
    URL:uniform resource locator困肩,統(tǒng)一資源定位器,它是一種具體的URI脆侮,即URL可以用來(lái)標(biāo)識(shí)一個(gè)資源锌畸,而且還指明了如何locate這個(gè)資源
    URN:uniform resource name,統(tǒng)一資源命名靖避,是通過(guò)名字來(lái)標(biāo)識(shí)資源潭枣。
URI是以一種抽象的,高層次概念定義統(tǒng)一資源標(biāo)識(shí)幻捏,而URL和URN則是具體的資源標(biāo)識(shí)的方式盆犁。URL和URN都是一種URI。
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末篡九,一起剝皮案震驚了整個(gè)濱河市谐岁,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖伊佃,帶你破解...
    沈念sama閱讀 222,104評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件窜司,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡锭魔,警方通過(guò)查閱死者的電腦和手機(jī)例证,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,816評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)迷捧,“玉大人织咧,你說(shuō)我怎么就攤上這事∧铮” “怎么了笙蒙?”我有些...
    開封第一講書人閱讀 168,697評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)庆锦。 經(jīng)常有香客問(wèn)我捅位,道長(zhǎng),這世上最難降的妖魔是什么搂抒? 我笑而不...
    開封第一講書人閱讀 59,836評(píng)論 1 298
  • 正文 為了忘掉前任艇搀,我火速辦了婚禮,結(jié)果婚禮上求晶,老公的妹妹穿的比我還像新娘焰雕。我一直安慰自己,他們只是感情好芳杏,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,851評(píng)論 6 397
  • 文/花漫 我一把揭開白布矩屁。 她就那樣靜靜地躺著,像睡著了一般爵赵。 火紅的嫁衣襯著肌膚如雪吝秕。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,441評(píng)論 1 310
  • 那天空幻,我揣著相機(jī)與錄音烁峭,去河邊找鬼。 笑死秕铛,一個(gè)胖子當(dāng)著我的面吹牛则剃,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播如捅,決...
    沈念sama閱讀 40,992評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼棍现,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了镜遣?” 一聲冷哼從身側(cè)響起己肮,我...
    開封第一講書人閱讀 39,899評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤士袄,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后谎僻,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體娄柳,經(jīng)...
    沈念sama閱讀 46,457評(píng)論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,529評(píng)論 3 341
  • 正文 我和宋清朗相戀三年艘绍,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了赤拒。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,664評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡诱鞠,死狀恐怖挎挖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情航夺,我是刑警寧澤蕉朵,帶...
    沈念sama閱讀 36,346評(píng)論 5 350
  • 正文 年R本政府宣布,位于F島的核電站阳掐,受9級(jí)特大地震影響始衅,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜缭保,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,025評(píng)論 3 334
  • 文/蒙蒙 一汛闸、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧艺骂,春花似錦诸老、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,511評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)吮廉。三九已至苞尝,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間宦芦,已是汗流浹背宙址。 一陣腳步聲響...
    開封第一講書人閱讀 33,611評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留调卑,地道東北人抡砂。 一個(gè)月前我還...
    沈念sama閱讀 49,081評(píng)論 3 377
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像恬涧,于是被迫代替她去往敵國(guó)和親注益。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,675評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容

  • http協(xié)議有http0.9溯捆,http1.0丑搔,http1.1和http2三個(gè)版本,但是現(xiàn)在瀏覽器使用的是htt...
    一現(xiàn)_閱讀 1,866評(píng)論 0 3
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)啤月,斷路器煮仇,智...
    卡卡羅2017閱讀 134,704評(píng)論 18 139
  • 本篇文章篇幅比較長(zhǎng),先來(lái)個(gè)思維導(dǎo)圖預(yù)覽一下谎仲。 一浙垫、概述 1.計(jì)算機(jī)網(wǎng)絡(luò)體系結(jié)構(gòu)分層 2.TCP/IP 通信傳輸流 ...
    滌生_Woo閱讀 55,052評(píng)論 24 557
  • 陽(yáng)春三月间景,桃花始開佃声,石黛碧玉般的嘉陵江孕育了一座已有2300年歷史的古鎮(zhèn)√纫“古閬城南別有天圾亏,幽奇端不類人間》馀。”志鹃,“...
    暮色緩歸閱讀 334評(píng)論 0 1
  • 在此自稱瘋魔,稍微埋汰了瘋魔泽西。確實(shí)稍微曹铃,確實(shí)稍微,哈哈捧杉。但此無(wú)傷你陕见,無(wú)傷他,無(wú)傷黨和國(guó)家味抖,甚好评甜,甚好。 ...
    滴在火焰上的Tom先生閱讀 413評(píng)論 0 1