Está en la página 1de 77

MODELO DE REFERENCIA PARA LA INTERCONEXIÓN DE

SISTEMAS ABIERTOS - RM OSI

INGENIERÍA DE PROTOCOLOS
COMUNICACIONES

Las comunicaciones y la tecnología


https://www.youtube.com/watch?v=JWNkFmOe_Ck
Óptica de comunicaciones
https://www.youtube.com/watch?v=MxH_anax9q8&t=15s

https://www.youtube.com/watch?v=pehEVegsouc
Historia de Internet
https://www.youtube.com/watch?v=i4RE6dBAjH4
AGENDA
INTRODUCCIÓN

DEFINICIÓN DE PROTOCOLOS DE COMUNICACIONES

GENERALIDADES DEL MODELO OSI


Comunicación END TO END - Primitivas
Comunicación ENTRE NIVELES – Unidades de Datos

Recomendaciones ISO (International Standard Organization) para OSI (Open System


Interconnection)

Modelo TCP/IP generalidades.

Descripción General de Modelo OSI


Ejercicios
INTRODUCCIÓN
Parte Lógica dentro del proceso de comunicaciones
(protocolos).
Funcionalidad de las arquitecturas de red (pilas de
protocolos).
Propuestas modulares.
Agrupación funcional (módulo)
Creación de Niveles (Capas o estratos) - Layers
Reducidas interfaces entre niveles
Modelos Jerárquicos
Sistemas Abiertos
Interconectividad e Interoperabilidad
***
Cross Layer
INTRODUCCIÓN (Elementos red)

Host= end Systems


PCs, estaciones, teléfonos, PDAs,
servidores, tostadoras, TVs, etc.
Ejecutan aplicaciones de red (...)
Forman el borde (edge) de la red
Conectados con la red mediante
enlaces de comunicaciones
• Fibra, cobre, radio, satélite
• Tasa de transmisión (bps) ≅ ancho de
banda (bandwidth)
INTRODUCCION (Elementos red)

Conmutadores
Reenvían la información
Transparente a los datos
• información es analógica o digital
Conmutadores telefónicos
Routers en el caso de Internet
Conmutadores de enlace
Interconectados mediante enlaces de
comunicaciones
Forman el núcleo (core) de la red
Emplean rutas o caminos (paths)
dentro de la red (…)
INTRODUCCIÒN (Elementos red)
Protocolos
¿Qué es un protocolo?

Comunicación Humana
Establecimiento de reglas
Un emisor y un receptor
identificados
Método de comunicación
acordado (en persona, teléfono,
carta, fotografía)
Idioma y gramática común
Velocidad y momento de
entrega
Requisitos de confirmación o
acuse de recibo
Definición de Protocolo
PROTOCOLO
Conjunto de normas a seguir para lograr
una comunicación.
Normas de control y temporización de
mensajes.
Fases sistemáticas que componen un
proceso de comunicación.
Conjunto de elementos que intervienen en
una comunicación (lenguaje común, formatos
de datos, secuencias, control de flujo, etc.)
Procedimientos para detección y/o
corrección de errores.
Pueden ser especificados formalmente:
• SDL.
• LOTOS.
• UML.
Se agrupan como Arquitecturas.
SDL (Specification Description Language) by ITU-T

Lenguaje de
especificación y
descripción.
lenguaje orientado a la
especificación y descripción de
sistemas de telecomunicaciones
que funcionan en tiempo real. ()
SDL (Specification Description Language) by ITU-T

Formas sintácticas.
SDL/GR (Graphical
Representation).
• lenguaje gráfico que
define la estructura y
flujos de control del
sistema
SDL/PR (Phrase
Representation).
• lenguaje de
programación
SDL (Specification Description Language) by ITU-T

Entidades SDL
SDL (Specification Description Language) by ITU-T
SDL (Specification Description Language) by ITU-T

Actividad en clases.
Realizar el SDL/GR del protocolo parada y espera de
una manera general.
LOTOS (Language of Temporal Ordering Specification) by ISO

lenguaje de especificación formal basado en la


ordenación temporal de los eventos.
LOTOS se usa para la especificación de
protocolos en estándares ISO OSI.
consta de dos partes:
una parte para la descripción de datos y operaciones,
basada en tipos abstractos de datos;
la otra para la descripción de procesos concurrentes,
basados en cálculo de procesos.
LOTOS (Language of Temporal Ordering Specification) by ISO

