几个的常见基础协议类型数据格式以及协议内容简介

article/2025/9/27 2:00:09

给大家简单梳理一下几种学习中常会出现的协议格式,咋们数通就像交通,各种各样的协议规则来规范大家,制定科学的管理手段来帮助大家快速,安全的到家。

一、 HDLC协议

HDLC叫高级链路控制协议(High Level Data Link Control)。该协议一般广泛用于公用数据网,支持全半双工模式,一种同步传输数据,面向比特的数据链路层协议。

HDLC数据帧结构

Falg字段

Address字段

Control字段

信息info字段

FCS字段

Falg字段

1、 Flag字段HDLC用一种特殊的位模式01111110用以标志帧的开始与结束,也可以作为帧与帧之间的填充字符发送的数据比特序列一旦发现0有连着的5个1,则在第七位插入0

2、 Address字段:用于表示从站的地址,用在点对多点的链路中,通常地址是8位长,也可以采用更长的地址段,需是8的整数倍。用于描述数据帧是属于单播、组播、广播帧。

3、 Control字段:用于构成各种命令及响应,以便对链路进行监视与控制。发送方利用控制字段来通知接收方来执行约定的操作;相反,接收方用该字段作为对命令的响应,报告已经完成的操作或状态的变化。

3.1 信息帧用于传送有效信息或数据,简称为I帧

3.2 监控帧用于差错控制和流量控制,简称S帧(监控帧中不能有Information字段)

3.3 无编号帧用于提供对链路的建立、拆除以及多种控制功能,简称U帧

  1. Information字段:可以包含任意长度的二进制数,其上限由FCS字段或通讯节点的缓存容量来决定,目前用得较多的是1000-2000比特,而下限可以是0,即无信息字段。
  2. FCS字段:可以使用16位CRC对两个标志字段之间的内容进行校验

二、 IPV4 协议

网际协议版本4Internet Protocol version 4IPv4)是一种无连接的协议,操作在使用分组交换的链路层(如以太网)上。此协议会尽最大努力交付数据包,意即它不保证任何数据包均能送达目的地,也不保证所有数据包均按照正确的顺序无重复地到达。这些方面是由上层的传输协议(如传输控制协议)处理的

IPV4数据报格式

版本号:占 4 比特,指 IP 协议的版本,目前广泛使用 IPv4。

首部长度(IHL):IP 头长度,占 4 比特,最大值 15 个单位(1 个单位 4 字节)。

服务类型(TOS)该字段包括一个 3 比特的优先级子字段(现在已废弃不用),还包括一个 4 比特的 ToS子字段,最后 1 比特必须置 0。ToS 中的 4 比特分别代表:最小时延(D)、最大吞吐率(T)、最高可靠性(R和最小费用(C),只能有 1 比特置 1。如果所有 4 比特均为 0,那就是一般服务。

总长度总长度指首部和数据之和的长度,单位为字节。总长度字段为16位,因此数据报的最大长度为2^16-1=65535字节。

标识符:由主机指定同样的标识符。当原主机对数据分段时,对同一上层协议数据单元划分出的各

个数据报指定同样的标识符,目标主机上层协议用这个字段进行重装配。

标志:包括三个标志位。一个标志位没有使用;M 标志用于分段和重装配;D 标志为禁止分段标志。

片偏移其表示较长分组分片后,某一片在原分组中的相对位置,也就是说相对于用户数据字段的起点,该片从何处开始。这也就是说,除了最后一个分片,每个分片的长度一定是8字节的整数倍

生存时间(TTL):用经过的路由器个数表示,源站设置一个数(32 或 64),每经过一个路由器减 1。如果某个路由器发现 TTL 字段为 0,则丢弃该数据报,不再转发。

协议:上层协议(TCP 或 UDP)

首部验和:对 IP 头的检验序列。

源目地址:各占32位。

数据部分可变长,包含发送者想要发送的控制数据

三、 ICMP 协议

ICMP(Internet Control Message Protocol)因特网控制报文协议;是一种面向无连接的协议,工作第三层封装在 IP 数据报中传输,传送有关网络层通信问题的信息。ICMP 常见应用有:1. 报告访问失效报告源主机网络不可达);2. 报告网络拥塞发送源抑制报文给源主机,降低发送速率);3. 帮助排错(利用 ICMP 回声功能,ping 工具);4. 声明报文超时TraceRoute 工具,利用较小的 TTL 值发现中间设备)。

ICMP 报文格式

类型:8位,用来表类型;

代码:一个8位代码域,表示指定类型中的一个功能,如果一个类型中只有一种功能,代码域置为 0;

检验和:数据包中 ICMP 部分上的一个16位检验和;

ICMP数据部分:包含了所有接受到的数据报的IP报头,还包含IP数据报中前8个字节的数据。

四、TCP

传输控制协议(TCP,Transmission Control Protocol)面向连接,可靠(三次握手机制),基于字节流的传输层协议,。

