DETECCIÓN Y ANÁLISIS DE FALLOS EN REDES DE...

100
DETECCIÓN Y ANÁLISIS DE FALLOS EN REDES DE CONMUTACIÓN DE RÁFAGAS ÓPTICAS JUAN SEBASTIAN CALDERON RIOS ELKIN FABIAN AGUAS MARTÍNEZ Universidad Distrital Francisco José de Caldas Facultad de Ingeniería Proyecto Curricular de Ingeniería Electrónica Ingeniería Electrónica 2015

Transcript of DETECCIÓN Y ANÁLISIS DE FALLOS EN REDES DE...

DETECCIÓN Y ANÁLISIS DE FALLOS EN REDES DE CONMUTACIÓN DE

RÁFAGAS ÓPTICAS

JUAN SEBASTIAN CALDERON RIOS

ELKIN FABIAN AGUAS MARTÍNEZ

Universidad Distrital Francisco José de Caldas Facultad de Ingeniería

Proyecto Curricular de Ingeniería Electrónica Ingeniería Electrónica

2015

2

DETECCIÓN Y ANÁLISIS DE FALLOS EN REDES DE CONMUTACIÓN DE

RÁFAGAS ÓPTICAS

JUAN SEBASTIAN CALDERON RIOS

ELKIN FABIAN AGUAS MARTÍNEZ

Trabajo de grado para optar al título de: Ingeniero Electrónico

Director: Ph.D Ing. Gustavo Adolfo Puerto Leguizamón

Universidad Distrital Francisco José de Caldas Facultad de Ingeniería

Proyecto Curricular de Ingeniería Electrónica Ingeniería Electrónica

2015

3

Nota de aceptación.

_____________________________________

_____________________________________

_____________________________________

_____________________________________

Presidente de jurado.

_____________________________________

Jurado.

_____________________________________

Jurado.

4

Resumen Este proyecto plantea la propuesta de un algoritmo para el análisis de fallos en redes WDM de

fibra óptica que funcionen con el modelo de conmutación óptica de ráfagas. Se pretende que el

algoritmo propuesto sea capaz de detectar los diferentes tipos de fallos que se pueden presentar

en la red y tomar decisiones que permitan el restablecimiento y continuidad de los servicios en la

red. Los capítulos que comprenden este libro son presentados a continuación con una breve

descripción de su contenido.

Generalidades: este capítulo está conformado por los aspectos preliminares necesarios para la

propuesta del proyecto.

Marco referencial: se realiza una presentación de las temáticas de redes ópticas, modelos de

conmutación y dispositivos ópticos, los cuales son clave para el entendimiento del contexto en el

que se propone el algoritmo.

Fundamentos y diseño de un nodo de borde y un nodo de núcleo para una red OBS: ya

tocando el tema de redes OBS, este capítulo contiene los conceptos necesarios para poder

entender los diferentes elementos que conforman una red OBS, y el diseño de nodo de borde y

núcleo en el software de simulación OMNeT++.

Propuesta del algoritmo para la detección y toma de decisiones ante fallos: en este capítulo

se presenta la propuesta de algoritmo realizada.

Simulación del algoritmo en OMNeT++: aquí se muestran y analizan los resultados obtenidos

de las simulaciones de la red.

Conclusiones: en el capítulo de conclusiones se presentan los pensamientos finales relacionados

a los resultados obtenidos y al análisis realizado a estos.

5

Agradecimientos

Los autores desean agradecer y reconocer a las siguientes personas por su contribución al

presente proyecto:

Ing. Gustavo Puerto: Por su paciencia, orientación, dedicación y aportes durante la realización

del proyecto.

Nuestros Amigos: por su confianza, apoyo, por creer en nosotros y haber sido una parte

importante durante nuestra formación, haciendo de esta etapa de nuestras vidas algo que jamás

olvidaremos.

A nuestras familias: Por su apoyo incondicional a lo largo de toda nuestra formación, por creer

en nosotros por orientarnos en los momentos difíciles, por los valores y educación que nos

brindaron los cuales fueron indispensables para poder llegar a este punto de nuestras vidas.

El autor Juan Calderón quiere agradecer a Dios: Por haberme sido mi apoyo en los

momentos más difíciles de mi formación, por brindarme la oportunidad de compartir con mis

compañeros y crecer como persona. También quiero agradecer a mi compañero y amigo Elkin

Aguas por su esfuerzo y dedicación en este proyecto.

Este Proyecto de grado, es desarrollado en la Universidad Distrital Francisco José de Caldas en

los años 2014/15.

Juan S. Calderón Ríos

Elkin F. Aguas Martínez

6

Contenido

GENERALIDADES .................................................................................................................... 14

1.1. INTRODUCCIÓN ............................................................................................................. 15

1.2. PLANTEAMIENTO DEL PROBLEMA........................................................................... 16

1.3. JUSTIFICACIÓN............................................................................................................... 16

1.4. OBJETIVOS....................................................................................................................... 17

1.4.1. Objetivo general .......................................................................................................... 17

1.4.2. Objetivos específicos ................................................................................................... 17

1.5. ALCANCE Y LIMITACIONES DEL PROYECTO ......................................................... 18

1.5.1. Alcances....................................................................................................................... 18

1.5.2. Limitaciones ................................................................................................................ 18

MARCO REFERENCIAL ......................................................................................................... 19

2.1. TIPOS DE REDES ............................................................................................................. 20

2.1.1. Redes de comunicaciones ............................................................................................ 20

2.1.1.1. Conmutación de circuitos .................................................................................... 20

2.1.1.2. Conmutación de paquetes .................................................................................... 20

2.1.2. Redes ópticas ............................................................................................................... 20

2.1.2.1. Conmutación óptica de circuitos........................................................... ......... 21

2.1.2.1. Conmutación óptica de paquetes........................................................... .......... 22

2.1.2.1. Conmutación óptica de ráfagas....................................................................... 22

2.2. FIBRA ÓPTICA ................................................................................................................. 23

2.2.1. Fibra multimodo .......................................................................................................... 23

2.2.2. Fibra monomodo.......................................................................................................... 24

2.3. DISPOSITIVOS ÓPTICOS ............................................................................................... 24

2.3.1. Fuentes ópticas ............................................................................................................ 24

2.3.2. Detectores ópticos ........................................................................................................ 25

7

2.3.3. Amplificadores ópticos ................................................................................................ 25

2.3.4. Acopladores ................................................................................................................. 26

2.3.5. Filtros ópticos .............................................................................................................. 26

2.3.6. Multiplexores y demultiplexores ................................................................................. 26

2.3.7. Conmutadores .............................................................................................................. 28

2.4. CONCEPTOS GENERALES DE PROTECCIÓN DE REDES ........................................ 28

2.4.1. Rutas de trabajo ........................................................................................................... 28

2.4.2. Rutas de protección ..................................................................................................... 28

2.4.3. Protección dedicada ..................................................................................................... 28

2.4.4. Protección compartida ................................................................................................. 28

2.4.5. Protección reversible ................................................................................................... 28

2.4.6. Protección no reversible .............................................................................................. 29

2.5. FALLOS EN REDES OBS ................................................................................................ 29

2.5.1. Tipos de fallos ............................................................................................................. 29

2.5.2. Desarrollo en el análisis de fallos y restablecimiento de servicios .............................. 30

2.6. MÉTODOS DE IDENTIFICACIÓN DE FALLOS........................................................... 34

2.6.1. Identificación de fallos ................................................................................................ 34

2.6.2. Desarrollos en la identificación de fallos .................................................................... 34

2.7. MECANISMOS DE RESTABLECIMIENTO Y SU APLICACIÓN ............................... 35

2.7.1. Restablecimiento ......................................................................................................... 35

2.7.2. Desarrollos en los mecanismos de restablecimientos .................................................. 35

METODOLOGIA ....................................................................................................................... 38

3.1. Fundamentos y diseño de un nodo de borde y un nodo de núcleo para una red OBS ....... 39

3.2. Partes de un nodo de borde ................................................................................................ 39

3.2.1. Unidad de adaptación .................................................................................................. 39

3.2.2. Buffer de línea ............................................................................................................. 39

3.2.3. Ensamblador ................................................................................................................ 39

3.2.4. Desensamblador........................................................................................................... 40

3.2.5. Interfaz de salida .......................................................................................................... 41

3.3. Partes de un nodo de núcleo ............................................................................................... 41

8

3.3.1. Interfaz de entrada ....................................................................................................... 41

3.3.2. Unidad de control ........................................................................................................ 42

3.3.3. Conmutador - conversor óptico ................................................................................... 42

3.3.3.1. Modulación de ganancia cruzada.................................................................... 42

3.3.3.2. Modulación de fase cruzada........................................................... ................ 43

3.3.4. Interfaz de salida .......................................................................................................... 48

3.4. Diseño de un nodo de borde en OMNeT++ ....................................................................... 49

3.5. Diseño de un nodo de núcleo en OMNeT++ ..................................................................... 50

3.6. Diseño enlaces en OMNeT++ ............................................................................................ 51

3.7. Propuesta de algoritmo para la detección y toma de decisiones ante fallos ...................... 51

3.8. Tiempo de compensación (offset time) .............................................................................. 52

3.9. Diagrama de flujo ............................................................................................................... 53

3.9.1. Diagrama de flujo de detección de fallos en una red OBS .......................................... 53

3.9.2. Diagrama de flujo de análisis y toma de decisiones ante fallos en una red OBS ........ 55

3.10. Paquetes ............................................................................................................................ 58

3.10.1. Paquete de control ..................................................................................................... 58

3.10.2. Ráfaga de datos .......................................................................................................... 58

3.10.3. Paquete de verificación de conectividad y paquete de confirmación de conectividad

............................................................................................................................................... 58

SIMULACIÓN DEL ALGORITMO EN OMNeT++ .............................................................. 59

4.1. Topología ........................................................................................................................... 60

4.2. Especificaciones ................................................................................................................. 60

4.3. Fallos .................................................................................................................................. 61

4.4. Resultados .......................................................................................................................... 62

4.4.1. Resultados de fallos sin la implementación del algoritmo .......................................... 62

4.4.2. Resultados de fallos con la implementación del algoritmo ......................................... 67

CONCLUSIONES....................................................................................................................... 79

9

Apéndices ..................................................................................................................................... 82

A. Simulador OMNeT++ .............................................................................................................. 83

B. Funciones de aleatoriedad principales ...................................................................................... 86

C. Código de ejecución de fallos .................................................................................................. 89

D. Código enrutador...................................................................................................................... 91

E. Código de algoritmo de detección y corrección de fallos ........................................................ 94

10

Lista de Figuras

2-1. Representación de una red óptica. Fuente de la imagen: propia. .......................................... 21

2-2. Representación de los modos de transmisión en una fibra multimodo. Fuente de la imagen:

propia. ....................................................................................................................................... 23

2-3. Representación del modo fundamental en una fibra monomodo. Fuente de la imagen: propia.

................................................................................................................................................... 24

2-4. Estructura de demultiplexores ópticos basado en rejillas. Fuente de la imagen: propia. ...... 27

2-5. Estructura de un multiplexor óptico de 4 canales con 3 MZI 2x2. Fuente de la imagen:

propia. ....................................................................................................................................... 27

2-6. Representación de los elementos básicos de una red óptica. Fuente de la imagen: propia. .. 30

2-7. Ejemplo de mecanismo de detección de fallos por BFD ....................................................... 31

2-8. Imagen para el proceso de restablecimiento de ruta. Fuente de la imagen: propia. .............. 36

3-1. Diagrama de bloques nodo de borde. Fuente de la imagen: propia. ...................................... 40

3-2. Diagrama de bloques nodo de núcleo. Fuente de la imagen: propia. .................................... 42

3-3. Esquema de conversión en XGM. (a) Codireccional. (b) Contradireccional. Fuente de la

imagen: propia. ......................................................................................................................... 43

3-4. Respuesta de XGM con respecto a la potencia de la señal de continua. Fuente de la imagen:

propia. ....................................................................................................................................... 45

3-5. Respuesta de XGM con respecto a la potencia de la señal de bombeo. Fuente de la imagen:

propia. ....................................................................................................................................... 45

3-6. Esquema de conversión en XPM. (a) Codireccional. (b) Contradireccional. Fuente de la

imagen: propia. ......................................................................................................................... 46

3-7. Distribución interna de los amplificadores de semiconductor en los conversores basados en

XPM. (a) Sin entrada/salida amplificada. (b) Con entrada/salida amplificada. Fuente de la

imagen: propia. ......................................................................................................................... 47

3-8. Caracterización del conversor de longitud de onda basado en XPM. (a) Punto de trabajo del

conversor A. (b) Función de transferencia del conversor A. (c) Punto de trabajo del conversor

B. (d) Función de transferencia del conversor B. Fuente de la imagen: propia. ....................... 48

3-9. Modelo de nodo de borde. Fuente de la imagen: software de simulación OMNeT++. ........ 50

3-10. Modelo de nodo de núcleo. Fuente de la imagen: software de simulación OMNeT++….. 51

3-11. Diagrama de flujo para diferenciar entre canal de control y canal de datos. Fuente de la

imagen: propia. ......................................................................................................................... 54

11

3-12. Diagrama de flujo para la detección de fallos en una red OBS. Fuente de la imagen: propia.

................................................................................................................................................... 55

3-13. Diagrama de flujo para la verificación de canales en una fibra. Fuente de la imagen: propia.

................................................................................................................................................... 56

3-14. Diagrama de flujo de análisis y toma de decisiones ante fallos en una red OBS. Fuente de

la imagen: propia....................................................................................................................... 57

4-1. Topología de red NSFNET, modificada. En color rojo se muestran los enlaces originales de

la red con su correspondiente distancia en kilómetros, en color azul los enlaces agregados a la

red con su correspondiente distancia en kilómetros. (Ni - Nodo de borde i, Bi - Nodo de

núcleo i, Ei enlace i). Fuente de la imagen: propia. .................................................................. 60

4-2. Porcentaje de pérdidas (a) y tiempo promedio de transmisión de origen a destino (b) en

función de la probabilidad de error para 50 simulaciones sin algoritmo. Fuente de la imagen:

propia. ....................................................................................................................................... 63

4-3. Porcentaje de pérdidas en función de la probabilidad de fallo para canal (a), fibra (b), enlace

(c) - (d) y nodo (e) - (f). Fuente de la imagen: propia ............................................................... 64

4-4. Tiempo de transmisión promedio de origen a destino en función de la probabilidad de fallo

para canal (a), fibra (b), enlace (c) y nodo (d). Fuente de la imagen: propia ............................ 66

4-5. Porcentaje de pérdidas (a), tiempo promedio de transmisión de origen a destino (b) y

número de procesos (c) en función de la probabilidad de error para 50 simulaciones con

algoritmo. Fuente de la imagen: propia. ................................................................................... 67

4-6. Porcentaje de pérdidas en función de la probabilidad de fallo de canal sin algoritmo (a) y

con algoritmo (b). Fuente de la imagen: propia. ....................................................................... 68

4-7. Porcentaje de pérdidas en función de la probabilidad de fallo de fibra sin algoritmo (a) y con

algoritmo (b). Fuente de la imagen: propia. .............................................................................. 69

4-8. Porcentaje de pérdidas en función de la probabilidad de fallo de enlace sin algoritmo (a) y su

acercamiento de imagen (b) y con algoritmo (c) y su acercamiento de imagen (d). Fuente de la

imagen: propia. ......................................................................................................................... 70

4-9. Porcentaje de pérdidas en función de la probabilidad de fallo de nodo sin algoritmo (a) - (b)

y con algoritmo (c) - (d). Fuente de la imagen: propia. ............................................................ 71

4-10. Tiempo de transmisión promedio de origen a destino en función de la probabilidad de fallo

de canal sin algoritmo (a) y con algoritmo (b). Fuente de la imagen: propia. .......................... 72

4-11. Tiempo de transmisión promedio de origen a destino en función de la probabilidad de fallo

de fibra sin algoritmo (a) y con algoritmo (b). Fuente de la imagen: propia. ........................... 72

4-12. Tiempo de transmisión promedio de origen a destino en función de la probabilidad de fallo

de enlace sin algoritmo (a) y con algoritmo (b). Fuente de la imagen: propia ......................... 73

4-13. Tiempo de transmisión promedio de origen a destino en función de la probabilidad de fallo

de nodo sin algoritmo (a) y con algoritmo (b). Fuente de la imagen: propia. .......................... 73

4-14. Número de procesos en función de la probabilidad de fallo de canal sin algoritmo (a) y con

algoritmo (b). Fuente de la imagen: propia. .............................................................................. 74

4-15. Número de procesos en función de la probabilidad de fallo de fibra sin algoritmo (a) y con

algoritmo (b). Fuente de la imagen: propia. .............................................................................. 75

4-16. Número de procesos en función de la probabilidad de fallo de enlace sin algoritmo (a) y

con algoritmo (b). Fuente de la imagen: propia. ....................................................................... 75

4-17. Número de procesos en función de la probabilidad de fallo de nodo sin algoritmo (a) y con

algoritmo (b). Fuente de la imagen: propia. .............................................................................. 76

12

A-1. RED en OMNeT++, las cajas de fondo azul representan los módulos simples, las cajas de

fondo verde los módulos compuestos. Las flechas que conectan las pequeñas cajas representan

las conexiones y puertas............................................................................................................ 84

13

Lista de tablas

4-1. Causas y probabilidad de un fallo en una red óptica. ............................................................ 60

4-2. Valores mínimo, máximo y promedio obtenidos para porcentaje de pérdida de paquetes en

