LIN模块介绍

LIN模块介绍,第1张

1、如下图为一个LIN网络,包含了一个Master节点,两个Slave节点:

在LIN总线通讯中, Master task 决定了在 LIN总线上传送的是哪一帧 , Slave task 提供每一帧所 携带的数据 。

2、如下图为一个LIN节点的层次结构图:

LIN1.3 与 LIN2.1 的区别在于,LIN1.3没有TL层,Signal interaction放在Protocol层中,没有单独的TP层。

3、LIN总线特点:

串行通信:线间干扰小,节省线束,传输距离长;

单线传输:增强的 ISO9141 (ISO 15765-1) , 总线电压基于 VBAT;

 最高速率20Kbit/s:满足车身上大部分的应用需求;

单主多从结构:无需仲裁;

基于通用 UART/SCI 的低成本接口硬件:几乎所有MCU有具备LIN总线的硬件基础;

从节点无须晶振或陶瓷震荡器就可以实现同步:大幅度降低成本;

一条总线最多可连接16个节点:由总线电气特性决定;

支持诊断功能:支持UDS服务;

4、LIN2.1节点模型:

LIN1.3节点模型:

LIN2.1 与 LIN1.3 节点模型的差别在于 LIN1.3 没有 Transport layer ,所以也就没有流控、传输时间控制的功能, LIN1.3 协议中没有对诊断及节点配置进行规范,所以在 LIN1.3 中完成相应的功能都放在自定义诊断中完成。

5、LIN网络拓扑结构:

1)单主任务,多从任务;

2)主节点包含主任务和从任务;

3)从节点只包含从任务;

4)主任务决定总线上的报文,从 任务发送数据;

6、LIN帧:

通信原理: 主任务发送报头,从任务用响应来补充报头形成完整的报文。

报文传输: 报文的内容由ID来定义。

广播: 所有节点都能够接受总线上的帧。

7、调度表

1)负责调度网络各报文发送的顺序;

2)为每帧报文分配发送时隙(slot);

3)发送时隙:报文可以被发送的时间;

4)不同报文的发送时隙可能不同;

5)调度表在网络系统设计阶段确定;

6)调度表使得LIN通信具有可预测性;

8、切换调度表:

主任务可以拥有多个调度表,并在不同的调度表之间切换,该处理方式增加通信的灵活性。

(1)字节间隔位于每个字节之间;

(2)响应间隔位于报头与响应之间;

(3)留给MCU足够的处理时间;

(4)帧长度可能增长;

1、字节场

1)基于SCI的通信格式;

2)发送一个字节需要10个位时间(TBIT);

2、间隔场

1)表示一帧报文的起始,由主节点发出;

2)间隔信号至少由13个显性位组成;

3)隔界定符至少由1个隐形位组成;

4)间隔场是唯一一个不符合字节场格式的场;

5)从节点需要检测到至少连续11个显性位才认为是间隔信号;

3、同步场

1)确保所有从节点使用与节点相同的波特率发送和接收数据;

2)一个字节,结构固定:0X55;

4、标识符场

1)ID的范围从0到63(Ox3f);

2)奇偶校验符(Parity)P0,P1;

5、数据场

1)数据场长度1到8个字节;

2)低字节先发,低位先发;

3)如果某信号长度超过1个字节采用低位在前的方式发送(小端);

6、校验和场

用于校验接收的数据是否正确

1)经典校验(Classic Checksum)仅校验数据场(LIN1.3)

2)增强校验(Enhance Checksum)校验标识符场与数据场内容(LIN2.0、LIN2.1)

标识符为0x3C和0x3D的帧只能使用经典校验

计算方法:反转8位求和(inverted eight bit sum)

例:Data=0x4A、0x55、0x93、0xe5

7、帧长度

最小帧长度

THEADER_NOMINAL=34*TBIT

TRESPONSE_NOMINAL=10*(NDATA+1)*TBIT   

TFRAME_NOMINAL=THEADER_NOMINAL+TRESPONSE_NOMINAL

最大帧长度

THEADER_MAX=1.4*THEADER_NOMINAL

TRESPONSE_MAX=1.4*TRESPONSE_NOMINAL

TFRAME MAX=THEADER MAX+TRESPONSE MAX

8、帧类型

1)无条件帧

使用频度最高的帧类型,无任何发送条件;

标识符(ID)为0到59(0x3B);

主任务发出报头,一个任务响应,一个或多个任务接收如下图:

帧 ID = 0x30应答部分的发布节点为从机节点1,收听节点为主机节点。典型应用如从机节点1向主机节点报告自身某信号的状态。

帧 ID = 0x31应答部分的发布节点为主机节点,收听节点为从机节点1和从机节点2。典型应用如主机节点向从机节点发布信息。

