Está en la página 1de 24

2 Nivel de aplicacin

23

2 Nivel de aplicacin
2.1 Introduccin
El objetivo de los primeros captulos de este libro es presentar los elementos tericos bsicos para especificar y disear aplicaciones en las cuales se procese informacin de una forma distribuida. Para ello es necesario disponer de una serie de funcionalidades orientadas a resolver los problemas relacionados con la distribucin. Estos recursos los proporcionan los sietes niveles del modelo de interconexin de sistemas abiertos (OSI, Open Systems Interconnection) de ISO. Los niveles inferiores del modelo OSI (niveles fsico, enlace, red y transporte), o niveles orientados a la comunicacin, proporcionan los medios necesarios para la transmisin fiable de datos. Los niveles superiores del modelo OSI (niveles sesin, presentacin y aplicacin), o niveles orientados a la aplicacin, proporcionan una serie de servicios para la gestin y sincronizacin del dilogo, la transferencia estndar de estructuras de datos, etc.

El ltimo nivel del modelo OSI es el nivel de aplicacin, que proporciona los servicios necesarios para que una aplicacin pueda gestionar informacin distribuida, facilitando los medios adecuados para acceder al resto de niveles. En una aplicacin distribuida se pueden distinguir dos partes diferenciadas: la aplicacin propiamente dicha y la parte que realiza el acceso a los recursos de comunicacin. Es este ltimo aspecto el que diferencia una aplicacin local de su versin distribuida, y es este aspecto del diseo de aplicaciones distribuidas el que se trata en los primeros captulos de este libro.

los autores, 1998; Edicions UPC, 1998. Quedan rigurosamente prohibidas, sin la autorizacin escrita de los titulares del "copyright", bajo las sanciones establecidas en las leyes, la reproduccin total o parcial de esta obra por cualquier medio o procedimiento, comprendidos la reprografa y el tratamiento informtico, y la distribucin de ejemplares de ella mediante alquiler o prstamo pblicos, as como la exportacin e importacin de ejemplares para su distribucin y venta fuera del mbito de la Unin Europea.

24

Aplicaciones distribuidas abiertas

2.2 Estructura del nivel de aplicacin


El propsito del nivel de aplicacin es servir como intermediario entre procesos de aplicacin de usuario que estn utilizando los recursos OSI para intercambiar informacin (vase la figura 2.1).

Proceso Aplicacin Usuario Protocolo de aplicacin

Proceso Aplicacin Usuario

Nivel de aplicacin

Nivel de aplicacin

Proveedor del servicio de presentacin

Fig. 2.1 Procesos de aplicacin de usuario y nivel de aplicacin

Se define un proceso de aplicacin (AP, Application Process) como un elemento dentro de un sistema abierto que realiza el procesado distribuido de informacin (es decir, que implica comunicacin) para una determinada aplicacin. Los procesos de aplicacin intercambian informacin por medio de entidades de aplicacin que implementan protocolos de aplicacin utilizando servicios de presentacin. Una entidad de aplicacin (AE, Application Entity) define los aspectos concernientes a la comunicacin de un proceso de aplicacin. Las entidades de aplicacin intercambian informacin por medio de unidades de datos del protocolo de aplicacin (APDU, Application Protocol Data Unit) (vase la figura 2.2). En el caso ms general, un proceso de aplicacin puede definir varios tipos de intercambio de informacin. Por lo tanto, su comunicacin tendr varios aspectos que se implementarn mediante diferentes AE. Para la mayor parte de las aplicaciones distribuidas es suficiente una nica entidad de aplicacin. Para que dos entidades de aplicacin puedan cooperar es necesario establecer previamente una asociacin de aplicacin o simplemente una asociacin (Application Association). El concepto de asociacin en el nivel de aplicacin equivale al concepto de conexin en el resto de niveles del modelo OSI. Una asociacin se mapea directamente sobre una conexin de presentacin. La entidad de aplicacin que toma la iniciativa de establecer la asociacin es la entidad que inicia la asociacin (Initiator Entity) y la que acepta o rechaza la asociacin es la entidad que responde (Responder Entity). Una entidad de aplicacin consta de un elemento de usuario (UE, User Element) y un conjunto de elementos de servicio de aplicacin (ASE, Application Service Element) (vase la figura 2.2).

los autores, 1998; Edicions UPC, 1998. Quedan rigurosamente prohibidas, sin la autorizacin escrita de los titulares del "copyright", bajo las sanciones establecidas en las leyes, la reproduccin total o parcial de esta obra por cualquier medio o procedimiento, comprendidos la reprografa y el tratamiento informtico, y la distribucin de ejemplares de ella mediante alquiler o prstamo pblicos, as como la exportacin e importacin de ejemplares para su distribucin y venta fuera del mbito de la Unin Europea.

2 Nivel de aplicacin

25

El elemento de usuario (UE, User Element) representa aquella parte de la entidad de aplicacin que coordina los elementos de servicio de aplicacin (ASE) necesarios para llevar a cabo los objetivos de comunicacin de dicho proceso de aplicacin. Es decir, gestiona los diferentes ASE que constituyen dicha AE y adems es el interfaz con el proceso de aplicacin de usuario. Un elemento de servicio de aplicacin (ASE, Application Service Element) es aquella parte de una entidad de aplicacin que proporciona una funcin particular en el entorno OSI. Para ello, si es necesario, puede utilizar los servicios proporcionados por otros ASE o por los niveles inferiores. Un ASE no es ms que un conjunto de funciones que permiten a las AE cooperar para un determinado propsito.

Proceso Aplicacin Usuario AE UE ASE 1 ... ASE n Protocolos de aplicacin (APDU) AE

Proceso Aplicacin Usuario

UE ASE 1 ... ASE n

Conexin de presentacin

Fig. 2.2 Estructura de una entidad de aplicacin

Un ASE queda definido por un servicio y un protocolo. Por lo tanto, cada ASE genera sus propias APDUs y define diferentes sintaxis abstractas y de transferencia, con lo que da lugar a diferentes contextos de presentacin. En el nivel de aplicacin no se puede hablar de un protocolo de aplicacin nico sino de un conjunto de protocolos de aplicacin, uno para cada par de ASE residentes en entidades de aplicacin remotas. Algunos ASE son obligatorios, es decir, siempre deben formar parte de cualquier entidad de aplicacin, mientras que otros son opcionales. En OSI, el usuario del servicio de presentacin es siempre un ASE. Se define un contexto de aplicacin (AC, Application Context) como el conjunto de servicios y protocolos de aplicacin utilizados por una entidad de aplicacin en una asociacin. Bsicamente indica el conjunto de ASE que componen el proceso de aplicacin definiendo implcitamente los protocolos (vase la figura 2.3). Los ASE que constituyen una entidad de aplicacin pueden ser iguales en los dos extremos y reciben el nombre de ASE simtricos, o complementarios y reciben el nombre de ASE asimtricos. En los ASE asimtricos uno tiene el papel de consumidor o cliente y el otro el papel de suministrador o servidor del servicio (vase el apartado 3.1.1 correspondiente a la arquitectura cliente/servidor).

