【计算机网络笔记】传输层——UDP简介

news/2024/5/18 14:00:53 标签: 计算机网络, 笔记, udp, 网络协议, 网络

系列文章目录

什么是网络>计算机网络
什么是网络协议>网络协议?
网络>计算机网络的结构
数据交换之电路交换
数据交换之报文交换和分组交换
分组交换 vs 电路交换
网络>计算机网络性能(1)——速率、带宽、延迟
网络>计算机网络性能(2)——时延带宽积、丢包率、吞吐量/率
网络>计算机网络体系结构概念
OSI参考模型基本概念
OSI参考模型中非端-端层(物理层、数据链路层、网络层)功能介绍
OSI参考模型中端-端层(传输层、会话层、表示层、应用层)功能介绍
TCP/IP参考模型基本概念,包括五层参考模型
网络应用的体系结构
网络应用进程通信
网络应用对传输服务的需求
Web应用之HTTP协议(涉及HTTP连接类型和HTTP消息格式)
Cookie技术
Web缓存/代理服务器技术
传输层服务概述、传输层 vs. 网络
传输层——多路复用和多路分用


  • 系列文章目录
  • UDP
  • UDP存在的价值是什么?
  • UDP校验和(checksum)


UDP

UDP即User Datagram Protocol (RFC 768)

  • 基于Internet IP协议

    • 实现多路复用/分用
    • 实现简单的错误校验机制
  • 遵循 “尽力而为 ”的服务模型,所以UDP段可能会丢失、非按序到达

  • 无连接

    • UDP发送方和接收方之间不需要握手(建立连接)
    • 每个UDP段的处理独立于其他段

UDP存在的价值是什么?

  • 无需建立连接 (减少延迟)
  • 实现简单,无需维护连接状态
  • 头部开销少
  • 上层应用可以更好的控制发送时间和速率,因为没有拥塞控制

UDP常用于:

  • 流媒体应用。这类应用的特点是能够容忍数据丢失,但对速率敏感
  • UDP还用于DNS和SNMP

我们仍然可以在UDP上实现可靠数据传输,只不过需要应用开发人员在应用层增加可靠性机制。


UDP校验和(checksum)

目的:检测UDP段在传输中是否发生错误(如位翻转)。

实现:

  • 发送方计算校验和,然后填充到报文段中。

    • 将段的内容视为16-bit整数
    • 校验和计算:计算所有整数的和 ,进位加在和的后面,将得到的值按位求反,得到校验和
    • 将校验和填充到校验和字段
  • 接收方

    • 计算所收到段的校验和
    • 将其与校验和字段进行对比。若不相等则数据在传输的过程中出现错误了,若相等则没有检测出错误(但仍然有可能发生错误)

有些错误能够检测出来,有的则检测不出来,检测不出来不代表没有错误。

在这里插入图片描述


http://www.niftyadmin.cn/n/5137427.html

相关文章

Elasticsearch-8.10.4安装

1.官网下载 https://www.elastic.co/cn/downloads/elasticsearch#ga-release 下载的是Linux x86_64 包名为elasticsearch-8.10.4-linux-x86_64.tar.gz 2.服务器解压 tar -xvf elasticsearch-8.10.4-linux-x86_64.tar.gz 3.修改配置 编辑配置文件config/elasticsearch.y…

C#,数值计算——分类与推理Svmpolykernel的计算方法与源程序

1 文本格式 using System; namespace Legalsoft.Truffer { public class Svmpolykernel : Svmgenkernel { public int n { get; set; } public double a { get; set; } public double b { get; set; } public double d { get; set; …

JVM与Java体系结构

目录 一、Java虚拟机整体架构祥图 二、Java代码执行过程详图 三、汇编语言、机器语言、高级语言关系 四、JVM的架构模型 五、JVM的生命周期 (一)虚拟机的启动 (二)虚拟机的执行 (三)虚拟机的退出 …

[C++]命名空间等——喵喵要吃C嘎嘎

希望你开心,希望你健康,希望你幸福,希望你点赞! 最后的最后,关注喵,关注喵,关注喵,大大会看到更多有趣的博客哦!!! 喵喵喵,你对我真的…

Python 秘密武器:神奇的协程与生成器

一、概况 生活中,我们常常需要同时处理多个任务,比如吃饭时看手机,边听音乐边写作业。在编程世界里,我们也需要处理类似的问题。今天,就让我们走进 Python 协程和生成器的奇妙世界,看看它们如何帮助我们实…

百度富文本上传图片后样式崩塌

🔥博客主页: 破浪前进 🔖系列专栏: Vue、React、PHP ❤️感谢大家点赞👍收藏⭐评论✍️ 问题描述:上传图片后,图片会变得很大,当点击的时候更是会顶开整个的容器的高跟宽 原因&#…

第十章 ObjectScript 系统宏(一)

文章目录 第十章 ObjectScript 系统宏(一) 使这些宏可访问宏引用ADDSC (sc1, sc2)EMBEDSC(sc1, sc2)ERROR(errorcode, arg1, arg2, ...)FormatMessage(language,domain,id,default,arg1,arg2,...) 第十章 ObjectScript 系统宏(一)…

【Python第三方包】串口通信(pySerial包)

文章目录 前言一、串口的基本使用1.1 配置串口基本信息1.2 读取串口数据1.3 写串口1.4 关闭串口二、示例代码2.1 示例1: 从串口读取数据2.2 示例2: 向串口写入数据总结前言 串口通信是许多嵌入式和物联网应用中的关键组成部分。Python 提供了许多第三方库来简化串口通信的实现…