以太网和串行通信之间有什么区别?


11

所有鼠标移动,USB连接和其他PC外设(例如打印机等)都称为串行通信。每次一次。

到现在为止还挺好。但是,当涉及TCP协议,以太网和Internet时,就不再称为串行通信。但这也是每秒的东西。

为什么会这样?主要区别是什么?我不明白为什么它不是串行通讯。


4
首先:打印机在很长一段时间内都使用并行通信。接下来,您能否提供一个声称互联网不是串行的来源?TCP本身在我看来是串行的。一次传输一个数据包,而您可以传输多个连续数据包的事实并没有使它变得更加并行。现代以太网实际上是并行的。电缆中有4条双绞线,每对双绞线一次发送一位,因此在现代以太网中,您同时发送4位。
AndrejaKo'5

如果是串行的,那为什么要使用以太网卡呢?其次,为什么书中没有串行通讯?
user16307 2012年

好吧,我很难回应这个评论。
AndrejaKo'5

1
一层是我们提供的常规端口类型,例如串行端口和并行端口。在另一个层面上,我们已经实际实现了此类端口,例如用于串行端口的RS-232,RS-485或USB,以及用于并行端口的IEEE 1284或ATA。
AndrejaKo 2012年

1
每种端口类型都有其详细信息。RS-232或多或少易于实现,但速度较慢且范围短。另一方面,以太网非常复杂,通常被视为更大的网络堆栈的一部分,范围更大,速度更快。
AndrejaKo 2012年

Answers:


15

至少三个原因,可能是:

  1. 在RS-232端口很普遍的时代,它是迄今为止一次比特通讯的最常用方法,以至于“串行端口”一词成为“ RS-232端口”的同义词。结合使用“串行”一词会增加混乱。请注意,USB避免这种混乱的主要原因是,它很少被称为“通用串行总线”,因此,在其长名称中不存在“ serial”一词。
  2. 在几乎所有情况下,RS-232端口的逻辑电平等效项都会从软件接收到单独的字节,并在收到软件时向软件提供单独的传入字节。相比之下,大多数以太网设备将等到软件提供完整的数据包(介于64和1536字节之间)后才开始传输,并且将等到它们接收并验证了整个数据包后再将其提供给软件使用。尽管位和字节可能通过有线方式串行发送,但是软件既不知道也不在乎。它只是知道在一个控制器收到数据包并被告知发送数据包后不久,另一个控制器将报告该数据包可用,并允许软件读取它。
  3. 确保“串行端口” 软件提供的时间顺序传输字节数据,并按接收的时间顺序将其提供给软件。如果没有的话,那将是毫无用处的。所有的以太网和Internet系统都保证在将数据包从一个节点发送到另一个节点时进行安排提供给接收者的字节数将与发送者提供的字节排列相匹配,但是没有共同的规范要求发送数据的时间顺序与其在分组中的排列有任何关系。此外,关于包相对于彼此的时间顺序的唯一保证是非常模糊的。如果数据包X在星期日的上午11:47传递,而数据包Y在第二天的下午3:28传递,则可以安全地假设Y在X之后发送。另一方面,如果X在1:47:12传递并且Y是在1:47:15交付的,很有可能首先发送了Y,但是X花费的时间更长。

偶然地,一个10-base-T以太网连接按顺序发送各个位,但是高速布线通常使用各种信令方法一次发送多个位。


因此,互联网是一种延迟的串行通信。我们可以说这是非实时串行通信,因为首先要在使用之前存储串行数据。
user16307

@ cmd1024问题是Internet非常复杂。实际上,它可以用作并行通信介质,但是在这里,我们将进入Internet路由的阴霾。在Internet上两台计算机之间的传输中,一个数据包以一种方式行进而另一种数据包以另一种方式行进并不是很不寻常,因此它可以平行于一种方式。甚至还有访问Internet的方法,这些方法允许使用多个网络接口,并允许完全并行的通信。
AndrejaKo'5

所以互联网不是串行的,它是混合的吗?我们都同意吗?
user16307'5

2
@ cmd1024我认为最好等待clabacchio完成他的答案。您提出的问题非常棘手,因为一方面互联网与简单的RS-232端口的运行水平完全不同。
AndrejaKo 2012年

1
Internet!=以太网。我说的是使用原始以太网的一些设备,没有ip或tcp / udp。甚至那个802.3都基于phy,它只是一个差分串行线。

7

以太网可以串行传输,通常直到1000BASE-T为止。

但是它是打包的,因为存在大量寻址,crc等开销,所以您实际上无法发送单个有效字节。以太网也不能保证数据包之间的顺序,因此您可以发送数据包AB和C,但是接收方可以按照CA B的顺序获取它们。还引入了冲突检测和重传功能。