función de la probabilidad de fallo. .......................................................................................... 76

4-3. Valores mínimo, máximo y promedio obtenidos para tiempo de transmisión en función de la

probabilidad de fallo. ................................................................................................................ 77

4-4. Valores mínimo, máximo y promedio obtenidos para número de procesos normalizados a un

valor de 16x en función de la probabilidad de fallo. .......................................................... 77

14

Capítulo 1

GENERALIDADES

15

1.1. INTRODUCCIÓN

La evolución de las tecnologías en el campo de las telecomunicaciones ha llevado a la aparición

de nuevos medios y métodos para la transmisión de información. En la actualidad una de las

tecnologías de punta en el área de las comunicaciones es la fibra óptica, ésta usa luz como

recurso para la transmisión de grandes volúmenes de datos a muy altas velocidades. Las redes de

fibra óptica se han hecho cada vez más comunes como reemplazo de las redes convencionales

que trabajan únicamente en el dominio eléctrico, con esto se espera una mejora en la capacidad

de transmisión en los sistemas de telecomunicaciones actuales; sin embargo, aún no es posible

implementar redes ópticas con el mismo nivel de flexibilidad de la redes convencionales, esto es

debido a que no existe la tecnología para procesar señales de luz de la misma manera en que son

procesadas las señales eléctricas. Es por esta razón que se deben utilizar métodos que, en

conjunto con la tecnología existente, obtengan un alto desempeño de las nuevas redes

implementadas.

Para brindar flexibilidad a los nuevos modelos de redes se emplea el uso de híbridos que

permiten que la red realice las tareas de procesamiento en el dominio eléctrico y el envío de la

información completamente en el dominio óptico. Las denominadas redes ópticas de segunda

generación ofrecen mayor flexibilidad al permitir acciones como el enrutamiento de la

información óptica y la conversión de la longitud de onda a la que ésta es transportada, esto es

conseguido con el uso de conceptos de conmutación como OBS (Optical Burst Switching).

La conmutación de ráfagas ópticas (OBS por sus siglas en inglés) es un concepto de

conmutación que combina funcionalidades de la conmutación óptica de circuitos y de paquetes

[1]. En OBS se envía un paquete de control el cual contiene información que permite a los nodos

de núcleo de la red realizar reservas de ancho de banda y procesos de enrutamiento de ráfagas

ópticas. Para ser procesado en el nodo de núcleo [2], el paquete de control es convertido del

dominio óptico al eléctrico (COE), posteriormente para ser enviado este paquete debe ser

convertido del dominio eléctrico al óptico (CEO), a cada paquete corresponde una ráfaga, ésta es

enviada después de su correspondiente paquete de control con un tiempo de retardo

predeterminado y sin ningún aviso de establecimiento de conexión [1]. Una ráfaga óptica agrupa

un conjunto de datagramas IP clasificados según su destino o servicio, y es creada

electrónicamente en los nodos de ingreso de la red [2], luego de ser formada es convertida al

dominio óptico para posteriormente ser transportada hasta llegar a su destino en un nuevo nodo

de ingreso en el cual se realiza su conversión del dominio óptico al eléctrico.

Una de las grandes características de las redes OBS es su capacidad para soportar una amplia

gama de servicios los cuales son apoyados por protocolos IP. Un solo fallo que se presentará

podría interrumpir los servicios para un gran número de usuarios, causando pérdidas de ingresos

16

para los proveedores de servicios, así mismo se reduciría de manera significativa la calidad de

servicio de la red.

Este proyecto se enmarca en el estudio y análisis de fallos en redes OBS bajo el cual se busca el

diseño de un algoritmo para plano de control que realice tareas de diagnóstico y recuperación

frente a fallos en redes de conmutación de ráfagas ópticas.

1.2. PLANTEAMIENTO DEL PROBLEMA

En las últimas décadas se ha presentado un crecimiento exponencial del uso de equipos

informáticos, que necesariamente han tenido que utilizar medios para comunicarse entre sí,

causando un rápido crecimiento del tráfico en las redes como en internet, por lo que ha surgido la

necesidad de nuevos medios para poder atender la demanda de ancho de banda capaz de soportar

diferentes servicios como: voz, datos, video, etc. Uno de los medios que está en la capacidad de

proporcionar un gran ancho de banda y con esto suplir esta necesidad es la fibra óptica.

Se han hecho varias propuestas para aprovechar las ventajas de las comunicaciones ópticas, pero

aún no se está en la capacidad de implementar las más innovadoras debido a las limitaciones de

la tecnología óptica con la que se cuenta en la actualidad, por lo que se ha propuesto un enfoque

que permite aprovechar en gran medida las virtudes de las comunicaciones ópticas con los

desarrollos tecnológicos con los que se cuenta, denominado OBS (conmutación de ráfagas

ópticas). Pero aún en este sistema se pueden presentar diferentes fallos responsables de la

pérdida de información y baja calidad de servicio, y aunque se han presentado diferentes

mecanismos para prevenir y corregir estos fallos y con esto aumentar la eficiencia y

confiabilidad de las redes OBS, no hay muchas propuestas enfocadas a la detección y análisis de

un conjunto de fallos que pudieran presentarse en esta. De lo anterior surge la pregunta: ¿Es

posible diseñar un mecanismo capaz reducir la pérdida de información causada por fallos de:

nodo, enlace, fibra, canal de control y canal de datos, que se pudieran presentar en una red de

conmutación de ráfagas ópticas?

1.3. JUSTIFICACIÓN

El desarrollo de redes ópticas ha llevado al estudio de diferentes métodos para el envío de

información a través de estas. Un primer método es la conmutación de circuitos ópticos (OCS);

primeramente establece una ruta entre fuente y destino y luego de esto procede al envío de

información a través de dicha ruta, luego de que todos los datos son enviados, los recursos del

canal son liberados para que puedan ser usados de nuevo. La conmutación de paquetes ópticos

(OPS) consiste en dividir una señal de luz en un determinado número de paquetes que serán

enviados por diferentes rutas, cada paquete es analizado individualmente en el dominio óptico

17

por los nodos de la red para determinar la ruta que deberá tomar hasta su destino final, esto

provee al proceso de envío un gran dinamismo y uso de recursos, sin embargo, la falta de

tecnologías para el procesamiento de luz hace de OPS un concepto que no puede ser

implementado en la actualidad. Debido a la falta de las tecnologías para el análisis de señales de

luz, las redes ópticas deben ser un híbrido óptico-eléctrico, esto significa que deben procesar los

paquetes de control en el dominio eléctrico y realizar el envío de la información en el dominio

óptico. La conmutación de ráfagas ópticas (OBS) es un método para el envío de información que

permite un mayor dinamismo que OCS sin la necesidad del uso de elementos de procesamiento

de señales de luz, por esta razón OBS es considerado un mecanismo intermedio entre OCS y

OPS.

Principalmente debido a la gran cantidad de información que se puede perder en caso de ocurrir

algún tipo de fallo en una red de conmutación de ráfagas ópticas, lo que conllevaría a tener una

deficiente calidad y desperdicio de recursos de red, surge la necesidad de detectar y analizar los

fallos más comunes con el fin de encontrar medidas para el restablecimiento de los servicios

afectados por estos. Este tipo de medidas buscan brindar además una base sólida para la

confiabilidad de este tipo de redes con el fin de poder implementar diferentes servicios que

requieran un alto nivel de fiabilidad en la conexión.

1.4. OBJETIVOS

1.4.1. Objetivo general

Detectar y analizar los diferentes fallos que se pueden presentar en una red de conmutación de

ráfagas ópticas.

1.4.2. Objetivos específicos

● Estudiar los diferentes tipos de fallos que se pueden presentar en una red de conmutación de

ráfagas ópticas con el fin de buscar mecanismos efectivos para recuperar los servicios

comprometidos.

● Diseñar mecanismos para la detección de fallos y restablecimiento de servicios con base en

el análisis de investigaciones realizadas en contexto con el presente proyecto.

● Desarrollar un algoritmo para garantizar el mínimo de pérdida de datos causada por fallos en

una red de conmutación de ráfagas ópticas.

● Validar a través de simulación los resultados del algoritmo desarrollado para diferentes

escenarios donde se presenten los fallos estudiados.

18

1.5. ALCANCE Y LIMITACIONES DEL PROYECTO

1.5.1. Alcances

El proyecto tiene como alcance el diseño de un algoritmo capaz de detectar y tomar medidas ante

diferentes tipos de fallos que se pueden presentar en una red de conmutación de ráfagas ópticas.

Este algoritmo comprende las tareas de detección de fallos y restablecimiento de los servicios

afectados por estos. Un alcance más del proyecto es el generar resultados que sirvan como punto

de partida o como documento de estudio para proyectos futuros en el área de las redes ópticas,

específicamente en temáticas de redes de conmutación de ráfagas ópticas.

1.5.2. Limitaciones

El proyecto tiene como limitación la falta de recursos físicos para la implementación de los

mecanismos a diseñar en una red de conmutación de ráfagas ópticas, es por esto que se debe

recurrir a la simulación.

19

Capítulo 2

MARCO REFERENCIAL

20

2.1. TIPOS DE REDES

2.1.1. Redes de comunicaciones

Una red de comunicaciones está formada por una serie de procesadores (hosts) que se encargan

del análisis de la información que viaja en la red, nodos de red (switches) que conectan los

procesadores, y enlaces (líneas de transmisión). Las redes de comunicaciones convencionales

funcionan completamente en el dominio eléctrico; esto es, envían, reciben y procesan

únicamente señales eléctricas. Gracias al gran avance en la electrónica, los métodos y elementos

utilizados en este tipo de redes permiten grandes posibilidades en términos de aplicaciones.

Algunos de los objetivos de las redes de comunicaciones son: hacer posible compartir recursos

tales como bases de datos, programas y procesadores, sin importar la ubicación física del usuario

y el recurso; proveer a los usuarios la capacidad de comunicarse entre sí; y permitir a más de un

procesador trabajar en un problema específico [3].

2.1.1.1. Conmutación de circuitos

La conmutación de circuitos es uno de los tipos de conexiones para el envío de señales en redes

de comunicaciones. En esta conexión la red transmite señales a través de enlaces dedicados; para

el envío de información primero se establece una ruta entre el origen y el destino de la señal,

luego de esto toda la información que se desea transmitir es enviada por este único enlace entre

emisor y receptor.

2.1.1.2. Conmutación de paquetes

La conmutación de paquetes es otro tipo de conexión para el envío de información en una red.

En este tipo de conexión la red divide la información a enviar en partes más pequeñas

denominadas paquetes [3]; los paquetes pueden tomar diferentes rutas entre la fuente y el

destino, y también pueden llegar en diferente orden a este último, a su llegada los paquetes son

reensamblados en la unidad de destino. Todo este proceso permite dar la red un mayor nivel de

calidad de servicio debido al dinamismo con el que son manejados los procesos.

2.1.2. Redes ópticas

Las redes de comunicaciones ópticas se caracterizan porque pueden transportar información en

forma de señales de luz. El uso de este tipo de sistemas de comunicaciones ha permitido el

incremento de la capacidad de transmisión, estimando un aumento en redes ópticas comerciales

21

de 100 Mb/s en la década de 1970 a aproximadamente 1 Tb/s para el año 2000, lo que indica un

aumento en la capacidad en un factor de 10000 en un espacio de tiempo de tres décadas [4].

Las redes ópticas actuales están conformadas por elementos que manejan señales ópticas y

elementos que manejan señales eléctricas. Aunque el envío de la información se haga en el

dominio óptico (a través de señales de luz), cualquier tipo de procesamiento debe ser hecho en el

dominio eléctrico debido a la falta tecnología para el análisis de señales ópticas. Debido a esto,

se han desarrollado métodos de conmutación para el envío de información con el objetivo de

obtener el mejor provecho de la tecnología disponible.

2.1.2.1. Conmutación óptica de circuitos

La conmutación de circuitos ópticos (OCS por sus siglas en inglés) provee un canal de datos

dedicado entre fuente y destino. Este tipo de conmutación está basada en el establecimiento,

antes del envío de la información, de un paso de luz [5]-[6]; este establecimiento de la ruta se

hace al enviar un paquete de control que sufrirá una conversión O/E en cada nodo de núcleo (ver

figura 2-1) para así realizar su respectivo procesamiento y luego se efectuará sobre este una

conversión E/O para su envío al siguiente nodo. Al enviar la información, los paquetes entrantes

deben ser convertidos del dominio eléctrico al óptico, lo cual sucede en los nodos denominados

de ingreso (ver figura 2-1); luego de esta conversión las señales ópticas serán enviadas en la ruta

que ya se ha establecido con anterioridad, la conversión de la señal de nuevo al dominio eléctrico

se realiza cuando esta llega a su destino.

Figura 2-1. Representación de una red óptica. Fuente de la imagen: propia.

22

2.1.2.2. Conmutación óptica de paquetes

La conmutación de paquetes ópticos (OPS por sus siglas en inglés) se basa en un nivel de trabajo

con una fina granularidad para transmisión y conmutación [7], dicho de otro modo, la señal

óptica enviada será dividida en pequeños paquetes de luz sobre los cuales se realizarán todos los

procesos (procesamiento, enrutamiento, transmisión) que tienen lugar en la red.

El uso de conmutación de paquetes ópticos prevé una conversión de las redes de comunicaciones

a un dominio completamente óptico, uso eficiente del ancho de banda, una mayor flexibilidad y

dinamismo en la red [7]. Sin embargo, existen en la actualidad muchos problemas con respecto a

la implementación de este tipo de redes; estos problemas radican en el hecho de que aún no se ha

desarrollado una tecnología eficiente para el almacenamiento y procesamiento de señales de luz.

2.1.2.3. Conmutación óptica de ráfagas

La conmutación de ráfagas ópticas (OBS por sus siglas en inglés) es un método que combina

características de OCS y OPS con el fin brindar una mayor flexibilidad y un mejor uso de

recursos en las redes ópticas actuales. En OBS los datos que tienen el mismo destino son

recolectados en los nodos de ingreso para formar una ráfaga; un paquete de control es enviado,

previo a la ráfaga, para realizar la reserva de los canales de longitudes de onda a través de la ruta

que tomará la ráfaga [8]. Una de las diferencias con OCS es que no se debe esperar al

establecimiento completo de la ruta para el envío de la ráfaga, en cambio, esta es enviada un

tiempo de compensación, previamente establecido, después de que el paquete de control es

enviado. Con la variación de este tiempo también se puede compensar la falta de elementos para

el almacenamiento o retardo de la luz (FDL) y variar la prioridad de las ráfagas en la red.

Una de las ventajas de OBS en comparación con OCS es el uso de un menor tiempo de reserva.

Debido a que los recursos de los canales son reservados salto a salto (hop-by-hop), el uso de

estos recursos es solo necesario mientras la ráfaga esté haciendo uso del respectivo enlace, esto

implica que los recursos pueden ser liberados una vez la ráfaga ya no esté haciendo uso de estos,

esto contribuye al aumento de la eficiencia en el uso del ancho de banda de la red [8]-[1].

En comparación con OCS, OBS presenta problemas en lo que respecta a la supervivencia de la

información en la red. En OCS una ruta es establecida antes de realizar cualquier envío de

información, esto asegura un camino fijo que existirá mientras la información es enviada. En

OBS, por otro lado, no se establece una ruta fija de extremo a extremo de la comunicación, lo

que implica un menor nivel de confiabilidad para la correcta entrega de los datos [1].

23

Debido a la mayor flexibilidad presente en OBS, un mayor número de fallos pueden presentarse

en la red. Con esto en mente, este proyecto busca hacer frente a este tipo de fallos para poder

fortalecer uno de los puntos débiles de la conmutación de ráfagas ópticas.

2.2. FIBRA ÓPTICA

La fibra óptica es un medio de transmisión dieléctrico que permite la transmisión de ondas

electromagnéticas en las frecuencias más altas que pueden ser usadas en los sistemas de

comunicaciones actuales [9]. Una fibra óptica está formada por una barra dieléctrica cilíndrica

delgada y larga llamada núcleo, esta está rodeada por otro material dieléctrico en forma de capa

concéntrica denominada revestimiento o recubrimiento [9]. Es la diferencia entre los índices de

refracción del núcleo y el revestimiento lo que permite la transmisión de señales a través de la

reflexión interna de estas en el núcleo.

2.2.1. Fibra multimodo

La fibra óptica multimodo es una guía de onda dieléctrica que transporta cierto número de modos

de propagación [10]. La representación de estos modos en la fibra se ve reflejada en la figura 2-

2.

Figura 2-2. Representación de los modos de transmisión en una fibra multimodo. Fuente de la

imagen: propia.

En este tipo de fibras las rutas por las que viajan los modos depende de su ángulo relativo con el

eje [10]. De esta manera los diferentes modos, o componentes, en un pulso llegarán a su destino

en tiempos diferentes; esto conlleva a que el pulso se expanda, lo cual limita la tasa de bit de una

posible señal transmitida.

24

2.2.2. Fibra monomodo

Al reducir el diámetro del núcleo y la diferencia entre los índices de refracción del núcleo y el

revestimiento, se puede lograr que solo se propague un modo, este es conocido como modo

fundamental [10]. Una representación gráfica de este tipo de fibras se ve en la figura 2-3.

Figura 2-3. Representación del modo fundamental en una fibra monomodo. Fuente de la

imagen: propia.

Al transmitirse solo el modo fundamental en la fibra no hay expansión del pulso enviado debido

a diferentes tiempos de propagación de diferentes modos como es el caso de la fibra multimodo.

2.3. DISPOSITIVOS ÓPTICOS