los autores, 1998; Edicions UPC, 1998. Quedan rigurosamente prohibidas, sin la autorizacin escrita de los titulares del "copyright", bajo las sanciones establecidas en las leyes, la reproduccin total o parcial de esta obra por cualquier medio o procedimiento, comprendidos la reprografa y el tratamiento informtico, y la distribucin de ejemplares de ella mediante alquiler o prstamo pblicos, as como la exportacin e importacin de ejemplares para su distribucin y venta fuera del mbito de la Unin Europea.

26

Aplicaciones distribuidas abiertas

Proceso Aplicacin Usuario AE UE ASE ASE Protocolo de aplicacin AE

Proceso Aplicacin Usuario

UE ASE ASE ROSE

ROSE RTSE ACSE

RTSE ACSE

Conexin de presentacin

Fig. 2.3 Estructura de un contexto de aplicacin

Un elemento de servicio de aplicacin (ASE) puede ser de dos tipos: comn especfico

Los ASE comunes son aqullos que ofrecen una funcionalidad que la mayor parte de aplicaciones distribuidas utilizan. Por esta razn se crey conveniente estandarizarlos y se ofrecen como un recurso comn en los entornos de desarrollo de aplicaciones distribuidas. As el diseador puede utilizar estos ASEs comunes y concentrarse en el diseo de la aplicacin propiamente dicha. Los ASE especficos son aquella parte de una entidad de aplicacin que implementan las funcionalidades concretas del sistema distribuido que se est diseando y son la parte que diferencia unas aplicaciones de otras. Se han normalizado varios ASE comunes. Los ms utilizados son: ACSE (Association Control Service Element). Se encarga de la gestin de asociaciones entre entidades de aplicacin. RTSE (Reliable Transfer Service Element). Realiza la transferencia fiable y masiva de APDU. ROSE (Remote Operation Service Element). Se utiliza para implementar interacciones del tipo peticin/respuesta (paradigma cliente/servidor).

Estos ASE comunes no son los nicos que se han normalizado, pero a lo largo del libro solamente se va a hacer referencia a estos tres.

los autores, 1998; Edicions UPC, 1998. Quedan rigurosamente prohibidas, sin la autorizacin escrita de los titulares del "copyright", bajo las sanciones establecidas en las leyes, la reproduccin total o parcial de esta obra por cualquier medio o procedimiento, comprendidos la reprografa y el tratamiento informtico, y la distribucin de ejemplares de ella mediante alquiler o prstamo pblicos, as como la exportacin e importacin de ejemplares para su distribucin y venta fuera del mbito de la Unin Europea.

2 Nivel de aplicacin

27

La figura 2.3 ilustra el concepto de contexto de aplicacin. Se puede observar que existe una relacin entre los ASE comunes y especficos que constituyen una entidad de aplicacin.

2.3 Direccionamiento en el nivel de aplicacin


Para establecer una asociacin entre dos entidades de aplicacin es necesario poder direccionar una entidad de aplicacin dentro del entorno OSI. Para conseguirlo se utilizan, a nivel de direccionamiento, dos informaciones: contexto de aplicacin (AC) ttulo de la entidad de aplicacin (AE-Title)

El contexto de aplicacin determina el conjunto de protocolos a soportar, pero es en el establecimiento de la asociacin donde se concreta el conjunto de protocolos que se van a utilizar en esa asociacin. El ttulo de un proceso de aplicacin (AP-Title, Application Process Title) identifica un proceso de aplicacin concreto dentro del entorno OSI. Un calificador de entidad de aplicacin (AE-Qualifier, Application Entity Qualifier) identifica una entidad de aplicacin en particular dentro de un proceso de aplicacin. El ttulo de una entidad de aplicacin (AE-Title, Application Entity Title) identifica una entidad de aplicacin concreta dentro del entorno OSI y est formado por: AE-Title = AP-Title + AE-Qualifier En la prctica, como dentro de un proceso de aplicacin (AP) se dispone nicamente de una entidad de aplicacin (EA), es suficiente con disponer de AP-Title con lo que, al no utilizar el AE-Qualifier, el AP-Title y el AE-Title coinciden. Normalmente, estas estructuras de datos de direccionamiento son del tipo OBJECT IDENTIFIER de ASN.1. A partir de la informacin de direccionamiento de aplicacin, normalmente el AP-Title, se debe obtener la direccin de presentacin, a partir de la cual se puede obtener la direccin de red. Este proceso puede ser local mediante un mapeo, en cuyo caso se est utilizando un mtodo no estndar, o normalizado utilizando el servicio de directorio estndar (X.500) donde, a partir de un nombre distintivo, como AP-Title, es posible obtener la direccin de presentacin. (vase el captulo 5).

2.4 ACSE (Elemento de servicio de control de asociacin)


El elemento de servicio de control de asociacin (ACSE, Association Control Service Element) es el encargado de suministrar facilidades para la gestin de asociaciones entre entidades de aplicacin que se comunican a travs de una conexin de presentacin. El elemento de servicio comn ACSE es

los autores, 1998; Edicions UPC, 1998. Quedan rigurosamente prohibidas, sin la autorizacin escrita de los titulares del "copyright", bajo las sanciones establecidas en las leyes, la reproduccin total o parcial de esta obra por cualquier medio o procedimiento, comprendidos la reprografa y el tratamiento informtico, y la distribucin de ejemplares de ella mediante alquiler o prstamo pblicos, as como la exportacin e importacin de ejemplares para su distribucin y venta fuera del mbito de la Unin Europea.

28

Aplicaciones distribuidas abiertas

obligatorio, es decir, debe formar parte de cualquier entidad de aplicacin. Existe una correspondencia uno a uno entre una conexin de presentacin y una asociacin de aplicacin. Los estndares [ACS0192] y [ACS0194] definen el servicio de ACSE, y [ACS0288] y [ACS0391] describen el protocolo.

2.4.1 Servicio El servicio ACSE asume que se dispone como mnimo de la unidad funcional Kernel de presentacin. Los servicios que suministra ACSE son los siguientes: Servicio A-ASSOCIATE A-RELEASE A-ABORT A-P-ABORT Tipo Confirmado Confirmado No confirmado No confirmado (iniciado por el proveedor)

A-ASSOCIATE El servicio A-ASSOCIATE sirve para establecer una asociacin y es un servicio confirmado (Fig. 2.4). Mediante los parmetros del servicio A-ASSOCIATE se especifica, entre otras cosas, el contexto de aplicacin, la lista de contextos de presentacin vlidos para cada ASE y el contexto de presentacin por defecto para una asociacin determinada.

Usuario ACSE

Proveedor ACSE

Usuario ACSE

A-ASSOCIATE.request A-ASSOCIATE.indication A-ASSOCIATE.response A-ASSOCIATE.confirm

Fig 2.4 Primitivas del servicio A-ASSOCIATE de ACSE

El servicio A-ASSOCIATE tiene los siguientes parmetros: modo: normal o X.410-1984 contexto de aplicacin ttulo de la entidad de aplicacin iniciadora

los autores, 1998; Edicions UPC, 1998. Quedan rigurosamente prohibidas, sin la autorizacin escrita de los titulares del "copyright", bajo las sanciones establecidas en las leyes, la reproduccin total o parcial de esta obra por cualquier medio o procedimiento, comprendidos la reprografa y el tratamiento informtico, y la distribucin de ejemplares de ella mediante alquiler o prstamo pblicos, as como la exportacin e importacin de ejemplares para su distribucin y venta fuera del mbito de la Unin Europea.