TCP 报文格式

TCP报文由首部和数据两部分组成。首部一般由20-60字节(Byte)构成,长度可变。其中前20B格式固定,后40B为可选。因为,TCP报文还得传给下层网络层,封装成IP包,而一个IP包最大长度为65535,同时IP包首部也包含最少20B,所以一个IP包或TCP包可以包含的数据部分最大长度为65535-20-20=65495B。

TCP报文中数据部分是可选的,即TCP报文可以不包含数据(同理IP包也可以不包含数据)。不含数据的TCP报文通常是一些确认和控制信息类的报文,如TCP建立连接时的三次握手和TCP终止时的四次挥手等。

1、源目的端口号长度为16位,发送和接收放的端口号

3、序号也称为序列号,长度为32位,序号用来标识从TCP发送端向接入端发送的数据字节流进行编号,可以理解成对字节流的计数。

4、确认号长度为32位,确认号包含发送确认的一端所期望收到的下一个序号。确认号只有在ACK标志为1时才有效。

5、数据偏移位(首部长度):占4位用于表示TCP报文首部的长度。它指出TCP报文段的数据起始处距离TCP报文段的起始处有多远。这个字段实际上是指出TCP报文段的首部长度。

6、保留位长度为6位,必须是0,它是为将来定义新用途保留的。

7、标志长度为6位,在TCP报文中不管是握手还是挥手还是传数据等,这6位标志都很重要。6位从左到右依次为:

URG:紧急标志位,说明紧急指针有效;

ACK:确认标志位,多数情况下空,说明确认序号有效;

PSH:推标志位,置位时表示接收方应立即请求将报文交给应用层;·

RST:复位标志,用于重建一个已经混乱的连接;

SYN:同步标志,该标志仅在三次握手建立TCP连接时有效

FIN:结束标志,带该标志位的数据包用于结束一个TCP会话。

8、窗口大小长度为16位,TCP流量控制由连接的每一端通过声明的窗口大小来提供。

9、检验和长度为16位,该字段覆盖整个TCP报文端,是个强制性的字段,是由发送端计算和存储,到接收端后,由接收端进行验证。

10、紧急指针长度为16位,指向数据中优先部分的最后一个字节,通知接收方紧急数据的长度,该字段在URG标志置位时有效。

11、选项长度为0-40B(字节),必须以4B为单位变化,必要时可以填充0。通常包含:最长报文大小(MaximumSegment Size,MSS)、窗口扩大选项、时间戳选项、选择性确认(Selective ACKnowlegement,SACK)等。

在我们网络协议中,数据包就像路上行驶的小车,车辆上和里面装着各种东西,有必要的东西,非必要的东西,你想要把人或者东西带到想要的地方去,你就必须遵守咋们的交通规则,必须按照咋们的网络协议规则来,不然你就去不了。如果出现路上有意外,就有检错功能,将会被拦下协协协议格式议格式议格来,进行重传,或者丢弃。


http://chatgpt.dhexx.cn/article/e1DuHQq9.shtml

相关文章

几种常用协议介绍

几种常见协议介绍 TCP/IP协议,其实是一个协议集合,这个集合里面包含了网络通讯所需的所有协议,里面不仅有TCP(传输控制协议)、IP(网际协议),还有UDP、ICMP、RIP、TELNET、FTP、SMTP、ARP、TFTP等许多协议,还有物联网中…

个人如何申请注册公司邮箱?企业邮箱注册申请流程详解

大部分人可能知道邮箱,但是公司邮箱是什么?企业邮箱注册申请流程?个人如何申请注册公司企业邮箱? 在一家公司实习时人事告诉我使用公司邮箱,用我名字拼音命名的,还是无限容量、单次群发500封、邮件误删可以…

手把手教你申请CCC(City Colleges of Chicago)教育邮箱

如果你还不知道edu教育邮箱的好处,那么你就out了,很多大公司的的优惠福利专门针对学生群体。比如可以利用edu邮箱获得Office365免费使用权限,可以免费扩容Onedrive至1024GB;可以获得AutoCAD、3ds Max、Maya等在内70余款软件的3年免…

工大校园邮箱申请流程

由于pycharm破解日益复制,代理服务器总是被封杀,只好老老实实合法使用,但还是要免费的方法,那就申请学生邮箱,毕竟钱不是问题,穷才是。 第一步打开这个网址,登陆一下 https://cas.bjut.edu.cn…

matlab 柱面投影,matlab练习程序(圆柱投影)

圆柱投影就是将一张二维的图像投影到三维的圆柱体上,不过在显示图像的时候依然是以二维的形式给出。 投影最重要的步骤就是计算投影变换公式,和图像旋转类似,只要得到变换公式,再依照公式进行代码编写就很容易了。 这里就不写投影…

C/C++ 图像处理(8)------图像の柱面投影算法

