public void connection(){		  
		try {  
		
			ss = new ServerSocket(port); 
			ss.setSoTimeout(60000*5); 
			
			ExecutorService tp = Executors.newFixedThreadPool(noc);
			
			while(!stop){
				try {
					final Socket someClient = ss.accept();  
					System.out.println("client connected");
					
					tp.execute(new Runnable() {					
						@Override
						public void run() {
							try{
								final ObjectInputStream input=new ObjectInputStream(someClient.getInputStream());
								final ObjectOutputStream output=new ObjectOutputStream(someClient.getOutputStream());
								handler.handleClient(input,output);
								input.close();
								output.close();
								someClient.close();
					//			stop = true; 	 
							}catch(Exception e){
								System.out.println("EXCEPTION , Nevermore11");
							}
						}
					});
				}catch(SocketTimeoutException e){
					System.out.println("SocketTimeOUT EXCEPTION, Nevermore9");
					stop = true;	
					System.out.println(e);						
				}	
			} // end of loop
			
			ss.close();
			System.out.println("serverSocket closed");
			
		} catch (IOException e) {
			System.out.println("io exception occured, Nevermore10");
			e.printStackTrace();
		}	
	}