OSI: UNA ARQUITECTURA
NORMALIZADA PARA LA
INTERCONEXION DE
SISTEMAS ABIERTOS
Antonio Garrido del Solo
José Miguel Puerta Callen
Francisco Javier Gomez Quesada
Antonio Garrido del Solo, José Miguel Puerta Calle
Jin y Prancsca Javier Géme: Quesada estin en el Dpo.
‘de iformitea ~ Albacete. Universidad de Castilla la Mar
ha
1. INTRODUCCION
L principio de la década de los 70, comienza el desarrollo de
redes de computadores experimentales. Debido al éxito obte~
nido y a su utilidad, los grandes fabricantes de computadores co-
mienzan a disefiar redes que permitan la conexién entre si de sus
propios equipos. Surgen en esta época arquitecturas tales como
SNA (System Network Architecture) de IBM, DNA (Digital Net-
work Architecture) de Digital, DSA (Distributed System Archi-
tecture) de Bull, XNA (XODIAC Network Architecture) de Data
General, etc.
Esta arquitecturas (denominadas arquitecturas propietarias)
dan excelentes resultados pero tienen el inconveniente de que s6-
lo permiten conectar los equipos de un mismo fabricante. Son
arquitecturas abiertas a equipos del fabricante pero cerradas al
resto de equipos, por lo que provocan un gran problema de
compatibilidad general, que se complica con el paso del tiempo,
puesto que cada fabricante desarrolla e invierte en su arquitectu-
ra, intentando que Hlegue a ser la «arquitectura estindarm y de
esa forma ganarse el mercado.
‘A Ia vista del gran problema de incompatibilidad existente, y
debido a que ningan fabricante admite que la arquitectura de la
‘competencia se convierta en estindar, las organizaciones interna-
265cionales de normalizacion comienzan a trabajar en el tema, sien-
do el ISO la encargada de dictar las normas que definan una ar-
quitectura estindar independiente de los fabricantes. En noviem-
bre de 1977, el ISO (International Standards Organization) crea
el subcomité ISO ISO/TC 97/SC 16 con objeto de que se encar-
gue del desarrollo de un modelo de referencia para Ia intercone-
xi6m de sistemas ablertos OSI (Open System Interconection). El
objetivo es crear una arquitectura estindar de sistema abierto
con objeto de que los fabricantes disefien sus productos de acuer-
do con ella.
En Marzo de 1978 se reine por primera vez el subcomité y
acuerda las lineas generales de esta arquitectura. Después de ai-
gunos meses de trabajo, en Septiembre de 1979 se aprueba la ar-
quitectura OSI como modelo de referencia para la interconexion
de sistemas abiertos, publicdndola en el documento ISO-7498.
Posteriormente, este estindar es reconocido por el CCITT (Co-
mité Consultivo Internacional Telegrafico y Telefonico) en su re-
comendaciin X.200 y se comienza cl disefio de los protocolos
que implementen cada uno de los niveles.
En la actualidad, el modelo OSI es aceptado por 1a mayor
parte de fabricantes y se anuncia por casi todos, como primer
paso, la coexistencia de su arquitectura propietaria con la OSI,
para ir tendiendo de forma gradual al estindar OSI. Por otra
parte, esta siendo hoy dia muy apoyada por organismos interna-
cionales con objeto de conseguir que los usuarios que disponen
de arquitecturas propietarias, migren a OST en el menor plazo
posible. Ejemplo de ello es el proyecto COSINE (Cooperation
AnourTEcTURA
PHOMETARAS
1904
DESARROLLO
‘ost
‘COEXISTENCIA
OXI PROPIETARIASfor Open System Interconnection Networking in Europe) de la
Comunidad Econémica Europea que subvenciona migracones a
OSI. En él se enmarca el proyecto IRIS (Interconexién de Recur-
sos Informaticos) cuyo objetivo es introducir una infraestructura
OSI en la comunidad universitaria e investigadora espafiola,
2, FUNDAMENTOS DE LA ARQUITECTURA OSI
En el desarrollo del estandar OSI, se adopté una estructura
de niveles, considerandose entre otros los siguientes criterios:
— Se debe adoptar una estructura de niveles, ya que de esta
forma se reduce el nivel de complejidad total del sistema.
Se debe crear un nuevo nivel siempre que con ello se consi-
ga un nivel de abstraccién distinto del anterior. Pero con-
viene no crear demasiados niveles para simplificar la inte-
raccién entre ellos.
— Los distintos niveles se deben elegir de forma que los pro-
tocolos e interfaces entre ellos sean lo suficientemente flexi-
bles como para permitir que éstos sean cambiados sin afec-
tar a los restantes. Ello permitira a OSI adaptarse sin
problema a las evoluciones que sufra el hardware y el soft-
ware.
= Los limites de los niveles deben scleccionarse teniendo en
cuenta la minimizacion del flujo de informacién entre sus
interfaces
En base a estos criterios y algunos més, se seleccioné una ar-
quitectura basada en 7 niveles. En el documento 10/7498, se di-
ce «El modelo OSI se refiere al intercambio de informaciin entre
procesos de aplicacién y su objetivo es permitir una tarea comin
distribuida>. Se entiende por proceso de aplicacién (PA) a aquél
proceso de usuario que desea comunicarse con otro remoto con
objeto de intercambiar datos.
Segiin lo anterior, la estructura general de un sistema distri-
buido es la mostrada en la figura 1. Los procesos de aplicacion
son los que desean comunicarse entre si, utilizando para ello Ia
red de transmision de datos. El interfaz logico entre ambos ele-
mentos es el subsistema de comunicaciones, que en nuestro caso
es el modelo de arquitectura OSI. Téngase presente que el mode-
lo OSI no define como debe set la red de transmision de datos,
sino solo el aspecto que ésta debe presentar al exterior.
En la figura anterior se observa como el subsistema de comu-
nicaciones se descompone en dos bloques: El bloque de niveles
dependientes de la red y el bloque de niveles dependientes de la
267Propose Proceso de
‘session ‘Apion
Nivoles Niveles
: lontos de dopenclontes de
fa apleacon TBaplcacen
Nivelos de Nivoles
dependientes do fem] far») depenctonies do
‘a ed Taeo
ed de tansmisin de datos
ENTORNO DE RED
ENTORNO Osi
sw: ENTORNO DE SISTEMA ~~
FIGURA 1.
‘Sistema distribuido y entornos.
aplicaci6n. El primero de ellos estar compuesto por aquellos ni-
‘eles que de alguna forma interaccionan con la red de comunica-
ciones y el segundo por los restantes, que serdn totalmente inde
pendientes de la red utilizada. Con todo esto, se pueden
distinguir tres entornos basicos en un sistema abierto: Entorno
de red, entorno OSI y entorno de usuario (figura 1).
+ Entorno de red: Trata todo lo relativo a la conexién del sis-
tema a la red de transmision. Los niveles en que se divida
actuarin de interfaz (fisico 0 légico) con la red.
+ Entorno OSI: Trata todo lo relativo a la interconexin de
sistemas abiertos. Esta formado por el entorno de red mas
los niveles dependientes de la aplicacién.
+ Entorno de sistema: Trata todo lo relativo al procesamiento
distribuido de la informacién. Est compuesto por el en-
torno OST mds los procesos de aplicacién que desean inter-
cambiar la informacién,
Tanto el bloque de niveles dependientes de la aplicacién como
el de los niveles dependientes de la red, subdividen, obteniéndose
los 7 niveles de que se compone la arquitectura OSI. Son los
mostrados en la figura 2.
En la figura se observa cémo:“]
APLCAGION fe [APLICAGION
PRESENTACION |~ PREEENTAGION
sEsiON | >| Sesion
TRANSPORTE —>| TRANSPORTE
“ae [eae] Resfe's nem
ENLACE DE DATOS|¢->{ED| | ED |e->[ENLAGE DE DATOS|
Fico feafris) [Fisler{ Fisico
RED DE TRANSMISION DE DATOS
ENTORNO DE RED.
ENTORNO OBI
[ENTOANO DE SISTEMA “
FIGURA 2.
Niveles arquitectura OSI.
— BI nivel fisico es el ‘ico que interacciona fisicamente con
la red de transmision de datos.
Los niveles fisico, de enlace de datos y de red, son los tni-
cos que pueden interaccionar logicamente con la red.
A partir del nivel de transporte, los niveles interaccionan
con su homénimo del otro extremo independientemeate de
la red. Para ellos, la red es transparente.
La red, oftece una determinada estructura en su interfaz
con los niveles OSI inferiores. Internamente, puede tener
cualquier estructura,
El objeto de todos los niveles OSI es ofrecer una comuni-
cacién transparente a los procesos de aplicacién,
Cada nivel se comunica logicamente con su homénimo me-
diante un protocolo. Esto implica que en un entorno OSI,
se necesitan, al menos, 7 procesos concurrentes.
La mision concreta de cada nivel es la siguiente:
Nivel fisico: Es el interfaz. con el medio de transmisién. Toma
bits del nivel de enlace de datos y los transforma en sefiales (eléc-
tricas, luminosas, etc.) adecuadas al medio de transmisién. Es
269270
responsabilidad suya que los bits individuales Heguen al sistema
remoto.
Nivel de enlace de datos: Tiene la responsabitidad de transpor-
tar de forma fiable datos a través de un enlace punto-punto (en-
lace de datos). Para ello, implementa mecanismos de control de
errores. Ademas realiza también funciones de direccionamiento y
encapsulamiento a nivel de enlace.
Nivel de red: Una vez. que el nivel de enlace de datos propor-
ciona transferencia fiable, el nivel de red es el responsable de que
éstos Mleguen a su destino, aportando los mecanismos de direcci
namiento que considere oportunos. Es responsable también del
control de flujo en el acceso a la red.
Nivel de transporte: Es el primer nivel OSI independiente del
tipo de red de transmisién. Es responsable de proporcionar a los
niveles superiores una determinada «calidad de servicio», dando
para ello las ordenes necesarias al nivel de red. También es el en-
cargado de trocear la informacion en paquetes de determinado
tamaiio.
Nivel de sesidn: Incluye funciones de sincronizacién. Para ello,
define unos testigos que son dinamicamente asignables a las esta-
ciones y que proporcionan determinados privilegios.
Nivel de presentacién: Este nivel se encarga de proporcionar
una sintaxis comin a tos sistemas que se comunican. Para ello,
se apoya en una notacién normalizada. También es frecuente
asignarle misiones de encriptado de datos.
Nivel de aplicacién: Es el que interactita directamente con el
proceso de aplicacién del usuario. Dispone de unos elementos de
servicio comunes a todos los procesos (CASE, Common Aplica-
tion Service Element) y otros especificos (SASE, Specific Aplica-
tion Service Element). Dentro de los especificos es de destacar el
sistema de mensajeria electronica, transferencia de ficheros y eje-
cucién remota de trabajos.
3. ESTRUCTURA INTERNA DE
LA ARQUITECTURA OSI
A nivel global, el ISO, en su documento 7498, define un siste-
ma como «un conjunto de uno 0 més computadores, el software
asociado, los periféricos, terminales, operadores Iumanos, procesos
fisicos, medios de transferencia, etc., que forman un todo auténomo
‘capaz de realizar un proceso ylo transferencia de informaciém.
Como se observa, es una defiicién muy poco restrictiva. Gene-
ralmente, un sistema ser un computador. Un sistema se dice queSISTEMA SISTEMA 2
subsistema subsistema | NIVEL +t
subsistema subsistema | NIVEL
FIGURA 3.
Sistemas, subsistemas y niveles.
es abierto si cumple las normas OSI en su comunicacién con
otro.
Cada sistema abierto, se divide en niveles (7), llamandose sub-
sistema a la interseccion de un sistema con un nivel (ver figura
3),
Puesto que cada nivel debe realizar una tarea conereta e inde-
pendiente de los demas, cada subsistema realizara dicha tarea en
cada sistema, descomponiéndose éste en una 0 mas entidades re-
alizaré dicha tarea en cada sistema, descomponiéndose ésie es
una 0 mas entidades. Por tanto, una entidad sera generalmente
‘un proceso que realiza todas o parte de las funciones asignadas a
un nivel, Dependiendo de la localizacién relativa, se dice que dos
entidades son pares cuando estin situadas en un mismo nivel, y
dos entidades son adyacentes si estin en niveles contiguos de un
‘mismo sistema (ver figura 4).
sistema t sisTEMA2
ent |[ ont] | vez ire»
‘ondas | | NIVEL
mm
sisteNa 1
t SISTEMA2
rt entseen | | RIVE)
FIGURA 5.
Protocols.
En la figura 4, las entidades situadas en el nivel n+ 1 (deno-
minadas entidades-(n + 1)) son pares entre si, y a su vez, son ad-
yacentes respecto a las entidades-(n) de su mismo sistema.
Segin ISO, Jas entidades-(n) proporcionan la capacidad de pro-
eso distribuido del nivel-(n) en el desempeiio de sus funciones. To-
das las entidades de todos los niveles de un sistema representan la
capacidad de procesamiento del sistema, cuando son vistas por los
demés sistemas abiertos.
Dos entidades-(n) pares cooperan entre si de acuerdo con un
protocolo-(n). Por tanto, siempre existe un protocolo-(n) que te-
gula y coordina la cooperacién de dos entidades-(n) pares.
Para realizar transferencia de datos entre dos entidades-(n) de
acuerdo con un protocolo-(n), éstas deben establecer una cone-
xién-(n— 1), lo que implica realizar una asociacion entre dichas
entidades-(n) y ¢ nivel-(n— 1). Como consecuencia de ello, cuan-
do dos entidades pares necesiten intercambiarse datos, utilizarin
una conexién-(n—1), pero esta conexion-(n—1), que estar go-
bernada por el protocolo-(n~ 1), necesitara a su vez de una co-
SISTEMA SISTEMA?
emigad | | NIVEL (n)
NIVEL (n= 1)i
moans |wvetiny —E) corked ey asa
‘Stew ncn pare mea)
FIGURA 7.
Funciones y servicios.
nexién-(n — 2), gobernada por el protocolo-(n — 2). Siguiendo este
razonamiento hasta el nivel inferior, llegamos a la conclusion de
que siempre que dos entidades-(n) descen intercambiar datos, es-
tos «pasaram por los niveles n—1, n—2, ..., 1, en cada uno de
Jos cuales, estaran sometidos (aunque de forma transparente, co-
mo veremos mas adelante) a sus respectivos protocoles.
Una vez establecida la conexién, se transfieren por ella las
unidades de datos que veremos mds adelante. Se suelen incluir
mecanismos de control de flujo (entre entidades pares y entre en-
tidades adyacentes) y control de errores. Cuando ya no se necesi-
ta utilizar la conexién, ésta se libera.
Si nos centramos en una entidad-(n), diremos que ésta realiza
unas funciones-(n) que proporciona a las entidades-(n + 1). De
igual modo, se dice también que las entidades-(n + 1) utilizan los
servicios-(n) proporcionados por las entidades-(1)
De forma mis rigurosa, se puede definir un servicio-(n) como
aquella capacidad que el nivel-(n) ofrece a las entidades-(n + 1).
Por ejemplo, segin se vio antes, una conexién-(n) se establece
SAP.(n) NIVEL-(n)
: a aim NIvELa~ 1)
* + CEPs-(n) independientes
FIGURA
Puntos extremos de conoxién.
23m4
SAPD
ar VEL)
‘SERVIGIOS40=1)
Niven (n— 1)
FIGURA 9.
Puntos de acceso a servicio.
siempre a través del nivel-(n— 1); pues bien, en este caso, el nivel-
(n— 1) debe ofrecer servicios relativos al establecimiento de la co-
nexién, transferencia de datos por ella y liberacién. A una enti-
dad-(n) no le importa cémo esta constituido en nivel-(n—1) ya
que solo utilizara de él los servicios que le oftece. De esta forma,
se asegura la independencia de niveles, ya que un nivel s6lo nece-
sita que se le ofrezean unos determinados servicios, sin preocu-
parse de cémo se realizan.
El interfaz logico a través del cual el nivel-(n) oftece sus servi-
cios a las entidades-(n + 1) del mismo sistema se denomina Punto
de Acceso al Servicio-(a) SAP-n (Service Access Point-(n). Con
objeto de distinguir los distintos SAP de un sistema, se definen
las direceiones-(n) que son los identificadores de cada SAP-(n),
De esta forma, un SAP-(n) sera siempre referenciado por su di-
reccién-(n). Cada entidad-(n) tiene un directorio-(n) con las direc-
ciones de aquellos SAP-(n) accesibles para ella (ver figura 9).
Hemos hablado hasta ahora de los servicios ofrecidos por un
determinado nivel-(n). Como es de esperar, estos servicios-(n)
que oftece el nivel-(n), son proporcionados por las entidades-(n).
Una entidad-(n) puede servir a varios SAP-(n) concurrentemente,
pero a un SAP-(n) solo puede servirle una tnica entidad-(n.
Una entidad-(n + 1) podra utilizar concurrentemente varios SAP-
(n). Las figuras 10 y 11 muestran lo anterior.
Un SAP-(n) puede tener establecidas mas de una conexién-(n)
concurrentemente. Para distinguir a cada una de ellas, utilizan
Jos Puntos Extremos de Conexién-(n) CEP-(a) (Connection End
Point), tantos como conexiones-(n) se permitan concurrentemen-
te, Cada una de las conexiones concurrentes tendra asignado un
CEP-(n), al que es asignado un identificador de CEP-(n) con ob-
jeto de que la entidad-(n + 1) pueda referenciar a la conexién-(n)
‘que mantiene,ENTIDAD (0) ENTIDAD a) | NIVEL(n)
SAPO) ‘SAPO 1)
ENTIDAD(n~ 1) NIVEL{9—1)
FIGURA 10.
Configuracién permitida,
ENTIDAD (0) ENTIOAD(n) NIVEL(0)
. spain=1) fo
I
ENTIDAD4A—1) NIVEL(9=1)
FIGURA 11.
Configuracién permitida
Conviene distinguir entre una direccién-(n) y un identificador
de CEP-(n). La primera de ellas, se utiliza para identificar al
SAP.(n) que esté ligado a la entidad-(n + 1), mientras que el se-
gundo identifica un CEP-(n) dentro ya del SAP-(n).
ENTDADYA 1) NVELIn #1)
PAI) -
NTA) ewnoany | veto)
FIGURA 12. 205
Configuracién no permitida276
4, UNIDADES DE DATOS
Segin se ha visto en apartados anteriores, dos entidades-(n)
pares intercambian datos utilizando una conexion-(n~1) y de
Reuerdo con un protocolo-(n). Dichos datos, se intercambian vit-
tualmente entre las dos entidades pares, pero realmente, necesi-
tan utilizar a los niveles inferiores (ya que necesitan una cone-
xién-(n - 1). Por tanto, tendremos dos unidades fundamentales
Ge datos: una que define los datos intercambiados virtualmente
entre entidades pares y otra que define los datos que una enti-
dad-(n) entrega al nivel-(n — 1) para su transmision a través de la
conexion-(n— 1).
Pcl sbU
PDU
FIGURA 19.
Unidad de datos de protocolo PDU.
La unidad de informacion intereambiada entre dos entidades
pares se denomina Unidad de Datos de Protocolo-(n) (PDU-(n)
Protocol Data Unit). Una PDU, se compone de dos partes: La
‘Unidad de Datos de Servicio-(n) (SDU-(n) Service Data Unit) y la
Informacion de Control de Protocolo-(n) (PCI Protocol Data
Unit), La PDU se transmite virtualmente entre dos entidades pa-
res (ver figura 14).
Las SDU-(n) son los datos proporcionados por una entidad-
(n) para que sean transmitidos a otra entidad-(n) par. Estos da-
tos que necesitan utilizar una conexidn-(n ~ 1) para ser enviados,
s6lo tienen significado para las entidades-(n) y no son interpreta-
NIVEL (9+ 1)
FIGURA 14.
‘Transmisién de PDUs.‘alos in)
NIVEL)
Tore) | Oatosi(a) | PCin
SPAn—1)
pee
Datos Hin 1) NIVEL-(n— 1
FIGURA 15.
Unidades de datos.
dos por las entidades-(n ~ 1) e inferiores. Se distinguen dos tipos
de SDU: las normales y las expeditas. Estas iiltimas se caracteri-
zan por set prioritarias frente a las normales. La PCI-{(n) es la
parte de la PDU-(n) que contiene informacién relativa al proto-
colo-(n) que gestiona el enlace. Depende exclusivamente del pro-
tocolo-({n) utilizado.
Segiin se ha visto anteriormente, una conexién virtual entre
dos entidades-(n) necesita siempre de una conexién real-(n ~ 1).
Esto significa que las PDU’s que transmito virtualmente entre
centidades-(n), serdn enviadas al nivel-(n~1), que sera el encarga~
do de transmitirlas. Se define la Unidad de Datos de Interface-(n -
1) (IDUn-1), Interface Data Unit) como la unidad de infor-
macién intercambiada entre dos niveles adyacentes a través de
un SAP-(n—1). La IDU-(n—1) esti formada por los Datas de
Interfaz-(n-1) y la Informacién de control de interface-(n— 1)
(ACI-{a=1) Interface Control Information). La IDU-(n~ 1) se
transmite entre dos entidades adyacentes a través de un SAP-(n).
Hasta ahora se ha hablado por separado de PDU’s e IDU’s.
Puede parecer que son dos unidades de datos aisladas, pero no
8 asi. Segin se ha comentado anteriormente, los datos intercam-
biados entre dos entidades-(n) pares utilizan una conexion-(n~ 1)
para ello. Esto implica que los datos que se transmiten por cone-
xiones virtuales (las PDU-(n)) en realidad son enviados al nivel-
(a1). Segiin esto, los Datos de Interface-(n — 1) seran las PDU-
(n) (ver figura). Es posible realizar algunas operaciones sobre las
unidades de datos. Se permiten las siguientes
mm‘spun S80U nermal
sous SS0U sogmentada
Pon Poin Porn
POUT) POUR POU)
stoma A.
Pola ] [rs Fein
Ladd PDU-(n) PDL)
es 00 rai
ss Uo
HGURA 1.
Segmentacién y reensambiaje.
spun s0Un s0Un
porn | soun | soun | spun
sistema A
‘Sistema 8
porn | spun | soun | spun
spun sDU-n oun
muna
7 Bloqueo y desbloqueo.— Segmentacién: Consiste en introducir una SDU-(n) en va-
rias PDU-(n). De esta forma, una SDU-n se divide en blo-
ques mis que pequeiios que se envian independientemente.
En el extremo receptor, se hace una operacion de reensam-
blaje uniendo de nuevo tos fragmentos anteriores.
— Bloqueo: Es la operacién inversa. Permite introducir varias
SDU-(n) en una PDU-(n). En el extremo receptor se reali-
za un desbloqueo, obteniendo de nuevo todas las SDUn).
— Coneatenacion: Es una operacién realizada por un nivel-(n)
mediante la cual, se hacen corresponder varias PDUs-(n)
en una sola SDU-(n — 1). En el extremo receptor se realiza
tuna separacién, recobrando de nuevo todas las PDUs-(n),
REFERENCIAS
[1] CCITT: Redes de comuicacién de datos. Interconexion de sistemas atierto.
Rees X.220 a X.290, Union Internacional de Telecomunicaciones, Ginebra
1992.
[2] Garniwo Det SoTo, A.: Interconesién de sistemas abiertos, Servicio de pu-
blicaciones de la E.U. Politécnica de Albacete, Albaccte, 1990.
[3] Garnivo DEL Soto, A. y JULIAN IRANZO, P.: Uullizacton, gestiin y mante-
nimiento de XODIAC, Dpio. de Ingenieria Eléctrica, Electronica y Arqui-
fectura de Computadores, Albacets, 1989,
[4] HALSALL, F.: Data communications, computer networks and OSI, Addison
Wesley, New York, 1992
[5] STALLINGS, W. data and computer communications, McMillan International
Editions, New York, 1991.
[6] TANENBAUM, A.: Teleinformética y redes de computadores, Addisor. Wes-
ley, New York, 1991.
7