帧 ID = 0x32应答部分的发布节点为从机节点2,收听节点为从机节点1。典型应用如从机节点之间彼此通信。

2)事件触发帧

引入事件触发帧的目的是节省带宽。

BCM(Master)需要获取4个车门的状态,该如何实现?

第一种方式:

每次向四个车门请求状态,浪费带宽,因为车门状态不是经常发生。

第二种方法:

将请求四个车门状态的帧合并为一个事件触发帧,Master不需要每次发送四个帧请求车门的状态,只需要发送一个事件触发帧即可,哪个车门状态发生变化,对应的车门将响应该事件触发帧。

事件触发帧的响应会出现如下三种情况:

第一种:没有车门状态变化。

第二种:一个车门状态发生变化:

第三种:多个车门状态发生变化,此时将出现冲突,冲突处理时,Master需要像第一种处理方式一样,重新发送四帧分别请求单个车门状态。LIN1.3与LIN2.0、LIN2.1处理方式有所区别,区别在于LIN1.3不切换调度表,占用事件触发帧的时隙发送,LIN2.0、LIN2.1将切换冲突调度表处理,如下图:

3)零星帧(偶发帧 (Sporadic Frame) )

引入零星帧的目的也是为了节省带宽,如:BCM(Master)需要发送对4个车窗的控制指令,但是,两个车窗的控制命令很少被同时执行,同样大量的带宽被浪费。

具体方案如下:

4)诊断帧

诊断帧用来传输诊断或配置信息,一般包含8个字节。

标识符:

60(0x3C):主请求帧

61(0x3D):从响应帧

传输方式:

5 )保留帧

标识符:   62(0x3e), 63(0x3f)

在LIN 2.1中未对保留帧进行定义, 留给用户自定义或将来的版本升级。

9、调度表

10、偏移

偏移(jitter)是指一帧报文实际开始发送的时刻与帧时隙起点的时间差(该值在LDF文件中定义) 。

    TFrame_Slot>jitter + TFrame_Maximum

11、网络管理

12、睡眠(Go To Sleep)

睡眠指令只有主节点可以发送,从节点在接到睡眠指令之后,也可以选择不进入睡眠状态而继续工作,这根据应用层协议而定。

13、唤醒(Wake Up)

在一个处于睡眠状态的LIN网络中,任何一个节点都可以发送唤醒信号。

发送节点发送的唤醒信号:

接收节点检测的唤醒信号:

14、主任务状态机模型

15、从任务状态机模型

你好,解决办法如下: 一般的话只能等了~特别是游戏多的时候~ 如果几分钟还没变化的话尝试重启下程序试试~ 如果一直如此那就不懂了 一般是账号连接的问题比较多~ 另外推荐用下ASF吧(毕竟IDM那个作者停止维护更新了) 比这个方便很多 设置好后只...

常见的DDoS攻击

smurf、Fraggle 攻击、Trinoo、Tribe Flood Network(TFN)、TFN2k以及Stacheldraht是比较常见的DDoS攻击程序,我们再看看它们的原理,其攻击思路基本相近。 Smurf 攻击:Smurf是一种简单但有效的 DDoS 攻击技术,Smurf还是利用ping程序进行源IP假冒的直接广播进行攻击。在Internet上广播信息可以通过一定的手段(通过广播地址或其他机制)发送到整个网络中的机器。当某台机器使用广播地址发送一个ICMP echo请求包时(例如Ping),一些系统会回应一个ICMP echo回应包,这样发送一个包会收到许多的响应包。Smurf攻击就是使用这个原理来进行的,同时它还需要一个假冒的源地址。也就是说Smurf在网络中发送的源地址为要攻击的主机地址,目的地址为广播地址的ICMP echo请求包,使许多的系统同时响应并发送大量的信息给被攻击主机(因为他的地址被攻击者假冒了)。Smurf是用一个伪造的源地址连续ping一个或多个计算机网络,这就导致所有计算机响应的那个主机地址并不是实际发送这个信息包的攻击计算机。这个伪造的源地址,实际上就是攻击的目标,它将被极大数量的响应信息量所淹没。对这个伪造信息包做出响应的计算机网络就成为攻击的不知情的同谋。一个简单的 smurf 攻击最终导致网络阻塞和第三方崩溃,这种攻击方式要比 ping of death 洪水的流量高出一两个数量级。这种使用网络发送一个包而引出大量回应的方式也被叫做Smurf"放大"。

Fraggle 攻击:Fraggle 攻击对 Smurf 攻击作了简单的修改,使用的是 UDP 应答消息而非 ICMP。

