¡Recomienda este blog!

sábado, 24 de diciembre de 2011

Cerrado Por Exámenes.


viernes, 2 de diciembre de 2011

Aplicaciones distribuidas mediante RPC

Para la implementación  de aplicaciones  distribuidas  basadas en RPC podemos emplear la librería RPC, que  se facilita en las distribuciones Linux. Esta librería nos ofrece una serie de servicios para la invocación de procedimientos remotos. Estos servicios son relativamente complejos  de manejar,  por lo que resulta  conveniente  utilizar  un compilador de protocolos RPC, que nos resolverá la mayor parte de los problemas técnicos, y solo nos quedara la tarea de escribir el código de los procedimientos del servidor, y el código del cliente. Podemos emplear el comando rpcgen , que toma como entrada un fichero con extensión ’x’, en el cual se especifica el interfaz de las funciones que proporciona el servidor, y su número de versión. Una vez procesado dicho fichero con rpcgen  se obtienen varios ficheros en C, que serán utilizados para compilar el código del cliente y el código del servidor. La sintaxis requerida por los ficheros que rpcgen procesa es una extensión muy simple del lenguaje XDR, que es muy parecida a la sintaxis de C.

viernes, 4 de noviembre de 2011

Beca Vulcanus 2012/2013

Requerimientos lingüísticos para la movilidad 2012/13 UCLM

Human-computer interaction: Red semántica sobre la Persona.

Artículo sobre la noticia: “IBM Desarrolló un chip que emula el cerebro”

A modo de introducción, y tras realizar una primera toma de contacto con el contexto en que se establece la Inteligencia Artificial, he de confesar que estoy realmente sorprendido, pues nunca imaginé que esta Ciencia estuviera presente en disciplinas tan dispares, y que a su vez ofreciera tantas aplicaciones diferentes, tanto para el mundo industrial como para la vida cotidiana.

Como bien se expone en numerosos  artículos, libros y documentales cuando hablamos de Inteligencia Artificial, todos pensamos de forma automática en robots que intentan actuar y pensar como si fueran auténticos humanos, adentrándonos así en un pensamiento que se aleja considerablemente de la realidad. 

Ahora bien, aunque la noticia, a primera vista no se aleja del tópico expuesto anteriormente,  si se hace una reflexión en detalle podemos observar que no es así, ya que no se trata de crear un robot que piense o posea un cerebro humano, si no que va un pasito más allá, intentando crear un cerebro del tamaño de un chip.

Cliente - Servidor de réplica (TCP) en Java

En esta entrada se pretende explicar de una forma práctica y lo más sencilla posible, como se ha de implementar un Cliente-Servidor de réplica usando Java RMI. Para ello utilizaremos la API Java que se encarga de gestionar el protocolo TCP. Así, como el paquete java.net, donde podemos encontrar la especificación completa de las clases involucradas.

Para el desarrollo de la aplicación cliente/servidor con TCP, primero debemos implementar la clase Connection, que permite realizar una conexión diferenciada para cada cliente. Lo podemos introducir en el mismo paquete donde después se creará el servidor. El código es el siguiente.

lunes, 17 de octubre de 2011

Cliente - Servidor de réplica (UDP) en Java.

Vamos a experimentar con la comunicación entre procesos y los protocolos de Internet, viendo como los podemos utilizar por medio de mensajes UDP o streams TCP. Se pondrán en práctica los conceptos de sockets, que se utilizan en la interfaz de programación de aplicaciones TCP y UDP, así como las primitivas send y receive, para el envío y recepci on de mensajes.

Utilizaremos la API Java de UDP y TCP para la programaci on del cliente/servidor con UDP, respectivamente. Así como el paquete java.net, donde podemos encontrar la especificación completa de las clases involucradas. 

martes, 27 de septiembre de 2011

I CARRERA DE ORIENTACIÓN “TIERRA DE GIGANTES”

¡¡Hola a tod@s!! Por fin, llegó la hora de organizar nuestra primera carrera de orientación como club. Desde CriptanaVertical os animamos a tod@s a participar y a pasar un buen rato con toda la familia, amigos, etc pero sobre todo a disfrutar de todo lo que nos ofrece el deporte tanto para la salud como para el desarrollo social. Este es el cartel oficial de la carrera:


También os dejo el pdf donde se especifican todas las intrucciones de la carrera:



¡¡Quedáis todos invitados a participar!!

Un saludo.

www.criptanavertical.com

viernes, 12 de agosto de 2011

Algoritmo de Floyd.

Definición según "Wikipedia".


En informática, el algoritmo de Floyd-Warshall, descrito en 1959 por Bernard Roy, es un algoritmo de análisis sobre grafos para encontrar el camino mínimo en grafos dirigidos ponderados. El algoritmo encuentra el camino entre todos los pares de vértices en una única ejecución. El algoritmo de Floyd-Warshall es un ejemplo de programación dinámica.
El algoritmo de Floyd-Warshall compara todos los posibles caminos a través del grafo entre cada par de vértices. El algoritmo es capaz de hacer esto con sólo V3 comparaciones (esto es notable considerando que puede haber hasta V2 aristas en el grafo, y que cada combinación de aristas se prueba). Lo hace mejorando paulatinamente una estimación del camino más corto entre dos vértices, hasta que se sabe que la estimación es óptima.

Trip to London.

Guide to London
Traslado desde el Luton Airport

Usar servicio gratuito de Bus, desde aeropuerto hasta Luton Airport Parkway (( Estación de tren )) desde aquí hasta la estación Mill Hill Broadway es directo. Se puede ir andando al hotel, o coger un  minicabs ( Taxi que tiene contratado el hotel para que te lleven desde la estación ), decirle que nos deje en la puerta de atrás, así solo cuesta 5 libras.


Tren (Thameslink):
El tren Thameslink comunica la estación Luton Airport Parkway con el centro de Londres en 35 minutos a un precio de £12 el billete. Entre la Terminal del aeropuerto y la estación Luton Parkway hay un servicio de autobús que recorre los 2 Km (8 minutos). Que los separan.

Tran (First Capital Connect)
Tren rápido y eficaz que cubre el trayecto desde la estación Luton Airport Parkway hasta el centro de Londres en tan solo 25 o 30 minutos. El precio es de cerca de £12.00.

