Está en la página 1de 19

1

Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 1 Prof. Jos A. Rodrguez Mondjar
Arquitectura Sistemas Distribuidos
Arquitectura de los Sistemas Distribuidos
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 2 Prof. Jos A. Rodrguez Mondjar
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
2
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 3 Prof. Jos A. Rodrguez Mondjar
Arquitectura Sistemas Distribuidos
Modelo Cliente-Servidor (I)
Ejemplo: Servidor de ficheros
Server
Client
Client
invocation
result
Server
invocation
result
Process:
Key:
Computer:
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 4 Prof. Jos A. Rodrguez Mondjar
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:
Enviar peticin/recibir resultado
Clientes ligeros/clientes pesados
Ejemplos
X-Window: cliente pide representacin/servidor realiza
representacin
Servidor http: cliente pide pgina/servidor enva pgina
3
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 5 Prof. Jos A. Rodrguez Mondjar
Arquitectura Sistemas Distribuidos
Interaccin entre cliente y servidor
1.25
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 6 Prof. Jos A. Rodrguez Mondjar
Arquitectura Sistemas Distribuidos
Cliente-servidor: Paso de Mensajes
Los modelos de comunicacin basados en cliente-servidor
con paso de mensajes responden al esqueleto:
CLIENTE
msg
Send(msg) Send(msg)
msg
SERVIDOR
msg
Receive(msg)
Mensaje msg,reply;
msg=<dato a trasmitir>
send(msg);
receive(reply);
if(isOK(reply))
<operacin correcto>
else
<error en operacin>
...
Mensaje op,ack;
receive(op);
if(validOp(op))
ack=<operacin OK>
else
ack=<operacin ERROR>
send(ack);
...
4
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 7 Prof. Jos A. Rodrguez Mondjar
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).
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 8 Prof. Jos A. Rodrguez Mondjar
Arquitectura 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.
5
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 9 Prof. Jos A. Rodrguez Mondjar
Arquitectura Sistemas Distribuidos
Ejemplo de cdigo de cliente-servidor (II)
Ejemplo de servidor
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 10 Prof. Jos A. Rodrguez Mondjar
Arquitectura Sistemas Distribuidos
Ejemplo de cdigo de cliente-servidor (III)
Ejemplo de
cliente que
utilizar al
servidor
para copiar
un fichero.
6
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 11 Prof. Jos A. Rodrguez Mondjar
Arquitectura Sistemas Distribuidos
Variaciones sobre la arquitectura cliente-servidor

invocation
invocation
Results
Results
Clients
Server

invocation
invocation
Results
Results
Clients
Service
Un slo servidor Mltiples servidores
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 12 Prof. Jos A. Rodrguez Mondjar
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
7
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 13 Prof. Jos A. Rodrguez Mondjar
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
Client
Proxy
Web
server
Web
server
server
Client
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 14 Prof. Jos A. Rodrguez Mondjar
Arquitectura Sistemas Distribuidos
Evolucin Cliente-Servidor: Modelo n-niveles
Cliente-Servidor clsico: 2 niveles
8
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 15 Prof. Jos A. Rodrguez Mondjar
Arquitectura Sistemas Distribuidos
Esquema base: Modelo de 3 niveles
Interfaz con el usuario
Procesamiento
Recepcin, bsqueda, preparacin y envo de datos al cliente
Datos
Minimizar nmero de usuarios simultneos en la base de datos
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 16 Prof. Jos A. Rodrguez Mondjar
Arquitectura Sistemas Distribuidos
Funcionamiento del modelo de 3-niveles
El servidor acta de cliente.
1-30
9
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 17 Prof. Jos A. Rodrguez Mondjar
Arquitectura Sistemas Distribuidos
Ejemplo de modelo de 3 niveles
Bscador en Internet
1-28
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 18 Prof. Jos A. Rodrguez Mondjar
Arquitectura Sistemas Distribuidos
Generalizacin: Cliente servidor de n-niveles
10
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 19 Prof. Jos A. Rodrguez Mondjar
Arquitectura Sistemas Distribuidos
Dnde est la frontera entre cliente y servidor
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 20 Prof. Jos A. Rodrguez Mondjar
Arquitectura Sistemas Distribuidos
Ejemplo de arquitectura de 5-niveles
NT Web
Server
Database
Server
Member Forum
Member
NT Web
Server
Web
Browser
FTP
Server
NT/IIS NT/IIS BSD/Apache SQL Server 7.0
11
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 21 Prof. Jos A. Rodrguez Mondjar
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
Web
server
Applet
Applet code
Client
b) client interacts with the applet
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 22 Prof. Jos A. Rodrguez Mondjar
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.
Coordination
Application
code
Coordination
Application
code
Coordination
Application
code
12
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 23 Prof. Jos A. Rodrguez Mondjar
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)
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 24 Prof. Jos A. Rodrguez Mondjar
Arquitectura Sistemas Distribuidos
Arquitectura de un telemando
IEC 60870-5-101, -104,
IEC 60870-6 (TASE.2),
IEEE P1525,
ELCOM90, DNP3
I
E
C

