网络标识关系、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. 对方再按协议相同算法 对接收数据计算校验和 检查数据在传输过程中是否损坏
相关推荐
哼?~5 小时前
NAT、代理服务、内网穿透
网络
上海云盾-小余8 小时前
内网边界安全管控:访问权限隔离与入侵阻断方案
网络·安全·web安全
南京码讯光电技术有限公司8 小时前
工业无线AP选型指南:从WiFi 5到WiFi 6+5G CPE,如何构建全覆盖、零漫游、高可靠的智能工厂网络?
服务器·网络·5g
优橙教育9 小时前
5G网络优化关键参数解读:从入门到实战
网络·学习·5g
zt1985q10 小时前
本地部署网页监控工具 Webmonitor 并实现外部访问
运维·服务器·网络·网络协议
dog25011 小时前
为何新增网络路径反而引入额外时延
服务器·网络·php
w1wi11 小时前
CRA 差距分析完全指南 | 合规落地第一步
网络·人工智能·安全
缪懿11 小时前
应用层中的UDP协议原理
网络·网络协议·udp·javaee
hbugs00112 小时前
EVE-NG桥接外网的5种方式
开发语言·网络·php·eve-ng·rstp·流量洞察
QuestLab12 小时前
③-进阶篇:vLLM实战——多卡部署、压测与排障
linux·服务器·网络