成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

阿里大佬終于把TCP/IP 協議學習筆記整理出來了

網絡 通信技術
一般來說,TCP/IP 是利用IP進行通信時所必須用到的協議群的統稱。具體點,IP或ICMP、TCP或UDP、TELENT或ETP、以及HTTP等都屬于TCP/IP協議,而TCP/IP泛指這些協議。

一般來說,TCP/IP 是利用IP進行通信時所必須用到的協議群的統稱。具體點,IP或ICMP、TCP或UDP、TELENT或ETP、以及HTTP等都屬于TCP/IP協議,而TCP/IP泛指這些協議。

TCP/IP協議分層模型

網絡協議通常分為不同層次進行開發,每一層分別負責不同的通信功能。一個協議族,比如TCP/IP,是一組不同層次上的多個協議的組合。TCP/IP通常被認為是一個四層協議系統,如下表所示:

通常情況下,應用程序就是一個用戶進程,而下三層則一般在(操作系統)內核中執行,例如 UNIX 操作系統。除此之外,應用層與下三層還有一個關鍵不同在于:應用層關心的是應用程序的細節,而不是數據在網絡中的傳輸活動,下三層對應用程序一無所知,但它們要處理所有的通信細節。

在TCP/IP協議族中,網絡層IP提供的是一種不可靠的服務,也就是說,它只是盡快的將分組從源結點送到目的結點,但并不提供任何可靠性保證。而另一方面,TCP在不可靠的IP層上提供了一個可靠的運輸層。為了提供這種可靠的服務,TCP采用了超時重傳、發送和接收端到端的確認分組等機制。由此可見,運輸層和網絡層分別負責不同的功能。

TCP/IP 的分層

在 TCP/IP 協議族中,有很多中協議。如下圖所示:

TCP 和 UDP 是兩種最為著名的運輸協議,二者都可以使用 IP 作為網絡層協議。雖然 TCP 使用不可靠的 IP 服務,但它卻提供了一種可靠的運輸層服務;UDP 為應用程序發送和接收數據包。一個數據報是指從發送方傳輸到接收方的一個信息單元。但是與 TCP 不同的是,UDP 是不可靠的的,它不能保證數據保證能夠安全無誤地到達最終目的。

IP 是網絡層上的主要協議,同時被 TCP 和 UDP 使用。TCP 和 UDP 的每組數據都通過端系統和每個中間路由器中的IP層在互聯網中進行傳輸。ICMP是IP協議的附屬協議,IP層用它來與其他主機或路由器交換錯誤報文和其他重要信息。Ping 和 Traceroute,它們都使用了 ICMP。IGMP 是 Internet 組織管理協議,它用來把一個 UDP 數據報多播到多個主機。

ARP(地址解析協議)和 RARP(逆地址解析協議)是某些網絡接口使用的特殊協議,用來轉換IP層和網絡接口層使用的地址。

當應用程序用TCP傳送數據時,數據被送入協議棧中,然后逐個通過每一層直到被當作一串比特流送入網絡,其中每一層對收到的數據都要增加一些首部信息(有時還要加一些尾部信息)。TCP 傳給IP的數據單元稱作TCP報文段或簡稱為 TCP 段。IP傳給網絡接口層的數據單元稱作IP數據報。通過以太網傳輸的比特流稱為幀。 UDP 數據與 TCP 數據基本一致。唯一不同的是 UDP 傳給IP的信息單元稱為 UDP 數據報,而且 UDP 的首部長為8字節。

IP:網際協議

IP 是TCP/IP協議族中最為核心的協議。所有的TCP、UDP、ICMP及IGMP數據都以IP數據報格式傳輸,它提供不可靠、無連接的數據報傳送服務。

不可靠的意思是指它不能保證IP數據報能夠成功地到達目的地。IP僅提供最基本的傳輸服務。如果發生某種錯誤時,如某個路由器暫時用完了緩沖區,IP有一個簡單的錯誤處理算法:丟棄該數據報,然后發送ICMP消息報給信源端。

無連接是指IP并不維護任何關于后續數據報的狀態信息。每個數據報表的處理是相互獨立的。這也說明,IP數據報可以不按發送順序接收。

IP首部

IP 數據報的格式,如圖所示:

版本號:版本號字段占4位: IP協議的版本號,一般有兩個值,如果為4就代表是IPv4,6就代表是IPv6協議。 4→IPv4, 6 → IPv6

