天天看點

什麼是TCP/IP協定?媽呀,怎麼約講約多了,不是說好了講TCP/IP的嗎?感覺再講下去有可能出本  計算機網絡的書了,哈哈哈。好好好,别扔鞋。什麼是TCP/IP協定?好吧,我知道我廢話太多了。

豹哥小課堂,好了不開玩笑了(什麼小課堂,哈哈哈)。豹哥将會将我會的知識簡單易懂的寫出來,希望大家能用到,當然隻是針對想學習的基礎薄弱的,大牛就算了,希望裡邊有錯誤的話大家批評指正,畢竟我也是人生路上的國小生。

我在想如何下手來講這個問題,畢竟要考慮那些0基礎學習網絡的同學,不能剛開始上來就整協定,怕是會懵逼。

因為我剛開始學習網絡就是這樣,懵逼的不行不行的,是以吸取經驗教訓來和大家一起讨論交流。

OSI模型

為什麼要說這個?因為要想知道TCP/IP就離不開OSI模型,兩個是相輔相成的。(這七層我直接複制粘貼百度了,然後把裡邊難懂的給大家改一下,好吧我承認我懶,但是人家寫的的确比我好啊,為什麼不用?)

應用層  (最高層  相當于一個樓房的第七層)

網絡服務與最終使用者的一個接口。 協定有: HTTP FTP TFTP SMTP SNMP DNS TELNET HTTPS POP3 DHCP

好吧它寫的也太簡單了,我補充一下。 應用層是OSI   和TCP/IP協定的最高層,包括所有的高層協定,并不斷有新的協定加入。 應用層的具體任務就是規定應用程序在通信時所遵循的協定。

表示層

資料的表示、安全、壓縮。(在五層模型裡面已經合并到了應用層) 格式有, JPEG、ASCll、DECOIC、加密格式等

會話層

建立、管理、終止會話。(在五層模型裡面已經合并到了應用層) 對應主機程序,指本地主機與遠端主機正在進行的會話

傳輸層  (中介,負責網絡功能的低三層和高三層)

定義傳輸資料的協定端口号,以及流控和差錯校驗。 協定有:UDP (使用者資料報協定) TCP(傳輸控制協定),資料包一旦離開網卡即進入網絡傳輸層

網絡層(介于運輸層和資料鍊路層,在資料鍊路層提供的在兩個相鄰的結點之間傳送資料幀的功能上,進一步管理網絡中的資料通信,将資料設法從源端經過若幹個中間結點傳送到目的端,進而向運輸層提供最基本的主機到主機的傳送服務。)

進行邏輯位址尋址,實作不同網絡之間的路徑選擇。 協定有: ICMP IGMP IP(IPV4 IPV6) ARP RARP

資料鍊路層(加強實體層傳輸原始位流的功能,并将實體層提供的可能出錯的實體連接配接改造成邏輯上無差錯的資料鍊路)

建立邏輯連接配接、進行硬體位址尋址、差錯校驗  [2]   等功能。(由底層網絡定義協定) 将比特組合成位元組進而組合成幀,用MAC位址通路媒體,錯誤發現但不能糾正。

實體層

建立、維護、斷開實體連接配接。(由底層網絡定義協定) TCP/IP 層級模型結構, 應用層之間的協定通過逐級調用 傳輸層(Transport layer)、網絡層(Network Layer)和實體 資料鍊路層(Physical Data Link)而可以實作應用層的應用程式通信互聯。 應用層需要關心應用程式的邏輯細節,而不是資料在網絡中的傳輸活動。應用層其下三層則處理真正的通信細節。在 Internet 整個發展過程中的所有思想和着重點都以一種稱為 RFC(Request For Comments)的文檔格式存在。針對每一種特定的 TCP/IP 應用,有相應的 RFC  [3]   文檔。 一些典型的 TCP/IP 應用有 FTP、Telnet、SMTP、SNTP、REXEC、TFTP、LPD、SNMP、NFS、INETD 等。RFC 使一些基本相同的 TCP/IP 應用程式實作了标準化,進而使得不同廠家開發的應用程式可以互相通信

