半雙工的通訊原理
半雙工通訊是指資料可以沿著兩個方向傳送,但同一時刻乙個通道只允許單方向傳送,因此又被稱為雙向交替通訊。若要改變傳輸方向,需由開關進行切換。半雙工方式要求收發兩端都有傳送裝置和接受裝置。由於這種方式要頻繁變換通道方向,故效率低,但可以節約傳輸線路。半雙工方式適用於終端到終端之間的會話通訊。
dns協議
它是用來傳送dns資料報,dns伺服器是來解析資料報的。
連線終止協議(四次揮手)
由於tcp連線是全雙工的,因此每個方向都必須單獨進行關閉。這原則是當一方完成它的資料傳送任務後就能傳送乙個fin來終止這個方向的連線。收到乙個fin只意味著這一方向上沒有資料流動,乙個tcp連線在收到乙個fin後仍能傳送資料。首先進行關閉的一方將執行主動關閉,而另一方執行被動關閉。
tcp客戶端傳送乙個fin,用來關閉客戶到伺服器的資料傳送(報文段4)。
伺服器收到這個fin,它發回乙個ack,確認序號為收到的序號加1(報文段5)。
和syn一樣,乙個fin將占用乙個序號。
伺服器關閉客戶端的連線,傳送乙個fin給客戶端(報文段6)
客戶端發回ack報文確認,並將確認序號設定為收到序號加1(報文段7)
tcp的連線建立過程(三次握手)
第一次握手:建立連線時,客戶端傳送syn包(syn=j)到伺服器,並進入syn_send狀態,等待伺服器確認;
第二次握手:伺服器收到syn包,必須確認客戶的syn(ack=j+1),同時自己也傳送乙個syn包(syn=k),即syn+ack包,此時伺服器進入syn_recv狀態;
第三次握手:客戶端收到伺服器的syn+ack包,向伺服器傳送確認包ack(ack=k+1),此包傳送完畢,客戶端和伺服器進入established狀態,完成三次握手。
流水線協議(pipelined protocols):
為了解決上面停等協議對資源的極其浪費問題引入了乙個解決方案:允許傳送方傳送多個分組而無需等待確認。
因為從傳送方向接收方傳輸的眾多分組可以被看成是填充到一條流水線中,故這種技術被稱為流水線。流水線技術可對可靠資料傳輸協議帶來如下影響:
(1)、必須增加序號範圍,因為每個傳輸的分組(不計重傳的)必須有乙個唯一的序號,而且也許有多個在傳輸中的未確認的分組;
(2)、協議的傳送方和接收方也許必須快取多個分組,傳送方最低限制應當能快取那些已傳送但沒有確認的分組,接收方也許需要快取那些已正確接收的分組;
(3)、所需序號範圍和對緩衝的需求取決於資料傳輸協議處理丟失、損壞及過度延時分組的方式等。
解決流水線的差錯恢復有兩種基本方法:回退n步(go-back-n)和選擇重傳(selective repeat,sr)。
ip分片
(1)、資料鏈路層對資料幀的長度都有乙個限制,也就是鏈路層所能承受的最大資料長度,這個值稱為最大傳輸單元,即mtu。以乙太網為例,這個值通常是1500位元組。
(2)、對於ip資料報來講,也有乙個長度,在ip包頭中,以16位來描述ip包的長度。乙個ip包,最長可能是65535位元組。
(3)、結合以上兩個概念,第乙個重要的結論就出來了,如果ip包的大小,超過了mtu值,那麼就需要分片,也就是把乙個ip包分為多個
5、nat意義
nat的主要作用,是解決ip位址數量緊缺。當大量的內部主機只能使用少量的合法的外部位址,就可以使用nat把內部位址轉化成外部位址。
nat還可以防止外部主機攻擊內部主機(或伺服器)。
網際網路傳輸層協議
儘管網際網路使用很多傳輸層協議,但是我們在本章只討論兩個,如圖3 38所示。圖3 38中給出了udp和tcp這兩個傳輸層協議與其他協議的關係,以及tcp ip協議簇的層次。這些協議位於應用層和網路層之間,是應用程式和網路操作的中間媒介。udp是不可靠的無連線傳輸層協議,由於在應用中簡單高效而被使用,...
網際網路協議
常見的應用層協議使用的埠號 http tcp 80 http協議使用的tcp協議的80埠,下同 共享資料夾 tcp 445 smtp tcp 25 pop3 tcp 110 telnet tcp 23 sql tcp 1433 dns udp 53 服務和應用層協議之間的關係 通過目標埠識別計算機相...
網際網路協議
爭取做乙個懂點網路概念且有趣的程式設計師。tcp ip是網際網路採用的協議標準,它是乙個協議系列,包含了100多個協議,用來將各種計算機和資料通訊裝置組成計算機網路,tcp和ip是最基本 最重要的兩個核心協議,因此,通常用tcp ip協議來代表整個網際網路協議系列 即tcp ip的定義 tcp ip...