En las redes ópticas se hace uso de una amplia variedad de dispositivos que permiten el

transporte de datos a través de ésta en el dominio óptico - electrónico. Los dispositivos más

relevantes son: las fuentes ópticas, detectores ópticos, los amplificadores ópticos, los

acopladores, los filtros ópticos, los multiplexores y demultiplexores, conmutadores, entre otros.

2.3.1. Fuentes ópticas

Para transmitir señales luminosas en un medio óptico como lo es la fibra óptica, se requieren

elementos de emisión y recepción de luz, capaces de convertir señales eléctricas en luminosas y

viceversa.

25

El elemento emisor, modula la intensidad de una fuente luminosa a partir de una señal eléctrica.

La señal óptica es acoplada a una fibra óptica y es transmitida hasta el elemento receptor, el cual

hace un proceso de conversión de la señal óptica a una señal eléctrica.

En la actualidad las únicas fuentes ópticas capaces de cumplir con todos los requerimientos

exigidos por una red de telecomunicaciones óptica, son: los diodos emisores de luz (LED) y los

diodos láser (LD) [11].

La elección entre el LD y el LED es función del sistema: para anchos de banda grandes y largos

enlaces, el láser ofrece un mejor rendimiento. Para distancias cortas y medias con anchos de

banda escasos, en donde la baja potencia de salida, la respuesta en frecuencia o la gran anchura

espectral no sean factores limitativos, se suele escoger el LED.

2.3.2. Detectores ópticos

El los receptores ópticos, la señal es detectada por un fotodetector semiconductor en el cual los

fotones incidentes son convertidos en corriente eléctrica. En el fotodiodo se aprovechan el efecto

de la absorción de la radiación luminosa por un semiconductor. En este proceso, para transportar

corriente se libera un par electrón - hueco por la incidencia de un fotón con mayor energía que la

separación de las bandas de energía, cada fotón que llega se transforma en la pareja electrón -

hueco, por medio de la absorción de la energía del fotón [11].

Se suelen usar dos tipos de receptores en los sistemas de transmisión por fibra óptica: los

fotodiodos PIN y los fotodiodos de avalancha (APD). Las características más importantes de

estos son la sensibilidad, la respuesta espectral, la ganancia de corriente en función de la tensión

de polarización, la potencia equivalente de ruido y la banda pasante [11].

2.3.3. Amplificadores ópticos

Cuando una señal se propaga por la fibra óptica se necesitan emplear regeneradores para

amplificar la señal debido a los efectos de la atenuación y la dispersión.

El fundamento de un amplificador óptico es el proceso de emisión estimulada al igual que en un

láser. Su estructura es similar a la de un láser salvo que no posee una realimentación para evitar

que el dispositivo oscile, de forma que puede elevar el nivel de potencia de la señal pero no

generar una señal óptica coherente [12].

Una fuente de bombeo inyecta una energía en la zona activa del amplificador. Esta energía es

absorbida por los electrones que incrementan sus niveles de energía produciéndose la inversión

de población. Al ser alcanzados estos electrones por los fotones de la señal óptica de entrada

26

caen a unos niveles energéticos más bajos dando lugar a un nuevo fotón, esto es el proceso de

emisión estimulada, produciéndose así la amplificación de la señal [12].

La amplificación se produce dentro de un rango de frecuencias que dependen del material, así

como su estructura. Los dos principales tipos de amplificadores ópticos son: los SOAs,

Semiconductor Optical Amplifiers, los DFAs y Doped-Fiber Amplifiers [12].

2.3.4. Acopladores

Los acopladores son componentes pasivos. Estos operan en el dominio óptico y se emplean en la

distribución y combinación de señales, la realización de multiplexación y demultiplexación por

longitud de onda, la construcción de otros componentes ópticos y la monitorización de sistemas

[12].

2.3.5. Filtros ópticos

Un filtro óptico es un dispositivo capaz de seleccionar una banda de longitudes de onda y de

eliminar el resto. Las principales aplicaciones de los filtros ópticos, que lo convierten en un

dispositivo clave en los sistemas de comunicaciones ópticas son [12]:

● la eliminación del ruido, introducido por ejemplo por los amplificadores ópticos.

● la ecualización de la respuesta de los amplificadores ópticos.

● la selección de canales en sistemas WDM.

Para realizar estas aplicaciones de forma óptima estos dispositivos deben tener unas pérdidas de

inserción reducidas. Idealmente, su banda de paso debe ser plana para evitar así la distorsión de

la señal. Además la banda de transición de su respuesta debe ser abrupta para evitar la diafonía (

cross-talk) con los canales próximos. También es necesario que su comportamiento sea

independiente de la polarización de la señal [12].

2.3.6. Multiplexores y demultiplexores

Los multiplexores y demultiplexores ópticos son dispositivos esenciales en los sistemas WDM

(Wavelength Division Multiplexing). Estos dispositivos se pueden clasificar en dos grandes

grupos: basados en rejillas de difracción y basados en filtros ópticos [12].

Los demultiplexores basados en rejilla, figura 2-4, se basan en el fenómeno de la difracción de

Bragg. La señal de entrada es reflejada por la rejilla, la cual la separa espacialmente las

longitudes de onda de la señal de entrada, y mediante una lente estas señales son enfocadas cada

27

una en una fibra óptica. El empleo de lentes de índice gradual en lugar de lentes convencionales

simplifica el alineamiento de las señales y se consigue un dispositivo más compacto [12].

Figura 2-4. Estructura de demultiplexores ópticos basado en rejillas. Fuente de la imagen:

propia.

Los multiplexores basados en filtros se apoyan en el fenómeno de la interferencia óptica para

seleccionar una longitud de onda. A partir de la combinación de varios MZI se puede construir

multiplexores y demultiplexores con N canales, donde N = 2n

[12].

La figura 2-5 muestra un multiplexor de 4 canales construido mediante la combinación de en 3

MZI. En esta estructura la diferencia de longitud entre los brazos de los MZI es tal que la

potencia óptica de las dos entradas sólo aparece en una salida [12].

Figura 2-5. Estructura de un multiplexor óptico de 4 canales con 3 MZI 2x2. Fuente de la

imagen: propia.

28

2.3.7. Conmutadores

El equipo de conmutación es el elemento que realiza el proceso de encaminamiento de las

señales. Estas señales son adaptadas mediante el interfaz de entrada (cambio de formato de las

señales, cambio de longitud de onda) para que el equipo de conmutación pueda realizar sus

operaciones. De forma análoga la interfaz de salida adecua las señales para su transmisión. El

bloque de control de conmutación es el encargado de configurar el equipo de conmutación [12].

2.4. CONCEPTOS GENERALES DE PROTECCIÓN DE REDES

2.4.1. Rutas de trabajo

Son las rutas o caminos encargadas de transportar la carga de red en condiciones normales [13].

2.4.2. Rutas de protección

Son las rutas o caminos alternativos por las que se transporta la carga de red en caso de que se

presente una fallo [13].

2.4.3. Protección dedicada

Ruta de protección que se asigna a una sola ruta de trabajo para prevenir la pérdida de la

información ante un fallo. Este mecanismo de protección es más seguro pero es más ineficiente

ante el uso de los recursos de la red.

2.4.4. Protección compartida

Ruta de protección que es asignada a varias rutas de trabajo para prevenir la pérdida de

información en el caso de que se llegara a ocurrir un fallo, este mecanismo de protección se basa

en el hecho de que no todas las conexiones en la red fallan al mismo tiempo. Al usar este tipo de

protección se hace un mejor uso de los recursos de la red [13].

2.4.5. Protección reversible

En este sistema de protección una vez se repara la ruta de trabajo, la carga de red se conmuta a

esta de forma automática. Los esquemas de protección compartida son siempre de este tipo,

mientras que los esquemas de protección dedicada pueden o no serlo [13].

29

2.4.6. Protección no reversible

En este sistema de protección una vez se repara la ruta de trabajo, la carga de red no vuelve a la

ruta principal y se debe conmutar de forma manual [13].

2.5. FALLOS EN REDES OBS

2.5.1. Tipos de fallos

Conocer los elementos en una red de fibra óptica es la mejor manera de entender los posibles

fallos que se pueden presentar en esta, entre estos elementos se pueden encontrar cinco, los

cuales describen la red de una manera completa. En primer lugar se encuentran los nodos que

son los responsables del procesamiento de información en la red; la conexión entre nodos se hace

a través de enlaces, y cada uno de estos enlaces a su vez está constituido por cierto número de

fibras ópticas; en cada fibra óptica se pueden transmitir dos tipos de canales, un canal de control

y un canal de datos [14].

Debido a la gran cantidad de información que se puede perder en una red óptica es fundamental

identificar y tomar medidas cuando se presentan fallos en cada uno de los elementos de la red.

Para detectar los fallos de canal es necesario monitorear la señal óptica por longitudes de onda;

para poder reconocer el fallo específico, el canal de control y su correspondiente canal de datos

deben ser gestionados en pareja. Los fallos de fibra pueden ser detectadas al usar la información

de estado por fibra la cual es obtenida al monitorear la pérdida de la luz [14]. Un fallo de enlace

puede ser determinada implícitamente usando el estado de las fibras en dicho enlace; si todas las

fibras en el enlace fallan se presenta un estado de desconexión que implica la existencia de un

fallo de enlace [14]. Para detectar fallos de nodo cada uno de ellos debe intercambiar paquetes

con sus vecinos, si no se recibe ningún paquete se dice que existe un semifallo de nodo; tras este

semifallo se debe verificar el enlace en busca de posibles fallos en este, si no se encuentra un

fallo de enlace se dice entonces que hay un fallo de nodo [14].

30

Figura 2-6. Representación de los elementos básicos de una red óptica. Fuente de la imagen:

propia.

2.5.2. Desarrollo en el análisis de fallos y restablecimiento de servicios

Los fallos de enlace son uno de los fallos más comunes en las redes OBS. Cuando se presenta un

fallo de enlace “la mayoría de los esquemas de restablecimiento OBS presentados en la

literatura, consideran solo el fallo de enlace y por lo general hacen uso de enrutamientos de

desviación cooperativo, sin tener en cuenta un factor preliminar e importante como lo es el

tiempo de compensación (offset time)” [15]. La elección de un adecuado tiempo de

compensación es crítica, debido a su influencia en la pérdida de ráfagas ópticas, dado que este

separa la transmisión del paquete de control y su correspondiente ráfaga de datos.

Para [15] se determina que las principales demoras que se pueden presentar en los nodos

intermedios que son los encargados de procesar el paquete de control y reservar los recursos

necesarios son: “el tiempo de la configuración de la conexión óptica cruzada, el tiempo de

demora del paquete de control y el tiempo de procesamiento” [15]. Para lidiar con estas demoras

definen parámetros como el tiempo necesario para reserva de recursos, que es el número exacto

de saltos a lo largo de la trayectoria entre el origen y el destino, multiplicado por el retardo

medio en los nodos intermedios y un parámetro de tiempo extra añadido al tiempo de

compensación, calculado sobre la base de un nivel de retardo y factor de extensión, que es un

número entero que representa múltiplos de la duración extra añadido a la compensación de

tiempo. Teniendo diferentes valores del factor de extensión se pueden definir diferentes niveles

de QoS (Quality of Service) en la red.

Los resultados obtenidos en un ambiente de simulación OPNET, utilizando un esquema

ARPANET [15], muestran que al variar el factor de extensión en el parámetro de tiempo extra,

hay una mejora considerable en cuanto a bloqueo de ráfagas y pérdida de las mismas.

31

Otra técnica utilizada para prevenir los fallos de enlace como fallos de nodos está basada en el

protocolo de detección de envío bidireccional BFD (Bidirectional Forwarding Detection), este

protocolo se basa a su vez en protocolos de reserva OBS como JIT (Just-In-Time) y JET (Just-

Enough-Time) y técnicas de redireccionamiento rápido (FRR).

El protocolo JIT reserva una longitud de onda para una ráfaga inmediatamente después de que

llega el paquete de control, si no es posible hacer la reserva de la longitud de onda en ese

momento se rechaza el paquete de control y se deja perder la ráfaga [16]. Por otro lado, el

protocolo JET realmente no reserva los recursos desde que el paquete de control llega al nodo

hasta que pasa la ráfaga, sino que reserva los recursos de una forma óptima desde que llega la

ráfaga hasta que es conmutada [2].

Las FRR son técnicas utilizadas en OBS en las que se calculan rutas alternativas a la primaria

para ser utilizadas en el momento en el que se detecta un fallo de enlace o de nodo, estas pueden

ser rutas de extremo a extremo o locales [16].

En el protocolo BFD se envía un BCP o BHP (paquete de encabezamiento de sincronización)

entre los nodos centrales a través de un canal de control, de esta forma se construye una sesión

BFD entre dos nodos centrales, estos tienen que enviarse entre sí un BFD en un tiempo de

negociación TI para garantizar que aún está vigente la conexión entre ellos. Si un nodo central no

recibe la BFD desde el homólogo dentro de un tiempo de detección DT, el nodo central asumirá

que en su contraparte ocurrió un fallo de enlace o de nodo y recurrirá a una FRR [16], esto se

muestra en la figura 2-7.

Figura 2-7. Ejemplo de mecanismo de detección de fallos por BFD. a) En la figura a los

paquetes BFD son enviados por el nodo A y recibidos por el nodo B quien envía un paquete BFD

a el nodo A en el tiempo negociado TI= 10ms, durante todo el tiempo de detección DT= 30ms,

garantizando que aún está vigente la conexión entre ellos. b) En la figura b los paquetes BFD son

32

enviados por el nodo A pero no se recibe ningún paquete BFD del nodo B durante el tiempo de

detección DT= 30ms, lo que indica que ocurrió un fallo en la conexión. Fuente de la imagen:

propia.

BFD puede proporcionar tiempos de detección de fallos rápidos para la red OBS con bajo costo

de operación, y el mecanismo de detección de fallos por BFD es fácil de implementar. Los

resultados de simulación muestran que el mecanismo propuesto puede evitar o reducir

eficazmente la pérdida de ráfagas cuando se combina con FRR.

El análisis de fallos en redes también está relacionado con problemas que se puedan presentar en

los equipos utilizados en los nodos de la red [17]. Los resultados del análisis de fallos en la red

pueden variar en función del tipo de fallo que se presente, en este caso se tendrán en cuenta

fallos de enlace y de nodo y el método usado para el manejo de alguna de estas, se sigue teniendo

como método para enfrentar errores en la red el reenrutamiento de las ráfagas ópticas.

Algunos de los esquemas de protección que se tienen en cuenta para el análisis de fallos de

enlace y de nodos son los siguientes [17]:

● Ruta dedicada: La capacidad de reserva es dedicada a una ruta de protección individual.

● Ruta compartida: La capacidad de reserva es compartida entre diferentes rutas de

protección.

● Restauración de ruta: Reemplaza toda la ruta entre la fuente y el destino.

● Restauración de enlace: Reenruta el tráfico interrumpido alrededor del enlace fallido.

Los resultados de simulaciones realizadas aplicando los esquemas de protección para fallos de

enlace y de nodos [17], muestran que el esquema de protección dedicada y compartida ofrece

buena protección a fallos de enlace cuando hay entre 0% - 25% de este tipo de fallos en la red,

para una cantidad de fallos por encima del 25% la restauración de enlace se desempeña mejor en

términos del número de longitudes de onda recuperadas. La restauración de ruta muestra ser

capaz de manejar el porcentaje más alto de fallos de nodo con mayor efectividad en términos de

recuperación de longitudes de onda [17].

Además de las técnicas y métodos expuestos anteriormente para prevenir los fallos de enlace y

fallos de nodo, existen otros que buscan evitar estos problemas y al mismo tiempo evitar la

pérdida de ráfagas estableciendo servicios de calidad, una técnica que busca esto es la llamado

Doble Reserva (DR) [18].

DR reserva canales en dos caminos disjuntos entre el nodo de entrada y el nodo de salida una vez

que se genera una ráfaga. De estas dos reservas, una es denominada reserva primaria y la otra

reserva secundaria. A diferencia de los sistemas de protección existentes en OBS, DR permite

que las reservas sobre estos dos caminos tengan diferentes prioridades. La ráfaga emitida en el

33

camino secundario tiene un tiempo de compensación más largo que el de la ruta o camino

principal, y por lo tanto tiene mayor prioridad que ésta. Si la reserva por el camino principal es

exitosa y la ráfaga alcanza el destino, este le enviará un paquete de LIBERACIÓN a lo largo de

la ruta secundaria de destino a origen. Al recibir el paquete de LIBERACIÓN, el nodo

intermedio en el camino secundario liberará la reserva de canal para el resto del tráfico. Si la

ráfaga en el camino principal se pierde por alguna razón (como la insuficiencia o fallo

planificación enlace/nodo), el destino esperará la ráfaga emitida en el camino secundario [18].

DR puede reducir la tasa de pérdidas de ráfagas causada por la contención de longitud de onda y

el fallo de enlace/nodo. Además de minimizar la tasa de pérdida de datos para todas las ráfagas,

también puede proporcionar la calidad de servicio para ráfagas con diferentes requisitos de

pérdida. Las simulaciones realizadas utilizando una topología NSFNET 14 nodos [19], muestran

que el sistema de reserva propuesto mejora significativamente la tasa de pérdida de rendimiento

[18].

De todos los tipos de problemas que se pueden presentar en una red, existen diversos tipos de

fallos que pueden afectar los canales, tanto de datos como de control, en una fibra óptica. La

creación de cuellos de botella en los canales de control de la red aumenta el número de paquetes

