Está en la página 1de 19

Sistemas Distribuidos

Arquitectura Sistemas Distribuidos

Arquitectura de los Sistemas Distribuidos

Prof. Jos A. Rodrguez Mondjar

UPCO ICAI Departamento de Electrnica y Automtica 1

Sistemas Distribuidos

Arquitectura Sistemas Distribuidos

Arquitectura

Arquitectura de un sistema:
Qu componentes lo forman?
Cmo interaccionan entre s?

Dos modelos principales en los sistemas distribuidos


Cliente-servidor
Igual a Igual

Prof. Jos A. Rodrguez Mondjar

UPCO ICAI Departamento de Electrnica y Automtica 2

Sistemas Distribuidos

Arquitectura Sistemas Distribuidos

Modelo Cliente-Servidor (I)

Ejemplo: Servidor de ficheros

Client

invocation
result

Client

result

Server

Key:
Process:

Prof. Jos A. Rodrguez Mondjar

Server

invocation

Computer:

UPCO ICAI Departamento de Electrnica y Automtica 3

Sistemas Distribuidos

Arquitectura Sistemas Distribuidos

Modelo Cliente-Servidor (II)

Cliente:
Proceso que quiere acceder a datos, usar recursos o realizar
operaciones en un ordenador diferente.

Servidor:
Proceso que administra datos o cualquier otro tipo de recurso y
que es capaz de hacerlos disponibles a otros procesos que estn
en otros ordenadores.
Modelo cliente-servidor tambin aparece en el propio ordenador

Interaccin:

Clientes ligeros/clientes pesados


Ejemplos

Enviar peticin/recibir resultado

X-Window: cliente pide representacin/servidor realiza


representacin
Servidor http: cliente pide pgina/servidor enva pgina
Prof. Jos A. Rodrguez Mondjar

UPCO ICAI Departamento de Electrnica y Automtica 4

Sistemas Distribuidos

Arquitectura Sistemas Distribuidos

Interaccin entre cliente y servidor

1.25

Prof. Jos A. Rodrguez Mondjar

UPCO ICAI Departamento de Electrnica y Automtica 5

Sistemas Distribuidos

Arquitectura Sistemas Distribuidos

Cliente-servidor: Paso de Mensajes

Los modelos de comunicacin basados en cliente-servidor


con paso de mensajes responden al esqueleto:

msg

CLIENTE

Send(msg)
Mensaje msg,reply;
msg=<dato a trasmitir>
send(msg);
receive(reply);
if(isOK(reply))
<operacin correcto>
else
<error en operacin>
...
Prof. Jos A. Rodrguez Mondjar

SERVIDOR
msg

msg

Receive(msg)

Mensaje op,ack;
receive(op);
if(validOp(op))
ack=<operacin OK>
else
ack=<operacin ERROR>
send(ack);
...
UPCO ICAI Departamento de Electrnica y Automtica 6

Sistemas Distribuidos

Arquitectura Sistemas Distribuidos

Paso de Mensajes

Cada pareja send-receive transmite un mensaje entre


cliente y servidor. Por lo general de forma asncrona.

Habitualmente:
Send no bloqueante.
Receive bloqueante (pude hacerse no bloqueante).

Los mensajes intercambiados pueden ser:


Mensajes de texto (por ejemplo: HTTP).
Mensajes con formato (binarios).

Prof. Jos A. Rodrguez Mondjar

Arquitectura Sistemas Distribuidos

UPCO ICAI Departamento de Electrnica y Automtica 7

Sistemas Distribuidos

Ejemplo de cdigo de cliente-servidor (I)

El servidor
trabaja como
servidor de
ficheros.
El fichero
header.h es
compartido por
cliente y
servidor.

Prof. Jos A. Rodrguez Mondjar

UPCO ICAI Departamento de Electrnica y Automtica 8

Arquitectura Sistemas Distribuidos

Sistemas Distribuidos

Ejemplo de cdigo de cliente-servidor (II)

Ejemplo de servidor

Prof. Jos A. Rodrguez Mondjar

Arquitectura Sistemas Distribuidos

UPCO ICAI Departamento de Electrnica y Automtica 9