Definición de Proceso
LOTOS (Language of Temporal Ordering Specification) by ISO
UML (Unified Modeling Language)

lenguaje de modelado
de sistemas software.
lenguaje gráfico
Visualizar
Especificar
Construir y
documentar un
sistema
UML (Unified Modeling Language)
Redes Diferentes – el mismo objetivo

FRAME RELAY

Interworking/Inter
operabilidad

DNA SNA

Necesidad de Comunicación
Definición de Protocolos

Protocolo en comunicación de datos: Es el procedimiento o


conjunto de normas que regulan el intercambio de información
entre elementos que cooperan.

Los participantes en una transmisión de datos deben conocer y


observar estas reglas para poder entenderse entre si.
Las normas del protocolo se refieren a:

Código de Terminal.
Caracteres de control.
Formato de bloques.
Procedimiento de sincronismo.
Velocidad de transmisión.
Procedimientos de seguridad de datos.
Clase de servicios.
Condiciones de tiempo.
En un sistema distribuido el protocolo permite:

a) Iniciar, mantener y terminar un diálogo


entre elementos del sistema.

b) Regular la forma de generar e


interpretar los elementos orientados al
control de errores y la forma de recuperar
la información recibida erróneamente.

c) Dar información acerca de la forma de


identificar el camino que se utiliza para el
intercambio de datos y la identificación del
tipo de mensaje.
Mensaje

El elemento del diálogo de un protocolo es el MENSAJE, este lleva los datos


(objeto final del diálogo) e información adicional (básica para la detección
de errores, identificación del camino, control de flujo de información e
identificación del tipo de mensajes). Se conforma entonces un bloque con
determinado formato. ****

Carga útil (Pagada) Encabezamiento

Payload Header

Unidad de Datos de Protocolo


Importancia en el proceso de comunicación
Intercambio de información
ESTRUCTURA DE UN PROTOCOLO

• Los cinco elementos de un


protocolo

1. Servicio que proporciona el protocolo


2. Suposiciones sobre el entorno donde se ejecuta
el protocolo
3. Vocabulario de los mensajes utilizados en el
protocolo
4. Formato de los mensajes del vocabulario del 5

protocolo
5. Reglas de procedimiento que controlan la
consistencia del intercambio de mensajes
Los cinco elementos de un protocolo

1. Especificación del servicio


El propósito del protocolo es transferir ficheros de texto
como secuencias de caracteres a través de una línea
de datos mientras que en la protección frente a errores
de transmisión, se asume que todos los errores pueden
ser detectados.

El protocolo se define para transferencias full-duplex, es


decir, debería permitir transferir en ambas direcciones
simultáneamente. Los acuses de recibo positivos y
negativos para el tráfico desde A hasta B se envían por
el canal desde B hasta A y viceversa. Cada mensaje
6
contiene dos partes: una parte que es el mensaje en sí
y una parte de control que se aplica al tráfico del canal
inverso.
Los cinco elementos de un protocolo

2. Suposiciones del entorno

• Dos usuarios como mínimo + un canal


de transmisión
• usuarios envían una solicitud de
transferencia de fichero y esperan a
que finalice
• Canal con distorsiones aleatorias, pero
no se pierden, duplican, insertan o
desordenan mensajes
7
• Se pueden producir errores aleatorios
Los cinco elementos de un protocolo

3. Vocabulario del protocolo 4.Formato del mensaje


Mensaje={etiqueta de control, dato
- ack = mensaje + acuse de recibo positivo
enum control {ack, nack, err};
- nack= mensaje + acuse de recibo negativo struct message {
- err = mensaje con distorsión enum control etiqueta; unsigned
char dato;
} };

V={ack, nack, err}


Los cinco elementos de un protocolo

5. Reglas de procedimiento Leyenda


o: cola de mensajes a transmitir i: cola de mensajes a recibir

= Esperando

• Si la recepción anterior estuvo libre de = Mensaje de entrada

errores, el siguiente mensaje por el canal = Mensaje de salida

inverso debe llevar un reconocimiento = Evento interno

positivo; en caso contrario, llevará un


reconocimiento negativo. Inicio de la transmisión
• Si la recepción anterior portaba un
ste:o
reconocimiento negativo, o si fue errónea,
se retransmitirá el último mensaje; en caso
recibiendo
contrario se transmitirá el mensaje
siguiente
nack:i ack:i err:i

