首页 > 其他分享 >运输层

运输层

时间:2022-11-27 12:57:55浏览次数:28  
标签:运输 报文 TCP 发送 序号 接收 连接

运输层概述

通信的真正实体是位于通信两端的主机中的进程

为通信两端主机提供直接服务的是运输层的任务

运输层端口号、复用与分用的概念

 

UDP和TCP对比

 

 

 

TCP的流量控制

如果发送方把数据发送的过快,接收方可能来不及接收,这就会造成数据丢失

流量控制就是不让发送方的发送速率太快,要让接收方来得及接收

利用滑动窗口机制在TCP连接上实现对发送方的流量控制

举例

练习

 

TCP拥塞控制

在某时间中,对网络智能某一资源的需求超过了该资源所能提供的可用部分,网络性能就要变坏。

网络中链路容量(带宽)、交换结点中的缓存和处理机等,都是网络的资源

若出现拥塞而不进行控制,整个网络随输入负荷的增大而下降

拥塞控制算法

模拟过程

 

 弊端

快重传

快恢复

 图解

练习

TCP超时重传时间的选择

RTO计算

RTO是依照RTTs计算的,但RTT测量有可能出错

解决:报文段每重传一次,就把超时重传时间RTO增大一些。一般是将新RTO的值取为旧RTO值的2倍

TCP可靠传输的实现

基于以字节为单位的滑动窗口来传输

练习

TCP的运输连接管理——TCP的连接建立

解决以下三个问题

  1. 使TCP双方能够确知对方的存在

  2. 使TCP双方能够协商一些参数

  3. 使TCP双方能够对运输实体资源(缓存大小)等进行分配

如果采用两次握手就建立连接的话,出现问题

 不多余,防止已失效的连接请求报文段突然又传送到TCP服务器,因而导致错误。

SYN=1的报文段不能携带数据,但要消耗掉一个序号

普通的确认报文段假如不能携带数据,则不消耗序号

TCP运输连接管理——TCP的连接释放

时间等待意义

TCP报文段的首部格式

序号

 

确认号:指出期望收到对方下一个TCP报文段的数据载荷的第一个字节的序号,同时也是对之前所收到的所有数据的确认

若确认号=n,则表明到序号n-1为止的所有数据都已正确接受,期望接受序号为n

确认标志位ACK:取值为1时确认号才有效,取值为0时确认字段无效。TCP规定,在连接建立后所有传送的TCP报文段必须把ACK置1.

数据偏移:占四个比特,以4字节为单位。用来指出TCP报文段的数据载荷部分的起始处距离TCP报文段的起始处有多远

这个字段实际指出了TCP报文段的首部长度

 

窗口:16比特,字节为单位。指出发送本报文段的一方的接收窗口。

窗口值作为接收方让发送方设置其发送窗口的依据

(发送窗口还取决于拥塞窗口的大小,两者取min)

这是以接收方的接受能力来控制发送方的发送能力,成为流量控制

校验和:检查范围包括TCP报文段的首部和数据载荷两部分

计算校验和时,要在TCP报文段的前面加上12字节的伪首部

同步标志位SYN:在TCP连接建立时用来同步序号

终止标志位FIN:用来释放TCP连接

复位标志位RST:用来复位TCP连接

推送标志位PSH:接收方的TCP收到该标志位为1的报文段会尽快上交应用进程,不比等到接受缓存都填满后再向上交付

 

 

 

标签:运输,报文,TCP,发送,序号,接收,连接
From: https://www.cnblogs.com/Dengpc/p/16928233.html

相关文章

  • 案例分享:交通运输可视化
    交通是城市经济发展的动脉,与我们的日常生活息息相关。 传统交通信息管理中,只是做了粗略的信息发布以及简单的交通流量监测,早已经不能满足现代智慧交通的需求。现代的智......
  • 运输层概述
    ......
  • Luogu P1772 [ZJOI2006]物流运输
    题目链接:​​传送门​​很麻烦也很难想的一道题数据很小大胆yy详细解释在代码里#include<iostream>#include<cstdio>#include<cstring>#include<cstdlib>#include<co......
  • 计算机网络:自顶向下方法 CH3 运输层
    概述运输层为运行在不同主机上的应用进程之间提供了逻辑通信运输层协议在端系统中实现即使在底层网络协议不可靠的情况下,运输协议也能够为应用程序提供可靠的数据传输......
  • 计算机网络__ 运输层
    概述运输层在五层协议的体系结构的位置从通信和信息处理的角度看,运输层向它上面的应用层提供通信服务,它属于面向通信部分的最高层,同时也是用户功能中的最低层。当......
  • P2680 [NOIP2015 提高组] 运输计划 (树上差分-边差分)
    P2680题目的大意就是走完m条路径所需要的最短时间(边权是时间),其中我们可以把一条边的权值变成0(也就是题目所说的虫洞)。可以考虑二分答案x,找到一条边,使得所有大于x的路径......
  • 计算机网络原理(三):运输层
    运输层服务多路复用与多路分解无连接运输:UDP可靠数据传输原理面向连接的运输:TCP拥塞控制原理及TCP拥塞控制 一、运输层服务1.1运输层服务运输层协议为运行在不......
  • 做题记录整理dp15 P1772. [ZJOI2006] 物流运输(2022/9/28)
    P3648[APIO2014]序列分割第一次做斜率优化的题题解看懂了,但没有完全看懂等以后得回来看一次#include<bits/stdc++.h>#definefor1(i,a,b)for(inti=a;i<=b;i++)......
  • P1772 [ZJOI2006] 物流运输
    #include<bits/stdc++.h>usingnamespacestd;constintMAXN=1e8;classsolve{ public: intn,m,k,E; priority_queue<pair<int,int>>q; structnode{......
  • 做题记录整理dp15 P1772. [ZJOI2006] 物流运输(2022/9/28)
    P1772.[ZJOI2006]物流运输图论+dp首先看数据范围这么小,其实就可以猜到很可能是先把i到j天的最短路都求出来然后就会发现dp方程很简单了dp[i]=min(dp[j]+最短路[j+1][......