Sistemas Distribuidos

Ejemplo de cdigo de cliente-servidor (III)

Ejemplo de
cliente que
utilizar al
servidor
para copiar
un fichero.

Prof. Jos A. Rodrguez Mondjar

UPCO ICAI Departamento de Electrnica y Automtica 10

Sistemas Distribuidos

Arquitectura Sistemas Distribuidos

Variaciones sobre la arquitectura cliente-servidor


Clients

Clients
invocation

Server

invocation

Results

invocation

Service

Results

invocation

Results

Un slo servidor
Prof. Jos A. Rodrguez Mondjar

Results

Mltiples servidores
UPCO ICAI Departamento de Electrnica y Automtica 11

Sistemas Distribuidos

Arquitectura Sistemas Distribuidos

Modelo de mltiples servidores

Servicios son suministrados por mltiples servidores:


Distribucin de los recursos entre los servidores
Ejemplo: Web
Mantenimiento de los links
Links perdidos

Replicacin de los recursos.

Servidores de alta disponibilidad: sitios de descarga , portales

Replicacin de recursos

Aumentar prestaciones
Tolerancia a fallos
Disponibilidad.
Problema de coordinacin o de coherencia
La informacin no llega simultneamente a todos los servidores

Prof. Jos A. Rodrguez Mondjar

UPCO ICAI Departamento de Electrnica y Automtica 12

Sistemas Distribuidos

Arquitectura Sistemas Distribuidos

Modelo de servidor Proxy

Servidor Proxy
Cach de recursos recientemente accedidos.
Varios niveles
Cliente: navegador con las pginas ms recientes
Servidor proxy: a shared cache of resources
Servidor

Web
server

Client
Proxy
server

Web
server

Client

Prof. Jos A. Rodrguez Mondjar

UPCO ICAI Departamento de Electrnica y Automtica 13

Sistemas Distribuidos

Arquitectura Sistemas Distribuidos

Evolucin Cliente-Servidor: Modelo n-niveles

Cliente-Servidor clsico: 2 niveles

Prof. Jos A. Rodrguez Mondjar

UPCO ICAI Departamento de Electrnica y Automtica 14

Sistemas Distribuidos

Arquitectura Sistemas Distribuidos

Esquema base: Modelo de 3 niveles

Interfaz con el usuario


Procesamiento

Datos

Recepcin, bsqueda, preparacin y envo de datos al cliente


Minimizar nmero de usuarios simultneos en la base de datos

Prof. Jos A. Rodrguez Mondjar

UPCO ICAI Departamento de Electrnica y Automtica 15

Sistemas Distribuidos

Arquitectura Sistemas Distribuidos

Funcionamiento del modelo de 3-niveles

El servidor acta de cliente.

1-30

Prof. Jos A. Rodrguez Mondjar

UPCO ICAI Departamento de Electrnica y Automtica 16

Sistemas Distribuidos

Arquitectura Sistemas Distribuidos

Ejemplo de modelo de 3 niveles

Bscador en Internet

1-28

Prof. Jos A. Rodrguez Mondjar

Arquitectura Sistemas Distribuidos

UPCO ICAI Departamento de Electrnica y Automtica 17

Sistemas Distribuidos

Generalizacin: Cliente servidor de n-niveles

Prof. Jos A. Rodrguez Mondjar

UPCO ICAI Departamento de Electrnica y Automtica 18

Sistemas Distribuidos

Arquitectura Sistemas Distribuidos

Dnde est la frontera entre cliente y servidor

Prof. Jos A. Rodrguez Mondjar

UPCO ICAI Departamento de Electrnica y Automtica 19

Sistemas Distribuidos

Arquitectura Sistemas Distribuidos

Ejemplo de arquitectura de 5-niveles

NT/IIS
Web
Browser

NT Web
Server

Member

Prof. Jos A. Rodrguez Mondjar

BSD/Apache

NT/IIS

FTP
Server

NT Web
Server

Forum

SQL Server 7.0


Database
Server

Member

UPCO ICAI Departamento de Electrnica y Automtica 20

10

Sistemas Distribuidos