2 Nivel de aplicacin

29

ttulo de la entidad de aplicacin llamada ttulo de la entidad de aplicacin que responde (opcional) informacin de usuario resultado diagnstico (slo si se ha rechazado la asociacin) direccin de la entidad de presentacin iniciadora direccin de la entidad de presentacin llamada direccin de la entidad de aplicacin que responde (opcional) lista de contextos de presentacin: inicial y resultante contexto de presentacin por defecto: inicial y resultante calidad de servicio parmetros relacionados con presentacin y sesin: tokens, puntos de sincronizacin, etc.

Estos parmetros aparecen en las cuatro primitivas del servicio A-ASSOCIATE. De todas formas, existen algunas pequeas diferencias entre los parmetros de cada una de las primitivas en lo que hace referencia a la opcionalidad. El parmetro modo selecciona entre un modo de funcionamiento de ACSE normal, que adems es el valor por defecto, y un modo de funcionamiento especfico para mensajera electrnica. Con el parmetro contexto de aplicacin, el iniciador de la asociacin propone un contexto de aplicacin para la asociacin que solicita. A continuacin hay una serie de parmetros donde se identifican las entidades de aplicacin que inicia y acepta la asociacin. El ttulo de la entidad de aplicacin consta del ttulo del proceso de aplicacin y el calificador de la entidad de aplicacin. El campo de informacin de usuario lo pueden utilizar indistintamente las dos entidades para incluir informacin (por ejemplo, credenciales de autenticacin, etc.). El parmetro resultado contiene informacin relativa al resultado de la negociacin del establecimiento de la asociacin: aceptada, rechazada de forma transitoria o rechazada de forma permanente. El parmetro diagnstico indica la causa del rechazo de la asociacin si as lo indica el parmetro resultado; los valores pueden ser no existe razn aparente, contexto de aplicacin no soportado y ttulo de la entidad de aplicacin iniciadora o llamada desconocido. El resto son parmetros relacionados con los niveles de presentacin y sesin. El servicio A-ASSOCIATE se mapea directamente sobre el servicio P-CONNECT de presentacin. La entidad de aplicacin que ha generado la primitiva A-ASSOCIATE.request antes de recibir AASSOCIATE.confirmation slo puede utilizar el servicio A-ABORT.

A-RELEASE El servicio A-RELEASE, que es confirmado, es una liberacin ordenada y sirve para finalizar una asociacin sin prdida de informacin en trnsito (Fig. 2.5). La liberacin de una asociacin puede iniciarla cualquiera de las dos entidades de aplicacin.

los autores, 1998; Edicions UPC, 1998. Quedan rigurosamente prohibidas, sin la autorizacin escrita de los titulares del "copyright", bajo las sanciones establecidas en las leyes, la reproduccin total o parcial de esta obra por cualquier medio o procedimiento, comprendidos la reprografa y el tratamiento informtico, y la distribucin de ejemplares de ella mediante alquiler o prstamo pblicos, as como la exportacin e importacin de ejemplares para su distribucin y venta fuera del mbito de la Unin Europea.

30

Aplicaciones distribuidas abiertas

Usuario ACSE

Proveedor ACSE

Usuario ACSE

A-RELEASE.request A-RELEASE.indication A-RELEASE.response A-RELEASE.confirm

Fig 2.5 Primitivas del servicio A-RELEASE de ACSE

Los parmetros de las primitivas del servicio A-RELEASE son: Causa de la liberacin Informacin de usuario Resultado: afirmativo o negativo

El parmetro causa de la liberacin, si figura en al primitiva A-RELEASE.request, puede tener los valores normal, urgente o definido por el usuario, pero si es un parmetro de la primitiva ARELEASE.response, los valores posibles son: normal, no finalizada o definida por el usuario. El parmetro resultado lo utiliza la entidad de aplicacin que acepta la asociacin para indicar la aceptacin o rechazo de la liberacin de la asociacin. El servicio A-RELEASE se mapea directamente sobre el servicio P-RELEASE de presentacin.

A-ABORT El servicio A-ABORT lo utiliza el usuario de ACSE para liberar una asociacin de forma abrupta. Es un servicio no confirmado (Fig. 2.6).

Usuario ACSE

Proveedor ACSE

Usuario ACSE

A-ABORT.request A-ABORT.indication

Fig. 2.6 Primitivas del servicio A-ABORT de ACSE

los autores, 1998; Edicions UPC, 1998. Quedan rigurosamente prohibidas, sin la autorizacin escrita de los titulares del "copyright", bajo las sanciones establecidas en las leyes, la reproduccin total o parcial de esta obra por cualquier medio o procedimiento, comprendidos la reprografa y el tratamiento informtico, y la distribucin de ejemplares de ella mediante alquiler o prstamo pblicos, as como la exportacin e importacin de ejemplares para su distribucin y venta fuera del mbito de la Unin Europea.

2 Nivel de aplicacin

31

Los parmetos de las primitivas del servicio A-ABORT son los siguientes: Origen del aborto: usuario de ACSE o proveedor del servicio ACSE Informacin de usuario

El primer parmetro, como su nombre indica, contiene informacin del origen de la liberacin. El campo de informacin de usuario pueden utilizarlo las entidades de aplicacin para incluir informacin cuyo significado depende del contexto de aplicacin. El servicio A-ABORT se mapea directamente sobre el servicio P-U-ABORT de presentacin. Una vez generada la primitiva A-ABORT.request, para el iniciador la asociacin ha sido liberada. El proveedor del servicio ACSE puede utilizar el servicio A-ABORT para liberar una asociacin por problemas internos del protocolo de aplicacin.

A-P-ABORT El servicio A-P-ABORT se utiliza para liberar una asociacin de forma abrupta fruto de una iniciativa del proveedor del servicio. El servicio A-P-ABORT es un servicio no confirmado que consta de una sola primitiva A-PABORT.indication, y que inicia el proveedor del servicio ACSE (Fig. 2.7). El proveedor del servicio ACSE utiliza este servicio para indicar que se ha producido una liberacin de la asociacin anmala, normalmente debida a problemas en los niveles inferiores. Esta situacin puede originar prdida de informacin en trnsito. El nico parmetro de la primitiva de servicio A-P-ABORT.indication es: Causa del aborto iniciado por el proveedor

Usuario ACSE

Proveedor ACSE

Usuario ACSE

A-P-ABORT.indication

A-P-ABORT.indication

Figura 2.7 Primitivas del servicio A-P-ABORT de ACSE

El servicio A-P-ABORT de ACSE se mapea directamente sobre el servicio P-P-ABORT de presentacin.

los autores, 1998; Edicions UPC, 1998. Quedan rigurosamente prohibidas, sin la autorizacin escrita de los titulares del "copyright", bajo las sanciones establecidas en las leyes, la reproduccin total o parcial de esta obra por cualquier medio o procedimiento, comprendidos la reprografa y el tratamiento informtico, y la distribucin de ejemplares de ella mediante alquiler o prstamo pblicos, as como la exportacin e importacin de ejemplares para su distribucin y venta fuera del mbito de la Unin Europea.

32

Aplicaciones distribuidas abiertas