Autobús (EasyBus)
Es la forma más barata de trasladarse desde el mismo aeropuerto hacia el centro de Londres. El precio puede variar dependiendo de la antelación de la reserva de manera que mientras antes reserves, te puede llegar a costar entre £2.00 a £8.00. La desventaja de estos minibuses es la duración del trayecto que puede variar de 1 a 1 hora y 20 minutos. Página web (http://www.easybus.es).

lunes, 1 de agosto de 2011

Peritajes Informáticos.

1. Peritajes informáticos:

1.1 Preguntas iniciales.

2. Pasos para la realización de un peritaje informático.

3. Deberes y responsabilidades del Perito Informático.

4. Bibliografía.

__________________________________________________________

1.Peritajes informáticos:

Actualmente, la Sociedad de la Información ha incrementado considerablemente el uso de las nuevas tecnologías en diversos ámbitos como pueden ser: el empresarial y del uso particular de los ciudadanos, por eso se puede decir que la informática es cada vez más habitual en la práctica de diversas actividades y de profesiones. Además la informática se ha usado para una amplia diversidad de actividades delinquivas. Por ello, este tipo de situaciones precisan de peritajes informáticos para que aporten con su dictamen un medio específico de prueba.

viernes, 29 de julio de 2011

Buenas noticias; Acreditación de nivel B1 en la ESII ( Albacete )

Hola a tod@s, os transmito una muy buena noticia para los estudiantes de Ingeniería Informática de la Escuela Superior de Albacete con respecto a la acreditación del nivel de ingles B1 para la obtención del título de grado.

Ya que, según normativa de la UCLM
(http://www.uclm.es/normativa/pdf/docencia_ordenacion_academica/18.pdf) los estudiantes de grado deberán acreditar el nivel B1 de conocimiento de una lengua extranjera para la obtención del título de grado.

Sin embargo, debido a la implantación por inmersión de algunos títulos, se eximirá de acreditar el nivel B1 hasta diciembre de 2012 a aquellos estudiantes que se hayan adaptado a un grado implantado por inmersión (acta del Consejo de Gobierno de la UCLM de Mayo de 2010, http://www.uclm.es/organos/c_gobierno/arcg/repositorio/8_61.pdf).

En el párrafo anterior, la palabra "adaptado" hace referencia exclusivamente a aquellos estudiantes que abandonan sus estudios actuales y pasan a realiz
ar el grado. En el caso de la ESII, por tanto, esta moratoria solo es de aplicación a los estudiantes que han abandonado (o abandonen) sus estudios de Ingeniería Informática o de Ingeniería Técnica en Informática (Sistemas o Gestión) para pasar a cursar los estudios de grado. Por lo tanto, no se les podrá eximir de acreditar el nivel B1 a aquellos estudia
ntes que han accedido al grado siendo ya titulados (salvo a los ingenieros técnicos que se encontraran haciendo el segundo ciclo en el momento de adaptarse al grado).

Una de las opciones para acreditar el nivel B1 es haber cursado 12 créditos en asignaturas en inglés. En este cómputo se tendrán en cuenta las asignaturas cursadas en cualquier plan de estudios en que hubiera estado matriculado previamente el estudiante. Por ejemplo, si se cursó la asignatura optativa "Inglés Técnico" de 6 créditos, solo será necesario cursar otros 6 créditos en inglés en el grado.

domingo, 26 de junio de 2011

Algoritmos Vuelta Atras.

Índice

1. Describir la Metodología de resolución de problemas “Vuelta Atrás”.
1.1 Aplicación y alcance.
1.2 Elementos característicos.
1.3 Esbozo del coste computacional.

2. Problema para realizar la resolución "más barata computacionalmente" y el cual se lleva a cabo mediante esta metodología. Aplicarla.
2.1 Identificación de los elementos característicos.
2.2 Demostración/Justificación de porque el problema es resoluble por esta vía.
2.3 Resumen del código y análisis del coste computacional a partir del código reducido.

3.Bibliografía.

_____________________________________________________________


1. Describir la Metodología de resolución de problemas “Vuelta Atrás”.

Los algoritmos vuelta atrás (también conocidos como Backtraking), son una estrategia de programación que permiten encontrar soluciones a problemas que tienen unas determinadas
restricciones.

La forma de trabajar de este tipo de algoritmos, es muy semejante a la realización de un recorrido en profundidad dentro de un árbol de búsqueda. Así, para encontrar el conjunto de posibles soluciones, basta con recorrer el árbol construyendo soluciones parciales a medida que se avanza hacia la solución final.

Estas soluciones parciales, limitan las regiones en las que se puede encontrar una solución completa. De esta forma, si el recorrido tiene éxito, se puede continuar buscando otras soluciones o la mejor de todas ellas, y concluir con la más óptima.

Programación Dinámica.

Índice

1. Describir la Metodología de resolución de problemas “Programación Dinámicas”.
1.1 Aplicación y alcance.
1.2 Elementos característicos.
1.2 Esbozo del coste computacional.

2. Problema para realizar la resolución "más barata computacionalmente" y el cual se lleva a cabo mediante esta metodología. Aplicarla.
2.1 Identificación de los elementos característicos.
2.2 Demostración/Justificación de porque el problema es resoluble por esta vía.
2.3 Resumen del código y análisis del coste computacional.

3. Bibliografía.

______________________________________________________________

1. Describir la Metodología de resolución de problemas Programación Dinámicas”.

El rmino Programación Dinámica fue utilizado inicialmente en 1940, para resolver problemas de optimización matemática.

La programación dinámica es un método de optimización del cálculo de problemas y es utilizada en compiladores, consiste en solucionar cierto problema dividiéndolo en subproblemas más sencillos, calculando sus resultados y almacenándolos. Estos resultados posteriormente se
utilizan para la resolución del problema final.

Almacenar resultados de subproblemas es una gran ventaja en cálculos dónde se repiten las mismas operación múltiples veces, mediante el método de la programación dinámica estas operaciones sólo se realizan una vez y se guarda la solución.

Se dice de la programación dinámica que es un método para resolver problemas que exhiben propiedades de problemas sobrepuestos y estructura óptima.

jueves, 5 de mayo de 2011

Nombres de Dominio desde el punto de vista de la LSSI ( Ley de Servicios de la Sociedad de la Información).

1 Introducción.

1.1 División de Nombres de dominio en Internet.

1.2 Organizaciones relacionadas con los nombres de dominio.
IANA.
ICANN y la asignación oficial.
LATINOAMERICANN.
LACLTD.
INTERNIC.
LACNIC .
2 Regulación de Nombres de Dominio en la LSSI.

_______________________________________

1 Introducción.

Un dominio de Internet es una red de identificación asociada a un grupo de dispositivos o equipos conectados a la red Internet.

El propósito principal de los nombres de dominio en Internet y del sistema de nombres de dominio (DNS), es traducir las direcciones IP de cada nodo activo en la red, a términos memorizables y fáciles de encontrar. Esta abstracción hace posible que cualquier servicio (de red) pueda moverse de un lugar geográfico a otro en la red Internet, aun cuando el cambio implique que tendrá una dirección IP diferente.

1.1 División de Nombres de dominio en internet.

Los dominios en internet se pueden dividir en diferentes niveles, para mejorar la comprensión de estos, a continuación se explicará brevemente esta división :

En el primer nivel de la jerarquía se encuentran los "Top Level Domains" o TLD's, que son uno por país (España ".es", Francia ".fr", etc.), más los dominios "especiales" de 3 letras: ".edu", ".com", ".gov", ".mil", ".org", ".int" y ".net". Los dominios de primer nivel son, para entendernos, la parte final de las direcciones de Internet que se ven en el navegador web.

Debajo de los dominios de nivel superior en la jerarquía de nombres de dominio son el dominio de segundo nivel (SLD) nombres. Estos son los nombres directamente a la izquierda de los dominios de nivel superior. Como ejemplo, en el dominio de en.wikipedia.org, Wikipedia es el dominio de segundo nivel.

Siguen los dominios de tercer nivel, que se escriben inmediatamente a la izquierda de un dominio de segundo nivel. Este nivel es utilizado para designar a un servidor host en particular. Por ejemplo en dsi.uclm.es el dominio de tercer nivel sería dsi.

Puede haber cuarto y quinto dominios de nivel superior, y así sucesivamente, con prácticamente ninguna limitación. Un ejemplo de un nombre de dominio operativo con cuatro niveles de etiquetas de dominio es www.sos.state.oh.us.

Los nombres de dominio se crean a menudo basándose en el nombre de una empresa (por ejemplo, microsoft.com), producto o servicio (por ejemplo, gmail.com). Un ejemplo de la organización en niveles de un dominio es la siguiente.

1.2 Organizaciones relacionadas con los nombres de dominio

A continuación se describen de forma muy breve algunas de estas organizaciones:

IANA

IANA es la Autoridad para la Asignación de Números de Internet (del Inglés: Internet Assigned Numbers Authority), responsable de la coordinación global de los protocolos de Raíz DNS, direccionamiento IP y otros recursos del Protocolo de Internet.

ICANN y la asignación oficial

La Corporación de Internet para la Asignación de nombres y números de Dominios (del Inglés: Internet Corporation for Assigned Names and Numbers) es una organización sin fines de lucro que opera a nivel de asignar espacio de direcciones numéricas de protocolo de Internet (IP), identificadores de protocolo y de las administración del sistema de servidores raíz. Aunque en un principio estos servicios los desempeñaba Internet Assigned Numbers Authority (IANA) y otras entidades bajo contrato con el gobierno de EE.UU., actualmente son responsabilidad de ICANN.

LATINOAMERICANN

LatinoamerICANN es una organización para la difusión de información y diálogo en temas de Nombres de Dominio, Números IP y Gobierno o Gobernanza de Internet en América Latina y el Caribe. Su misión asimismo es la de colocar información en español, portugués y francés de acceso para todos, considerando que la información en los idiomas de la región resulta siendo un elemento para poder comprender los fenómenos propios del Internet, desde una perspectiva regional en el contexto global.

LACLTD

LACTLD es una organización sin fines de lucro que busca agrupar a los administradores de los ccTLDs de América Latina y el Caribe, con el objeto de Coordinar políticas en conjunto, así como estrategias de desarrollo de los nombres de dominio a nivel regional; representar los intereses conjuntos de sus miembros ante organismos pertinentes; promover el desarrollo de los ccTLDs de la región; fomentar la cooperación y el intercambio de experiencia entre sus miembros, en todos los aspectos necesarios para el adecuado funcionamiento de los ccTLDs y establecer lazos de colaboración con las organizaciones análogas de otras regiones del mundo.

INTERNIC

InterNIC es un servicio y marca registrada del Ministerio de Comercio de los Estados Unidos de América y licenciado a IANA para la gestión de disputas públicas relacionadas con el registro de nombres de dominios.

LACNIC

LACNIC es la organización para el Registro de Direcciones de Internet para América Latina y el Caribe. Su objetivo es la construcción y articulación de esfuerzos colaborativos para el desarrollo y estabilidad de Internet en América Latina y el Caribe. Si bien no tiene relación directa con los dominios, sí es la organización regional a cargo de los recursos de Internet como Direcciones IP y ASNs.

2 Regulación de Nombres de Dominio en la LSSI.

A continuación se realizará un estudio de La ley 34/2002 del 11 de julio, haciendo hincapié en los puntos donde se tratan aspectos relacionados con los nombres de dominio en las tecnologías de la información y la comunicación. Y teniendo en cuenta, además las modificaciones que se hayan podido realizar sobre este tema en la Ley 56/2007 de Medidas de Impulso de la sociedad de la Información.

En dicha ley se establecen de forma clara las pautas a seguir en todo lo referente a nombres de dominio y se prevé la anotación del nombre o nombres de dominio de Internet que correspondan al prestador de servicios en el registro público en que, en su caso, dicho prestador conste inscrito para la adquisición de personalidad jurídica o a los solos efectos de publicidad, con el fin de garantizar que la vinculación entre el prestador, su establecimiento físico y su «establecimiento» o localización en la red, que proporciona su dirección de Internet, sea fácilmente accesible para los ciudadanos y la Administración pública.

Además de establecer, las obligaciones y responsabilidades de los prestadores de servicios que realicen actividades de intermediación como las de transmisión, copia, alojamiento y localización de datos en la red.

Por otro lado, en el capítulo 2 sección 1º, artículo 9, se hace mención a la obligación de registro que tienen los nombres de dominio, cosa que posteriormente no tendrá carácter obligatorio en la ley 56/2007 de Medidas de Impulso de la Sociedad de la información.

Donde se establece en el Apartado III la supresión de la obligación establecida en el artículo 9 sobre constancia registral de los nombres de dominio, dado que se ha revelado como poco operativa desde un punto de vista práctico. Además se elimina del párrafo a) del apartado 4 del artículo 38 donde se establece el no registro como una infracción leve.

En este artículo se determina que los prestadores de servicios de la sociedad de la información establecidos en España deberán comunicar al Registro Mercantil en el que se encuentren inscritos, o a aquel otro registro público en el que lo estuvieran para la adquisición de personalidad jurídica o a los solos efectos de publicidad, al menos, un nombre de dominio o dirección de Internet que, en su caso, utilicen para su identificación en Internet, así como todo acto de sustitución o cancelación de los mismos, salvo que dicha información conste ya en el correspondiente registro.

Además los nombres de dominio y su sustitución o cancelación se harán constar en cada registro, de conformidad con sus normas reguladoras. Las anotaciones practicadas en los Registros Mercantiles se comunicarán inmediatamente al Registro Mercantil Central para su inclusión entre los datos que son objeto de publicidad informativa por dicho Registro.

Y por tanto se tiene obligación de realizar la comunicación a que se refiere el apartado 1 en el plazo de un mes desde la obtención, sustitución o cancelación del correspondiente nombre de dominio o dirección de Internet.

También se hace referencia a los nombres de dominio en el capítulo 7, en relación a las sanciones y fracciones, estableciendo en su Disposición transitoria única la anotación en los correspondientes registros públicos de los nombres de dominio otorgados antes de la entrada en vigor de esta Ley.

Con lo que los prestadores de servicios que, a la entrada en vigor de esta Ley, ya vinieran utilizando uno o más nombres de dominio o direcciones de Internet deberán solicitar la anotación de, al menos, uno de ellos en el registro público en que figurarán inscritos a efectos constitutivos o de publicidad, en el plazo de un año desde la referida entrada en vigor.

Así establecido, se observa que dicha ley en su disposición adicional sexta regula la asignación de dominio bajo el código de país España .es. También cabe destacar sobre el tratamiento del dominio .es el Plan Nacional de Nombres de Dominio bajo el código .es del 19 de Mayo de 2005.

Comentaremos pues las principales disposiciones que aparecen en dichos documentos.
- La entidad pública empresarial Red.es es la autoridad de asignación, a la que corresponde la gestión del registro de nombres de dominio de Internet bajo el .es.

- Criterios para la asignación de nombres de dominio:
Los nombres de dominio de segundo nivel bajo el «.es» se asignarán atendiendo a un criterio de prioridad temporal en la solicitud. No podrán ser objeto de solicitud nombres de dominio que ya hayan sido previamente asignados.

Podrán solicitar la asignación de un nombre de dominio de segundo nivel las personas físicas o jurídicas y las entidades sin personalidad que tengan intereses o mantengan vínculos con España.

En el segundo nivel no podrá asignarse un nombre de dominio que coincida con algún dominio de primer nivel (tales como «.edu», «.com», «.gov», «.mil», «.uk», «.fr», «.ar», «.jp», «.eu») o con uno de los propuestos o que esté en trámite de estudio por la organización competente para su creación, si bien, en este caso, la prohibición sólo se aplicará cuando, a juicio de la autoridad de asignación, el uso del nombre de dominio pueda generar confusión.

Tampoco podrán asignarse nombres de dominio de segundo nivel que coincidan con nombres generalmente conocidos de términos de Internet cuyo uso pueda generar confusión. A tal efecto, el Presidente de la entidad pública empresarial Red.es aprobará una lista reducida y actualizada de términos que tendrá carácter público y estará disponible por medios electrónicos con carácter gratuito.

El presidente de la entidad pública empresarial Red.es mantendrá listas actualizadas de nombres que coincidan con denominaciones de órganos constitucionales u otras instituciones del Estado, con Administraciones Publicas territoriales u organizaciones internacionales y supranacionales oficialmente acreditadas, que no hayan sido previamente asignados y que tendrán el carácter de reservados, y por tanto no podrán ser libremente asignados. La citada lista será pública y estará disponible por medios electrónicos con carácter gratuito.

En el tercer nivel podrán asignarse nombres de dominio bajo los siguientes indicativos «.com.es», «.nom.es», «.org.es», «.gob.es» y «.edu.es».

1. Los nombres de dominio de tercer nivel se asignarán atendiendo a un criterio de prioridad temporal en la solicitud. No podrán ser objeto de solicitud nombres de dominio que ya hayan sido previamente asignados.

Podrán solicitar la asignación de un nombre de dominio de tercer nivel:

a) Bajo el indicativo «.com.es», las personas físicas o jurídicas y las entidades sin personalidad que tengan intereses o mantengan vínculos con España.

b) Bajo el indicativo «.nom.es», las personas físicas que tengan intereses o mantengan vínculos con España.