Arquitectura Sistemas Distribuidos

Arquitectura cliente-servidor y cdigo mvil

Cdigo mvil: Cdigo que es envido por el servidor al


cliente para que realice una determinada tarea
a) client request results in the downloading of applet code

Web
server

Client
Applet code
b) client interacts with the applet

Client

Prof. Jos A. Rodrguez Mondjar

Web
server

Applet

UPCO ICAI Departamento de Electrnica y Automtica 21

Sistemas Distribuidos

Arquitectura Sistemas Distribuidos

Modelo Igual a Igual (Peer-to-Peer-P2P)

Los procesos tienen un rol similar, aunque pueden asumir


un rol cliente/servidor en ciertos momentos
Mejora la tolerancia a fallos y la escalabilidad
Difcil de coordinar
Ejemplos: bsqueda distribuida, enrutamiento, clculo
distribuido.
Application

Application

Coordination
code

Coordination
code

Application
Coordination
code

Prof. Jos A. Rodrguez Mondjar

UPCO ICAI Departamento de Electrnica y Automtica 22

11

Sistemas Distribuidos

Arquitectura Sistemas Distribuidos

Otros modelos para estudiar los sist. distribuidos

Modelo de interaccin
Asncrono
Sncrono

Modelo Asncrono. No existe limitacin para

Velocidad de procesamiento
Retardo en la transmisin de los mensajes
Diferencia en los relojes de cada componente del sistema
Ejemplo: Internet

Modelo Sncrono
El tiempo de ejecucin de cada etapa est limitado: min/mx
Cada mensaje transmitido sobre un canal se recibe en un tiempo
limitado conocido
Los relojes de los componentes tienen una tasa de deriva conocida
Ejemplo: Telemando, SCADA (Supervisory Control And Data
Adquisition)

Prof. Jos A. Rodrguez Mondjar

UPCO ICAI Departamento de Electrnica y Automtica 23

Sistemas Distribuidos

Arquitectura Sistemas Distribuidos

Arquitectura de un telemando
IEC 61970 EMS

EC, EDI

IEC 62

R
195 T

Market
Participant

Control
Centre 2

ISO 9735

IEC 61968 DMS


Control Centre 1

IEC 62210

Server
IEC 60870-5-101, -104,
IEC 60870-6 (TASE.2),
IEEE P1525,
ELCOM90, DNP3

IEC 60870-6 (TASE.2),


ELCOM90, DNP3,
IEC 60870-5-101, -104

PU

50
618
5
IEC P152 -5
E
IEE 60870
IEC
Pole-Top

IEC
IEC 611
62 07
05
6

2
10
5087
60

Substation

C
IE

IEC 60870-5-101,
IEC 60870-5-104,
IEEE P1525,
DNP3

IEC 60870-5-101, -104,


IEC 60870-6 (TASE.2),
ELCOM90, DNP3
Power
Plant

Distribution,
Customer:
Metering
Billing

PU
Substation

Prof. Jos A. Rodrguez Mondjar

UPCO ICAI Departamento de Electrnica y Automtica 24

12

Sistemas Distribuidos

Arquitectura Sistemas Distribuidos

Arquitectura del centro de control

MMI

Mimic Board
Controler

MMI

dual LAN

Application Server 1

Application Server 2

Communication
Server

Communication Front-end

to other Control
Centers
RTU

Prof. Jos A. Rodrguez Mondjar

UPCO ICAI Departamento de Electrnica y Automtica 25

Sistemas Distribuidos

Arquitectura Sistemas Distribuidos

SCADA conectado
a Internet
Operator

To External

Terminals

Network

NT-Terminal

Workstation

Workstation
Router

New FEP

WEB Applications System

Printers

RTUs

UNIX
Server

NT Server

Open System Master Station with Internet Interface


Prof. Jos A. Rodrguez Mondjar

UPCO ICAI Departamento de Electrnica y Automtica 26

13

Sistemas Distribuidos

Arquitectura Sistemas Distribuidos

IEC 60870-5-101

Comunicacin serie
Centro de control es el maestro que dirige la comunicacin
El maestro interpela a una remota
La remota correspondiente responde
El cable es nico: slo una remota puede responder en cada
momento.
Cada remota debe tener una direccin
REMOTA 1