首部長度:指首部占32位字的數目。普通IP數據報(沒有任何選擇項)字段的值是5。

服務類型(TOS)字段:包括一個3bit的優先權子字段,4bit的TOS子字段和1bit未用位但必須置0。4 bit的TOS分別代表:最小時延、最大吞吐量、最高可靠性和最小費用。4bit中只能置其中1bit。

總長度字段:指整個IP數據報的長度,以字節為單位。利用首部長度字段和總長度字段就可以知道IP數據報中數據內容的起始位置和長度??傞L度字段是IP首部中必要的內容。

標識字段:唯一的標識就是主機發送的每一份數據報。通常每發送一份報文它的值就加1。

TTL:生存時間字段設置了數據報可以經過的最多路由器數。

首部檢驗和字段:根據IP首部計算的檢驗和碼。它不對首部后面的數據進行計算。ICMP、IGMP、UDP、TCP在它們各自的首部中均含有同時覆蓋首部和數據檢驗和碼。

如何計算一份數據報的IP檢驗和:1.檢驗和字段置為0; 2.對首部的每個16bit進行二進制反碼求和并存入檢驗和字段中。 3. 接收方對收到的IP首部劃分為若干個16bit,并進行反碼求和,如果接收方計算結果全為1,則無錯。

IP路由選擇

主機的路由選擇可以非常簡單:如果目的主機在直接連接的網絡上,那么就把數據報直接傳給目的主機,否則傳給默認路由器。

在進行路由選擇決策時,主機和路由器都使用路由表。在表中,有三種類型的路由:特定主機型、特定網絡型和默認路由型。路由表在表目具有一定的優先級。在選擇路由時,主機路由優先于網絡路由,最后在沒有其他可選路由存在時才選擇默認路由。

IP路由選擇是通過逐跳來實現的。數據報在各站的傳輸過程中目的IP地址始終不變,但是封裝和目的鏈路層地址在每一站都可以改變。

運輸層協議:TCP 和 UDP

運輸層介于應用層和網絡層之間,將主機到主機的端對端通信能力擴展為進程到進程的端到端通信能力。它運行在位于英特網邊緣的端系統上,對上直接為不同的應用程序進程提供可靠的或盡力而為的通信服務,對下則有效地利用網絡層的IP盡力而為服務。運輸層是TCP/IP 分層網絡體系結構中承上啟下的重要環節。

多路復用與多路分解

網絡層的傳輸通道只有一個,但是應用進程之間的交互關系卻很多,因此運輸層擔負著將多個應用進程的報文通過同一個網絡層傳遞通道進行傳輸,并正確地交給某個應用進程的任務,稱為運輸層的多路復用與多路分解。

套接字和端口

端口和套接字的作用:為了表示主機中存在多個進程,我們用端口號標識這臺主機中的進程,用IP地址標識這臺主機;端口連同標識主機接口的IP地址一起,能夠唯一標識網絡中的任何進程(TCP 和 UDP 的端口號各自獨立);為了簡化編程操作,我們引入套接字(Socket)來描述網絡兩端進程之間的通信鏈(通信鏈表示通信雙方IP地址、端口號及運輸層協議之間的關聯)。

當接收主機收到一個數據報時,其運輸層并沒有直接將數據報交給應用進程,而是將其交給了一個套接字進行處理,并由其轉交給相應的應用進程。

多路復用要求:套接字有唯一的標識,該標識的具體格式與它是UDP還是TCP類型有關;每個報文段都有特殊字段來指示該報文段要交付到的端口號

UDP 套接字用一個二元組(目的IP地址、目標端口號)來標識的,TCP套接字是用四元組(源IP地址、源端口號、目的IP地址、目的端口號)來標識的。

UDP :用戶數據報協議

UDP 是一個簡單的面向數據報的運輸層協議:進程中每個輸出操作都正好產生一個UDP數據報,并組裝成一份代發送的 IP 數據報。它只是在 IP 的基礎上擴展了多路復用/分解功能。

