我正在建立一个模拟IP网络的模拟。简单地说,我使用两个与路由器连接的主机节点。我使用FlatNetworkConfigurator来分配IP。而我的另外两个主机是“EtherHost”,如下面的ned文件所示
package swtichtest.simulations;
import swtichtest.Txc;
import inet.nodes.inet.Router;
import inet.nodes.inet.StandardHost;
import inet.nodes.ethernet.EtherHost;
import inet.nodes.ethernet.EtherSwitch;
import ned.DatarateChannel;
import inet.networklayer.autorouting.ipv4.FlatNetworkConfigurator;
channel cable extends DatarateChannel
{
parameters:
delay = 0.1us;
datarate = 100Mbps;
}
network Tictoc
{
@display("bgb=539,141");
submodules:
tic: EtherHost {
@display("p=291,114");
}
toc: EtherHost {
@display("p=401,33");
}
Rout: Router {
@display("is=s;p=173,25");
}
configurator: FlatNetworkConfigurator {
@display("p=22,25");
}
connections:
Rout.ethg++ <--> cable <--> tic.ethg;
Rout.ethg++ <--> cable <--> toc.ethg;
}
但我的问题是我应该在哪里添加逻辑以生成数据包。如果我改变了从简单的moudule继承的my tic和toc,那我怎么能生成IP包?
答案 0 :(得分:2)
如果您需要TCP / IP流量,必须使用StandardHost。当然,StandardHosts也有以太网接口,因此您可以使用电缆连接这些接口。如果您需要IP,请忘记EtherHost。