CENTRO DE
CONTROL

REMOTA 2

REMOTA 1
REMOTA 2

CENTRO DE
CONTROL

REMOTA 3
Prof. Jos A. Rodrguez Mondjar

REMOTA 3
UPCO ICAI Departamento de Electrnica y Automtica 27

Sistemas Distribuidos

Arquitectura Sistemas Distribuidos

Pasos en la comunicacin Maestro/Esclavo

El maestro (centro de control) prepara


una trama (secuencia de octetos o bytes)
con:
Direccin de la remota (esclavo) que debe
recibirla
Informacin concreta

El maestro enva la trama al bus donde


estn conectadas las remotas (esclavos)
La trama llega a todas las remotas
Las remotas comparan la direccin de la
trama recibida con su direccin
La remota con direccin igual a la de la
trama responde con otra trama:
Direccin de la remota (comprobacin)
Informacin concreta
La trama puede llegar a las otras remotas

Una remota no puede responder si no ha


sido preguntada

Prof. Jos A. Rodrguez Mondjar

CENTRO
DE
CONTROL

REMOTA
1
REMOTA
2
REMOTA
3

CENTRO
DE
CONTROL

REMOTA
1
2

REMOTA
2
REMOTA
3

UPCO ICAI Departamento de Electrnica y Automtica 28

14

Sistemas Distribuidos

Arquitectura Sistemas Distribuidos

Caractersticas de la 60870-5-101 (I)

Dirigida a transmitir informacin en el contexto de los


sistemas elctricos
Ejemplo: rdenes de tipo doble
Ejemplo: Informaciones de tipo doble

2 Contactos (NA y NC) asociados a un seccionador

Maximizar el ancho de banda disponible


Funcionamiento NORMAL:
La remota slo transmite hacia el centro de control los cambios en los
elementos de campo que controla o supervisa.

Prof. Jos A. Rodrguez Mondjar

UPCO ICAI Departamento de Electrnica y Automtica 29

Sistemas Distribuidos

Arquitectura Sistemas Distribuidos

Caractersticas de la 60870-5-101 (II)

Funcionamiento Normal:
El centro de control no pregunta a la remota sobre el estado de
elementos concretos
El centro de control se limita a preguntar a la remota si tiene
informacin para l.
La remota responde al centro de control transmitiendo los cambios
en los elementos de campo recogidos:
La remota debe tener un mecanismo de almacn (buffer) para ir
guardando los cambios, hasta que son enviados hacia el centro de
control
Primero se envan los ms prioritarios

Prof. Jos A. Rodrguez Mondjar

UPCO ICAI Departamento de Electrnica y Automtica 30

15

Sistemas Distribuidos

Arquitectura Sistemas Distribuidos

Caractersticas de la 60870-5-101(III)

Minimizar el coste
Un cable que conecta a varias remotas (directamente o a travs de
modems)
Obliga a una estructura maestro/esclavo

Maestro: centro de control


Esclavos: remotas

Determinista
Se controlan los tiempos de transmisin

Prof. Jos A. Rodrguez Mondjar

UPCO ICAI Departamento de Electrnica y Automtica 31

Sistemas Distribuidos

Arquitectura Sistemas Distribuidos

Comunicacin en la 60870-5-101

Maestro/Esclavo
Dos procedimientos principales
Enviar rdenes desde centro de control a las remotas (en la norma
se llama SEND/CONFIRM)
Recoger informacin almacenada en las remotas como cambios en
los estados de los elementos que controla la remota
(procedimiento REQUEST/RESPOND)

Dos tipos de tramas


Trama de tamao fijo: Informacin muy concreta
Respuestas o preguntas cortas (ancho de banda)

Trama de tamao variable: Informacin de tamao variable


(ASDUS): rdenes, estado de elementos

Prof. Jos A. Rodrguez Mondjar

UPCO ICAI Departamento de Electrnica y Automtica 32

16

Sistemas Distribuidos

Arquitectura Sistemas Distribuidos

Elementos bsicos de la trama