de control que son descartados, el que esto suceda no solo incrementa el radio de pérdidas de

ráfaga sino que también incurre en la baja utilización del ancho de banda.

Debido a que FIFO es el método por excelencia considerado para la programación de recursos de

canales en redes de tipo OBS [20], el establecimiento de diferentes tiempos de compensación

entre los paquetes de control y sus respectivas ráfagas puede causar que algunas de estas ráfagas

sean descartadas debido que su correspondiente paquete de control no sea procesado a tiempo

para realizar la reserva de recursos antes de que la ráfaga llegue al nodo en cuestión.

Se hace necesario el uso de un método de programación que tenga en cuenta los tiempos de

compensación para poder establecer un camino a aquellas ráfagas con una mayor urgencia en la

red. Debido a que los paquetes de control llevan información sobre la ráfaga, se puede realizar el

almacenamiento y procesamiento de estos paquetes en el dominio eléctrico con el fin de analizar

los valores de tiempo y longitud de la ráfaga para así tomar una decisión sobre el orden en el cual

se deben asignar recursos [20]. Aunque esto no evite la pérdida de información si disminuye la

probabilidad de que esto suceda.

Los resultados obtenidos de la simulación del enrutamiento con el análisis de tiempos de las

ráfagas muestran una reducción en la tasa de pérdidas y un aumento en el uso del ancho de banda

en relación con el método FIFO [20].

34

2.6. MÉTODOS DE IDENTIFICACIÓN DE FALLOS

2.6.1. Identificación de fallos

OBS presenta muchas ventajas debido a su complejidad, sin embargo, esto mismo hace que la

detección de fallos sea una de las dificultades en este tipo de redes. La correcta detección y

localización de errores es fundamental en el proceso de recuperación ante cualquier tipo de

fallos; uno de los puntos clave en la detección de errores, además de ubicar de manera correcta

en donde ocurrió un fallo, es hacerlo en el menor tiempo posible con el fin de mantener altos

estándares de calidad de servicio y funcionalidad.

2.6.2. Desarrollos en la identificación de fallos

En la búsqueda de métodos efectivos y eficientes para la identificación de errores, una de las

propuestas es el algoritmo basado en el monitoreo por ciclos [21].

La idea fundamental del algoritmo es descomponer la red en un conjunto de ciclos. Todos los

nodos y los enlaces se encuentran al menos en uno de estos ciclos, un módulo de sondeo es

asignado por ciclo. Dividir la red en diferentes subredes es una buena técnica para facilitar el

trabajo de la revisión por ciclos. Con la topología en anillo es relativamente fácil la detección de

fallos y además es fácil el reenrutamiento, así que idealmente se busca que las subredes

obtenidas tengan esta topología. Luego de realizar la división de subredes en forma de anillos y

de abanico, se procede a realizar el árbol de expansiones (spanning tree) de la subred, el objetivo

de esta etapa es el de obtener los ciclos en las diferentes subredes [21].

Para el proceso de detección de errores se establece una matriz de candidatos de fallos F cuando

se enumeran códigos de alarma para cada enlace, el número de filas en la matriz F es igual al

número total de enlaces en la red [21]. Una vez que las alarmas por fallos son recibidas, un

código de alarma m es generado, se puede comparar este código con la matriz de candidatos F

fila por fila y bit por bit, de esta manera se podría detectar el enlace en el que ocurrió el fallo

[21].

Las simulaciones de este método para la detección de fallos, basado en un esquema de partición

de red, presentan un grado de localización de fallos relativamente alto y también reduce el gasto

general promedio de longitud de onda en relación a otros algoritmos [21].

35

2.7. MECANISMOS DE RESTABLECIMIENTO Y SU

APLICACIÓN

2.7.1. Restablecimiento

El restablecimiento es la segunda parte en el proceso de recuperación ante fallos. En esta etapa se

busca tomar medidas ante un fallo ocurrida en la red, cabe añadir que estas medidas están

relacionadas con la toma de decisiones de lo que se debe hacer con los datos afectados por el

fallo ocurrida. Además de que la buena toma de decisiones sea el núcleo de este proceso, el

tiempo en el que se toman estas decisiones es fundamental para la buena calidad de servicio de la

red.

2.7.2. Desarrollos en los mecanismos de restablecimientos

Los esquemas generales de restablecimiento conocidos no pueden ser aplicados a redes OBS

debido a que carecen de una característica fundamental en este tipo de tecnología, el tiempo de

compensación. Este tiempo de compensación es un retardo existente entre un paquete de control

y su correspondiente ráfaga.

El proceso original de restablecimiento de ruta para redes OBS está dado por una serie de pasos

[22]. El primer paso es la detección del fallo, en esta parte los nodos adyacentes (f y g en la

figura 2-8) al fallo hacen la respectiva identificación de esta y proceden a dar aviso a los nodos

de origen y destino de la ráfaga (a y e en la figura 2-8), con el fin de recalcular la nueva ruta y

liberar recursos, esta acción es el segundo paso del proceso de restablecimiento. El tercer paso

consiste en el cálculo de la ruta de respaldo y la reserva de esta, de ésta acción se encarga el nodo

de origen de la ráfaga (a en la figura 2-8). El cuarto paso está dado por el ajuste del tiempo de

compensación y conmutación de la ráfaga por la nueva ruta, es importante el ajuste del tiempo de

compensación debido a que el número de nodos por los que debe pasar la ráfaga en la nueva ruta

puede ser diferente al número de nodos que se tenía en la ruta anterior.

36

Figura 2-8. Imagen para el proceso de restablecimiento de ruta. Fuente de la imagen: propia.

Para los casos de restablecimiento de sub-ruta y de enlace, la diferencia yace en el hecho de que

el proceso no restablece la ruta completa desde el nodo de origen hasta el nodo de destino, en

cambio solo se restablece una sección o tramo de la ruta.

Con base en este esquema general se han desarrollado varios mecanismos para evitar fallos en

redes OBS, uno de los propuestos en la literatura es denominado mecanismo de protección

dinámico [23]. En éste se usa un control GMPLS (Generalized Multiprotocol Label Switching)

[2], el esquema de protección 1+1 [24] y el esquema de cambio de ruta previamente planificada,

estos esquemas ofrecen diferentes tiempos de recuperación en una red OBS que generalmente

toma valores entre varias decenas de milisegundos a varios segundos. Lo que propone este

mecanismo es el uso dinámico de estos esquemas según los requerimientos de protección para

garantizar la calidad de servicio de acuerdo a la prioridad del flujo de ráfagas, es decir, si una

ráfaga es de alta prioridad se usará protección 1+1 que garantiza una pérdida menor que un

esquema de protección de cambio de ruta previamente planificada, esta última es usada para

tráfico de baja prioridad.

En la experimentación se verificó que este mecanismo de protección dinámica, puede ser

utilizado para dar cabida efectiva a múltiples flujos de ráfaga con diversos requerimientos de

calidad de servicio, demostró una gran elasticidad ante los fallos en la red.

Enrutar dinámicamente cada ráfaga de acuerdo al estado actual de la red podría distribuir mejor

el tráfico. Los mecanismos de enrutamiento se centran en evitar la congestión en las etapas de

cómputo de rutas, en lugar de lidiar con ella cuando ya ha sucedido [25]. DSR (Enrutamiento

dinámico con reenrutamiento síncrono) y DAR (Enrutamiento dinámico con reenrutamiento

asíncrono) son dos tipos de enrutamiento semidinámico que pueden ser usados para esta tarea.

En DSR una tabla de enrutamiento es inicialmente establecida calculando la ruta más corta entre

cada par de nodos. La cabecera de la ráfaga es enviada en la ruta almacenada previamente en la

37

tabla, después de un periodo T la red es actualizada al analizar el ancho de banda de cada enlace,

en base a esta información la tabla de enrutamiento es actualizada para cada ruta. En DAR si es

recibida una petición de una ruta, y esta se encuentra en la tabla de enrutamiento, la ruta es

utilizada; si la ruta no está definida esta será calculada y almacenada en la tabla un tiempo T.

Después de T unidades de tiempo, la ruta será eliminada de la tabla hasta que se tenga una nueva

petición para la misma ruta [25].

Un primer resultado del uso de técnicas de enrutamiento dinámico es que los tiempos de

actualización de las tablas no deben ser ni muy cortos ni muy largos, tiempos cortos llevan a

tablas de enrutamiento inestables y tiempos largos hacen que los enfoques tiendan a mecanismos

estáticos. Los resultados muestran además que la probabilidad de pérdidas de ráfagas puede ser

disminuida significativamente con el uso de enfoques de enrutamiento dinámico. Otro resultado

significativo mostró que los mecanismos de enrutamiento dinámico consiguen un mejor balance

de carga del tráfico de ráfagas [25].

38

Capítulo 3

METODOLOGÍA

39

3.1. Fundamentos y diseño de un nodo de borde y un nodo de núcleo

para una red OBS

El componente fundamental de una red OBS es el nodo, su función principal es proveer una ruta

con características definidas y dentro de un período de tiempo especificado, además, las

peticiones de conexión de estas rutas pueden ser por demanda o por reserva de recursos. Por este

motivo es necesario que los recursos del nodo utilizados para el establecimiento de dichas rutas

aseguren de manera flexible la provisión de rutas para esas peticiones.

En una red OBS existen dos tipos de nodos: el nodo de borde y el nodo de núcleo, el primero se

encarga de ensamblar y desensamblar los paquetes IP para formar las ráfagas de datos, de igual

manera genera un paquete de control por cada ráfaga de datos que ensambla, el cual es enviado a

un nodo de núcleo con antelación con el fin de reservar recursos de red para el posterior envío de

la ráfaga de datos. Los nodos de borde son los únicos que pueden introducir y extraer tráfico de

la red OBS. El nodo de núcleo se encarga de la conmutación y asignación de longitudes de onda

a lo largo de toda la ruta.

3.2. Partes de un nodo de borde

3.2.1. Unidad de adaptación

Unidad encargada de recibir la información por las diferentes entradas del nodo (eléctricas u

ópticas) y convertirlas al dominio eléctrico, para que puedan ser procesadas posteriormente por

el nodo.

3.2.2. Buffer de línea

Unidad de almacenamiento de los paquetes IP, recibidos por un puerto del nodo de borde

determinado y que posteriormente serán procesados por la unidad de ensamblado de ráfagas de

datos.

3.2.3. Ensamblador

La unidad de ensamblado de ráfagas consta de:

● Clasificador: unidad encargada de separar los paquetes IP, según su destino y prioridad.

● Generador de ráfaga de datos: unidad encargada de unir los paquetes IP y conformar la

ráfaga de datos, esta cuenta con un buffer de almacenamiento.

● Generador de paquete de control: unidad encargada de generar el paquete de control

para cada ráfaga de datos, este paquete de control contiene la ruta de origen a destino, el

40

tamaño de la ráfaga de datos, el tiempo de retraso entre la transmisión de la ráfaga y el

paquete de control.

Figura 3-1. Diagrama de bloques nodo de borde. Fuente de la imagen: propia.

3.2.4. Desensamblador

El módulo de desensamblado se encarga de hacer el proceso inverso del ensamblador, este recibe

la ráfaga de datos, la convierte al dominio eléctrico la almacena y la procesa separando la ráfaga

41

de datos en paquetes IP que posteriormente son enviados al destino correspondiente de cada

paquete.

3.2.5. Interfaz de salida

Está compuesta por dos partes:

1. Interfaz de salida para los paquetes de control, transmisor óptico encargado de

transformar el paquete de control del dominio eléctrico al dominio óptico, para ser

enviado por un hilo de fibra al siguiente nodo.

2. Interfaz de salida para ráfagas ópticas: puerto óptico conectado directamente desde una

salida del conmutador óptico a una salida óptica del nodo de núcleo.

3.3. Partes de un nodo de núcleo

3.3.1. Interfaz de entrada

Está compuesta por dos partes:

1. Interfaz de entrada para los paquetes de control la cual consta de:

● Demultiplexor óptico: utilizado para separar las longitudes de onda utilizadas para

transmitir los paquetes de control.

● Receptor óptico: encargados de transformar las señales ópticas en señales eléctricas

(conversor OE), en concreto es un fotodetector el encargado de esta transformación. El

receptor óptico consta de:

− Un filtro óptico, encargado de eliminar ruido y de seleccionar el canal adecuado.

− Un fotodetector, elemento encargado de generar una corriente eléctrica

proporcional al a partir de una potencia óptica.

− Un amplificador front-end, que amplifica la señal eléctrica.

− Un decisor, que decide cuando se está recibiendo un "1" o un "0".

● Buffer de almacenamiento de paquete de control: es utilizado para almacenar el

paquete de control una vez ha sido convertido de dominio óptico al dominio eléctrico,

para posteriormente ser procesado, por la unidad de control.

42

2. Interfaz de entrada para ráfagas ópticas: puerto óptico conectado directamente a un

conmutador óptico.

Figura 3-2. Diagrama de bloques nodo de núcleo. Fuente de la imagen: propia.

3.3.2. Unidad de control

Unidad encargada de procesar el paquete de control en el dominio eléctrico, asigna recursos de

red, especifica el siguiente salto en la ruta según su tabla de enrutamiento, genera un nuevo

paquete de control y lo envía a la interfaz de salida del paquete de control.

3.3.3. Conmutador - conversor óptico

Los amplificadores de semiconductor (SOA, Semiconductor Optical Amplifier) que

originalmente se desarrollaron para amplificación lineal han encontrado un mejor campo de

acción en el procesamiento todo-óptico de señal, en concreto, como dispositivo conmutador y

como dispositivo capaz de realizar conversión de longitud de onda. En este contexto, la

conversión de longitud de onda en SOA se logra mediante la interacción de señales ópticas

moduladas y los portadores internos del SOA. Existen dos métodos principales para realizar

conversión de longitud de onda usando amplificadores ópticos de semiconductor: mediante

modulación de ganancia cruzada (XGM, Cross Gain Modulation), modulación de fase cruzada

(XPM).

43

3.3.3.1. Modulación de ganancia cruzada

La modulación de ganancia cruzada en un SOA es un efecto que permite a una señal modulada

en intensidad transferirse de una longitud de onda a otra. Esta técnica se puede implementar en

todo el rango de longitudes de onda del amplificador (100 nm), es prácticamente insensible a la

polarización pero introduce ruido debido al efecto de emisión espontánea propio de los SOA. Si

la intensidad de la potencia de entrada es alta, el número de transiciones estimuladas en la zona

activa del material semiconductor aumenta, y por lo tanto, la densidad de portadores disminuye,

resultando en una reducción de la ganancia del amplificador. Este fenómeno se conoce como

saturación de ganancia del amplificador y provoca una modulación en la ganancia invertida

respecto a una señal de entrada inicialmente modulada. Si de forma simultánea, una señal

continua (CW) que está en otra longitud de onda se inyecta al SOA de forma codireccional o

contradireccional, ésta se amplifica con dicha ganancia, y por lo tanto, resultará modulada a la

salida del SOA con un patrón inverso al original. Cuando el SOA se configura de forma

codireccional se requiere un filtro a la salida del dispositivo para eliminar la señal en la longitud

inicialmente modulada, dejando pasar únicamente la señal de datos a la nueva longitud de onda.

Cuando el SOA se configura de forma contradireccional, no se requiere la utilización de dicho

filtro y además se puede realizar conversión a la misma longitud de onda, aspecto que no es

posible cuando el SOA se alimenta de forma codireccional. Un aspecto a tener en cuenta es que

el ancho de banda en la configuración contradireccional se reduce ligeramente y se incrementa el

nivel de ruido de emisión espontánea (ASE, Amplified Spontaneous Emission) [26]. En la figura

3-3 se muestra la configuración del SOA para efectuar la conversión de forma codireccional,

figura 3-3(a) y contradireccional figura 3-3(b) respectivamente.

Figura 3-3. Esquema de conversión en XGM. (a) Codireccional. (b) Contradireccional. Fuente

de la imagen: propia.

En la actualidad este dispositivo de forma comercial se puede encontrar con anchos de banda de

hasta 40 GHz, no obstante introducen diafonía cuando varias señales con distintas longitudes de

44

onda atraviesan el SOA, por este motivo no es apropiado para amplificación de señales WDM.

Otro aspecto relacionado con las prestaciones del dispositivo se refiere a la baja relación de

extinción (<10 dB) que provee a los datos debido a que las características propias de

funcionamiento del amplificador hace que nunca llegue a saturarse por completo. Por último la

variación de la densidad de portadores en el SOA provoca cambios en el índice de refracción y

por tanto en la fase de la señal sonda (CW). No obstante, esta técnica de conversión de longitud

de onda ha sido implementada en varias demostraciones de nodos de conmutación de paquetes

ópticos [27]. La caracterización de un SOA configurado en XGM realizada con una corriente de

polarización de 1 mA, muestra que altas potencias de entrada de la señal de bombeo corresponde

a bajas potencias de salida de la señal convertida y viceversa, por lo tanto, el patrón de salida de

los datos convertidos experimenta una inversión lógica con respecto a los datos de entrada como

se mencionó anteriormente. Por otro lado, como se observa en la figura 3-4, la relación de

extinción depende de la potencia de la señal de continua debido a que la saturación del

amplificador con altas potencias de entrada es mayor, por lo tanto, la ganancia es más baja

resultando en una reducción de la relación de extinción de la señal de salida convertida. En la

figura 3-5 se observa que para una potencia de señal continua relativamente alta, la relación de

extinción se incrementa con potencias de bombeo altas y disminuye con potencias de bombeo