ste:o

ack:o ack:o nack:o


Los cinco elementos de un protocolo

 Defectos de diseño
 No se puede transmitir en ambas
direcciones simultáneamente
 No se ha definido procedimientos de
inicio y finalización ¿err?
 Se aceptan todos los mensajes
recibidos correctamente, incluyendo
los duplicados
 Si se aceptan los que llegan OK y no
se aceptan los mensajes de ¿err?
10
duplicación de mensajes cuando se
producen dos errores consecutivos
Los cinco elementos de un protocolo

Comunicación sin errores Comunicación con errores


A B A B
err ste err ste
ste ste
nack ‘z’ nack ‘z’

Aceptar ‘z’ Aceptar ‘z’ ack ‘a’ err


ste
ack ‘a’
nack ‘z’ err
Aceptar ‘a’
ack ‘y’ ste
nack ‘a’
Aceptar ‘y’
ste Aceptar ‘a’
ack ‘b’ ack ‘z’

Aceptar ‘b’
ste Aceptar ‘z’
ack ‘x’ ste
ack ‘b’
Aceptar ‘x’
Los cinco elementos de un protocolo

A inicia TX

A B
err ste
ste
B transmite su primer carácter ‘z’ + acuse de recibo del err recibido
nack ‘z’

Aceptar ‘z’ ack ‘a’ A envía su primer carácter ‘a’ + acuse de recibo
del carácter ‘z’ recibido, pero se deteriora en el camino

Llega a B como err, luego B piensa que A ha iniciado una nueva TX


Nack  ‘z’

B transmite su primer carácter ‘z’ + acuse de recibo del err recibido,


pero se deteriora en el camino
A interpreta el err como que B nack ‘a’
ha iniciado la TX

A transmite su primer carácter Aceptar ‘a’


‘a’ +acuse de recibo del err recibido
ack ‘z’
B transmite su primer carácter ‘z’ +acuse de recibo del carácter ‘a’
recibido
A recibe y acepta dos
veces el carácter Aceptar ‘z’
‘z’
ste
ack ‘b’
ESTRUCTURA DE UN PROTOCOLO

3. SERVICIO Y ENTORNO.

P1: Testeador + generador de paridad (8 bits)


P2: Codificador + decodificador (7 bits)

Canal virtual

P2 P1 P1 P2

Envolturas de datos

Pn P2 P1 Po P1 P2 Pn
Servicio y entorno

• Ventajas del diseño por niveles:


Nivel N+1
• Ayuda a distinguir la estructura lógica del
protocolo, al separar tareas de alto nivel de las
de bajo nivel
Nivel N A B
• Facilita la escalabilidad del protocolo Entidad par
Protocolo par

• Actores del modelo de diseño: Nivel N-1


Primitivas de Servicio
• Un nivel o capa define un grado de abstracción de servicio

un protocolo, agrupando funciones relacionadas


y separando las independientes
• Un interfaz separa (y une) dos niveles distintos de
abstracción
Servicio y entorno
Suministrador del
Usuario de servicio servicio (Capa N-1) Usuario de servicio (Capa N)

Primitivas: (Capa N)

- De petición de servicio X.request

- De indicación de servicio X.indication

- De respuesta (de entidad par)


X.response
- De confirmación (del X.confirm

suministrador del servicio)


Transmisor Receptor

Usuario Usuario

Diagrama de E-DATA.request(DATO) E-DATA.indication(DATO)


correlación de
primitivas
Enlace Enlace

F-DATA.req(SEC, DATO)
F-DATA.req(SEC, ACK) F-DATA.ind(SEC,DATO)
F-DATA.ind(SEC,ACK)

Medio físico
Vocabulario y formato de mensajes

• Se define para cada nivel


• Dos tipos de protocolos en cuanto formato de mensajes:
• protocolo orientado a bit
• Tx datos como flujo de bits sin longitud definida (flags de inicio y fin). Ej:
HDLC (High-Level Data Link Control, control de enlace de datos de alto nivel)
protocolo orientado a carácter
• Tx datos en bloques de n bits (o múltiplos de n) (caracteres marcadores de
inicio y fin). Ej: Carácter STX(Start of TeXt) y ETX (End of TeXt)

STX c1 c2 c3 cn ETX
...
Character stuffing