6
0
8
7
0
-
5
-
1
0
2
Control Centre 1
Distribution,
Customer:
Metering
Billing
IEC 60870-6 (TASE.2),
ELCOM90, DNP3,
IEC 60870-5-101, -104
Substation
Power
Plant
Market
Participant
EC, EDI
ISO 9735
Server
IEC 61970 EMS
IEC 61968 DMS
IEC 60870-5-101, -104,
IEC 60870-6 (TASE.2),
ELCOM90, DNP3
Substation
I
E
C

6
1
1
0
7
I
E
C

6
2
0
5
6
IEC 60870-5-101,
IEC 60870-5-104,
IEEE P1525,
DNP3
PU
Control
Centre 2
IE
C
62195 T
R
Pole-Top
IE
C
6
1
8
5
0
IE
E
E
P
1
5
2
5
IE
C
6
0
8
7
0
-
5
PU
IEC 62210
13
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 25 Prof. Jos A. Rodrguez Mondjar
Arquitectura Sistemas Distribuidos
Arquitectura del centro de control
Communication Front-end
MMI
Application Server 1 Application Server 2
MMI
dual LAN
Communication
Server
Mimic Board
Controler
to other Control
Centers
RTU
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 26 Prof. Jos A. Rodrguez Mondjar
Arquitectura Sistemas Distribuidos
SCADA conectado a Internet
Open System Master Station with Internet Interface
WEB Applications System
NT Server UNIX
Server
RTUs
Workstation
Router
To External
Network
Operator
Terminals
NT-Terminal
New FEP
Workstation
Printers
14
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 27 Prof. Jos A. Rodrguez Mondjar
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
REMOTA 2
CENTRO DE
CONTROL
REMOTA 3
REMOTA 1
REMOTA 2
CENTRO DE
CONTROL
REMOTA 3
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 28 Prof. Jos A. Rodrguez Mondjar
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
REMOTA
1
REMOTA
2
CENTRO
DE
CONTROL
REMOTA
3
2
REMOTA
1
REMOTA
2
CENTRO
DE
CONTROL
REMOTA
3
2
15
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 29 Prof. Jos A. Rodrguez Mondjar
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.
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 30 Prof. Jos A. Rodrguez Mondjar
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
16
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 31 Prof. Jos A. Rodrguez Mondjar
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
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 32 Prof. Jos A. Rodrguez Mondjar
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
17
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 33 Prof. Jos A. Rodrguez Mondjar
Arquitectura Sistemas Distribuidos
Elementos bsicos de la trama
Tipo de trama (1 byte)
Trama fija: 10H
Trama variable: 68H
Direccin de enlace (2
bytes a0a1)
Remota a la que se
enva o responde
Longitud de la trama (L
caso variable)
Byte de control (C)
Bytes con informacin
si es una trama de
tamao variable (ASDU)
10 a0 a1 C cs 16
Checksum
Final de
trama
Trama de longitud fija (6 bytes)
Smbolo
68 a0 a1 C cs 16 L L 68 A S D U
Longitud repetida
Trama de longitud variable (<=258 bytes)
Smbolo
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 34 Prof. Jos A. Rodrguez Mondjar
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.
1 1 2 2 3 3 1 1
REMOTA
1
REMOTA
2
CENTRO
DE
CONTROL
REMOTA
3
Ventana 1
Pregunta
remota 1
Remota 1
responde con
ASDU
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
18
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 35 Prof. Jos A. Rodrguez Mondjar
Arquitectura Sistemas Distribuidos
Modelo de remota Perfil 101 con ASDUS
rdenes a
elementos
de campo
Recogida
informacin
de campo
InfoI
Tabla de rdenes
Tabla de Informaciones
Ejecucin de
rdenes IEC
InfoIEC
InfoIEC
InfoIEC
Deteccin de
cambios
Adquisicin
peridica
Acept/No
Acept
Reloj
Buffer
FIFO
Perfil 101
C_DC/SC-ACT
C
_
D
C
/
S
C
-
A
C
T
C
O
N
M
_
D
P
/
S
P
_
T
B
M
_
D
P
/
S
P
_
N
A
M_DP/SP-REQ
Clase1
2
2
2
2
2

Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 36 Prof. Jos A. Rodrguez Mondjar
Arquitectura Sistemas Distribuidos
Ejemplo: Envo orden desde CC a remota
SEND: CC enva orden a remota C_DC_NA_1- ACT
68 f3 04 73 cs 16 L L 68 2e 01 06 f3 04 10 dd 09 05
ASDU
Oc
D
i
r
e
c
c
i

