[Uy6tf] [Fwd: Defensa de Proyecto de Grado]
ariel sabiguero yawelak
asabigue en fing.edu.uy
Mie Dic 3 10:48:09 UYST 2008
Opa!
No estoy seguro si hacer una "invitación abierta", porque tengo miedo
que los alumnos me "ejecuten abiertamente", pero igual, paso el dato a
aquellos interesados, y al menos, estén al tanto de trabajos en el área
acá en Uruguay.
saludos a todos
ariel
PS: y si alguien va mañana, no digan que yo avisé !!!! ;-)
-------- Mensaje original --------
Asunto: Defensa de Proyecto de Grado
Fecha: Fri, 28 Nov 2008 19:06:43 -0200
De: ariel sabiguero yawelak <asabigue at fing.edu.uy>
Organización: Facultad de Ingenieria.
Grupos de noticias: fing.inco.general
IP4JVM: IP(v6) for Java Virtual Machine
Estudiantes: Roger Abelenda
Ignacio Corrales
Tutor : Ariel Sabiguero Yawelak
Tribunal : Daniel Calegari
Héctor Cancela
Eduardo Grampin
Día : jueves 4 de diciembre de 2008
Hora : 0830
Lugar : Salón de Posgrados del Instituto de Computación
Resumen : El presente informe contiene el detalle del desarrollo de
nuestro proyecto de grado, el cual consistió en mejorar y completar un
prototipo ya existente que agrega el manejo de stacks de protocolos a la
máquina virtual Java.
La herramienta consiste en un framework enteramente programado en
lenguaje Java que implementa un stack de protocolos y al cual se le
puede agregar un protocolo cualquiera programado, éste también,
enteramente en Java. La comunicación con el dispositivo físico de red
está implementada con el uso de JNI.
Mediante la integración de este stack a una máquina virtual Java
obtuvimos una plataforma capaz de interpretar y ejecutar código Java
pero que a su vez prescinde de las funcionalidades de red brindadas por
el sistema operativo y utiliza las implementadas por nuestro stack.
Además del framework comentado anteriormente, se encuentran
implementados también algunos protocolos de distintas capas que permiten
una comunicación entre dos nodos a nivel de capa de aplicaciones. El
protocolo de enlace de datos implementado en la herramienta es Ethernet
II, IPv6 para capa de Internet y para capa de transporte se encuentran
implementados tanto TCP como UDP. Sin embargo, y si bien con estos
protocolos ya se obtiene una capacidad de conectividad amplia a nivel de
cualquiera de las capas mencionadas, cualquier usuario de la herramienta
podría agregar un protocolo a elección al framework sin mayores
dificultades, siempre y cuando obtenga una implementación de dicho
protocolo programada en Java. Por ejemplo, un usuario podría querer usar
su propia implementación de TCP que tenga ciertos aspectos diferentes a
la implementación realizada por nosotros y podría hacerlo sin mayores
dificultades. Otra posibilidad en este sentido sería la de usar el
framework para desarrollar en Java y probar un nuevo protocolo de
cualquier capa.
El proyecto consistió en varias fases como ser estudio previo,
instalación del ambiente de desarrollo, análisis del prototipo
existente, identificación de los cambios a realizar a dicho prototipo,
ejecución de estos cambios, migrar el stack a una máquina virtual que
considerásemos mejor en base a ciertos criterios, diseño y desarrollo
del protocolo TCP, ejecución de una herramienta Java que utilice TCP
sobre nuestro stack. Cada una de estas fases conjuntamente con el
desarrollo y resultados obtenidos de las mismas se detallan más adelante
en el documento.
Palabras Claves: Networking en Java. JNI. Framework. Modelos de Capas
de Red. Stack de Protocolos. SableVM. OpenJDK.
saludos,
ariel
Más información sobre la lista de distribución Uy6tf