計算機網絡 第五章 ——傳輸層

傳輸層的功能

爲相互通信的應用進程提供了邏輯通信。
傳輸層實現了程序到程序
網絡層實現了地址到地址
在這裏插入圖片描述
傳輸層的主要功能:
傳輸層爲應用進程之間提供端到端的邏輯通信(但網絡層是爲主機之間提供邏輯通信)
傳輸層還要對收到的報文進行差錯檢測
傳輸層提供面向連接和無連接的服務。

傳輸層的端口

在這裏插入圖片描述
在網絡層用協議號標識使用TCP/UDP
TCP 6
UDP 17
IGMP 1
在傳輸層用端口號標識區分上一層
TCP的端口
端口用一個16位端口號進行標識
端口號只具有本地意義,即端口號只是爲了標誌本計算機應用層中的各進程,。在因特網中不同計算機的相同端口號是沒有聯繫的。
在這裏插入圖片描述
端口的取值範圍是0~65535
熟知的端口0~1023
登記端口 1024~49151
客戶端口號 49152~65535

傳輸層協議UDP和TCP

在TCP/IP協議棧,傳輸層有兩個協議TCP/UDP
TCP(Transmission Control Protocol 傳輸控制)協議:
需要將要傳輸的文件分段傳輸,服務器和客戶端建立會話,能夠實現可靠傳輸,有流量控制功能。
例子:qq傳文件
UDP(User Data Protocol 用戶數據報協議)協議:
一個數據包就能夠完成數據通信,不分段,不
需要建立會話(對服務器性能要求降低),不需要流量控制,不可靠傳輸。
例子:域名解析,qq聊天,屏幕廣播,還應用於多播、廣播
發送的電子郵件用到的什麼協議?
答:用到TCP協議
用FTP下載文件用到的什麼協議?
答:TCP
查看會話 netstat -n
查看建立會話的進程 netstat -nb

UDP的主要特點

UDP是無連接的,即發送數據之前不需要建立連接。
UDP使用盡最大努力交付,即不保證可靠交付,同時也不使用擁塞控制。
UDP是面向報文的。UDP沒有擁塞限制,很適合多媒體通信的要求。
UDP支持一對一,一對多,多對多和多對一的交互通信。
UDP的首部開銷小,只有8個字節。
在這裏插入圖片描述
在這裏插入圖片描述
首部中的長度指 的是 首部長度+數據長度
爲了計算檢驗和,需要把網絡層的信息拿過來形成僞首部。

在這裏插入圖片描述

傳輸控制協議TCP概述

TCP是面向連接的傳輸層協議
每一條TCP連接只能有兩個端點(endpoint),每一條TCP連接只能是點對點的(一對一)。
TCP提供可靠交付的服務。
TCP提供全雙工通信
面向字節流

TCP的連接
TCP把連接作爲最基本的抽象
每一條TCP連接有兩個端點(ip+端口)
TCP連接的端點不是主機 ,不是主機的IP地址,不是應用進程,也不是傳輸層的協議端口。TCP連接的端點 叫做 套接字(socket)
端口號拼接到IP地址即構成了套接字。
在這裏插入圖片描述

傳輸層協議和應用層協議之間的關係

在這裏插入圖片描述
DNS協議絕大多數使用的UDP
常見的應用層協議使用的端口
http=TCP+80
HTTPS=TCP+443
RDP=TCP+3389
ftp=TCP+21
訪問共享文件夾 TCP+445
SMTP=TCP+25
POP3=TCP+110
telnet =TCP+23
SQL=TCP+1433
DNS=UDP+53
服務和應用層協議之間的關係
服務使用 TCP/UDP的端口偵聽客戶端請求。
客戶端使用IP地址定位服務器 使用目標端口 定位服務。
可以在’服務器網卡上設置只開放必要的端口,實現服務器網絡安全。
如何在windows上安裝服務

如何查看服務偵聽的端口
netstat -an
netstat -n
netstat -nb
telnet 192.168.80.100 3389 測試遠程計算機的某個端口是否打開

如何更改服務使用的默認端口
迷惑入侵者,使系統更加安全
如何設置windows網絡安全
設置本地連接,TCP/IP篩選

TCP可靠傳輸的實現

可靠:保證接收方進程從緩存區讀出的字節流與發送方發出 的字節流是完全一樣的。
TCP實現可靠傳輸的機制:
1.校驗
2.序號
3.確認
4.重傳

