// threads it will ever use, despite the "max pool size", etc. set on
// the executor passed in here
DefaultSmppClient clientBootstrap = new DefaultSmppClient(Executors.newCachedThreadPool(), SESSION_COUNT, monitorExecutor);
// same configuration for each client runner
SmppSessionConfiguration config = new SmppSessionConfiguration();
config.setWindowSize(WINDOW_SIZE);
config.setName("Tester.Session.0");
config.setType(SmppBindType.TRANSCEIVER);
config.setHost("127.0.0.1");
config.setPort(2776);
config.setConnectTimeout(10000);
config.setSystemId("1234567890");
config.setPassword("password");
config.getLoggingOptions().setLogBytes(false);
// to enable monitoring (request expiration)
config.setRequestExpiryTimeout(30000);
config.setWindowMonitorInterval(15000);
config.setCountersEnabled(true);
// various latches used to signal when things are ready
CountDownLatch allSessionsBoundSignal = new CountDownLatch(SESSION_COUNT);
CountDownLatch startSendingSignal = new CountDownLatch(1);