2.4.2 Protocolo El protocolo ACSE describe la transferencia de informacin entre entidades de aplicacin para la gestin de asociaciones, es decir, las unidades de datos de aplicacin (APDU). El protocolo ACSE consta de los siguientes elementos de protocolo: Establecimiento de una asociacin Liberacin normal de una asociacin Liberacin abrupta de una asociacin

Las unidades de datos del protocolo de aplicacin (APDU) de ACSE son las siguientes: AARQ AARE RLRQ RLRE ABRT A-ASSOCIATE-REQUEST A-ASSOCIATE-RESPONSE A-RELEASE-REQUEST A-RELEASE-RESPONSE A-ABORT

La fase de establecimiento de una asociacin utiliza las APDU AARQ y AARE, la fase de liberacin normal RLRQ y RLRE, y la fase de liberacin abrupta utiliza la APDU ABRT. A continuacin se muestra una tabla donde aparecen las primitivas de servicio de ACSE y las correspondientes APDU que las transportan. Primitiva ACSE A-ASSOCIATE.request/indication A-ASSOCIATE.response/confirmation A-RELEASE.request/indication A-RELEASE.response/confirmation A-ABORT.request/indication A-P-ABORT.indication APDU AARQ AARE RLRQ RLRE ABRT ---

Para hacerse una idea de la complejidad del protocolo ACSE, la mquina de protocolo de control de asociaciones consta de ocho estados, del orden de 40 transacciones, 15 eventos entrantes y otros tantos salientes.

2.5 RTSE (Elemento de servicio de transferencia fiable)


El elemento de servicio comn RTSE (Reliable Transfer Service Element) es el encargado de suministrar facilidades para la transferencia de APDU de gran tamao, garantizando la recepcin ntegra y nica de las APDU en el otro extremo. El elemento de servicio RTSE es opcional, es decir, puede formar parte o no de una entidad de aplicacin. En el caso de que est presente, es el encargado de manejar el elemento de servicio ACSE para la gestin de asociaciones, y del nivel de

los autores, 1998; Edicions UPC, 1998. Quedan rigurosamente prohibidas, sin la autorizacin escrita de los titulares del "copyright", bajo las sanciones establecidas en las leyes, la reproduccin total o parcial de esta obra por cualquier medio o procedimiento, comprendidos la reprografa y el tratamiento informtico, y la distribucin de ejemplares de ella mediante alquiler o prstamo pblicos, as como la exportacin e importacin de ejemplares para su distribucin y venta fuera del mbito de la Unin Europea.

2 Nivel de aplicacin

33

presentacin para la transferencia de APDU. El estndar [RTS0189] define el servicio de RTSE, y [RTS0289] describe el protocolo. RTSE proporciona un mecanismo independiente de la aplicacin para recuperarse de fallos durante el proceso de transmisin de la informacin, minimizando el nmero de retransmisiones. De esta forma, libera al diseador de aplicaciones distribuidas de tener que preocuparse por la gestin de las facilidades que suministra sesin, a travs de presentacin, para recuperarse de dicho tipo de problemas.

2.5.1 Servicio El servicio RTSE utiliza el servicio de ACSE para gestionar asociaciones, y asume que se dispone como mnimo del subconjunto bsico de actividades de sesin (BAS) accesible a travs del servicio de presentacin. Recordar que el servicio de sesin BAS consta de las unidades funcionales: kernel, half-duplex, datos tipificados, datos con capacidad, puntos de sincronizacin menor, excepciones y actividades. Los servicios que suministra RTSE son los siguientes: Servicio RT-OPEN RT-TRANSFER RT-TURN-PLEASE RT-TURN-GIVE RT-CLOSE RT-U-ABORT RT-P-ABORT Tipo Confirmado Confirmado (Slo solicitud, indicacin y confirmacin) No confirmado No confirmado Confirmado No confirmado No confirmado (Slo indicacin)

RT-OPEN El servicio RT-OPEN, que es confirmado, utiliza el elemento de servicio ACSE para establecer una asociacin, concretamente mediante el servicio A-ASSOCIATE (Fig. 2.8).

Usuario RTSE

Proveedor RTSE

Usuario RTSE

RT-OPEN.request RT-OPEN.indication RT-OPEN.response RT-OPEN.confirmation

Fig 2.8 Primitivas del servicio RT-OPEN de RTSE

los autores, 1998; Edicions UPC, 1998. Quedan rigurosamente prohibidas, sin la autorizacin escrita de los titulares del "copyright", bajo las sanciones establecidas en las leyes, la reproduccin total o parcial de esta obra por cualquier medio o procedimiento, comprendidos la reprografa y el tratamiento informtico, y la distribucin de ejemplares de ella mediante alquiler o prstamo pblicos, as como la exportacin e importacin de ejemplares para su distribucin y venta fuera del mbito de la Unin Europea.

34

Aplicaciones distribuidas abiertas

El servicio RT-OPEN tiene los siguientes parmetros: Modo de dilogo: monlogo o alternativo (TWA, Two-way-alternate) Turno inicial Protocolo de aplicacin Datos de usuario Parmetros relacionados con ACSE Parmetros relacionados con presentacin y sesin

El primero de los parmetros especficos relacionados con el servicio RT-OPEN es el modo del dilogo, que puede ser monlogo, es decir, que nicamente la entidad que est inicialmente en posesin del turno puede transmitir APDU, o TWA, donde las dos entidades pueden hacerlo alternativamente siempre y cuando estn en posesin del turno, el cual puede intercambiarse. Otro parmetro nuevo es el turno inicial, que lo puede poseer la entidad que inicia o la que responde la asociacin. El parmetro protocolo de aplicacin slo tiene sentido en el modo X.410-1984 (vase el apartado 2.4 relacionado con ACSE). El parmetro datos de usuario se puede utilizar para almacenar informacin relacionada con el proceso de establecimiento de la asociacin de aplicacin. El resto de parmetros son los mismos que se han descrito en el apartado 2.4.1, correspondiente a ACSE.

RT-TRANSFER El servicio RT-TRANSFER lo utiliza el usuario de RTSE que est en posesin del turno para transmitir APDU de forma fiable mediante una asociacin de aplicacin. Normalmente, los servicios confirmados constan de cuatro primitivas; en cambio, el servicio RT-TRANSFER slo tiene tres primitivas (vase la figura 2.9). La razn es que una APDU se transmite dentro de una actividad, por lo que la finalizacin de la actividad con normalidad significa que la APDU ha sido transferida correctamente por el proveedor de RTSE. Es el protocolo RTSE el que garantiza que la APDU se ha transmitido, por lo que el usuario receptor no necesita confirmarlo, ya que lo hace directamente el proveedor de RTSE (vase el apartado 2.5.2 correspondiente al protocolo RTSE).

Usuario RTSE

Proveedor RTSE

Usuario RTSE

RT-TRANSFER.request RT-TRANSFER.indication RT-TRANSFER.confirmation

Fig. 2.9 Primitivas del servicio RT-TRANSFER de RTSE

Los parmetros del servicio RT-TRANSFER son: APDU a transmitir

los autores, 1998; Edicions UPC, 1998. Quedan rigurosamente prohibidas, sin la autorizacin escrita de los titulares del "copyright", bajo las sanciones establecidas en las leyes, la reproduccin total o parcial de esta obra por cualquier medio o procedimiento, comprendidos la reprografa y el tratamiento informtico, y la distribucin de ejemplares de ella mediante alquiler o prstamo pblicos, as como la exportacin e importacin de ejemplares para su distribucin y venta fuera del mbito de la Unin Europea.