媽呀,怎麼約講約多了,不是說好了講TCP/IP的嗎?感覺再講下去有可能出本  計算機網絡的書了,哈哈哈。好好好,别扔鞋。

 舉個栗子:(這是我最喜歡的版塊,也就是那那些難懂的知識豹哥用生活中常用的東西代替了解,讓大家加深記憶!)

1、OSI就是一個七層的樓房,每層樓有每層樓的名字,比如第一層就叫實體層,第二層資料鍊路層,第三層網絡層,第四層運輸層,第五層會話層,第六層表示層,第七層應用層。

2、每層都有各自的房間,每個房間都有自己的名字,比如第七層  有HTTP FTP TFTP SMTP SNMP DNS TELNET HTTPS POP3 DHCP等房間,每個房間有每個房間的功能,(怎麼越說越像政府辦公大樓了??老鐵沒毛病啊,就是有點像啊)

什麼是TCP/IP協定?好吧,我知道我廢話太多了。

TCP/IP協定是一棟四層樓房

TCP/IP模型

應用層 遠端登入協定(TELNET)、檔案傳送協定(FTP)、域名服務(DNS)、超文本傳送協定(HTTP)·······     
運輸層  傳輸控制協定(TCP)、 使用者資料包協定(UDP)
網際網路層   網際網路層定義了正式的分組格式和協定(IP協定)
網絡接口層   與硬體相關,負責基本通信  和OSI的實體層、資料鍊路層差不多

(我覺得我這個圖比百度的圖做的要好,哈哈哈)

微觀上說TCP/IP就是  傳輸控制協定和網際網路互聯協定

但是宏觀上來說  TCP/IP是一組協定的代名詞,并不指單個協定

以上就是概念上難懂的地方,我解釋清楚了,那麼簡單易懂的地方交給百度:

TCP

TCP是面向連接配接的通信協定,通過三次握手建立連接配接,通訊完成時要拆除連接配接,由于TCP是面向連接配接的是以隻能用于端到端的通訊。 TCP提供的是一種可靠的資料流服務,采用“帶重傳的肯定确認”技術來實作傳輸的可靠性。TCP還采用一種稱為“滑動視窗”的方式進行流量控制,所謂視窗實際表示接收能力,用以限制發送方的發送速度。 如果IP資料包中有已經封好的TCP資料包,那麼IP将把它們向‘上’傳送到TCP層。TCP将包排序并進行錯誤檢查,同時實作虛電路間的連接配接。TCP資料包中包括序号和确認,是以未按照順序收到的包可以被排序,而損壞的包可以被重傳。 TCP将它的資訊送到更高層的應用程式,例如Telnet的服務程式和客戶程式。應用程式輪流将資訊送回TCP層,TCP層便将它們向下傳送到IP層,裝置驅動程式和實體媒體,最後到接收方。 面向連接配接的服務(例如Telnet、FTP、rlogin、X Windows和SMTP)需要高度的可靠性,是以它們使用了TCP。DNS在某些情況下使用TCP(發送和接收域名資料庫),但使用UDP傳送有關單個主機的資訊。

UDP

UDP是面向無連接配接的通訊協定,UDP資料包括目的端口号和源端口号資訊,由于通訊不需要連接配接,是以可以實作廣播發送。 UDP通訊時不需要接收方确認,屬于不可靠的傳輸,可能會出現丢包現象,實際應用中要求程式員程式設計驗證。 UDP與 TCP位于同一層,但它不管資料包的順序、錯誤或重發。是以,UDP不被應用于那些使用虛電路的面向連接配接的服務,UDP主要用于那些面向查詢---應答的服務,例如NFS。相對于FTP或Telnet,這些服務需要交換的資訊量較小。使用UDP的服務包括NTP(網絡時間協定)和DNS(DNS也使用TCP)。 欺騙UDP包比欺騙TCP包更容易,因為UDP沒有建立初始化連接配接(也可以稱為握手)(因為在兩個系統間沒有虛電路),也就是說,與UDP相關的服務面臨着更大的危險。