c) Bajo el indicativo «.org.es», las entidades, instituciones o colectivos con o sin personalidad jurídica y sin ánimo de lucro que tengan intereses o mantengan vínculos.

d) con España.

e) Bajo el indicativo «.gob.es», las Administraciones Públicas españolas y las entidades de Derecho Público de ella dependientes, así como cualquiera de sus dependencias, órganos o unidades.

f) Bajo el indicativo «.edu.es», las entidades, instituciones o colectivos con o sin personalidad jurídica, que gocen de reconocimiento oficial y realicen funciones o actividades relacionadas con la enseñanza o la investigación en España.

Normas comunes para la asignación de nombres de dominio de segundo y de tercer nivel.
1. Los nombres de dominio que se asignen bajo el «.es» respetarán las siguientes normas de sintaxis:

a) Los únicos caracteres válidos para su construcción serán las letras de los alfabetos de las lenguas españolas, los dígitos (‘0’ –’9’) y el guión (‘–’).

b) El primero y el último carácter del nombre de dominio no pueden ser el guión.

c) Los cuatro primeros caracteres del nombre de dominio no podrán ser «xn– –».

d) La longitud mínima para un dominio de segundo nivel será de tres caracteres y para un dominio de tercer nivel, de dos caracteres.

e) La longitud máxima admitida para los dominios de segundo y tercer nivel es de 63 caracteres. El cumplimiento de estas normas de sintaxis se comprobará con carácter previo a la asignación de cualquier nombre de dominio.

