網路基礎 UDP TCP協議

2021-08-19 23:28:43 字數 1703 閱讀 2763

tcp (transmission control protocol)和udp(user datagram protocol)協議屬於

傳輸層協議。其中tcp提供ip環境下的資料

可靠傳輸

,它提供的服務包括

資料流傳送、可靠性、有效流控、全雙工操作和多路復用。通過面向連線、端到端和可靠的

資料報傳送。通俗說,它是事先為所傳送的資料開闢出連線好的通道,然後再進行資料傳送;而udp則不為ip提供可靠性、流控或差錯恢復功能。一般來說,tcp對應的是可靠性要求高的應用,而udp對應的則是可靠性要求低、傳輸經濟的應用。

「面向連線」就是在正式通訊前必須要與對方建立起連線。比如你給別人打**,必須等線路接通了、對方拿起話筒才能相互通話。

tcp(transmission control protocol,傳輸控制協議)是基於連線的協議,也就是說,在正式收發資料前,必須和對方建立可靠的連線。乙個tcp連線必須要經過三次「對話」才能建立起來,其中的過程非常複雜,我們這裡只做簡單、形象的介紹,你只要做到能夠理解這個過程即可。

我們來看看這三次對話的簡單過程:主機a向主機b發出連線請求資料報:「我想給你發資料,可以嗎?」,這是第一次對話;主機b向主機a傳送同意連線和要求同步(同步就是兩台主機乙個在傳送,乙個在接收,協調工作)的資料報:「可以,你什麼時候發?」,這是第二次對話;主機a再發出乙個資料報確認主機b的要求同步:「我現在就發,你接著吧!」,這是第三次對話。三次「對話」的目的是使資料報的傳送和接收同步,經過三次「對話」之後,主機a才向主機b正式傳送資料。

「面向非連線」就是在正式通訊前不必與對方先建立連線,不管對方狀態就直接傳送。與手機簡訊非常相似:你在發簡訊的時候,只需要輸入對方手機號就ok了。

udp(user data protocol,使用者資料報協議)是與tcp相對應的協議。它是面向非連線的協議,它不與對方建立連線,而是直接就把資料報傳送過去!

udp適用於一次只傳送少量資料、對可靠性要求不高的應用環境。比如,我們經常使用「ping」命令來測試兩台主機之間tcp/ip通訊是否正常,其實「ping」命令的原理就是向對方主機傳送icmp資料報,然後對方主機確認收到資料報,如果資料報是否到達的訊息及時反饋回來,那麼網路就是通的。

tcp的優點:

可靠,穩定 tcp的可靠體現在tcp在傳遞資料之前,會有三次握手來建立連線,而且在資料傳遞時,有確認、視窗、重傳、擁塞控制機制,在資料傳完後,還會斷開連線用來節約系統資源。 

tcp的缺點:

慢,效率低,占用系統資源高,易被攻擊 tcp在傳遞資料之前,要先建連線,這會消耗時間,而且在資料傳遞時,確認機制、重傳機制、擁塞控制機制等都會消耗大量的時間,而且要在每台裝置上維護所有的傳輸連線,事實上,每個連線都會占用系統的cpu、記憶體等硬體資源。 而且,因為tcp有確認機制、三次握手機制,這些也導致tcp容易被人利用,實現dos、ddos、cc等攻擊。

udp的優點:

快,比tcp稍安全 udp沒有tcp的握手、確認、視窗、重傳、擁塞控制等機制,udp是乙個無狀態的傳輸協議,所以它在傳遞資料時非常快。沒有tcp的這些機制,udp較tcp被攻擊者利用的漏洞就要少一些。但udp也是無法避免攻擊的,比如:udp flood攻擊…… 

udp的缺點:

不可靠,不穩定 因為udp沒有tcp那些可靠的機制,在資料傳遞時,如果網路質量不好,就會很容易丟包。

tcp與udp區別總結:

傳輸層(udp tcp協議)

1.傳輸層 把資料報轉換為資料段,為資料提供可靠或不可靠的傳輸 為應用程式提供端到端的服務。1 可靠指tcp協議 不可靠指的是udp協議。2 端是指埠 後門 netstat an 檢視本地開放的埠號和tcp的狀態資訊 協議 本地位址 外部位址 狀態 tcp 0.0.0.0 135 0.0.0.0 0...

UDP TCP網路程式設計

建立udp網路程式流程 import socket 建立乙個udp的socket連線 udp socket socket.socket socket.af inet,socket.sock dgram 獲取使用者的輸入內容 data input 請輸入內容 準備接收方的位址和埠號 addr 127....

網路協議基礎

1.什麼是網際網路協議及為何要有網際網路協議 網際網路的本質就是一系列網路協議,網際網路協議就是讓孤立的計算機能夠互相溝通聯絡。英語成為世界上所有人通訊的統一標準,如果把計算機看成分布於世界各地的人,那麼連線兩台計算機之間的internet實際上就是一系列統一的標準,這些標準稱之為網際網路協議,網際...