主机设备:PC机,PLC

网络设备:家用路由器

局域网包括了有线局域网和无线局域网(WIFI)。怎么去使用2者?

网络设备的职责最终目的为了帮助2台主机的数据传输。路由器,交换机范围不同,目的相同。在局域网就是交换机的应用。在广域网就是路由器的应用。目的都是使2台主机的通信,数据传输正常完成。在局域网,范围就1个。所以,局域网内的2台计算机需要通信就靠交换机就可以完成。交换机会保存所有连接在自己上面的所有主机的MAC地址。所有的通信数据包中都有源MAC地址,目标MAC地址。源IP地址,目标IP地址。交换机能识别所有的数据包中的源MAC地址,目标MAC地址,所以可以快速建立2台主机的通信。当范围不再是局域网,是广域网,这时,路由器就上场了,由于所有的数据包中都有源IP地址,目标IP地址。这样就可以向外与远程的对方主机建立通信。

一说到主机之间通信,就要想到数据包中的4个地址:源MAC地址,目标MAC地址,源IP地址,目标IP地址

一说到数据包,你就要想到它是主机产生的7层ISO网络模型的完整数据。

一说到集线器,你就要想到它是纯粹的电气连接设备,没有分析能力,只是单纯地把各个主机电气连接起来。

一说到交换机,你就要想到局域网和主机MAC地址,以及交换机能分析和保存MAC地址的能力。交换机包含了集线器功能。

一说到路由器,你就要想到广域网和主机IP地址,以及分析IP地址的能力。家用路由器包含了交换机和集线器功能。

要理解的是网络设备的工作目的。它们是帮助的角色,2台主机双方需要传输数据,这些数据才是你的核心。路由器,交换机就是帮助2台主机之间顺利完成通信的。

主机产生的数据包是1个完整的ISO7层模型的结果。数据从7654321一路下来,数据包从7开始一直下到1,数据包会在每一层都进行对应协议的封装。所以,1个数据包的长度:7是最小的,1是最多的。除了顶层7,每一层都包括所有上层的所有内容。虽然2台主机在局域网内通信。你会奇怪在局域网内为什么还要设置IP地址?例如电脑要与PLC在同一网段才能进行通信。

解析:数据包是7层模型的完整数据,2台局域网主机彼此之间都能这样产生数据包的。而且,数据包的数据一定是会到达对方主机的最顶层。网络设备不管是路由器(3层设备),交换机(2层设备),集线器(1层设备),它们只是底3层设备,只是辅助你的数据包到达主机。在局域网中,交换机因为连接了所有主机,源主机发的数据包有7层,通过最低层(1层)发送到交换机的1层,交换机1层得到数据后,提到2层,得到数据包的MAC地址,交换机根据MAC地址发送数据包到目标主机,目标主机收到后一路上传到顶层,传输完成,顶层得到的数据是整个数据包的中间部分。整个过程,在交换机这里,数据包的最外层是被交换机使用到的,它就靠最外层来传送数据的。