2. La autoridad de asignación suspenderá cautelarmente o cancelará, de acuerdo con el correspondiente requerimiento judicial previo, los nombres de dominio que incluyan términos o expresiones que resulten contrarios a la Ley, a la moral o al orden público y aquéllos cuyo tenor literal pueda vulnerar el derecho al nombre de las personas físicas o el derecho de propiedad industrial, atentar contra el derecho al honor, a la intimidad o al buen nombre, o cuando pudiera dar lugar a la comisión de un delito o falta tipificado en el Código Penal. Los nombres de dominio que sean cancelados al amparo de este apartado podrán pasar a formar una lista de nombres de dominio prohibidos.

3. La asignación de nombres de dominio de segundo y de tercer nivel compuestos exclusivamente por apellidos o por una combinación de nombres propios y apellidos,
exigirá que éstos tengan relación directa con el beneficiario del nombre de dominio.

Con respecto a la transmisión de los nombres de dominio:

1. El derecho a la utilización de un nombre de dominio podrá ser transmitido voluntariamente, siempre y cuando el adquirente cumpla con lo previsto en este Plan y en su normativa de desarrollo. Toda transmisión deberá ser comunicada a la autoridad de asignación con carácter previo a la correspondiente modificación de los datos de registro del nombre de dominio.

2. En los casos de sucesión universal «inter vivos» o «mortis causa» y en los de cesión de la marca o nombre comercial al que estuviera asociado el nombre de dominio, el sucesor o cesionario podrá seguir utilizando dicho nombre, siempre que cumpla las normas de asignación de nombres de dominio recogidas en este Plan y solicite de la autoridad de asignación la modificación de los datos de registro del nombre de dominio.

Derechos y obligaciones derivados de la asignación y mantenimiento de los nombres de dominio.

1. Los solicitantes de un nombre de dominio deberán facilitar sus datos identificativos siendo responsables de su veracidad y exactitud.

