Omnet++ 在Inet中查找在应用程序层执行接收消息的最佳方法
我需要找出Inet中的哪些方法最适合以下条件和请求: 当接收到消息或数据包时,应用层中的所有应用程序(如TcpApp、UDPApp、UDPBASICAP等)都以通用方法进行处理。例如,当发送UDPBASICAP数据包时,该数据包将在该函数(方法)中处理。此外,接收TcpApp分组,该分组在该函数(方法)中被处理。我猜函数(方法)在到达所有应用程序之前应该属于公共路径上的一个类(我猜应该在网络层或传输层) 假设omnetpp.ini的一部分是:Omnet++ 在Inet中查找在应用程序层执行接收消息的最佳方法,omnet++,Omnet++,我需要找出Inet中的哪些方法最适合以下条件和请求: 当接收到消息或数据包时,应用层中的所有应用程序(如TcpApp、UDPApp、UDPBASICAP等)都以通用方法进行处理。例如,当发送UDPBASICAP数据包时,该数据包将在该函数(方法)中处理。此外,接收TcpApp分组,该分组在该函数(方法)中被处理。我猜函数(方法)在到达所有应用程序之前应该属于公共路径上的一个类(我猜应该在网络层或传输层) 假设omnetpp.ini的一部分是: *.hostA.numApps = 1 *.host
*.hostA.numApps = 1
*.hostA.app[0].typename = "UdpBasicApp"
*.hostA.app[0].destAddresses = "hostB"
*.hostA.app[0].destPort = 5000
*.hostA.app[0].messageLength = 1000B
*.hostA.app[0].sendInterval = exponential(12ms)
*.hostA.app[0].packetName = "UDPData"
*.hostB.numApps = 1
*.hostB.app[0].typename = "UdpSink"
*.hostB.app[0].localPort = 5000
主机A和主机B是节点。
提前感谢应用程序数据包的内容特定于任何给定的应用程序,因此没有通用功能可以捕获“所有”应用程序数据。即使有这样一种方法,您也无法对数据包执行任何操作,因为您不知道数据包中包含什么以及如何解释它。您将只看到X字节的数据 下层也没有共同点
- 在链路层,如果您有多个网卡,数据可以通过各种接口进入
- 在网络层上,您可以使用IPv6或IPv4通信,因此同样没有公共路径
- 在传输层上,您可以使用UDP、TCP或SCTP
- 在应用程序层上,您有许多应用程序,每个应用程序都以不同的方式解释应用程序数据
简而言之,没有这样的方法,事实上,有这样的方法是没有意义的。应用程序数据包的内容特定于任何给定的应用程序,因此没有可以捕获“所有”应用程序数据的通用函数。即使有这样一种方法,您也无法对数据包执行任何操作,因为您不知道数据包中包含什么以及如何解释它。您将只看到X字节的数据 下层也没有共同点
- 在链路层,如果您有多个网卡,数据可以通过各种接口进入
- 在网络层上,您可以使用IPv6或IPv4通信,因此同样没有公共路径
- 在传输层上,您可以使用UDP、TCP或SCTP
- 在应用程序层上,您有许多应用程序,每个应用程序都以不同的方式解释应用程序数据
简而言之,没有这样的方法,事实上,有这样的方法是没有意义的。谢谢您的完整回复。假设考虑了UDP通信量。回答是什么?谢谢,完整的回答。假设考虑了UDP通信量。反应如何?