(原创)理解主机设备(PLC,PC机)之间的以太网通信的更多相关文章

  1. 建立开发板与PC机之间的nfs服务器

    ARM开发板与PC通过NFS 网络文件系统挂接,很方便文件的移动,也为我们的开发带来了方便.接下来,我就详细的介绍下如何建立ARM与PC机的挂接. 我是用的UBuntu系统. 首先,我们需要在主机上安 ...

  2. 通过路由器的IP映射来解决,两个不同IP地址的PC机之间的从LAN口到WAN口的单向通讯问题

    1.问题假设: 在B机中IP地址与子网掩码都固定,网关是路由器的LAN口的IP地址,我们希望通过路由器来实现B机与A机之间的单向通讯问题,也就是说B可以ping通A且可以访问A提供的FTP站点. 2. ...

  3. (原创)如何搭建PLC+上位机监控系统达到成本的最小化?

    以西门子PLC举例; 西门子PLC有几个型号:S7-200SMART,S7-1200,S7-300,S7-400,S7-1500,价格从低到高. 1个项目中要求的IO数量:600点的DI+DO,若干个 ...

  4. 上位机开发之三菱FX3U以太网通信实践

    上次跟大家介绍了一下上位机与三菱Q系列PLC通信的案例,大家可以通过点击这篇文章:上位机开发之三菱Q系列PLC通信实践(←戳这里) 今天以三菱FX3U PLC为例,跟大家介绍一下,如何实现上位机与其之 ...

  5. 虚拟机 开发板 PC机 三者之间不能ping通的各种原因分析

    这个问题事实上也相对照较简单.可是非常多网友都给我发消息说 遇到不能ping,每一个人都得回答一次确实显得心有余而力不足.如今我对遇到这几种问题给出最完整的解决方式. (说实话基本上也仅仅要这几种可能 ...

  6. 开发板-PC机(宿主机)-虚拟机(VM)之间网络通信设置方法及须要注意的问题

    1.不使用路由器交换机 硬件连接: 使用网线将开发板和PC机相连 串口线将PC机和开发板相连 使用命令: ifconfig -a 串口控制端查看开发板的网络配置 route -n 串口控制端查看开发板 ...

  7. 组建自己的局域网(可以将PC机实现为服务器)

    最近想要自己组建一个集群,并且可以通过外网访问,查了好些资料,终于成功了! 设备清单:笔记本1:(4g内存,500g硬盘),笔记本2:(12g内存,120g固态硬盘) (笔记本2上装有5台虚拟机,操作 ...

  8. Android设备之间通过Wifi通信

    之前写过PC与Android之间通过WIFI通信(通过Socket,可以在博客里面搜索),PC作为主机,Android作为客户机,现在手头有一台仪器通过wifi传输数据,如果仪器作为主机发射WIFI热 ...

  9. 家用PC机打造VSphere5.1 测试环境:之部署VCenter Server 5.1

    家用PC机打造VSphere5.1 测试环境前言:实践出真知,同样学习VMware VSphere 的朋友,也需要不断的测试总结,再测试再总结只有不断的积累才能学好,但是动辄几万的服务器不是所有朋友都 ...

随机推荐

  1. Spring Data Elasticsearch 聚合查询

    如需要统计某件商品的数量,最高价格,最低价格等就用到了聚合查询,就像数据库中的group by 首先需要注入ElasticsearchTemplate @Autowired private Elast ...

  2. Sonarqube C#静态代码规范检查(一)

    使用说明 代码规范对于每个开发来说重要也重要,说不重要其实也没那么重要,简单点的vs的code analysis也能提供很多的建议,重量级一点的Resharper不仅能提供建议,还提供了更方便快捷的一 ...

  3. 1.Java介绍

    第一章 走进Java 一.Java技术体系 Java技术体系组成部分:Java程序设计语言.Java虚拟机.Class文件格式.Java API类库 JDK:Java程序设计语言 + Java虚拟机 ...

  4. Pandas | 07 函数应用

    要将自定义或其他库的函数应用于Pandas对象,有三个重要的方法,下面来讨论如何使用这些方法.使用适当的方法取决于函数应用于哪个层面(DataFrame,行或列或元素). 表合理函数应用:pipe() ...

  5. SpringBoot配置文件加载位置与优先级

    1. 项目内部配置文件 spring boot 启动会扫描以下位置的application.properties或者application.yml文件作为Spring boot的默认配置文件 –fil ...

  6. 表格插件BootStrap-Table使用教程

    Bootstrap table 是一款基于 Bootstrap 的 jQuery 表格插件,功能比较完备,能够实现数据异步获取,编辑,排序等一系列功能. 官网https://bootstrap-tab ...

  7. Django+uWSGI+Nginx 部署网站

    Django 1.11设置 保证Django在本地调试没有问题: 当然这是前提^_^ 收集静态文件至指定文件夹 Django静态文件设置具体参考:https://docs.djangoproject. ...

  8. 1473. [Ioi2000]Post加强版 n log^2 n做法

    1473. [Ioi2000]Post加强版 n log^2 n做法 题面 有n个城市从负方向向正方向按照1至n标号,\(d[i]\)表示城市i离原点的距离并且\(d[1] = 0\),对于\(i \ ...

  9. spring boot 启动遇到报错:Failed to configure a DataSource

    spring  boot 启动遇到报错,具体如下 Description: Failed to configure a DataSource: 'url' attribute is not speci ...

  10. promise、async和await

    async:async function 声明将定义一个返回 AsyncFunction 对象的异步函数.当调用一个 async 函数时,会返回一个 Promise 对象.当这个 async 函数返回 ...