2. La asignación de un nombre de dominio confiere el derecho a su utilización a efectos de direccionamiento en el sistema de nombres de dominio de Internet en los términos señalados en este Plan y a la continuidad y calidad del servicio que presta la autoridad de asignación.
3. Los beneficiarios de un nombre de dominio bajo el «.es» deberán respetar las reglas y condiciones técnicas que pueda establecer la autoridad de asignación para el adecuado funcionamiento del sistema de nombres de dominio bajo el «.es».

4. Se deberá informar de cualquier modificación de daros asociados a un nombre de dominio registrado.

5. Los cambios de prestador de servicios o la conexión simultánea a varios prestadores no alteran la asignación y mantenimiento de un nombre de dominio.

Resolución extrajudicial de conflictos:
La autoridad de asignación establecerá un sistema de resolución extrajudicial de conflictos sobre la utilización de nombres de dominio en relación con, entre otros, los derechos de propiedad industrial protegidos en España, tales como los nombres comerciales, marcas protegidas, denominaciones de origen, nombres de empresas; o con las denominaciones oficiales o generalmente reconocibles de Administraciones Públicas y organismos públicos españoles.
La ley garantiza una protección eficaz contra el registro abusivo o especulativo, es decir, cuando el titular del mismo lo haya registrado careciendo de intereses o derechos legítimos del nombre de dominio.

Se establecen ciertas modificaciones sobre esta ley en la Ley 56/2007 de Medidas de Impulso de la Sociedad de la información. Destacando las siguientes:

Se permite a la entidad pública empresarial Red.es comerciar con nombres de dominio .es en las mismas condiciones que se comercializan el resto de nombres de dominio genéricos y territoriales.

Se estable el deber de poder asignar nombres de dominio que contengan caracteres propios de las lenguas oficiales de España, distintos de los incluidos en el alfabeto inglés, en un periodo máximos de 3 meses posteriores a la aprobación de esta Ley.

Se permite a Red.es, previa autorización del Ministerio de Industria, Turismo y Comercio el establecimiento de las tasas por asignación, renovación y otras operaciones de los nombres de dominio .es.

La modificación de estas tarifas deberá ir acompañada de una memoria económico-financiera donde se justificará el importe de estas tarifas y el grado de cobertura financiera de los costes correspondientes.

La recaudación de estos precios públicos queda en manos de Red.es, que determinara el procedimiento para su liquidación y pago, debiendo establecer los modelos de declaración, plazos y formas de pago.

Red.es podrá exigir la anticipación del pago del importe total o parcial de los precios públicos relacionados con el dominio .es.

Por último y para concluir, comentar que dentro de los Anexos de la LSSI establecida en 2002 se define como Comunicación comercial: toda forma de comunicación dirigida a la promoción, directa o indirecta, de la imagen o de los bienes o servicios de una empresa, organización o persona que realice una actividad comercial, industrial, artesanal o profesional. Y que a efectos de esta Ley, no tendrán la consideración de comunicación comercial los datos que permitan acceder directamente a la actividad de una persona, empresa u organización, tales como el nombre de dominio o la dirección de correo electrónico.

Servicio de Visualización Remota: X WINDOW

lunes, 18 de abril de 2011

Problemática de las fotocopias de libros: 1996 - Actualidad.

1. Introducción y contexto social.

El problema a analizar surge tras el uso abusivo de las copias de libros por parte de los usuarios y las perdidas económicas que esto supone a escritores y editoriales. Si bien, es cierto que anteriormente a Abril de 1996, fecha en que se crea el Real Decreto que establece una gestión y protección de derechos de reproducción, era completamente legal, y aquí es donde comenzará el estudio, para finalizar en la actualidad.

Debido a esto, el impacto social que tiene este cambio es de gran magnitud, ya que a partir de este momento quedaba prohibido y era considerado como delito algo que siempre ha estado bien visto por gran parte de la sociedad.

De forma general, como se observa en las encuesta realizadas a universitarios de la época, 1996, la gran mayoría estaban desacuerdo con este tipo de prácticas e incluso opinaban que les parecía bien que se copiaran libros, debido al ahorro económico que esto les suponía. De hecho entre los seis comentarios que se recogen en el estudio realizado, solo uno de los encuestados opinó que es algo que no estaba bien, lo que demuestra que un gran porcentaje de la población estaba de acuerdo con este tipo de prácticas.

Por otro lado, supone un cambio brutal en la industria del libro, ya que desde este momento se ejercerá una mayor protección sobre los derechos de reproducción reprográfica, hasta el punto que conocemos en la actualidad.

Es acertado, a mi parecer, la carta enviada a las universidades de aquel entonces, por el presidente de CEDRO, ya que con esto se hace conocer a estas la situación en la que se encuentra tanto la ley como la situación en el sector de las editoriales y los autores.

Si observamos con detenimiento la noticia del 7 de noviembre de 1996 donde se multaba a un empleado de una papelería por realizar copias de libros, se pueden sacar algunas conclusiones sobre como todo esto influye en la sociedad. Por ejemplo al regente de la papelería se le impone una multa de las denominadas “ejemplares”, ya que la sanción que se le establece es de 190.000 euros, es decir, 31.613.340 millones de pesetas, una cifra Problemática de las fotocopias de libros.

Aunque 1996, queda bastante lejos de la actualidad, esta situación es semejante a la vivida actualmente en el sector de la música, el cine, etc. Si nos fijamos, ambas situaciones se producen por la misma situación, es decir, debido a los precios elevados impuestos a estos productos “intelectuales”. Pero no ambas situaciones pueden resolverse de la misma forma.

En el problema de los libros, la situación se reguló, desde mi punto de vista de una forma bastante acertada, ya que las copias se redujeron de forma considerable. Si bien es cierto que hoy en día, son las propias copisterías las que no permiten realizar copias de libros.

Pero si nos paramos a pensar, ya incluso no es necesario ir a coger un libro de forma física y fotocopiarlo porque con internet y las nuevas tecnologías se puede buscar cualquier libro y tenerlo directamente en tu ordenador de una forma rápida, aunque no legal. En este no es necesario ni siquiera imprimir el libro, ya que se puede leer directamente en la pantalla de un ordenador o reproducir en cualquier lector de libros electrónicos (ebook).

2. Análisis del problema en el marco de la Ley de Propiedad intelectual.

Centrándonos en el contexto social descrito en el punto anterior y dentro de la Ley de propiedad intelectual, se procede a analizar de forma clara los diversos Artículos que regulan todo lo relacionado con la copia de libros.

En el artículo 10 de esta ley, se establecen las obras literarias como objeto de la propiedad intelectual así como obras de la misma naturaleza, con lo que desde un primer momento se muestra explícitamente la protección de estos por la ley.

