当前位置: 首页 > article >正文

通讯专题4.1——CAN通信之计算机网络与现场总线

        从通讯专题4开始,来学习CAN总线的内容。

        为了更好的学习CAN,先从计算机网络与现场总线开始了解。

1 计算机网络体系的结构

        在我们生活当中,有许多的网络,如交通网(铁路、公路等)、通信网(电信、邮政等)等。每种网都不一样,比如一间办公室也可以比拟成一个网络,一家公司也可以比拟成一个网络,但是不管是什么网络,为了正常、高效地运作,都要制定它的各种规范。 同样的,计算机也是如此。

        当我们遇到一个复杂的系统时,为了更快速的了解,就会将这个复杂的系统划分为若干部分,然后将每个部分的功能进行了解,然后再进行系统的整合,就可以了解全貌。再举一个例子,比如需要修一座三层的小高楼,首先将其分解成地基、第一层、第二层及第三层,地基与第一层、第一层与第二层应该怎么连接就需要有相应的连接规则等。而现代网络采用的就是分层的体系结构方法。

        现代网络就是将网络按照功能分成一系列的层次,每一层完成一个特定的功能,相邻层中的高层直接使用低层提供的服务来实现本层的功能,同时,它又向它的上层提供服务。 各层之间相互独立,每一层的信息交互都有相应的规则,如果需要修改某层的功能时,只需要保证接口满足其交互规则即可。

        网络系统可分为7层:从上到下依次为应用层、表示层、会话层、传输层、网络层、数据链层、物理层。如图1所示。

图1 网路系统层的介绍图 

        举例:人与人通电话,人属于应用层;信号的调制与解调相当于网络层;信号的接收与传送相当于数据链层和物理层 。应用层不需要知道其它层是怎么运行的,只需要知道规则(就是拨号)即可使用。

2 每一层的定义

2.1 物理层

       主要负责解决各种设备之间的数据传输问题,对各种设备接口的机械特征、电气特征、功能特征等。  

2.1.1 信道 

  1. 类型:由单向通信、半双工通信及双工通信;
  2. 波特率:指信号每秒变化的次数;
  3. 比特率:指每秒中传输的数据位数;
  4. 数据与信号:模拟信号和数字信号;

2.1.2  传输媒体

  1. 双绞线;
  2. 同轴电缆;
  3. 光纤
  4. 等等。

 2.2 数据链路层

        数据链路层主要是将MAC地址加入道需要传输的数据首部。 MAC地址就是物理网卡的唯一地址。

2.3 网络层

        顾名思义,这一层需要用到普通大众所用的“网络”,每个网络进行数据交换时,使用的是IP地址,而这个赋予的IP地址就是网络层。

2.4 传输层

        同一个软件端对端数据传输。指的是A与B两个同学,A与B要交流,使用的是交流软件必须一致。A使用微信,B也必须使用微信。 

2.5 会话层

         计算机知道了需要传输的内容,准备发送,第一步就是和指定通信对象建立会话关系。比如:A和B两个人,需要交流,二者之间需要建立一个“会话”的机制,才可以进行交流。

2.6 表示层

        主要起到翻译的作用。将语言(比如C语言)翻译成计算机能够识别的语言,然后数据进行加密,压缩等。 

2.7 应用层

        人机交互界面,系统程序的窗口。 

3 参考文献 

  1.  1、网络定义、分层_计算机网络层-CSDN博客
  2.  计算机网络入门(问题导向式)_计网标识是怎么产生的-CSDN博客
  3.  https://zhuanlan.zhihu.com/p/4554045035

         

         

         

                   


http://www.kler.cn/a/418277.html

相关文章:

  • 基础Web安全|SQL注入
  • vb.net常用命名空间
  • iQOO Neo10系列携三大蓝科技亮相,性能与续航全面升级
  • linux上离线部署Mysql5.7.22
  • Cesium中onTick事件监听器
  • 三维渲染中顺序无关的半透明混合(OIT)(一Depth Peeling)
  • 3x3矩阵,1x1矩阵,3X3零矩阵融合,矩阵乘法
  • 《操作系统 - 清华大学》6 -3:局部页面置换算法:最近最久未使用算法 (LRU, Least Recently Used)
  • docker快速部署kafka
  • Poetry 使用
  • 【maven-5】Maven 项目构建的生命周期:深入理解与应用
  • 偏差-方差权衡(Bias–Variance Tradeoff):理解监督学习中的核心问题
  • 新手SEO入门指南如何高效进行搜索引擎优化
  • ESLint CLI 深度解析:配置选项与高效工作流(5)
  • Python脚本:自动化下载视频的日志记录
  • 【从零开始的LeetCode-算法】3264. K 次乘运算后的最终数组 I
  • 使用lumerical脚本语言创建弯曲波导并进行数据分析(纯代码实现)
  • 【CSS in Depth 2 精译_062】第 10 章 CSS 中的容器查询(@container)概述 + 10.1 容器查询的一个简单示例
  • 安全见闻1
  • 冒泡排序算法介绍以及java实现
  • SQL调优分析200倍性能提升
  • Vue3+Echarts+echarts-wordcloud插件创建词云图
  • Docker命令总结
  • sys.stdout和sys.stdout.buffer
  • pnpm安装electron出现postinstall$ node install.js报错
  • 【中间件】Redis