TCP/IP 協(xié)議分層模型.

大學(xué)教科書中有說分成7層,也有說分成4層的咽块,筆者覺得4層更合適一些,像七層中的第5腻惠、6層完全不是必須的环肘,就算有也是各自制定協(xié)議,而制定協(xié)議的人基本不會(huì)去考慮第5層叫會(huì)話層第6層叫表示層妖枚,在私有應(yīng)用層協(xié)議中廷臼,更多的是會(huì)私定一個(gè)握手互信協(xié)議,以表示通訊雙方是互信的.

TCP/ IP 協(xié)議,是一組協(xié)議簇.而不是兩種協(xié)議,其范圍以其分層模型來進(jìn)行分類

圖片.png
  • 應(yīng)用層:
    程序員所編寫好的網(wǎng)絡(luò)程序,就是應(yīng)用層.qq,微信,瀏覽器等等.基于網(wǎng)絡(luò)編程的,都屬于應(yīng)用層的范濤.

應(yīng)用層協(xié)議:
常見與常用的 http協(xié)議,ftp協(xié)議,telnet,smpp,xmpp等共有協(xié)議. 還有諸如六毛的私有協(xié)議.

  • 傳輸層
    什么是傳輸層,傳輸層是干嘛的,傳輸層,是用來做數(shù)據(jù)傳輸?shù)?數(shù)據(jù)是什么,數(shù)據(jù)就是我們?cè)谑褂脩?yīng)用層網(wǎng)絡(luò)程序時(shí)產(chǎn)生的一系列數(shù)據(jù),這些數(shù)據(jù)需要在網(wǎng)絡(luò)上流動(dòng),傳輸,才能實(shí)現(xiàn)數(shù)據(jù)在通過網(wǎng)絡(luò)在各客戶端程序之間的交互與傳輸.怎么傳輸這些數(shù)據(jù),就需要使用到傳輸層的傳輸協(xié)議:TCP/UDP協(xié)議.傳輸層就只有這兩種公有標(biāo)準(zhǔn)傳輸協(xié)議

tcp/udp 協(xié)議不僅指定了數(shù)據(jù)傳輸?shù)臉?biāo)準(zhǔn),同時(shí)也代表著兩種截然不同的數(shù)據(jù)傳輸方式.應(yīng)用與不同的數(shù)據(jù)傳輸場景與需求.他們各自有各自的優(yōu)點(diǎn)與針對(duì)點(diǎn),也各有不足.我們?cè)谶x擇何種傳輸協(xié)議的時(shí)候.需要按數(shù)據(jù)傳輸?shù)念愋秃托枨髞磉x擇合適的傳輸協(xié)議.

  • tcp協(xié)議的主要實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)通信,需要知道彼此都在家呆著,(通過四次握手建立連接)數(shù)據(jù)發(fā)送需要進(jìn)行確認(rèn).是數(shù)據(jù)安全的.由客戶端發(fā)起連接,向服務(wù)端請(qǐng)求數(shù)據(jù).

  • UDP協(xié)議,客戶端知道服務(wù)器的家在哪,而不需要卻定其是否在家.直接發(fā)送數(shù)據(jù)包過去.如果服務(wù)器不在.則信息丟失.數(shù)據(jù)的傳輸不可靠,不安全.具有一定的風(fēng)險(xiǎn)性.

應(yīng)用層在將數(shù)據(jù)傳輸給傳輸層后,傳輸成為數(shù)據(jù)貼上相關(guān)信息,發(fā)往指定的地址.

傳輸層傳輸?shù)臄?shù)據(jù),是應(yīng)用層數(shù)據(jù)進(jìn)行一次包裝后的整體數(shù)據(jù)包.(就相當(dāng)于一個(gè)快遞包裹).傳輸層協(xié)議貼上的標(biāo)記信息,就是頭部數(shù)據(jù).

  • 網(wǎng)絡(luò)層
    ip,icmparp,rarp協(xié)議等.

對(duì)于普通編程人員來說,做需要關(guān)注,與最容易涉及到的,無疑就是應(yīng)用層,與傳輸層.我們?cè)诰帉懢W(wǎng)絡(luò)程序的時(shí)候,一定會(huì)有各種不同場景下的數(shù)據(jù)交互需求,因此,應(yīng)用層協(xié)議與傳輸層協(xié)議是我們必須得詳細(xì)的學(xué)習(xí)和運(yùn)用的.

應(yīng)用層與傳輸層之間的關(guān)系也是十分緊密.

  • 以http協(xié)議來說:
    http協(xié)議是一個(gè)簡單的請(qǐng)求-響應(yīng)協(xié)議.我們最常使用的通過瀏覽器瀏覽網(wǎng)站,網(wǎng)頁.大多都是基于這類協(xié)議的(http,https,總之一定是請(qǐng)求-響應(yīng)協(xié)議).

http協(xié)議是建立在TCP協(xié)議之上的一種應(yīng)用層協(xié)議.我們?cè)谠L問一個(gè)網(wǎng)站的時(shí)候.瀏覽器會(huì)通過TCP協(xié)議發(fā)送如下字符串到服務(wù)器的應(yīng)用層:

GET /test/abtest HTTP/1.1
    Host: 127.0.0.1
    Connection: keep-alive
    Cache-Control: max-age=0
    Upgrade-Insecure-Requests: 1
    User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.186 Safari/537.36
    Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
    Accept-Encoding: gzip, deflate, br
    Accept-Language: zh-CN,zh;q=0.9,en;q=0.8
    Cookie: PHPSESSID=970260278652571648
圖片.png

