AFSim仿真系统—21 网络命令

 本栏目将对《AFSim 2.9中文参考手册》进行持续更新,欢迎关注交流!

对本书全文和AFSIM其它资料感兴趣的伙伴,可联系作者领取~

全部内容索引请看 ⬇️⬇️⬇️

《AFSim 2.9中文参考手册》-CSDN博客​编辑https://blog.csdn.net/henggesim/article/details/145566384


network <name> <base-type>



   network_address ...



end_network

在AFSIM(Advanced Framework for Simulation, Integration, and Modeling)中,使用 network 命令来定义用户指定的网络。除非在场景输入中使用此命令显式实例化,否则网络会由AFSIM中的通信定义自动生成。所有由 network 命令定义的网络都会被实例化,并通过网络名称或提供的网络地址来分配通信设备。如果未为网络提供特定地址,则将动态分配一个地址,CIDR值为24,可以分配给254个通信对象。

脚本类 WsfNetwork

network

network <name> <base-type>

定义一个网络,其名称为 <name>,基础类型为 <base-type>。

network_address

network_address <address>

如果指定了此命令,就会将网络分配到所提供的地址。可分配的对象数量也将由地址的CIDR值定义。为此网络提供的地址不得与其他网络或保留地址冲突。

概述

network 命令 在AFSIM通信环境中定义一个用户指定的网络。网络会自动由AFSIM中的通信定义生成,除非通过使用此命令显式实例化。在使用网络名称或一个地址(如果为网络提供了一个地址)来分配通信设备时,所有由 network 命令定义的网络都会被实例化并可用。如果未为网络提供特定地址,则将被分配一个动态地址,其CIDR值为24,可分配给254个通信对象。

命令

  • network_address <address>

如果指定了此命令,将网络分配到提供的地址。可分配到此地址的对象数量也将由地址的CIDR值定义。为此网络提供的地址不得与任何其他网络或保留地址冲突。

AD_HOC网络模型WSF_COMM_NETWORK_AD_HOC

network <name> WSF_COMM_NETWORK_AD_HOC

   ... network Commands ...

   ... WSF_COMM_NETWORK_GENERIC commands ...



   update_rate <random-time-reference>



   comm_update_rates

      member <platform-name> <comm-name> update_rate <random-time-reference>

      ...

   end_comm_update_rates



   remove_comm_update_rate <platform-name> <comm-name>



   address_update_rates

      member <address> update_rate <random-time-reference>

      ...

   end_address_update_rates



   remove_address_update_rate <address>



end_network

在AFSIM中,WSF_COMM_NETWORK_AD_HOC 是一种动态网络类型。

这种网络类型与 WSF_COMM_NETWORK_GENERIC 类似,不指定拓扑结构。然而,与用户定义链路状态的静态网络不同,这种网络类型会在运行时根据其成员的潜在通信能力自动修改其拓扑结构。这完全由通信模型的实现驱动,决定了任何个体通信设备是否可以与其他通信设备进行通信。

在运行时,按照用户指定的时间间隔,网络中的每个通信设备会创建与网络中其他可通信设备的链接,并主动移除与不可用通信设备的链接。因此,网络状态可能会根据每个通信模型的实现不断修改。

这种网络类型主要用于通信模型实现中具有更严格控制或限制通信能力的情况,而不是假设总是能够与类似模型通信的完美或有线通信模型(例如,WSF_COMM_TRANSCEIVER),这些模型在同质模型网络中会有效地形成一个网状网络。

在此网络中,每个通信设备的更新期间,仅检查和可能修改传出的状态。

此网络类型中仅修改网络内部的链接。外部网络链接不予考虑。

警告:由于每个接口在每个时间间隔检查网络中的每个其他接口,这种网络类型可能会成为性能问题。建议用户尽可能限制此网络中的通信设备数量,并使用允许的最大更新速率以适应其使用情况。

命令

  • update_rate <random-time-reference>

指定此网络将通过创建和移除链接来更新网络状态的速率。网络中没有特定更新速率的通信设备将使用此速率。

建议如果在单个模拟中使用多个此类型的网络,应使用适当的分布而不是恒定值,以避免所有网络同时更新。

如果用户未指定此值,则使用此更新速率的任何通信设备在模拟期间将不会自动更新。这在希望在网络中混合动态和静态链路规范时很有用。