bajas. Por lo tanto se debe encontrar un compromiso entre los niveles de potencia de la señal de

bombeo y la señal de continua, ya que la relación de extinción se reduce con potencias de señal

de continua altas pero aumenta para potencias de señal de bombeo altas. Por otro lado, la

respuesta en frecuencia de la conversión mediante XGM tiene un comportamiento de filtro paso

bajo, el cual según [28] se puede expresar como:

(3.1)

Donde te es el tiempo de vida efectivo de los portadores y K es una constante que depende del

factor de confinamiento, la ganancia del material, la ganancia diferencial de la señal de bombeo,

la ganancia de paso de la señal de bombeo, la longitud de la sección y la densidad promedio de

fotones de la señal de continua.

3.3.3.2. Modulación de fase cruzada

El esquema de modulación basado en XPM está concebido para superar los problemas de la baja

relación de extinción de la técnica XGM. Este mecanismo se basa en la dependencia que tiene el

índice de refracción con la densidad de portadores en la zona activa del amplificador. Conforme

la densidad de portadores en el amplificador varía con la señal de entrada, se produce un cambio

45

en el índice de difracción que modula la fase de la señal de continua. Esta modulación de fase

puede convertirse en modulación de intensidad al integrar los amplificadores de semiconductor

en diferentes distribuciones, la más usual es la de tipo interferométrico Mach-Zehnder (MZI), en

donde puede haber más de un SOA por brazo. El estado del conversor se ajusta a través de las

corrientes inyectadas a los SOA, de esta forma, una de las ventajas que ofrece XPM, a diferencia

del mecanismo basado en XGM, es la capacidad de poder seleccionar una conversión de longitud

de onda con inversión o sin inversión de bit [29].

Figura 3-4. Respuesta de XGM con respecto a la potencia de la señal de continua. Fuente de la

imagen: propia.

Figura 3-5. Respuesta de XGM con respecto a la potencia de la señal de bombeo. Fuente de la

imagen: propia.

46

Adicionalmente, el comportamiento no lineal del dispositivo mejora la relación de extinción de

la señal de datos y puede regenerar la forma de los bits de entrada. Estas propiedades hacen que

esta configuración sea parcialmente regenerativa y por lo tanto permite la realización de sistemas

en cascada, una propiedad fundamental para su implementación en redes de datos. Al igual que

en XGM, la conversión mediante XPM también puede presentar esquemas codireccionales o

contradireccionales como se aprecia en la figura 3-6. En modo contradireccional no se requiere

un filtro a la salida del conversor y permite conversión a la misma longitud de onda mientras que

en modo codireccional se obtiene mejores prestaciones en cuanto a relación señal a ruido y

mayor ancho de banda de conversión.

Figura 3-6. Esquema de conversión en XPM. (a) Codireccional. (b) Contradireccional. Fuente

de la imagen: propia.

Las buenas prestaciones del conversor XPM en SOA han consolidado este esquema como uno de

los más idóneos para implementarse en nodos de conmutación de paquetes ópticos, en donde

además de ofrecer conversión de longitud de onda, sus características han permitido la

realización de técnicas de regeneración 2R, [30], [31] y 3R [32], [33]. Como se mencionó

anteriormente, hay varias geometrías y distribuciones de los amplificadores de semiconductor

que permiten lograr conversión de longitud de onda usando el efecto de modulación de fase

cruzada. En la figura 3-7 se muestran dos posibles configuraciones de dichos conversores.

Mientras en la configuración (A), el conversor solo incorpora un amplificador por brazo y tiene

dos posibles entradas de señal de continua y dos salidas dependiendo de si la configuración es

codireccional o contradireccional, en la configuración (B), el conversor además de los

amplificadores de cada uno de los brazos incorpora amplificadores de semiconductor en cada

uno de los puertos.

En el caso del conversor (A), las corrientes de polarización del SOA1 se encargan de determinar

la velocidad de conversión a través de recuperación dinámica de portadores, mientras que en el

47

SOA2 dichas corrientes determinan el punto de operación del conversor. En el conversor (B), las

corrientes de los SOA3 y SOA5 realizan las mismas funciones que en caso anterior, además, el

SOA1 y el SOA2 se encargan de compensar las pérdidas de inserción de la señal de bombeo, el

SOA4 ajusta la fase de la rama inferior del interferómetro y el SOA6 amplifica la señal

convertida. La corriente de polarización de este SOA no debe ser muy alta ya que incurriría en

altos valores de ruido ASE deteriorando la relación señal a ruido.

Figura 3-7. Distribución interna de los amplificadores de semiconductor en los conversores

basados en XPM. (a) Sin entrada/salida amplificada. (b) Con entrada/salida amplificada. Fuente

de la imagen: propia.

La caracterización realizada sobre el conversor (A) con una corriente de polarización del SOA1

(I1) fijada en un máximo de 300 mA, con la cual se garantiza una rápida velocidad de

conversión, además, con una potencia de la señal de continua de -1.8 dBm y un barrido de la

corriente de polarización del SOA2 (I2) de 0 a 300 mA se muestra en la figura 3-8(a). Se observa

que para I2 = 160 mA se obtiene un modo de operación en fase (no inversión) en la salida 1´ y

fuera de fase (inversión) en la salida 1 mientras que para I2 = 280 mA la salida en 1 está en fase

y la 1´ está fuera de fase. La función de transferencia en modo de inversión para ambos puertos

de salida se muestra en la figura 3-8(b). Aunque los resultados en la figura 3-8(b) son

relativamente similares, se debe notar que con una corriente de polarización de 160 mA en el

SOA2 se obtiene una potencia de salida más alta en el puerto 1´ que la ofrecida en el puerto de

salida 1 con una corriente de polarización de 280 mA.

En cuanto al conversor (B), la respuesta del dispositivo para una corriente de polarización del

SOA3 de 350 mA, 50 mA para los SOA de entrada, 95 mA para el de salida, 40 mA en el SOA4

a fin de ajustar la fase del brazo inferior del interferómetro y un barrido en la corriente de

polarización del SOA5 de 0 a 200 mA se muestra en la figura 3-8(c). En ella se observa que en

48

120 mA hay mayor transferencia de potencia determinando el punto óptimo de trabajo del

conversor. En figura 3-8(d) se muestra la función de transferencia del conversor.

Figura 3-8. Caracterización del conversor de longitud de onda basado en XPM. (a) Punto de

trabajo del conversor A. (b) Función de transferencia del conversor A. (c) Punto de trabajo del

conversor B. (d) Función de transferencia del conversor B. Fuente de la imagen: propia.

3.3.4. Interfaz de salida

Está compuesta por dos partes:

3. Interfaz de salida para los paquetes de control, transmisor óptico encargado de

transformar el paquete de control del dominio eléctrico al dominio óptico, para ser

enviado por un hilo de fibra al siguiente nodo.

49

4. Interfaz de salida para ráfagas ópticas: puerto óptico conectado directamente desde una

salida del conmutador óptico a una salida óptica del nodo de núcleo.

3.4. Diseño de un nodo de borde en OMNeT++

Los nodos de borde y de núcleo son los elementos encargados de formar y enrutar las cabeceras

y ráfagas ópticas en la red, y son denominados elementos compuestos debido a que están

conformados y funcionan gracias a la unión de elementos simples que cumplen funciones

específicas.

Los nodos de borde tienen la función de ensamblar, desensamblar, asignar recursos y enrutar los

paquetes de control y las ráfagas formadas. El modelo de este tipo de nodos es mostrado en la

figura 3-9.

Para los datos que se dirigen hacia la red el modelo de nodo de borde propuesto en la figura 3-10

está compuesto por un buffer que almacenará los datos de usuarios entrantes al nodo, un

ensamblador de ráfaga que los agrupará en función de su destino o prioridad, luego sigue el

conversor eléctrico-óptico (EOC) que se encargará de pasar la ráfaga formada al dominio óptico

y finalmente un módulo de envío que se encarga de tareas relacionadas el enrutamiento.

Para los datos que provienen de la red y tienen como destino a los usuarios, el nodo de borde

cuenta con un conversor óptico-eléctrico (OEC) que permite pasar los datos entrantes al dominio

eléctrico y un desensamblador de ráfagas que los preparará para entregarlos a los usuarios

finales.

La unidad de control representa el centro de toma de decisiones en el nodo. Sin embargo, en la

simulación las tareas de enrutamiento y toma de decisiones correspondientes a la unidad de

control son realizadas por los elementos de salida finales del nodo, módulo de envío y el

desensamblador, por ser esto más conveniente en términos de simplicidad para la simulación.

50

Figura 3-9. Modelo de nodo de borde. Fuente de la imagen: software de simulación OMNeT++.

3.5. Diseño de un nodo de núcleo en OMNeT++

La función principal de los nodos de núcleo es la de enrutar los paquetes de control y las ráfagas

entrantes, para lo cual debe convertir del dominio óptico al eléctrico los paquetes de control con

el fin de realizar su respectivo análisis, lo que permitirá realizar la asignación de recursos y el

enrutamiento de la ráfaga en el dominio óptico. El modelo del nodo de núcleo se muestra en la

figura 3-10.

El modelo de nodo de núcleo presentado está compuesto por un módulo receptor que clasifica

entre los paquetes de control y las ráfagas. En la etapa de análisis y envío de los paquetes de

control se tiene un OEC, luego la unidad de control que analizará el paquete de control y tomará

decisiones con respecto al resultado de este análisis, finalmente se tiene un EOC. Ya que las

ráfagas son directamente enrutadas, para el envío de estas se tiene un módulo óptico cruzado que

cumple está función.

De igual manera que el nodo de borde, el módulo de envío en el nodo de núcleo cumple las

funciones de toma de decisiones y enrutamiento. De esta manera los paquetes de control y las

ráfagas deben pasar por este módulo antes de ser enviadas.

51

Figura 3-10. Modelo de nodo de núcleo. Fuente de la imagen: software de simulación

OMNeT++.

3.6. Diseño enlaces en OMNeT++

Los enlaces entre dos elementos de la red están representados por conexiones, una en cada

sentido. Las fibras ópticas y los canales en estas están representados por vectores, lo que permite

usar banderas para asignar recursos, liberarlos e implementar los correspondientes fallos. La

implementación de fibras y canales haciendo uso de variables en lugar de conexiones brinda un

grado de control mayor en el uso de recursos y manejo de fallos, además hace la implementación

menos compleja ya que solo hay que tener en cuenta una conexión por evento, ya sea para el

envío o la recepción de datos.

Un enlace full dúplex está compuesto por 12 fibras ópticas, en las cuales se tienen 9 canales por

fibra, 3 canales de control y 6 canales de datos. Los niveles de carga en la red están relacionados

directamente al uso y liberación de los recursos de los canales de datos. Debido a que la cantidad

de información transportada por los canales de control es insignificante comparada con la

cantidad de información transportada en los canales de datos, se considera que los primeros

siempre tendrán recursos disponibles para el envío de paquetes de control.

3.7. Propuesta de algoritmo para la detección y toma de decisiones

ante fallos

El algoritmo propuesto se divide en varias partes que se explicarán y desarrollarán a

continuación las cuales son: definición de un tiempo de compensación, la definición de una

prioridad de la información y planteamiento del algoritmo de detección, análisis y toma de

decisiones ante fallos en una red OBS.

52

3.8. Tiempo de compensación (offset time)

En las redes OBS el tiempo de compensación es el lapso de tiempo que existe entre la

transmisión del paquete de control y la transmisión de su correspondiente ráfaga de datos, dado

que no existe en la actualidad manera de almacenar luz (buffers ópticos), este es un parámetro

preliminar que se debe calcular antes del envío de cualquier tipo de datos para así prevenir la

pérdida de información. El tiempo de compensación le permitirá al paquete de control reservar

los recursos necesarios para que la ráfaga de datos cruce de manera transparente la red.

Los principales retrasos se presentan en los nodos intermedios, como consecuencia del

procesamiento del paquete de control y la reserva de los recursos necesarios para la transmisión

de la ráfaga de datos, para la estimación de este tiempo de compensación se tienen en cuenta los

siguientes parámetros [15]:

● Tiempo de configuración de la conexión óptica cruzada ( ). Tiempo en el que se

asigna un camino de luz para la ráfaga de datos próxima a llegar al nodo, correspondiente

al paquete de control.

● Tiempo de cola del paquete de control ( ). Debido a que varios paquetes de control

pueden llegar a un mismo nodo intermedio para reservar recursos, mientras estos son

procesados estos son almacenados en un buffer, generando un retardo.

● Tiempo de procesamiento ( ). Tiempo necesario para procesar el paquete de control,

en el nodo intermedio.

● Número de saltos entre el origen y destino ( ) de la ruta por la que se va a transmitir la

ráfaga de datos.

● Valor de seguridad para compensar la incertidumbre ( ) que puede existir entre los y

.

● Nivel de retraso que se agrega al tiempo de compensación para disminuir la pérdida de

información .

● Factor de extensión (σ). Es un número entero que representan múltiplos de la duración

extra añadido a la compensación de tiempo. Teniendo diferentes valores de σ se pueden

definir diferentes niveles de QoS en la red. Este valor se modifica según el nivel de

prioridad de la ráfaga de datos a transmitir.

53

Para la estimación del tiempo de compensación se sigue el siguiente proceso:

1. Cálculo del tiempo necesario para la reserva de los recursos de origen o destino .

(3.1)

Dónde:

(3.2)

2. Cálculo del tiempo extra.

(3.3)

3. Cálculo del tiempo de compensación

+ (3.4)

3.9. Diagrama de flujo

3.9.1. Diagrama de flujo de detección de fallos en una red OBS

En la figura 3-11 se presenta el diagrama de flujo del método que realiza la clasificación entre un

canal de datos y un canal de control, clasificación que se requiere para el envío del paquete de

verificación de conectividad, debido a que el proceso de envío y validación es diferente según el

canal.

Si tenemos un canal de control se envía el paquete de verificación conectividad y se espera un

tiempo que depende la distancia entre los nodos más un rango de error, el nodo receptor de este

paquete responde al nodo emisor con un paquete de confirmación validando la conexión. Si

tenemos un canal de datos es necesario el envío del paquete de verificación de conectividad por

un canal de control y una señal de luz por el canal de datos, una vez el nodo receptor reciba el

paquete de verificación de conectividad y la señal de luz envía un paquete de confirmación al

nodo emisor.

54

Figura 3-11. Diagrama de flujo para diferenciar entre canal de control y canal de datos. Fuente

de la imagen: propia.

En la figura 3-12 se presenta el diagrama de flujo del proceso de detección de fallos en redes

OBS, para el cual primero se selecciona un canal de manera aleatoria para realizar una validación

de conectividad, luego de la selección se determina si es un canal de control o un canal de datos

y se envía un paquete de verificación de conectividad según corresponda, se espera por un

tiempo preestablecido un paquete de confirmación, si el paquete es recibido con éxito en el

intervalo de tiempo establecido se espera un tiempo aleatorio y se inicia de nuevo el proceso de

detección de fallos, si por el contrario el paquete no es recibido se inicia el proceso de análisis de

fallos y se toma una acción según el fallo encontrada.

55

Figura 3-12. Diagrama de flujo para la detección de fallos en una red OBS. Fuente de la imagen:

propia.

3.9.2. Diagrama de flujo de análisis y toma de decisiones ante fallos en una red

OBS

En la figura 3-13 se presenta un método encargado de analizar cada canal en la fibra y verificar

conectividad.

56

Figura 3-13. Diagrama de flujo para la verificación de canales en una fibra. Fuente de la imagen:

propia.

En la figura 3-14 se presenta el diagrama de flujo encargado del análisis y toma de decisiones

ante un fallo. En este se analiza cada fallo comenzando por el fallo de fibra el cual es uno de los

fallos más concurrentes en este tipo de redes, analizando cada canal de este, luego se verifica el

enlace y por último el nodo. Si se encuentra algún fallo en alguno de estos elementos de la red se

desactiva el elemento que está fallando y se genera una ruta para restablecer la comunicación y

evitar con esto la pérdida de información.

57

Figura 3-14. Diagrama de flujo de análisis y toma de decisiones ante fallos en una red OBS.

Fuente de la imagen: propia.

58

3.10. Paquetes

3.10.1. Paquete de control

Es el paquete encargado de reservar recursos en la red, para que la ráfaga de datos atraviese la

red en el dominio óptico, este contiene la siguiente información:

● ID de origen e ID de destino.

● Tamaño de la ráfaga.

● Tiempo de compensación.

Para representar la ID de los computadores de origen y destino se usan números enteros entre 2 y

7.

3.10.2. Ráfaga de datos

Contiene la información a transmitir desde el origen y el destino, esta tiene un tamaño

preestablecido, con el fin de no enviar ráfagas demasiado grandes o muy pequeñas, su tamaño es

mucho mayor a los otros paquetes.

3.10.3. Paquete de verificación de conectividad y paquete de confirmación de

conectividad

Estos paquetes son los encargados de validar la conexión entre los elementos de la red, y a partir

de ellos se detectan los fallos en la red, estos contienen la siguiente información:

● ID de origen e ID de destino.

● Tiempo de respuesta.

Debido al uso de software de eventos discretos, enviar estos paquetes para verificar fallos entre

nodos incurriría en un costo computacional elevado al realizar las simulaciones. Por esta razón

los fallos ocurridos son marcados en una tabla con el fin de facilitar su verificación, sin embargo,

se siguen teniendo en cuenta las características ID de origen y destino y tiempo de respuesta al

verificar las fallos, lo que implica que el concepto de estos paquetes como elementos en la

verificación de fallos no se vea alterado.