Posteriormente se establecen las normas de distribución en el artículo 19, y se define perfectamente que se entiende como préstamo. En esta definición ya se especifica que dicho préstamo se realizará por tiempo limitado y sin beneficio económico o comercial directo ni indirecto. En este punto, se observa cómo el regente de la papelería que aparece en nuestro estudio estaba incumpliendo este artículo, ya que obtenía beneficio económico de la copia de los libros de medicina y farmacia. Pero no solo esto, sino que también la ley era incumplida por los alumnos que obtenían los libros de la biblioteca para fotocopiarlos, y así obtener beneficio, no de forma directa, pero si indirectamente.
Centrándonos en este aspecto, toma especial sentido la carta circular que el presidente de CEDRO envía a las universidades en 1996, ya que son entornos más propensos a la realización de estas copias.

En el artículo 37 se establece que los museos, archivos, bibliotecas, hemerotecas, fonotecas o filmotecas de titularidad pública o que pertenezcan a entidades de interés general de carácter cultural, científico o educativo sin ánimo de lucro, o a instituciones docentes integradas en el sistema educativo español, no precisarán autorización de los titulares de derechos por los préstamos que realicen. Aunque si se remunerará a los autores por los prestamos que se realicen.

En este artículo aparece una frase que me llama la atención y es que no será necesario esta remuneración a establecimientos públicos que se encuentren en municipios de menos de 5000 habitantes, ni tampoco instituciones docentes integradas en el sistema educativo español. En cuestiones docentes es algo lógico, pero si una población tiene menos habitantes ¿tendrán entonces más privilegios sobre la ley? Es una excepción que me parece de difícil comprensión.

La ley de propiedad intelectual establece además, las compensaciones equitativas por realizar una copia privada en su artículo 25, es decir, que se permite realizar copias de obras como libros, fonogramas, videogramas siempre que hayas pagado por ellos y sean adquiridos de forma legal, pero únicamente si estas copias se realizan para uso privado. Para ello es establece, que cuando se compre un equipo o aparato de reproducción de libros o publicaciones asimiladas reglamentariamente a libros se pague una determinada cantidad extra según la capacidad de copia. Pero, tras este análisis me surgen una duda, por ejemplo, ¿y si la compra de estos aparatos no se realiza para realizar ningún tipo de copia con propiedad intelectual y se adquiere para copias de nuestra propiedad? ¿Estaríamos pagando un canon aunque esto fuera así? La respuesta seguramente sea, Sí. Con lo que se está determinando a priori que se van a copiar “productos intelectuales”.

Con respecto a los derechos de reproducción, distribución y comunicación pública de pequeños fragmentos de obras en el entorno de la enseñanza, la ley determina en el artículo 32 que el profesorado necesitará autorización del autor para realizar estos actos, en lo referente a libros y manuales universitarios. Problemática de las fotocopias de libros.

Tras el estudio de la ley en mayor profundidad, me sorprende gratamente que se establezcan como serán los contratos de edición entre autores y editoriales, como se describe en el artículo 62. Debido a la gran importancia de los autores para estas creaciones y a los que desde mi punto de vista se les debe proteger con mayor mimo.

3. Conclusiones.

En la sociedad actual, aunque en menor cantidad que cuando se promulgó la ley de propiedad intelectual, se siguen realizando copias ilegales de libros, si bien, aunque no en copisterías, si para su posterior distribución en herramientas como Internet y medios como P2P.

Sobre este tema han surgido muchas discusiones sobre si esto está dentro de la legalidad o no.Según la ley de propiedad intelectual no se hace mención de que para que la copia sea legal debe ser hecha directamente de la original, aunque si obliga a que el usuario haya tenido acceso legitimo a la obra que copia. Esto se determinó así, para permitir la grabación de material emitido por medios de comunicación como la televisión o la radio, que retribuyen directamente a los propietarios del material por su comunicación pública, y lo que permite al usuario acceder legítimamente. Con lo que sería necesario, desde mi punto de vista realizar una modificación en la ley para que esto fuera ilegal, ya que en estas prácticas por lo general no existe ánimo de lucro.

Si actualmente se realizara una encuesta a universitarios sobre este tema, como la realizada en 1996, pero centrándose en la copia de libros a través de las nuevas tecnologías, probablemente el resultado sería parecido, ya que socialmente, aunque me cueste admitirlo, estamos muy acostumbrados y vemos como algo normal descargarse un libro por internet, un disco de música etc.

Si reflexionamos un poco sobre el tema, se deduce que estamos en la misma situación en la que se encontraba el sector autoral y editorial en 1996, solo que ahora los medios son electrónicos y no en papel. Con lo que para emendar la situación se necesita un cambio de la legislación vigente, pero un cambio de verdad, ya que no solo basta con prohibir los enlaces en las páginas web como determina la “ley Sinde”, sin pensar que estos son por diversas razones la esencia de internet, si no realizar un cambio más profundo.

También, desde mi punto de vista, el precio de los libros es algunas veces abusivo y esto en parte es también una razón para realizar copias, aunque sean ilegales.

Por último y para concluir, me gustaría mencionar algunas alternativas que se están llevando a cabo de forma satisfactoria, en mi opinión, sobre la venta de libros. Las nuevas tecnologías siguen avanzando a un ritmo casi incontrolable. Con toda esta evolución surgen los E-Book, libros electrónicos o como a mí me gusta llamarlo, ecolibro.

Son libros en formato digital que se pueden adquirir a un coste muy por debajo de los precios de libros “físicos”, y que pueden ser leídos se forma muy agradable mediante un lector de ebooks que simulan papel de verdad. Con todo esto no solo mejorarían las ventas de libros sino que también estaríamos protegiendo el medio ambiente.

lunes, 11 de abril de 2011

Aplicación Cliente-Servidor: Ahorcado remoto.

Contenido

1. INTRODUCCIÓN.

2. DESCRIPCIÓN DEL SERVICIO A IMPLEMENTAR.

3. DECISIONES DE DISEÑO.

3.1. Tipo de protocolo escogido.
3.2. Presentación e introducción de datos.
3.3. Comunicación cliente – servidor.

4. MANUAL DE USUARIO.

4.1. Compilación de la aplicación.
4.2. Ejecución del cliente y el servidor.

5. BIBLIOGRAFÍA EMPLEADA.

__________________________________________________________

1. INTRODUCCIÓN


En este proyecto se pretende abordar el diseño y la implementación de un programa cliente – servidor. Para concretar, este proyecto se centrará en la implementación del servicio de un Ahorcado Remoto.

El objetivo de este trabajo ya no es sólo la resolución del problema asignado, sino la adquisición de conocimientos por parte de los alumnos acerca del propio modelo cliente – servidor y todo lo que ello conlleva. Entre estos conocimientos merece hacer mención a la apertura y cierre de sockets entre cliente y servidor, así como el establecimiento y cierre de la comunicación y el envío de información entre ellos.

