TCP/IP簡介

本文轉載自實驗樓:TCP/IP簡介

TCP/IP 背景和介紹

上世紀 70 年代,隨著計算機技術的發展,計算機使用者意識到:要想發揮計算機更大的作用,就要將世界各地的計算機連接起來。但是簡單的連接是遠遠不夠的,因為計算機之間無法溝通。因此設計一種通用的“語言”來交流是必要可少的,這時 TCP/IP 協議就應運而生了。
TCP/IP(Transmission Control Protocol/Internet Protocol)是傳輸控制協議和網絡協議的簡稱,它定義了電子設備如何連入因特網,以及數據如何在它們之間傳輸的標準。
TCP/IP 不是一個協議,而是一個協議族的統稱,里面包括了 IP 協議、ICMP 協議、TCP 協議、以及 http、ftp、pop3 協議等。網絡中的計算機都采用這套協議族進行互聯。

網絡協議棧架構

提到網絡協議棧結構,最著名的當屬 OSI 七層模型,但是 TCP/IP 協議族的結構則稍有不同,它們之間的層次結構有如圖對應關系:


01
01

可見 TCP/IP 被分為 4 層,每層承擔的任務不一樣,各層的協議的工作方式也不一樣,每層封裝上層數據的方式也不一樣:
(1)應用層:應用程序通過這一層訪問網絡,常見 FTP、HTTP、DNS 和 TELNET 協議;
(2)傳輸層:TCP 協議和 UDP 協議;
(3)網絡層:IP 協議,ARP、RARP 協議,ICMP 協議等;
(4)網絡接口層:是 TCP/IP 協議的基層,負責數據幀的發送和接收。


本門課程,就是從底向上分層次對 TCP/IP 的各協議做介紹。

預備知識

1.IP 地址
網絡上每一個節點都必須有一個獨立的 IP 地址,通常使用的 IP 地址是一個 32bit 的數字,被 . 分成 4 組,例如,255.255.255.255 就是一個 IP 地址。有了 IP 地址,用戶的計算機就可以發現并連接互聯網中的另外一臺計算機。
在 Linux 系統中,可以用這樣一條命令查看自己的 IP 地址:

ifconfig -a


2.域名
用 12 位數字組成的 IP 地址很難記憶,在實際應用時,用戶一般不需要記住 IP 地址,互聯網給每個 IP 地址起了一個別名,習慣上稱作域名。
域名與計算機的 IP 地址相對應,并把這種對應關系存儲在域名服務系統 DNS(Domain Name System)中,這樣用戶只需記住域名就可以與指定的計算機進行通信了。
常見的域名包括 com、net 和 org 三種頂級域名后綴,除此之外每個國家還有自己國家專屬的域名后綴(比如我國的域名后綴為 cn)。目前經常使用的域名諸如百度(www.baidu.com)、Linux 組織(www.lwn.net)等等。
我們可以使用命令”nslookup”或者“ping”來查看與域名相對應的 IP 地址,由于實驗樓網絡限制,我們可以使用ping git.shiyanlou.com
查看。
例如:
04
04

關于域名與 IP 地址的映射關系,以及 IP 地址的路由和發現機制,將在后續章節進行詳細的說明。

3.MAC 地址
MAC(Media Access Control)地址,或稱為物理地址、硬件地址,用來定義互聯網中設備的位置。
在 TCP/IP 層次模型中,網絡層管理 IP 地址,鏈路層則負責 MAC 地址。因此每個網絡位置會有一個專屬于它的 IP 地址,而每個主機會有一個專屬于它 MAC 地址。

4.端口號
IP 地址是用來發現和查找網絡中的地址的,但是不同程序如何互相通信呢,這就需要端口號來識別了。如果把 IP 地址比作一間房子 ,端口就是出入這間房子的門。真正的房子只有幾個門,但是端口采用 16 比特的端口號標識,一個 IP 地址的端口可以有 65536(即:2^16)個之多!
服務器的默認程序一般都是通過人們所熟知的端口號來識別的。例如,對于每個 TCP/IP 實現來說,SMTP(簡單郵件傳輸協議)服務器的 TCP 端口號都是 25,FTP(文件傳輸協議)服務器的 TCP 端口號都是 21,TFTP(簡單文件傳輸協議)服務器的 UDP 端口號都是 69。任何 TCP/IP 實現所提供的服務都用眾所周知的 1-1023 之間的端口號。這些人們所熟知的端口號由 Internet 端口號分配機構(Internet Assigned Numbers Authority, IANA)來管理。

5、封裝和分用
封裝:當應用程序發送數據的時候,數據在協議層次當中從頂向下通過每一層,每一層都會對數據增加一些首部或尾部信息,這樣的信息稱之為協議數據單元(Protocol Data Unit,縮寫為PDU),在分層協議系統里,在指定的協議層上傳送的數據單元,包含了該層的協議控制信息和用戶信息。如下圖所示:
物理層(一層)PDU指數據位(Bit)
數據鏈路層(二層)PDU指數據幀(Frame)
網絡層(三層)PDU指數據包(Packet)
傳輸層(四層)PDU指數據段(Segment)
第五層以上為數據(data)

05
05

分用:當主機收到一個數據幀時,數據就從協議層底向上升,通過每一層時,檢查并去掉對應層次的報文首部或尾部,與封裝過程正好相反。

6.RFC
RFC(Request for Comment)文檔是所有以太網協議的正式標準,并在其官網上面公布,由 IETF 標準協會制定。大量的 RFC 并不是正式的標準,出版的目的只是為了提供信息。RFC 的篇幅不一,從幾頁到幾百頁不等。每一種協議都用一個數字來標識,如 RFC 3720 是 iSCSI 協議的標準,數字越大說是 RFC 的內容越新或者是對應的協議(標準)出現的比較晚。
所有的 RFC 文檔都可以從網絡上找到,其官網為IETF。在網站上面可以通過分類以及搜索快速找到目標協議的 RFC 文檔。目前在 IETF 網站上面的 RFC 文檔有數千個,但是我們不需要全部掌握,在工作或學習中如果遇到可以找到對應的解釋,理論與實際結合會有更好地效果,單純閱讀 RFC 的效果一般。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 230,563評論 6 544
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 99,694評論 3 429
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 178,672評論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,965評論 1 318
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,690評論 6 413
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 56,019評論 1 329
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 44,013評論 3 449
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 43,188評論 0 290
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,718評論 1 336
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,438評論 3 360
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,667評論 1 374
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,149評論 5 365
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,845評論 3 351
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,252評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,590評論 1 295
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,384評論 3 400
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,635評論 2 380

推薦閱讀更多精彩內容

  • 名詞延伸 通俗的說,域名就相當于一個家庭的門牌號碼,別人通過這個號碼可以很容易的找到你。如果把IP地址比作一間房子...
    楊大蝦閱讀 20,620評論 2 56
  • 個人認為,Goodboy1881先生的TCP /IP 協議詳解學習博客系列博客是一部非常精彩的學習筆記,這雖然只是...
    貳零壹柒_fc10閱讀 5,086評論 0 8
  • 1.這篇文章不是本人原創的,只是個人為了對這部分知識做一個整理和系統的輸出而編輯成的,在此鄭重地向本文所引用文章的...
    SOMCENT閱讀 13,123評論 6 174
  • 簡介 用簡單的話來定義tcpdump,就是:dump the traffic on a network,根據使用者...
    保川閱讀 5,981評論 1 13
  • 生命從來都是向往極致的,極致的明,極致的暗,這樣的香辛料對生命體有著致命的吸引力,但如果是普通呢,普通的草木,普通...
    木小同閱讀 231評論 0 0