public void start() throws IOException {

		ServerSocketChannel ssc = ServerSocketChannel.open();
		ssc.configureBlocking(false);
		ServerSocket listenSock = ssc.socket();
		listenSock.bind(new InetSocketAddress(srcPort));
		selector = Selector.open();
		ssc.register(selector, SelectionKey.OP_ACCEPT);
		while (true) {
			selector.select();
			Iterator iter = selector.selectedKeys().iterator();
			while (iter.hasNext()) {
				process((SelectionKey)iter.next());
				iter.remove();
			}
		}
	}