默认值:最大浮点值(在模拟期间不会发生更新)

  • comm_update_rates … end_comm_update_rates

此块允许用户为特定通信接口指定唯一的更新速率,由平台名称和通信名称指定。以这种方式指定更新速率的任何通信接口将使用此更新速率来修改该接口的传出链接,而不是通过 update_rate 指定的一般更新速率。

此命令对于在适用的情况下增加或减少特定成员的更新速率很有用,这样任何单个通信接口不必决定整个网络的一般更新速率,从而可能导致性能问题。

  • remove_comm_update_rate <platform-name> <comm-name>

移除由平台和通信名称指定的通信设备的唯一更新速率条目。将指定的通信设备设置为使用通过 update_rate 命令分配的一般更新速率。

此命令可用于移除特定通信更新速率,特别是对于派生网络类型。

  • address_update_rates … end_address_update_rates

此块允许用户为特定通信接口指定唯一的更新速率,由通信接口地址指定。以这种方式指定更新速率的任何通信接口将使用此更新速率来修改该接口的传出链接,而不是通过 update_rate 指定的一般更新速率。

此命令对于在适用的情况下增加或减少特定成员的更新速率很有用,这样任何单个通信接口不必决定整个网络的一般更新速率,从而可能导致性能问题。

  • remove_address_update_rate <address>

移除由通信地址指定的通信设备的唯一更新速率条目。将指定的通信设备设置为使用通过 update_rate 命令分配的一般更新速率。

此命令可用于移除特定通信更新速率,特别是对于派生网络类型。

环形拓扑网络模型WSF_COMM_NETWORK_DIRECTED_RING

network <name> WSF_COMM_NETWORK_DIRECTED_RING

   ... network Commands ...



   comm_list

      member <string-value> <string-value>

      ...

   end_comm_list



   address_list

      member <address-value>

      ...

   end_address_list



end_network

WSF_COMM_NETWORK_DIRECTED_RING 提供了一种强制环形拓扑的通用网络。在这个网络中,所有成员都是有序的,每个成员都有一个来自更高序通信对象的传入链接,以及一个指向更低序通信对象的传出链接。因此,这个网络只允许消息沿环的一个方向传递。

此网络要求至少提供三个成员才能创建链接。排序通过 comm_list 和 address_list 中定义的成员隐含实现,其中通过地址指定的通信设备(如果适用)按输入顺序排列,接着是通过平台/通信名称指定的通信设备。最后一个有序成员链接到第一个成员以完成环。

命令

  • comm_list … end_comm_list

可以通过识别通信对象的所属平台名称和通信名称来指定此网络的成员。此列表中的每个条目都以“member”命令为前缀。

  • address_list … end_address_list

可以通过识别通信对象的地址来指定此网络的成员。此列表中的每个条目都以“member”命令为前缀。此列表仅适用于在输入中指定了地址的通信对象,因为未指定地址的通信设备将在运行时动态分配。

通用网络模型WSF_COMM_NETWORK_GENERIC

network <name> WSF_COMM_NETWORK_GENERIC

   ... network Commands ...



   comm_list

      member <string-value> <string-value>

      ...

   end_comm_list



   address_list

      member <address-value>

      ...

   end_address_list



   comm_link_list

      link <string-value> <string-value> <string-value> <string-value>

      ...

   end_comm_link_list



   address_link_list

      link <address-value> <address-value>

      ...

   end_address_link_list



end_network

WSF_COMM_NETWORK_GENERIC 提供了一种通用网络,除了必须在现有网络成员之间建立链接外,没有特定的网络实现规则。此网络中的链接完全由指定的连接定义,允许自定义网络拓扑。需要注意的是,即使在此网络中指定了通信设备之间的链接,也不保证这些通信对象由于类型差异或不兼容性而能够相互通信。

命令

  • comm_list … end_comm_list

可以通过识别通信对象的所属平台名称和通信名称来指定此网络的成员。此列表中的每个条目都以“member”命令为前缀。

  • address_list … end_address_list

可以通过识别通信对象的地址来指定此网络的成员。此列表中的每个条目都以“member”命令为前缀。此列表仅适用于在输入中指定了地址的通信对象,因为未指定地址的通信设备将在运行时动态分配。

  • comm_link_list … end_comm_link_list

