服務(wù)器起航
從在瀏覽器輸入網(wǎng)址,到能看到網(wǎng)頁,雖然可能只有短短的0.1秒,但這其中計(jì)算機(jī)執(zhí)行了多少條命令,網(wǎng)頁又經(jīng)過了怎樣的迂回曲折才呈現(xiàn)在你的面前的呢?

計(jì)算機(jī)網(wǎng)絡(luò)連接
通常情況下,瀏覽器在一臺(tái)計(jì)算機(jī)上,而顯示的網(wǎng)頁在另外一臺(tái)計(jì)算機(jī)上,它們之間通過網(wǎng)絡(luò)連接。

域名與IP
網(wǎng)址表示想要訪問的頁面,不同網(wǎng)址會(huì)對(duì)應(yīng)不同頁面。網(wǎng)址中包含域名,域名一般以www開始,以.cn或者.com,.org等結(jié)尾,同一個(gè)域名下可以有多個(gè)網(wǎng)址。

網(wǎng)絡(luò)是由多臺(tái)計(jì)算機(jī)組成的,如何定位到其中的一臺(tái)計(jì)算機(jī)呢?可以給計(jì)算機(jī)編號(hào),由此ip地址應(yīng)運(yùn)而生。當(dāng)前使用的大部分ip地址說ipv4地址,ipv4由32位組成,為方便書寫用點(diǎn)分隔成4段,每段8位,2的8次方等于256,所以每一位的范圍是0-255,ipv4總共有43億個(gè)地址。

那么域名和ip地址又是怎么對(duì)應(yīng)起來的呢,對(duì)于瀏覽器來說,輸入網(wǎng)址后,它會(huì)從網(wǎng)址中取出域名,然后通過訪問DNS獲得域名對(duì)應(yīng)的ip地址。DNS表示域名服務(wù)器,可以理解為DNS有一張表,表中記錄了所有的域名和ip地址的對(duì)應(yīng)關(guān)系,只要你給我域名,我給你查出對(duì)應(yīng)的ip地址。

服務(wù)器
你的計(jì)算機(jī)拿到另外一臺(tái)計(jì)算機(jī)的ip地址后,你的計(jì)算機(jī)就會(huì)將你的請(qǐng)求發(fā)送給ip地址對(duì)應(yīng)的那臺(tái)計(jì)算機(jī),其他計(jì)算機(jī)也會(huì)發(fā)出同樣的請(qǐng)求,這樣的請(qǐng)求都通過網(wǎng)絡(luò)來到了這臺(tái)目標(biāo)計(jì)算機(jī),像這樣的被其他計(jì)算機(jī)訪問的計(jì)算機(jī),稱為服務(wù)器。

端口號(hào)
一臺(tái)服務(wù)器上可以同時(shí)提供多種不同的服務(wù):Web服務(wù),也就是提供網(wǎng)頁;FTP服務(wù),提供文件存儲(chǔ)和訪問;郵件服務(wù),提供電子郵件收發(fā),這些服務(wù)分別由不同的服務(wù)器程序來完成。但是一個(gè)網(wǎng)絡(luò)請(qǐng)求來到服務(wù)器,服務(wù)器怎么知道這個(gè)請(qǐng)求想要什么服務(wù)呢?

瀏覽器發(fā)送請(qǐng)求時(shí)可以攜帶信息給服務(wù)器,告訴服務(wù)器獲取哪種服務(wù)就可以了。那這個(gè)信息在計(jì)算機(jī)系統(tǒng)其實(shí)就是“端口號(hào)”。

我們?cè)谑褂脼g覽器時(shí),沒有用過端口號(hào)。實(shí)際上在發(fā)送請(qǐng)求時(shí),如果是獲取網(wǎng)頁,瀏覽器自動(dòng)添加了默認(rèn)端口。

響應(yīng)
通過剛才的一系統(tǒng)步驟,瀏覽器端的請(qǐng)求已經(jīng)找到了服務(wù)器這臺(tái)計(jì)算機(jī),并且由服務(wù)器上某個(gè)具體的服務(wù)器程序來處理請(qǐng)求。然后服務(wù)器程序根據(jù)網(wǎng)址中不同的路徑或者文件名給瀏覽器返回對(duì)應(yīng)的頁面。
當(dāng)服務(wù)器返回的內(nèi)容通過網(wǎng)絡(luò)到達(dá)瀏覽器,經(jīng)由瀏覽器解析后就顯示出來。這里,將服務(wù)器給瀏覽器返回的內(nèi)容,稱之為響應(yīng)。

從輸入網(wǎng)址開始到看到網(wǎng)頁的整個(gè)流程就是這樣的,對(duì)于計(jì)算機(jī)和網(wǎng)絡(luò)來說,這些事情可能只用了0.1秒,但要理解這個(gè)流程,還是要花些功夫的。






