A. 網路傳輸中的報文是什麼意思
報文是計算機網路傳輸數據最高的單位,可以說我們電腦與電腦傳輸的團唯數據就銀和是報文,接收報文為0就是你的網卡沒有收到任何鋒或盯數據流量
B. 關於電腦IP地址的詳細內容
IP簡介
Internet 上的每台主機(Host)都有一個唯一的IP地址。IP協議就是使用這個地址在主機之間傳遞信息,這是Internet 能夠運行的基礎。IP地址的長度為32位,分為4段,每段8位,用十進制數字表示,每段數字范圍為0~255,段與段之間用句點隔開。例如159.226.1.1。IP地址有兩部分組成,一部分為敗蘆網路地址,另一部分為主機地址。IP地址分為A、B、C、D、E5類。常用的是B和C兩類。ip地址就像是我們的家庭住址一樣,如果你要寫信給一個人,你就要知道他(她)的地址,這樣郵遞員才能把信送到,計算機發送信息是就好比是郵遞員,它必須知道唯一的「家庭地址」才能不至於把信送錯人家。只不過我們的地址使用文字來表示的,計算機的地址用十進制數字表示。
眾所周知,在電話通訊中,電話用戶是靠電話號碼來識別的。同樣,在網路中為了區別不同的計算機,也需要給計算機指定一個號碼,這個號碼就是「IP地址」。
什麼是IP地址
所謂IP地址就是給每個連接在Internet上的主機分配的一個32bit地址。
按照TCP/IP(Transport Control Protocol/Internet Protocol,傳輸控制協議/Internet協議)協議規定,IP地址用二進制來表示,每個IP地址長32bit,比特換算成位元組,就是4個位元組。例如一個採用二進制形式的IP地址是「」,這么長的地址,人們處理起來也太費勁了。為了方便人們的使用,IP地址經常被寫成十進制的形式,中間使用符號「.」分開不同的位元組。於是,上面的IP地址可以表示為「10.0.0.1」。IP地址的這種表示法叫做「點分十進製表示法」,這顯然比1和0容易記憶得多。
有人會以為,一台計算機只能有一個IP地址,這種觀點是錯誤的。我們可以指定一台計算機具有多個IP地址,因此在訪問互聯網時,不要以為一個IP地址就是一台計算機;另外,通過特定的技術,也可以使多台伺服器共用一個IP地址,這些伺服器在用戶看起來就像一台主機似的。
將IP地址分成了網路號和主機號兩部分,設計者就必須決定每部分包含多少位。網路號的位數直接決定了可以分配的網路數(計算方法2^網路號位數);主機號的位數則決定了網路中最大的主機數(計算方法2^主機號位數-2)。然而,由於整個互聯網所包含的網路規模可能比較大,也可能比較小,設計者最後聰明的選擇了一種靈活的方案:將IP地址空間劃分成不同的類別,每一類具有不同的網路號位數和主機號位數。
如何分配IP地址
TCP/IP協議需要針對不同的網路進行不同的設置,且每個節點一般需要一個「IP地址」、一個「子網掩碼」、一個「默認網關」。不過,可以通過動態主機配置協議(DHCP),給客戶端自動分配一個IP地址,避免了出錯,也簡化了TCP/IP協議的設置。
那麼,區域網怎麼分配IP地址呢?互聯網上的IP地址統一由一個叫「IANA」(Internet Assigned Numbers Authority,互聯網網路號分配機構)的組織來管理。
IP是什麼?
——IP是當前熱察御帶門的技術。與此相關聯的一批新名詞,如IP網路、IP交換、IP電話、IP傳真等等,也相繼出現。那麼,IP是什麼呢?
——IP是英文Internet Protocol的縮寫,意思是「網路之間互連的協議」,也就是為計算機網路相互連接進行通信而設計的協議。在網際網路中,它是能使連接到網上的所有計算機網路實現相互通信的一套規則,規定了計算機在網際網路上進行通信時應當遵守的規則。任何廠家生產的計算機系統,只要遵守IP協議就可以與網際網路互連互通。正是因為有了IP協議,網際網路才得以迅速發展成為世界上最大的、開放的計算機通信網路。因此,IP協議也可以叫做「網際網路協議」。
——IP是怎樣實現網路互連的?各個廠家生產的網路系統和設備,如乙太網、分組交換網等,它們相互之間不能互通,不能互通的主要原因是因為它們所傳送數據的基本單元(技術上稱之為「幀」)的格式不同。IP協議實際上是一套由軟拆喊件程序組成的協議軟體,它把各種不同「幀」統一轉換成「IP數據報」格式,這種轉換是網際網路的一個最重要的特點,使所有各種計算機都能在網際網路上實現互通,即具有「開放性」的特點。
——那麼,「數據報」是什麼?它又有什麼特點呢?數據報也是分組交換的一種形式,就是把所傳送的數據分段打成「包」,再傳送出去。但是,與傳統的「連接型」分組交換不同,它屬於「無連接型」,是把打成的每個「包」(分組)都作為一個「獨立的報文」傳送出去,所以叫做「數據報」。這樣,在開始通信之前就不需要先連接好一條電路,各個數據報不一定都通過同一條路徑傳輸,所以叫做「無連接型」。這一特點非常重要,它大大提高了網路的堅固性和安全性。
——每個數據報都有報頭和報文這兩個部分,報頭中有目的地址等必要內容,使每個數據報不經過同樣的路徑都能准確地到達目的地。在目的地重新組合還原成原來發送的數據。這就要IP具有分組打包和集合組裝的功能。
——在實際傳送過程中,數據報還要能根據所經過網路規定的分組大小來改變數據報的長度,IP數據報的最大長度可達65535個位元組。
——IP協議中還有一個非常重要的內容,那就是給網際網路上的每台計算機和其它設備都規定了一個唯一的地址,叫做「IP地址」。由於有這種唯一的地址,才保證了用戶在連網的計算機上操作時,能夠高效而且方便地從千千萬萬台計算機中選出自己所需的對象來。
——現在電信網正在與IP網走向融合,以IP為基礎的新技術是熱門的技術,如用IP網路傳送話音的技術(即VoIP)就很熱門,其它如IP over ATM、IPover SDH、IP over WDM等等,都是IP技術的研究重點。
IP地址類型
最初設計互聯網路時,為了便於定址以及層次化構造網路,每個IP地址包括兩個標識碼(ID),即網路ID和主機ID。同一個物理網路上的所有主機都使用同一個網路ID,網路上的一個主機(包括網路上工作站,伺服器和路由器等)有一個主機ID與其對應。IP地址根據網路ID的不同分為5種類型,A類地址、B類地址、C類地址、D類地址和E類地址。
IP地址分類
1.A類IP地址
一個A類IP地址由1位元組的網路地址和3位元組主機地址組成,網路地址的最高位必須是「0」, 地址范圍1.0.0.1-126.255.255.254可用的A類網路有126個,每個網路能容納1億多個主機。
2.B類IP地址
一個B類IP地址由2個位元組的網路地址和2個位元組的主機地址組成,網路地址的最高位必須是「10」,地址范圍128.0.0.1-191.255.255.254。可用的B類網路有16382個,每個網路能容納6萬多個主機 。
3.C類IP地址
一個C類IP地址由3位元組的網路地址和1位元組的主機地址組成,網路地址的最高位必須是「110」。范圍192.0.0.1-223.255.255.254C類網路可達209萬余個,每個網路能容納254個主機。
4.D類地址用於多點廣播(Multicast)。
D類IP地址第一個位元組以「lll0」開始,它是一個專門保留的地址。它並不指向特定的網路,目前這一類地址被用在多點廣播(Multicast)中。多點廣播地址用來一次定址一組計算機,它標識共享同一協議的一組計算機。
地址范圍224.0.0.1-239.255.255.254
5.E類IP地址
以「llll0」開始,為將來使用保留。
全零(「0.0.0.0」)地址對應於當前主機。全「1」的IP地址(「255.255.255.255」)是當前子網的廣播地址。
IP地址是由什麼機構分配的?
所有的IP地址都由國際組織NIC(Network Information Center)負責統一分配,目前全世界共有三個這樣的網路信息中心。
InterNIC:負責美國及其他地區;
ENIC:負責歐洲地區;
APNIC:負責亞太地區。
我國申請IP地址要通過APNIC,APNIC的總部設在日本東京大學。申請時要考慮申請哪一類的IP地址,然後向國內的代理機構提出。
C. 計算機網路-網路層-IP多播
與單播相比,在一對多的通信中,多播可大大節約網路資源。例如視頻伺服器用單播方式向90台主機傳送同樣的培慧視頻節目。為此,需要發送90個單播,即同一個視頻分組要發送90個副本。如果視頻伺服器用多播方式向屬於同一個多播組的90個成員傳送節目。這時,視頻媛務器只需把視頻分組當作多播數據稿盯報來發送,並且只需發送一次。路由器R1在轉發分組時,需要把收到的分組復製成3個副本,分別向R2、R3和R4各轉發1個副本。當分組到達目的區域網時,由於區域網具有硬體多播功能,因此不需要復制分組,在區域網上的多播組成員都能收到這個視頻分組。
當多播組的主機數很大時(如成千上萬個),採用多播方式就可明顯地減輕網路中各種資源的消耗。在互聯網范圍的多播要靠路由器來實現,這些路由器必須增加一些能夠識別多播數據報的軟體。能夠 運行多播協議的路由器稱為多播路由器(multicast router) 。多播路由器當然也可以轉發普通的單播IP數據報。為了適應互動式音頻和視頻信息的多播,多播主幹網MBONE(Multicast Backbone On the InterNEt)可把分組傳播給地點分散但屬於一個組的許多配敬答台主機。
在互聯網上進行多播就叫做IP多播。IP多播所傳送的分組需要使用多播IP地址。如果某台主機現在接收某個特定多播組的分組,那 這個多播數據報傳送到這台主機的方式:在多播數據報的目的地址寫入多播組的標識符,然後設法讓加入到這個多播組的主機的IP地址與多播組的標識符關聯起來。
其實多播組的標識符就是IP地址中的D類地址。D類IP地址的前四位是1110,因此D類地址范圍是224.0.0.0到239.255.255.255。我們就用每一個D類地址標志一個多播組。這樣,D類地址共可標志2^28個多播組,也就是說,在同一時間可以允許有超過2.6億的多播組在互聯網上運行。多播數據報也是「盡最大努力交付」,不保證一定能夠交付多播組內的所有成員。因此, 多播數據報 和一般的IP數據報的區別就是它使用D類IP地址作為目的地址,並且 首部中的協議欄位值是2,表明使用網際組管理協議IGMP。
多播地址只能用於目的地址,而不能用於源地址。 此外,對多播數據報不產生ICMP差錯報文。因此,若在PNG命令後面鍵入多播地址,將永遠不會收到響應。
IP多播可以分為兩種。一種是只在本區域網上進行硬體多播,另一種則是在互聯網的范圍進行多播。前一種雖然比較簡單,但很重要,因為現在大部分主機都是通過區域網接入到互聯網的。在互聯網上進行多播的最後階段,還是要把多播數據報在區域網上用硬體多播交付多播組的所有成員(如圖4-53(b)所示)。
互聯網號碼指派管理局IANA擁有的乙太網 地址塊 的高24位為00-00-5E(十六進制),因此TCP/IP協議使用的乙太網多播地址塊的范圍是從00-00-5E-00-00-00到00-00-5E-FF-FF-FF。 乙太網硬體地址欄位中的第1位元組的最低位為1時即為多播地址 ,這種多播地址數佔IANA分配到的地址數的一半。因此IANA擁有的乙太網多播地址的范圍是從01-00-5E-00-00-00到01-00-5E-FF-FF-FF。不難看出,在每一個地址中,只有23位可用作多播。這只能和D類IP地址中的23位有一一對應的關系。D類IP地址可供分配的有28位,可見在這28位中的前5位不能用來構成乙太網硬體地址(圖4-54)。例如,IP多播地址224.128.64.32(即E0-80-40-20)和另一個IP多播地址224.0.64.32(即E0-00-40-20)轉換成乙太網的硬體多播地址都是01-00-5E-00-40-20。由於多播IP地址與乙太網硬體地址的映射關系不是唯一的,因此收到多播數據報的主機,還要在IP層利用軟體進行過濾,把不是本主機要接收的數據報丟棄。
D. 能從計算機網路TCP/IP協議的角度說一說
TCP/IP協議
簡單來說是單點握拿戚到單點,類似手機一樣,你要撥號,對應的手機就響,
並不是所有人都響,
中間設備,如何交換的是程式控制的問題。
那麼,2000人大群,如何各成員接收同樣的消息,這就需要軟體+服敏沖務器
軟體就如同微信,QQ等,溝通軟體,它一定要經過某伺服器,將消息上傳,再分發到各點。
==
TCP伺服器操作步驟
創建套接字socket(xxx):相當於買一個手機
綁定ip地址和埠bind(xxx):插入手機卡
將默認的主動套接字變成被動套接字(可接收數據)listen(xxx):設置手機為響鈴模式
准備接收accept(xx):等著別人的電話,准備好接聽。
recv/send接收發送數據
TCP/IP不是一個協議,而是一個協議族的統稱。裡麵包括IP協議、IMCP協議、TCP協議。
這里有幾個需要注意的知識點:
互聯網地址:也就是IP地址,一般為網路號+子網號+主機號
域名系統:通俗的來說,就是一個資料庫,可以將主機名轉換成IP地址
RFC:TCP/IP協議的標准文檔
埠號:一個邏輯號碼,IP包所帶有的標記
Socket:應用編程介面
數據鏈路層的工作特性:
為IP模塊發送和接收IP數據報
為ARP模塊發送ARP請求和接收ARP應答(ARP:地址解析協議,將IP地址轉換成MAC地段陵址)
為RARP發送RARP請求和接收RARP應答
- -
E. IP報文格式的位偏移欄位中分段長度的值為什麼是以8位元組為單位
它是由IP頭部格式中的「總長度(16bit)」和「偏移(13bit)」兩個欄位所決定的。總長度定義了IP包的最大長度為2^16=64KB,偏移說明了IP分片時它最多能表示2^13個偏移單位,鄭宏這樣偏移單位就是2^16/2^13=2^3,即為8B了。如果偏移單位不是8B,穗芹如選4B,則13bit的"偏移"就不能表示出IP的最大長度了猜叢畢,而如果選16B,只需要12bit的"偏移"就能表示出IP的最大長度了,即偏移單位小於8B時,「偏移」不能夠表示出IP的最大長,偏移單位大於8時,「偏移」不會被完全利用。以8B做為偏移單位正好合適。
我也是在網上找的
F. 區域網內相同IP為什麼會報IP沖突,求原理
首先明確一個概念,在網路中,計算機均是以IP地址為可識別標志。而最終確認是那個計算機,就是以MAC地址來區分的。這樣就要求,有個MAC地址和IP地址一一映射的關系表來指明IP地址和計算機所屬關系。我們交ARP緩存表。
區域網內相同的IP會報IP地址沖突,原理是ARP協議屬性,其中的一數局個ARP特性稱作免費ARP(gratuitousARP)。
當主機家電啟動的時候,將發送一個免費的arp請求,即請求自己的ip地址的mac地址。
此免費arp請求有兩個作用:
目前,免費ARP的作用有兩種。
第一種就是剛才上面所說的宣告廣播的作用,以告訴整個廣播域,目前這個IP所對應的MAC地址是什麼。實際它不期望有什麼人能給它回復。類似於自我聲明。
第二種是看看廣播域內有沒有別的主機使用自己的IP,如果使用了,則在界面上彈出「IP沖突」字樣。普通ARP請求報文廣播棗畢芹發送出去,廣播域內所有主機都接收到,計算機系統判斷ARP請求報文中的目的IP地址欄位,如果發現和本機的IP地址相同,則將自己的MAC地址填寫到該報文的目的MAC地址欄位,並將該報文發回給源主機。所以只要發送ARP請求的主機接收到報文,則證明廣播域內有別的主機使用和自己相同的IP地址(這里不考慮路由器的ARP代理問題)。免費ARP的報文發出去是不希凳畢望收到回應的,只希望是起宣告作用;如果收到回應,則證明對方也使用自己目前使用的IP地址。
在所有網路設備(包括計算機網卡)up的時候,都會發送這樣的免費ARP廣播,以宣告並確認有沒有沖突。
值得注意的是:lan中的路由器始終不會發現ip地址沖突的問題,每次收到該ip的arp報文之後,只是簡單的將arp表修改。因為目前的主機的實現都很文明,即當檢測到lan中有一個同ip的主機存在之後是先封閉自己而不是繼續競爭,所以一開始連接成功的主機會一直成功。
G. 計算機網路中IP數據報的片偏移計算
答案是A,偏移量的意思就是這個數據包是從源數據包哪個地方開始的,因為IP報文有40個位元組的IP報文頭,所以1300個位元組的數據會被分成以下三個包: A數據包:包含40個位元組的IP報文頭,0-460位元組的數據,偏移量為0; B數據包:包含40個位元組的IP報文頭,460-920位元組的數據,偏移量為460; C數據包:包含40個位元組的IP報文頭,920-1300位元組的數據,偏移量為920
H. 計算機網路關於IP地址的問題,會幾個都行,答得好加分
第九題:192.168.200.87是廣播地址,194.10.10.104是網路地址春仔,223.168.210.100是有效IP地址,220.100.100.154是有效IP地址,200.152.2.160是網路地址,196.123.142.190是有效IP地址;
第十題:75.32.75.15是廣播地址,205.16.35.11是有效IP地址,199.254.129.111是廣播地址,129.130.17.143是廣播地址,135.22.55.93是有效IP地址,105.33.62.213是有效IP地址;
第11題:封裝,是指將協議數據單元(PDU)封裝在一組協議頭和尾中的過程。數據要通過網路進行傳輸,要從高層一層一層的向下傳送,如果一個主機要傳送賀卜數據到別的主機,先把數據裝到一個特殊協議報頭中,這個過程叫-封裝 解封裝你可以看作是逆向過程,具體網路一搜就很多了、、
第12題:一個C類地址有256個地址,每個機房不超過30台主機,就是說最多隻要30個可用IP,2的n次方-2》=30,也就是要5個主機位,可以劃分8個子網,所以除去網路地址和廣播地址每個子網可用地址為30個。。所以得出27位網路位 5位主機位,每個機房對應的地址為:
機房 子網地址 可用IP地址范圍 廣播地址 子網掩碼
1 202.196.8.0 202.196.8.1~30 202.196.8.31 255.255.255.224
2 202.196.8.32 202.196.8.33~62 202.196.8.63 255.255.255.224
3 202.196.8.64 202.196.8.65~94 202.196.8.95 255.255.255.224
4 202.196.8.96 202.196.8.97~126 202.196.8.127 255.255.255.224
5 202.196.8.128 202.196.8.129~158 202.196.8.159 255.255.255.224
6 202.196.8.160 202.196.8.161~190 202.196.8.191 255.255.255.224
後面兩個子網用不上了:202.196.8.192/27 202.196.8.224/27
第13題:抱歉這個我也不太清楚詳細的過程:只知道用到了http協議和DNS服務
第14題:
(1)IPV6地址長度為128bit,地址空間增大了2的96次方倍;
(2)靈活的IP報文頭部格式。使用一系列固定格式的扒拍汪擴展頭部取代了IPV4中可變長度的選項欄位。IPV6中選項部分的出現方式也有所變化,使路由器可以簡單路過選項而不做任何處理,加快了報文處理速度。
(3)IPV6簡化了報文頭部格式,欄位只有7個,加快報文轉發,提高了吞吐量;
(4)提高安全性。身份認證和隱私權是IPV6的關鍵特性。
(5)支持更多的服務類型;加入了對自動配置的支持。這是對DHCP協議的改進和擴展,使得網路(尤其是區域網)的管理更加方便和快捷。
(6)允許協議繼續演變,增加新的功能,使之適應未來技術的發展。
這些特點也可以說是ipv6相對ipv4的優勢
第15題:
每台主機都會在自己的ARP緩沖區中建立一個 ARP列表,以表示IP地址和MAC地址的對應關系。當源主機需要將一個數據包要發送到目的主機時,會首先檢查自己 ARP列表中是否存在該 IP地址對應的MAC地址,如果有,就直接將數據包發送到這個MAC地址;如果沒有,就向本地網段發起一個ARP請求的廣播包,查詢此目的主機對應的MAC地址。此ARP請求數據包里包括源主機的IP地址、硬體地址、以及目的主機的IP地址。網路中所有的主機收到這個ARP請求後,會檢查數據包中的目的IP是否和自己的IP地址一致。如果不相同就忽略此數據包;如果相同,該主機首先將發送端的MAC地址和IP地址添加到自己的ARP列表中,如果ARP表中已經存在該IP的信息,則將其覆蓋,然後給源主機發送一個 ARP響應數據包,告訴對方自己是它需要查找的MAC地址;源主機收到這個ARP響應數據包後,將得到的目的主機的IP地址和MAC地址添加到自己的ARP列表中,並利用此信息開始數據的傳輸。如果源主機一直沒有收到ARP響應數據包,表示ARP查詢失敗。
第16題:(1)202.196.5.88 (2)C類地址 網路號202.196.5.0 主機號202.196.5.88 掩碼255.255.255.0 (3)網路號202.196.5.64 主機號202.196.5.88 掩碼255.255.255.192
浪費我好一段寶貴的時間~~~
I. 計算機網路TCP/IP等相關協議與原理
網路分層(由下到上):物理層、數據鏈路層、網路層、傳輸層、會話層、表示層、應用層。
重點在: 物理層、數據鏈路層(這兩層需要了解基本的原理)、網路層、傳輸層(這兩層需要了解功能作用,原理和相關的一些協議)、應用層(http協議)。
開始之前先跟大家說一下協議,很多人不知道協議是什麼,尤其是剛接觸這方面東西的時候,一聽協議,感覺很吊的樣子,但是又不知其所雲,其實,協議可以理解為:一個雙方通信需要共同遵守的規范。
記住,在網路分層協議中,所有下層的協議的作用就是為了上層服務,謹記!
接下來,我跟大家一一道來,首先登場的是物理層。
這一層主要就是跟硬體打交道,這一層也是所有上層的基礎。
數據鏈路層強調的是一種傳輸規范,這是指什麼呢?說白了,就是指每次傳輸的最大容量(最大傳輸單元),數據組織結構(乙太網幀的概念)、傳輸的目的地等。
MAC地址:燒錄在網卡ROM中的一串數字,長度48bit。
分組交換:較大數組分割為較小數組,依次發送。
原因是數據鏈路層有不定長度的最大傳輸單元。
乙太網的幀的概念:前導碼(8位元組)+本體(首部+數據+FCS)
原理:依靠MAC地址決定向哪個端發送數據,需要「轉發表」。
轉發表是交換機自動學習得到的。
作用:保證不同數據鏈路層下數據的可達性。
ARP協議(獲取MAC地址)和ICMP協議(數據發送異常通知)
作用:識別對端信息的地址。地址為32位正整數表示,分為四個部分,每個部分由8位整數組成。說白了,是識別要傳輸目的地的地址。
每位對應十進制范圍:0-255。
[注]:網路標識和主機標識是為了定址而發明。
A類:
第一位為「0」的地址,前8位為網路標識,0.0.0.0-127.0.0.0是A類IP地址的理論范圍。
B類:
前兩位為「10」的地址,前16位是網路標識,128.0.0.0-191.255.0.0,主機標識16位。
C類:
前三位為「110」的地址。前24位網路標識,192.0.0.0-223.255.255.0,主機標識為8位。
D類:
前4位為「1110」的地址。網路標識為32位,沒有主機標識。
IP地址長度僅可表達43億左右的主機數目,(區分網路標識和主機標識)共32位(一段連續的0和一段連續的1)組成,1的長度就表示網路標識的長度。
子網掩碼的作用是區分IP地址是否在同一子網內。
分組數據發送到目標地址的功能,持有路由控製表,它在路由控製表中查找目標IP地址對應的下一個路由器地址。
源主機--->網卡--->路由器1(路由器控製表)--->路由器2--->網卡--->目標主機
IP協議最大包為2的16次冪,等於65536.
接下來介紹幾個IP協議相關的協議或技術:
將域名轉化為IP地址(域名也是分層處理請求的,每一層都有對應的DNS伺服器)。
通過目標IP地址,定位下一個接收數據包的網路設備(主機或路由器)的MAC地址。
在數據鏈路層發送廣播,如果沒有ARP技術,就沒有辦法穿透中間的伺服器(ARP請求+ARP應答)。
NAT:用於將區域網中的私有地址轉換為全局IP地址的技術。
每個路由器只有一個對外的全局IP地址,如果一個內網主機都向外通訊,怎麼辦?
就要使用到NATP技術,可轉為TCP和UDP埠號。
不同的內網IP被轉換成同一個公共的IP,但是NAPT技術可以使用不同的埠加以區分。
NAT和NAPT都需要路由器內部維護一張轉換表。
舉例:TCP首次SYN時,會生成這個表,關閉連接時會發出FIN包,收到這個包應答時轉換表會被刪除。
定義:實現應用程序之間的通信。
TCP:面向有連接的協議,建立連接需要3步,關閉連接需要4步。
具備數據重傳、流量控制等功能,能正確處理丟包功能並有效利用寬頻。
UDP:比較適合做實時視頻和音頻,效率比TCP高。
TCP有5個要素:源IP地址、目標IP地址、源埠號、目標埠號、協議號,同一台機器的埠號可以區分為不同的應用程序。
校驗和=源IP地址(IP協議首部)+目標IP地址(IP協議首部)+源埠+目標埠
包長度=首部長度+數據長度
應該可以從下圖看出來,TCP的首部比UDP的首部要復雜的多,所以也一定會影響的傳輸的速度和效率。
簡單介紹一下首部的相關參數:
序列號:發送數據的位置
確認應答號:下一次應用接收到的數據的序列號
數據偏移:TCP首部的長度,單位為4位元組。
控制位:長度為8位。
窗口大小:用於表示從應答號開始能夠接受多少個8位位元組。
緊急指針:盡在URG控制位為1時有效,表示緊急數據的末尾在TCP數據部分中的位置。
接下來最重要的一個技術點來了:
以下是通俗話解釋連接和斷開過程:
建立連接的過程:
1.client:我要建立連接。
2.server:我知道你要建立連接了,我這邊沒問題。
3.client:我了解你知道我要建立連接了,開始通信吧!
結束連接的過程:
1.client:我要關閉連接了
2.server:你那邊可以關閉了
3.server:我這邊也准備關閉了
4.client:我已關閉,你可以關閉了
[注]:連接是雙方面的,所以關閉也是要自行關閉的。
數據包重發:保證ACK的值和發送方下次發送數據包的序列號相等。
接收方通過TCP首部中的控制位SYN判斷這個數據是否曾經接收過?接收過就會舍棄。
重傳超時時間(RTO)動態改變,略大於連接往返時間(RTT),RTO有自己的估算公式
定義:無需等待ACK,可以發送的最大數量。(窗口大小由接收端控制)
作用:為了解決發送數據包後,直至ACK確認返回之前,發送端都無法在進行發送的問題。
定義:接收端有緩存區數據溢出(如果窗口較大)
通俗一點的意思就是讓發送方慢一點,免得接收方接收不過來。
TCP會慢啟動演算法得出窗口的大小,對發送數據量進行控制。
發送方擁有一個擁塞窗口,對發送的數據量進行控制。
TCP協議中的窗口是指:發送方和接收方窗口中的最小值。
1.通訊開始,發送方窗口為1。每收到一個ACK確認後,擁塞窗口翻倍。
2.由於指數級增長快,很快就會出現確認包超時。
3.設置慢啟動閾值,它的值為擁塞窗口的大小的一半。
4.將擁塞窗口大小設置為1,重新進入慢啟動過程。
5.慢啟動閾值存在,當擁塞窗口大小達到閾值時,不再翻倍,而是線性增長。
6.隨窗口大小的不斷增長,可以收到三次重復的ACK,進入「快速重發」階段。
7.TCp將慢啟動閾值設置為當前擁塞窗大小的一半,再將擁塞窗口大小設成閾值大小。
8.擁塞窗口又會線性增加,直至下一次出現3次ACK或者超時。
J. TCP/IP詳解的內容簡介
大家知道,TCP/IP已成為計算機網路的事實上的標准。在關於TCP/IP的論著中,最有影響的就是兩部著作。一部是Douglas E. Comer的《用TCP/IP進行網際互連》,而另一部就是Stevens寫的這3卷書。這兩套巨著都很有名,各有其特點。無論是從事計算機網路的教師還是進行科研的技術人員,這兩套書都應大家知道,TCP/IP已成為計算機網路的事實上的標准。
而另一部就是Stevens寫的羨告這3卷書。這兩套巨著都很有名當是必讀的。
《TCP/IP詳解,卷1:協議》是一本完整而詳細的TCP/IP協議指南。描述了屬於每一層的各個協議以及它們如何在不同操作系統中運行。作者用Lawrence Berkeley實驗室的tcpmp程序來捕獲不同操作系統和TCP/IP實現之間傳輸的不同分組。對tcpmp輸出的研究可以幫助理解不同協議如何工作,主要講述TCP/IP協議方面的內容。與其他的TCP/IP書藉的最大不同在於,本書不僅僅講述了RFCS的標准協議,而且結合大量實例講述了TCP/IP協議包的定義原因及在各種不同的操作系統中(如Sunos4.1.3、Soloris2.2、AIX3.2.2)的應用與工作方式,這樣可以以動態方式講述TCP/IP的知識,使讀者可以輕松掌握TCP/IP的知啟派歲識:路由協議、定址協議、組悄睜控制協議、簡單郵件傳輸協議等。全書內容實用性強,是在校生學習TCP/IP知識的良師益友。本書適合作為計算機專業學生學習網路的教材和教師參考書。也適用於研究網路的技術人員。