Trama de longitud fija (6 bytes)

Tipo de trama (1 byte)


Trama fija: 10H
Trama variable: 68H

10 C a0 a1 cs 16

Direccin de enlace (2
bytes a0a1)

Final de
trama

Checksum

Remota a la que se
enva o responde

Smbolo

Longitud de la trama (L
caso variable)
Byte de control (C)
Bytes con informacin
si es una trama de
tamao variable (ASDU)

Trama de longitud variable (<=258 bytes)


68 L L 68 C a0 a1

A S D U

cs 16

Longitud repetida

Smbolo
Prof. Jos A. Rodrguez Mondjar

UPCO ICAI Departamento de Electrnica y Automtica 33

Sistemas Distribuidos

Arquitectura Sistemas Distribuidos

Recogida de informacin - Polling

El centro de control va pidiendo informacin


secuencialmente a todas las remotas
Ventana de tamao 1
El Request va seguido siempre de un Respond (igual para el Send
con el Confirm).
Operaciones de Request/Respond pueden ir precedidas de
operaciones de Send/Confirm.
Ventana 1
CENTRO
DE
CONTROL

Pregunta
remota 1
Remota 1
responde con
ASDU

Prof. Jos A. Rodrguez Mondjar

Pregunta
remota 2
Remota 2
responde no
tiene nada
pendiente

Pregunta
remota 3
Remota 3
responde con
ASDU

Pregunta
remota 1
Remota 1
responde no
tiene nada
pendiente

REMOTA
1
REMOTA
2
REMOTA
3

UPCO ICAI Departamento de Electrnica y Automtica 34

17

Sistemas Distribuidos

Arquitectura Sistemas Distribuidos

Modelo de remota Perfil 101 con ASDUS


Perfil 101
Tabla de rdenes

C_DC/SC-ACT Ejecucin de
rdenes IEC

2
2

Clase1

Tabla de Informaciones

Deteccin de
cambios
M_DP/SP_NA

M_DP/SP_TB

C_DC/SC-ACTCON

Acept/No
Acept

InfoI
Adquisicin
peridica

rdenes a
elementos
de campo

Recogida
informacin
de campo

Reloj

M_DP/SP-REQ

InfoIEC
InfoIEC

Buffer
FIFO

InfoIEC

Prof. Jos A. Rodrguez Mondjar

UPCO ICAI Departamento de Electrnica y Automtica 35

Sistemas Distribuidos

Arquitectura Sistemas Distribuidos

Ejemplo: Envo orden desde CC a remota

SEND: CC enva orden a remota C_DC_NA_1- ACT


ASDU

Prof. Jos A. Rodrguez Mondjar

Pulso corto 01 apertura

Direccin objeto (orden) dentro


de la remota 09DD10

Direccin remota donde est el


objeto = direccin de enlace

OA: Direccin CC = 0c

Causa de transmisin: act<6>

C_DC_NA_1

SQ=1 (slo 1 orden/fijo)

Direccin enlace remota


04f3-Menos significativo primero

PRM=1,FCB=1,FCV=1,FC=3-SEND

68 L L 68 73 f3 04 2e 01 06 Oc f3 04 10 dd 09 05 cs 16

UPCO ICAI Departamento de Electrnica y Automtica 36

18

Sistemas Distribuidos

Arquitectura Sistemas Distribuidos

Centro de Control
Maestro 101

Remota
Esclavo 101

Red 101

Envo orden

Elementos de
Campo
Subest.

C_DC_NA_1-ACT
FC<0>ACK
FC<10> Pide Clase 1
FC<9>No hay
FC<10> Pide Clase 1

Preparacin
ASDU con
orden
aceptada

Cambio
estado
disyuntor

C_DC_NA_1-ACTCON
Recepcin orden
aceptada

FC<10> Pide Clase 1


FC<9>No hay
FC<10> Pide Clase 1

M_DP_TB_1-SPONT

Envo orden
a disyuntor

Preparacin
ASDU con
cambio
estado

Recepcin evento
Prof. Jos A. Rodrguez Mondjar

UPCO ICAI Departamento de Electrnica y Automtica 37

19

También podría gustarte