UDS-CAN网络层传输协议

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了UDS-CAN网络层传输协议相关的知识,希望对你有一定的参考价值。

参考技术A CAN传输数据长度最大8个字节;

SF(Single Frame) 例1:02 27 29 00 00 00 00 00;

SF第一字节的高4位为0,低4位为数据长度,其余字节为服务数据内容,没用到的数据可以按00或AA填充。

02: 

0:第一字节高4位默认为0,表示单帧数据.

2:数据长度,表示在02后面有两个数据长度;为27 29;

多帧发送方式:

FF(First Frame)多帧传输的第一帧;

FC(Flow Control)多帧传输的流控制帧;

CF(Consecutive Frame)多帧传输的连续帧;

例2:  FF 10  1E  59  04  00  01  00  27;

  FC 30  00  00  00  00  00  00  00;

  CF 21  00  0B  FF  FF  FF  FF  FF;

22  FF  FF  FF  FF  FF  FF  FF;

23  FF  FF  FF  FF  FF  FF  FF;

24  FF  FF  FF  AA  AA  AA  AA;

FF(First Frame)多帧传输的第一帧,其第一字节的高4位为1,低四位+第二字节为数据长度,其余字节为服务数据内容;

10 1E:

1:第一字节高四位默认为1;

01E:数据长度位30; 最大为FFF=4095可知传输数据最大长度为4095;

FC(Flow Control)多帧传输的流控制帧,其第一字节高四位为3,低四位为FS流控制状态;第二字节为BS数据块大小,第三字节为STmin间隔最短时长;

30:

3:第一字节高四位为3;

0;为FS流控制状态;

FS:

FS=0:表示允许发送方继续发送连续帧;

FS=1: 表示发送方需等待下一条流控制帧[1],该流控制帧称为等待流控制帧;

FS=2: 表示报文长度超出接收方的网络层缓存大小,此流控制帧将迫使发送方中断多帧报文的发送,并且发送方网络层使用N_USData.con向应用层报告N_Result = N_Buffer_Overflow。FS = Overflow的流控制帧接收方只能在接收到第一帧后发送。

第二字节BS=00;

BS=00: 表示允许发送方连续发送连续帧,而不需要等待接收方发出的流控制帧;

BS>=01||BS<=FF: 表示允许发送方连续发送连续帧的数目,发送完成相应数目的连续帧后,发送方必须等待接收方发出的流控制帧;

BS为当前接收数据的数据长度,通过控制数据长度来防止通道堵塞;

第三字节STmin=00;

STmin>=00||STmin<=7F: 两个连续帧之间的最小间隔时间,0~127ms;

STmin>=80||STmin<=F0:Reserved保留;

STmin>=F1||STmin<=F9: 两个连续帧之间的最小间隔时间,100~900us;

STmin>=FA||STmin<=FF: Reserved保留;

如果发送方收到一个FC,其STmin的值是Reserved,则发送方应默认STmin为7F(127ms);

STmin为两个CF之间的时间间隔,通过时间间隔控制接收数据的速率;

多帧发送三种情况:

1. 不停止接收:开始→FF→(接收方)FC→CF→结束;

2. 指定数据长度接收:开始→FF→(接收方)FC→CF(部分数据) →(接收方)FC→CF(部分数据) →(接收方)FC→CF(部分数据) →….. (接收方)FC→CF(部分数据)→结束;

3. 数据异常,不接收:开始→FF→(接收方)FC→结束;

3.协议与端口

协议有网络层协议,传输层协议,应用层协议。

网络层协议用于三层网络互联,传输层协议用于数据传输,应用层协议用于数据的应用。

IP协议属于网络层协议,IP的主要作用是寻址和分段。IP端口号范围0~65535

端口属于四层传输层,如果说IP是一座房子,那么端口就是这个房子的门。

TCP叫传输控制协议,是一种安全可靠的传输层协议。

UDP叫用户数据包协议,是一种简单但不可靠的传输层协议。

TCP/IP我们就可以理解为是一种安全可靠的数据传输的一对组合。IP用于寻址,而TCP则决定数据安全的传输控制。

网络层协议

描述

IP

网络协议,用于寻址和分段。

ARP

地址解析协议,将IP解析出MAC地址,工作在网络层的协议。

RARP

无敌ARP协议,一种反馈机制,当发生IP冲突时,它会反馈信息给管理员。

ICMP

网络控制消息协议,一种反馈机制,使用PING命令测试网络连通性。



应用层协议

端口号

使用什么协议进行传输

描述

SMTP

25

TCP

用于邮件的发送。

POP3

110

TCP

用于邮件的接收,缓存在本地。

IMAP4

143

TCP

用于在线查看邮件,缓存在网络。

FTP

21

TCP

文件传输协议,用于文件传输。

TFTP

69

UDP

轻型文件传输协议,用于小文件传输。

DHCP

67,68

UDP

动态主机配置协议,用于主机动态获取IP

DNS

53

UDP

域名系统,用于将一个IP转换成一个便于人们记忆的域名。

NTP

123

UDP

时间服务器。

SNMP

161

UDP

简单网络管理协议,用于管理网络系统。

HTTP

80

TCP

超文本传输协议,用于浏览WEB网站。

HTTPS

443

TCP

加密性超文本传输协议,更安全的浏览WEB网站。

TELNET

23

TCP

用于远程连接设备。

SSH

22

TCP

更安全的通过远程连接设备。

共享服务

445

TCP

用于文件共享。

远程桌面

3389

TCP

用于桌面远程。

注:每个应用层协议都对应一个端口号。

以上是关于UDS-CAN网络层传输协议的主要内容,如果未能解决你的问题,请参考以下文章

网络协议 TCP和UDP可靠性传输

3.协议与端口

网络及协议

计算机网络之传输层概述UDP协议以及TCP协议特点和报文段408_1

四层协议网络传输

网络协议