La verificación de fallo realizada con estos paquetes es la que se tiene en cuenta para la

obtención de la estadística de procesos mostrada en resultados.

59

Capítulo 4

SIMULACIÓN DEL ALGORITMO EN

OMNeT++

60

4.1. Topología

La topología de red utilizada para la implementar el algoritmo planteado en el proyecto, se basa

en la topología de red NSFNET (16 nodos, 22 enlaces), red estadounidense utilizado

principalmente por entidades académicas y educativas. Fue necesario agregar enlaces adicionales

al modelo original con el fin de asegurar la redundancia en la red, teniendo como resultado una

red con 16 nodos y 30 enlaces figura 4-1.

Figura 4-1. Topología de red NSFNET, modificada. En color rojo se muestran los enlaces

originales de la red con su correspondiente distancia en kilómetros, en color azul los enlaces

agregados a la red con su correspondiente distancia en kilómetros. (Ni - Nodo de borde i, Bi -

Nodo de núcleo i, Ei enlace i). Fuente de la imagen: propia.

4.2. Especificaciones

A continuación se muestran algunos elementos que se asumen dentro de la simulación e

implementación del algoritmo:

● La solución de potencia y ancho de banda para cada uno de los enlaces de la red cumple

con los requerimientos establecidos, es decir, que cada enlace cuenta con los equipos

necesarios para que la red funcione adecuadamente.

61

● El fallo de enlace tiene implícito el daño en los dispositivos que se implementaron en la

solución de potencia y ancho de banda.

● La topología de red NSFNET se modificó para tener redundancia en la red [13] y con

esto tener rutas de respaldo.

4.3. Fallos

En la tabla 4-1 se especifican algunas de las causas más frecuentes por las que se presentan fallos

en los diferentes elementos que componen una red óptica.

Fallo Descripción Frecuencia

Canal de control y

canal de datos

Este fallo se puede presentar por:

● Fallos en transmisores activos como transmisores y

receptores. [13]

● Activación errónea de conmutadores en la red. [13]

● Daño en el conversor de longitud de onda. [13]

Baja

Fibra

Este fallo se puede presentar por:

● Cortes en cables de fibra instalados en tierra al

abrir zanjas. [13] [34]

● Error provocado por operarios cuando realizan

labores de reparación o mantenimiento. [13] [34]

● Vandalismo.

● Error humano. [13]

Alta

Enlace

Este fallo se puede presentar por:

● Cortes en cables de fibra instalados en tierra al abrir

zanjas.

● Error provocado por operarios cuando realizan

labores de reparación o mantenimiento.

● Vandalismo.

● Error humano.

Alta

Nodo

Este fallo se puede presentar por:

● Daño físico en cualquiera de los elementos que lo

componen por: problemas de alimentación, daño

físico, desgaste de alguno de sus componentes por

el tiempo de vida establecido por el fabricante

● Fallos producidos en los controladores de

dispositivos. [13]

● Fallos en nodos (generalmente originados por

desastres de tipo catastrófico). [13]

Baja

Tabla 4-1. Causas y probabilidad de un fallo en una red óptica.

62

4.4. Resultados

4.4.1. Resultados de fallos sin la implementación del algoritmo

Los resultados mostrados a continuación fueron obtenidos haciendo uso del simulador

OMNeT++. Para cada simulación se enviaron 200000 paquetes, entre ráfagas y cabeceras, con

origen y destino escogidos de manera aleatoria.

Para el modelamiento del comportamiento de fallos en una red real, se realizaron 50

simulaciones con tres niveles de carga, alto (83.4 % de carga en la red), medio (66.6 % de carga

en la red) y bajo (33.3 % de carga de la red). Las probabilidades de ocurrencia para cada fallo se

asignaron en base a probabilidades encontradas en redes ópticas reales.

Se realizaron también simulaciones para modelar el porcentaje de pérdidas de paquetes en

función de la probabilidad de que ocurra uno de los posibles fallos. El análisis para cada fallo se

hace de manera independiente de los otros. Para cada una de las simulaciones se tienen tres

niveles de carga diferentes mencionados anteriormente. Los rangos de probabilidades para estas

simulaciones oscilan entre 0% y 100% de un 50% de que se presente uno de los fallos en la red,

buscando con esto caracterizar la simulación de la topología de red escogida.

En la figura 4-2 se muestra el resultado de combinar los diferentes fallos para 50 simulaciones,

para porcentaje de pérdida de paquetes y tiempo de transmisión entre origen y destino,

estableciendo la probabilidad de ocurrencia de un fallo de la siguiente manera: fallo en la fibra

óptica o un fallo de enlace son las más altas (70% y 20% respectivamente), debido a que los

eventos que podrían producir uno de estos fallos (tabla 5-1) son los más comunes. Para los fallos

de canal y nodo, se toman probabilidades de fallo más bajas (6% y 4% respectivamente), dado

que los eventos que los producen son menos frecuentes.

63

Figura 4-2. Porcentaje de pérdidas (a) y tiempo promedio de transmisión de origen a destino (b)

en función de la probabilidad de error para 50 simulaciones sin algoritmo. Fuente de la imagen:

propia.

En la figura 4-2(a) se observa el porcentaje de pérdidas en función de la probabilidad de error.

Aunque no se evidencia una diferencia clara entre los porcentajes de pérdidas para los diferentes

niveles de carga, esto debido al comportamiento aleatorio que se presenta al escoger las rutas y

fallos, se observa que en cada nivel de carga los porcentajes mínimos alcanzados son

directamente proporcionales al nivel de carga: para carga baja se tiene un mínimo de 77.35 %,

para carga media un 79.53 % y para carga alta 83.89 %; lo que indica una influencia de la carga

de la red en lo que se refiere a pérdida de información.

Para el tiempo promedio de transmisión de origen a destino mostrado en la figura 4-2(b), se tiene

que este oscila en el rango de 15 ms a 36 ms. Este tiempo depende de la ruta, la distancia de los

enlaces en esta y la cantidad elementos que la componen. El menor tiempo de transmisión se da

para carga alta (13 ms) y el tiempo de transmisión mayor se da en carga baja (36 ms); lo que

muestra que, al igual que para los porcentajes de pérdida de paquetes, el tiempo de transmisión

se ve influenciado por la carga de la red.

En la figura 4-3(a) se muestra el porcentaje de pérdidas de paquetes en la red, para diferentes

probabilidades de ocurrencia de un fallo de canal. Se puede observar que para una mayor carga

en la red se presenta un mayor porcentaje de pérdidas de paquetes, resultado que se esperaba

debido a que con un mayor nivel de saturación en la red la disponibilidad de recursos es limitada.

64

Figura 4-3. Porcentaje de pérdidas en función de la probabilidad de fallo para canal (a), fibra

(b), enlace (c) - (d) y nodo (e) - (f). Fuente de la imagen: propia

65

Para la simulación se consideran los fallos de canales de control y los fallos de canales de datos

como fallo de canal, esto en base a que la probabilidad de fallos es igual para todos los canales,

sin importar de qué tipo sean.

Para el fallo de canal representado en la figura 4-3(a) se puede observar que su tendencia no

muestra patrones crecientes o decrecientes, esto se debe a que este tipo de fallo no tiene una

influencia significativa en las pérdidas de la red. Debido a que se tienen múltiples canales por

enlace, el fallo en uno de estos puede ser compensado con alguno de los otros canales existentes,

esto hace que la tendencia presentada en la figura 4-3(a) dependa en mayor medida de la carga

de la red y no de la probabilidad de que ocurra un fallo.

En la figura 4-3(b) vemos que ante un fallo de fibra las pérdidas de paquetes en la red tienen una

tendencia creciente para los diferentes niveles de carga, y que a medida que aumenta la

probabilidad de fallo de fibra la diferencia de pérdidas entre los dos niveles de fallos es menor.

Las figuras 4-3(c) y figuras 4-3(e), muestran los resultados para fallos de enlace y nodo

respectivamente. Estos resultados tienen un comportamiento similar a la figuras 4-3(b), sin

embargo, se puede observar que para este caso, probabilidades menores de fallos conducen a

porcentajes de pérdidas mayores, lo que implica que estos tipos de fallos tienen un efecto más

significativo.

Los fallos de fibra, enlace y nodo tienen una mayor influencia en los porcentajes de pérdidas de

paquetes debido a la importancia de estos elementos en la red. El daño de estos elementos afecta

en mayor grado el tráfico de la red y, a diferencia de los canales, hay pocos o inexistentes

recursos compartidos que puedan sustituir los elementos dañados.

Las gráficas para estos tipos de fallos muestran todas un comportamiento creciente. Al tener 0%

de probabilidad de error, los porcentajes de pérdidas se ven influenciados únicamente por el

nivel de carga en la red, lo que hace que estos porcentajes sean diferentes entre sí. A medida que

la probabilidad de fallo aumenta, esta afecta en mayor medida las pérdidas en la red, haciendo

que sin importar el nivel de carga los porcentajes de pérdidas tiendan al máximo posible. Este

comportamiento concuerda con el esperado en una red real, en la cual los fallos de nodo, enlace,

fibra y canal, tienen diferentes efectos en la pérdida de información, siendo en el orden dado el

fallo de nodo el que tiene el mayor efecto y el fallo de canal el que tiene el menor efecto.

La figura 4-4 muestra los tiempos de transmisión promedio de origen a destino para cada uno de

los tipos de fallos. Ninguno de los resultados muestra una tendencia definida, sin embargo se

puede observar que según el fallo y el impacto que tenga este en la red, los tiempos de

transmisión tienden a alcanzar valores menores, siendo el fallo de nodo el que presenta los

tiempos de transmisión más bajos, y el de canal los más altos.

66

Figura 4-4. Tiempo de transmisión promedio de origen a destino en función de la probabilidad

de fallo para canal (a), fibra (b), enlace (c) y nodo (d). Fuente de la imagen: propia

El comportamiento que presentan los resultados se debe al número de elementos y la distancia de

las rutas origen-destino. Entre más elementos componen una ruta, existe una mayor probabilidad

de que en esta ocurra un fallo, lo que la puede dejar inhabilitada. Esto hace que las rutas con un

menor número de elementos tengan menos probabilidad de verse afectadas, quedando activas por

más tiempo que las rutas más largas, haciendo que se reduzca el tiempo de transmisión promedio

de origen a destino en la simulación.

67

4.4.2. Resultados de fallos con la implementación del algoritmo

La figura 4-5 presenta el resultado de combinar los diferentes fallos para 50 simulaciones para el

nivel de carga media con el algoritmo propuesto en el capítulo cuatro. Estos resultados se

comparan con los obtenidos para el mismo nivel de carga sin algoritmo. Se trabaja con este nivel

de carga para no saturar la red con carga alta o tener un efecto contrario con carga baja.

Figura 4-5. Porcentaje de pérdidas (a), tiempo promedio de transmisión de origen a destino (b) y

número de procesos (c) en función de la probabilidad de error para 50 simulaciones con

algoritmo. Fuente de la imagen: propia.

El porcentaje de pérdida de paquetes mostrado en la figura 4-5(a), tiene valores promedio de

92,54 % de pérdidas sin algoritmo y 87,11% de pérdidas con algoritmo, lo que representa una

recuperación promedio del 5,43%. El valor mínimo alcanzado sin algoritmo es 79,53% y el valor

68

mínimo alcanzado con algoritmo es 69,53% dando una diferencia del 10%, valor que indica el

margen de recuperación que se puede alcanzar en la red una vez se aplica el algoritmo usando los

porcentajes de pérdidas mínimos.

Por otro lado, el tiempo de transmisión presentado en la figura 4-5(b) para carga media con y sin

algoritmo no presenta diferencia significativa, lo que indica que el tiempo no se ve afectado por

la aplicación del algoritmo. El tiempo promedio de transmisión sin algoritmo es 21,24 ms y con

algoritmo es 21,92 ms.

Finalmente, en la figura 4-5(c) se muestra el número de procesos al usar el algoritmo propuesto

(con algoritmo) y un algoritmo genético (sin algoritmo) en la detección de los fallos y la toma de

decisiones, los resultados dejan ver que sin algoritmo se tiene un promedio de 0,81•(16x )

procesos y con algoritmo un promedio de 0,31•(16x ) procesos, representando esto una

diferencia del 50%. Esto afecta directamente la capacidad de procesamiento de los dispositivos

de red, reduciéndose considerablemente con el algoritmo propuesto.

En la figura 4-6 se encuentran los resultados de porcentajes de pérdidas en función de la

probabilidad de error para fallo de canal, sin algoritmo y con algoritmo. Para carga alta, con y sin

algoritmo, se presenta una diferencia entre los valores mínimos que alcanzan y esta es de 1,56%,

siendo el porcentaje de pérdida menor cuando se aplica el algoritmo. Para carga media y baja, la

diferencia es de 0,95% y 0,26% respectivamente, presentándose también porcentajes de pérdidas

menores al aplicar el algoritmo.

Figura 4-6. Porcentaje de pérdidas en función de la probabilidad de fallo de canal sin algoritmo

(a) y con algoritmo (b). Fuente de la imagen: propia.

69

Para el caso de fallo de fibra presentado en la figura 4-7, para carga alta, con y sin algoritmo, se

presenta una diferencia entre los valores mínimos que alcanzan, esta es de 4,01%, siendo el

porcentaje de pérdida menor cuando se aplica el algoritmo. Para carga media y baja, la diferencia

es de 11,06% y 38,32% respectivamente, presentándose también porcentajes de pérdidas

menores al aplicar el algoritmo.

Figura 4-7. Porcentaje de pérdidas en función de la probabilidad de fallo de fibra sin algoritmo

(a) y con algoritmo (b). Fuente de la imagen: propia.

Los porcentajes de pérdidas para el fallo de enlace se muestran en la figura 4-8. Para carga alta,

con y sin algoritmo, la diferencia entre los valores mínimos que alcanzan es de 0,46%, siendo el

porcentaje de pérdida menor cuando se aplica el algoritmo. Para carga media y baja, la diferencia

es de 1,04% y 3,93% respectivamente, presentándose también porcentajes de pérdidas menores

al aplicar el algoritmo.

70

Figura 4-8. Porcentaje de pérdidas en función de la probabilidad de fallo de enlace sin algoritmo

(a) y su acercamiento de imagen (b) y con algoritmo (c) y su acercamiento de imagen (d). Fuente

de la imagen: propia.

Finalmente para los porcentajes de pérdidas, el fallo de nodo presentada en la figura 4-9, muestra

que para carga alta, con y sin algoritmo, se presenta una diferencia entre los valores mínimos que

alcanzan, esta es de 0,23%, siendo el porcentaje de pérdida menor cuando se aplica el algoritmo.

Para carga media y baja, la diferencia es de 0,68% y 0,05% respectivamente, presentándose

también porcentajes de pérdidas menores al aplicar el algoritmo.

71

Figura 4-9. Porcentaje de pérdidas en función de la probabilidad de fallo de nodo sin algoritmo

(a) - (b) y con algoritmo (c) - (d). Fuente de la imagen: propia.

De los resultados obtenidos se puede observar que los valores de recuperación más significativos

se dan para el fallo de fibra. Siendo este fallo el más común para redes de fibra óptica, el modelo

planteado para el restablecimiento de servicios presenta resultados favorables para todos los

fallos y en particular para este.

Las figuras 4-10 a 4-13 muestran los tiempos de transmisión promedio de origen a destino para

cada uno de los tipos de fallos con y sin algoritmo. Los resultados obtenidos con el algoritmo

están dentro del rango de los resultados obtenidos sin algoritmo (12,35 ms - 31,16 ms). De igual

manera que para los resultados sin algoritmos, se observa que el impacto del tipo de fallo en la

red influye en los tiempos de transmisión, siendo el fallo de nodo el que presenta los tiempos de

transmisión más bajos, y el de canal los más altos.

72

Figura 4-10. Tiempo de transmisión promedio de origen a destino en función de la probabilidad

de fallo de canal sin algoritmo (a) y con algoritmo (b). Fuente de la imagen: propia.

Figura 4-11. Tiempo de transmisión promedio de origen a destino en función de la probabilidad

de fallo de fibra sin algoritmo (a) y con algoritmo (b). Fuente de la imagen: propia.

73

Figura 4-12. Tiempo de transmisión promedio de origen a destino en función de la probabilidad

de fallo de enlace sin algoritmo (a) y con algoritmo (b). Fuente de la imagen: propia.

Figura 4-13. Tiempo de transmisión promedio de origen a destino en función de la probabilidad

de fallo de nodo sin algoritmo (a) y con algoritmo (b). Fuente de la imagen: propia.

Otra de las estadísticas analizadas en la implementación del algoritmo es el número de procesos

que se ejecutan en los elementos de red. Se cuenta como un único proceso el costo

computacional realizado para la verificación de la disponibilidad de los recursos de red en un

canal. Se realiza la comparación del número de procesos usados por el algoritmo propuesto y un

algoritmo genérico, el cual realiza la verificación de daños y solamente después de finalizar esta

verificación toma decisiones sobre el enrutamiento de paquetes.

74

La figura 4-14 presenta los resultados de número de procesos, normalizados a un valor de

16x , para los diferentes niveles de carga, con algoritmo genérico y con el algoritmo

propuesto. Se puede observar que para carga alta el número de procesos es menor que para carga

media y baja, lo que indica una mayor pérdida de paquetes debido a la saturación de la red,

reduciendo así la necesidad de procesamiento para la reserva de recursos. El promedio de

número de procesos para los tres niveles de carga con algoritmo genérico es de 0,95 y con el

algoritmo propuesto 0,17.