Se entiende este aspecto de la asignatura como un elemento imprescindible ya que los sockets proporcionan un elemento de comunicación entre dos procesos, además de ser elementos versátiles y componentes básicos de comunicación entre interprocesos e intersistemas.

Otro de los fines de este proyecto es prestar atención a la importancia de la capa de transporte dentro de la arquitectura OSI, así como de los protocolos UDP y TCP y la diferencia entre ellos. TCP y UDP son dos protocolos de puertos de comunicaciones que resultan imprescindibles, pero que sin embargo se comportan de manera diferente como se comprobará más adelante.

Como consecuencia de lo dicho anteriormente, este proyecto servirá para asentar a los alumnos los conceptos acerca de los diferentes tipos de clientes y servidores, así como su implementación de forma iterativa o concurrente.

Para poder alcanzar las metas propuestas anteriormente, ha sido necesaria la utilización de una serie de recursos, desde los apuntes proporcionados disponibles en la página de la asignatura, hasta la bibliografía complementaria recomendada por el profesor de la misma, que facilita la comprensión de los conceptos ya citados.

2. DESCRIPCIÓN DEL SERVICIO A IMPLEMENTAR.

El servicio a implementar asignado para este grupo corresponde al servicio de Ahorcado Remoto.

Este servicio consistirá en la implementación del juego del ahorcado mediante su diseño en la estructura Cliente – Servidor.

Para ello el servidor debe tener en su haber una serie de palabras almacenadas en un diccionario disponibles para iniciar el juego, de las cuales elegirá una aleatoriamente para comenzar. Estas palabras formarán parte de una cadena, y en el momento en el que una palabra es seleccionada, esta pasa a formar parte de otra cadena en la que aparecerá con todos sus caracteres ocultos.

Antes de que el servidor pueda enviar la palabra oculta correspondiente, debe esperar a que el cliente realice una petición de conexión al mismo, mostrando así su intención de iniciar una nueva partida del juego.

El cliente dispondrá de un número fijo de fallos, que en este caso será de ocho,tantos como letras tiene la palabra AHORCADO. Cada vez que el cliente cometa un fallo, se añadirá una letra a la palabra AHORCADO, almacenada en otra cadena auxiliar definido para tal fin.

En el transcurso del juego, el cliente irá introduciendo letras en la palabra que se le mostrará como oculta. En caso de que el cliente introduzca una letra que pertenezca a la palabra mostrada, esta será cambiada por su carácter oculto correspondiente. Si la letra introducida no es correcta y no pertenece a la palabra oculta, se mostrará el estado de la palabra oculta tal y como estaba hasta ese momento, es decir, se mostrarán tanto los caracteres ocultos como las letras descubiertas hasta entonces.

Si por alguna razón, el cliente introduce una letra que ya había introducido antes (tanto en caso de acierto como en caso de fallo en la primera vez en la que se introdujo la letra), esta se penalizará y se contará como un error más por parte del cliente, añadiéndose la letra correspondiente de la palabra AHORCADO.

Cabe hacer mención a que el servidor no distingue entre letras mayúsculas y letras minúsculas, y por consecuencia, reciba la letra que reciba, se tomará esta letra como si de una letra mayúscula se tratase.

Por parte del cliente, este no aceptará la introducción por parte del usuario de caracteres que no sean letras del abecedario. Tampoco son aceptadas la letra ‘ñ’ y todas las vocales acentuadas.

En caso de que el cliente acumule ocho fallos, la partida finalizará y el cliente habrá perdido la partida, por lo que se le mostrará un mensaje que se lo indicará. Si por el contrario, el cliente logra adivinar la palabra antes de que se le muestre la palabra AHORCADO, este habrá ganado la partida.

Se enviará por parte del servidor un mensaje que indique el fin de la partida al cliente, tanto si este ha ganado como si ha perdido. El cliente al recibir este mensaje, lo identificará y esperará a recibir otro mensaje más desde el servidor indicándole cuál era la palabra correcta.

Cuando el servidor envíe este mensaje con la palabra correcta, cerrará el socket. De igual manera hará el cliente cuando reciba este mensaje.

3. DECISIONES DE DISEÑO.

3.1. Tipo de protocolo escogido.

En el diseño de este proyecto se ha optado por la selección del protocolo TCP y un servidor con concurrencia real.

Se seleccionó un servicio de transporte orientado a conexión en el que los clientes deben de establecer una conexión con el servidor antes de lanzar sus peticiones. En este servicio se sobrepuso la fiabilidad del servicio, así como la entrega ordenada de los mensajes sobre la mayor simplicidad de un protocolo no orientado a conexión. Por estos motivos la opción por la que se optó fue la de implementar un servidor TCP.

El sistema requiere la necesidad de establecer una conexión entre cliente y servidor antes del comienzo del envío de mensajes entre ambos. Esto es debido a que en caso de no utilizar un servidor de este tipo, si se perdiese una letra enviada por el cliente al servidor, o un mensaje enviado por parte de este último, no se tendría constancia de
ello y por tanto no podría llevarse una cuenta ordenada del número de aciertos y fallos que el cliente se anota.

Por otro lado, pero no por eso menos importante, para la implementación de este servicio, se requiere de un orden en la comunicación, y se acusa la necesidad de que los mensajes no lleguen al destino fuera del orden establecido; puesto que este servicio basa su técnica en la colocación reiterada y ordenada de letras en una palabra desconocida. Si estos mensajes llegasen fuera de orden, o se perdiesen, por un lado el servidor no habría
recibido las letras solicitadas por el cliente, y por otro lado, el cliente no sabría si la letra seleccionada se ha perdido o es que aparecerá en pantalla en otro orden distinto al que este la había enviado.

Se debe hacer mención a la decisión tomada sobre la elección de un servidor concurrente. Se tomó esta decisión debido a la característica principal de este tipo de servidores; un servidor concurrente permite que varios clientes realicen peticiones simultáneas a un mismo servidor. Por tanto se determinó esta opción como la mejor
manera de poder atender a los clientes, y no retardar el servicio hacia los clientes, haciéndoles esperar hasta que el servidor procese todas las peticiones pendientes como ocurre en un servidor iterativo.

Dentro de las diferentes formas entre las que se puede implementar un servidor concurrente, se seleccionó la opción de crear un servidor con concurrencia real, basada en la técnica de creación de procesos hijos mediante en servicio fork (). Este servicio crea un nuevo hijo del proceso activo, y una vez creado deja a este último a cargo de la comunicación con cliente, lo que permite volver a colocar al proceso original a la espera de peticiones de nuevos clientes mediante un bucle infinito.

Por otro lado, en el sistema implementado se puede observar un gran flujo de peticiones y respuestas, lo que favorece aún más la selección de un servidor concurrente, caracterizado por utilizar respuestas que necesitan de múltiples operaciones de entrada – salida.

3.2. Presentación e introducción de datos.

