IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> TCP/IP/UDP/RTP/RTCP协议 -> 正文阅读

[网络协议]TCP/IP/UDP/RTP/RTCP协议

IP(指定目的地址和源地址)

在这里插入图片描述

Version 版本号 四个字节
IHL:IP Header Length IP头长度
Total Length 总的长度 (总的长度减去IP头长度=数据长度)
Identification Flags Fragment Offset 拆包、组包用(超过最大传输单元时)
标识 允许/不运行拆包(一个保留字节) 每个包在原来中的偏移量
Time To Live 缩写TTL 路由的跳数(一般设置成32)
Protocol 协议的类型:TCP UDP
Header Checksum 整个的校验和 从一个路由到另一个路由有没有发送变化,比如被篡改
Source Address 源地址
Destination Address 目的地址
Options 实际需求选项
Padding 用于填充,保证32位

相关定义

MTU

最大传输单元,是指网上可传输数据的最大尺寸
可通过ICMP查询最大传输单元。它通过设置IP层的DF(Don‘t Fragment)不分片位,比如将这一
比特置1,IP层将不对数据报进行分片
获取MTU的好处是传输过程中不拆包,提高传输效率。以太网MTU默认是1500B

TCP(指定端口号)

在这里插入图片描述

第四行:MAC Header 帧头 MAC Ender 帧尾 中间的是以太网帧的数据
第三行:IP头 数据
第二行:TCP/UDP头 数据

在这里插入图片描述

Source Port 源端口
Destination 目的端口 用于确定某个具体应用程序
Sequence Number 保证有序 编号 接受后有序排序(按字节为单位编号)
Acknowledgment Number 保证可靠 一个主机向另一个主机发一个包,它来收发应答。
Data offset 数据 因为Options是动态变化,所以数据从哪里开始,用它指定
Reserved 保留字
URG 紧急数据标识
ACK 目的主机收到包后发送的确认消息 置1
PSH 发送的主机 置1
RST 复位标记 比如对80端口发送消息,对方该端口没有开通,就会收到这个标记
SYN 三次握手中用 每次握手都置1
FIN 四次挥手中使用 每次置1 断开连接
window 发送数据包的一个滑动窗口 用于增加发送数据包的吞吐量
Checksum 校验和
Urgent Pointer 紧急指针
Options 选项 比如传输最大报文是多少
padding 保证32位对齐
data 数据

Seq Number具体含义

在TCP,数据不是按包排序的,而是按字节排。每个包的Seq Number代表的是发送字节的起始序号
发送的第一个包的初始序号是随机的,在创建连接的三次握手过程中交换。

Ack Number

希望对方下一个发送包从什么位置开始。
比如发送的四个包都收到了,只需要回第四个包的ack就可以了。

TCP 三次握手

在这里插入图片描述

TCP四次挥手

在这里插入图片描述

TCP ACK机制

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

TCP滑动窗口

在这里插入图片描述
在这里插入图片描述

UDP与RTP

在这里插入图片描述
在这里插入图片描述

RTP是上层协议(实时传输协议),可用于TCP上,也可用于UDP上。主要用于UDP上
就是对UDP进行模拟的TCP管理。关键字段Sequence number(以包为单位)
timestamp 时间戳 如果数据一次传不开 多个包同一源,同一时刻只能有一个包 除非timestamp有差别
SSRC 每一个信源(比如麦克风,电脑声音)都有一个唯一标识
CSRC 共享源,比如混音,将他们混合成一个信源发送出去
PT 类型 音频都音频的数据类型,视频有视频的数据类型
M 标记,对于视频,一个帧的最后一个包 它会置1
CC CSRC的个数

总结:通过seq number可以排序包,通过samestap可以判断包是否属于同一帧

RTCP

就是RTP的控制协议 (丢了多少包,来了多少包)

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-08-05 17:42:25  更:2021-08-05 17:43:58 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/4 10:43:36-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码