UDP只在IP数据报服务之上增加了很少功能,即复用分用和差错检测功能。

UDP的主要特点

  • UDP是无连接的,减少开销和发送数据之前的时延。
  • UDP使用最大努力交付,即不保证可靠交付。
  • UDP是面向报文的,适合一次性传输少量数据的网络应用。应用层给UDP多长的报文,UDP就照样发送,即一次发一个完整的报文。
  • UDP没有拥塞控制,适合实时的网络应用。
  • UDP首部开销小,8B(TCP首部20B)

UDP首部格式

分用时,找不到对应的目的端口号,就丢弃报文,并给发送方发送ICMP“端口不可达”差错报告报文。

UDP校验

伪首部只有在计算检验和时才出现,不向下传送也不向上递交。

17:封装UDP报文的IP数据报首部协议字段是17.

UDP长度:UDP首部8B + 数据部分长度(不包括伪首部)。

UDP校验过程

在发送端:

  1. 填上伪首部
  2. 全0填充校验和字段
  3. 全0填充数据部分(UDP数据报要看成许多4B的字串接起来)
  4. 伪首部 + 首部 + 数据部分采用二进制反码求和
  5. 把和 求反码 填入检验和字段
  6. 去掉伪首部,发送

在接收端:

  1. 填上伪首部
  2. 伪首部 + 首部 + 数据部分采用二进制反码求和
  3. 结果全为1则无差错,否则丢弃数据报/交给应用层附上出差错的警告。

计算机网络 --- 传输层UDP协议相关推荐

  1. 计算机网络传输层UDP协议--龙之介计算机网络学习(3)

    概述: 其实计算机网络主要聊的就是因特网五层协议栈的那几种协议,通过对各个协议的构成,了解一个数据包(报文)是如何从网络中完成传输的作用. 这是一个系列的,主要用于自己复习计网. 计算机网络应用层–龙 ...

  2. 5.2 计算机网络之传输层UDP协议

    文章目录 1.用户数据报协议UDP概述及特点优势 2.UDP首部格式 3.当传输层从IP层收到UDP数据报时 4.UDP校验 1.用户数据报协议UDP概述及特点优势 为什么应用开发人员宁愿在UDP之上 ...

  3. 计算机网络 --- 传输层TCP协议

    TCP协议的特点 TCP是面向连接(虚连接)的传输层协议. 每一条TCP连接只能有两个端点,每一条TCP连接只能是点对点的. TCP提供可靠交付的服务,无差错.不丢失.不重复.按序到达.可靠有序,不丢 ...

  4. 网络 传输层 | UDP协议与TCP协议详解(三次握手及四次挥手、滑动窗口、拥塞控制)

    概念 传输层:是负责应用程序之间的数据传输(通过端口的描述,描述了哪两个进程间的通信):传输层的两个主要协议:UDP 和 TCP UDP协议 UDP协议全称:用户数据报协议(User Dategram ...

  5. 前端网络基础-传输层UDP协议

    UDP(User Dategram Protocol)即用户数据报协议 它也是传输层协议. 我们需要知道数据分为重要数据和不重要数据,比如你发了一封邮件,下载文件,这些都是重要数据,少了一点,可能文件 ...

  6. 【TCP/IP网络协议】(五)传输层UDP协议

    文章目录 传输层协议 一.端口 二.UDP概述 三.UDP报文 四.程序测试 传输层协议 从之前介绍的网络层协议来看,通信的两端是两台主机,IP数据报首部就标明了这两台主机的IP地址,但是从传输层来看 ...

  7. 传输层——UDP协议

    文章目录 传输层 再谈端口号 端口号划分 认识及查看知名端口号 linux下网络命令 **netstat(查看当前主机的连接情况,高频重要)** pidof(查看服务器的进程id) UDP协议 UDP ...

  8. [转](传输层)UDP协议

    目录 数据单位 特点 具体实现 要求 UDP首部格式 发送UDP请求的客户端图释 数据单位 UDP 传送的数据单位协议是 UDP 报文或用户数据报 特点 UDP 是无连接的,即发送数据之前不需要建立连 ...

  9. 计算机网络 --- 传输层

    传输层概述 传输层是只有主机才有的层次(路由器没有),为应用层提供通信服务,使用网络层的服务 传输层的功能 传输层提供进程与进程之间的逻辑通信(网络层提供主机之间的逻辑通信). 复用和分用 传输层对收 ...

最新文章

  1. Linux 下 mail、mailx 和 sendmail、postfix的区别
  2. 增强学习Q-learning分析与演示(入门)
  3. Github+Hexo搭建静态博客
  4. 1581: 统计成绩-一题简单的坑题
  5. 【ARM】Tiny4412裸板编程之LED(二)
  6. 【拆解】华为Mate Xs ,胶水用的出乎意外的少!
  7. 【离散数学】纠错码基本理论
  8. 目标检测(十一)--ConvNets目标检测概述
  9. 情感计算在淘宝UGC的应用
  10. WPF的5种绑定模式(mode)
  11. 由_exit()引起的对于缓冲区的理解
  12. W ndows7安装Hp1020,hp1020打印机驱动
  13. JAVASUNHome家政服务管理平台计算机毕业设计Mybatis+系统+数据库+调试部署
  14. 开瑞k50和k50s 导航傻瓜升级方法,其他车载导航也可以参考。
  15. 头文件注释轻松搞—VS2013
  16. (一)VirtualBox安装增强功能
  17. 几个数拼接生成最大数(java实现)
  18. ARM Mbed在线IDE编程意法半导体(ST)开发板
  19. 可转债交易薅羊毛策略 — Python 量化投资实战教程(10)
  20. 模型预处理均值、方差的理解与使用

热门文章

  1. ip打包后如何加入 xilinx_科普!插上USB设备后电脑是怎么识别的呢?
  2. java 替换多个字符串_Java一次(或以最有效的方式)替换字符串中的多个不同子字符串...
  3. python3.5和3.7可以共存吗_centos7下Python和python3共存
  4. QT事件过滤器eventFilter函数
  5. 爆款专栏《Python 黑科技》目录导航丨进度:12/50
  6. Guava入门~CharMatcher
  7. Duplicate Observed Data(复制“被监视数据”)
  8. JSTL-EL表达式 函数fn
  9. redhat6.3的linux内核版本,1-6-RHEL6.3-内核升级(Red Hat Enterprise Linux Server6.3)@树袋飘零...
  10. 给将要进入职场的同学 - 开发软件不是闭卷考试