IP

IP層接收由更低層(網絡接口層例如 以太網裝置驅動程式)發來的 資料包,并把該資料包發送到更高層---TCP或 UDP層;相反,IP層也把從TCP或UDP層接收來的資料包傳送到更低層。IP資料包是不可靠的,因為IP并沒有做任何事情來确認資料包是否按順序發送的或者有沒有被破壞,IP資料包中含有發送它的主機的位址(源位址)和接收它的主機的位址(目的位址)。 高層的TCP和UDP服務在接收資料包時,通常假設包中的源位址是有效的。也可以這樣說, IP位址形成了許多服務的認證基礎,這些服務相信資料包是從一個有效的主機發送來的。IP确認包含一個選項,叫作IP source routing,可以用來指定一條源位址和目的位址之間的直接路徑。對于一些TCP和UDP的服務來說,使用了該選項的IP包好像是從路徑上的最後一個系統傳遞過來的,而不是來自于它的真實地點。這個選項是為了測試而存在的,說明了它可以被用來欺騙系統來進行平常是被禁止的連接配接。那麼,許多依靠IP源位址做确認的服務将産生問題并且會被非法入侵。

資料格式

資料幀:幀頭+IP資料包+幀尾 (幀頭包括源和目标主機MAC初步位址及類型,幀尾是校驗字) IP資料包:IP頭部+TCP資料資訊(IP頭包括源和目标主機IP位址、類型、生存期等) TCP資料資訊:TCP頭部+實際資料 (TCP頭包括源和目标主機 端口号、順序号、确認号、校驗字等)

IP位址

在Internet上連接配接的所有計算機,從大型機到微型計算機都是以獨立的身份出現,我們稱它為主機。為了實作各主機間的通信,每台主機都必須有一個唯一的 網絡位址。就好像每一個住宅都有唯一的門牌一樣,才不至于在傳輸資料時出現混亂。 Internet的網絡位址是指連入Internet網絡的計算機的位址編号。是以,在Internet網絡中,網絡位址唯一地辨別一台計算機。 我們都已經知道,Internet是由幾千萬台計算機互相連接配接而成的。而我們要确認網絡上的每一台計算機,靠的就是能唯一辨別該計算機的網絡位址,這個位址就叫做IP(Internet Protocol的簡寫)位址,即用Internet協定語言表示的位址。 在Internet裡,IP位址是一個32位的二進制位址,為了便于記憶,将它們分為4組,每組8位,由小數點分開,用四個位元組來表示,而且,用點分開的每個位元組的數值範圍是0~255,如202.116.0.1,這種書寫方法叫做點數表示法。

IPV4

IPv4,是 網際網路協定(Internet Protocol,IP)的第四版,也是第一個被廣泛使用,構成現今 網際網路技術的基石的協定。1981年Jon Postel 在RFC791中定義了IP,Ipv4可以運作在各種各樣的底層網絡上,比如端對端的串行資料鍊路(PPP協定和 SLIP協定) ,衛星鍊路等等。區域網路中最常用的是以太網。 傳統的TCP/IP協定基于 IPV4屬于 第二代網際網路技術,核心技術屬于美國。它的最大問題是網絡位址資源有限,從理論上講,編址1600萬個網絡、40億台主機。但采用A、B、C三類編址方式後,可用的網絡位址和主機位址的數目大打折扣,以至IP位址已經枯竭。其中 北美占有3/4,約30億個,而人口最多的亞洲隻有不到4億個, 中國截止2010年6月IPv4位址數量達到2.5億,落後于4.2億網民的需求。雖然用 動态IP及Nat位址轉換等技術實作了一些緩沖,但IPV4位址枯竭已經成為不争的事實。在此,專家提出IPV6的網際網路技術,也正在推行,但IPV4的使用過過渡到IPV6需要很長的一段過渡期。中國主要用的就是ip4,在win7中已經有了ipv6的協定不過對于中國的使用者們來說可能很久以後才會用到吧。 傳統的TCP/IP協定基于電話寬帶以及 以太網的電器特性而制定的,其分包原則與檢驗占用了資料包很大的一部分比例造成了傳輸效率低,網絡正向着全 光纖網絡高速以太網方向發展,TCP/IP協定不能滿足其發展需要。 1983年TCP/IP協定被 ARPAnet采用,直至發展到後來的網際網路。那時隻有幾百台計算機互相聯網。到1989年聯網計算機數量突破10萬台,并且同年出現了1.5Mbit/s的 骨幹網。因為 IANA把大片的 位址空間配置設定給了一些公司和研究機構, 90年代初就有人擔心10年内IP位址空間就會不夠用,并由此導緻了IPv6 的開發。