DLE STX c1 c2 DLE DLE cn DLE ETX


...
Estructura de un protocolo

4. Vocabulario y formato de los mensajes

-Formato = { cabecera, datos, cola }


•cabecera = { tipo, destino, nº secuencia, longitud }
» tipo = { ack, nack, err }
•cola = { checksum, dirección de retorno }
Estructura de un protocolo

5. Reglas de procedimiento.
Procesos concurrentes
• Necesitan herramientas más formales: diagrama temporal,
máquina de estados finitas, ESTELLE...

evento0[condicion0]/accion0

evento1[condicion1]/accion1

Estado Estado
i i+1

evento2[condicion2]/accion2
Estructura de un protocolo

6. Diseño de un Protocolo Estructurado


Simplicidad
Modularidad
Protocolos bien formados
• NO sobre-especificado
• NO incompleto
• Acotado
• Autoestabilizado
• Autoadaptable
Robustez
• Evolución automática con la tecnología
Consistencia
• Bloqueos
• Bucles infinitos
• Terminaciones impropias
Estructura de un protocolo

Reglas de diseño
1. Asegurarse de definir bien todos los
aspectos del protocolo
2. Definir el servicio a realizar por cada
nivel antes de elegir estructuras
3. Diseñar antes funcionalidad externa
que la interna
4. Mantener el diseño simple
5. No conectar lo que es independiente
6. Obviar aquello que es innecesario
7. Validar el diseño antes de
implementarlo
8. Implementar diseño, medir su
rendimiento y optimizarlo
9. Comprobar que la versión final
cumple los criterios de diseño
10. Nunca saltarse las 7 primeras reglas
Estructura de un protocolo

7.Mecanismos básicos de los protocolos


Control de secuencia y control de errores
• Redundancia
• Tipos de códigos
• Códigos de paridad
• Corrección de errores (varios métodos)
Control de flujo
• protocolo simple sin control de flujo
• protocolo Xon-Xoff
• protocolo de parada y espera
• protocolo de parada y espera con timeout
• protocolo de bit alternante
• protocolos de ventana
Mecanismos Básicos de los protocolos
Causas principales de error:
Control de secuencia y limitaciones en el ancho de banda del canal
control de errores (distorsión lineal)
eco, ruido blanco, impulsos
electromagnéticos... (no lineal)
El efecto de esos ruidos se puede mitigar
• Mayor número de errores debido a la comunicación que al hasta cierto punto con hardware y el resto
hardware por software (no se eliminan)
P(circuitería)<10-15 El esquema de control de error debe ser
P(F.O.) 10-9 P(coax.) 10 -6 P(tlf.) 10 -4 ó 10 -5 adecuado a las características del medio de
transmisión o sistema de comunicaciones:
Si un canal sólo tiene inserciones, no sirve un
protocolo que proteja contra eliminaciones
Si un canal produce errores simples, puede
ser más adecuado usar un protocolo más
simple
Si el error del canal es < que el de la
circuitería, el mecanismo de control sólo
degrada rendimiento del sistema y disminuye
Control de flujo

• Objetivos:
– Asegurarse que no se transmiten los datos
más rápido de lo que se puede procesar.
– Optimizar el uso del canal.
– Evitar saturar el canal.
– Proteger la transmisión contra borrado,
inserción, duplicación y reordenamiento de
mensajes.
Control de flujo

• Protocolo simple sin control de flujo


• Protocolo Xon-Xoff
• Protocolo de parada y espera
• Protocolo de parada y espera con
timeout
• Protocolo de bit alternante
• Protocolo de ventana 35
Generalidades del Modelo OSI

Modelo de Comunicación end to end.

Proceso 1 Protocolo (n) Proceso 2

request confirm response indication

SAP SAP
CEP Enlace CEP
PROVEEDOR DE SERVICIO
Modelo de referencia general

NIVELES NIVELES
SUPERIORES SUPERIORES

NIVEL 2 NIVEL 2 ENLACE

NIVEL 1 NIVEL 1 FÍSICO

DTE DCE DCE DTE


Modelo para una red a tres niveles

NIVELES NIVELES
SUPERIORES SUPERIORES

NIVEL 3 NIVEL 3 NIVEL 3 NIVEL 3 RED

NIVEL 2 NIVEL 2 NIVEL 2 NIVEL 2 ENLACE

