互聯(lián)網(wǎng)信息交互理解

系統(tǒng)的了解一下,網(wǎng)絡(luò)信息的交互,什么是互聯(lián)網(wǎng),在我們小時(shí)候校辩,網(wǎng)絡(luò)不發(fā)達(dá)的過(guò)去,我們的課本都是這樣描述的辈挂,信息高速路惶洲,這個(gè)詞是最準(zhǔn)確的描述了按声。

互聯(lián)網(wǎng)的核心是數(shù)據(jù)data,當(dāng)下我們?cè)谑謾C(jī)上進(jìn)行各種網(wǎng)絡(luò)活動(dòng),無(wú)一不是信息的傳遞恬吕,那么現(xiàn)在開(kāi)始系統(tǒng)的介紹一下數(shù)據(jù)是如何傳遞的签则。

image.png

輸入(input)->輸出(output)。

image.png

信息的交互是這樣的:

客戶端發(fā)送數(shù)據(jù)铐料,服務(wù)端接受客戶發(fā)送的數(shù)據(jù)請(qǐng)求渐裂,進(jìn)行處理,然后返回給客戶端,然后以某種格式顯示給用戶钠惩。

舉個(gè):

  • 如果用戶請(qǐng)求的是一個(gè)文本芯义,那么在這個(gè)請(qǐng)求中會(huì)告訴服務(wù)端,我請(qǐng)求的類型是文本,也會(huì)告訴服務(wù)端妻柒,我的客戶端支持那種文本的格式。服務(wù)端收到后知道這個(gè)客戶端支持那種方法的文本即系耘分,然后就會(huì)用這個(gè)類型處理二進(jìn)制并返回?cái)?shù)據(jù)举塔,然后會(huì)告訴客戶端文本的解析方式,然后去解析
  • 如果用戶請(qǐng)求的是一個(gè)圖片,那么和上面的過(guò)程一樣。那么服務(wù)端也會(huì)返回二進(jìn)制抵代,但是會(huì)告訴客戶端胖眷,要用打開(kāi)圖片的方式去解析

請(qǐng)求是怎么產(chǎn)生的低飒,請(qǐng)求是什么樣的

  • Request
URL:https://ss0.bdstatic.com/5aV1bjqh_Q23odCf/static/mancard/css/card_min_dee38e45.css
Request Method:GET
Status Code:200 OK (from disk cache)
Remote Address:58.215.118.32:443
Referrer Policy:unsafe-url

URL告訴他請(qǐng)求的地址是https://ss0.bdstatic.com,請(qǐng)求方式是GET,這個(gè)網(wǎng)址的ip地址是58.215.118.32,端口號(hào)是443芽丹,因?yàn)槭荋TTPS安全請(qǐng)求默認(rèn)是443,HTTP是80端口

那么客戶端是怎么找到這個(gè)ip地址的呢?

這個(gè)涉及到DNS解析[Domain Name System,域名系統(tǒng)]卜朗,是什么意思呢?計(jì)算機(jī)首先在本地的host文件中拔第。

windows中位置是:C盤 -> Windows -> System32 -> drives -> etc -> hosts文件

Mac中文職是:/etc/host

如果找到就直接去找改地址請(qǐng)求咕村,如果沒(méi)有找到就會(huì)去你所在的局域網(wǎng)中的DNS 服務(wù)器中繼續(xù)找,如果還沒(méi)有就像當(dāng)前dns服務(wù)所在的上級(jí)網(wǎng)絡(luò)中的DNS查詢,這個(gè)時(shí)間我們不用關(guān)心,因?yàn)檫@個(gè)速度是光速(光纖),那么如何知道自己的DNS服務(wù)器地址呢?

windows中需要在cmd中輸入ipconfig

mac中需要在打開(kāi)設(shè)置直接查看DNS服務(wù)地址