n

e
n
l
a
c
e

r
e
m
o
t
a
0
4
f
3
-
M
e
n
o
s

s
i
g
n
i
f
i
c
a
t
i
v
o

p
r
i
m
e
r
o
D
i
r
e
c
c
i

n

o
b
j
e
t
o

(
o
r
d
e
n
)

d
e
n
t
r
o

d
e

l
a

r
e
m
o
t
a

0
9
D
D
1
0
P
R
M
=
1
,
F
C
B
=
1
,
F
C
V
=
1
,
F
C
=
3
-
S
E
N
D
C
_
D
C
_
N
A
_
1
S
Q
=
1

(
s

l
o

1

o
r
d
e
n
/
f
i
j
o
)
D
i
r
e
c
c
i

n

r
e
m
o
t
a

d
o
n
d
e

e
s
t


e
l

o
b
j
e
t
o

=

d
i
r
e
c
c
i

n

d
e

e
n
l
a
c
e
C
a
u
s
a

d
e

t
r
a
n
s
m
i
s
i

n
:

a
c
t
<
6
>
O
A
:

D
i
r
e
c
c
i

n

C
C

=

0
c
P
u
l
s
o

c
o
r
t
o

0
1

a
p
e
r
t
u
r
a
19
Sistemas Distribuidos
UPCO ICAI Departamento de Electrnica y Automtica 37 Prof. Jos A. Rodrguez Mondjar
Arquitectura Sistemas Distribuidos
Centro de Control
Maestro 101
Remota
Esclavo 101
Envo orden
C_DC_NA_1-ACT
FC<0>ACK
Preparacin
ASDU con
orden
aceptada
Envo orden
a disyuntor
FC<9>No hay
C_DC_NA_1-ACTCON
Cambio
estado
disyuntor
Preparacin
ASDU con
cambio
estado
M_DP_TB_1-SPONT
Elementos de
Campo
Subest.
Red 101
Recepcin orden
aceptada
Recepcin evento
FC<9>No hay
FC<10> Pide Clase 1
FC<10> Pide Clase 1
FC<10> Pide Clase 1
FC<10> Pide Clase 1

También podría gustarte