"trinoo"攻击:trinoo 是复杂的 DDoS 攻击程序,是基于UDP flood的攻击软件。它使用"master"程序对实际实施攻击的任何数量的"代理"程序实现自动控制。当然在攻击之前,侵入者为了安装软件,已经控制了装有master程序的计算机和所有装有代理程序的计算机。攻击者连接到安装了master程序的计算机,启动master程序,然后根据一个IP地址的列表,由master程序负责启动所有的代理程序。接着,代理程序用UDP 信息包冲击网络,向被攻击目标主机的随机端口发出全零的4字节UDP包,在处理这些超出其处理能力垃圾数据包的过程中,被攻击主机的网络性能不断下降,直到不能提供正常服务,乃至崩溃。它对IP地址不做假,因此此攻击方法用得不多。

"Tribal Flood Network"和 "TFN2K" 攻击:Tribe Flood Network与trinoo一样,使用一个master程序与位于多个网络上的攻击代理进行通讯,利用ICMP给代理服务器下命令,其来源可以做假。TFN可以并行发动数不胜数的DoS攻击,类型多种多样,而且还可建立带有伪装源IP地址的信息包。 可以由TFN发动的攻击包括:SYN flood、UDP flood、ICMP回音请求flood及Smurf(利用多台服务器发出海量数据包,实施DoS攻击)等攻击。TFN的升级版TFN2k进一步对命令数据包加密,更难查询命令内容,命令来源可以做假,还有一个后门控制代理服务器。

"stacheldraht"攻击:Stacheldraht也是基于TFN和trinoo一样的客户机/服务器模式,其中Master程序与潜在的成千个代理程序进行通讯。在发动攻击时,侵入者与master程序进行连接。Stacheldraht增加了新的功能:攻击者与master程序之间的通讯是加密的,对命令来源做假,而且可以防范一些路由器用RFC2267过滤,若检查出有过滤现象,它将只做假IP地址最后8位,从而让用户无法了解到底是哪几个网段的哪台机器被攻击;同时使用rcp (remote copy,远程复制)技术对代理程序进行自动更新。Stacheldraht 同TFN一样,可以并行发动数不胜数的DoS攻击,类型多种多样,而且还可建立带有伪装源IP地址的信息包。Stacheldraht所发动的攻击包括UDP 冲击、TCP SYN 冲击、ICMP 回音应答冲击。

如何防止DoS/DdoS攻击

DoS攻击几乎是从互联网络的诞生以来,就伴随着互联网络的发展而一直存在也不断发展和升级。值得一提的是,要找DoS的工具一点不难,黑客群居的网络社区都有共享黑客软件的传统,并会在一起交流攻击的心得经验,你可以很轻松的从Internet上获得这些工具,像以上提到的这些DoS攻击软件都是可以从网上随意找到的公开软件。所以任何一个上网者都可能构成网络安全的潜在威胁。DoS攻击给飞速发展的互联网络安全带来重大的威胁。然而从某种程度上可以说,DoS攻击永远不会消失而且从技术上目前没有根本的解决办法。

面对凶多吉少的DoS险滩,我们该如何对付随时出现的黑客攻击呢?让我们首先对造成DoS攻击威胁的技术问题做一下总结。DoS攻击可以说是如下原因造成的:

1.软件弱点是包含在 *** 作系统或应用程序中与安全相关的系统缺陷,这些缺陷大多是由于错误的程序编制,粗心的源代码审核,无心的副效应或一些不适当的绑定所造成的。由于使用的软件几乎完全依赖于开发商,所以对于由软件引起的漏洞只能依靠打补丁,安装hot fixes和Service packs来弥补。当某个应用程序被发现有漏洞存在,开发商会立即发布一个更新的版本来修正这个漏洞。由于开发协议固有的缺陷导致的DoS攻击,可以通过简单的补丁来弥补系统缺陷。

2.错误配置也会成为系统的安全隐患。这些错误配置通常发生在硬件装置,系统或者应用程序中,大多是由于一些没经验的,无责任员工或者错误的理论所导致的。如果对网络中的路由器,防火墙,交换机以及其他网络连接设备都进行正确的配置会减小这些错误发生的可能性。如果发现了这种漏洞应当请教专业的技术人员来修理这些问题。

3.重复请求导致过载的拒绝服务攻击。当对资源的重复请求大大超过资源的支付能力时就会造成拒绝服务攻击(例如,对已经满载的Web服务器进行过多的请求使其过载)。

要避免系统免受DoS攻击,从前两点来看,网络管理员要积极谨慎地维护系统,确保无安全隐患和漏洞;而针对第三点的恶意攻击方式则需要安装防火墙等安全设备过滤DoS攻击,同时强烈建议网络管理员应当定期查看安全设备的日志,及时发现对系统的安全威胁行为。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11561941.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存