IPv6

IPv6是Internet Protocol Version 6的縮寫,其中Internet Protocol譯為“ 網際網路協定”。IPv6是 IETF(網際網路工程任務組,Internet Engineering Task Force)設計的用于替代現行版本IP協定(IPv4)的下一代IP協定。 與IPV4相比,IPV6具有以下幾個優勢: 一、IPv6具有更大的位址空間。IPv4中規定IP位址長度為32,即有2^32-1(符号^表示升幂,下同)個位址;而IPv6中IP位址的長度為128,即有2^128-1個位址。 二、IPv6使用更小的 路由表。IPv6的位址配置設定一開始就遵循聚類(Aggregation)的原則,這使得路由器能在路由表中用一條記錄(Entry)表示一片子網,大大減小了路由器中路由表的長度,提高了路由器轉發資料包的速度。 三、IPv6增加了增強的多點傳播(Multicast)支援以及對流的控制(Flow Control),這使得網絡上的多媒體應用有了長足發展的機會,為 服務品質(QoS,Quality of Service)控制提供了良好的網絡平台。 四、IPv6加入了對自動 配置(Auto Configuration)的支援。這是對 DHCP協定的改進和擴充,使得網絡(尤其是區域網路)的管理更加友善和快捷。 五、IPv6具有更高的安全性。在使用IPv6網絡中使用者可以對網絡層的資料進行加密并對IP封包進行校驗,極大的增強了網絡的安全性。

ICMP

ICMP與IP位于同一層,它被用來傳送IP的控制資訊。它主要是用來提供有關通向目的位址的路徑資訊。ICMP的‘Redirect’資訊通知主機通向其他系統的更準确的路徑,而‘Unreachable’資訊則指出路徑有問題。另外,如果路徑不可用了,ICMP可以使TCP連接配接‘體面地’終止。PING是最常用的基于ICMP的服務。

什麼是TCP/IP協定?媽呀,怎麼約講約多了,不是說好了講TCP/IP的嗎?感覺再講下去有可能出本  計算機網絡的書了,哈哈哈。好好好,别扔鞋。什麼是TCP/IP協定?好吧,我知道我廢話太多了。

(我覺得這個圖簡單明了,就複制過來了,來源百度百科)

什麼是TCP/IP協定?媽呀,怎麼約講約多了,不是說好了講TCP/IP的嗎?感覺再講下去有可能出本  計算機網絡的書了,哈哈哈。好好好,别扔鞋。什麼是TCP/IP協定?好吧,我知道我廢話太多了。

說了這麼多,有同學還問那到底什麼什麼是TCP/IP協定?

本着寫python的精神簡潔為一句話:那兩層樓裡邊的所有東西就是。

再啰嗦一下,比如你問我什麼是發改委,我告訴你是國家的一個職能部門,負責國家經濟,對外貿易·······,聽完你還不知道。

我給你指發改委的兩棟辦公樓,說:這就是發改委,裡邊的每個部門有每個部門的任務和作用,所有部門和一起就叫發改委。

要是想轉載,記得聯系我一下哦,别不吭聲就轉載了還不放原作者位址,這樣不道義哦。

繼續閱讀