2 Nivel de aplicacin

35

Tiempo mximo de transferencia estimado Resultado de la transferencia: positivo o negativo

El primer parmetro contiene la APDU que se desea transmitir, el segundo define el tiempo mximo estimado para la transferencia de la APDU; es decir, el tiempo que transcurre entre que el usuario de RTSE invoca el servicio RT-TRANSFER con la primitiva RT-TRANSFER.request y el mismo usuario recibe la confirmacin con la primitiva RT-TRANSFER.confirmation. El parmetro resultado contiene informacin respecto al xito o fracaso de la transferencia de la APDU. El caso en que el resultado es negativo significa que el proveedor de RTSE no ha podido entregar la APDU en el tiempo de transferencia especificado, mientras que si el resultado es positivo, significa que el proveedor de RTSE ha podido entregar de forma fiable la APDU al usuario de RTSE remoto. El servicio RT-TRANSFER desencadena la utilizacin de una serie de servicios de presentacin que hacen posible que la transferencia de APDU se realice dentro de una actividad (vase el apartado 2.5.2, correspondiente al protocolo RTSE).

RT-TURN-PLEASE El servicio RT-TURN-PLEASE es no confirmado, y lo utiliza el usuario de RTSE de la entidad de aplicacin que quiere transmitir APDU para conseguir el turno si no lo tiene (vase la figura 2.10). Tambin lo debe utilizar el usuario de RTSE de la entidad de aplicacin iniciadora de la asociacin para liberarla.

Usuario RTSE

Proveedor RTSE

Usuario RTSE

RT-TURN-PLEASE.request RT-TURN-PLEASE.indication

Fig. 2.10 Primitivas del servicio RT-TURN-PLEASE de RTSE

El servicio RT-TURN-PLEASE slo tiene un parmetro, que es la prioridad asociada a la accin para la que se solicita el turno. Con esta informacin, el usuario de RTSE remoto puede decidir cundo entrega el turno. La prioridad cero indica la prioridad ms alta y se reserva para liberar la asociacin. El servicio RT-TURN-PLEASE se mapea sobre el servicio de presentacin P-TOKEN-PLEASE.

RT-TURN-GIVE El servicio RT-TURN-GIVE, que es no confirmado, permite a un usuario de RTSE de una entidad de aplicacin entregar el turno al usuario de RTSE remoto, siempre y cuando est en posesin del turno

los autores, 1998; Edicions UPC, 1998. Quedan rigurosamente prohibidas, sin la autorizacin escrita de los titulares del "copyright", bajo las sanciones establecidas en las leyes, la reproduccin total o parcial de esta obra por cualquier medio o procedimiento, comprendidos la reprografa y el tratamiento informtico, y la distribucin de ejemplares de ella mediante alquiler o prstamo pblicos, as como la exportacin e importacin de ejemplares para su distribucin y venta fuera del mbito de la Unin Europea.

36

Aplicaciones distribuidas abiertas

y no est pendiente de la finalizacin de un servicio de transferencia de APDU (RT-TRANSFER) (vase la figura 2.11).

Usuario RTSE

Proveedor RTSE

Usuario RTSE

RT-TURN-GIVE.request RT-TURN-GIVE.indication

Fig. 2.11 Primitivas del servicio RT-TURN-GIVE de RTSE

El servicio RT-TURN-GIVE no tiene parmetros y se mapea directamente sobre el servicio de presentacin P-CONTROL-GIVE.

RT-CLOSE El servicio RT-CLOSE, que es confirmado, permite al usuario de RTSE liberar de forma ordenada una asociacin de aplicacin (vase la figura 2.12). La liberacin slo puede realizarla el usuario de RTSE de la entidad iniciadora de la asociacin cuando est en posesin del turno y no tiene pendiente la finalizacin de una transferencia de APDU (recepcin de RTTRANSFER.confirmation). El usuario de RTSE de la entidad de aplicacin que responde la asociacin no puede rechazar la liberacin.

Usuario RTSE

Proveedor RTSE

Usuario RTSE

RT-CLOSE.request RT-CLOSE.indication RT-CLOSE.response RT-CLOSE.confirmation

Fig. 2.12 Primitivas del servicio RT-CLOSE de RTSE

Los parmetros de las primitivas del servicio RT-CLOSE son: Causa de la liberacin Informacin de usuario

Estos parmetros nicamente tienen sentido en modo de operacin normal, ya que en modo X.4101984 no existen parmetros.

los autores, 1998; Edicions UPC, 1998. Quedan rigurosamente prohibidas, sin la autorizacin escrita de los titulares del "copyright", bajo las sanciones establecidas en las leyes, la reproduccin total o parcial de esta obra por cualquier medio o procedimiento, comprendidos la reprografa y el tratamiento informtico, y la distribucin de ejemplares de ella mediante alquiler o prstamo pblicos, as como la exportacin e importacin de ejemplares para su distribucin y venta fuera del mbito de la Unin Europea.

2 Nivel de aplicacin

37

El servicio RT-CLOSE de RTSE se mapea directamente sobre el servicio A-RELEASE de ACSE, que a su vez se mapea sobre el servicio P-RELEASE de presentacin.

RT-U-ABORT El servicio RT-U-ABORT lo pueden utilizar los dos usuarios de RTSE para liberar una asociacin de forma abrupta, y utiliza los servicios equivalentes de ACSE. El servicio RT-U-ABORT es un servicio no confirmado (vase la figura 2.13).
Usuario RTSE Proveedor RTSE Usuario RTSE

RT-U-ABORT.request RT-U-ABORT.indication

Fig. 2.13 Primitivas del servicio RT-U-ABORT de RTSE

El servicio RT-U-ABORT slo tiene un parmetro, que es un campo de informacin del usuario que se utiliza para informar sobre el proceso de liberacin abrupta de la asociacin de aplicacin. El servicio RT-U-ABORT de RTSE se mapea directamente sobre el servicio A-ABORT de ACSE.

RT-P-ABORT El servicio RT-P-ABORT se utiliza para liberar una asociacin de forma abrupta fruto de una iniciativa del proveedor del servicio RTSE y, como en el caso anterior, lo hace utilizando el servicio equivalente de ACSE A-P-ABORT (vase la figura 2.14). El proveedor del servicio informa a los dos usuarios de RTSE que le es imposible mantener la asociacin de aplicacin.

Usuario RTSE

Proveedor RTSE

Usuario RTSE

RT-P-ABORT.indication

RT-P-ABORT.indication

Fig. 2.14 Primitivas del servicio RT-P-ABORT de RTSE

El servicio RT-P-ABORT, que no tiene parmetros, es un servicio no confirmado que consta de una sola primitiva (RT-P-ABORT.indication) que inicia el proveedor del servicio RTSE. El servicio RT-P-ABORT de RTSE se mapea directamente sobre el servicio A-P-ABORT de ACSE.

los autores, 1998; Edicions UPC, 1998. Quedan rigurosamente prohibidas, sin la autorizacin escrita de los titulares del "copyright", bajo las sanciones establecidas en las leyes, la reproduccin total o parcial de esta obra por cualquier medio o procedimiento, comprendidos la reprografa y el tratamiento informtico, y la distribucin de ejemplares de ella mediante alquiler o prstamo pblicos, as como la exportacin e importacin de ejemplares para su distribucin y venta fuera del mbito de la Unin Europea.

