public boolean IniciarServidor()
  {
    
    MensajeServidor("Servidor Iniciado");
    try
    {
        // Se abre el host en el puerto  esperando que un cliente llegue
      ServerSocket s = new ServerSocket(puerto);
      MensajeServidor("Esperando Conexion......");
      String url = "http://localhost:"+puerto;

        if(Desktop.isDesktopSupported()){
            Desktop desktop = Desktop.getDesktop();
            try {
                desktop.browse(new URI(url));
            } catch (IOException | URISyntaxException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }else{
            Runtime runtime = Runtime.getRuntime();
            try {
                runtime.exec("xdg-open " + url);
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
      /* Se crea un cliente, con su respectivo metodo run*/
      tcpcliente = new AppCliente();
      Thread t = new Thread(tcpcliente);
      t.start();
      while(true)
      {
        Socket cliente = s.accept();
        //Se instancia un cliente, y se inicia en su respectivo thread con la clase start.
        Peticion pCliente = new Peticion(cliente,tcpcliente);
        pCliente.start();
      }
    }
    catch (IOException e)
    {
      MensajeServidor("Error en servidor\n" + e.toString()); //Si ocurre algun problema al instanciar el servidor se lanza este mensaje de error
    }
    return true;
  }