UDP的首部格式如下:

(1) 源端口,源端口号。在需要对方回信时选用。不需要时可用全0。

⑵目的端口,目的端口号。这在终点交付报文时必须使用。

⑶长度,UDP用户数据报的长度,其最小值是8(仅有首部)。

⑷检验和,检测UDP用户数据报在传输中是否有错。有错就丢弃。

UDP特点:

⑴无连接

⑵尽最大努力交付

⑶面向报文

⑷无拥塞控制

⑸支持一对一,一对多,多对多的交互通信

⑹首部开销小

UDP复用:共用一个网络层协议,把收到的UDP数据报组装成不同的IP数据报发送到互联网。

UDP分用:提取数据部分,根据首部中的目的端口号,分别传送到相应端口。

补充UDP与TCP的区别

用户数据报协议UDP的更多相关文章

  1. 运输层2——用户数据报协议UDP

    目录 1. UDP概述 2. UDP首部格式 3. UDP首部检验和计算方法 写在前面:本文章是针对<计算机网络第七版>的学习笔记 运输层1--运输层协议概述 运输层2--用户数据报协议U ...

  2. 《TCP/IP详解卷1:协议》第11章 UDP:用户数据报协议-读书笔记

    章节回顾: <TCP/IP详解卷1:协议>第1章 概述-读书笔记 <TCP/IP详解卷1:协议>第2章 链路层-读书笔记 <TCP/IP详解卷1:协议>第3章 IP ...

  3. 【RL-TCPnet网络教程】第16章 UDP用户数据报协议基础知识

    第16章      UDP用户数据报协议基础知识 本章节为大家讲解UDP(User Datagram Protocol,用户数据报协议),需要大家对UDP有个基础的认识,方便后面章节UDP实战操作. ...

  4. udp用户数据报协议

    UDP 是User Datagram Protocol的简称, 中文名是用户数据报协议,是OSI(Open System Interconnection,开放式系统互联) 参考模型中一种无连接的传输层 ...

  5. 《TCP/IP具体解释卷2:实现》笔记--UDP:用户数据报协议

    用户数据报协议.即UDP,是一个面向数据报的简单运输层协议:进程的每次输出操作仅仅产生一个UDP数据报,从而发送 一个IP数据报. 进程通过创建一个Internet域内的SOCK_DGRAM类型的插口 ...

  6. 【TCP/IP详解 卷一:协议】第十一章 UDP 用户数据报协议

    11.1 引言 UDP 是一个简单的 面向数据报 的运输层协议:进程的每个 输出操作 都正好产生一个 UDP数据报,并且组装成一份待发送的IP数据报. 这与 TCP 不一样,它是 面向流字符 的协议, ...

  7. TCP/IP详解学习笔记(8)-- UDP:用户数据报协议

    1.UDP概述 UDP是一种无连接的, 即发送数据前不需要建立连接,因此减小的开销和发送数据的延迟. UDP使用尽最大努力交付,即不保证可靠交付,因此主机不需要维持复杂的连接状态表. UDP是面向报文 ...

  8. 《TCP/IP 详解 卷1:协议》第 10 章:用户数据报协议

    引言 UDP 稍微扩展了IP协议,使得包可以在进程间传送,而不仅仅是在主机件.--<CSAPP> IP 数据报是指 IP 层端到端的传输单元.分组(packet)是 IP 层和链路层的传输 ...

  9. UDP:用户数据报协议

    UDP是一个简单的面向数据报的运输层协议:进程的每个输出操作都正好产生一个UDP数据报,并组装成一份待发送的IP数据报.这与面向流字符的协议不同,如TCP,应用程序产生的全体数据与真正发送的单个IP数 ...

  10. TCP/IP详解 卷一(第十一章 UDP:用户数据报协议)

    UDP是一个简单的面向数据报的运输层协议. UDP不提供可靠性:它把应用程序传给IP层的数据发送出去,但是并不保证它们能到达目的地. UDP首部的个字段如下图所示

随机推荐

  1. 浅析MySQL 8.0直方图原理

    本文分享自华为云社区<[MySQL技术专栏]MySQL8.0直方图介绍>,作者:GaussDB 数据库. 背景 数据库查询优化器负责将SQL查询转换为尽可能高效的执行计划,但因为数据环境不 ...

  2. centos7下启动Django项目报错(sqlite错误)

    报错内容如下: [root@localhost project]# python3 manage.py runserver Watching for file changes with StatRel ...

  3. 一个简单demo展示接口请求超时处理

    package main import ( "context" "errors" "fmt" "time" ) type ...

  4. Hangfire 使用笔记 任务可以分离到别的项目中,无需重复部署Hangfire,通过API方式通信。

    "巨人们"的地址 Hangfire Mysql: https://github.com/arnoldasgudas/Hangfire.MySqlStorage 在获取set表数据的 ...

  5. 安装、学习protobuf

    Protobuf是什么? 类似于json的一种数据格式,独立于语言,而且是二进制方式,所以比json更快,而且还可以直接存储一些图.树 序列化和反序列化 持久化(存到磁盘硬盘)领域中,数据存到磁盘叫序 ...

  6. 改变函数中的this指向

      // 改变函数的this指向         // 先记住一句话 : 箭头函数不能改变this指向         // 语法1: call() 方法         //        在调用函 ...

  7. kettle从入门到精通 第六十四课 ETL之kettle kettle中执行SQL脚本步骤,使用需当心

    1.群里有不定时会有同学反馈执行SQL脚本步骤使用有问题,那么咱们今天一起来学习下该步骤.trans中的执行SQL脚本有两方面功能,使用时需小心,不然很容易踩坑. 官方定义: 翻译: 您可以使用此步骤 ...

  8. for while 要求选慢速的,但是for不卡,while 跟 递归 这两个容易卡

    for比while慢,但是for不卡,while跟递归容易卡 int index = 0; bool jump=flase: for( index;index==0;;)/*这个空分号算一个语句*/ ...

  9. vue判断开始日期不能大于截至日期

    method下的方法: checkTime() { var start = new Date(this.form.startDate).getTime() var end = new Date(thi ...

  10. springboot之日志配置-logback

    springboot之日志配置-logback 1.为什么使用logback logback是springboot默认集成的,是基于Sl4J的日志框架. logback的内核重写了,使得在某些关键路径 ...