Networking NIC能否同时发送n条网络消息(到n个目的地)?

Networking NIC能否同时发送n条网络消息(到n个目的地)?,networking,network-programming,Networking,Network Programming,机器能否同时发送n网络消息/数据包(到n目的地)?并行性水平是否有上限,以及影响网络并行性的因素 更具体地说,假设有2个数据包和4个事件,s1、r1和s2,r2表示发送/接收数据包1和发送/接收数据包2。当我们异步发送(如s1、s2……r1、r2)和同步发送(s1……r1、s2……r2)时,这有关系吗?在异步发送的情况下,总延迟可以缩短 是的,他们可以。NIC只发送驱动程序告诉它的帧,并尽快发送。NIC不关心目的地 更高层(例如:TCP)负责重传,并有自己的缓冲区。NIC通常可以有多个帧准备好发

机器能否同时发送
n
网络消息/数据包(到
n
目的地)?并行性水平是否有上限,以及影响网络并行性的因素


更具体地说,假设有2个数据包和4个事件,s1、r1和s2,r2表示发送/接收数据包1和发送/接收数据包2。当我们异步发送(如s1、s2……r1、r2)和同步发送(s1……r1、s2……r2)时,这有关系吗?在异步发送的情况下,总延迟可以缩短

是的,他们可以。NIC只发送驱动程序告诉它的帧,并尽快发送。NIC不关心目的地


更高层(例如:TCP)负责重传,并有自己的缓冲区。NIC通常可以有多个帧准备好发送,但它们在NIC中停留的时间很短,只要介质空闲,并且NIC传输了一个帧而没有冲突,它就可以接收另一个帧准备好传输。

您基本上有三个选择:

  • 点对点
  • 多播
  • 广播
  • 点对点消息从一个源发送到一个目的地

    多播消息从源发送到路由器,然后从那里分发到多个收件人。也有一些相对智能的交换机(通常称为“第2层+”或类似的东西)可以处理多播,但一般的“花园式”交换机通常不能/不会处理它

    广播从源传输到本地子网上的所有其他内容。有很多方法可以做到这一点。最常见的可能是发送到地址255.255.255.255。以太网直接支持广播,其“广播”MAC地址为FF:FF:FF:FF:FF


    请注意,IPv6不再支持广播,但确实有一个“所有主机”多播组,该组大致相似。

    哪些交换机不支持多播?透明网桥(即:花园式网桥)只需将帧淹没到除起始端口之外的所有端口。另外,点对点通常被称为单播。不确定这是否有区别。但问题在于发送多条不同的消息,而不是将一条消息发送到多个目的地。@Richard:在这种情况下,很简单:一次只能发送一条消息(最终,网络连接是一个非常快速的串行端口,因此它在任何给定的时间都只发送一位)。发送两条不同的消息(无论是发送到相同的目的地还是不同的目的地)都必须连续进行。