那么ip我們介紹完了么?當(dāng)然是沒(méi)有的了蚊俺。ip可是全世界的共享資源呀懈涛,只是是很多的。我們復(fù)習(xí)一下ip的知識(shí)泳猬。

IP

我們的互聯(lián)網(wǎng)之所以互聯(lián)就是因?yàn)槭褂昧艘粋€(gè)協(xié)議TCP/IP協(xié)議批钠,關(guān)于這個(gè)協(xié)議,筆者在大二那年圖書(shū)館里面讀過(guò),記得是一個(gè)日本人寫(xiě)的兩本書(shū)得封,但是名字就忘記了埋心,之后就沒(méi)有真正意義上讀過(guò),但是不知不覺(jué)了解了很多忙上。但是里面涉及的政治和知識(shí)都很博大精深拷呆,筆者在大學(xué)那年看的是韓老師講的,至今保存

<<計(jì)算機(jī)網(wǎng)絡(luò)原理>>

這里做一個(gè)簡(jiǎn)短的介紹

IP分為五類

  • A類地址
    • A類地址網(wǎng)絡(luò)號(hào)范圍:1.0.0.0---126.0.0.0
  • B類地址
  • B類地址網(wǎng)絡(luò)號(hào)范圍:128.0.0.0---191.255.0.0。
  • C類地址
    • C類地址網(wǎng)絡(luò)號(hào)范圍:192.0.0.0---223.255.255.0晨横。
  • D類地址
    • D類地址范圍:224.0.0.0---239.255.255.255
  • E類地址
    • E類地址范圍:240.0.0.0---255.255.255.254

詳情的解析如果需要了解請(qǐng)看 教程

我們每個(gè)計(jì)算的第地址保證是:192.168.1.XXX 最大不能超過(guò)255.

image.png

Port

什么是端口呢?我們雖然能夠通過(guò)一個(gè)IP地址,找到某一臺(tái)計(jì)算機(jī)的位置洋腮,但是如何知道讓計(jì)算機(jī)上的那個(gè)應(yīng)用程序去處理呢?就是通過(guò)port知道某臺(tái)計(jì)算機(jī)上的某一個(gè)應(yīng)用程序的,比如mysql數(shù)據(jù)庫(kù)是3306 手形,rabbit是5672啥供,tomcat默認(rèn)是8080.一樣,是不是這樣解析就很明了库糠,good伙狐,進(jìn)行下一步。

好了通過(guò)上面的IP:port瞬欧,我們知道找那臺(tái)計(jì)算機(jī)上的那個(gè)應(yīng)用application去處理了贷屎,那么我們?cè)谏钊肓私庖幌拢瑪?shù)據(jù)是如何通過(guò)網(wǎng)絡(luò)傳輸?shù)哪?

這里我們?cè)谝胍粋€(gè)概念艘虎,這個(gè)概念筆者記憶尤深唉侄。筆者在讀大二的網(wǎng)絡(luò)經(jīng)濟(jì)學(xué)老師,特意在課堂上補(bǔ)充過(guò)野建。這個(gè)就是OSI模型

OSI網(wǎng)絡(luò)模型

