第十六篇:走入计算机网络的传输层--传输层概述

1. 传输层的功能

① 分割与重组数据

一次数据传输有大小限制,传输层需要做数据分割,所以在数据送达后必然也需要做数据重组。

② 按端口号寻址

IP只能定位数据哪台主机,无法判断数据报文应该交给哪个应用,传输层给每个应用都设置了一个编号,这个编号就是端口,目的端口可以定位报文应该发给哪个应用处理。

③ 连接管理

面向连接的传输,需要对连接进行管理。

④ 差错控制和流量控制,纠错的功能

传输层要向会话层提供通信服务的可靠性,避免报文的出错、丢失、延迟时间紊乱、重复、乱序等差错。

2. 面向连接和无连接

面向连接 代表协议 TCP

面向连接就是通信双方在通信时,要事先建立一条通信线路,然后进行通信。

其过程分为三个阶段:

第一阶段是建立连接;

第二阶段是连接成功建立之后,进行数据传输;

第三阶段是在数据传输完毕后,释放连接。

无连接 代表协议 UDP

无连接是指通信双方不需要事先建立通信线路,而是把每个带有目的地址的包(报文分组)发送到线路上,由系统选定路线进行传输,不需要目标方进行回复。

3. 如何理解面向连接里面的"连接"?

面向连接就是通信双方在通信时,要事先建立一条通信线路,然后进行通信。这条通信线路并不是一条实际的路,而是我们抽象出来的一条路,简单来说就是:⽤于保证可靠性和流量控制而维护的某些状态信息称为连接也可以理解成"通信线路";这些状态信息包括Socket 、序列号和窗⼝⼤⼩等。

  1. 套接字:由 IP 地址、端⼝号以及传输层协议(TCP或UDP)组成
  2. 序列号:⽤来解决乱序问题等
  3. 窗⼝⼤⼩:⽤来做流量控制

两个套接字可以唯一确定一个"连接" 即四元组 源IP 源端口 目的IP 目的端口

相关推荐
李迟7 分钟前
在Linux服务器上使用kvm创建虚拟机
java·linux·服务器
从后端到QT14 分钟前
SRS流媒体服务器(8)源码分析之rtc/rtmp互相转码详解
运维·服务器·实时音视频
CodeWithMe16 分钟前
Nginx入门进阶:从零到高手的实战指南
运维·nginx
鹏大师运维19 分钟前
在银河麒麟V10 SP1上手动安装与配置高版本Docker的完整指南
linux·运维·docker·容器·麒麟·统信uos·中科方德
QMCY_jason23 分钟前
linux 内存占用排查 vm.nr_hugepages
linux·运维·服务器
半方白1 小时前
通过 ks.cfg 文件实现 openEuler 系统自动部署
运维·自动化运维
moppol1 小时前
容器化 vs 虚拟机:什么时候该用 Docker?什么时候必须用 VM?
运维·docker·容器
ZPC82101 小时前
ubuntu 6.8.0 安装xenomai3.3
linux·运维·ubuntu
一梦浮华2 小时前
自学嵌入式 day30 IPC:进程间通信
linux·运维·服务器
CH_Qing2 小时前
【udev】关于/dev 设备节点的生成 &udev
linux·前端·网络