安全基礎 7 TCP與UDP

2021-10-23 16:46:52 字數 1305 閱讀 6361

傳輸層是tcp/ip網路體系結構中至關重要的一層,它的主要作用就是保證端對端資料傳輸的可靠性。在ip網際網路中,傳輸控制協議(tcp)和使用者資料報協議(udp)是傳輸層最重要的兩種協議,它們為上層使用者提供不同級別的通訊可靠性。

乙個具有兩台主機和一台路由器的網際網路。由於主機需要進行端對端的通訊控制,因此主機a和主機b都需要安裝傳輸層軟體,但中間的路由器並不需要。從傳輸層的角度看,整個網際網路是乙個通訊系統,這個系統能夠接收和傳遞傳輸層的資料而不會改變和干預這些資料。

tcp可以提供面向連線的、可靠的(沒有資料重複或丟失)、全雙工的資料流傳輸服務。它允許兩個應用程式建立乙個連線,然後傳送資料並終止連線。每一tcp連線可靠地建立與關閉,保證資料在連線關閉之前被可靠地投遞到目的地。

在通訊系統中,資料的丟失可能是經常發生的。通常傳送方利用重發技術補償資料報的丟失,當然,這種技術需要通訊雙發的共同參與。

為確保連線建立和終止的可靠性,tcp使用了三次握手法。所謂三次握手法就是在連線建立和終止過程中通訊的雙方需要交換三個報文。可以證明,在資料報丟失、重複和延遲的情況下,三次握手法是保證連線無二義性的充要條件。

tcp連線的正常建立過程:

在應用程式利用tcp協議傳輸資料之前,首先需要建立一條到達目的主機的tcp連線。tcp協議將乙個tcp連線兩端的端點叫做埠。

在tcp的所有埠中,有些埠被指派給一些常用的應用程式,這些預設埠在編寫其他應用程式時應盡量避免使用。

使用者資料報協議udp提供了面向非連線的、不可靠的傳輸服務。

udp既不使用確認資訊對資料的到達進行確認,也不對收到的資料進行排序。因此利用udp協議傳送的資料有可能會岀現丟失、重複或亂序現象。

udp協議的最大優點是執行的高效性和實現的簡單性。

注:

53埠,網域名稱伺服器,dns

dns在進行區域傳輸的時候使用tcp協議,其它時候則使用udp協議。

基礎篇 TCP與UDP

import socket def main 主函式 udp 資料的接收和傳送 1.初始化socket socket udp socket.socket socket.af inet,socket.sock dgram 2.資料的傳送 socket udp.sendto 資料傳送成功啦 encode...

高效能網路程式設計7 tcp連線的記憶體使用

視窗通知 傳送端維護傳送視窗大小 不在包中傳輸 接收端在ack中告知接收視窗大小 傳送視窗初始是傳送緩衝區大小,接收視窗初始是接收緩衝區大小 緩衝區決定視窗的最大值 傳送視窗一般包括3個部分,從左到右 已傳送但未收到ack的資料 可以立即傳送的資料 空閒空間 接收視窗就是接收緩衝區還剩多少空間,接收...

網路基礎 TCP與UDP之間的區別

tcp與udp區別1 tcp面向連線 如打 要先撥號建立連線 udp是無連線的,即傳送資料之前不需要建立連線 2 tcp提供可靠的服務。也就是說,通過tcp連線傳送的資料,無差錯,不丟失,不重複,且按序到達 udp盡最大努力交付,即不保證可靠交付 tcp通過校驗和,重傳控制,序號標識,滑動視窗 確認...