Figura 4-14. Número de procesos en función de la probabilidad de fallo de canal sin algoritmo

(a) y con algoritmo (b). Fuente de la imagen: propia.

Los resultados de números de procesos mostrados en la figura 4-15 describen un

comportamiento creciente, desde un mínimo de 0,15 hasta un máximo de 0,56, para el modelo

con el algoritmo propuesto (con algoritmo), lo que implica un mayor procesamiento en presencia

de una mayor probabilidad de fallos. Los resultados obtenidos con el algoritmo genérico (sin

algoritmo) descienden desde un máximo de 0,97 hasta un mínimo de 0,42, y tienden a

estabilizarse a medida que la probabilidad de ocurrencia del fallo aumente. El comportamiento

decreciente que se aprecia en la figura 4-15(a) se debe a que al tener probabilidades de fallo

diferentes de cero, aumenta el número de paquetes perdidos, reduciéndose con esto los procesos

necesarios para la reserva de recursos.

75

Figura 4-15. Número de procesos en función de la probabilidad de fallo de fibra sin algoritmo

(a) y con algoritmo (b). Fuente de la imagen: propia.

Para el fallo de enlace, los resultados de números de procesos se presentan en la figura 4-16. El

comportamiento de estos resultados es similar a los descritos en la figura 4-15 para fallo de fibra.

Con algoritmo genérico (sin algoritmo) se presenta un comportamiento decreciente, que va desde

0,67 hasta 0,96, y que tiende a estabilizarse. Por otro lado, con el algoritmo propuesto (con

algoritmo) el comportamiento es creciente, empezando en 0,17 hasta 0,68, y tiende de igual

manera a estabilizarse.

Figura 4-16. Número de procesos en función de la probabilidad de fallo de enlace sin algoritmo

(a) y con algoritmo (b). Fuente de la imagen: propia.

La diferencia entre fallo de fibra y enlace para el número de procesos está dada por el impacto

que tiene un fallo con respecto a la otra. El fallo de enlace tiene un efecto más dañino, lo que

76

hace que el número de procesos se estabilice de manera más rápida debido al nivel del daño

causado en la red.

El número de procesos para el fallo de nodo en la figura 4-17, tiene un comportamiento similar a

el fallo de canal debido a que la verificación de este tipo de daño al implementar el algoritmo

reduce considerablemente el número de procesos ya que se tiene una tabla en la que se registran

los daños de nodo que ocurren en la red, evitando con esto una verificación de los enlaces

conectados al nodo para confirmar el daño de este. A diferencia que en el fallo de canal, en el

fallo de nodo no se evidencia una diferencia entre los procesos correspondientes a carga alta y

los otros niveles de carga, comportamiento que se debe a que la influencia de este tipo de fallo

tiene un impacto más significativo que la carga de la red.

Figura 4-17. Número de procesos en función de la probabilidad de fallo de nodo sin algoritmo

(a) y con algoritmo (b). Fuente de la imagen: propia.

Valor mínimo Valor máximo Valor promedio Unidad

Fallo de canal

Sin algoritmo Carga alta 7,6515 14,3795 11,2655 %

Carga media 0,0315 2,6675 1,0306 % Carga baja 0,0005 1,1865 0,4494 %

Con algoritmo Carga alta 7,7375 13,5595 10,7552 %

Carga media 0,0325 1,7175 0,8174 % Carga baja 0,0005 1,0615 0,3696 %

Fallo de fibra

Sin algoritmo Carga alta 7,626 98,016 86,35 %

Carga media 0,0665 97,249 83,4845 % Carga baja 0,0025 96,846 80,9869 %

77

Con algoritmo Carga alta 8,0855 98,348 85,5767 %

Carga media 0,0305 97,535 81,5819 % Carga baja 0,0035 96,711 75,3584 %

Fallo de enlace

Sin algoritmo Carga alta 8,2175 99,943 91,2997 %

Carga media 0,1405 99,929 90,6647 % Carga baja 0,0015 99,944 90,7391 %

Con algoritmo Carga alta 7,7575 99,91 91,1405 %

Carga media 0,0915 99,9 90,4368 % Carga baja 0,0005 99,832 90,2010 %

Fallo de nodo

Sin algoritmo Carga alta 7,946 99,9855 91,5727 %

Carga media 0,0455 99,993 90,8623 % Carga baja 0,0005 99,983 90,8218 %

Con algoritmo Carga alta 7,8325 99,984 91,53595455 %

Carga media 0,0325 99,991 90,80831818 % Carga baja 0,0005 99,983 90,82918182 %

Tabla 4-2. Valores mínimo, máximo y promedio obtenidos para porcentaje de pérdida de

paquetes en función de la probabilidad de fallo.

Valor mínimo Valor máximo Valor promedio Unidad

Fallo de canal

Sin algoritmo

Carga alta 30,2941 31,0490 30,7026 ms Carga media 30,5903 30,9147 30,7765 ms

Carga baja 30,7048 31,1157 30,9340 ms

Con algoritmo

Carga alta 30,4797 30,9913 30,7086 ms

Carga media 30,7015 31,0840 30,8076 ms

Carga baja 30,5179 30,9618 30,7356 ms

Fallo de fibra

Sin algoritmo Carga alta 27,1603 31,1606 28,8385 ms

Carga media 23,4625 30,8836 27,0038 ms Carga baja 22,9896 30,6288 26,4113 ms

Con algoritmo Carga alta 26,2202 30,5618 28,0242 ms

Carga media 24,3362 30,8546 27,3532 ms Carga baja 23,4219 30,8412 25,5255 ms

Fallo de enlace

Sin algoritmo Carga alta 17,7497 30,8940 23,2247 ms

Carga media 16,5137 30,5309 23,4069 ms Carga baja 17,1821 30,8574 22,4051 ms

Con algoritmo Carga alta 19,5803 30,6760 25,3620 ms

Carga media 20,1548 30,8129 22,8294 ms Carga baja 17,0891 31,0349 21,9535 ms

78

Fallo de nodo

Sin algoritmo Carga alta 16,6748 30,6826 23,1478 ms

Carga media 12,3525 30,6513 21,9393 ms Carga baja 16,7703 31,1128 22,9137 ms

Con algoritmo Carga alta 17,2696 37,3752 23,4307 ms

Carga media 21,0344 36,2928 27,1620 ms Carga baja 19,2110 33,3050 25,2365 ms

Tabla 4-3. Valores mínimo, máximo y promedio obtenidos para tiempo de transmisión en

función de la probabilidad de fallo.

Valor mínimo Valor máximo Valor promedio Unidad

Fallo de canal

Sin algoritmo Carga alta 0,8883 0,9127 0,9019 -

Carga media 0,9478 0,9661 0,9580 - Carga baja 0,9524 0,9687 0,9609 -

Con algoritmo Carga alta 0,1664 0,1711 0,1699 -

Carga media 0,1755 0,1789 0,1771 - Carga baja 0,1750 0,1780 0,1770 -

Fallo de fibra

Sin algoritmo Carga alta 0,4227 0,9610 0,5579 -

Carga media 0,4712 0,9627 0,6260 - Carga baja 0,5785 0,9703 0,6577 -

Con algoritmo Carga alta 0,1562 0,5299 0,3354 -

Carga media 0,1766 0,5304 0,3506 - Carga baja 0,1761 0,5611 0,3873 -

Fallo de enlace

Sin algoritmo Carga alta 0,6786 0,9070 0,7078 -

Carga media 0,6887 0,9618 0,7158 - Carga baja 0,6843 0,9636 0,7160 -

Con algoritmo Carga alta 0,1666 0,6869 0,6370 -

Carga media 0,1769 0,6866 0,6386 - Carga baja 0,1770 0,6863 0,6371 -

Fallo de nodo

Sin algoritmo Carga alta 0,6683 0,9171 0,7071 -

Carga media 0,6698 0,9566 0,7155 - Carga baja 0,6696 0,9604 0,7301 -

Con algoritmo Carga alta 0,1230 0,1676 0,1289 -

Carga media 0,1227 0,1770 0,1329 - Carga baja 0,1226 0,1758 0,1305 -

Tabla 4-4. Valores mínimo, máximo y promedio obtenidos para número de procesos

normalizados a un valor de 16x en función de la probabilidad de fallo.

79

Capítulo 5

CONCLUSIONES

80

● Los modelos de fallos creados cumplen con los comportamientos esperados para este tipo

de eventos. El porcentaje de pérdida de paquetes de cada uno de los cuatro tipos de fallos

tratados presenta un comportamiento creciente directamente proporcional a la

probabilidad de que uno de estos fallos ocurra. Otra característica que reafirma el

adecuado comportamiento de los modelos de fallos, es la reacción de los porcentajes de

pérdidas ante la carga de la red, para mayor carga se tienen mayores pérdidas y cargas

menores resultan en pérdidas menores. Estas características permiten que los modelos

creados para la simulación de fallos puedan ser usados en posteriores estudios e

investigaciones en el campo de las redes de fibra óptica.

● A partir de los resultados obtenidos se valida que el modelo planteado es capaz de

detectar los diferentes tipos de fallos de la red y con base en esto tomar medidas para el

restablecimiento de servicios y reducir la pérdida de paquetes y procesamiento.

● El algoritmo tiene un mayor impacto sobre el fallo de fibra tal como se ve en los

resultados. Al ser este el fallo más frecuente en una red óptica real, y al actuar el

algoritmo de manera más directa sobre este fallo, la pérdida de información se va a ver

minimizada.

● El comportamiento de los porcentajes de pérdidas y los tiempos de transmisión promedio

origen-destino no se ve afectado por la implementación del algoritmo. Tras implementar

el algoritmo, el comportamiento logarítmico creciente de los porcentajes de pérdidas se

mantiene, mostrando porcentajes de perdidas menores. Para los tiempos de propagación

los rangos de tiempos de transmisión promedio se mantienen, lo que indica que el

algoritmo no cambia el modelo inicial propuesto para los fallos en la red.

● La importancia de tomar decisiones ante fallos con base en los niveles de daño que puede

causar cada uno se aprecia de manera más clara en redes de mayor complejidad. A

medida que la red sea más compleja, es decir, a medida que tenga un mayor número de

elementos de red conectados entre sí, mayor cantidad de tipos diferentes de fallos pueden

ocurrir al mismo tiempo. Tratar de solucionarlos todos al mismo tiempo puede ser una

tarea complicada, por lo que definir los fallos más significativos e identificarlos

correctamente permitirá reducir la complejidad en tomar acciones ante estos. Los

resultados muestran que los modelos simulados se comportan de manera correcta en lo

que respecta al nivel de daños causados por cada tipo de fallo. Es por esta razón que

obtener modelos acertados de los efectos de cada fallo de manera individual es

conveniente para el diseño de métodos de restablecimiento de servicios.

● La caracterización obtenida para conversión de longitud de onda mediante modulación de

fase cruzada haciendo uso de SOA mostrada en el capítulo 3, en la que se puede apreciar

81

que al polarizarse con corrientes bajas, la potencia de salida muestra una mejora y

permite superar los problemas de extinción de la señal que se presentan en la modulación

de ganancia cruzada haciendo uso de SOA. Al realizar simulaciones bajo esta premisa se

pueden notar ciertas mejoras en la recuperación de paquetes en el modelo planteado para

falla de nodo (tabla 4-2).

82

Apéndices

83

Apéndice A

Simulador OMNeT++

OMNeT++ es un simulador, adecuado para modelamiento y simulación de cualquier sistema

enfocado a los eventos discretos, compuesto por un kernel de simulación, una GUI (Gráfico

(tkenv) o texto (cmdenv)) y un simulador de librerías, está basado en C++.

OMNeT++ utiliza el intercambio de mensajes para comunicar los diferentes elementos del

simulador, lo cual lo hace muy conveniente en la simulación de redes, algunos de los sistemas

que se pueden modelar son:

● Modelamiento de redes comunicación alámbricas o inalámbricas.

● Modelamiento de protocolos.

● Modelamiento de multiprocesos y sistemas de hardware distribuidos.

● Validación de arquitecturas de hardware.

● Es usado para evaluar el rendimiento de sistemas de software complejos.

● Entre otros.

Modelamiento

Un modelo OMNeT ++ consiste en módulos que se comunican con el paso de mensajes, en una

simulación real, los mensajes pueden representar tramas o paquetes en una red informática. Los

módulos activos se denominan módulos simples; todo está escrito en C ++, utilizando la

biblioteca de clases de simulación. Los módulos simples pueden ser agrupados en módulos

compuestos; el número de niveles jerárquicos es ilimitado. El envío de mensajes se da a través

de conexiones entre modelos simples o compuestos.

84

Figura A-1. RED en OMNeT++, las cajas de fondo azul representan los módulos simples, las

cajas de fondo verde los módulos compuestos. Las flechas que conectan las pequeñas cajas

representan las conexiones y puertas.

Los módulos se comunican con mensajes que pueden contener datos arbitrarios, además de los

atributos habituales, tales como una marca de tiempo. Los módulos simples suelen enviar

mensajes a través de puertas (estas pueden ser de entrada, salida o entrada - salida), pero

también es posible enviarlos directamente a sus módulos de destino. Las puertas son las

interfaces de entrada y salida de los módulos: los mensajes se envían a través de puertas de salida

y llegan a través de puertas de entrada.

Debido a la estructura jerárquica del modelo, los mensajes normalmente viajan a través de las

conexiones como una cadena de caracteres (string), comenzando y llegando a módulos simples.

Los módulos compuestos actúan como "cajas de cartón" en el modelo, en cual la transmisión de

los mensajes entre su mundo interior y el mundo exterior, es transparente. Los parámetros tales

como retardo de propagación, tasa de datos y la tasa de error de bit, se pueden asignar a las

conexiones. También se pueden definir tipos de conexión con propiedades específicas y

reutilizarlos en varios lugares. Los módulos pueden tener parámetros. Los parámetros se

utilizan principalmente para pasar los datos de configuración en módulos simples, y para ayudar

a definir la topología. Los parámetros pueden ser: string, int o valores booleanos. Los módulos

compuestos pueden pasar parámetros o expresiones de parámetros a sus submódulos.

Jerarquía

Un modelo OMNeT++ consta de módulos jerárquicamente anidados que se comunican mediante

el paso de mensajes entre sí. Los modelos OMNeT ++ se refieren a menudo a redes. El módulo

de nivel superior es el módulo del sistema, contiene submódulos que también pueden contener

85

submódulos. La profundidad del módulo de anidación es ilimitada. La estructura del modelo se

describe en un lenguaje NED OMNeT++.

Los módulos que contienen submódulos se denominan módulos compuestos, el lugar más bajo

en la jerarquía son los módulos simples, estos contienen los algoritmos del modelo,

implementados en C++, utilizando las bibliotecas de clases de simulación OMNeT++.

Partes de un modelo

Un modelo OMNeT ++ consta de las siguientes partes:

● Lenguaje NED describe la estructura del módulo con parámetros, puertas, etc. los

archivos NED se pueden escribir con cualquier editor de texto, pero el OMNeT++ IDE

proporciona un excelente soporte para bidireccional edición gráfica y de texto.

● Definiciones de mensajes (archivos .msg). Se pueden definir varios tipos de mensajes y

añadir campos de datos a ellos. OMNeT ++ se traducirá definiciones de mensajes en

clases de C ++ de pleno derecho.

● Fuentes de módulos simples. Son archivos de C ++, con el sufijo .h / .cc.

El sistema de simulación proporciona los siguientes componentes:

● Kernel de simulación. Este contiene el código que gestiona la simulación y la biblioteca

de clases de simulación. Está escrito en C++, compilado en una biblioteca compartida o

estática.

● Interface de usuario. Interfaces de usuario OMNeT++ se utiliza en la ejecución de la

simulación, para facilitar la depuración, la demostración, o la ejecución por lotes de

simulaciones. Está escrito en C ++, compilado en librerías.

86

Apéndice B

Funciones de aleatoriedad principales

void Random::GetRoute() { struct timeval time; gettimeofday(&time,NULL); srand((time.tv_sec * 100) + (time.tv_usec / 100)); //srand(time(NULL)); src = 0; dst = 0; namesrc = ""; namedst = ""; while(src == dst || src < 2 || dst < 2) { src = rand() % 8; dst = rand() % 8; } //Devuelve nombre del origen if(src == 2) { namesrc = "computer"; } else if(src == 3) { namesrc = "computer1"; } else if(src == 4) { namesrc = "computer2"; } else if(src == 5) {

87

namesrc = "computer3"; } else if(src == 6) { namesrc = "computer4"; } else { namesrc = "computer5"; } //Devuelve nombre del destino if(dst == 2) { namedst = "computer"; } else if(dst == 3) { namedst = "computer1"; } else if(dst == 4) { namedst = "computer2"; } else if(dst == 5) { namedst = "computer3"; } else if(dst == 6) { namedst = "computer4"; } else { namedst = "computer5"; } } int Random::GetErrorCR() { randnum = 0; struct timeval time; gettimeofday(&time,NULL); srand((time.tv_sec * 100) + (time.tv_usec / 100)); //srand(time(NULL)); //randnum = rand() % 10; randdouble = (double)rand()*10 / ((double)RAND_MAX); while(randdouble == randdoublePast) { randdouble = (double)rand()*10 / ((double)RAND_MAX); } randdoublePast = randdouble;

88

