GigE发现设备——Link Configuration

概述

​ 设备发现可分为三步:

​ 1、链接协商:因为一个设备可能有一个或多个网络接口将其连入网络,该步骤是为了确定哪些链接是活动的。IEEE802.3定义的以太网自动协商,处理两个连接中的速度协商。

​ 2、IP 配置:使用标准的IP协议,它是由设备发起的。它的目的是为了给设备分配一个唯一的IP地址。GigE视觉设备必须支持DHCP和LLA协议。

​ 3、设备枚举:由应用程序启动,目的是为了收集关于网络上设备的信息。如果应用程序不知道设备IP地址,可以使用广播命令在应用程序的子网上实现。如果已知客户机IP,则可以使用单播UDP来实现。这一步是通过设备和应用之间的GVCP消息交换来实现的。获取到的设备信息包括制造商、设备型号等。

目标

​ 将以下设置为IP配置和设备发现的目标:

​ 1、它必须允许支持多个网络接口。

​ 2、对于IP配置和设备发现有特定的步骤。

​ 3、必须指派有效的IP地址给GigE Vision Device。

​ 4、它必须枚举与GigE视觉应用程序位于同一子网上的所有GigE视觉设备。

​ 5、它应该提供在与应用程序不同的子网上查找GigE视觉设备的规定。

​ 6、在可能的情况下,它应该提供不需要任何网络配置的即插即用解决方案。

​ 7、应该确保在重启或者重置后在20s内网络可达。

​ 8、为GigE视觉应用提供设备专用信息,实现设备的唯一识别(包括型号和厂家)。

​ 9、它应该尽可能利用现有的IP协议,以确保与IP网络的互操作性,并尽可能减少开发工作。

​ 10、它应该允许用户强制一个持久的IP地址到设备。此地址将用于GigE视觉设备的所有后续重新初始化。

​ 11、它应该将GigE视觉设备中的IP堆栈复杂度降到最低。它应该尝试将复杂性推到应用程序端,在应用程序端更容易获得CPU和内存。

物理链接配置

​ 在进行IP配置之前,必须在设备和应用程序之间建立物理连接。GigE视觉设备可以使用多个物理链接来增加数据传输的总可用带宽。当使用多个链路时,可以将它们组合在一起,并在其中分配数据包,以优化带宽利用率。例如,通过组合两个1千兆以太网链接,一个设备可以提供高达2千兆/秒的带宽。

​ 协议提供了四种不同的物理链路配置:

1、单链路配置(SL Configuration)

2、多链路配置(ML Configuration)

3、静态链路聚合组配置(static LAG Configuration,sLAG)

4、动态链路聚合组配置(dynamic LAG configuration, dLAG)

​ SL Configuration 和 ML Configuration是手动控制的,每个网络接口都需要单独配置,每个网络接口在启动时都要经过IP配置。因此,每个物理网络接口最终都有一个不同的IP地址。

​ static LAG 和 dynamic LAG使用IEEE 802.1AX规范创建链接聚合组。因此,对于重新分组的物理接口,应用程序只能看到一个IP地址。物理链接的分组在MAC层执行,对应用软件是透明的。
在这里插入图片描述

Single Link Configuration

​ 单链路配置是最简单的链路,因为只需要一个物理网络接口。因此,所有空间、流和消息通道都附加到这个接口。

要求:一个设备至少有一个网络接口;所有的设备必须支持SL Configuration。

Multiple Links Configuration

要求:一个设备必须最大支持4个不同的网络接口;如果设备支持ML Configuration,那么在使用ML Configuration时,每个网络接口必须独立执行IP配置过程。

​ 支持的网络接口数量存放在寄存器0x0600位置。

​ 每个网络接口都有一个与之关联的索引(0-3)。接口0是控制设备(控制和消息通道)的主接口。并且唯一支持GVCP。如设备发现总是在 #0 上执行,确保设备使用不同的IP地址而不被多次发现。其它接口仅支持附加流通道。这就意味着其他接口只输出或接收GVSP包,不支持GCVP。只能在#0中使用FORCEIP消息,其他接口必须使用静态IP、DHCP或LLA来获取其IP配置信息。

​ 可以认为ML配置中的一个链接就是一个LAG(链路聚合组)。若支持多链路配置,必须在SCPx寄存器中指定流通道使用的具体接口,其network_interface_index字段在流通道与网络接口间提供了映射机制,如果映射采用硬编码,则该字段只读。

​ 允许将每个网络接口视为一个不同的GigE Vision设备,则每个接口是独立的且具有合适的资源,这等价于将多个设备组合成一个单元。

​ **负载平衡:**由于为设备的每个网络接口分配了不同的IP地址,因此可以在发送端使用适当的分配算法实现负载均衡,而不必担心中间网络设备(如以太网交换机)去处理分配。网际协议IP会设计好一个路由使数据包到达接收端的正确接口上。在ML中,为达到负载平衡,可分别将多个流通道一一关联到不同的链路,以平衡这些链路所需的整体网络带宽。

​ 例如,在双端口流设备上,为了执行负载平衡,需要使用相同带宽的两个流通道。每个流通道将关联到一个不同的链接。因此,每个接口上的流将消耗相同的带宽。

Link Aggregation Group Configuration

​ IEEE 802.1AX标准规范了LAG的相关特性。该标准下的电缆以太网交换机遵守IEEE规范,这样可能不会平衡负载GEV流输送到多个外向端口上,这些端口通常使用Ethernet帧的头部信息(有时为IP头)来作为其分配算法的输入参数,这些交换机在GVSP中是不可见的。由于LAG显示单个MAC/IP,这些交换机不能指出怎样去分配GVSP输送,可能在某交换机的一个外向端口上就停止输送了。

网络接口

​ 在链路聚合配置中,只能在static LAG和dynamic LAG中选其一,且其应该使用与LAG相关的具有最小编号物理网路接口的MAC地址。故在引导寄存器中,只有一个“虚拟”网络接口可见。

GVCP影响

​ 如果支持链接聚合,那么每个GVCP通道(控制或消息)都被认为是一个会话。一个GVCP通道必须总是在LAG同一物理链路上被发送。

GVSP影响

​ Round-Robin分配算法允许与流通道相关联的带宽均匀分布,因为所有的GVSP包(可能每个块中的最后一个包除外)都具有相同的大小。因此它在延迟上充分平衡了可用链接之间的带宽。必须选择合适的包大小,以确保所有物理链接都能处理它。

​ 由于分发算法不是标准,GVSP流通道的接收方在寻找丢失包的重新传输时,必须能够容忍数据包无序,并且能够适应比单链路配置更长的超时时间。

​ 使用round-robin分配算法平衡网络负载。首个流数据包可以在该聚合器的任意接口上传送,也可在新的数据块边界上重启一个round-robin新循环。

Static LAG vs Dynamic LAG

​ 两者唯一区别在于IEEE 802.1AX的LACP协议的使用。在static LAG中,绑定到聚合器的任何活动链接都被认为是LAG的一部分(每个设备只有一个聚合组)。LACP的设计是确保系统正确的绑定属于同一互连的物理连接。对于dynamic LAG,这确保聚合器中的所有连接都位于相同的2个伙伴之间。

Events for LAG

​ 由于聚合组中的一个物理链路连接上或断开,而引起聚合速度改变时,设备应发送一个GEV_EVENT_LINK_SPEED_CHANGE事件。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值