use of org.opendaylight.openflowjava.protocol.impl.clients.ClientEvent in project openflowplugin by opendaylight.
the class IntegrationTest method testInitiateConnection.
@Test
public void testInitiateConnection() throws Exception {
setUp(TransportProtocol.TCP);
final Deque<ClientEvent> scenario = ScenarioFactory.createHandshakeScenario();
final ScenarioHandler handler = new ScenarioHandler(scenario);
final List<OFClient> clients = createAndStartClient(1, handler, TransportProtocol.TCP, ClientType.LISTENING);
final OFClient ofClient = clients.get(0);
ofClient.getIsOnlineFuture().get(CONNECTION_TIMEOUT, TimeUnit.MILLISECONDS);
final int listeningClientPort = ((ListeningSimpleClient) ofClient).getPort();
mockPlugin.initiateConnection(switchConnectionProvider, "localhost", listeningClientPort);
ofClient.getScenarioDone().get();
LOGGER.debug("testInitiateConnection() Finished");
}
use of org.opendaylight.openflowjava.protocol.impl.clients.ClientEvent in project openflowplugin by opendaylight.
the class IntegrationTest method testHandshake.
/**
* Library integration and communication test with handshake.
*/
@Test
public void testHandshake() throws Exception {
setUp(TransportProtocol.TCP);
final int amountOfCLients = 1;
final Deque<ClientEvent> scenario = ScenarioFactory.createHandshakeScenario();
final ScenarioHandler handler = new ScenarioHandler(scenario);
final List<OFClient> clients = createAndStartClient(amountOfCLients, handler, TransportProtocol.TCP, ClientType.SIMPLE);
final OFClient firstClient = clients.get(0);
firstClient.getScenarioDone().get();
Thread.sleep(1000);
LOGGER.debug("testHandshake() Finished");
}
use of org.opendaylight.openflowjava.protocol.impl.clients.ClientEvent in project openflowplugin by opendaylight.
the class OFPluginToLibraryTest method handshakeOk1.
/**
* test basic integration with OFLib running the handshake
* @throws Exception
*/
@Test
public void handshakeOk1() throws Exception {
LOG.debug("handshakeOk1 integration test");
switchSim.setSecuredClient(false);
Deque<ClientEvent> handshakeScenario = ScenarioFactory.createHandshakeScenarioVBM(ScenarioFactory.VERSION_BITMAP_13, (short) 0, ScenarioFactory.VERSION_BITMAP_10_13, true);
ScenarioHandler scenario = new ScenarioHandler(handshakeScenario);
switchSim.setScenarioHandler(scenario);
scenarioPool.execute(switchSim);
}
use of org.opendaylight.openflowjava.protocol.impl.clients.ClientEvent in project openflowplugin by opendaylight.
the class OFPluginToLibraryTest method handshakeOkNoVBM_OF10_TwoHello.
/**
* test with MLX running OF10 and OFP running OF13/OF10
*
* MLX issues an OFPT_ERROR on the version compatability MLX issues a second
* HELLO after the second OFP HELLO
*
* @throws Exception
*/
@Test
public void handshakeOkNoVBM_OF10_TwoHello() throws Exception {
LOG.debug("handshakeOkMLX10 integration test");
LOG.debug("openflowPluginProvider: " + openflowPluginProvider);
switchSim = createSimpleClient();
switchSim.setSecuredClient(false);
Deque<ClientEvent> handshakeScenario = ScenarioFactory.createHandshakeScenarioNoVBM_OF10_TwoHello();
// handshakeScenario.setElementAt(new SleepEvent(5000),
// handshakeScenario
// .size());
ScenarioHandler scenario = new ScenarioHandler(handshakeScenario);
switchSim.setScenarioHandler(scenario);
scenarioPool.execute(switchSim);
}
use of org.opendaylight.openflowjava.protocol.impl.clients.ClientEvent in project openflowplugin by opendaylight.
the class ScenarioFactory method createHandshakeScenarioNoVBM_OF10_TwoHello.
/**
* Attempt to simulate the MLX running 1.0 talking to ODL
*
* @return handshake scenario without switch version bitmap
*/
public static Deque<ClientEvent> createHandshakeScenarioNoVBM_OF10_TwoHello() {
Deque<ClientEvent> stack = new ArrayDeque<>();
stack.addFirst(new SendEvent(ByteBufUtils.hexStringToBytes("01 00 00 08 00 00 01 67")));
stack.addFirst(new WaitForMessageEvent(ByteBufUtils.hexStringToBytes("04 00 00 10 00 00 00 15 00 01 00 08 00 00 00 12")));
stack.addFirst(new SendEvent(ByteBufUtils.hexStringToBytes("01 01 00 0c 00 00 00 15 00 00 00 00")));
stack.addFirst(new WaitForMessageEvent(ByteBufUtils.hexStringToBytes("01 00 00 08 00 00 01 68")));
stack.addFirst(new SendEvent(ByteBufUtils.hexStringToBytes("01 00 00 08 00 00 01 68")));
stack.addFirst(new WaitForMessageEvent(ByteBufUtils.hexStringToBytes("01 05 00 08 00 00 01 69")));
stack.addFirst(new SendEvent(ByteBufUtils.hexStringToBytes("01 06 00 80 00 00 01 69 cc 4e 24 1c 4a 00 00 00" + " 00 00 01 00 01 00 00 00 00 00 00 07 00 00 01 0f" + " 00 61 cc 4e 24 1c 4a 60 65 74 68 33 2f 31 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 11 00 00 00 01" + " 00 00 01 40 00 00 01 40 00 00 01 40 00 00 01 40" + " 00 62 cc 4e 24 1c 4a 61 65 74 68 33 2f 32 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 11 00 00 00 01" + " 00 00 01 40 00 00 01 40 00 00 01 40 00 00 01 40")));
stack.addFirst(new WaitForMessageEvent(ByteBufUtils.hexStringToBytes("01 10 00 0c 00 00 00 01 00 00 00 00")));
stack.addFirst(new SendEvent(ByteBufUtils.hexStringToBytes("01 11 04 2c 00 00 00 01 00 00 00 00 42 72 6f 63" + " 61 64 65 20 43 6f 6d 6d 75 6e 69 63 61 74 69" + " 6f 6e 73 2c 20 49 6e 63 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 4d 75 6c" + " 74 69 2d 53 65 72 76 69 63 65 20 49 72 6f 6e" + " 77 61 72 65 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 4e 49" + " 20 35 2e 37 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 4e" + " 6f 6e 65 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 4e 6f 6e 65 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" + " 00 00")));
stack.addFirst(new SleepEvent(5000));
addSleep(stack);
return stack;
}
Aggregations