38

Aplicaciones distribuidas abiertas

2.5.2 Protocolo La mquina de protocolo de RTSE (RTPM, Reliable Transfer Protocol Machine), proporciona el servicio RTSE que se ha descrito en el apartado anterior utilizando el elemento de servicio ACSE y el servicio de presentacin. El protocolo RTSE consta de los siguientes elementos de protocolo: Establecimiento de una asociacin (que se realiza mediante ACSE) Transferencia de APDU Peticin y cesin de turno Liberacin de una asociacin: ordenada y abrupta (que se realiza mediante ACSE) Gestin de errores

Las unidades de datos del protocolo de aplicacin (APDU) de RTSE son las siguientes: RTORQ RTOAC RTORJ RTTR RTTP RTAB RT-OPEN-REQUEST RT-OPEN-ACCEPT RT-OPEN-REJECT RT-TRANSFER RT-TOKEN-PLEASE RT-P-ABORT y RT-U-ABORT

A continuacin se muestra una tabla donde se indica el mapeo entre las primitivas de servicio de RTSE y las primitivas de ACSE, as como las APDU que las transportan. Primitiva RTSE RT-OPEN.request/indication RT-OPEN.response/confirmation RT-OPEN.response/confirmation RT-CLOSE.request/indication RT-CLOSE.response/confirmation RT-U-ABORT.request/indication RT-P-ABORT.indication APDU RTORQ RTOAC RTORJ ----RTAB RTAB Primitiva ACSE A-ASSOCIATE.request/indication A-ASSOCIATE.response/confirmation A-ASSOCIATE.response/confirmation A-RELEASE.request/indication A-RELEASE.response/confirmation A-ABORT.request/indication A-P-ABORT.indication

Cuando un usuario de RTSE invoca el servicio RT-TRANSFER, la transferencia fiable de la APDU se realiza a nivel de presentacin dentro de una actividad (servicios P-ACTIVITY-START y PACTIVITY-END). Para poder transmitir la APDU ser necesario fraccionar la APDU en una serie de trozos de un determinado tamao que se habr negociado en la fase de establecimiento de la asociacin (espaciado entre puntos de sincronizacin). Para poder fraccionar la APDU primero es necesario serializar la informacin, para lo cual, la mquina de protocolo de RTSE deber obtener la sintaxis de transferencia y entregar cada fragmento al servicio de presentacin. A cada uno de estos fragmentos de la APDU original as obtenidos se le asigna el tipo OCTECT STRING de ASN.1, y se entregan al servicio de presentacin mediante tantas primitivas del servicio P-DATA como sea necesario. Con el objeto de facilitar las retransmisiones en caso de problemas, se va marcando la transmisin con puntos de sincronizacin menor (servicio P-MINOR-SYNC). El nmero de puntos

los autores, 1998; Edicions UPC, 1998. Quedan rigurosamente prohibidas, sin la autorizacin escrita de los titulares del "copyright", bajo las sanciones establecidas en las leyes, la reproduccin total o parcial de esta obra por cualquier medio o procedimiento, comprendidos la reprografa y el tratamiento informtico, y la distribucin de ejemplares de ella mediante alquiler o prstamo pblicos, as como la exportacin e importacin de ejemplares para su distribucin y venta fuera del mbito de la Unin Europea.

2 Nivel de aplicacin

39

de sincronizacin que pueden existir sin confirmar se negocia tambin en la fase de establecimiento de la asociacin (tamao de la ventana). La utilizacin de actividades a nivel de presentacin justifica que el servicio RT-TRANSFER tenga tres primitivas en vez de cuatro como tienen todos los servicios confirmados. Efectivamente, el hecho de que la actividad de presentacin acabe normalmente significa que la APDU se ha transmitido correctamente y se encuentra ntegra en el proveedor de RTSE remoto. Incluir una primitiva de respuesta a nivel de usuario de RTSE no aportara nada respecto a la transmisin de la APDU, pero en cambio introducira redundancia en la transmisin. En la figura 2.15 se ilustra grficamente la relacin entre la utilizacin por un usuario de RTSE del servicio RT-TRANSFER para transmitir una APDU, y los servicios de presentacin necesarios para transmitirla dentro de una actividad.

Usuario RTSE

Proveedor P-ACTIVITY-START . request

Usuario RTSE

RT-OPEN.request P-DATA.request

P-ACTIVITY-START . indication P-DATA.indication

P-SYNC-MINOR. request P-ACTIVITY-END. request P-SYNC-MINOR. indication P-ACTIVITY-END. indication RT-TRANSFER.indication P-ACTIVITY-END. response P-ACTIVITY-END. confirmation RT-OPEN.confirmation

Fig. 2.15 Transferencia fiable de una APDU de RTSE y su relacin con el nivel de presentacin

El proceso de serializacin de la informacin aplicando unas reglas de codificacin concretas para obtener una sintaxis de transferencia es una funcin del nivel de presentacin. En cambio se ha dicho que la mquina de protocolo de RTSE realiza dicha funcin cuando tiene que transferir una APDU. Esto vulnera la independencia de los niveles que preconiza ISO en su modelo de interconexin de sistemas abiertos y es una de las incoherencias que presenta el nivel de aplicacin. A continuacin se muestra una tabla donde aparece el mapeo entre las primitivas de RTSE y las primitivas de presentacin, as como tambin las APDU que las transportan. Primitiva RTSE RT-TRANSFER.request/indication APDU --RTTR ----Primitiva Presentacin P-ACTIVITY-START.request/indication P-DATA.request/indication P-MINOR-SYNCHRONIZE P-ACTIVITY-END

RT-TRANSFER.indication/confirmation

los autores, 1998; Edicions UPC, 1998. Quedan rigurosamente prohibidas, sin la autorizacin escrita de los titulares del "copyright", bajo las sanciones establecidas en las leyes, la reproduccin total o parcial de esta obra por cualquier medio o procedimiento, comprendidos la reprografa y el tratamiento informtico, y la distribucin de ejemplares de ella mediante alquiler o prstamo pblicos, as como la exportacin e importacin de ejemplares para su distribucin y venta fuera del mbito de la Unin Europea.

40

Aplicaciones distribuidas abiertas

RT-TURN-PLEASE.request/indication RT-TURN-GIVE.request/indication

RTTP ---

P-TOKEN-PLEASE.request/indication P-CONTROL-GIVE.request/indication

2.6 ROSE (Elemento de servicio de operaciones remotas)


El tercer elemento de servicio comn del nivel de aplicacin es ROSE (Remote Operations Service Element), que se utiliza para implementar aplicaciones distribuidas interactivas del tipo peticin/respuesta (paradigma cliente/servidor). Una entidad de aplicacin invoca la operacin remota (invoker entity) y la otra la realiza y genera un resultado (performer entity). El mecanismo de operaciones remotas se implementa utilizando el elemento de servicio comn de aplicacin ROSE. Los estndares [ROS0189] y [ROS1294] describen el servicio de ROSE y los estndares [ROS0289] y [ROS1394] el protocolo. La respuesta (reply) generada a partir de una solicitud (request) puede ser de tres tipos en funcin del resultado de la operacin remota. As, si se ha ejecutado correctamente, la respuesta ser un resultado; si se ha ejecutado pero sin xito, la respuesta ser un error; y la ltima posibilidad es que la operacin no se haya podido ejecutar por alguna razn, en ese caso la respuesta ser un rechazo (vase la figura 2.16).

