网络标识关系、Socket通信与UDP数据报首部介绍

文章目录

一、网络通信标识的关系

1.主机<->IP

2.主机<->进程

3.进程<->程序

4.端口<->socket

4.1端口

4.1.1端口号

4.2socket

4.2.1TCP的ServerSocket

4.2.1.1新socket

4.2.2UDP的DatagramSocket

4.3关系

二、UDP数据报的首部

1.源端口

2.目的端口

3.长度

3.1界限

3.1.1在传输层:

3.1.2到网络层:

3.2传递

3.2.1UDP整传

3.2.1.1传输层过大报错:

3.2.1.2IP层过大切片:

TCP流传

4.校验和


一、网络通信标识的关系

1.主机<->IP

一台主机可以有 指向同台主机多个不同IP

2.主机<->进程

一台主机上可以运行多个进程

3.进程<->程序

每个进程对应一个程序

4.端口<->socket

4.1端口

端口主机的操作系统网络层 对外暴露网络服务入口

4.1.1端口号

端口号是占2个字节 大小的 16位无符号整数 ,范围在0~65535

  • 0~1023:知名端口,行业默认预留实现HTTP、FTP、SSH知名协议功能 使用的通信端口
  • 1024~49151:注册端口
  • 49152~65535:动态/私有端口,客户端 常用 操作系统自动随机分配的临时端口源端口

4.2socket

socket是在程序里 伸入操作系统网络层 占用端口 进行通信的端点

4.2.1TCP的ServerSocket

ServerSocket绑定一个端口 调用accept 监听和接待 多个客户端来的新连接返回一个个 同时与每个客户端长期通信新socket

4.2.1.1新socket

共用ServerSocket的服务器端口 靠更完整的连接标识来区分不同的TCP连接

  1. 服务器IP
  2. 服务器端口
  3. 客户端IP
  4. 客户端端口
  5. 协议类型
4.2.2UDP的DatagramSocket

DatagramSocket绑定一个端口 没有建立与客户端的连接 直接面对不同客户端发来的数据报

4.3关系

(1)一个socket 只能在绑定一个端口

(2)一个程序里可以创建多个socket 绑定不同端口 扩多分隔的通信

  • 8080业务端口 负责业务请求
  • 9090管理端口 负责管理命令
  • 1000调试端口 负责调试、状态查询、健康检查

(3++)同台主机同种传输协议同个本地IP 才是同一个的本地端口++ 同一时刻只能被一个socket独占绑定

二、UDP数据报的首部

UDP首部固定8个字节,分成4个字段每个字段2字节

1.源端口

源数据用来让对方回复锁定

2.目的端口

3.长度

3.1界限

3.1.1在传输层:

2字节16位无符号整数数值 ,字节单位 -> 表示++整个UDP数据报的长度8~65535字节++ 之间、++UDP数据报的载荷 最大65527字节++

3.1.2到网络层:

IP包总长度最大65535字节 ,IP首部至少20字节 -> IP包里,++UDP数据报的长度 最大65515字节++ 、++UDP数据报的有效载荷 最大65507字节++

3.2传递

3.2.1UDP整传

传输层UDP面向数据报 上下发接 自带消息边界的完整消息

-> 应用层向下send的应用层数据包** 完整拼接作载荷** 、传输层向下层传输层 完整发送UDP数据报

3.2.1.1传输层过大报错:

应用层数据包超过65527 字节,导致传输层UDP拼接后的数据报 超过最大的65535 字节,系统会因为过大而报错 发不下去

3.2.1.2IP层过大切片:

应用层数据包在(65507~65527] 字节之间,在传输层UDP数据报能发下去 ,但在IP层拼接后 会超过IP包最大的65535 字节,IP包会把大IP包切成多个IP分片 传输

TCP流传

TCP面向字节流 上下接触 连续无边界字节流,由底层自动切成TCP报文段 去发接流

4.校验和

  1. UDP按照协议规定算法 对UDP首部、UDP数据、IP层伪首部 算出一个16位结果 放入校验和字段的2字节
  2. 对方再按协议相同算法 对接收数据计算校验和 检查数据在传输过程中是否损坏
相关推荐
xiaoxiangsiyan2 分钟前
HCIA 网络技术基础核心模块详解
运维·网络·网络协议·tcp/ip·运维开发·网络基础
AGCSDNl1 小时前
葛姓的来源
网络
漫路在线3 小时前
无境红日靶场五 wp
网络·安全·web安全
Sylvia33.3 小时前
从轮询到推送:足球数据API架构演进与火星数据技术拆解
java·服务器·网络·python·websocket·架构
xbakbio_z3 小时前
尿苷二磷酸氨基葡萄糖cas17479-04-8,UDP-GIcNH2/UDP-GlcN,UDP-氨基葡萄糖的化学结构
udp·糖化学·氨基葡萄糖·核苷酸糖·cas17479-04-8
2401_834636994 小时前
从零吃透 K8s 网络:ServiceIngressMetalLB 实操手册
网络·容器·kubernetes
for_ever_love__5 小时前
python基础语法学习: 变量, 输入输出, 运算符
网络·python·学习
huainingning6 小时前
RJ DHCPV6 无状态配置成功案例
网络·智能路由器
恒拓高科WorkPlus6 小时前
从“可选项”到“必选项”——私有化部署即时通讯如何重塑企业协作新底座
大数据·网络·人工智能
上海云盾商务经理杨杨7 小时前
权限绕过漏洞渗透实战!突破登录验证访问后台功能
网络·安全