Otro aspecto a tener en cuenta, como ya se mencionó en la introducción, es la transformación de cualquier letra que sea introducida por parte del cliente a una letra mayúscula. Esto es conseguido mediante la utilización de la función toupper que realiza la función ya mencionada del siguiente modo: cada carácter introducido por el cliente se corresponde con un carácter ASCII, por lo que esta función se encarga de restarle al número de carácter correspondiente 32 para asignarle así su homólogo en mayúsculas.

Para una mayor facilidad en el diseño y en la jugabilidad, se ha decidido que sólo se permite la introducción de caracteres que pertenecen al abecedario, excluyendo la letra ‘ñ’ y las vocales acentuadas.

Siguiendo con las decisiones tomadas propias del diseño, se ha querido implementar el cliente de forma que cuando este presione una tecla para enviar una letra al servidor, esta no sólo no aparezca en la terminal del cliente, sino que este no tenga que pulsar la tecla intro. El sistema no realiza esa especie de “eco” y no muestra en su pantalla el mensaje introducido por el cliente, lo que permite hacer el servicio más legible frente a si no se introduce esta mejora.

Todo esto se lleva a cabo gracias a una nueva librería incluida en el sistema. Linux no admite la inclusión de la librería conio.h y como consecuencia, tampoco la función getch(), que es la que permitiría al usuario realizar la operación descrita anteriormente. Por este motivo se ha creado una nueva libería (“miconio.h”), la cual implementa la función elegida que nos permita conseguir el objetivo buscado. Esta librería se importa en el cliente y la función getch() se usa como si se dispusiese de la auténtica librería conio.h.

3.3. Comunicación cliente – servidor.

El servidor permite elegir el puerto por el que se podrán conectar los clientes. Por defecto, este servicio utilizará el puerto 8041, el cual no está asignado según la IANA. Al cliente, por su parte, se le puede indicar el host de destino como parámetro. Si no se indicase nada como parámetro, al ejecutar el cliente se solicitará al usuario el nombre del host o su IP.

Como ya se mencionó en la introducción, el servidor le indicará al cliente (tanto en el caso de haber ganado como de haber perdido la partida) que la partida ha finalizado y cerrará la conexión con este cliente, mientras que sigue escuchando a la espera de recibir más peticiones de otros clientes o de este mismo.

Aparte de recibir la palabra oculta con la que se había jugado la partida, el cliente recibe una cadena que contiene en sus primeros tres caracteres la palabra FIN. El cliente se encargará de comprobar de si en las tres primeras letras de las cadenas que le envía el servidor está la palabra descrita anteriormente. Todo ello se hará mediante una función de comparación, que en caso de que devuelva un uno (las tres primeras letras serán FIN), este sabrá que la partida ha finalizado y procederá a cerrar el socket abierto con el servidor y posteriormente, cerrar la aplicación.

Hay que añadir que se ha decidido fijar el tamaño de los mensajes con el que se comunican cliente y servidor. De esta manera, se simplifica en gran medida la comunicación entre ambos. El tamaño de estos mensajes se ha fijado según el tamaño máximo de las palabras (que en nuestro caso, se ha decidido que sea de 32 caracteres
incluyendo el carácter nulo), añadiéndole 10 caracteres más. En definitiva, el tamaño de los mensajes será de 42 caracteres.

4. MANUAL DE USUARIO.

4.1. Compilación de la aplicación.

Para compilar el programa, se puede utilizar el MAKEFILE (no se adjunta ), utilizando el comando ‘make’ de la siguiente manera:

$ make all

También se puede utilizar el compilador GCC de Linux introduciendo los siguientes comandos según queramos para el cliente o el servidor:

Para el cliente:

gcc Ahorcado_cliente.c socket_utils.c error.c miconio.c -o Ahorcado_cliente

Para el servidor:

gcc Ahorcado_servidor.c socket_utils.c error.c -o Ahorcado_servidor

4.2. Ejecución del cliente y el servidor.

Como ya se ha mencionado varias veces hasta el momento, esta es una aplicación que implementa el servicio del Ahorcado remoto en la arquitectura Cliente – Servidor.

El servidor se arranca en modo superusuario en cualquier terminal del sistema operativo Linux, habiendo compilado este previamente. La razón de que se tenga que ejecutar en modo superusuario es que la ejecución de un servidor requiere del acceso a ciertos privilegios del sistema de los cuales no se dispone en modo usuario.

En otra terminal diferente o incluso en otra terminal de otro ordenador diferente, puede lanzarse la ejecución del cliente. Al igual que el servidor, este debe de ser previamente compilado para poder ser ejecutado, pero a diferencia con él, la ejecución de un cliente no necesita de privilegios para llevarse a cabo.

En el caso en que la ejecución del cliente se lance en un ordenador diferente al que se está ejecutando el servidor, debe indicarse como parámetro en el comando de la ejecución del cliente, la dirección IP propia del ordenador en el que está siendo ejecutado el servidor. O bien, no indicarlo como parámetro, pero será preguntado al usuario al ejecutar el cliente.

Para ejecutar el servidor se escribirá la siguiente línea de comandos (imagen 4.1):

$ sudo ./Ahorcado_servidor

Para ejecutar el cliente podría escribirse la siguiente línea de comandos (imagen 4.2), donde la dirección IP es una elegida para el ejemplo, pudiéndose cambiar según las necesidades del usuario:

$ ./Ahorcado_cliente 192.168.1.5

Una vez establecida la conexión, aparecerán en la terminal del cliente una cadena con una serie de asteriscos, tantos como letras contenga la palabra con la que se haya iniciado la partida.

La misión del cliente es ir introduciendo letras para intentar descubrir el contenido de la palabra oculta. Se mostrará el seguimiento de la palabra en la terminal del cliente, así como los fallos que lleva acumulados.

5. BIBLIOGRAFÍA EMPLEADA.

La bibliografía empleada en la realización de este trabajo ha sido la mostrada a continuación:

- Douglas E. Comer and David L. Estevens, "Internetworking with TCP/IP vol III: client-server programming and applications". Prentice Hall, 1996.

- Behrouz A. Forouzan "TCP/IP Protocol Suite" 4ª Edición, McGraw Hill, 2010.

- Apuntes proporcionados por el profesor de la asignatura Redes II acerca del modelo Cliente – Servidor, la interfaz de sockets y la API en función de los sockets.

- Página web con contenido relacionado con la programación de sockets en c para Linux. http://www.chuidiang.com/clinux/sockets/sockets_simp.php

- Página web donde se encontró el código fuente para poder crear la biblioteca “miconio.h” y poder adaptarla a las necesidades del servicio, así como la utilización de una simulación de la función original getch(). http://www.reloco.com.ar/linux/prog/tecla.html

Autores:
Gabriel Cebrián Márquez.
Estefanía Coronado Calero.
Iván Durango Blanco.