AE Invoca operacin remota

Invocacin Resultado Rechazo Error

AE Realiza operacin remota

Fig 2.16 Modelo funcional para ROSE

Las operaciones remotas se pueden clasificar segn dos modos de funcionamiento llamados modo sncrono y modo asncrono. El modo sncrono consiste en la posibilidad de invocar las operaciones de forma secuencial, de forma que, cuando se lanza una operacin remota en modo sncrono, no se puede lanzar la siguiente hasta que no se ha recibido su correspondiente respuesta. En modo asncrono se pueden lanzar varias operaciones remotas sin necesidad de esperar las respectivas respuestas, sino que stas van llegando conforme se van produciendo. Las operaciones remotas tambin se pueden clasificar en cinco tipos o clases en funcin del modo de operacin que utilizan y el tipo de resultado que generan. La operacin clase 1 utiliza modo sncrono y genera siempre una respuesta, ya sea resultado o error. La operacin clase 2 utiliza modo asncrono y genera siempre una respuesta. La operacin clase 3 utiliza modo asncrono y slo genera un error si existe, y si se ejecuta correctamente no genera ninguna respuesta. Las operaciones clase 4 utilizan modo asncrono y slo generan un resultado, mientras que las de clase 5, que tambin utilizan modo asncrono, no devuelven ninguna respuesta en ningn caso (vase la figura 2.17).

los autores, 1998; Edicions UPC, 1998. Quedan rigurosamente prohibidas, sin la autorizacin escrita de los titulares del "copyright", bajo las sanciones establecidas en las leyes, la reproduccin total o parcial de esta obra por cualquier medio o procedimiento, comprendidos la reprografa y el tratamiento informtico, y la distribucin de ejemplares de ella mediante alquiler o prstamo pblicos, as como la exportacin e importacin de ejemplares para su distribucin y venta fuera del mbito de la Unin Europea.

2 Nivel de aplicacin

41

Invoca RO AE Invocacin Respuesta Invocacin Respuesta Invocaciones Clase 2 Respuestas Invocaciones Clase 3 Error Invocaciones Clase 4 Clase 5 Resultado Invocaciones

Realiza RO AE

Clase 1

Fig. 2.17 Clases de operaciones remotas de ROSE

En algunos casos es til disponer de la posibilidad de agrupar operaciones de forma que una operacin inicial, llamada operacin padre, desencadene como respuesta nuevas operaciones llamadas operaciones hijas. Se dice que las operaciones hijas estn enlazadas ("linked") con la operacin padre (vase la figura 2.18).

AE

invocacin de operacin padre invocacin de operacin hija

AE ejecucin de operacin padre ejecuta la operacin padre

ejecuta las operaciones hijas enlazadas

invocacin de operacin hija

Fig 2.18 Operaciones remotas enlazadas

2.6.1 Servicio Los servicios que ofrece ROSE son los siguientes: Servicio RO-INVOKE RO-RESULT Tipo No confirmado No confirmado

los autores, 1998; Edicions UPC, 1998. Quedan rigurosamente prohibidas, sin la autorizacin escrita de los titulares del "copyright", bajo las sanciones establecidas en las leyes, la reproduccin total o parcial de esta obra por cualquier medio o procedimiento, comprendidos la reprografa y el tratamiento informtico, y la distribucin de ejemplares de ella mediante alquiler o prstamo pblicos, as como la exportacin e importacin de ejemplares para su distribucin y venta fuera del mbito de la Unin Europea.

42

Aplicaciones distribuidas abiertas

RO-ERROR RO-REJECT-U RO-REJECT-P

No confirmado No confirmado (Iniciado por el usuario) No confirmado (Iniciado por el proveedor)

RO-INVOKE El servicio RO-INVOKE, que es no confirmado, lo utiliza un usuario de ROSE para invocar una operacin remota que deber ejecutar el usuario de ROSE remoto (vase la figura 2.19).

Usuario ROSE

Proveedor ROSE

Usuario ROSE

RO-INVOKE.request RO-INVOKE.indication

Fig. 2.19 Primitivas del servicio RO-INVOKE de ROSE

Los parmetros del servicio RO-INVOKE son los siguientes: Identificador de la operacin Clase de la operacin Argumento Identificador de la invocacin Identificador de la operacin enlazada Prioridad

El parmetro "identificador de la operacin" identifica la operacin que se va a invocar y tiene que ser el mismo para los dos usuarios de ROSE. El argumento "clase de la operacin" sirve para saber si se utiliza modo sncrono o asncrono y el tipo de respuesta esperada (resultado, error o rechazo); su uso permite optimizar la gestin del turno en el caso de que se utilice RTSE. El parmetro "argumento", como su nombre indica, es el argumento de la operacin invocada. El "identificador de la invocacin" sirve para asociar una respuesta a una invocacin cuando se trabaja en modo asncrono o para el caso de que existan operaciones enlazadas (o hijas). El parmetro "identificador de la operacin enlazada", que es opcional, si existe significa que la operacin invocada es una operacin hija y se utiliza para indicar la operacin padre. El parmetro "prioridad" se utiliza para asignar una escala de prioridades a las diferentes transferencias de APDU entre las entidades de aplicacin. El servicio RO-INVOKE de ROSE se mapea directamente sobre el servicio P-DATA del nivel de presentacin.

los autores, 1998; Edicions UPC, 1998. Quedan rigurosamente prohibidas, sin la autorizacin escrita de los titulares del "copyright", bajo las sanciones establecidas en las leyes, la reproduccin total o parcial de esta obra por cualquier medio o procedimiento, comprendidos la reprografa y el tratamiento informtico, y la distribucin de ejemplares de ella mediante alquiler o prstamo pblicos, as como la exportacin e importacin de ejemplares para su distribucin y venta fuera del mbito de la Unin Europea.

2 Nivel de aplicacin

43

RO-RESULT El servicio RO-RESULT lo utiliza el usuario de ROSE que ejecuta la operacin para devolver el resultado de la operacin solicitada en el caso de que sta se haya ejecutado con xito. Es un servicio no confirmado (vase la figura 2.20).

Usuario ROSE

Proveedor ROSE

Usuario ROSE

RO-RESULT.request RO-RESULT.indication

Fig. 2.20 Primitivas del servicio RO-RESULT de ROSE

Los parmetros del servicio RO-RESULT son los siguientes: Identificador de la operacin Resultado Identificador de la invocacin Prioridad

Los parmetros de las primitivas del servicio RO-RESULT, "identificador de la operacin" e "identificador de la invocacin", son los mismos que se han estudiado en la invocacin de la operacin con el servicio RO-INVOKE. Como su nombre indica, el parmetro "resultado" contiene el resultado de una invocacin remota ejecutada con xito. Finalmente, con el parmetro "prioridad" se asigna prioridad a la transferencia de la correspondiente APDU. El servicio RO-RESULT de ROSE se mapea directamente sobre el servicio P-DATA del nivel de presentacin.