我們隨意訪問一個(gè)網(wǎng)站,進(jìn)入開發(fā)模式,即可查看到相關(guān)的消息頭與參數(shù).這些字符串就是應(yīng)用層數(shù)據(jù),應(yīng)用層數(shù)據(jù)是按照一定格式來組織的.這個(gè)格式就是應(yīng)用協(xié)議.譬如http協(xié)議.

傳輸層在往應(yīng)用層傳遞數(shù)據(jù)的時(shí)候,并不保證每次傳遞的數(shù)據(jù)都是一個(gè)完整的應(yīng)用層數(shù)據(jù)包.(以http協(xié)議為例,并不能保證應(yīng)用層收到的一定是一個(gè)完整的http數(shù)據(jù)包)這就是半包與粘包,傳輸層只負(fù)責(zé)傳遞buye[]數(shù)據(jù),應(yīng)用層需要自己對(duì)byte[]數(shù)據(jù)進(jìn)行解碼.


2020.1.19

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末绝页,一起剝皮案震驚了整個(gè)濱河市荠商,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌续誉,老刑警劉巖莱没,帶你破解...
    沈念sama閱讀 221,548評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異酷鸦,居然都是意外死亡饰躲,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,497評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門臼隔,熙熙樓的掌柜王于貴愁眉苦臉地迎上來嘹裂,“玉大人,你說我怎么就攤上這事摔握〖睦牵” “怎么了?”我有些...
    開封第一講書人閱讀 167,990評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵氨淌,是天一觀的道長泊愧。 經(jīng)常有香客問我,道長盛正,這世上最難降的妖魔是什么删咱? 我笑而不...
    開封第一講書人閱讀 59,618評(píng)論 1 296
  • 正文 為了忘掉前任,我火速辦了婚禮豪筝,結(jié)果婚禮上痰滋,老公的妹妹穿的比我還像新娘。我一直安慰自己壤蚜,他們只是感情好即寡,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,618評(píng)論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著袜刷,像睡著了一般聪富。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上著蟹,一...
    開封第一講書人閱讀 52,246評(píng)論 1 308
  • 那天墩蔓,我揣著相機(jī)與錄音梢莽,去河邊找鬼。 笑死奸披,一個(gè)胖子當(dāng)著我的面吹牛昏名,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播阵面,決...
    沈念sama閱讀 40,819評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼轻局,長吁一口氣:“原來是場噩夢(mèng)啊……” “哼!你這毒婦竟也來了样刷?” 一聲冷哼從身側(cè)響起仑扑,我...
    開封第一講書人閱讀 39,725評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎置鼻,沒想到半個(gè)月后镇饮,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,268評(píng)論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡箕母,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,356評(píng)論 3 340
  • 正文 我和宋清朗相戀三年储藐,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片嘶是。...
    茶點(diǎn)故事閱讀 40,488評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡钙勃,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出聂喇,到底是詐尸還是另有隱情肺缕,我是刑警寧澤,帶...
    沈念sama閱讀 36,181評(píng)論 5 350
  • 正文 年R本政府宣布授帕,位于F島的核電站,受9級(jí)特大地震影響浮梢,放射性物質(zhì)發(fā)生泄漏跛十。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,862評(píng)論 3 333
  • 文/蒙蒙 一秕硝、第九天 我趴在偏房一處隱蔽的房頂上張望芥映。 院中可真熱鬧,春花似錦远豺、人聲如沸奈偏。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,331評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽惊来。三九已至,卻和暖如春棺滞,著一層夾襖步出監(jiān)牢的瞬間裁蚁,已是汗流浹背矢渊。 一陣腳步聲響...
    開封第一講書人閱讀 33,445評(píng)論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留枉证,地道東北人矮男。 一個(gè)月前我還...
    沈念sama閱讀 48,897評(píng)論 3 376
  • 正文 我出身青樓,卻偏偏與公主長得像室谚,于是被迫代替她去往敵國和親毡鉴。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,500評(píng)論 2 359

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

  • 1. 協(xié)議分層與OSI參考模型 協(xié)議分層就如同計(jì)算機(jī)軟件中的模塊化開發(fā)秒赤,OSI參考模型的建議是比較理想化的猪瞬。 OS...
    公子七閱讀 2,111評(píng)論 4 38
  • TCP/IP 與 OSI 參考模型 硬件(物理層) ?TCP/IP的最底層是負(fù)責(zé)數(shù)據(jù)傳輸?shù)挠布喈?dāng)于以太網(wǎng)或電話...
    one_zheng閱讀 1,712評(píng)論 1 0
  • 硬件物理層tcp/ip 最底層是負(fù)責(zé)從數(shù)據(jù)傳輸?shù)挠布?網(wǎng)絡(luò)接口層- 數(shù)據(jù)鏈路層網(wǎng)絡(luò)接口層利用以太網(wǎng)中的數(shù)據(jù)鏈路層進(jìn)...
    Yix1a閱讀 563評(píng)論 0 0
  • 個(gè)人認(rèn)為倒脓,Goodboy1881先生的TCP /IP 協(xié)議詳解學(xué)習(xí)博客系列博客是一部非常精彩的學(xué)習(xí)筆記撑螺,這雖然只是...
    貳零壹柒_fc10閱讀 5,060評(píng)論 0 8
  • 她是一個(gè)漂亮的女孩甘晤,在她四歲的時(shí)候,因?yàn)橐粓鲕嚨準(zhǔn)チ怂碾p腿饲做,因?yàn)榧依餂]錢換不了假肢线婚,所以他每天只能呆在房子里出...
    bc66119ed7f7閱讀 132評(píng)論 0 0