计算机网络之---传输层的功能

news/2025/1/12 6:28:45/

传输层的功能

传输层是 OSI(开放系统互联)七层模型中的第四层,位于应用层和网络层之间。传输层的主要作用是提供端到端的通信服务,确保数据在不同设备之间的可靠传输。它主要负责将来自上层(应用层)的数据拆分成较小的段,并在网络层传输的基础上,提供可靠的、完整的、无误的通信。传输层协议常见的有 TCP(传输控制协议)和 UDP(用户数据报协议)。

传输层的主要功能

  1. 端到端通信

    • 传输层通过 端口号 来标识和管理不同应用程序之间的通信。每个应用程序都通过特定的端口号来收发数据,传输层通过这些端口确保数据能准确地传输到正确的应用程序。
  2. 数据分段与重组

    • 传输层会将来自上层应用的数据划分为适合网络层传输的较小单位,称为 。每个段会添加适当的头信息,包括端口号、序列号等。当数据传输完成后,传输层会在接收方将这些段重新组装成完整的数据。
  3. 可靠性保证

    • TCP(传输控制协议) 是一个面向连接的协议,提供可靠的传输。它通过以下方式保证数据可靠性:
      • 数据重传机制:如果发送的数据包丢失或发生错误,接收方会请求重新发送。
      • 确认应答:每个接收到的数据包都会被接收方确认,发送方根据确认信息来决定是否重传数据。
      • 顺序控制:接收方根据序列号重新排列接收到的乱序数据,确保数据按正确顺序交付给上层应用。
      • 流量控制:通过滑动窗口机制控制数据的发送速率,避免发送方过快发送导致接收方溢出。
      • 拥塞控制:TCP 会根据网络的拥塞情况动态调整数据发送速率,避免网络过载。
  4. 无连接通信(UDP)

    • UDP(用户数据报协议) 是一个无连接的协议,它不保证数据的可靠传输,不进行重传、排序或流量控制等操作。它的优点是速度较快,适用于对实时性要求较高且可以容忍丢包的应用(如视频会议、在线游戏、VoIP 等)。
    • 尽管 UDP 不提供可靠性保证,但它提供了基本的端到端数据传输功能。
  5. 数据流控制

    • 传输层通过 流量控制(主要在 TCP 中实现)来避免接收方由于处理能力不足而发生数据丢失。流量控制机制的核心是通过 窗口大小 来限制发送方的数据传输量,确保接收方能够及时处理。
  6. 端口管理

    • 传输层使用端口号来区分不同的应用程序或服务。常见的端口号包括:
      • HTTP:端口 80
      • HTTPS:端口 443
      • FTP:端口 21
      • SMTP:端口 25
      • DNS:端口 53
      • Telnet:端口 23
    • 端口号确保了数据能够正确地交付到目标应用程序或服务。
  7. 差错检测

    • 传输层负责对数据进行差错检测,特别是 TCP 协议使用 校验和 来确保数据在传输过程中没有发生错误。每个 TCP 数据包都会计算并附加一个校验和,接收方会通过校验和来检测数据包是否损坏。
  8. 多路复用和解复用

    • 传输层通过 多路复用(Multiplexing)和 解复用(Demultiplexing)机制将多个应用的通信数据通过同一个网络连接进行传输。具体来说,多个应用程序的数据会通过不同的端口号进行标识和分配,确保数据能够准确地传输到相应的应用。
  9. 连接管理(仅适用于 TCP):

    • 连接建立与拆除:在 TCP 中,传输层通过三次握手(3-Way Handshake)建立连接,确保双方都已准备好数据传输。连接结束时,通过四次挥手(4-Way Handshake)来断开连接,确保数据传输已完成并且连接已安全关闭。


http://www.ppmy.cn/news/1562425.html

相关文章

spring mvc源码学习笔记之九

在前面的文章中,我们简单讲了可以用 WebApplicationInitializer 接口去替换 web.xml。 本文对这一块再做个详细讲解。 在 WebApplicationInitializer 这个接口的 javadoc 中有提到可以用继承 AbstractAnnotationConfigDispatcherServletInitializer 的方式替换实现 …

LeetCode 2765. 最长交替子数组解析与解题思路

LeetCode 2765. 最长交替子数组解析与解题思路 在本篇博客中,我们将深入解析 LeetCode 上的一道有趣题目 —— 2765. 最长交替子数组。我们将通过题目理解、解题思路、代码实现以及示例解析,全面掌握这道题目的解决方法。 题目描述 给定一个下标从 0 …

网站运营数据pv、uv、ip

想要彻底弄清楚pv uv ip的区别,首先要知道三者的定义: IP(独立IP)的定义: 即Internet Protocol,指独立IP数。24小时内相同公网IP地址只被计算一次。 PV(访问量)的定义: 即Page View,即页面浏览量或点击量,用户每次刷…

MySQL 如何实现可重复读?

文章目录 MySQL 可重复读的实现原理1. 多版本并发控制(MVCC)2. 隐藏列3. 读视图(ReadView)4. 版本链 案例说明案例 1:避免不可重复读案例 2:避免幻读 说明 MySQL 可重复读的实现原理 1. 多版本并发控制&am…

【PPTist】查找替换、绘制文本框

一、查找、替换 查找替换的组件 src/views/Editor/SearchPanel.vue 回车的时候会执行查找,查找替换功能的相关方法和属性都在 src/hooks/useSearch.ts 中。 1、查找 查找的方法也比较的朴实无华,就是 for 循环所有的幻灯片中的所有元素,通…

【20250109】Nature子刊:一种可改善帕金森患者冻结步态的柔性可穿戴机器人系统...

引言:冻结步态(FoG)是帕金森病中一种极具破坏性的步态障碍,会导致患者在行走时意外停顿。目前针对冻结步态的治疗效果有限且短暂,因此缺乏有效的治疗方法。该论文展示了一种使用机器人改善帕金森冻结步态的概念验证&am…

自然语言处理之jieba分词和TF-IDF分析

jieba分词和TF-IDF分析 目录 jieba分词和TF-IDF分析1 jieba1.1 简介1.2 终端下载1.3 基本语法 2 TF-IDF分析2.1 什么是语料库2.2 TF2.3 IDF2.4 TF-IDF2.5 函数导入2.6 方法 3 实际测试3.1 问题解析3.2 代码测试 1 jieba 1.1 简介 结巴分词(Jieba)是一个…

Web后端开发总结(day14)

Web后端开发总结 web后端开发现在基本上都是基于标准的三层架构进行开发的,在三层架构当中,Controller控制器 层负责接收请求响应数据,Service业务层负责具体的业务逻辑处理,Dao数据访问层也叫持久层, 就是用来处理数据…