win7 以太网媒体断开怎么处理_汽车中的总线系统——以太网(4)TCP/IP初步认识

8202843de3b93db9faf4cea5b4582435.png

理论上,应用程序可以将其数据直接打包到以太网消息数据字段中。然而,由于以太网不支持分段和错误处理,并且不能直接用于长距离网络和无线传输,在MAC层之上应用程序必须使用一些更高的协议级别。

根据RFC 791/2460,在ISO/OSI模型的第3层之上使用IP协议(互联网协议)。根据RFC 2131,IP地址可以使用DHCP协议(动态主机配置协议)动态分配,当然也可以手动定义IP地址。为了使计算机能够在世界范围内相互通信,地址必须是唯一的,因此由ICANN集中分配给ISP互联网服务提供商,由ISP分配给最终网络参与者。不幸的是,最初IP地址只有32位,但在刚开始时地址资源分配得过松,因此地址资源现在已经用完了。为此,长期稳定的协议版本IPv4逐渐被提供128位IP地址的较新版本IPv6所取代。不幸的是,报文的长度从20字节增加到40字节。通过IP地址查询以太网MAC地址是通过ARP协议(地址解析辅助协议)以及NDP协议(邻居发现协议,IPv6中引入)来进行。IP地址,例如134.108.34.3,对人们来说非常不方便。这就是为什么会引入诸如www.autosar.org这样的清晰地址名称。通过DNS(域名系统)服务器的翻译,就能够把网络浏览器中的www地址转换成IP地址,类似于互联网地址的电话簿。IP报文的数据范围可以高达64KB。在理论上,IP报文在转发时可以被拆包,但在实践中,长度通常会受到限制,以便IP报文完全符合以太网报文的数据字段(最多1500字节)。如果无法转发IP报文(例如,由于使用了错误的IP地址),则检测错误的站点使用ICMP协议(Internet控制报文协议)发送错误报文给发送方。然而,进一步的错误处理并不在IP协议层级定义,比如通过检查数据字段是否正确。因此,IP只允许无连接的不不可靠传输。Protocol ID字段指示IP报文是哪个协议的报文,例如,1代表ICMP、6代表TCP、17代表UDP。

 802d60b7a07f2ae733cb37a9a07fd75f.png

在更高的第4层中,采用UDP和TCP两种协议。除了第3层的设备相关的IP地址外,第4层中还允许应用程序相关的所谓Port(端口)。端口号通常固定在服务器端,如WebServer(众所周知的端口)为80h。通过端口一台计算机上的应用程序就可以直接和另一台计算机上的应用程序进行数据传送。这和AUTOSAR中的SW-C的Port的概念很类似,所以我一直认为AUTOSAR就是抄TCP/IP中的Port的概念。在IE浏览器设置中,端口的定义如下。

98a7f94d970a054fdd4c4e64bbf13ad5.png

根据RFC 768,UDP协议(用户数据报协议)可以进行64KB数据的无连接、非可靠的传输,该协议对数据传输进行校验和检查。接收方能够识别或忽略错误,但是没有对发送方的反馈和自动重发机制。

根据RFC 793,TCP协议(传输控制协议),可以对数据块进行拆包,确认其接收并在出现错误时进行重发。TCP协议要求在发送开始前必须建立连接,并在结束后断开连接。数据拆包分段的大小可以动态地调整,在很多情况下在数据发送前数据拆包就已经完成,存放在缓存中,以节省发送时的处理时间。所有这些进程在很大程度上对应用程序都是不可见的,因此TCP协议的时间行为不具有严格的确定性,只能有条件地用于实时应用程序。

d21832c4d6446e022ddfbdfddf8404a5.png

以太网以及之上的TCP/IP协议实际上,与FlexRay相比,实际的延迟时间和可实现的吞吐量将不再仅仅由物理层以及传输系统决定,而很大程度上取决于控制器中的软件协议栈。而在以太网层,与CAN和FlexRay一样,报文头和校验和主要由通信控制器中的硬件自动生成,IP、UDP和TCP头以及实际使用数据必须由软件及时准备和处理。如果没有足够大的RAM来存储报文,没有快速的微处理器来计算和检测校验和,就无法达到高的带宽。虽然这种高计算性能已经在车辆上的高端信息娱乐系统中出现,但在动力和底盘区域的控制器仍需要大幅升级,或者协议栈的大部分需要在硬件上实现。

今天先把TCP/IP了解个大概。后面重点介绍各种协议,从IP到SOME/IP。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值