指定由其所属平台名称和通信名称表示的通信对象之间的链接,作为方向对。指定的顺序很重要,因为链接仅从第一个指定的通信设备创建到第二个指定的通信设备。此列表中的每个条目都以“link”命令为前缀。

  • address_link_list … end_address_link_list

指定由其地址定义的通信对象之间的链接。指定的顺序很重要,因为链接仅从第一个指定的地址创建到第二个。此列表中的每个条目都以“link”命令为前缀。

全双向通信网格模型WSF_COMM_NETWORK_MESH

network <name> WSF_COMM_NETWORK_MESH

   ... network Commands ...



   comm_list

      member <string-value> <string-value>

      ...

   end_comm_list



   address_list

      member <address-value>

      ...

   end_address_list



end_network

WSF_COMM_NETWORK_MESH 提供了一种强制网状拓扑的通用网络。在这个网络中,只需指定成员,所有成员之间都有双向通信链接。这意味着每个成员都可以与其他所有成员进行通信。

命令

  • comm_list … end_comm_list

可以通过识别通信对象的所属平台名称和通信名称来指定此网络的成员。此列表中的每个条目都以“member”命令为前缀。

  • address_list … end_address_list

可以通过识别通信对象的地址来指定此网络的成员。此列表中的每个条目都以“member”命令为前缀。此列表仅适用于在输入中指定了地址的通信对象,因为未指定地址的通信设备将在运行时动态分配。

概述

网状网络(Mesh Network)是一种局域网拓扑结构,其中基础设施节点(如桥接器、交换机和其他基础设施设备)直接、动态且非层次化地连接到尽可能多的其他节点,并相互协作以有效地路由数据。在WSF_COMM_NETWORK_MESH中,这种拓扑结构确保所有成员之间的通信是双向的,形成一个完全互联的网络。

这种网络类型适用于需要高冗余和可靠性的场景,因为每个节点都与多个其他节点连接,从而提高了网络的弹性和数据传输的可靠性。

严格通信网络模型WSF_COMM_NETWORK_MESH_LEGACY

network <name> WSF_COMM_NETWORK_MESH_LEGACY

   ... network Commands ...



   comm_list

      member <string-value> <string-value>

      ...

   end_comm_list



   address_list

      member <address-value>

      ...

   end_address_list



end_network

WSF_COMM_NETWORK_MESH_LEGACY 提供了一种通用网络,强制采用网状拓扑。在这个网络中,只需指定成员。与标准网状网络不同,此网络仅在网络创建时在能够相互通信的对象之间创建链接。例如,两个基于无线电的通信设备如果不在通信距离内,将不会在网络中创建初始链接。

此网络对象是AFSIM早期版本中的默认网络实现。当未指定其他网络对象时,AFSIM中默认创建的网络继续使用此网络对象。

命令

  • comm_list … end_comm_list

可以通过识别通信对象的所属平台名称和通信名称来指定此网络的成员。此列表中的每个条目都以“member”命令为前缀。

  • address_list … end_address_list

可以通过识别通信对象的地址来指定此网络的成员。此列表中的每个条目都以“member”命令为前缀。此列表仅适用于在输入中指定了地址的通信对象,因为未指定地址的通信设备将在运行时动态分配。

概述

WSF_COMM_NETWORK_MESH_LEGACY 是一种网状网络类型,强调在网络创建时的通信能力。它确保只有在创建时能够相互通信的成员之间才会建立链接。这种方法适用于需要考虑通信范围和能力的场景,确保网络的实际通信能力与其拓扑结构一致。

这种网络类型在AFSIM的早期版本中作为默认实现,继续在未指定其他网络类型时使用。

P2P网络拓扑网格模型WSF_COMM_NETWORK_P2P

network <name> WSF_COMM_NETWORK_P2P

   ... network Commands ...



   comm_list

      member <string-value> <string-value>

      ...

   end_comm_list



   address_list

      member <address-value>

      ...

   end_address_list



end_network

WSF_COMM_NETWORK_P2P 提供了一种通用网络,强制采用点对点(Point-to-Point)拓扑。在这个网络中,只能存在两个通信设备,并且它们之间具有双向通信能力。

命令

  • comm_list … end_comm_list

可以通过识别通信对象的所属平台名称和通信名称来指定此网络的成员。此列表中的每个条目都以“member”命令为前缀。

  • address_list … end_address_list

