问题描述
我尝试用两个节点创建一个简单的场景,一个是服务器,另一个是客户端。我用路由器无线连接了 2 个节点。我将最简单的模型 UnitdiskRadioMedium
用于无线电媒体。我在两个节点上运行一个 FTP 应用程序。如果我不向 **.propagation.propagationSpeed
添加低值,我会收到以下错误。
在已经传输的同时从上层接收到帧。 -- 在模块中 (inet::physicallayer::UnitdiskRadio)
我的问题是我需要在场景中添加或删除什么才能在不增加传播速度的情况下工作?
我选择 UnitdiskRadioMedium 是因为它是一种简单的无线电媒体。我不想使用复杂的物理层。我在下面附上了我的 ned 和 ini 文件。
#nedfile
package wireless.simulations.FTP;
import inet.node.inet.Router;
import inet.networklayer.configurator.ipv4.Ipv4NetworkConfigurator;
import inet.node.inet.INetworkNode;
import inet.physicallayer.contract.packetlevel.IRadioMedium;
import inet.visualizer.contract.IIntegratedVisualizer;
import inet.node.inet.StandardHost;
import inet.node.inet.WirelessHost;
import ned.DatarateChannel;
import inet.linklayer.acking.AckingWirelessInterface;
import inet.physicallayer.unitdisk.UnitdiskRadioMedium;
import inet.physicallayer.apskradio.packetlevel.ApskScalarRadioMedium;
network FTP_B
{
parameters:
@display("bgb=1200000,500;bgg=100,1,grey95");
@figure[title](type=label; pos=0,-1; anchor=sw; color=darkblue);
@figure[rcvdPkText](type=indicatorText; pos=380,20; anchor=w; font=,18; textformat="packets received: %g"; initialValue=0);
submodules:
visualizer: <default("IntegratedCanvasVisualizer")> like IIntegratedVisualizer if hasVisualizer() {
@display("p=580,125");
}
configurator: Ipv4NetworkConfigurator {
@display("p=580,200");
}
radioMedium: UnitdiskRadioMedium {
@display("p=580,275");
}
router: <default("Router")> like inetworkNode {
@display("p=550000,325");
}
Client: <default("WirelessHost")> like inetworkNode {
@display("p=50,325");
}
Server: <default("WirelessHost")> like inetworkNode {
@display("p=1100000,325");
}
}
#ini 文件
[Config FTP_4]
network = FTP_B
*.*.ipv4.arp.typename = "GlobalArp"
#Router
*.router.numWlanInterfaces = 1
#The wirless settings for router client and server
*.*.wlan*.typename = "AckingWirelessInterface"
*.*.wlan*.mac.useAck = false
*.*.wlan*.mac.fullDuplex = false
*.*.wlan*.radio.transmitter.communicationRange = 550km
*.*.wlan*.radio.receiver.ignoreInterference = true
*.*.wlan*.mac.headerLength = 23B
**.wlan*.bitrate = 54Mbps
#Configure the Configurator for starting routing
*.configurator.config = xml("<config><interface hosts='**' address='10.0.0.x' netmask='255.255.255.0'/><autoroute metric='errorRate'/></config>")
*.configurator.optimizeRoutes = false
*.*.ipv4.routingTable.netmaskRoutes = ""
# tcp apps
**.Client.numApps = 1
**.Client.app[0].typename = "TcpsessionApp"
**.Client.app[0].active = true
**.Client.app[0].localAddress = ""
**.Client.app[0].localPort = -1
**.Client.app[0].connectAddress = "Server"
**.Client.app[0].connectPort = 52
**.Client.app[0].tOpen = exponential(0.5s)
**.Client.app[0].tSend = 0s
**.Client.app[0].sendBytes = 10MiB
**.Client.app[0].sendScript = ""
**.Client.app[0].tClose = 0s
**.Server.numApps = 1
**.Server.app[0].typename = "TcpsinkApp"
**.Server.app[0].localAddress = ""
**.Server.app[0].localPort = 52
*.Server.tcp.typename = "Tcp"
*.Client.tcp.typename = "Tcp"
*.router.tcp.typename = "Tcp"
**.tcp.tcpAlgorithmClass = "TcpTahoe" # "TcpNeWreno"
**.tcp.mss = 1452
#visualize
*.*.wlan[0].radio.displayCommunicationRange = true
#propagation time for redio medium
#*.*.propagation.propagationSpeed = 299792458mps# etc =1000mps
感谢您的时间。 附注 我使用 Omnet++ 5.6 和 INET 版本 4.2.2
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)