图像的柱面投影算法,在360环形全景应用中几乎一定会用到。而为何要用该算法,可以参考下图: 从图像中可以看到,該环形全景设备由八个摄像头环形排列而成(需注意环形全景的形态并不固定,摄像头的个数不一定是八个,甚至只有一个摄像头在一直匀速转圈也是可以的)。每个摄…

全景图(二):在Unity3D上实现360°柱面投影

在全景图(一):使用Unity完成水晶球纹理贴图 建立的工程基础之上,做修改。 步骤: 1、把上次创建好的水晶球移走,放到一个不妨碍观察的地方。 2、创建一个圆柱体,位置设为(0,1.5,0&a…

图像拼接(一):柱面投影+模板匹配+渐入渐出融合

这种拼接方法的假设前提是:待拼接的两幅图像之间的变换模型是平移模型,即两幅图像同名点位置之间只相差两个未知量: Δx 和 Δy ,自由度为2,模型收得最紧。所以只有所有图像都是用同一水平线或者同一已知倾斜角的摄像机…

2D射影儿何和变换——柱面投影,图像拼接柱面投影

引入二维空间(以下简称2D) 的射影变换 这些变换发生在用透视摄像机对平面摄像的时候. 该章偏重于入门介绍并为三维空间(以下简称3D) 几何铺路. 大多数的概念在2D 中比3D 中更容易理解和可视化. 本章介绍射影变换,包括它的特殊悄况:仿射和相似变换; 并把注意力…

鱼眼图像与柱面的投影

鱼眼图像到柱面的反投影及柱面到鱼眼图像的投影 https://blog.csdn.net/c20081052/article/details/80999904 鱼眼图像到柱面图像的投影公式推导参考链接,自己照着推导过,应该是没有问题的。这个是平面图像到柱面的投影,我理解的鱼眼图像也是…

【论文笔记】激光点云柱面投影图的显著性检测 LiDAR Imaging-based Attentive Perception

内华达大学里诺分校 在嵌入式处理器设备上(飞行器)达到了毫秒级执行时间, 使用的激光雷达型号 :  OUSTER OS1-64 (图像尺寸204810),OUSTER OS0-128(图像尺寸204810) 这种激光雷达可以提供的信息包括: 距离, 强度, 反射…

图像拼接---图片柱面投影简单实现

算法思想参考:http://blog.csdn.net/weixinhum/article/details/50611750 柱面投影是图片拼接的前期的一部分工作,以下代码只是简单的实现了投影,还可以优化, 柱面半径设置位图片宽度的一半,即 R width/2 代码运算…

2.8 投影柱面

空间曲线 在xOy坐标面上的投影曲线是 投影柱面的参数方程为 例 2.8.1 将以下空间曲线投影到xOy坐标面,试作出投影柱面的图形。 解 输入以下代码: with(plots): x:t->cos(t): y:t->sin(t): z:t->t: S:2: T:6:K:50: quxian:spacecurve([x(t),y(t…

【Opencv】2D射影儿何和变换——柱面投影,图像拼接柱面投影

引入二维空间(以下简称2D) 的射影变换 这些变换发生在用透视摄像机对平面摄像的时候. 该章偏重于入门介绍并为三维空间(以下简称3D) 几何铺路. 大多数的概念在2D 中比3D 中更容易理解和可视化. 本章介绍射影变换,包括它的特殊悄况:仿射和相似变换; 并把注意力主要…

matlab 柱面投影,图像拼接(不投影到柱面)(渐入渐出融合) matlab程序

1,先拍摄一组图片,比如两幅图:A、B 我直接用网上的两幅图: 2,分别投影到柱面坐标系 就用自己写的柱面投影程序 matlab里 结果: 3,开始配准第一步:SIFT得到匹配对(直接用OpenCV里自带的) 有两三对误匹配对,后来调整阈值得到没有误匹配对的结果。 4,配准第二步:根据匹…

opencv柱面投影,C语言实现

在做全景拼接的时候,为了保持图片中的空间约束与视觉的一致性,需要进行柱面投影,否则离中心图像距离越远的图像拼接后变形越大。 柱面投影公式为 这个是https://blog.csdn.net/zouxin_88/article/details/85167602的代码,rgb彩色…

柱面投影matlab程序

拼接之前要进行柱面、立方体面或者球面投影,《全景拼接的关键技术研究》选的是柱面投影,根据其理论有: %假设相机市场角为45度 %反投影到柱面时左右有缝隙了 Aimread(F:\fisheye\kk.jpg); [H,W,k]size(A); fW/(2*tan(pi/4/2)); %视场角越…

柱面投影、拼接视差、球面投影

1. 图像拼接传统做法: 特征点提取:sift、surf、orb等特征点提取; 基于特征点的配准:RANSAC方法剔除匹配点并拟合图像变换矩阵(全局单应性矩阵); 图像融合:先确定缝合线,再利用加权融合、多频带融合的方法融合; 方法:除了按照上文提到的顺序利用opencv进行拼接,还可以…