NIVEL 1 NIVEL 1 NIVEL 1 NIVEL 1 FÍSICO

DTE DCE SISTEL DCE DTE

Interfaz Interfaz
Modelo de comunicación entre niveles.

Nivel (n+1)
IDU
SDU ICI
PCI
Nivel (n)
PDU ICI
IDU
Nivel (n-1) SDU ICI
En general
Unidades de datos en OSI
TCP/IP Architecture

Network Based Applications

L4 TCP, UDP

L3 IP

L2 Ethernet, Sonet, ATM

L1 Copper, Fiber, Radio

58
Otra forma
Unidades de Datos de Protocolos - PDU
DISTRIBUCIÓN DEL MODELO OSI

Usuarios del Bloque de Transporte


Nivel 7 - Aplicación Orientado a la aplicación
Nivel 6 - Presentación
Nivel 5 - Sesión
Orientado al sistema
Bloque de Transporte
Nivel 4 - Transporte
Bloque de Transmisión
Nivel 3 - Red
Orientado a las comunicaciones
Nivel 2 - Enlace
Nivel 1 - Físico
Modelo de Referencia OSI – ISO7498
Usuario Usuario
Protocolo (7) Selección de la aplicación
NIVEL 7 NIVEL 7
Protocolo (6) Formateo de los datos
NIVEL 6 NIVEL 6
Protocolo (5) Interacción entre procesos
NIVEL 5 NIVEL 5
Protocolo (4) Datos terminal a terminal
NIVEL 4 NIVEL 4
Protocolo (3) Protocolo (3)
RED RED
NIVEL 3 NIVEL 3 NIVEL 3 NIVEL 3 RED
Protocolo (2) Protocolo (2)
ENLACE ENLACE
NIVEL 2 NIVEL 2 NIVEL 2 NIVEL 2 ENLACE
Protocolo (1) Protocolo (1)
FÍSICO FÍSICO
NIVEL 1 NIVEL 1 NIVEL 1 NIVEL 1 FÍSICO

FLUJO DE BITS A TRAVÉS DEL MEDIO DE TRANSMISIÓN

DTE DCE SISTEL DCE DTE

Interfaz Interfaz
Representación por niveles
Headers and payloads
MR-OSI
Operación
Protocolos
Conexión end to end
Flujo de Información
Resumen
Transporte

NIVELES NIVELES
SUPERIORES SUPERIORES

Protocolos de Transporte
NIVEL 4 NIVEL 4

NIVEL 3 NIVEL 3 NIVEL 3 NIVEL 3 RED

NIVEL 2 NIVEL 2 NIVEL 2 NIVEL 2 ENLACE

NIVEL 1 NIVEL 1 NIVEL 1 NIVEL 1 FÍSICO

DTE DCE SISTEL DCE DTE

Interfaz Interfaz
COMUNICACIÓN DE DATOS

NIVEL FÍSICO
PROCESO DE APLICACIÓN DE USUARIO FINAL.

TRANSFERENCIA, ACCESO Y GESTIÓN DE ARCHIVOS,


INTERCAMBIO DE DOCUMENTOS Y MENSAJES, NIVEL 7
TRANSFERENCIA DE TRABAJOS.

NEGOCIACIÓN DE SINTAXIS DE TRANSFERENCIA,


TRANSFORMACIÓN DE REPRESENTACIÓN DE DATOS NIVEL 6
CONTROL Y SINCRONIZACIÓN DE DIÁLOGOS
PARA ENTIDADES DE APLICACIÓN. NIVEL 5
Intercambio independiente de la red.

TRANSFERENCIA DE MENSAJES EXTREMO A EXTREMO


(GESTIÓN DE CONEXIONES, CONTROL DE ERRORES,
FRAGMENTACIÓN, CONTROL DE FLUJO).
NIVEL 4

ENRUTAMIENTO, DIRECCIONAMIENTO, PREPARACIÓN


DE LLAMADAS Y LIBERACIÓN DE LA RED.
NIVEL 3

CONTROL DE ENLACE DE DATOS (ENTRAMADO,


TRANSPARENCIA DE DATOS, CONTROL DE ERRORES). NIVEL 2
Definición de Interfaces de red
NIVEL 1
eléctricas y mecánicas

Red de comunicación
de datos

Conexiones físicas con el equipo


terminal de red

También podría gustarte