第五章 运输层

第五章 运输层

主要内容:运输层协议的概念及其作用(UDP、TCP),可靠传输的工作原理、TCP可靠传输的实现,TCP的流量控制和拥塞控制方法,掌握TCP的运输连接管理机制,了解TCP的有限状态机。

运输层的作用:为相互通信的应用进程提供了逻辑通信

image-20210620102816721

(简易理解)功能:提供端到端(进程-进程)的可靠通信,即向高层用户屏蔽通信子网的细节,提供通用的传输接口。

只有位于网络边缘部分的主机的协议栈才有运输层,而网络核心部分中的路由器在转发分组时都只用到下三层的功能。

image-20210620140357910

运输层根据应用程序的不同需求,又两种不同的运输协议:面向连接的TCP无连接的UDP

image-20210620140837810

image-20210620141803350

端口

一台主机(对应一个IP地址)可以提供很多服务,比如web服务,ftp服务等等。如果只有一个IP,无法却分不同的网络服务,所以我们采用”IP+端口号”来区分不同的服务。

image-20210620144405093

image-20210620144427752

  • 在协议栈层间的抽象的协议端口是软件端口
  • 路由器或交换机上的端口是硬件端口

端口用一个 16 位端口号进行标志。

两大类端口:

image-20210620175356862

端口号只具有本地意义,即端口号只是为了标志本计算机应用层中的各进程。

image-20210620144654497

两大类端口:服务器端使用的端口号;客户端使用的端口号;

image-20210620144803850

用户数据报协议UDP

只能提供不可靠的交付;

特点:

(1) UDP 是无连接

(2) UDP 使用尽最大努力交付,

(3) UDP 是面向报文的。

(4) UDP 没有拥塞控制

(5) UDP 支持一对一、一对多、多对一和多对多的交互通信。

(6) UDP 的首部开销小

一次交付一个完整的报文。

image-20210620145122725

UDP有两个字段:数据字段和首部字段;

首部字段8个字节。

传输控制协议TCP

特点:面向字节流

image-20210620150020998

image-20210620154020208

image-20210620154111308

TCP 连接是一条虚连接而不是一条真正的物理连接。

TCP 根据对方给出的窗口值当前网络拥塞的程度来决定一个报文段应包含多少个字节(UDP 发送的报文长度是应用进程给出的)。

每一条TCP连接有两个端点,叫做套接字插口

端口号拼接到 (contcatenated with) IP 地址即构成了套接字。

image-20210620154147512

应用编程接口 API 称为 socket API, 简称为 socket。

可靠传输的工作原理:

  • 停止等待协议:“停止等待”就是每发送完一个分组就停止发送,等待对方的确认。在收到确认后再发送下一个分组。

    • 流水线传输:image-20210620154646206
  • 连续ARQ协议:发送方每收到一个确认,就把发送窗口向前滑动一个分组的位置。

    • image-20210620165244497

TCP报文的格式:

首部的最小长度是20字节,后面有4n字节是根据需要增加。

image-20210620165302387

image-20210620165324775

序号位seq

image-20210620165340238

确认号ack

image-20210620165355997

image-20210620165425998

image-20210620165438222

确认位ACK,确认号ack一同出现

image-20210620165502440

image-20210620165526107

image-20210620165536541

image-20210620165547498

image-20210620165656209

image-20210620165717551

TCP连接管理

TCP连接建立:

TCP 建立连接的过程叫做握手。

握手需要在客户和服务器之间交换三个 TCP 报文段。称之为三报文握手。

image-20210620165028440

image-20210620170940362

ack=x+1说明B希望A下次发来的报文段的第一个数据字节为序号=x+1的字节;ack=y+1说明A希望B下次发来的报文段的第一个数据字节为序号=y+1的字节。

image-20210620170952128

TCP的连接释放:

四次握手

image-20210620171717161

image-20210620171808533

TCP流量控制

A向B发送数据,连接建立时,B告诉A:我的rwnd=400(字节),设每一个报文段100B,报文段序号初始值为1.

seq为序号位

image-20210620162149457

TCP拥塞控制

image-20210620162514817

image-20210620162759712

四种算法:

image-20210620162947112

慢开始和拥塞避免:

(一开始翻倍增长,然后加一增长)

image-20210620163818483

一个传播轮次:发送了一批报文段并收到它们的确认的时间。也称为一个往返时延RTT。

快重传和快恢复:

(优化了上述算法,类似)

image-20210620164423499

考点:

掌握:

试述拥塞控制的一般原理;增加资源能解决拥塞吗?什么情况下只能

试述TCP的主要特点有哪些?TCP协议中滑动窗口的概念、大小的度量、作用。

TCP报头的组成,其固定部分有哪些字段组成,各字段的作用是什么?

简述TCP连接中套接字的概念、组成,以及各部分的作用?

TCP流量控制和拥塞控制的概念、原理、方法?TCP拥塞控制算法的4个算法,及其详细过程。

-----------p227-228页;P245-247页习题:5-22、5-23、5-26、54-37、54-38、5-39、4-30

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值