计算机网络思维导图学习总结(五)

2021-12-24 11:37:37 浏览数 (1)

计算机网络

计算机网络——运输层

先概括介绍运输层协议的特点、进程之间的通信和端口等重要概念,然后讲述比较简单的UDP协议。其余的都是讨论较为复杂但非常重要的TCP协议和可靠传输的工作原理,包括停止等待协议和ARQ协议。在详细讲述TCP报文段的首部格式之后,讨论TCP的三个重要问题:滑动窗口、流量控制和拥塞控制机制。最后,介绍TCP的连接管理。

运输层是整个网络体系结构中的关键层次之一。

本章最重要的内容

  1. 运输层为相互通信的应用进程提供逻辑通信。
  2. 端口和套接字的意义。
  3. 无连接的UDP的特点。
  4. 面向连接的TCP的特点。
  5. 在不可靠的网络上实现可靠传输的工作原理,停止等待协议和ARQ协议。
  6. TCP的滑动窗口、流量控制、拥塞控制和连接管理。

思维导图

本章重要概念

  • 运输层提供应用进程间的逻辑通信,也就是说,运输层之间的通信并不是真正在两个运输层之间直接传送数据。运输层向应用层屏蔽了下面网络的细节(如网络拓个、所采用的路由选择协议等),它使应用进程看见的就是好像在两个运输层实体之间有一条端到端的逻辑通信信道。
  • 网络层为主机之间提供逻辑通信,而运输层为应用进程之间提供端到端的逻辑 通信。
  • 运输层有两个主要的协议: TCP 和UDP。它们都有复用和分用,以及检错的功能。当运输层采用面向连接的TCP协议时,尽管下面的网络是不可靠的(只提供尽最大努力服务),但这种逻辑通信信道就相当于一条全双工通信的可靠信道。当运输层采用无连接的UDP协议时,这种逻辑通信信道仍然是一条不可靠信道。
  • 运输层用一个16 位端口号来标志一个端口。端口号只具有本地意义,它只是为了标志本计算机应用层中的各个进程在和运输层交互时的层间接口。在互联网的不同计算机中,相同的端口号是没有关联的。
  • 两台计算机中的进程要互相通信,不仅要知道对方的IP地址(为了找到对方的计算机),而且还要知道对方的端口号(为了找到对方计算机中的应用进程)。
  • 运输层的端口号分为服务器端使用的端口号(0一1023 指派给熟知端口,1024~49151是登记端口号)和客户端暂时使用的端口号(49152- 65535)。
  • UDP的主要特点是: (1)无连接;(2)尽最大努力交付;(3)面向报文; (4) 无拥塞控制;(5)支持一对一、一对多、多对一和多对多的交互通信;(6) 首部开销小(只有四个字段:源端口、目的端口、 长度、 检验和)。
  • TCP的主要特点是: (1)面向连接; (2)每一条TCP连接只能是点对点的(一对一); (3) 提供可靠交付的服务; (4) 提供全双工通信; (5) 面向字节流。
  • TCP用主机的IP地址加上主机上的端口号作为TCP连接的端点。这样的端点就叫做套接字(socke) 或插口。套接字用(IP地址:端口号)来表示。
  • 停止等待协议能够在不可靠的传输网络上实现可靠的通信。每发送完一个分组就停止发送,等待对方的确认。在收到确认后再发送下- .个分组。分组需要进行编号。
  • 超时重传是指只要超过了一段时间仍然没有收到确认,就重传前面发送过的分组(认为刚才发送的分组丢失了)。因此每发送完-个分组需要设置一个超时计时器,其重传时间应比数据在分组传输的平均往返时间更长一些。这种自动重传方式常称为自动重传请求ARQ.
  • 在停止等待协议中,若接收方收到重复分组,就丢弃该分组,但同时还要发送 确认。
  • 连续ARQ协议可提高信道利用率。发送方维持一个发送窗口,凡位于发送窗口内的分组都可连续发送出去,而不需要等待对方的确认。接收方-般采用 累积确认,对按序到达的最后一个分组发送确认,表明到这个分组为止的所有分组都已正确收到了。
  • TCP报文段首部的前20个字节是固定的,后面有4N字节是根据需要而增加的选项(N是整数)。在一个TCP连接中传送的字节流中的每一个字节都按顺序编号。首部中的序号字段值则指的是本报文段所发送的数据的第一一个字 节的序号。
  • TCP首部中的确认号是期望收到对方下一个报文段的第一个数据字节的序号。若确认号为N.则表明:到序号N- 1为止的所有数据都已正确收到。
  • TCP首部中的窗口字段指出了现在允许对方发送的数据量。窗口值是经常在动态 变化着的。
  • TCP使用滑动窗口机制。发送窗口里面的序号表示允许发送的序号。发送窗口后沿的后面部分表示已发送且己收到了确认,而发送窗口前沿的前面部分表示不允许发送。发送窗口后沿的变化情况有两种可能,即不动(没有收到新的确认)和前移(收到了新的确认)。发送窗口前沿通常是不断向前移动的。
  • 流量控制就是让发送方的发送速率不要太快,要让接收方来得及接收。
  • 在某段时间,若对网络中某一资源的需求超过 了该资源所能提供的可用部分,网络的性能就要变坏。这种情况就叫做拥塞。拥塞控制就是防止过多的数据注入到网络中,这样可以使网络中的路由器或链路不致过载。
  • 流量控制是一个端到端的问题, 是接收端抑制发送 端发送数据的速率,以便使接收端来得及接收。拥塞控制是一个全局性的过程,涉及到所有的主机、所有的路由器,以及与降低网络传输性能有关的所有因素。
  • 为了进行拥塞控制,TCP的发送方要维持- 个拥塞窗口cwnd的状态变量。拥塞窗口的大小取决于网络的拥塞程度,并且动态地在变化。发送方让自己的发送窗口取为拥塞窗口和接收方的接收窗口中较小的一一个。
  • TCP的拥塞控制采用了四种算法,即慢开始、拥塞避免、快重传和快恢复。在网络层,也可以使路由器采用适当的分组丢弃策略( 如主动队列管理AQM), 以减少网络拥塞的发生。
  • 运输连接有三个阶段,即:连接建立、数据传送和连接释放
  • 主动发起TCP连接建立的应用进程叫做客户,而被动等待连接建立的应用进程叫做服务器。TCP的连接建立采用三报文握手机制。服务器要确认客户的连接请求,然后客户要对服务器的确认进行确认。
  • TCP的连接释放采用四报文握手机制。任何一方都可以在数据传送结束后发出连接释放的通知,待对方确认后就进入半关闭状态。当另一方也没有数据再发送时,则发送连接释放通知,对方确认后就完全关闭了TCP连接。

后语

厂长写博客目的初衷很简单,希望大家在学习的过程中少走弯路,多学一些东西,对自己有帮助的留下你的赞赞?或者关注➕都是对我最大的支持,你的关注和点赞给厂长每天更文的动力。

对文章其中一部分不理解,都可以评论区回复我,我们来一起讨论,共同学习,一起进步!

udp

0 人点赞