RO-ERROR El servicio RO-ERROR, que es un servicio no confirmado, lo utiliza el usuario de ROSE que ejecuta la operacin para indicar al usuario que invoca la operacin solicitada que se ha ejecutado con errores (vase la figura 2.21). Los parmetros del servicio RO-RESULT son los siguientes: Identificador del error Parmetro del error Identificador de la invocacin Prioridad

los autores, 1998; Edicions UPC, 1998. Quedan rigurosamente prohibidas, sin la autorizacin escrita de los titulares del "copyright", bajo las sanciones establecidas en las leyes, la reproduccin total o parcial de esta obra por cualquier medio o procedimiento, comprendidos la reprografa y el tratamiento informtico, y la distribucin de ejemplares de ella mediante alquiler o prstamo pblicos, as como la exportacin e importacin de ejemplares para su distribucin y venta fuera del mbito de la Unin Europea.

44

Aplicaciones distribuidas abiertas

Usuario ROSE

Proveedor ROSE

Usuario ROSE

RO-ERROR.request RO-ERROR.indication

Fig. 2.21 Primitivas del servicio RO-ERROR de ROSE

El parmetro "identificador del error" identifica el tipo de error que se ha producido al ejecutar la operacin y en el parmetro "parmetro del error" el usuario de ROSE puede incluir informacin adicional respecto al error. Los parmetros "identificador de la invocacin" y "prioridad" son los mismos que se ha estudiado en la invocacin de la operacin mediante el servicio RO-INVOKE. El servicio RO-ERROR de ROSE se mapea directamente a nivel de presentacin mediante el servicio P-DATA.

RO-REJECT-U El servicio RO-REJECT-U lo puede utilizar un usuario de ROSE para indicar al otro usuario de ROSE que no puede ejecutar la operacin remota solicitada mediante el servicio RO-INVOKE, al detectar algn tipo de problemas (vase la figura 2.22). Tambin se puede utilizar este servicio para rechazar una respuesta (resultado o error) de una invocacin anterior.

Usuario ROSE

Proveedor ROSE

Usuario ROSE

RO-REJECT-U.request RO-REJECT-U.indication

Fig 2.22 Primitivas del servicio RO-REJECT-U de ROSE

Los parmetros de las primitivas del servicio RO-REJECT-U son los siguientes: Causa del rechazo Identificador de la invocacin Prioridad

Los parmetros "identificador de la invocacin" y "prioridad" son los mismos que se han visto en la descripcin de los otros servicios de ROSE. El parmetro "causa del error" contiene informacin

los autores, 1998; Edicions UPC, 1998. Quedan rigurosamente prohibidas, sin la autorizacin escrita de los titulares del "copyright", bajo las sanciones establecidas en las leyes, la reproduccin total o parcial de esta obra por cualquier medio o procedimiento, comprendidos la reprografa y el tratamiento informtico, y la distribucin de ejemplares de ella mediante alquiler o prstamo pblicos, as como la exportacin e importacin de ejemplares para su distribucin y venta fuera del mbito de la Unin Europea.

2 Nivel de aplicacin

45

diferente segn sea un rechazo a una primitiva RO-INVOKE.indication, RO-RESULT.indication o RO-ERROR.indication anteriores. Las causas de rechazo de una primitiva RO-INVOKE.indication son las siguientes: invocacin duplicada, operacin desconocida, argumento errneo, recursos limitados, liberacin del iniciador de la asociacin, identificador de la operacin enlazada desconocido, respuesta de la operacin enlazada no esperada y operacin hija no esperada. En el caso de rechazo de una primitiva RO-RESULT.indication anterior, las causas de rechazo son: invocacin no desconocida, resultado no esperado y resultado errneo. Finalmente, si el rechazo corresponde a una primitiva RO-ERROR.indication, las causas de rechazo son: invocacin desconocida, error no esperado, error desconocido y parmetro errneo. El servicio RO-REJECT-U de ROSE se mapea directamente sobre el servicio P-DATA del nivel de presentacin.

RO-REJECT-P El servicio RO-REJECT-P lo utiliza el proveedor del servicio ROSE para indicar a sus usuarios que ha detectado algn tipo de problema. Es un servicio no confirmado que, al ser iniciado por el proveedor, nicamente tiene una primitiva que es RO-REJECT-P.indication (vase la figura 2.23).

Usuario ROSE

Proveedor ROSE

Usuario ROSE

RO-REJECT-P.indication

RO-REJECT-P.indication

Fig. 2.23 Primitivas del servicio RO-REJECT-P de ROSE

Los parmetros de las primitivas del servicio RO-REJECT-P son los siguientes: Causa del rechazo Identificador de la invocacin Parmetros retornados

Los parmetros de la primitiva RO-REJECT-P.indication, que son todos opcionales, son el identificador de la invocacin, la causa del rechazo y un campo de parmetros del rechazo que contiene el parmetro de la primitiva rechazada para el caso de que el proveedor de ROSE no haya podido transferir la APDU correspondiente. La causa del rechazo puede ser: APDU irreconocible, APDU errnea o estructura de la APDU errnea. El servicio RO-REJECT-P de ROSE se mapea directamente a nivel de presentacin mediante el servicio P-DATA.

los autores, 1998; Edicions UPC, 1998. Quedan rigurosamente prohibidas, sin la autorizacin escrita de los titulares del "copyright", bajo las sanciones establecidas en las leyes, la reproduccin total o parcial de esta obra por cualquier medio o procedimiento, comprendidos la reprografa y el tratamiento informtico, y la distribucin de ejemplares de ella mediante alquiler o prstamo pblicos, as como la exportacin e importacin de ejemplares para su distribucin y venta fuera del mbito de la Unin Europea.

46

Aplicaciones distribuidas abiertas

2.6.2 Protocolo El protocolo ROSE queda definido por la mquina de protocolo de ROSE (ROPM, Remote Operations Protocol Machine). Se pueden identificar una serie de elementos de protocolo que son los siguientes: Invocacin Retorno de resultado Retorno de error Rechazo del usuario Rechazo del proveedor

El protocolo de ROSE define las siguientes APDU: ROIV RORS ROER RORJ RO-INVOKE RO-RESULT RO-ERROR RO-REJECT

A continuacin se muestra el mapeo entre las primitivas de servicio de ROSE y el servicio de presentacin, as como las APDU que se utilizan para transportar dichas primitivas. Servicio ROSE RO-INVOKE.request/indication RO-RESULT.request/indication RO-ERROR.request/indication RO-REJECT-U.request/indication RO-REJECT-P.request/indication APDU ROIV RORS ROER RORJ RORJ Servicio presentacin P-DATA.request/indication P-DATA.request/indication P-DATA.request/indication P-DATA.request/indication P-DATA.request/indication

los autores, 1998; Edicions UPC, 1998. Quedan rigurosamente prohibidas, sin la autorizacin escrita de los titulares del "copyright", bajo las sanciones establecidas en las leyes, la reproduccin total o parcial de esta obra por cualquier medio o procedimiento, comprendidos la reprografa y el tratamiento informtico, y la distribucin de ejemplares de ella mediante alquiler o prstamo pblicos, as como la exportacin e importacin de ejemplares para su distribucin y venta fuera del mbito de la Unin Europea.

También podría gustarte