一個字節佔一個序號
序號字段指的是一個報文段第一個字節的序號

在這裏插入圖片描述
在這裏插入圖片描述
可靠通信的實現
使用上述的確認和重傳機制,我們就可以在不可靠的傳輸網絡上實現可靠的通信。
這種可靠傳輸協議常稱爲自動重傳請求AQR(Automatic Pepeat reQuest).
AQR表明重傳的請求是自動進行的。接收方不需要請求發送方重傳某個出錯的分組。
信道利用率
停止等待協議的優點使簡單,但缺點是信道利用率太低。
在這裏插入圖片描述
信道利用率U的公式
在這裏插入圖片描述
讓TD增加U就會增加,分母相對固定

採用流水線傳輸
在這裏插入圖片描述
就是連續不斷地發送數據包,發送方可連續發送多個分組,不必沒發完一個分組就停頓下來等待對方確認。
由於信道上一直有數據不間斷的發送,這種傳輸方式可獲得很高的信道利用率。

連續ARQ協議

在這裏插入圖片描述
說明這5個數據包是連續發送的,第一個數據包得到確認之後,就把窗口往右邊移動,然後把1丟掉,這是6進入窗口,不斷的重複。窗口內的數據包必須有確認纔可以刪除。(窗口裏面的數據可以發出去,不可以刪除)這就是使用流水線傳輸的時候使用滑動窗口技術實現可靠傳輸。

累計確認

每一個數據包都可以確認,效率不高,所以出現了累計確認。

簡單理解就是連續的數據包,末尾的進行確認說明前面的都可以不用確認了。
如果中間的3數據包丟失,則後面的4不會接收,則確認的數據包是2 之前的。則這時候會重新發送3數據包。

優點:容易實現 信道利用率高
缺點:不能像發送方反應出接收方已經正確收到的所有分組的信息。

TCP報文段首部格式

在這裏插入圖片描述
分爲兩部分:固定20字節的首部 和 可變長部分——所以TCP的首部長度是可變的 。
源端口 目的端口 各佔 2字節
序號(4字節):某個數據包第一個字節是整個文章的第幾個字節則序號就是多少。是給數據包加上的頭。
確認號指的是已經發送出去的數據包最後一個字節的後一位。告訴確認着下次該發第多少個字節了。
數據偏移
TCP首部不一定就是20個字節,可能還有其他選項,用來記錄從第幾個字節開始有數據的。
用4位二進制表示,寫成10進制最大就是15
TCP首部最長是60個字節。15*4=60
所以選項部分最多可以有40個字節
作用:告訴TCP首部有多長,首部後面的都是數據。
保留:佔6位,保留爲今後使用,但目前應置爲0 。
詳情查看該博文

TCP滑動窗口技術實現可靠傳輸

1.以字節爲單位的滑動窗口技術
在這裏插入圖片描述
A的發送窗口由B的接收窗口決定。
在這裏插入圖片描述
阿發越小越以來舊值,大就修正比較及時

在這裏插入圖片描述

TCP的流量控制

兩臺計算機傳送數據,其中一個發送太塊,另一個接收慢,則向快的發送一個數據包,告訴他慢一點或者停止,等緩存清空了然後發送數據包,可以繼續傳送。
TCP利用滑動窗口機制實現流量控制。
發送方的發送窗口取決於接收窗口rwnd和擁塞窗口cwnd的最小值。
接收方根據自己接收緩存的大小,動態的調整發送方的發送窗口大小。

防止互相等待的方法

在這裏插入圖片描述

TCP的擁塞控制

出現擁塞的條件
對需求的總和>可用資源
例如:帶寬 交換機的緩存 處理機
網絡中有許多資源同時呈現供應不足-》性能變壞-》網絡吞吐量將隨輸入負荷增大而下降。
擁塞控制:
防止過多的數據注入到網絡中(全局性)

擁塞控制四種算法

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

TCP的運輸連接管理

TCP 連接傳輸三個階段
連接建立-》數據傳送-》連接釋放
TCP連接的建立採用客戶端服務器方式,主動發起連接建立的應用進程叫做客戶端,而被動等待連接建立的應用進程叫做服務器。

TCP的連接

在這裏插入圖片描述

SYN洪泛攻擊

在這裏插入圖片描述

TCP的連接釋放

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章