总体而言,串行连接要复杂得多。


关于数据包排序的优秀知识。
2012年

排序数据包是否由OSI堆栈中比phy以太网层更高的层处理。您当然可以在以太网线上发送一个字节。它与rs232线上的单个字节一样没有意义。两者都需要更高层的协议来理解字节。

4

答案是:ISO- OSI堆栈。

OSI代表开放系统互连(ISO是国际标准化组织),它是一个模型,定义了用于在各种设备之间传输数据的结构。每个级别都是一个不同的抽象层,并添加定义通信协议的规则或细节。

互联网(不包括与HTTP经常关联的事物)属于上层(网络层),而串行通信只是定义物理层的一种方式。

在此处输入图片说明

与用于Internet的TCP / IP模型相比,这是OSI模型堆栈:您可以看到Internet是在网络级别定义的,而串行协议(严格来说,不是实现)是由物理层定义的,在堆栈的底部。

来自Wiki的有关Internet协议套件的信息

Internet协议套件是用于Internet和类似网络的一组通信协议,通常是广域网最流行的协议栈。由于其最重要的协议,它通常被称为TCP / IP:传输控制协议(TCP)和Internet协议(IP)

它具有四个抽象层,每个抽象层都有自己的协议。从最低到最高,层是:

  • 链路层(通常为以太网)包含用于局域网的通信技术。

  • 互联网层(IP)连接本地网络,从而建立了互联网络。

  • 传输层(TCP)处理主机到主机的通信。

  • 应用程序层(例如HTTP)在进程到进程级别(例如,Web浏览器与Web服务器的通信方式)包含用于特定数据通信服务的所有协议。

以太网和WiFi是可以用作网络访问层的协议示例,为Internet连接提供物理介质和基本传输规则(例如符号编码)。

如上所述,在堆栈的不同层使用的其他协议是TCP,UDP,HTTP和许多其他协议。


7
+1长答案:TCP位于比串行通信更高的层。对于TCP,基本的通信方式是否为串行都无关紧要。
starblue'5

并且有通过USB的以太网,例如RNDIS。
user3528438

3

有几个人给您很好的答案。

但是,还有一个没人提到的区别。

当我们谈论PC的串行和并行外设时,从历史上讲,我们谈论的是点对点链接。一台计算机与一台打印机或一台调制解调器对话(每根电缆)。通常,有一个设备控制通过这些链接进行的所有通信,而设备则按照它们的指示进行操作。

当我们谈论以太网时,我们在谈论网络。多台计算机连接到网络,它们中的任何一个都不一定是主计算机或从计算机。在早期的以太网协议中,实际上会将多台计算机连接到同一根同轴电缆。当今,以太网通常意味着点对点链接,但是以太网包含的协议可以与对等网络中的多个其他设备进行通信。

当然,USB会稍微改变PC外围设备的外观,因为它是一个多点网络,但它仍然是具有定义的主机和从机的外围互连,而不是对等网络。

因此,我想说的是,关于串行和并行接口的讨论没有提及网络,也没有提及TCP或以太网,因为这些东西生活在与外围互连完全不同的世界中。就像当您谈论各种苹果(Red Delicious,Braeburn等)时,您从未提到Gros Michel和Cavendish。


我认为您可以使用OSI模型来回答这个问题:网络的定义比物理介质的层次更高,因此您首先进行(点对点)连接,然后定义将消息路由到的规则。更大的网格。
clabacchio

@clabacchio,是的,OP询问了TCP,与串行/并行接口相比,TCP是OSI堆栈的完全不合适的级别。我的答案是关于以太网的,它的确涉及物理层。我的回答可能与主题无关,但是如果有人发现它能提供有用的信息,我将不作回答。
Photon

0

在我作为电厂设计的控制系统工程师的工作中,我们有固定的IO(输入/输出)点列表和单独的“串行”点列表。我更喜欢将这些“软”点列表称为“通信点列表”,因为它们通常基于以太网(Modbus TCP,DNP3,Profinet等)。许多同事仍然坚持使用历史上的“序列点列表”标题。我有兴趣听取其他人关于此类列表的适当命名的信息。


-1

除硬件人员外,每次一个字节也称为串行通信。没人在乎信令是如何完成的。考虑一下调制解调器。尽管由UART芯片驱动的RS-323接口可能一次敲除一位,但调制解调器完成的实际编码可能会使用并行编码,从而可以同时发送多个位。

以太网过去也严格地是串行的(基带脉冲频率为10 Mhz)。现代以太网协议不是串行的。

“序列化”一词通常用来表示“将内存中的某些数据按字节格式打包”(在某些数据链路和物理通信层中,位顺序等问题的处理已逐渐减少)。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.