我們自上而下開(kāi)始解釋

  • 應(yīng)用層

    什么是應(yīng)用層呢?簡(jiǎn)單來(lái)說(shuō)属划,應(yīng)用層就是我們能用眼直觀看到,eg.瀏覽器

  • 表示層

    應(yīng)用程序和網(wǎng)絡(luò)之間的翻譯官,在表示層候生,數(shù)據(jù)將按照網(wǎng)絡(luò)能理解的方案進(jìn)行格式化同眯;

  • 會(huì)話層

    負(fù)責(zé)在網(wǎng)絡(luò)中的兩節(jié)點(diǎn)之間建立、維持和終止通信唯鸭。 會(huì)話層的功能包括:建立通信鏈接须蜗,保持會(huì)話過(guò)程通信鏈接的暢通,同步兩個(gè)節(jié)點(diǎn)之間的對(duì)話,決定通信是否被中斷以及通信中斷時(shí)決定從何處重新發(fā)送明肮。eg.兩臺(tái)計(jì)算機(jī)開(kāi)始回話了

  • 傳輸層

    O S I 模型中最重要的一層菱农。傳輸協(xié)議同時(shí)進(jìn)行流量控制或是基于接收方可接收數(shù)據(jù)的快慢程度規(guī)定適當(dāng)?shù)陌l(fā)送速率。除此之外晤愧,傳輸層按照網(wǎng)絡(luò)能處理的最大尺寸將較長(zhǎng)的數(shù)據(jù)包進(jìn)行強(qiáng)制分割大莫。例如,以太網(wǎng)無(wú)法接收大于1 5 0 0 字節(jié)的數(shù)據(jù)包官份。發(fā)送方節(jié)點(diǎn)的傳輸層將數(shù)據(jù)分割成較小的數(shù)據(jù)片只厘,同時(shí)對(duì)每一數(shù)據(jù)片安排一序列號(hào),以便數(shù)據(jù)到達(dá)接收方節(jié)點(diǎn)的傳輸層時(shí)舅巷,能以正確的順序重組羔味。該過(guò)程即被稱為排序。

    比如在韓老師的課堂上是這樣講的:對(duì)于網(wǎng)絡(luò)包比較大的钠右,進(jìn)行切割赋元,然后給每一個(gè)包一個(gè)序號(hào),當(dāng)服務(wù)端接受到飒房,就開(kāi)始排序搁凸,然后只作為一個(gè)整體輸出

  • 網(wǎng)絡(luò)層

    網(wǎng)絡(luò)地址翻譯成對(duì)應(yīng)的物理地址,并決定如何將數(shù)據(jù)從發(fā)送方路由到接收方狠毯,eg护糖,快遞要選擇從哪里走,走一條最近的路嚼松,這個(gè)路就是有路由開(kāi)始選則的會(huì)告訴你嫡良,這個(gè)就相當(dāng)于大學(xué)寢室的路由器

  • 數(shù)據(jù)鏈路層

    直接來(lái)一個(gè),就是將信息數(shù)據(jù)献酗,轉(zhuǎn)換為電信號(hào)寝受,高壓低壓表示1,0罕偎。

  • 物理層

    O S I 模型的最低層或第一層很澄,該層包括物理連網(wǎng)媒介,如電纜連線連接器颜及。物理層的協(xié)議產(chǎn)生并檢測(cè)電壓以便發(fā)送和接收攜帶數(shù)據(jù)的信號(hào)痴怨。

信息發(fā)送端將請(qǐng)求信息,通過(guò)自上而下轉(zhuǎn)換器予,將應(yīng)用能看懂的,轉(zhuǎn)為機(jī)器和網(wǎng)絡(luò)能看懂的捐迫,而服務(wù)則是將機(jī)器和網(wǎng)絡(luò)能看懂的轉(zhuǎn)換為應(yīng)用能解析的乾翔,當(dāng)然這個(gè)解析就是自下而上解析的

image.png

于是就產(chǎn)生了這個(gè)響應(yīng)Response,然后有瀏覽器去解析

Response

Response Headers
Accept-Ranges:bytes
Age:1327416
Cache-Control:max-age=2592000
Content-Encoding:gzip
Content-Type:text/css
Date:Thu, 08 Jun 2017 05:03:18 GMT
ETag:W/"5886468e-cb5c"
Expires:Thu, 22 Jun 2017 20:18:31 GMT
Last-Modified:Mon, 23 Jan 2017 18:08:14 GMT
Ohc-Response-Time:1 0 0 0 0 0
Server:bfe/1.0.8.13-sslpool-patch
Vary:Accept-Encoding

