code: @Override
  	public void start() throws PacketTransportException
      {
          try
          {
          	NetworkInputChannel inputChannel = 
          		new NetworkInputChannel(initialPacketBufferSize,
          				                new TcpBufferedInputStream(socket.getInputStream(),streamRecvBufferSize));
          	NetworkOutputChannel outputChannel = 
          		new NetworkOutputChannel(initialPacketBufferSize,
          				                 new TcpBufferedOutputStream(socket.getOutputStream(),streamSendBufferSize));
          	
              sender = new TcpPacketSender(this,
              		                     outputChannel,
              		                     listener,
              		                     client ? pingInterval : -1,
              		                     sendQueueMaxSize);
              
              receiver = new TcpPacketReceiver(this,
              								 inputChannel,
              		                         listener,
              		                         pingInterval,
              		                         client ? -1 : maxPacketSize);
              
              senderThread = new Thread(sender,"TcpPacketSender["+(client ? "client" : "server")+"]");
              senderThread.start();
              
              receiverThread = new Thread(receiver,"TcpPacketReceiver["+(client ? "client" : "server")+"]");
              receiverThread.start();
          }
          catch (Exception e)
          {
              log.error("#"+id+" cannot start TCP packet I/O handlers",e);
              throw new PacketTransportException("Cannot start TCP packet I/O handlers : "+e.toString());
          }
      }
docs: /*
  (non-Javadoc)
  @see net.timewalker.ffmq4.remote.transport.PacketTransport#start()