UDP 具有以下特點:

  1. 除了多路復用/分解及某種輕型的差錯檢測功能外,應用程序幾乎都是直接與IP打交道。
  2. UDP稱為無連接的,使用UDP時,在發送報文段之前,發送方和接收方的運輸層實體之間沒有握手過程,因此UDP具有較小的協議開銷和發送數據之前的時延
  3. UDP不保證可靠交付,它繼承了IP的盡力而為交付的特性
  4. UDP 沒有流量控制和擁塞控制
  5. UDP 是面向報文的。應用程序交給UDP一個報文段,UDP就發送該報文段,不會將應用程序交來的報文段劃分為若干個分組來發送,也不會將收到的若干個報文合并后再交付給應用程序。
  6. UDP具有較高的協議效率。其首部開銷只有8字節,而TCP的首部為20個字節。

UDP 報文段的首部格式:

從圖中可以看到,UDP 數據報是由UDP首部和放置在UDP報文段的的數據字段的應用層數據組成。

UDP計算檢驗和的方法和計算IP數據報首部檢驗和的方式相似,不同之處在于IP數據報的檢驗和只檢驗IP數據報的首部,但UDP的檢驗和是把UDP報文段和偽首部放在一起檢驗,以防止將報文段意外的交付到錯誤的目的地。

TCP:傳輸控制協議

TCP 能夠提供面向連接、可靠數據傳輸和擁塞控制等服務。

TCP 的主要特點可以歸納為以下幾點:

  1. TCP 是面向連接的端到端協議,發送方再向接收方發送數據之前,必須通過“三次握手”。TCP連接的狀態僅保留在兩個端系統中,與中間路由和鏈路層交換機無關。
  2. TCP 連接是點到點的。也就是說TCP連接是在單個發送方與單個接收方之間的連接。
  3. TCP 連接提供全雙工服務。
  4. TCP 提供可靠的交付服務,也就是說通過TCP連接傳輸的數據,能夠保證無差錯、不丟失、不重復并且按序的到達。
  5. TCP采用客戶/服務器模式。
  6. TCP報文段的劃分。當建立起一條TCP連接,兩個應用進程就可以互相發送數據了,數據流通過套接字傳輸。
  7. TCP 面向字節流。TCP中的“流”是指流入到進程或從進程流出的字節序列。
  8. 除此之外,TCP還有著名的流量控制與擁塞控制。

 

責任編輯:未麗燕 來源: 今日頭條
相關推薦

2021-04-20 08:03:26

單播協議TCP

2022-02-15 08:30:04

TCP三次握手四次揮手

2021-10-11 10:41:14

TCP傳輸層協議網絡

2011-03-17 16:43:49

2011-08-01 16:10:00

SQL Server

2010-06-10 15:30:54

路由協議

2010-09-08 15:11:36

TCP IP協議棧

2010-06-08 14:23:47

TCP IP協議概念

2010-06-08 13:32:19

TCP IP協議基礎

2014-11-21 09:16:23

TCPIP

2022-03-16 17:25:19

p2p下載器軟件

2014-10-15 09:14:24

IP

2020-12-03 08:37:38

TCPIPARP協議

2010-06-11 14:21:53

2010-06-12 15:54:09

TCP IP協議

2010-06-18 14:37:20

TCP IP協議

2010-06-08 15:10:08

2010-06-09 16:28:50

TCP IP傳輸協議

2010-09-17 16:38:41

TCP IP協議

2010-06-13 14:49:40

TCP IP協議優化
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产成人高清 | 久久久婷婷| 奇米超碰在线 | 青青草视频免费观看 | 免费在线成人 | 亚洲视频一区在线观看 | 成人亚洲一区 | 国产91综合一区在线观看 | 国产精品中文字幕在线播放 | 欧美一区视频 | 日韩精品在线观看网站 | 日韩精品成人av | 久久精品中文字幕 | 亚洲国产欧美一区 | 成人在线免费视频 | 欧洲精品在线观看 | 美国av片在线观看 | 国产精品a免费一区久久电影 | 欧美影院久久 | 亚洲精品视频在线看 | caoporn国产| 中文字幕1区 | 99免费看 | 国产欧美精品一区二区 | 波多野吉衣久久 | 精品免费国产一区二区三区四区 | 亚洲国产高清高潮精品美女 | 午夜免费福利片 | 欧美在线一区二区三区 | 日韩在线免费 | 精产国产伦理一二三区 | 欧美一区 | 久久综合狠狠综合久久 | 欧美一区二区三区在线看 | 国产精品网址 | 国产乱码精品1区2区3区 | 国产亚洲人成a在线v网站 | 一道本不卡 | 91在线播| 精品国产乱码久久久久久丨区2区 | 精品国产欧美 |