[JavaEE] UDP协议

目录

再谈端口号

一、端口号的划分

二、UDP协议

三、UDP的特点


再谈端口号

一、端口号的划分

0-1023:知名端口号,端口号固定,其中包括HTTP,FTP,SSH等广为使用的应用层协议。

1024-65535:操作系统 动态分配的端口号,客户端程序的端口号。

1.1 ssh服务器,使用22端口

1.2 ftp服务器,使用21端口

1.3 telnet服务器,使用23端口

1.4 http服务器,使用80端口

1.5 https服务器,使用443端口

二、UDP协议

UDP协议端格式

UDP报头8个字节,没有分隔符,通过一个字段2个字节来分隔。UDP长度16比特位,2个字节,表示整个数据报(UDP首部+UDP数据)的最大长度。UDP会有一个校验和,校验和出错,就会直接丢弃。

由于传输过程中,容易受到环境的干扰,是传输的信号发生改变,所以就需要校验和来确保文件正常。UDP使用简单有效的方案,CRC校验和(循环冗余校验和)。把UDP整个数据报都进行遍历,分别取出每一个字节,往一个 两个字节的变量上进行累加,由于数据可能很多会造成溢出的现象,不过CRC校验和并不在意溢出,会继续相加,知道相加完得到一个结果。接收方在接收之后也会进行再次相加,确保传输方和接收方两者的"CRC校验和"最终的结果一样。

MD5算法也可以用于校验和,MD5算法 本质上是一个"字符串hash算法",MD5的三个特性确保了做校验和的稳定性。

一、定长:无论输入多大的数据,长度都是固定的。

二、分散:输入的内容哪怕只有一点改变,结果都会相差很大。

三、不可逆:计算MD5很简单,但是知道MD5的值,理论上反向破解不可能

三、UDP的特点

无连接:知道对端的IP和端口号就能直接进行传输,不需要建立连接。

不可靠:没有确认连接,没有重传机制,如果因为网络故障该段无法发送到对象,UDP协议层也不会给应用层返回任何错误信息。

面向数据报:不能够灵活的控制读写数据的次数和数量。

应用层交给UDP多长的报文,UDP原样发送,既不会拆分,也不会合并。

用UDP传输100个字节的数据:

如果发送端调用一次sendto,发送100个字节,那么接收端也必须调用对应的一次recvfrom,接受100个字节,而不能分开接受。

UDP使用注意事项

UDP传输最大长度是64K(包含UDP首部),如果我们传输的数据超过64K,接需要在应用层手动的分包,分多次发送,在接收端手动拼接。

基于UDP的应用层协议

NFS: ⽹络⽂件系统

TFTP: 简单⽂件传输协议

DHCP: 动态主机配置协议

BOOTP: 启动协议(⽤于⽆盘设备启动)

DNS: 域名解析协议

=========================================================================

最后如果感觉对你有帮助的话,不如给博主来个三连,博主会继续加油的ヾ(◍°∇°◍)ノ゙

相关推荐
xixixi7777738 分钟前
全模态原生大脑降临:GPT-5.5(Spud)发布,推理/编码提升30%,百万上下文+原生电脑控制,开启Agent新纪元
大数据·网络·人工智能·gpt·安全·电脑·量子计算
我爱C编程1 小时前
基于WSN无线传感器网络的定向步幻影路由算法matlab仿真
网络·matlab·无线传感器网络·wsn·定向步幻影路由
忡黑梨2 小时前
eNSP_ACL原理及应用
运维·服务器·网络·tcp/ip·github·负载均衡
摸鱼仙人~2 小时前
HTTP 状态码系统拆解
网络·网络协议·http
白晨并不是很能熬夜2 小时前
【RPC】第 1 篇:全景篇 — 一次 RPC 调用的完整旅程
java·网络·后端·网络协议·面试·rpc·java-zookeeper
189228048612 小时前
EMMC32G-M525闪存EMMC32G-T527
网络·人工智能
APIshop2 小时前
1688 跨境寻源通详情接口深度解析:从接入到实战
前端·网络·chrome
SDWAN_Cheap3 小时前
深入解析SD-WAN专线的六大核心能力:以零售连锁行业为例
网络·零售
zs宝来了3 小时前
网络篇15-网络收发包应用之iptable
开发语言·网络·php
Johnstons3 小时前
网络抓包留存平台怎么选:全量留存、按需抓包与传统镜像方案的边界、场景与判断标准
运维·服务器·网络·网络运维