Hi all, I am using the STP protocol with a ring topology with three switch and two computers are connected to transmit a TCPApp. View Image STP1.
If I make the first example with the three switches connected in a ring (as STP1 picture), I look at the packets with wireshark and only the first des of the client sends. And I jump error, see error image. So I think I haven't properly configured the STP.
And if I do the three swicthes without closing the ring as in NoProblem image with wireshark I can see all tcp packets s'envian and entirely correct. No mistake.
Under the code. Thank you very much for your help. Using the 2.3 version of INET.
package new2;
import inet.networklayer.autorouting.ipv4.IPv4NetworkConfigurator;
import inet.nodes.ethernet.EtherSwitch;
import inet.nodes.inet.StandardHost;
import inet.util.NetAnimTrace;
import ned.DatarateChannel;
network NewPcapRecorderTest2
{
@display("bgb=482,392");
types:
channel C extends DatarateChannel
{
datarate = 10Mbps;
//delay = 0.1us;
}
submodules:
client1: StandardHost {
parameters:
@display("p=97,284;i=device/pc3");
}
server: StandardHost {
parameters:
@display("p=416,178;i=device/pc2");
}
configurator: IPv4NetworkConfigurator {
parameters:
@display("p=46,28");
}
netAnimTrace: NetAnimTrace {
@display("p=46,105");
}
etherSwitch: EtherSwitch {
csmacdSupport = false;
spanningTreeProtocol = "";
hasStatus = true;
@display("p=226,223");
}
etherSwitch2: EtherSwitch {
csmacdSupport = false;
spanningTreeProtocol = "";
hasStatus = true;
@display("p=297,155");
}
etherSwitch1: EtherSwitch {
csmacdSupport = false;
spanningTreeProtocol = "";
hasStatus = true;
@display("p=324,231");
}
connections:
client1.ethg++ <--> C <--> etherSwitch.ethg++;
etherSwitch.ethg++ <--> C <--> etherSwitch2.ethg++;
etherSwitch2.ethg++ <--> C <--> server.ethg++;
etherSwitch.ethg++ <--> C <--> etherSwitch1.ethg++;
etherSwitch2.ethg++ <--> C <--> etherSwitch1.ethg++;
}