可以通过识别通信对象的地址来指定此网络的成员。此列表中的每个条目都以“member”命令为前缀。此列表仅适用于在输入中指定了地址的通信对象,因为未指定地址的通信设备将在运行时动态分配。

概述

点对点网络(P2P)是一种网络拓扑结构,其中两个设备直接连接并进行通信。在WSF_COMM_NETWORK_P2P中,这种拓扑结构确保只有两个成员,并且它们之间的通信是双向的。这种网络类型适用于需要简单、直接连接的场景,例如两个设备之间的专用通信通道。

这种网络类型在需要严格控制通信路径和参与设备数量的情况下非常有用,确保通信的安全性和可靠性。

环形网络模型WSF_COMM_NETWORK_RING

network <name> WSF_COMM_NETWORK_RING

   ... network Commands ...



   comm_list

      member <string-value> <string-value>

      ...

   end_comm_list



   address_list

      member <address-value>

      ...

   end_address_list



end_network

WSF_COMM_NETWORK_RING 提供了一种通用网络,强制采用环形拓扑。在这个网络中,所有成员都是有序的,每个成员与其邻居有双向链接。因此,此网络要求至少提供三个成员才能创建链接。排序通过 comm_list 和 address_list 中定义的成员隐含实现,其中通过地址指定的通信设备(如果适用)按输入顺序排列,接着是通过平台/通信名称指定的通信设备。第一个和最后一个有序成员相互链接以完成环形拓扑。

命令

  • comm_list … end_comm_list

可以通过识别通信对象的所属平台名称和通信名称来指定此网络的成员。此列表中的每个条目都以“member”命令为前缀。

  • address_list … end_address_list

可以通过识别通信对象的地址来指定此网络的成员。此列表中的每个条目都以“member”命令为前缀。此列表仅适用于在输入中指定了地址的通信对象,因为未指定地址的通信设备将在运行时动态分配。

概述

环形网络(Ring Network)是一种网络拓扑结构,其中每个节点连接到正好两个其他节点,形成一个单一的连续信号路径——一个环。数据从节点传递到节点,每个节点沿途处理每个数据包。在WSF_COMM_NETWORK_RING中,这种拓扑结构确保所有成员之间的通信是双向的,形成一个完整的环形连接。

这种网络类型适用于需要确保所有节点之间有直接路径的场景,提供了一种简单而有效的方式来管理网络通信。

星形拓扑网络模型WSF_COMM_NETWORK_STAR

network <name> WSF_COMM_NETWORK_STAR

   ... network Commands ...



   comm_list

      member <string-value> <string-value>

      ...

   end_comm_list



   address_list

      member <address-value>

      ...

   end_address_list



   hub_named <string-value> <string-value>



   hub_address <address-value>



end_network

WSF_COMM_NETWORK_STAR 提供了一种通用网络,强制采用星形拓扑。在这个网络中,一个通信对象被指定为“中心”(hub),网络中的所有其他成员仅与“中心”通信对象有双向链接。这保证了网络中任何成员之间最多只有两跳。需要注意的是,如果在此网络中未指定中心,则不会创建任何链接。

命令

  • comm_list … end_comm_list

可以通过识别通信对象的所属平台名称和通信名称来指定此网络的成员。此列表中的每个条目都以“member”命令为前缀。

  • address_list … end_address_list

可以通过识别通信对象的地址来指定此网络的成员。此列表中的每个条目都以“member”命令为前缀。此列表仅适用于在输入中指定了地址的通信对象,因为未指定地址的通信设备将在运行时动态分配。

  • hub_named <string-value> <string-value>

通过其所属平台名称和通信名称指定星形网络的中心通信对象。此中心必须是网络的成员。

  • hub_address <address-value>

通过其地址指定星形网络的中心通信对象。此中心必须是网络的成员。

概述

星形网络(Star Network)是一种网络拓扑结构,其中所有节点都连接到一个中央节点(中心)。在WSF_COMM_NETWORK_STAR中,这种拓扑结构确保所有成员与中心节点之间的通信是双向的,形成一个以中心为核心的连接结构。这种网络类型适用于需要集中管理和控制的场景,提供了一种简单而有效的方式来管理网络通信。

猜你喜欢

转载自blog.csdn.net/henggesim/article/details/146471316
今日推荐