我們開(kāi)一下后端是如何處理,接受請(qǐng)求的

   /**
     * 保存訂單到數(shù)據(jù)庫(kù)
     * @param request 瀏覽器的請(qǐng)求體
     * @param response 響應(yīng)對(duì)象
     * @return
     */
    @RequestMapping(value = "/shenghuojiaofei/v1/order", method = RequestMethod.POST)
    public ResponseBuilder.IResponseVo saveOrder( HttpServletRequest request,HttpServletResponse response) {
       ...處理邏輯信息
    }

后端根據(jù)request或用戶的請(qǐng)求信息,然后對(duì)數(shù)據(jù)進(jìn)行處理反浓,如果當(dāng)處理不了萌丈,就去其他后臺(tái)請(qǐng)求,然后把用戶想要的信息雷则,整理到response對(duì)象中返回

.】這就是網(wǎng)絡(luò)信息的一個(gè)前后端交互過(guò)程辆雾。

但是真實(shí)交互遠(yuǎn)比這個(gè)復(fù)雜,比如tcp的三次握手四次揮手,在比如12306月劈,雙十一秒殺活動(dòng)的高并發(fā)度迂,里面涉及很多協(xié)議和通信技術(shù),筆者不在這里描述猜揪,在以后的日子里惭墓,會(huì)娓娓道來(lái)。

附錄

最后僅接合本文筆者推薦兩本書(shū)

  • HTTP權(quán)威指南
  • TCP/IP詳解
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末而姐,一起剝皮案震驚了整個(gè)濱河市腊凶,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌拴念,老刑警劉巖钧萍,帶你破解...
    沈念sama閱讀 211,290評(píng)論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異政鼠,居然都是意外死亡风瘦,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,107評(píng)論 2 385
  • 文/潘曉璐 我一進(jìn)店門缔俄,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)弛秋,“玉大人,你說(shuō)我怎么就攤上這事俐载⌒仿裕” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 156,872評(píng)論 0 347
  • 文/不壞的土叔 我叫張陵遏佣,是天一觀的道長(zhǎng)挖炬。 經(jīng)常有香客問(wèn)我,道長(zhǎng)状婶,這世上最難降的妖魔是什么意敛? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,415評(píng)論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮膛虫,結(jié)果婚禮上草姻,老公的妹妹穿的比我還像新娘。我一直安慰自己稍刀,他們只是感情好撩独,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,453評(píng)論 6 385
  • 文/花漫 我一把揭開(kāi)白布敞曹。 她就那樣靜靜地躺著,像睡著了一般综膀。 火紅的嫁衣襯著肌膚如雪澳迫。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 49,784評(píng)論 1 290
  • 那天剧劝,我揣著相機(jī)與錄音橄登,去河邊找鬼。 笑死讥此,一個(gè)胖子當(dāng)著我的面吹牛拢锹,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播暂论,決...
    沈念sama閱讀 38,927評(píng)論 3 406
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼面褐,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了取胎?” 一聲冷哼從身側(cè)響起展哭,我...
    開(kāi)封第一講書(shū)人閱讀 37,691評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎闻蛀,沒(méi)想到半個(gè)月后匪傍,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,137評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡觉痛,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,472評(píng)論 2 326
  • 正文 我和宋清朗相戀三年役衡,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片薪棒。...
    茶點(diǎn)故事閱讀 38,622評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡手蝎,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出俐芯,到底是詐尸還是另有隱情棵介,我是刑警寧澤,帶...
    沈念sama閱讀 34,289評(píng)論 4 329
  • 正文 年R本政府宣布吧史,位于F島的核電站邮辽,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏贸营。R本人自食惡果不足惜吨述,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,887評(píng)論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望钞脂。 院中可真熱鬧揣云,春花似錦、人聲如沸冰啃。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,741評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至翎迁,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間净薛,已是汗流浹背汪榔。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,977評(píng)論 1 265
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留肃拜,地道東北人痴腌。 一個(gè)月前我還...
    沈念sama閱讀 46,316評(píng)論 2 360
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像燃领,于是被迫代替她去往敵國(guó)和親士聪。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,490評(píng)論 2 348

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