if(randdouble < 1) //Falla de nodo { return 1; } if(randdouble < 0) //Falla de canal { return 4; } if(randdouble < 0) //Falla de enlace { return 2; } if(randdouble < 0) //Falla de fibra { return 3; } return 0; } int Random::GetErrorER() { randnum = 0; struct timeval time; gettimeofday(&time,NULL); srand((time.tv_sec * 100) + (time.tv_usec / 100)); //srand(time(NULL)); //randnum = rand() % 10; randdouble = (double)rand()*10 / ((double)RAND_MAX); while(randdouble == randdoublePast) { randdouble = (double)rand()*10 / ((double)RAND_MAX); } randdoublePast = randdouble; if(randdouble < 0.2) //Falla de nodo { return 1; } if(randdouble < 0) //Falla de canal { return 4; } if(randdouble < 0) //Falla de enlace { return 2; } if(randdouble < 0) //Falla de fibra { return 3; } return 0; }

89

Apéndice C

Código de ejecución de fallos

if(error == 1) //Falla de nodo { if(pkt->getSenderModuleId()%2 == 0 && pkt->getSenderModuleId()>62) { badnode[pkt->getSenderModuleId()] = 1; badnode[pkt->getSenderModuleId()+1] = 1; } else if(pkt->getSenderModuleId()%2 != 0 && pkt->getSenderModuleId()>62) { badnode[pkt->getSenderModuleId()] = 1; badnode[pkt->getSenderModuleId()-1] = 1; } else if(pkt->getSenderModuleId()<62) { badnode[pkt->getSenderModuleId()-1] = 1; badnode[pkt->getSenderModuleId()] = 1; badnode[pkt->getSenderModuleId()+1] = 1; } } if(error == 2) //Falla de enlace { for(int i=0; i<6; i++) { for(int j=0; j<9; j++) { table22[tbl.Puerto(ruta, src, pkt->getSenderModuleId(), dst)][src][pkt

>getSenderModuleId()][dst][i][j] = 2; table22[tbl.Puerto(ruta, src, pkt->getSenderModuleId(), dst)][dst][tbl.GetNextNode(src, pkt-

>getSenderModuleId(), dst)][src][i][j] = 2;

90

} } } if(error == 3) //Falla de fibra { for(int j=0; j<9; j++) { table22[tbl.Puerto(ruta, src, pkt->getSenderModuleId(), dst)][src][pkt-

>getSenderModuleId()][dst][rand.GetFiber()][j] = 2; } } if(error == 4) //Falla de canal { table22[tbl.Puerto(ruta, src, pkt->getSenderModuleId(), dst)][src][pkt-

>getSenderModuleId()][dst][rand.GetFiber()][rand.GetChannel()] = 2; }

91

Apéndice D

Código enrutador

if(badnode[pkt->getSenderModuleId()] == 0) //Verificación de error de nodo (0: Nodo bueno, 1: Nodo

malo) { if(strcmp(pkt->getFullName(),"header") == 0) //Verifica si es cabecera { for(int i=0; i<6; i++) //Ciclo de fibras { int j = 0; int k = 3; int canal = 0; //Guarda el canal de control para liberarlo sino hay canal de datos disponible while(j<3) { if(table22[tbl.Puerto(ruta, src, pkt->getSenderModuleId(), dst)][src][pkt-

>getSenderModuleId()][dst][i][j] == 0) //Escoge un canal de control y pasa a escoger canal de datos

{ table22[tbl.Puerto(ruta, src, pkt->getSenderModuleId(), dst)][src][pkt-

>getSenderModuleId()][dst][i][j] = 1; node2[src][pkt->getSenderModuleId()+1][dst]=1; canal = j; j = 3; } else if(table22[tbl.Puerto(ruta, src, pkt->getSenderModuleId(), dst)][src][pkt-

>getSenderModuleId()][dst][i][j] == 1) { table22[tbl.Puerto(ruta, src, pkt->getSenderModuleId(), dst)][src][pkt-

>getSenderModuleId()][dst][i][j] = 0; canal++; } if(j == 2) { k = 9; node2[src][pkt->getSenderModuleId()+1][dst]=0; }

92

j++; } //Ciclo de canal de control while(k<9) //Ciclo de canal de datos { if(table22[tbl.Puerto(ruta, src, pkt->getSenderModuleId(), dst)][src][pkt-

>getSenderModuleId()][dst][i][k] == 0) { table22[tbl.Puerto(ruta, src, pkt->getSenderModuleId(), dst)][src][pkt-

>getSenderModuleId()][dst][i][k] = 1; if(ruta == 0) { send(pkt, "out", tbl.GetPuerto1(src, pkt->getSenderModuleId(), dst)); auxetetime = tbl.GetEtetime(pkt->getSenderModuleId()-2, tbl.GetPuerto1(src, pkt-

>getSenderModuleId()-2, dst)); etetime1 = etetime1 + auxetetime + rand.TimeInterval(auxetetime); } if(ruta == 1) { send(pkt, "out", tbl.GetPuerto2(src, pkt->getSenderModuleId(), dst)); auxetetime = tbl.GetEtetime(pkt->getSenderModuleId()-2, tbl.GetPuerto2(src, pkt-

>getSenderModuleId()-2, dst)); etetime1 = etetime1 + auxetetime + rand.TimeInterval(auxetetime); } //Sale de los ciclos si la asignación de canales es exitosa i = 6; j = 3; k = 9; } if(k == 8) //Si no hay canales de datos disponibles libera el canal de control reserbado { table22[tbl.Puerto(ruta, src, pkt->getSenderModuleId(), dst)][src][pkt-

>getSenderModuleId()][dst][i][canal] = 0; node2[src][pkt->getSenderModuleId()+1][dst]=0; } k++; } //Ciclo de canal de datos } //Ciclo de fibras } //Verifica si es cabecera if(node2[src][pkt->getSenderModuleId()][dst] == 1 && strcmp(pkt->getFullName(), "burst") == 0) //Si

se pudieron asignar recursos { if(ruta == 0) { send(pkt, "out", tbl.GetPuerto1(src, pkt->getSenderModuleId(), dst)); } else if(ruta == 1 && routeflag[src][pkt->getSenderModuleId()][dst] == 1) { send(pkt, "out", tbl.GetPuerto2(src, pkt->getSenderModuleId(), dst)); pathmark = 1; }

93

else if(ruta == 1 && pathmark == 1) { send(pkt, "out", tbl.GetPuerto2(src, pkt->getSenderModuleId(), dst)); } else if(ruta == 1) { send(pkt, "out", tbl.GetPuerto1(src, pkt->getSenderModuleId(), dst)); } } else if(node2[src][pkt->getSenderModuleId()][dst] == 0 && strcmp(pkt->getFullName(), "burst") == 0)

//No se pudieron asignar recursos { errorflag = 1; if(ruta == 0) { send(pkt, "out", tbl.GetPuerto1(src, pkt->getSenderModuleId(), dst)); } else if(ruta == 1 && routeflag[src][pkt->getSenderModuleId()][dst] == 1) { send(pkt, "out", tbl.GetPuerto2(src, pkt->getSenderModuleId(), dst)); pathmark = 1; } else if(ruta == 1 && pathmark == 1) { send(pkt, "out", tbl.GetPuerto2(src, pkt->getSenderModuleId(), dst)); } else if(ruta == 1) { send(pkt, "out", tbl.GetPuerto1(src, pkt->getSenderModuleId(), dst)); } } } //Verificación de error de nodo

94

Apéndice E

Código de algoritmo de detección y

corrección de fallos

if(strcmp(pkt->getFullName(),"header") == 0 && ruta == 0) { //---------Verificación sin algoritmo-------------- int c = 0; for(int i=0; i<6; i++) { ruta = 0; for(int j=0; j<9; j++) { processes1++; if(table22[tbl.Puerto(ruta, src, pkt->getSenderModuleId(), dst)][src][pkt-

>getSenderModuleId()][dst][i][j] == 0) { c++; } } } //----------Verificación con algoritmo--------------------- int c1 = 0; int d1 = 0; for(int i=0; i<6; i++) { d1 = 0; for(int j=0; j<9; j++) { processes2++; if(table22[tbl.Puerto(ruta, src, pkt->getSenderModuleId(), dst)][src][pkt-

>getSenderModuleId()][dst][i][j] == 2) { d1++;

95

} if(table22[tbl.Puerto(ruta, src, pkt->getSenderModuleId(), dst)][src][pkt-

>getSenderModuleId()][dst][i][j] == 0) { c1++; } } if(d1 < 9) { i = 6; } } //------Verifica daño de enlace--------------------- if(c == 0) { ruta = 1; routeflag[src][pkt->getSenderModuleId()][dst] = 1; routeflag[src][pkt->getSenderModuleId()+1][dst]=1; } //-------Verifica falla de nodo---------------- processes1++; processes2++; if(badnode[tbl.GetNextNode(src, pkt->getSenderModuleId(), dst)] == 1) //Verifica error de nodo { ruta = 1; routeflag[src][pkt->getSenderModuleId()][dst] = 1; routeflag[src][pkt->getSenderModuleId()+1][dst]=1; } } if(strcmp(pkt->getFullName(),"header") == 0 && ruta == 1) { //---------Verificación sin algoritmo-------------- int c = 0; for(int i=0; i<6; i++) { ruta = 0; for(int j=0; j<9; j++) { processes1++; if(table22[tbl.Puerto(ruta, src, pkt->getSenderModuleId(), dst)][src][pkt-

>getSenderModuleId()][dst][i][j] == 0) { c++; } } } //----------Verificación con algoritmo--------------------- int c1 = 0; int d1 = 0;

96

for(int i=0; i<6; i++) { d1 = 0; for(int j=0; j<9; j++) { processes2++; if(table22[tbl.Puerto(ruta, src, pkt->getSenderModuleId(), dst)][src][pkt-

>getSenderModuleId()][dst][i][j] == 2) { d1++; } if(table22[tbl.Puerto(ruta, src, pkt->getSenderModuleId(), dst)][src][pkt-

>getSenderModuleId()][dst][i][j] == 0) { c1++; } } if(d1 < 9) { i = 6; } } //-------Verifica falla de nodo---------------- processes1++; processes2++; if(badnode[tbl.GetNextNode(src, pkt->getSenderModuleId(), dst)] == 1) //Verifica error de nodo { ruta = 1; routeflag[src][pkt->getSenderModuleId()][dst] = 1; routeflag[src][pkt->getSenderModuleId()+1][dst]=1; } }

97

Bibliografía

[1] Chunming Q. Myungsik Y. Optical Burst Switching (OBS) – A new Paradigm for an

Optical Internet. Lab for Advanced Network Design, Evaluation and Research (LANDER),

University of Buffalo, Buffalo, New York 14260.

[2] David Gil Julián. Estudio de la integración de los protocolos de GMPLS en redes OBS.

Universitat Politècnica de Catalunya. (2009)

[3] Aburdene M. Computer communication networks: a case history. (1982)

[4] Essiambre R. y Robert W. Capacity Trends and Limits of Optical Communication

Networks. (2012)

[5] Dhavarudha E. Charoenlarpnopparut C. y Rungeratigul S. Performance and Cost

Comparison for Optical Burst Switching and Optical Circuit Switching. Sirindhorn International

Institute of Technology, Thammasat University, Pathumthani, Thailand. (2006)

[6] Hernández J. Aracil J. López V. Fernández J. y González O. A Resilience-Based

Comparative Study between Optical Burst Switching and Optical Circuit Switching

Technologies. Networking Research Group, Universidad Autónoma de Madrid, Spain. (2006)

[7] Rouskas G. y Lisong X. OPTICAL PACKET SWITCHING, Chapter 1.Department of

Computer Science, North Carolina State University.

[8] Jianan Z. Meiquian W. Shuo L. Wong E. Zukerman M. Efficiency of OBS

Networks.Electronic Engineering Dept, City University of Hong Kong, Hong Kong SAR, China.

(2012)

[9] Neri R. LINEAS DE TRANSMISIÓN. McGraw-Hill/Interamericana editores, S.A. de

C.V. (1999)

[10] Johnson M. Optical fibres, cables and systems. ITU telecommunication Standardization

Sector. (2009)

[11] Juan C. Gomez. Sistemas de telecomunicaciones planeación y cálculo de enlace.

Universidad Distrital Francisco José de Caldas [s.a].

98

[12] Grupo de Comunicaciones Ópticas (GCO) Tutorial de Comunicaciones Ópticas [en

línea]. Escuela Técnica Superior de Ingenieros de Telecomunicación, España. [2006], [citado el

03 de julio de 2015]. Disponible en : <http://nemesis.tel.uva.es/images/tCO/index.htm>.

[13] José Capmany Francoy, Beatriz Ortega Tamarit, “Redes ópticas”,Capítulo 7 Protección de

redes ópticas. pp 221- 259. 2006

[14] Seunghun O. Younghan K. Myungsik Y. y Hyun H. Survivability in the Optical Internet

Using the Optical Burst Switch. (2002)

[15] Said S. y Mouftah H. (2006). A QoS-Based Restoration Mechanism for OBS

Networks.School of Information Technology and Engineering (SITE), University of Ottawa,

Department of Computer Science, University of Quebec in Montreal.pp. 1. (2006)

[16] Minglei Fu, Wen Dong, Zichun Le, Xingshu Sun. BFD-triggered failure detection and

fast reroute for OBS networks. University of Technology, Hangzhou, China. (2009)

[17] Nleya B. y Nyakwende E. Survivability: Wavelength Recovery for Node and Link

Failure in All Optical Networks. Department of information systems, North-West University.

(2008)

[18] Jikai Li, Xiaojun Cao, ChunshengXin. Double Reservation in Optical Burst

SwitchingNetworks. Dept. of Computer Science The College of New Jersey, Information

Technology Dept. Rochester Institute of Technology Rochester, Dept. of Computer

ScienceNorfolk State University Norfolk. (2005)

[19] Review of NSFNET, Office of the Inspector General, National Science Foundation.

(1993)

[20] Lin J. Chen Y. Cheng A. On-Line Burst Header Scheduling in Optical Burst Switching

Networks. Department of Computer Science, University of Houston, TX. (2008)

[21] Ruyan W. Lanying L. Dapeng W. Yang A. A FAST DETECTION AND

LOCALIZATION MECHANISM FOR MESHED OPTICAL BURST SWITCHING

NETWORKS. Chongqing Key Lab of Optical Fibers Communication Technology, Chongqing

University of Post and Telecommunications. (2009)

[22] YoungMin K. TaeHwa K. JungJoo Y. Byeong K. HongShik P. Performance

Comparisons of Restoration Techniques for Fault Management in OBS Networks. MTEL,

Information and Communication University. (2006)

99

[23] HongxiangGuo, TakehiroTsuritani, Noboru Yoshikane, and Tomohiro Otani, Dynamic

Protection Mechanism Supporting Multi-QoS Burst Streams in a GMPLS-controlled Transparent

Optical Network. Proceedings of COIN2008 copyright (c) 2008 IEICE 08 SB 0064. (2008)

[24] David Griffith y SuKyoung Lee. A 1+1 Protection Architecture for Optical Burst

Switched Networks, Member, IEEE. (2003)

[25] Huang Y. Heritage J. y Mukherjee B. Dynamic Routing with Preplanned Congestion

Avoidance for Survivable Optical Burst-Switched (OBS) Networks. University of California,

Davis, California, USA. (2005)

[26] S. J. B. Yoo, “Wavelength conversion technologies for WDM network applications,”

IEEE Journal of Lightwave Technology, 14, pp. 955-966, 1996.

[27] N. Andriolli, M. Scaffardi, A. Das Barman, P. Castoldi, L. Poti, A. Bogoni, “All-optical

packet-switched interconnection network based on modular photonic digital processing," IET

Communications, Vol. 3, No. 3, pp. 477-486, 2009.

[28] T. Durhuus,B. Mikkelsen, C. Joergesen, S. Danielsen, K. Stubkjae, “All-Optical

Wavelength Conversion by Semiconductor Optical Amplifiers,” J. Lightwave Technol., Vol. 14,

pp. 942-954, 1996.

[29] S. Yoo, “Wavelength conversion technologies for WDM network applications,”J.

Lightwave Technol., Vol. 14, 955-966, 1996.

[30] M. Y. Jeon, Z. Pan, J. Cao, Y. Bansal, J. Taylor, Z. Wang, V. Akella, K. Okamoto, S.

Kamei, J. Pan, S. J. Ben Yoo, "Demonstration of all-optical packet switching routers with optical

label swapping and 2R regeneration for scalable optical label switching network operation," J.

Lightwave Technol. Vol. 21, pp. 2723 – 2733, 2003.

[31] Y. Yu, W. Wenhan, H. Xi, Z. Bingrong, H. Shoujin, Z. Xinliang “Multichannel All-

Optical RZ-PSK Amplitude Regeneration Based on the XPM Effect in a Single SOA,” J. of

Lightwave Technology, vol. 30, No. 23, pp. 3633-3639, 2012.

[32] Z. Zhu, M. Funabashi, Z. Pan, L. Paraschis, S. J. B. Yoo, “10000-Hop Cascaded In-Line

All-Optical 3R Regeneration to Achieve 1250000-Km 10-Gb/s Transmission,” IEEE Photon.

Technol. Lett., Vol. 18, no 5, pp. 718-720 2006.

100

[33] X. Zhao, W. Li, L. Dan, L. Caiyun, S. Yu, L. Zhao, W. Wei, “40Gb/s all-optical 3R

regeneration with semiconductor devices”, Wireless and Optical Communications Conference

(WOCC). pp. 1-3. 2010.

[34] I. Jurdana, B. Mikac, “ Impact of Physical Layer Configuration on Availability of Path

Protected Optical Fibre Transmission Network”, International Conference on

Telecommunications - ISBN: 978-953-184-152-8, June 15-17, 2011, Graz, Austria.