Está en la página 1de 216

Redes de Ordenadores.

Protocolos

Antonio Salavert Casamor

http://www.tonet.jazztel.es

Pgina en blanco

http://www.tonet.jazztel.es

NDICE

1.INTRODUCCIN................................................................................................................................................................8
1.1.EL PROCESO DE LA COMUNICACIN ........................................................................................................................................8
4.1.1.Esquema genrico..................................................................................................................................................9
4.1.2.Protocolos..............................................................................................................................................................9
4.2.REDES LAN / WAN.......................................................................................................................................................10
4.2.1.LAN......................................................................................................................................................................10
4.3.EJEMPLO DE LAN............................................................................................................................................................11
4.3.1.WAN.....................................................................................................................................................................11
4.3.2.Ejemplo de WAN..................................................................................................................................................12
4.3.3.MAN.....................................................................................................................................................................12
4.4.DISPOSITIVOS DE LAS REDES DE ORDENADORES.....................................................................................................................13
4.5. HALF-DUPLEX Y FULL-DUPLEX...........................................................................................................................................13
5. JERARQUA DE NIVELES............................................................................................................................................14
5.1.MODELO OSI (OPEN SYSTEM INTERCONNECTION)................................................................................................................14
5.1.1.Qu es?...............................................................................................................................................................14
5.1.2.Nivel de aplicacin (7).........................................................................................................................................15
5.1.3.Nivel de presentacin (6).....................................................................................................................................16
5.1.4.Nivel de sesin (5)................................................................................................................................................16
5.1.5.Nivel de transporte (4).........................................................................................................................................17
5.1.6.Nivel de red (3).....................................................................................................................................................17
5.1.7.Nivel de enlace (2)...............................................................................................................................................18
5.1.8.Nivel fsico (1)......................................................................................................................................................19
5.2.NIVELES TCP/IP.............................................................................................................................................................19
5.2.1.Nivel de aplicacin...............................................................................................................................................20
5.2.2.Nivel de transporte...............................................................................................................................................20
5.2.3.Nivel de Internet...................................................................................................................................................21
5.2.4.Nivel de red..........................................................................................................................................................21
5.3.REDES APPLE...................................................................................................................................................................21
5.4.TRANSMISIN DE LA INFORMACIN.......................................................................................................................................22
5.4.1.Encapsulacin......................................................................................................................................................23
5.4.2.Nombres de los mensajes.....................................................................................................................................25
6.DISEO DE UN PROTOCOLO......................................................................................................................................26
6.1.LOS CINCO ELEMENTOS DE UN PROTOCOLO............................................................................................................................26
6.2.PRINCIPIOS GENERALES DEL DISEO DE UN PROTOCOLO..........................................................................................................26
6.3.DIEZ REGLAS DE DISEO.....................................................................................................................................................28
7.NIVEL FSICO..................................................................................................................................................................29
8. CONCEPTO DE SEAL.................................................................................................................................................30
8.1.TIPOS DE SEALES : CONTINUAS Y DISCRETAS........................................................................................................................30
8.2.DOMINIO TEMPORAL Y DOMINIO FRECUENCIAL.......................................................................................................................31
8.2.1.Ancho de banda....................................................................................................................................................32
8.3.TRANSMISIN ANALGICA Y TRANSMISIN DIGITAL.................................................................................................................33
8.3.1.Transmisin analgica.........................................................................................................................................33
8.3.2.Transmisin digital..............................................................................................................................................33
8.3.3.Resumen...............................................................................................................................................................34
8.4.VELOCIDAD DE MODULACIN, VELOCIDAD DE TRANSMISIN Y CRITERIO DE NYQUIST...................................................................34
8.4.1.Velocidad de propagacin...................................................................................................................................34
8.4.2.Velocidad de transmisin.....................................................................................................................................35
8.4.3.Velocidad de modulacin.....................................................................................................................................35
8.4.4.Relacin entre velocidad de transmisin y de modulacin.................................................................................35
8.4.5.Relacin entre la velocidad de transmisin y las frecuencias.............................................................................35

http://www.tonet.jazztel.es

8.4.6.Criterio de Nyquist...............................................................................................................................................36
8.5.CONCEPTO DE DISTORSIN..................................................................................................................................................36
8.6.CONCEPTO DE ATENUACIN................................................................................................................................................37
8.7.FUENTES DE RUIDO............................................................................................................................................................39
8.7.1.EMI/RFI (Interferencia electromagntica/interferencia de la radiofrecuencia).................................................39
8.7.2.Diafona (Crosstalk).............................................................................................................................................41
8.7.3.Ruido trmico.......................................................................................................................................................41
8.8.REFLEXIN DE LA SEAL....................................................................................................................................................42
9. LNEAS DE TRANSMISIN..........................................................................................................................................44
9.1.CABLE COAXIAL................................................................................................................................................................44
9.2.PAR TRENZADO.................................................................................................................................................................45
9.3.FIBRA PTICA...................................................................................................................................................................46
10. MODULACIN..............................................................................................................................................................49
10.1.CONCEPTO DE MODULACIN.............................................................................................................................................49
10.2.TIPOS DE MODULACIN....................................................................................................................................................50
10.3.SEAL MODULADORA ANALGICA......................................................................................................................................51
10.4.SEAL MODULADORA DIGITAL...........................................................................................................................................52
11. CODIFICACIN DE CANAL......................................................................................................................................54
11.1.CODIFICACIN NRZ (NON RETURN TO ZERO)...................................................................................................................55
11.1.1.Codificacin NRZ - L ........................................................................................................................................55
11.1.2.Codificacin NRZ - I..........................................................................................................................................56
11.2.CODIFICACIN AMI BIPOLAR...........................................................................................................................................57
11.3.CODIFICACIN MANCHESTER............................................................................................................................................58
11.4.CODIFICACIN MANCHESTER DIFERENCIAL..........................................................................................................................59
11.5.CODIFICACIN B8ZS......................................................................................................................................................59
12. MODOS DE TRANSMISIN.......................................................................................................................................61
12.1. TRANSMISIN ASNCRONA................................................................................................................................................61
12.1.1.Sincronizacin de bit o de reloj.........................................................................................................................61
12.1.2.Sincronizacin de carcter................................................................................................................................62
12.1.3.Sincronizacin de trama....................................................................................................................................62
12.2. TRANSMISIN SNCRONA..................................................................................................................................................63
12.2.1.Sincronizacin de bit..........................................................................................................................................63
12.2.2.Sincronizacin de carcter................................................................................................................................64
12.2.3.Orientado al bit..................................................................................................................................................64
13. NIVEL DE ENLACE......................................................................................................................................................65
13.1. DETECCIN DE ERRORES.................................................................................................................................................65
13.1.1.Paridad simple...................................................................................................................................................66
13.1.2.Cdigo Hamming...............................................................................................................................................66
13.1.3.Paridad longitudinal (LRC)...............................................................................................................................67
13.1.4.CRC (Cyclic Redundancy Check)......................................................................................................................68
13.2. SERVICIOS CONFIRMADOS Y NO CONFIRMADOS....................................................................................................................70
13.3. CONTROL DE ERRORES....................................................................................................................................................71
13.3.1.Control de errores manual.................................................................................................................................71
13.3.2.Echo checking....................................................................................................................................................71
13.3.3.Control de errores automtico...........................................................................................................................71
13.3.4.Stop & Wait (Idle RQ)........................................................................................................................................72
13.3.5.Retransmisin continua (Continous-RQ)...........................................................................................................76
13.3.6.Repeticin selectiva............................................................................................................................................78
13.3.7.Go-back-N..........................................................................................................................................................81
13.3.8.Piggy-backing....................................................................................................................................................82
13.4. CONTROL DE FLUJO........................................................................................................................................................83
13.4.1.Ventana deslizante (Sliding window).................................................................................................................84
14. REDES LAN (LOCAL AREA NETWORK)................................................................................................................89
14.1.INTRODUCCIN...............................................................................................................................................................89

http://www.tonet.jazztel.es

14.2. TOPOLOGAS.................................................................................................................................................................89
14.2.1.Topologa bus.....................................................................................................................................................90
14.2.2.Topologa en anillo............................................................................................................................................90
14.2.3.Topologa en estrella.........................................................................................................................................90
14.2.4.Topologa en estrella extendida.........................................................................................................................91
14.2.5.Estrella compartida y estrella conmutada.........................................................................................................91
14.3. IEEE 802.2................................................................................................................................................................92
14.4.CONMUTADORES / SWITCHES............................................................................................................................................94
14.4.1. Tipo Cut-Through Switching.............................................................................................................................95
14.4.2.Tipo Store-and-Forward Switching...................................................................................................................95
14.4.3.Conmutadores hbridos......................................................................................................................................96
14.4.4.Conmutacin a nivel 2 y 3.................................................................................................................................96
15. PROTOCOLOS DE ACCESO AL MEDIO (MAC)...................................................................................................97
15.1.TOKEN RING..................................................................................................................................................................97
15.2. ETHERNET....................................................................................................................................................................99
15.2.1.Nivel fsico........................................................................................................................................................100
15.2.2.Nivel MAC........................................................................................................................................................102
15.2.3.Tecnologa CSMA/CD......................................................................................................................................103
15.2.4.Dominio de colisin ........................................................................................................................................106
15.2.5.Ventana de colisiones......................................................................................................................................107
15.3. PROTOCOLO FAST ETHERNET.........................................................................................................................................109
15.3.1.Nivel fsico........................................................................................................................................................109
15.3.2.Repetidores.......................................................................................................................................................109
16. REDES INALMBRICAS...........................................................................................................................................111
16.1.PROTOCOLOS................................................................................................................................................................111
16.1.1.Protocolo 802.11a............................................................................................................................................111
16.1.2.Protocolo 802.11b............................................................................................................................................111
16.1.3.Protocolo 802.11g............................................................................................................................................112
16.1.4.Protocolo 802.11n............................................................................................................................................112
16.2.CANALES DE TRANSMISIN.............................................................................................................................................112
16.3.ARQUITECTURA LAN 802.11 ......................................................................................................................................113
16.4.PROTOCOLOS DE ACCESO AL MEDIO 802.11...................................................................................................................114
17.MODELO TCP/IP.........................................................................................................................................................117
17.1.IP V4 - INTERNET PROTOCOL.........................................................................................................................................117
17.1.1.Cabecera IPv4..................................................................................................................................................118
17.1.2. Fragmentacin y ensamblado.........................................................................................................................120
17.1.3.Direccionamiento y clases IPv4.......................................................................................................................120
17.1.4.Mscaras..........................................................................................................................................................121
17.1.5.Enrutamiento....................................................................................................................................................122
17.2.IP V6 - INTERNET PROTOCOL VERSION 6..........................................................................................................................124
17.3.ICMP - INTERNET CONTROL MESSAGE PROTOCOL...........................................................................................................127
17.4.ARP - ADDRESS RESOLUTION PROTOCOL........................................................................................................................128
17.5.RARP - REVERSE ADDRESS RESOLUTION PROTOCOL.......................................................................................................130
17.6.TCP - TRANSMISSION CONTROL PROTOCOL.....................................................................................................................131
17.7.UDP - USER DATAGRAM PROTOCOL..............................................................................................................................139
18.REDES CLIENTE/SERVIDOR...................................................................................................................................141
18.1.INTRODUCCIN.............................................................................................................................................................141
18.2.ACCESO DEL CLIENTE A LA INFORMACIN..........................................................................................................................142
18.3.GESTIN DE LAS IDENTIDADES Y DE LOS PERMISOS DE ACCESO.............................................................................................142
18.3.1.Objetivos..........................................................................................................................................................143
18.3.2.Ampliacin del Active Directory de Microsoft a entornos ajenos al mismo ..................................................144
18.3.3.La fragmentacin de la gestin de las identidades y de los permisos de acceso dentro de un entorno
distribudo ..................................................................................................................................................................145
19.REDES P2P (PEER-TO-PEER)...................................................................................................................................150
19.1.ELEMENTOS DE LAS REDES P2P......................................................................................................................................151

http://www.tonet.jazztel.es

19.2.ARQUITECTURA DE LAS REDES P2P.................................................................................................................................151


19.2.1.Modelo hbrido o centralizado.........................................................................................................................151
19.2.2.Modelo P2P puro o totalmente descentralizado..............................................................................................152
19.2.3.Modelo P2P mixto o semicentralizado............................................................................................................152
19.3.COMUNICACIN EN LAS REDES P2P.................................................................................................................................153
19.3.1.Bsqueda de pares, contenidos y servicios......................................................................................................153
19.3.2.Tablas Hash Distribuidas (DHT).....................................................................................................................154
19.4.SEGURIDAD..................................................................................................................................................................156
19.5.INFORMACIN...............................................................................................................................................................156
19.6.ANCHO DE BANDA.........................................................................................................................................................157
19.7.ALMACENAMIENTO........................................................................................................................................................158
19.8.CICLOS DE PROCESADOR................................................................................................................................................159
19.9.BITTORRENT................................................................................................................................................................159
19.9.1.Interfaz.............................................................................................................................................................160
19.9.2.Implementacin................................................................................................................................................160
19.9.3.Publicando el contenido..................................................................................................................................160
19.9.4.Distribucin de los usuarios............................................................................................................................161
19.9.5.Seleccin del fragmento...................................................................................................................................161
19.9.6.Algoritmos de choking.....................................................................................................................................162
19.10.E-MULE...................................................................................................................................................................163
19.10.1.Conexin del cliente al servidor....................................................................................................................164
19.10.2.Conexin cliente a cliente..............................................................................................................................164
19.10.3.Identificacin del cliente................................................................................................................................165
19.10.4.Identificacin del usuario..............................................................................................................................166
19.10.5.Identificacin del fichero...............................................................................................................................166
19.11.SKYPE.......................................................................................................................................................................167
19.11.1.Componentes clave........................................................................................................................................168
19.11.2.Funciones.......................................................................................................................................................169
19.11.3.Inicio de sesin..............................................................................................................................................169
19.11.4.Bsqueda del Usuario....................................................................................................................................170
19.11.5.Establecimiento y desconexin de la llamada...............................................................................................170
20. REDES WAN (WIDE AREA NETWORK)...............................................................................................................171
20.1.INTRODUCCIN.............................................................................................................................................................171
20.2.CONMUTACIN DE PAQUETES POR CIRCUITO VIRTUAL..........................................................................................................171
20.3.TIPOS DE REDES WAN.................................................................................................................................................173
22.1.TIPOS DE ENLACES........................................................................................................................................................174
22.2.SISTEMAS DE TRANSMISIN DIGITAL..................................................................................................................................175
22.3.RDSI (RED DIGITAL DE SERVICIOS INTEGRADOS)...........................................................................................................175
22.4.FRAME RELAY.............................................................................................................................................................179
22.5.ADSL........................................................................................................................................................................180
22.6.MODEMS EN TELEFONA MVIL......................................................................................................................................184
22.7.CONMUTACIN DE PAQUETES POR DATAGRAMA..................................................................................................................185
22.7.1.Enrutador.........................................................................................................................................................186
22.7.2.Protocolo enrutable.........................................................................................................................................186
22.7.3.Protocolos de enrutamiento.............................................................................................................................187
23.ANALIZADORES DE PAQUETES.............................................................................................................................189
23.1.FUNCIONES..................................................................................................................................................................189
23.2.FUNCIONAMIENTO.........................................................................................................................................................189
23.3.MODO PROMISCUO O NO PROMISCUO................................................................................................................................190
23.4.FORMATO DE UN PAQUETE IP.........................................................................................................................................190
23.5.FORMATO DE UN PAQUETE TCP.....................................................................................................................................191
23.6.FORMATO DE UN PAQUETE HTTP...................................................................................................................................192
24.GESTIN DE REDES...................................................................................................................................................194
24.1.MONITORIZACIN DE LAS REDES......................................................................................................................................194
24.2.GESTIN POR NIVELES....................................................................................................................................................195
24.3.GESTIN DE ANCHO DE BANDA........................................................................................................................................196
24.3.1.Conocimiento de las lneas de comunicaciones ..............................................................................................197

http://www.tonet.jazztel.es

24.3.2.Monitorizacin Dinmica por Circuito...........................................................................................................197


25.SIMULADORES DE REDES.......................................................................................................................................198
25.1.ELEMENTOS DE UNA SIMULACIN DE REDES.......................................................................................................................199
25.2.TIPOS DE SIMULACIONES.................................................................................................................................................200
25.3.NS NETWORK SIMULATOR...........................................................................................................................................200
25.4.SIMULADOR OMNET++...............................................................................................................................................201
25.5.SIMULADOR GNS3......................................................................................................................................................201
25.6.SSFNET.....................................................................................................................................................................202
25.7.GTNETS....................................................................................................................................................................202
26.PROGRAMANDO EN RED CON PYTHON.............................................................................................................204
26.1.INTRODUCCIN.............................................................................................................................................................204
26.2.USO BSICO DEL SOCKET................................................................................................................................................204
26.3.CREANDO UN SOCKET....................................................................................................................................................205
26.4.CONECTANDO UN SOCKET Y TRANSFIRIENDO DATOS............................................................................................................206
26.5.DANDO UN NOMBRE AL SOCKET......................................................................................................................................206
26.6.ESCUCHANDO Y ACEPTANDO CONEXIONES........................................................................................................................207
26.7.SOCKETS UDP............................................................................................................................................................207
26.8.CERRANDO EL SOCKET..................................................................................................................................................208
26.9.DISEANDO UN SERVIDOR TCP......................................................................................................................................208
26.10.EL CLIENTE TCP.......................................................................................................................................................209
26.11.APLICACIN DE TRANSMISIN DE UN FICHERO..................................................................................................................209
26.11.1.Envo de un texto desde un cliente a un servidor..........................................................................................209
26.11.2.Envo de un texto desde un cliente a un servidor..........................................................................................210
26.11.3.Envo de un fichero del cliente al servidor....................................................................................................212

http://www.tonet.jazztel.es

1. Introduccin
Para ampliar los conocimientos que se exponen en este libro, el autor recomienda
los siguientes libros de los que es autor:

Los protocolos en las redes de ordenadores de Edicions UPC y


Almacenamiento de la informacin en los ordenadores en
http:www.bubok.es

1.1. El proceso de la comunicacin


La comunicacin es la consecuencia del intercambio de informacin entre distintos
agentes. Sin comunicacin, no hay posibilidad de intercambio de informacin. As
los elementos bsicos de una comunicacin son:

El emisor, es el elemento que enva la informacin y que genera los


mensajes correspondientes que contienen la informacin que se quiere
enviar. Tambin al emisor se le conoce como origen de la informacin a
enviar.

Un medio de transmisin, es el elemento a travs del cual se envan los


mensajes y que es el elemento bsico de comunicacin.

El receptor, es el elemento que debe recibir la informacin. Se le conoce


tambin como elemento destino de la informacin.

Hay 2 tipos de comunicaciones:

Un emisor y un receptor.
Un emisor y varios receptores. En este caso cada uno de los receptores
recibir la misma informacin procedente del emisor.

Una red de ordenadores nace cuando se dispone de ms de 1 ordenador y es


necesario el intercambio de informacin entre ellos. Sin embargo normalmente la
mnima composicin de dos ordenadores, se extiende a muchos ordenadores, as
en la red de redes, que es Internet, son miles los ordenadores interconectados.
Cada ordenador est configurado para funcionar como emisor y como receptor,
dependiendo de los programas que se estn ejecutando en ellos.

http://www.tonet.jazztel.es

4.1.1.Esquema genrico
Otra forma de definir las redes es basndose en el llamado sistema cliente/servidor
y que consta de los dos elementos siguientes:
-

Clientes, que son los ordenadores que emplean los usuarios de una LAN, y que
son los que solicitan la informacin almacenada en los servidores.

Servidores, que son los ordenadores que contienen la informacin o recurso


compartido. Estos ordenadores son las que proporcionan los medios para que el
cliente obtenga la informacin que necesita.

En este tipo de redes, el fallo de un ordenador cliente no afecta a los dems


usuarios. Tambin se conoce a estas redes con el nombre de proceso distribuido.
Las aplicaciones se ejecutan en los ordenadores cliente y en el caso de
aplicaciones cliente/servidor, se comunican con la parte de la aplicacin que se
ejecuta en el servidor.

Hay 2 tipos de servidores:


-

servidor dedicado, que solo da servicios y

servidor no dedicado que hace de intermediario entre dos clientes.

4.1.2.Protocolos
Los protocolos son los lenguajes que se emplean en las comunicaciones entre los
dispositivos que forman las redes de ordenadores, es decir, son la base del
intercambio de informacin entre dispositivos.
Segn el modelo de referencia OSI, protocolo es aquel conjunto de reglas y
formatos que gobiernan las comunicaciones entre entidades que ejecutan funciones
a un mismo nivel en diferentes sistemas abiertos. As un protocolo es un conjunto
de normas que se usan para componer los mensajes que contienen la informacin
a transmitir.

http://www.tonet.jazztel.es

10

Dado que estamos trabajando con redes digitales, la informacin y estructura de los
protocolos siempre es binaria, es decir, est formada por unos y ceros. As se dice
que los datos se transmiten de forma empaquetada, y que viajan como mensajes.

4.2. Redes LAN / WAN


Los conceptos de LAN y WAN son esenciales y bsicos para entender como se
interaccionan y relacionan los protocolos en las redes de datos.
Por qu se han de tener muy claros la distincin entre LAN y WAN? Porque los
protocolos que se emplean son distintos, es decir, si es una WAN, adems de los
protocolos de LAN, se utilizan aquellos protocolos de WAN de acuerdo con el tipo
de comunicaciones que se emplee.

Las caractersticas bsicas que los distingue son:

la distancia entre dispositivos

los protocolos que se emplean

las velocidades de transmisin y

los costes asociados

4.2.1.LAN
Una LAN (Local Area Network) consiste en una red de ordenadores sin que exista
entre ellos ninguna lnea de comunicaciones propiamente dicha. La comunicacin
entre LANs sin lneas de comunicaciones emplea solamente los protocolos de
LANs.

http://www.tonet.jazztel.es

11

En cuanto a las velocidades en LAN son de


Ethernet

10 Mbps, 100Mps, 1 Gbps, 10 Gbps

Token Ring

4 Mbps, 16 Mbps
Bps = bits por segundo

En cuanto a los costes, una infraestructura de LAN es bastante ms barata que una
de WAN, en cuanto no se requiere de ninguna lnea de comunicaciones.

4.3. Ejemplo de LAN


Una LAN puede ser una sala con un servidor, varias estaciones de trabajo y una
impresora compartida. En esta caso todos los dispositivos estarn conectados a un
concentrador o conmutador.

Esto se puede ampliar en el caso de una empresa que est en un edificio de varias
plantas. En este caso, se requiere como mnimo un concentrador o conmutador por
planta, y entre ellos se pueden unir mediante cable para que todos los dispositivos
de cada planta sean una unidad.
Como se ve no se contempla su acceso a Internet, ya que est conexin se
corresponde a una WAN, ya que se requiere la necesidad de la existencia de una
lnea de comunicaciones.

4.3.1.WAN
Una WAN (Wide Area Network) consta de 2 o ms LANs conectadas entre si
mediante lneas de comunicaciones. Los protocolos de estas lneas de
comunicaciones son distintos de los que se utilizan en las LANs.

El dispositivo con interfaces de LAN y WAN que comunica una LAN a otra a travs
de una lnea de comunicacin se denomina enrutador (router). En los enrutadores,
cuando la informacin entra o sale de una interface LAN, se utilizan protocolos de
LAN, pero si son interfaces de WAN, se emplean protocolos de WAN para
comunicarse con el otro extremo. Por est razn estos dispositivos han de poder
convertir internamente la informacin en base a protocolos de LAN a WAN y
viceversa.
En las comunicaciones, 1 kbps son 1000 bps, 1 Mbps son 1000000 bps y 1 Gbps
son 109 bps.
En una WAN, las velocidades oscilan entre los 33k bits por segundo en lneas
analgicas hasta 2 Mbps en Frame Relay o E1, y ultimamente con ADSL se

http://www.tonet.jazztel.es

12

alcanzan velocidades de hasta 10 Mbps. En el mundo de las comunicaciones


digitales se estn alcanzando velocidades superiores pero la relacin
precio/velocidad es muy superior a las LAN.
En WAN el precio del ancho de banda es bastante ms caro que en LAN.

4.3.2.Ejemplo de WAN
Red corporativa con fbricas o distintos edificios de oficinas dispersos en la
geografa. En cada fbica se dispone de una LAN, pero para poder intercambiar
datos entre ellas, debido a la distancia, su conexin se debe hacer utilizando lneas
de comunicaciones, que soportarn alguno de los protocolos WAN.

4.3.3.MAN
Una MAN (Metropolitan Area Network) es un concepto intermedio entre LAN y
WAN.
En cuanto a distancias se corresponde a un mbito metropolitano, es decir, de una
gran ciudad o de un campus universitario.
En cuanto a protocolos en general se emplean los de LAN o los de WAN
dependiendo del tipo de enlace que se utiliza. Si el enlace corresponde a una lnea
de comunicaciones se emplean protocolos de WAN, de lo contrario se utilizan
protocolos de LAN.
Sin embargo dadas las distancias, siempre acostumbra a haber tramos de cables
de fibra ptica y por tanto susceptible de empleo de protocolos asociados a esta
tecnologa.

http://www.tonet.jazztel.es

13

4.4. Dispositivos de las redes de ordenadores


Los dispositivos bsicos son los ordenadores, que funcionan como clientes o
servidores, as como las impresoras. Estos dispositivos se conectan a las redes
mediante las tarjetas de red (NIC), que funcionan de acuerdo con los protocolos del
nivel 2 OSI.
Otros dispositivos son:
- repetidores. Funcionan a nivel de hardware, es decir, el nivel 1 OSI,
- concentradores o hubs. Funcionan segn los protocolos del nivel 2 OSI,
- conmutadores o switches. Funcionan segn los protocolos del nivel 2 OSI,
- puentes o bridges. Funcionan segn los protocolos del nivel 2 OSI y
- enrutadores o routers. Funcionan segn los protocolos del nivel 3 OSI.

4.5. Half-duplex y full-duplex


El intercambio de datos a travs de una lnea de transmisin se puede clasificar
como simplex, half-duplex o full-duplex.
La transmisin simplex consiste en la transmisin de las seales en una nica
direccin. En las redes de ordenadores no se emplea este tipo de transmisin.
En la transmisin half-duplex solo una de las dos estaciones de un enlace punto a
punto puede transmitir simultneamente. Equivale a un puente con un solo carril y
con circulacin en ambos sentidos.
En la transmisin full-duplex, las dos estaciones pueden enviar y recibir datos
simultneamente. Siguiendo el mismo ejemplo anterior, ahora el puente tendra 2
carriles, uno para cada sentido de circulacin.

http://www.tonet.jazztel.es

5.

14

Jerarqua de niveles

En la actualidad todas las funciones necesarias para una transmisin de datos, se


distribuyen de acuerdo con varios niveles, jeraquizados entre si. As un protocolo
solo pertenece a uno de estos niveles y se comunica con los protocolos de nivel
superior y de nivel inferior. De esta manera un ordenador necesita tener instalados
tantos protocolos como niveles, y cualquier dispositivo de nivel n, necesita tener
instalados n protocolos. As se dice que una pila de protocolos estructurada en base
a un conjunto de niveles (con 1 o ms protocolos) permite las comunicaciones entre
dos aplicaciones.
Los protocolos son independientes del hardware y del sistema operativo donde
estn funcionando, aunque sus controladores si tienen que ver con el sistema
operativo donde se estn ejecutando. Las tarjetas de red dependen del hardware
donde estn instaladas, y basicamente dependen del tipo de bus de entrada/salida
al que estn asociadas.
Las pilas de protocolos ms conocidas son:
-

OSI (Open System Interconnection)

TCP/IP (Transmission Control Protocol / Internet Protocol) y

AppleTalk de Apple

5.1. Modelo OSI (Open System Interconnection)


5.1.1.Qu es?
Este modelo ha sido y sigue siendo la referencia de todos los protocolos de redes
de ordenadores incluso muchas veces en el mbito de las comunicaciones. Por
esta razn, se recomienda como base para poder organizar y entender los distintos
tipos de protocolos y su mbito de actuacin.
Se trata de un modelo dividido en niveles, cada una de los cuales realiza unas
funciones determinadas. Las razones de esta divisin de las funciones de una red
de ordenadores son las siguientes:
-

Los niveles dividen los aspectos de las operaciones de red en elementos menos
complejos.

Los niveles permiten que los ingenieros especialicen sus esfuerzos de diseo y
de desarrollo en funciones modulares.

Los niveles promueven la simetra en las distintas funciones modulares de red


para que trabajen de forma conjunta.

http://www.tonet.jazztel.es

15

Los niveles evitan que los cambios en un nivel afecten a otros niveles, de
manera que cada nivel pueda evolucionar de forma diferente.

Los niveles dividen la complejidad de la operativa de las redes en operaciones


separadas de ms fcil aprendizaje.

Sin embargo, la evolucin de los sistemas informticos y las comunicaciones


asociadas a ellas, hace que en algunos casos este modelo no sea aplicable. De
todas maneras, como modelo de referencia sigue siendo plenamente vlido.
En 1978, la Organizacin Internacional de Estndares (ISO) public un conjunto de
especificaciones que describa un sistema de arquitectura de red para interconectar
distintos dispositivos. En 1984, esta misma organizacin public una revisin de
este modelo y lo llam modelo de referencia de Interconexin de Sistemas Abiertos
(OSI - Open System Interconnection).
Este modelo consta de 7 niveles :
7

Aplicacin

Proporciona los servicios de red a las aplicaciones


del ordenador.

Presentacin

Funciones relacionadas con la representacin de


los datos. Conversin, codificacin y compresin.

Sesin

Funciones de control del dilogo entre clientes


(sesiones).

Transporte

Conexiones extremo a extremo. Segmentacin

Red

Direccionamiento y enrutamiento.

Enlace

Acceso al medio.

Fsico

Transmisin de bits.

En cuanto a los niveles 1, 2, 3 y 4 se les llama niveles de medios y a los niveles 5,


6 y 7, niveles de dispositivo. La frontera entre el nivel de transporte(4) y el nivel de
sesin(5) es en realidad la frontera entre los protocolos del nivel de aplicacin y los
protocolos de los niveles ms bajos. Mientras los niveles de sesin, presentacin y
aplicacin tienen que ver con las funciones relativas a la aplicacin, los cuatro
niveles ms bajos se refieren a los elementos del transporte de la propia red de
datos. A continuacin se describen las principales funcionalidades que deben tener
los protocolos que funcionan segn el nivel al que pertenecen.
As en la prctica resulta que el modelo OSI es un modelo terico y no hay ningn
protocolo que se ajuste de una forma especfica a un solo nivel. Los protocolos
existentes en la actualidad se ajustan al modelo OSI de forma aproximada.

5.1.2.Nivel de aplicacin (7)


Este nivel consta de las funciones que sirven para comunicar los procesos de
aplicacin con los servicios de red. Este nivel representa los servicios a disposicin
de las aplicaciones del usuario, como por ejemplo los programas para la

http://www.tonet.jazztel.es

16

transferencia de ficheros (protocolo FTP), para el acceso a base de datos y para el


correo electrnico (protocolo SMTP, MIME, POP3 y IMAP) entre otros muchos.
El nivel de aplicacin controla el acceso general a la red, el control de flujo y la
recuperacin de errores.
Algunos protocolos de este nivel son: FTP, HTTP, X-Windows, SNMP, SMB,
NetBIOS sobre TCP/IP, Telnet.

5.1.3.Nivel de presentacin (6)


El nivel de presentacin consta de las funciones que convierten los datos, el vdeo,
el sonido, los grficos, etc. a un formato adecuado para su transmisin, es decir, es
la conversin de los distintos formatos de datos a un formato comn.
Este nivel determina el formato utilizado para intercambiar datos entre equipos en
red. En emisin, las funciones de este nivel convierten los datos desde un formato
enviado por el nivel de aplicacin a otro formato intermedio reconocido. En
recepcin, las funciones de este nivel convierten el formato intermedio a un formato
til para el nivel de aplicacin de ese equipo. As las funciones de este nivel de
presentacin son las responsable de convertir los formatos, traducir los datos,
codificar los datos, cambiar o convertir el juego de caracteres y expandir los
comandos grficos.
El nivel de presentacin administra tambin la compresin de datos con el fin de
reducir el nmero de bits que se necesita transmitir.
Formatos de ficheros grficos: TIFF, BMP, JPEG, GIF
Codificacin de caracteres: ASCII, EBCDIC
Formato de ficheros de vdeo y sonido: MPEG, AVI, WAVE, MIDI, MP3
Es difcil encontrar protocolos que nicamente desarrollen funcionalidades de este
nivel. Lo ms habitual es que los protocolos del nivel de aplicacin incorporen estas
funcionalidades.

5.1.4.Nivel de sesin (5)


Las funciones del nivel de sesin establecen, administran y finalizan las sesiones
entre dos ordenadores que se estn comunicando, es decir, controlan el dilogo
entre dispositivos.
Las funciones de este nivel permiten que dos aplicaciones de dos dispositivos
distintos establezcan, usen y finalicen una conexin llamada sesin. Estas
funciones realizan el reconocimiento de nombres y as como lo relacionado con la
seguridad de la comunicacin.

http://www.tonet.jazztel.es

17

Las funciones del nivel de sesin proporcionan la sincronizacin entre las tareas de
los usuarios mediante unos puntos de control en el flujo de datos. De esta forma, si
la red falla, slo es preciso retransmitir los datos posteriores al ltimo punto de
control. Las funciones de este nivel tambin llevan a cabo el control del dilogo
entre los procesos de comunicacin, regulando el flujo de transmisin, cuando, por
cuanto tiempo, etc.
Es difcil encontrar protocolos que nicamente desarrollen funcionalidades de este
nivel. Lo ms habitual es que los protocolos del nivel de aplicaciones incorporen
estas funcionalidades.
Unos protocolos con funcionalidades de nicamente este nivel seran: NFS
(Network File System), X-Windows, RPC (Remote Procedure Call) y SQL
(Structured Query Language)

5.1.5.Nivel de transporte (4)


Los protocolos de este nivel son los responsables de entregar la informacin entre
los extremos, es decir, entre el emisor o nodo origen al receptor o nodo destino.
Las funcionalidades de los protocolos de este nivel son:
-

Fragmentar los mensajes largos recibidos de los protocolos de niveles


superiores en unidades estructuradas llamadas segmentos. En la recepcin se
ensamblan los mensajes, volvindose a obtener los mensajes con el mismo
formato en que estaban en el dispositivo origen de este nivel.

Establecer la comunicacin entre conexiones remotas

Enviar los segmentos del origen al destino.

Hay protocolos que incorporar un control de errores como el TCP y que por
tanto se dice que estos protocolos son fiables, mientras que otros no es as
como el UDP.

Las funciones de este nivel deben proporcionar un control de flujo y un control de


errores de la transmisin y participar en la solucin de los problemas relacionados
con la transmisin y la recepcin de mensajes.
El protocolo ms extendido de este nivel es el TCP, as como el UDP y el SPX.
Tambin el protocolo NetBIOS/NetBeui realiza funciones de este nivel.

5.1.6.Nivel de red (3)


Los protocolos de este nivel son los responsables de las funciones de
direccionamiento y de control (p.e. enrutamiento) necesarias para mover los datos a
travs de la red. Tambin estos protocolos tienen que establecer, mantener y
finalizar las conexiones, incluyendo la conmutacin de mensajes, el enrutamiento,

http://www.tonet.jazztel.es

18

la congestin de mensajes, el ensamblaje de mensajes y la traduccin de las


direcciones lgicas a direcciones fsicas.
Las direcciones lgicas son aquellas que identifican cada una de las interfaces de
los dispositivos y que permiten el direccionamiento de los mensajes. Su sintaxis
vara segn del protocolo de nivel de red de que se trate.
El protocolo ms extendido de este nivel es el IP (Internet Protocol), as como el IPX
(Internetwork Packet Exchange) en las redes de Novell Netware. El protocolo
NetBIOS/NetBeui realiza funciones de este nivel y el de transporte.
Tambin corresponden a este nivel los protocolos de enrutamiento como son: RIP,
BGP, IGRP y OSPF entre otros.

5.1.7.Nivel de enlace (2)


Los protocolos de este nivel son los responsables de proporcionar el trnsito de
informacin sobre un medio de transmisin o sobre una tecnologa de red. Por esta
razn este protocolo est relacionado con el tipo de acceso al medio y con la
topologa de la red. Esto se consigue empaquetando los bits procedentes del nivel
fsico en bloques de datos, y enviando stos con la necesaria sincronizacin y
orden. Los protocolos de este nivel efectan la deteccin y la correccin de errores
que pueden producirse en el nivel fsico.
Las direcciones fsicas son aquellas que identifican cada una de las interfaces de
los dispositivos y que permiten distinguir unas de otras. En el caso de las redes de
ordenadores, todas y cada una de las tarjetas de red de cada dispositivo, llevan
asociadas un nmero, establecido de forma nica por el propio fabricante. A este
identificacin se le conoce como direccin MAC (Media Access Control) y tiene una
longitud de 6 octetos (48 bits). Esta direccin MAC consta de 2 partes:
-

Los primeros 3 octetos (24 bits), corresponden a un nmero identificativo del


fabricante. Por ejemplo IBM es 10005A. La asignacin de esta numeracin est
regida por el IEEE.

Los restantes 3 octetos, es un nmero dado por el propio fabricante y que no lo


puede repetir en dos tarjetas o interfaces.

Hay dos formatos para las direcciones MAC: 0000.0c12.3456 y 00-00-0c-12-34-56.


Las funciones de los protocolos de este nivel son :
-

Inicializacin. Establecimiento de una conexin activa sobre un camino fsico ya


existente.

Identificacin. Proceso necesario para distinguir un receptor o un transmisor


entre todos los que pueden estar presentes.

Sincronizacin a nivel carcter.

Fragmentacin de los mensajes.

http://www.tonet.jazztel.es
-

Control de error.

Recuperacin de condiciones anmalas.

Terminacin.

Control del enlace.

19

El protocolo ms extendido de este nivel es el 802.3 o Ethernet. Otros protocolos


son el 802.5 o Token Ring y el FDDI.
En el mundo de las comunicaciones, los protocolos de este nivel son: HDLC, PPP,
SMDS, ATM, xDSL, Frame Relay y RDSI entre otros.

5.1.8.Nivel fsico (1)


A este nivel corresponde la determinacin de las especificaciones correspondientes
a las caractersticas mecnicas, elctricas y de procedimiento requeridas para
establecer, mantener y desactivar los enlaces fsicos. Por ejemplo, a este nivel se
determina las caractersticas fsicas de los conectores y de los cables que se
emplean en las rede cableadas.
El nivel fsico relaciona las interfaces elctrica, ptica, mecnica y funcional con el
cable o con el medio areo.
Sus funciones son :
-

Activacin y desactivacin de la conexin fsica.

Transmisin de unidades de datos del servicio fsico.

Control de nivel fsico.

Sincronizacin a nivel de bit.

Las especificaciones de este nivel sirven para que los fabricantes de hardware
hagan que sus dispositivos sean compatibles entre si, ya sean codificaciones,
voltajes, conectores, cables, etc.

5.2. Niveles TCP/IP


El Departamento de Defensa de EE.UU. (DoD) cre el modelo TCP/IP porque
necesitaba una red que pudiera sobrevivir ante cualquier circunstancia, incluso una
guerra nuclear. Supongamos que el mundo est en estado de guerra, atravesado
en todas direcciones por distintos tipos de conexiones: cables, microondas, fibras
pticas y enlaces via satlite. Imaginemos entonces que se necesita que fluya la
informacin o los datos, organizados en forma de mensajes, independientemente
de la condicin de cualquier nodo o red. El DoD desea que sus mensajes lleguen a
destino siempre, bajo cualquier condicin, desde un punto determinado a cualquier
otro punto determinado. Este problema de diseo de difcil solucin fue lo que llev

http://www.tonet.jazztel.es

20

a la creacin del modelo TCP/IP, que desde entonces se ha transformado en el


estndar a partir del cual se ha desarrollado Internet.
El modelo TCP/IP consta de cuatro niveles: el nivel de aplicacin, el nivel de
transporte, el nivel de Internet y el nivel de red. Es importante observar que algunas
de los niveles del modelo TCP/IP poseen el mismo nombre que los niveles del
modelo OSI. El nivel de aplicacin tiene diferentes funciones ya sea en el modelo
OSI o en el modelo TCP/IP, aunque se le de el mismo nombre.
Nivel TCP/IP

Nivel OSI

Aplicacin

5, 6, 7

Transporte

Internet

Red

Fsico

5.2.1.Nivel de aplicacin
Los diseadores del modelo TCP/IP acordaron que los protocolos de nivel superior
deberan incluir las funcionalidades de los niveles de sesin y de presentacin del
modelo OSI. As crearon un nivel de aplicacin que maneja los protocolos de alto
nivel y por lo tanto incluya los aspectos de representacin, codificacin y control de
dilogo. El modelo TCP/IP combina todos los aspectos relacionados con las
aplicaciones en un solo nivel y da por sentado que estos datos estn correctamente
empaquetados para el nivel siguiente.

5.2.2.Nivel de transporte
El nivel de transporte se refiere a los aspectos de la calidad del servicio con
respecto a la confiabilidad, al control de flujo y a la correccin de errores. Uno de
sus protocolos, el TCP, ofrece distintas formas de alta calidad para crear
comunicaciones de red confiables, sin problemas de flujo y con un nivel de error
bajo. TCP es un protocolo orientado a la conexin. Mantiene un dilogo entre el
origen y el destino mientras empaqueta la informacin del nivel de aplicacin en
unidades denominadas segmentos. Orientado a la conexin no significa que el
circuito exista entre los ordenadores que se estn comunicando, significa que los
segmentos del nivel 4 viajan de un extremo a otro entre dos dispositivos para
comprobar que la conexin existe lgicamente durante un determinado perodo de
tiempo.
El otro protocolo bsico en esta nivel es el UDP, que se explica con detalles ms
adelante.

http://www.tonet.jazztel.es

21

5.2.3.Nivel de Internet
La finalidad de las funcionalidades del nivel de Internet es enviar los mensajes
desde un origen de cualquier red, de forma a su destino. La ruta que seguirn a
estos mensajes depender de las configuraciones de los nodos intermedios que
son atravesados por estos mensajes.El protocolo que rige este nivel se denomina
Internet Protocol (IP). En este nivel se determina la mejor ruta. Esto se puede
comparar con un sistema postal, as cuando se enva una carta por correo, no se
sabe cmo llega a su destino, ya que existen varias rutas posibles. Lo que le
interesa es que la carta llegue.
De este nivel son los protocolos:
-

ARP/RARP: mapeo de direcciones IP y MAC y viceversa

ICMP: control de mensajes de IP

5.2.4.Nivel de red
Es la nivel que se ocupa de todos los aspectos que requiere que un paquete de
nivel de Internet IP pase a travs de un enlace fsico. Equivale a las funcionalidades
del nivel de enlace y nivel fsico del modelo OSI.

5.3. Redes Apple


AppleTalk es el nombre comercial utilizado para identificar las redes locales que
conectan ordenadores Apple Macintosh. Los protocolos que utilizan son propietarios
de Apple Computer. Sin embargo a nivel fsico emplean el mismo protocolo
especificado por la IEEE y el modelo de referencia OSI.
La estructura de protocolos es la siguiente:
Presentacin

AFP

Sesin
Transporte

ADSP
RTMP

AEP

Red
Enlace

ZIP

ASP

PAP

ATP

NBP

DDP
TokenTalk

EtherTalk

LocalTalk

Protocolos a nivel de enlace


El protocolo EtherTalk cumple las especificaciones del protocolo IEEE 802.3, el
protocolo TokenTalk las del protocolo IEEE 802.5, y FDDI Talk las del FDDI.

http://www.tonet.jazztel.es

22

Sin embargo el LocalTalk es especfico de Apple y funciona en una topologa de


bus y con el mtodo de acceso CSMA/CA.
Protocolos a nivel de red
El protocolo fundamental es el DDP. Sin embargo los protocolos NBP, ZIP y RTMP
tambin se pueden considerar de nivel de red en cuanto usan los servicios del DDP.
Este protocolo RTMP tambin sirve para intercambiarse la informacin de las tablas
de enrutamiento entre enrutadores peridicamente.
Protocolos a nivel de transporte
Bsicamente son dos: el ATP y el ADSP, el primero orientado a conexin y el
segundo de tipo stream, es decir, transmisin sin mensajes de reconocimiento.
Los dems protocolos como los ASP, AFP, PAP y AEP se pueden considerar de
aplicaciones.

5.4. Transmisin de la informacin


El modelo de referencia OSI describe como fluye la informacin a travs de la red
de los programas de aplicacin de un ordenador a otro programa de aplicacin en
otro ordenador. Como ejemplo de esta transmisin segn el modelo de referencia
OSI, supongamos que el sistema A sea un ordenador, que tiene que enviar
informacin al sistema B, que es otro ordenador. El programa de aplicacin del
sistema A comunica con el protocolo de nivel 7 del sistema A y le transmite la
informacin que debe llegar al sistema B. A continuacin enva esta informacin al
protocolo del nivel 6 del mismo sistema A y as sucesivamente hasta alcanzar el
protocolo de nivel 1 del sistema A. El nivel 1 es el que pone la informacin en el
medio fsico de la red.

A continuacin, esta informacin llega al sistema B porque estn conectados


fsicamente. El protocolo del nivel 2 absorbe esta informacin, verifica que es para
este sistema y a continuacin transmite la informacin al protocolo de nivel 2 del

http://www.tonet.jazztel.es

23

sistema B. As asciende a travs de los protocolos de los distintos niveles del


sistema B en sentido inverso hasta llegar al programa de aplicacin del propio
sistema B.
As se dice que el protocolo de cada nivel del sistema A comunica con el protocolo
de los niveles adyacentes del propio sistema A, y a su vez que el protocolo de cada
nivel del sistema A se debe corresponder con el protocolo del mismo nivel del
sistema B. As el objetivo principal del protocolo de nivel 1 del sistema A es
comunicarse con el protocolo de nivel 1 del sistema B; el protocolo de nivel 2 del
sistema A comunica con el protocolo de nivel 2 del sistema B y as sucesivamente.
El sistema de niveles del modelo OSI excluye la comunicacin directa entre niveles
iguales en distintos sistemas. Cada nivel del sistema A debe sin embargo
relacionarse con los servicios de los niveles adyacentes del sistema A, con el fin de
alcanzar la comunicacin del mismo nivel del sistema B.
Asumamos que el nivel 4 del sistema A debe comunicar con el nivel 4 del sistema
B. Para hacer esto, el protocolo de nivel 4 del sistema A debe usar los servicios del
protocolo de nivel 3 del sistema A. El nivel 4 se dice es el usuario del servicio,
mientras que el nivel 3 es el proveedor del servicio. Los servicios del nivel 3
suministran al nivel 4 un punto de acceso (SAP), que es simplemente un punto
donde se intercambian la informacin.
En el modelo TCP/IP, es exactamente igual, excepto en que hay 5 niveles en vez
de 7.

5.4.1.Encapsulacin
Ahora este apartado se centra en el modelo TCP/IP, es decir, un modelo basado en
5 niveles. Cmo es el mensaje que circula por la red a nivel fsico? Su contenido
es un conjunto de bits con unos y ceros. Este contenido ha de tener una estructura
bien determinada para que cada protocolo lo entienda y acte en funcin de ello.
As todo mensaje de un protocolo consta de cabecera, datos y control de error.
Cabecera

Datos

Control de error

Volvamos al caso de una aplicacin del sistema A que ha de transmitir informacin


a la aplicacin del sistema B. En principio la aplicacin del sistema A prepara un
mensaje de acuerdo con el formato del protocolo que se emplea a nivel 7. Por
ejemplo, el envo de un fichero con el protocolo FTP.
Esta informacin se transmite al protocolo de nivel 4. Un protocolo de nivel 4 sera
por ejemplo el TCP. Ahora el formato del mensaje sera
Cabecera
Nivel 4

Datos

http://www.tonet.jazztel.es

24

El protocolo de nivel 4 enva este mensaje al protocolo de nivel 3, por ejemplo, IP.
Ahora el formato del mensaje es
Cabecera Cabecera
Nivel 3
Nivel 4

Datos

Esto se repite con el nivel 2, con lo que el mensaje queda preparado para
transmitirlo al nivel fsico y que por tanto su estructura es
Cabecera Cabecera Cabecera
Nivel 2
Nivel 3
Nivel 4

Datos

Control
de error

Este mensaje llegar con este formato o estructura al dispositivo destino y all se
deber proceder al proceso inverso.
El protocolo de nivel 2 del sistema B lee su cabecera y de ella extrae el protocolo de
nivel 3 al que debe transmitir el mensaje.
El protocolo de nivel 3 del sistema B repite el proceso de leer su cabecera y
transmitir su mensaje al protocolo de nivel 4 indicado en su cabecera.
As llega finalmente la informacin a la aplicacin correspondiente del sistema B.
A continuacin se detalla la estructura de un mensaje, obtenida de un analizador de
redes, correspondiente a una red Ethernet, con protocolo de nivel 3 IP y de nivel 4
TCP.

SUMARY
Abs Time
1 15:35:58.5299

Destination
Backbone B

Source
Score

Summary
DLC Ethertype=0800, size=60 by
IP D=[36.54.0.11] S=[36.53.0.41]
TCP D=515 S=1023 SYN SEQ=10139

DLC:
-------------DLC Header ------------DLC:
DLC:
Frame 1 arrived at 15:35:58.5299 ; frame size is 60 (003C hex) bytes.
DLC:
Destination: Station IntrlnOO2C6O, Backbone B
DLC:
Source : Station 3Com 063885, Score
DLC:
Ethertype = 0800 (IP)
DLC:
IP:
---------------- IP Header -----------------IP:
IP: Version = 4, header length = 20 bytes
IP: Type of service = 00
IP:
000. ....
= routine
IP:
...0 ....
= normal delay
IP:
.... 0...
= normal throughput
IP:
---- -0..
= normal reliability
IP: Total length = 44 bytes
IP: Identification = 29539
IP: Flags = ox
IP: .0.. ....
= may fragment
IP: ..0. ....
= last fragment
IP: Fragment offset = 0 bytes
IP: Time to live = 14
IP: Protocol = 6 (TCP)
IP: Header checksum = F0CA (correct)
IP: Source address = [36.53.0.41]
IP: Destination address = [36.54.0.11), Lindy

http://www.tonet.jazztel.es

25

IP: No options
IP:
TCP:
--------------- TCP header ------------------------TCP:
TCP:
Source port = 1023
TCP:
Destination port = 515 (Remote print)
TCP:
Initial sequence number = 101396545
TCP:
Data offset = 24
TCP:
Flags = 02
TCP:
..0. ....
= (No urgent pointer)
TCP:
...0 ....
= (No acknowledgment)
TCP:
.... 0...
= (No push)
TCP:
.... .0..
= (No reset)
TCP:
.... ..1.
= SYN
TCP:
.... ...0
= (No FIN)
TCP:
Window = 2048
TCP:
Checksum = 0CEE (correct)
TCP:
TCP:
Options follow
TCP:
Haximum segment size = 1024

Se trata de un mensaje sin datos. El inicio de la lnea DLC corresponde al la


cabecera de nivel 2 que en este mensaje corresponde al protocolo Ethernet. El
indicativo de principio de lnea IP corresponde a la cabecera del protocolo IP de
nivel 3 y el resto es la cabecera del protocolo TCP de nivel 3.
La cabecera de un nivel contiene una identificacin del protocolo del nivel superior.
En este caso en la cabecera de nivel 2 (DLC), el cdigo 0800 corresponde al
protocolo IP de nivel 3. Lo mismo sucede con la cabecera IP, donde se especifica
el protocolo n 6, que corresponde al protocolo TCP de nivel 4.

5.4.2.Nombres de los mensajes


Es habitual en redes dar un nombre distintos a los mensajes en funcin del nivel del
protocolo de que se trate. Lo ms comn es:
-

Mensaje (message) si es de nivel aplicacin

Segmento (segment) si es de nivel 4

Paquete (packet) si es de nivel 3

Trama (frame) si es de nivel 2

El trmino PDU (Protocol Data Unit) es el nombre genrico de los mensajes


pertenezca al nivel que sea el protocolo en cuestin.

http://www.tonet.jazztel.es

26

6. Diseo de un protocolo

6.1. Los cinco elementos de un protocolo


La especificacin de un protocolo se compone de cinco partes bien diferenciadas.
Para ser completa, cada especificacin debe incluir de forma explcita:
1. El servicio a prestar por el protocolo
2. Los supuestos sobre el entorno en el que se ejecuta el protocolo
3. El vocabulario de los mensajes utilizados para implementar el protocolo
4. La codificacin (formato) de cada mensaje en el vocabulario y
5. Las reglas de procedimiento que mantienen la coherencia de los intercambios
de mensajes.

6.2. Principios generales del diseo de un protocolo


Un diseador se adherir a la disciplina slo si a cambio se puede obtener un
producto ms fiable, que se pueda demostrar y reproducir. A continuacin se
menciona los principios generales de diseo de sonido, que permite entrar en la
segunda fase de desarrollo en el campo de la ingeniera de protocolos.
Uno de los principios es la simplicidad, como es el caso de los protocolos ligeros.
Un protocolo bien estructurado se puede construir a partir de un nmero pequeo
de piezas bien diseadas y bien entendidas. Cada pieza realiza una funcin y la
realiza bien. Para entender el funcionamiento del protocolo debera ser suficiente
comprender el funcionamiento de las piezas en las que se basa y la forma en que
interactan. Los protocolos que estn diseados de esta manera son ms fciles de
entender y ms fciles de implementar de manera eficiente, y probablemente son
ms propensos a ser verificables y mantenibles. Un protocolo ligero es sencillo,
robusto y eficiente. El caso de los protocolos ligeros soporta directamente el
argumento de que la eficiencia y la verificabilidad no son ortogonales, sino
preocupaciones complementarias.
Otro principio es la modularidad basada en una jerarqua de funciones. Un
protocolo que realiza una funcin compleja se puede construir a partir de piezas
ms pequeas que se interactan en una forma simple y bien definida. Cada pieza
ms pequea es un protocolo ligero que se puede desarrollar, verificar, implementar
y mantener por separado. Las funciones ortogonales no se mezclan, ya que se

http://www.tonet.jazztel.es

27

disean como entidades independientes. Los mdulos individuales no hacen


suposiciones acerca del trabajo de los dems, o incluso de su presencia. Por
ejemplo el control de errores y el control de flujo son funciones ortogonales. Ellas se
resuelven mejor por distintos mdulos ligeros que son completamente conscientes
de la existencia de los dems. Ellos no hacen suposiciones acerca de la secuencia
de datos, a menos que sea estrictamente necesario llevarlo a cabo en su funcin.
Un esquema de correccin de errores no debe hacer suposiciones sobre el sistema
operativo, las direcciones fsicas, los mtodos de codificacin de datos, las
velocidades de las lneas, o la hora del da. Esas preocupaciones, que deberan
existir, se colocan en otros mdulos, especficamente optimizados para ese
propsito. La estructura resultante del protocolo es abierta, ampliable y modificable
sin afectar el buen funcionamiento de los componentes individuales.
Un protocolo bien construdo no es un protocolo con un exceso de especificaciones,
es decir, es un protocolo que no contiene ningn cdigo desmesurado ni imposible
de ejecutar. Un protocolo bien construdo no es un protocolo con especificaciones
incompletas. As un protocolo incompleto puede provocar recepciones no
especificados durante su ejecucin. Una recepcin no especificada se produce si
llega un mensaje cuando el receptor no lo espera recibir ni puede responder a l.
Un protocolo bien constrdo est acotado: no puede exceder los lmites conocidos
del sistema, ni sobrepasar la limitada capacidad de las colas de los mensajes. Un
protocolo bien construdo ha de tener una estabilidad automtica. Si un error
transitorio y arbitrario cambia el estado del protocolo, el protocolo ha de volver
siempre a un estado deseable en un nmero finito de transiciones, y a continuacin
reanudar el funcionamiento normal. Del mismo modo, si un protocolo se inicia en un
estado arbritario del sistema, siempre debe alcanzar uno de los estados previstos
dentro de tiempo finito. Finalmente un protocolo bien construdo ha de tener la
capacidad de auto-adaptarse. Por ejemplo, puede adaptar la tasa a la cual enva los
datos y la tasa a la cual el receptor puede recibirlos. Por ejemplo un mtodo de
control de la tasa se puede utilizar para cambiar la velocidad de una transmisin de
datos o su volumen.
Otro principio es la robustez del protocolo. No es difcil disear protocolos que
trabajen en circunstancias normales. Es lo inesperado lo que los reta. Esto significa
que el protocolo debe estar preparado para desenvolverse adecuadamente en cada
accin posible y con cada posible secuencia de acciones en todas las condiciones
posibles. El protocolo debe hacer slo un mnimo de suposiciones sobre su entorno
para evitar la dependencia respecto de las caractersticas particulares que podran
cambiar. Por ejemplo, muchos protocolos de nivel de enlace que fueron diseados
en la dcada de 1970 ya no funcionan correctamente si se utilizan en lneas de muy
alta velocidad de datos, en el rango de los Gbp. Un diseo robusto funciona
automticamente con la nueva tecnologa sin necesidad de cambios importantes.
As la mejor forma de robustez no es diseo sobredimensionado, sino que se debe
aadir la funcionalidad de las nuevas condiciones previstas.
Otro principio es la consistencia del protocolo. Hay algunas formas en las que los
protocolos pueden fallar. Las tres ms importantes son:

Puntos muertos. Los estados en los que no se puede ejecutar el protocolo,


por ejemplo porque todos los procesos del protocolo esperan condiciones
que no se puedan cumplir.

http://www.tonet.jazztel.es
de

ejecucin

28

Bucles. Las secuencias


indefinidamente.

que

se

pueden

repetir

Finales inadecuados. La finalizacin de la ejecucin de un protocolo sin que


se cumplan las condiciones de finalizacin adecuadas.
En general, la observancia de estos criterios no se puede verificar mediante
una inspeccin manual de la especificacin del protocolo. Herramientas muy
potentes son necesarias para prevenir o detectar estos fallos.

6.3. Diez reglas de diseo


Estas diez reglas de diseo son:
1. Asegurarse de que el problema est bien definido. Todos los criterios de diseo,
los requisitos y las limitaciones se deben enumerar antes del inicio del diseo.
2. Definir el servicio que se realiza en todos los niveles de abstraccin antes de
decidir qu estructuras deben usarse para realizar estos servicios.
3. Disear la funcionalidad externa antes de la funcionalidad interna. Primero
considerar la solucin como un caja negra y decidir cmo se debe interactuar con
su entorno. A continuacin decidir a cmo se puede organizar la caja negra.
Probablemente consta de cajas negras ms pequeas que pueden ser refinadas
de una forma similar.
4. Hacerlo sencillo. Los protocolos complejos son ms difcil de verificar su
funcionamiento que los simples. Tambin son ms difcil de implementar y son
menos eficientes. Ha de haber pocos problemas realmente complejos en el diseo
del protocolo. Los problemas que aparecen como complejos, son a menudo varios
problemas simples a la vez. El trabajo de los diseadores es el de identificar los
problemas ms simples, separarlos y luego resolverlos de forma individual.
5. No conectar lo que es independiente. Separar las preocupaciones ortogonales.
6. No introducir lo que no es material. No restrinjir lo que es irrelevante. Un buen
diseo ha de ser fcilmente ampliable. Un buen diseo resuelve una clase de
problemas en lugar de una sola instancia.
7. Antes de la implementacin de un diseo, construir un prototipo de alto nivel y
verificar que se cumplen los criterios de diseo.
8. Implementar el diseo, medir su rendimiento, y si es necesario, optimizarlo.
9. Comprobar que la implementacin final optimizada es la prevista en el diseo de
alto nivel.
10. No saltarse las reglas del 1 a la 7.

http://www.tonet.jazztel.es

29

7. Nivel fsico
El nivel fsico es el encargado de la transmisin de las cadenas de bits no
estructuradas sobre el medio de transmisin o el medio fsico. A este nivel
corresponde la determinacin de las especificaciones correspondientes a las
caractersticas mecnicas, elctricas y de hardware requeridas para establecer,
mantener y desactivar los enlaces fsicos. Por ejemplo, a este nivel se determina las
caractersticas fsicas de los conectores y de los cables que se emplean en las
redes. El nivel fsico relaciona las interfaces elctrica, ptica, mecnica y funcional
con el cable, si se trata de redes cableadas.
Sus funciones son :

Activacin y desactivacin de la conexin fsica.

Transmisin de unidades de datos del servicio fsico.

Control de nivel fsico.

Sincronizacin a nivel de bit.

Las especificaciones de este nivel sirven para que los fabricantes de hardware,
hagan que sus dispositivos sean compatibles entre si, ya sean conectores, cables,
etc. Por lo tanto las especificaciones de este nivel estn directamente relacionadas
con la topologa de la red. As se desarrollan en los captulos siguientes, los temas
relacionados con este nivel fsico y que son:

los conceptos de seal

los conceptos de transmisin analgica y digital

los medios de transmisin y

los tipos de codificacin

http://www.tonet.jazztel.es

8.

30

Concepto de seal

El trmino "seal" se refiere a un voltaje elctrico, un patrn luminoso o una onda


electromagntica modulada, dependiendo del medio utilizado. Esta seal vara en
funcin del medio de transmisin de que se trate y se propaga a travs del mismo
medio de transmisin. Se caracteriza por ser un valor en funcin del tiempo s(t), es
decir, su valor vara a lo largo del tiempo. Si esta seal es un voltaje o una
intensidad de corriente, es fcilmente relacionable con la potencia.

8.1. Tipos de seales : continuas y discretas


Seal continua
Es aquella seal en la que su intensidad vara suavemente con el tiempo, es decir,
no presenta discontinuidades. Matemticamente si s(t) es la funcin temporal
correspondiente, y a su vez es continua, se cumplir que limt->a s(t) = s(a) para
cualquier valor de a. Por ejemplo la funcin s(t)=A sen 2 fs t es una funcin
continua.

Seal continua
Ejemplo de seales continuas puede ser la voz, las imgenes de TV, etc.
Un tipo especial de seal continua son las seales peridicas.
Seal discreta
Es aquella seal en la que su intensidad se mantiene constante durante un
determinado intervalo de tiempo, tras el cual la seal cambia a otro valor constante,
es decir, presenta discontinuidades o saltos en el tiempo.

http://www.tonet.jazztel.es

31

Seal discreta
Otro ejemplo es el caso de una onda cuadrada.

Una seal discreta es la utilizada en la transmisin de datos binarios.

8.2. Dominio temporal y dominio frecuencial


Cualquier seal, ya sea continua o discreta, se expresa como una funcin del
tiempo (dominio temporal) o como una funcin de la frecuencia (dominio
frecuencial), en tanto en cuanto se puede descomponer como la suma de
frecuencias, cada una de ellas con un factor. Por ejemplo la funcin temporal s(t) =
A sen 2fst, tiene su equivalencia en la funcin frecuencial s(f) = A para f =fs y cero
para las dems frecuencias.
Mediante la transformada de Fourier, se puede descomponer cualquier seal
temporal en una seal constituida por componentes senoidales de distintas
frecuencias, por tanto, cualquier funcin temporal tiene su equivalencia en una
funcin frecuencial. As si s(t) es una funcin temporal, su funcin frecuencial es

http://www.tonet.jazztel.es

32

s(f) = s(t) e j 2 ft dt

Por tanto, para cada seal se puede decir que hay una funcin en el dominio
temporal que determina la amplitud de la seal en cada instante de tiempo.
Igualmente, hay una funcin en el dominio frecuencial que especifica las
frecuencias constitutivas de la seal.

8.2.1.Ancho de banda
Una transmisin siempre se hace a una frecuencia determinada. Sin embargo en la
realidad es imposible transmitir solo con una frecuencia fija. La razn es que
siempre hay distorsiones e interferencias, y la descomposicin de la seal en
frecuencias (transformada de Fourier) consta de una frecuencia principal y otras
frecuencias de menor potencia.
El ancho de banda es el rango de frecuencias alrededor de la frecuencia principal y
en la que est confinada la mayor parte de la energa de la seal.

http://www.tonet.jazztel.es

33

Hay distintos criterios para su evaluacin, y los ms utilizados son


-

el criterio de potencia mitad, equivalente a la banda de los 3 dB

el criterio de equivalencia de la seal rectangular

el criterio de valor nulo a valor nulo

el criterio de potencial fraccional, que es el adoptado por la FCC. Deja fuera el


0,5% por cada extremo, es decir, es el 99%

los valores del 35 50 dB

el criterio de ancho de banda absoluto, es el equivalente del 100%, por lo que es


utpico.

Si se transmiten todas las frecuencias, el receptor podr reconstruir fielmente la


seal origen. Si se restringe el rango de frecuencias que se transmiten, la seal a
reconstruir por el receptor diferir en ms o menos con la original. As en la prctica,
no es ncesario transmitir todas las frecuencias para que el receptor pueda
reconstruir la seal con una fiabilidad suficiente.

8.3. Transmisin analgica y transmisin digital


8.3.1.Transmisin analgica
La transmisin analgica es la transmisin de seales independientemente de su
contenido. Se pueden transmitir seales continuas o discretas. El receptor debe
recibir la seal del transmisor con la mxima fiabilidad.
Si las seales son continuas, se pueden transmitir fcilmente y de una forma poco
costosa en banda base, es decir, sin ningn tipo de modulacin. Modulacin es la
alteracin sistemtica de una onda sinusoidal, llamada seal portadora, en funcin
de las caractersticas de otra seal, llamada moduladora. Esta seal es la que
contiene la informacin que se transmite. El empleo de modulacin permite
desplazar el ancho de banda de la seal en banda base hacia otra zona del
espectro como es el caso de la multiplexacin por divisin de frecuencias.
Si la transmisin analgica es de seales discretas, es necesario el empleo de
modems (modulador/demodulador) que convierta las seales discretas en seales
analgicas, antes de realizar su transmisin.

8.3.2.Transmisin digital
La transmisin digital es la transmisin de smbolos con cierto grado de exactitud
en un tiempo determinado. A este intervalo se le llama tiempo de smbolo. La
informacin son bits, y un grupo de ellos representan a cada smbolo. Un bit tiene
dos estados: 0 y 1. Cada uno de ellos puede equivaler a un voltaje, as por ejemplo
el 0 corresponder a un voltaje positivo +V y el 1 al mismo volyaje pero con signo
negativo V.

http://www.tonet.jazztel.es

34

En el caso de los smbolos, con n bits, se pueden representar 2n smbolos o a la


inversa, cuntos bits se necesitan para representar M smbolos?
N = log2 M bits
Ahora si a cada smbolo, le ha de corresponder un nivel de tensin, en el caso de
un smbolo representado por 2 bits, una posible combinacin de voltajes sera
Smbolo

Tensin

11

+V1

10

+V2

01

-V2

00

-V1

La transmisin de seales discretas es la transmisin caracterstica de las redes de


ordenadores. Con el fin de regenerar la seal, que se atenua a lo largo de un
recorrido, se emplean repetidores.
Si las seales son continuas, primero tienen que ser digitalizadas. Luego se
pueden transmitir tal cual o aplicando algn tipo de modulacin.

8.3.3.Resumen
Transmisin analgica

Transmisin digital

Seal continua

En banda base o con Antes de la transmisin, se


modulacin.
deben digitalizar las seales
continuas.

Seal discreta

No se usa

Es una transmisin directa


con o sin codificacin.

8.4. Velocidad de modulacin, velocidad de transmisin y criterio de


Nyquist
8.4.1.Velocidad de propagacin
Se define la velocidad de propagacin Vp como la velocidad a la que se transmite la
seal a travs de un medio de transmisin. Esta velocidad de propagacin
determina el tiempo de propagacin de la seal y unicamente depende de la
distancia a recorrer entre el emisor y el receptor.

http://www.tonet.jazztel.es

35

Asi si llamamos tp al tiempo de propagacin, su valor viene determinado por la


frmula
tp = distancia / Vp

8.4.2.Velocidad de transmisin
Se entiende por velocidad de transmisin Vt al nmero de bits que se transmiten
por unidad de tiempo. Su unidad es bits por segundo (bps). Esta velocidad depende
de las caractersticas de los equipos de transmisin y recepcin.
Si la transmisin de 1 bit dura Tb segundos, la velocidad de transmisin Vt = 1/Tb
bps
As el tiempo de transmisin de n bits valdr
t t = n / Vt

8.4.3.Velocidad de modulacin
Se entiende por velocidad de modulacin Vm al nmero de smbolos que se
transmiten por unidad de tiempo. Su unidad son los baudios.
Si la transmisin de 1 smbolo dura T s segundos, la velocidad de modulacin valdr
Vm = 1/Ts baudios

8.4.4.Relacin entre velocidad de transmisin y de modulacin


La relacin entre la velocidad de transmisin Vt y la velocidad de modulacin Vm es
el nmero de bits n que se emplean para la representacin de un smbolo.
V t = Vm n
As si cada bit representa un smbolo, es decir, n = 1, en este caso la velocidad de
transmisin Vt es igual a la velocidad de modulacin Vm
De la misma forma con n=2, es decir, que cada smbolo se represente por 2 bits,
entonces Vt = 2 Vm.

8.4.5.Relacin entre la velocidad de transmisin y las frecuencias


Si el tiempo de smbolo Ts disminuye, su frecuencia fs aumenta, dado que fs = 1 / Ts,
y por consiguiente aumenta la velocidad de modulacin.
Si el tiempo de smbolo Ts aumenta, su frecuencia fs disminuye, dado que fs = 1 / Ts,
y por consiguiente disminuye la velocidad de modulacin.

http://www.tonet.jazztel.es

36

8.4.6.Criterio de Nyquist
Segn Nyquist, en un sistema sin ruido y dado un ancho de banda Bw, la velocidad
mxima de modulacin Vm que se puede transmitir es
Vm = 2 B w
en el caso de seales de un solo nivel. As con un canal de voz de 3100 Hz, la
velocidad mxima de modulacin es 6200 bps.
En el caso de seales multinivel, la capacidad mxima de canal que se necesita es
Cmax = 2 Bw log2 M
donde Vm la velocidad de transmisin y M el nmero de niveles. Por ejemplo, en el
ejemplo anterior, si M=8, valor frecuente en los modems,
C = 2 3100 log2 8 = 2 3100 3 = 18600 bps

8.5. Concepto de distorsin


Una seal mientras se transmite y circula atravs de un medio, vara de forma, con
lo que el receptor no recibe exactamente lo mismo que el emisor ha enviado. A esta
fenmeno se le llama distorsin.
Hay dos tipos de distorsiones: lineal y del retardo.
Distorsin lineal
Es el fenmeno producido porque el mdulo de la funcin de transferencia no es
constante y como consecuencia de lo cual no todas las frecuencias son transferidas
con el mismo valor.
Distorsin del retardo
Es el fenmeno producido porque la velocidad de propagacin vara con la
frecuencia de la seal y en consecuencia cada una de las frecuencias no tarda el
mismo tiempo en llegar al destino.
As si el retardo es muy grande, se puede producir lo que se llama interferencia
intersimblica (ISI), es decir, puede haber solapamiento de seales de distintas
frecuencias, porque hay frecuencias que llegan antes que la frecuencia base o
principal y otras llegan despus de la frecuencia base o principal.
A esta distorsin del retardo, tambin se le llama dispersin, ya que en este caso
la seal se ensancha con el tiempo. La dispersin se puede solucionar a travs del
un diseo adecuado de los cables, limitando su longitud y detectando cul es la
impedancia adecuada. En el caso de la fibra ptica, la dispersin se puede controlar

http://www.tonet.jazztel.es

37

utilizando luz lser con una longitud de onda muy especfica. En el caso de las
comunicaciones inalmbricas, la dispersin se puede reducir al mnimo a travs de
las frecuencias que se usan para realizar la transmisin.
Fluctuacin de fase
Todos los sistemas digitales disponen de relojes que son los que marcan el ritmo de
procesamiento de sus sistemas. As cada CPU contiene un reloj que por un lado
marca la velocidad de procesamiento y por otro lado controla la frecuencia de los
bits transmitidos y recibidos. Si el reloj del dispositivo origen no est sincronizado
con el reloj del dispositivo destino, se producir una fluctuacin de fase de
temporizacin. Esto significa que los bits llegarn un poco antes o despus de lo
esperado. La fluctuacin de fase se puede solucionar mediante una serie de
complicadas sincronizaciones de reloj, incluyendo sincronizaciones de hardware y
software, o de protocolo.
Latencia
La latencia, tambin denominada demora, es el tiempo que tarda la seal en llegar
desde el emisor y al receptor.
Esta latencia tiene dos causas principales:

la velocidad de propagacin y

el procesamiento de las seales dentro de los dispositivos. Esto sucede cuando


se trata de un dispositivo de enrutamiento. La funcin principal de este tipo de
dispositivos es reencaminar una seal que le llega, para a continuacin
reenviarla. Por esta razn el dispositivo que recibe la seal, debe analizarla y
esto lleva tiempo. Este tiempo es una latencia.

8.6. Concepto de atenuacin


Atenuacin es la prdida de la potencia de la seal como consecuencia de recorrer
una distancia a travs de un medio durante una transmisin. Esto significa que si se
trata de un voltaje de una seal de 1 bit, esta seal pierde amplitud a medida que
recorre la distancia a recorrer entre el emisor y el receptor. Una seleccin cuidadosa
de los materiales y una geometra (forma y posicionamiento) del cable puede
disminuir la atenuacin elctrica, aunque no se puede evitar que se produzcan
prdidas cuando se trata de una transmisin por cable debido al efecto de la
resistencia elctrica. La atenuacin puede afectar a una red dado que limita la
longitud de los cables de la red a travs de la cual se envia un mensaje. Si el cable
es demasiado largo o demasiado atenuante, un bit que se enva desde el origen
puede parecer un bit cero para el momento en que llega al destino.
La atenuacin tambin se produce en las seales pticas, dado que la fibra ptica
absorbe y dispersa parte de la energa luminosa a medida que el pulso luminoso,
un bit, se desplaza a travs de la fibra. Esto se puede reducir considerablemente
mediante el empleo de una longitud de onda determinada. Esto tambin se puede

http://www.tonet.jazztel.es

38

reducir dependiendo del tipo de fibra utilizada. A pesar de todo la atenuacin de la


seal es inevitable.
La atenuacin tambin se produce con las ondas de radio y las microondas, ya que
stas son absorbidas y dispersadas por molculas especficas de la atmsfera.
La atenuacin At se mide como la relacin entre la potencia del emisor Pe y la
potencia del receptor Pr
At = Pe / Pr
La unidad de medida de la atenuacin es el decibelio y se define como el valor del
cociente entre dos niveles de seal, tomando a uno como referencia. As por
ejemplo si tenemos una potencia P con una unidad de medida cualquiera, y otra Pref
con la misma unidad de medida, si queremos expresar su relacin en decibelios,
emplearemos la frmula
P (dB) = 10 log10 P / Pref
Dado el carcter logartmico del decibelio, la expresin de la atenuacin en
decibelios es
At = Pe (dB)- Pr (dB)
Si es el parmetro de calidad de un cable, es decir, el nmero de db/km, entonces
At = D = Pe (dB) - Pr (dB)
Tres consideraciones respecto a la atenuacin:
-

La seal recibida debe tener suficiente energa para que la electrnica del
receptor pueda detectar e interpretar la seal adecuadamente, es decir, la
interprete de forma que coincida con su valor original.

Para poder ser reproducida con suficiente fiabilidad, la seal debe conservar un
nivel suficientemente mayor que el ruido, es decir, la relacin seal/ruido debe
ser lo ms alta posible.

La atenuacin es una funcin creciente de la frecuencia.

Con el fin de regenerar esta prdida de potencia, se instalan los llamados


amplificadores. Son equipos electrnicos que aumentan la potencia recibida por
un factor de ganancia G. En este caso si la potencia de entrada al amplificador es
Pe y la de salida Ps,
G = Ps / Pe o en dB, sera G = Ps - Pe
As si la potencia de entrada es de 1 mW y la de salida 1 w,
G = 1 / 0,001 = 1000 y en dB, G = 10 log10 1000 = 30 dB

http://www.tonet.jazztel.es

39

8.7. Fuentes de ruido


El ruido es un conjunto de seales no deseadas que interfieren a las seales
elctricas, pticas o electromagnticas que se transmiten. Ninguna seal elctrica
se produce sin ruido, sin embargo, lo importante es mantener la relacin seal/ruido
(S/N) lo ms alta posible, de forma que la proporcin del nivel de ruido sobre la
amplitud de la seal sea la menor posible, porque de esta manera la distorsin es
menos sensible. En otras palabras, cada bit recibe seales adicionales no
deseadas desde varias fuentes. Demasiado ruido puede corromper un bit, haciendo
que un 1 binario se transforme en un 0 binario, o un 0 en un 1, y por tanto que se
corrompa el mensaje.
Los aparatos que generan ruido son por ejemplo: las luces fluorescentes, las
estufas, las radios, los filtros de aire, los televisores, los ordenadores, los sensores
de movimiento, los radares, los motores, los interruptores, los aparatos de
soldadura, los dispositivos electrnicos de encendido automtico de todo tipo,etc.
El ruido puede clasificarse segn su origen en
-

ruido impulsivo (EMI, ...)

diafona (crosstalk) y

ruido trmico.

El ruido se mide calculando la relacin seal/ruido en decibelios. As se define la


relacin seal/ruido como
S/N = 10 log10 (Potencia de seal / Potencia de ruido)
Una relacin seal/ ruido (S/N) alta significar una seal de alta calidad.

8.7.1.EMI/RFI (Interferencia electromagntica/interferencia de la


radiofrecuencia)
Las fuentes externas que pueden disminuir la calidad de las seales elctricas que
se transmiten por un cable son los sistemas de iluminacin, los motores elctricos y
los sistemas de radio. Estos tipos de interferencia pueden generar una interferencia
electromagntica (EMI) y una interferencia de la radiofrecuencia (RFI).
En los cables con varios conductores en cada uno de ellos, cada conductor puede
actuar como una antena. Cuando esto sucede, el conductor absorbe las seales
elctricas de los dems conductores y de las fuentes elctricas ubicadas fuera del
cable. Si el ruido elctrico resultante alcanza un nivel lo suficientemente alto, puede
ser difcil para las tarjetas de red discriminar el ruido de la seal de datos. Esto es
un problema especialmente porque la mayora de las LAN utilizan frecuencias en la
regin de 1-100 MHz, que es la banda de las seales de la radio FM y las seales

http://www.tonet.jazztel.es

40

de televisin y tambin muchos otros aparatos tienen sus frecuencias operativas en


estas bandas.
Para comprender de qu manera el ruido elctrico de cualquier origen causa un
impacto en las seales digitales, imaginemos que se desea enviar datos,
representados por el nmero binario 1011001001101, a travs de una red. El
ordenador convierte el nmero binario en una seal digital. La seal digital se
transmite a travs de los medios de la red hacia el destino. El destino como es un
ordenador, estar cerca de un toma de corriente elctrica que es alimentada por
cables largos neutros y con conexin a tierra. Estos cables actan como una antena
a efectos del ruido elctrico. Como el chasis del ordenador destino se utiliza tanto
para la conexin a tierra como para la conexin a tierra de referencia de seal, este
ruido interfiere con la seal digital que recibe el ordenador. As podra suceder que
el ordenador destino en vez de leer 1011001001101, podra leer la seal como
1011000101101, es decir, que los bits 7 y 8 resultasen cambiados. Evidentemente
el ordenador actuara de forma difstinta.
A diferencia de los sistemas que utilizan cable de cobre, los sistemas inalmbricos
son particularmente propensos a la interferencia electromagntica y a la
interferencia de la radiofrecuencia.
Para evitar el problema de la conexin a tierra de referencia de la seal, es
importante trabajar en estrecha relacin con el contratista elctrico y la compaa de
electricidad, con el fin de obtener la mejor y la ms corta conexin elctrica a tierra.
Al trabajar con el contratista elctrico, se debe solicitar la instalacin para cada rea
de oficina de paneles separados de distribucin de electricidad, tambin conocidos
como disyuntores. Dado que los cables neutros y de conexin a tierra de cada toma
de corriente se juntan en el disyuntor, al tomar esta medida aumentarn las
posibilidades de acortar la longitud de la conexin a tierra. Si bien el instalar
paneles individuales de distribucin de electricidad para cada grupo de ordenadores
aumentar el costo primario del cableado elctrico, esto reducir la longitud de los
cables de conexin a tierra y limitar varios tipos de ruido elctrico que enmascaran
las seales.
Hay varias formas de limitar la interferencia electromagntica (EMI) y la
interferencia de la radiofrecuencia (RFI). Una forma consiste en aumentar la
seccin de los cables conductores. Otra forma sera mejorar el tipo de aislante
empleado. Sin embargo estos mtodos aumentan el tamao y el costo de los
cables, sin mejorar demasiado la calidad.
Dos de las tcnicas que los diseadores de cables han usado con xito para
disminuir la EMI y la RFI, son el blindaje y la cancelacin. En el caso de un cable
que utiliza blindaje, cada par de hilos o grupo de pares de hilos se recubre de una
malla o un papel metlico. Este blindaje acta como barrera contra las seales de
interferencia. Sin embargo, al igual que el uso de conductores de mayor seccin, el
uso de revestimientos de malla o papel metlico aumenta el dimetro del cable y en
consecuencia tambin aumentan los costos.
En cuanto a la cancelacin, es la tcnica ms comnmente empleada para proteger
los cables de las interferencias indeseables. Cuando la corriente elctrica fluye a
travs de un cable, crea un pequeo campo magntico circular a su alrededor. La

http://www.tonet.jazztel.es

41

direccin de estas lneas de fuerza magntica se determina por la direccin en la


cual fluye la corriente a lo largo del cable. Si dos cables forman parte del mismo
circuito elctrico, los electrones fluyen desde la fuente de voltaje negativo hacia el
destino a lo largo de un cable. Luego los electrones fluyen desde el destino hacia la
fuente de voltaje positivo a lo largo del otro cable. Cuando dos cables de un circuito
elctrico se colocan uno cerca del otro, los campos magnticos de un cable son el
opuesto exacto del otro. As los dos campos magnticos se cancelan entre s.
Tambin se cancelarn cualquier otro campo magntico externo. El hecho de
trenzar los cables puede mejorar el efecto de cancelacin. Si se usa la cancelacin
en combinacin con cables trenzados, los diseadores de cables pueden brindar un
mtodo efectivo para proporcionar un autoblindaje para los pares de hilos dentro de
los medios de la red.

8.7.2.Diafona (Crosstalk)
Cuando el ruido elctrico del cable tiene origen en las seales de otros conductores
del cable, se dice que hay diafona. Cuando dos hilos estn colocados uno muy
cerca del otro y no estn trenzados, la energa de un hilo puede trasladarse al hilo
adyacente y viceversa. Esto puede provocar ruido en ambos extremos de un cable.
En realidad existen muchas formas de diafona que se deben tener en cuenta al
desarrollar las redes de ordenadores. En ingls diafona es NEXT (near-end Xcrosstalk).
El efecto de la diafona aumenta con la frecuencia, porque a frecuencias ms altas,
se propaga ms energa. Por el contrario, disminuye con la longitud.

8.7.3.Ruido trmico
El ruido trmico es debido al movimiento aleatorio de electrones dentro de los
cables. Este ruido trmico es inevitable pero por lo general es relativamente
insignificante su valor en comparacin con las seales digitales. Se dice que el
ruido es blanco si su densidad espectral es plana para todas las frecuencias.
Segn Shanon, en un sistema con ruido, la capacidad mxima del canal, en bps,
es la mxima velocidad a la que se puede transmitir la informacin con una
probabilidad de error acotada. Es decir Shannon ampla en trabajo de Nyquist a
sistemas con ruido y que por tanto se ajustan ms a la realidad.
As la definicin de capacidad mxima de canal es
C = Bw log2 (1 + S/N )
siendo Bw el ancho de banda en hz y S/N la relacin seal / ruido en valores
absolutos.
Si la velocidad de transmisin Vt es inferior a la capacidad de canal C, se puede
encontrar un esquema de codificacin con una probabilidad de error acotada.

http://www.tonet.jazztel.es

42

Si la velocidad de transmisin Vt es superior a la capacidad de canal C, no es


posible transmitir informacin sin errores.
Por ejemplo, supongamos que tenemos un canal telefnico con un ancho de banda
Bw de 4 kHz y una relacin seal/ruido de 30 dB. Con el fin de aplicar la frmula de
Shanon, primero debemos transformar el valor de la relacin seal/ruido a valores
absolutos.
30 = 10 log10 (S/N) por tanto 3 = log10 (S/N) y en consecuencia S/N = 1000
C = 4000 log2 (1 + 1000) = 4000 log2 1001 = 4000 ( log10 1001 /log10 2)
C = 4000 (3,000434 / 0,301030) = 39869 bps
Este es el lmite de un canal telefnico.

8.8. Reflexin de la seal


Para comprender la reflexin de una seal, nos tenemos que imaginar una soga
extendida y sostenida por una persona en cada extremo. Luego imaginemos que
una persona le enva a la otra persona un "pulso" o un mensaje de 1 bit. Si se
observa cuidadosamente, se ver que una pequea onda (pulso) vuelve (se refleja)
hacia el que origin el pulso.
Esta reflexin se produce en las seales elctricas. Cuando los pulsos de voltaje, o
bits, tropiezan con una discontinuidad, se pueden producir reflexiones de la energa.
Si no se controla cuidadosamente este efecto, esta energa puede interferir con bits
posteriores. Recordemos que aunque en este momento estamos considerando slo
1 bit a la vez, en las redes reales se envian millones y miles de millones de bits por
segundo, lo que requiere tener en cuenta este pulso de energa reflejado. Segn el
cableado y las conexiones que utiliza la red, las reflexiones pueden o no ser un
problema.
La reflexin tambin se produce en el caso de las seales pticas. Las seales
pticas reflejan si tropiezan con alguna discontinuidad en el medio, como en el caso
de un conector enchufado a un dispositivo. Este efecto se puede apreciar de noche,
al mirar a travs de una ventana. Usted puede ver su reflejo en una ventana aunque
la ventana no es un espejo. Parte de la luz que se refleja desde su cuerpo se refleja
en la ventana. Este fenmeno tambin se produce en el caso de las ondas de radio
y las microondas, ya que detectan distintas capas en la atmsfera.
Para un funcionamiento ptimo de la red, es importante que los medios de
transmisin tengan una impedancia especfica para que concuerden con los
componentes elctricos de las tarjetas de red. A menos que los medios de
transmisin tengan la impedancia correcta, la seal experimentar una determinada
reflexin y se crear la interferencia correspondiente. A continuacin se pueden
producir mltiples pulsos reflejados. Ya sea que el sistema sea elctrico, ptico o
inalmbrico, la falta de acoplamiento en cuanto a la impedancia puede provocar

http://www.tonet.jazztel.es

43

reflexiones. Si se refleja suficiente energa, un bit que puede tener dos estados 0
1, se pueden confundir debido a toda la energa adicional que se genera a su
alrededor.

http://www.tonet.jazztel.es

9.

44

Lneas de transmisin

La lnea de transmisin es el camino fsico a travs del cual se propaga la seal. La


transmisin de datos entre un emisor y un receptor siempre se realiza a travs de
una lnea de transmisin. Los medios de transmisin se pueden clasificar como
guiados y no guiados.
En los medios guiados, las ondas se transmiten confinndolas a lo largo de un
medio fsico, tales como pares trenzados, cables coaxiales y fibras pticas. Por el
contrario, los medios no guiados proporcionan una forma de transmitir las ondas
electromagnticas pero sin encauzarlas, como por ejemplo en la propagacin a
travs del aire, el mar o el vaco.
Los medios guiados pueden ser:

con cable de cobre: coaxial o par trenzado

de fibra ptica: multimodo y monomodo

Los medios no guiados son por ejemplo las redes inalmbricas, las emisiones de
radio y TV, y las transmisiones via satlite.

9.1. Cable coaxial


El cable coaxial est formado por un ncleo de cobre rodeado por un aislante, una
malla metlica que hace de apantallamiento y una cubierta exterior. El
apantallamiento protege la seal transmitida contra las interferencias de seales
externas indeseadas o ruidos. El cable coaxial es ms robusto frente a las
interferencias y a la atenuacin que el par trenzado. El blindaje forma parte del
circuito de datos.

http://www.tonet.jazztel.es

45

Hay 2 tipos bsicos de cable coaxial:


-

Fino. Tiene un grosor de 6 mm y se conecta directamente a las tarjetas de red.


La distancia recomendable mxima es de 185 m. y una impedancia de 50 ohm.

Grueso. Tiene un grosor de 12 mm. y su distancia mxima recomendable es de


500 m. Tambin tiene una impedancia. 50 ohm. No se conecta directamente a
las tarjetas de red, por lo que utiliza un transceptor, que consiste en una caja
que pinza al coaxial grueso por un lado, y por el otro tiene un conector, al cual
se conecta el cable coaxial a la tarjeta de red. Este conector es conocido como
AUI.

Los conectores de los cables coaxiales son conocidos como BNC (British Naval
Connector), y hay de 3 tipos: cilndrico, en T y terminador.

9.2. Par trenzado


El cable de par trenzado ms sencillo est formado por 2 conductores de cobre
enttrelazados entre s y con una cubierta aislante.
Hay 2 tipos: sin apantallar (UTP) y apantallados (STP). El UTP tiene una
impedancia de 100 ohm y el STP de 150 ohm. El cable STP, a diferencia del cable
coaxial, la malla de apantallamiento no forma parte del circuito de datos.
El cable apantallado STP mejora la respuesta a las interferencias respecto al UTP,
pero por el otro lado disminuye el ancho de banda mximo soportado.
Sus especificaciones corresponden a la norma 568 de EIA/TIA, y de acuerdo con
sta hay 7 categoras:
-

Categora 1. Empleado solo en voz.

Categora 2. Consta de 4 pares trenzados y solo se recomiendan hasta 4 Mbps.

Categora 3. Consta de 4 pares trenzados y solo se recomiendan hasta 10


Mbps.

Categora 4. Consta de 4 pares trenzados y solo se recomiendan hasta 16


Mbps.

Categora 5. Consta de 4 pares trenzados y solo se recomiendan hasta 100


Mbps.

Categora 6. Consta de 4 pares trenzados y solo se recomiendan hasta 250


Mbps.

Categora 7. Consta de 4 pares trenzados y solo se recomiendan hasta 600


Mbps.

Se recomiendan distancias mximas de 100 m.


Los conectores que se emplean son el RJ-11 de 4 hilos y el RJ-45 de 8 hilos.

http://www.tonet.jazztel.es

46

Tabla de atenuaciones mximas en dB de un cable de 305 m. a 20C


Frecuencia (Mhz)
1
4
10
16
20
25
100

Categora 3
7,8
17
30
40
-

Categora 4 Categora 5
6,5
6,3
13
13
22
20
27
25
31
28
32
67

9.3. Fibra ptica


Este cable consiste en un ncleo, que es la fibra ptica propiamente dicha, y un
revestimiento o cladding. No solo se fabrican cables de una sola fibra, sino tambin
agrupaciones de cables de ms de una fibra. Este medio fsico consiste en la
transmisin de la informacin mediante la luz. En la actualidad hay de 2 tipos:
monomodo y multimodo.
El trmino multimodo indica que pueden ser guiados muchos modos o rayos
luminosos cada uno de los cuales sigue un camino distinto dentro de la fibra ptica.
Las fibras multimodo son las habituales y tienen un dimetro del ncleo superior a
10 micras. Su distancia mxima recomendada es de 10 km.
Las fibras monomodo solo permiten la propagacin de un nico modo o rayo, el
cual se propaga directamente sin reflexin. Estas fibras tienen un dimetro del
ncleo inferior a 10 micras. Se recomienda distancias mximas de 100 Km.

Las caractersticas pticas, geomtricas y de transmisin se recogen en las


recomendaciones del CCITT, tales como las G.651 y G.652

http://www.tonet.jazztel.es

47

Sus ventajas son:


-

bajas prdidas, y en consecuencia necesidad de menor nmero de repetidores

gran anchura de banda, y en consecuencia bajo coste por canal

resistencia a radiaciones e inmunidad a las interferencias electromagnticas, es


decir, no necesita apantallamiento

estable con la temperatura

bajo precio

Sus inconvenientes son:


-

necesidad de radios de curvatura amplios para disminuir de forma importante las


atenuaciones

difcil de empalmar (conectorizacin y empalmes). Tipos: empalme, fusin,


mecnico, pigtails

difcil de intervenir en cuanto a reparaciones.

En cuanto a los conectores, existen bsicamente 6 tipos:


-

SMA. Anclaje por rosca y slo se utiliza en fibras multimodo. Prdidas de 1 dB


en 50/125 micras.

Bicnico. Anclaje por rosca. Prdidas de 0,6 dB en 50/125 micras.

ST. Anclaje por bayoneta. Prdidas de 0,3 dB en 50/125 micras.

Mini BNC. Anclaje por bayoneta y slo se utiliza en fibras multimodo. Prdidas
de 0,7 dB en 59/125 micras.

FC/PC. Anclaje por gua y rosca. Prdidas de 0,1 dB en 50/125 micras.

SC. Anclaje por push-pull. Prdidas de 0,3 dB en 50/125 micras.

http://www.tonet.jazztel.es

48

En la actualidad lo caro son las interfaces, y hay 2 tipos de focos de emisin:


-

LED para fibra multimodo y

Lser para fibra monomodo.

La atenuacin en las fibras pticas es producida por tres causas: dispersin, debida
a defectos microscpicos de la fibra; absorcin, debida a materiales no deseados
de la fibra y flexin debida a las curvaturas.
A continuacin se expone un ejemplo del clculo de una transmisin por fibta
ptica. Se trata de un emisor con una potencia de -14 dB y un receptor con una
sensibilidad de -29 dB. Entre ellos se ha tendido un cable de fibra ptica de 2500
metros, habiendo 4 empalmes por fusin en este tramo. Los conectores que se
emplean son ST y se calcula el margen del diseo. Para ello es necesario el clculo
de las prdidas totales.
Potencia de transmisin

-14 dB

Sensibilidad del receptor

-29 dB

Ganancia disponible del sistema:

15 dB

4 empalmes por fusin (0.1 dB cada uno):

0.4 dB

2500 metros de cable de fibra ptica (3.5 dB/Km):


2 conectores ST (0.5 dB mx. por conector):
Total de prdidas:
Margen de diseo:

8.75 dB
1.0 dB
10.15 dB
4.85 dB

Como podemos ver disponemos de 4.85 dB de margen. Es recomendable que se


disponga de un margen de 3 dB, ya que los valores utilizados para las prdidas
pueden variar debido a efectos de temperatura, extensiones del enlace, empalmes
adicionales debido a restauraciones de emergencia.

http://www.tonet.jazztel.es

49

10. Modulacin
10.1.Concepto de modulacin
La modulacin consiste en modificar la onda senoidal correspondiente a la
frecuencia base, llamada seal portadora, por distintos parmetros o la
combinacin de varios de ellos.
Los parmetros posibles en cuanto a generar una modulacin son: la amplitud, la
frecuencia y la fase.
Modulacin por amplitud
En una onda modulada por amplitud, la amplitud de las oscilaciones de
radiofrecuencia se vara de acuerdo con la informacin que se quiere transmitir.

Modulacin por frecuencia


En la modulacin por frecuencia, se vara la frecuencia instantnea de la onda de
radiofrecuencia de acuerdo con la seal que se desea transmitir, mientras que se
mantiene constante la amplitud de la onda. Por ejemplo, si se quiere transmitir una
onda senoidal de 500 Hz por medio de la modulacin por frecuencia de una
portadora de 1.000.000 Hz, se variar la frecuencia instantnea entre 1.000.010 y
999.990 Hz a razn de 500 Hz.

La agrupacin de varias seales con frecuencias centrales muy cercanas permite la


transmisin simltanea y diferenciada de estas seales a travs de un mismo medio
de transmisin. A esto se le llama multiplexacin por divisin de frecuencias (FDM).

http://www.tonet.jazztel.es

50

Cada una de las seales que constan de una frecuencia central y un pequeo
rango de frecuencia a su alrededor se la llama canal.
Modulacin por fase
Una onda modulada por fase es una onda en la cual se vara el valor de la fase de
referencia de modo que su magnitud sea proporcional a la amplitud instantnea de
la seal moduladora.

10.2.Tipos de modulacin
El cuadro resumen de los distintos tipos de modulaciones en comunicaciones es el
siguiente:
Seal moduladora
Analgica
Seal

Anlogica

portadora

Digital

Banda base

Digital

Banda base
Modulaciones lineales: AM, FSK
ASK
DBL, BLU, BLV, QM
PSK
Modulaciones angulares: PM DPSK
QPSK
y FM
MPSK
QAM
TCM
PAM, PDM
No es modulacin.
DM
DPCM
Modulaciones
digitales
adaptativas

http://www.tonet.jazztel.es

51

10.3.Seal moduladora analgica


Modulaciones lineales
AM: Modulacin de amplitud. La amplitud de la seal es en funcin de la seal
moduladora. Se utiliza en radiofusin y tiene el inconveniente de que es muy
sensible al ruido.
DBL: Modulacin de doble banda lateral. En ingls, DSB. Es como la anterior, con
la diferencia de que no se transmite la seal portadora.
BLV: Modulacin de banda lateral nica En ingls SSB. Es como la DBL anterior,
pero que en este caso se filtra una de las 2 partes del espectro. Esto conlleva la
necesidad de un ancho de banda ms pequeo. Se utiliza mucho en la
multiplexacin por frecuencia para telefona.
BLV: Modulacin de banda lateral vestigial. En ingls, VSB. Es como la anterior,
pero en la parte filtrada, se deja algo de seal, lo que facilita su demodulacin.
QM: Modulacin en cuadratura. Con esta modulacin se pueden transmitir 2
informaciones al mismo tiempo. En este tipo de modulacin, el problema es la
sincronizacin de las 2 informaciones, dado que esta modulacin se basa en el
ngulo de fase de la seal.
Modulaciones angulares
PM: Modulacin de fase
FM: Modulacin de frecuencia. Tiene mejor relacin seal/ruido que la AM, pero
necesita de mayor ancho de banda.
Modulacin digital
Consiste en la conversin de una informacin analgica en una secuencia de
caracteres discretos.
Esto consta de 2 operaciones fundamentales: el muestreo y su cuantificacin.
PAM (Pulse Amplitude Modulation) : modulacin analgica por impulsos en funcin
de su amplitud. Es poco utilizada por ser muy sensible a la perturbaciones.
PDM (Pulse Duration Modulation) : modulacin analgica por impulsos en funcin
de su duracin.
PPM (pulse Position Modulation) : como la PDM, pero la duracin de los impulsos
es ms corta.
PCM (Pulse Code Modulation) : Modulacin por impulsos codificados. Consiste en
un muestreo por frecuencia y una cuantificacin de M niveles. Esta tcnica se utiliza
para codificar las seales analgicas telefnicas, por ejemplo, la banda de voz de

http://www.tonet.jazztel.es

52

300 Hz a 3400 Hz, y se muestrea con una frecuencia de 8 kHz y 256 niveles.
Tambin se utiliza en la transmisin de msica y de TV.
DM : Modulacin Delta. Se caracteriza porque su velocidad de transmisin coincide
con la frecuencia de muestreo.
DPCM : Modulacin PCM diferencial.

10.4.Seal moduladora digital


Banda base
Es el caso en que la seal de datos se enva directamente a la lnea.
Modulacin FSK ( Frequency-Shift Keying)
Es una modulacin por desplazamiento de la frecuencia. Solo se puede emplear
para baja velocidad, mximo 7200 bps.
Modulacin ASK (Amplitud-Shift Keying)
Es una modulacin por desplazamiento de la amplitud. No se utiliza por ser muy
sensible a los ruidos. Velocidad mxima 1200 bps.
A veces se usa en conjuncin con PSK y FSK.
Modulacin PSK (Phase-Shift Keying)
Es una modulacin por desplazamiento de fase y por esta razn solo se puede
utilizar en sistemas sncronos, porque se deben sincronizar las fases del emisor y
del receptor. Se alcanzan velocidades de hasta 7200 bps.
Modulacin DPSK (Differential Phase-Shift Keying)
Es una modulacin por desplazamiento de fase diferencial, es decir, en este caso,
no se toman los valores absolutos de fase sino sus diferencias. Esta modulacin
facilita la sincronizacin y es poco sensible al ruido. Su velocidad habitual de
transmisin es de 1200 bps.
Modulacin QPSK (Quadrature Phase-Shift Keying)
Es una modulacin de fase en cuadratura o modulacin cuatrifsica diferencial.
Modulacin MPSK (Multi Phase-Shift Keying)
Es una modulacin multifsica.

http://www.tonet.jazztel.es

53

Modulacin QAM (Quadrature Amplitude Modulation)


Es una modulacin de amplitud en cuadratura. Se utiliza en los modems con
recomendacin V.29
Modulacin TCM (Trellis Coded Modulation)
Esta modulacin es anloga a la QAM, pero antes de modular se hace una
codificacin. Esta modulacin se usa en la recomendacin V.32

http://www.tonet.jazztel.es

54

11. Codificacin de canal


El elemento bsico de la informacin de las redes de datos es el dgito binario 1,
denominado bit o pulso. Un bit, en un medio elctrico, es una seal elctrica que
corresponde al 0 binario o al 1 binario. Esto puede ser tan sencillo como 0 voltios
para el 0 binario y +5 voltios para el 1 binario, o una codificacin ms compleja.
En el caso de las seales pticas, el 0 binario se codifica como una intensidad baja,
o sin luz (oscuridad). El 1 binario se codifica como una intensidad luminosa alta
(brillo) o con otros modelos ms complejos.
En el caso de las seales inalmbricas, el 0 binario podra ser una rfaga breve de
ondas y el 1 binario podra ser una rfaga de ondas de mayor duracin, u otro
modelo ms complejo.
En la prctica, estos bits se transmiten codificados siguiendo distintas tcnicas de
codificacin.
Esta tcnicas se pueden agrupar en dos tipos:
-

codificaciones digitales. En estos casos se emplean seales discretas de baja


frecuencia mediante dispositivos del tipo paso bajo.

modulaciones digitales. En estos casos se emplean seales continuas y los


dispositivos pueden ser de paso bajo o de paso banda. Si son de paso bajo slo
podrn pasar las frecuencias bajas, y si es de paso banda, es un rango de
frecuencias concreto y determinado. Estas son propias de los sistemas de
comunicaciones.

Las codificaciones digitales sin modulacin son las que se emplean en las
transmisiones de las redes de ordenadores cableadas siendo sus caractersticas
ms importantes:
-

El ancho de banda Bw que utilizan. Recordemos los conceptos de velocidad de


modulacin y velocidad de transmisin. La ausencia de componentes de altas
frecuencias significa que se necesita menos ancho de banda para su
transmisin.

La robustez de la seal.

Influencia frente al ruido medido con el concepto de la relacin seal/ruido


(SNR).

La facilidad de sincronizacin. Si ayudan o no a sincronizar el reloj de los


dispositivos.

La necesidad de envo de seales con o sin componentes continuas.

Las codificaciones digitales ms habituales son : NRZ, AMI bipolar, Manchester y


B8ZS. Tambin se usan otras como el 4B/5B en FDDI, el HDB3, etc.

http://www.tonet.jazztel.es

55

11.1.Codificacin NRZ (Non Return to Zero)


La codificacin NRZ, cdigo sin retorno a cero, es la codificacin ms sencilla.
En general para transmitir un bit (0 o 1), es suficiente codificar un valor con una
seal alta y el otro valor con una seal baja, por ejemplo +5 o +3,3 V para el 1
binario y 0 V para el 0 binario. En el caso de las fibras pticas, el 1 binario puede
ser un LED o una luz lser brillante, y el 0 binario la oscuridad o sin luz. En el caso
de las redes inalmbricas, el 1 binario puede significar que hay una onda portadora
y el 0 binario que no hay ninguna portadora.
Un inconveniente de esta codificacin es que no se puede distinguir el estado de
reposo o el de no transmisin con la transmisin de un cero. Para ello es
conveniente usar un tercer nivel y esto es lo que incorpora la codificacin NZR,
donde un 0 es una seal alta (+V) y el 1 una seal baja (-V) y el estado de no
transmisin es por ejemplo 0 V.
Estado

Tensin

Reposo

+V

-V

Las codificaciones NRZ son las ms fciles de implementar y adems se


caracterizan por hacer un uso eficaz del ancho de banda. Se usan con frecuencia
en las grabaciones magnticas ms que en aplicaciones de transmisin de seales.
Hay de dos tipos. NRZ - L y NRZ I

11.1.1.Codificacin NRZ - L
El significado de NRZ-L es Non Return to Zero Level. En este caso, un bit 0 se
codifica como un nivel de tensin alto (+V) y un bit 1 con un nivel de tensin bajo (V).
Estado

Tensin

Reposo

+V

-V

http://www.tonet.jazztel.es

56

A continuacin hay un ejemplo de codificacin de la cadena 01001100011


+V

-V
0

Sus caractersticas son:


-

Fcil de implementar.

Robusto frente al ruido por su componente continua.

No tiene capacidad de sincronizacin.

Posibilidad de prdida de la polaridad de la seal. Si se empleara una


codificacin diferencial sera ms difcil esta prdida, ya que en este caso la
seal se codifica a partir de los elementos de seal adyacentes.

11.1.2.Codificacin NRZ - I
El significado de NRZ-I es Non Return to Zero Invert on ones. En este caso, un bit 0
se codifica como sin transicin al principio del intervalo del bit y un bit 1 como una
transicin al principio del intervalo del bit.
Estado

Tensin

Reposo

Sin cambio

Con cambio

Antes ->
Despus
0

No cambia No cambia

Cambia

Cambia

A continuacin hay un ejemplo de codificacin de la cadena 01001100011


+V
-V
0

http://www.tonet.jazztel.es

57

La codificacin NRZ-I es un ejemplo de codificacin diferencial. En la codificacin


diferencial, en lugar de determinar el valor absoluto, la seal se decodifica
comparando la polaridad de los elementos de seal adyacentes.
Sus caractersticas son:
-

Es igual a una componente continua en el caso de una cadena de ceros

Sin problemas con la polaridad debido al empleo de codificacin diferencial.

Mejora la sincronizacin con los unos pero no con los ceros.

11.2.Codificacin AMI bipolar


Las codificaciones bipolares son de tipo multinivel, es decir, usan ms de dos
niveles de seal. El significado de la AMI bipolar es bipolar with Alternative Mark
Inversion. En este caso, un bit 0 se codifica como la ausencia de seal, es decir, 0
voltios y un bit 1 como nivel +V o -V, alternando segn los unos sucesivos.
Estado

Tensin

Reposo

Cambia en funcin de la tensin del


ltimo bit

Antes ->
Despus

+V o -V

+V o -V

A continuacin hay un ejemplo de codificacin de la cadena 01001100011


+V

-V
0

http://www.tonet.jazztel.es

58

Sus caractersticas son:

La codificacin de los unos facilita la deteccin de errores.

Facilita el grado de sincronizacin.

Hay problemas en el caso de una cadena larga de ceros.

11.3.Codificacin Manchester
La codificacin Manchester da como resultado que el 0 se codifique como una
transicin de alto a bajo y que el 1 se codifique como una transicin de bajo a alta.
Dado que tanto los 0 como los 1 dan como resultado una transicin en la seal, el
reloj se puede recuperar de forma eficaz en el receptor. No depende del bit anterior.

La codificacin Manchester define un 0 como una seal alta durante la primera


mitad del perodo y baja durante la segunda mitad. Las normas definen al 1 como
una seal que es baja para la primera mitad del perodo y alta para la segunda
mitad.
En la codificacin Manchester el 0 se codifica como una transicin de baja a alta y
el 1 como una de alta a baja. Como tanto los 0 como los 1 tienen como resultado
una transicin de la seal, el reloj se puede recuperar efectivamente en el receptor.
Sus caractersticas son:
-

Inmunidad al ruido.

No hay componente continua en ningn caso.

Mantiene la sincronizacin, es decir, no hay necesidad de reloj en cuanto hay


transicin en medio del bit.

Peor ancho de banda Bw que la codificacin NRZ

http://www.tonet.jazztel.es

59

11.4.Codificacin Manchester diferencial


La codificacin Manchester combina datos y reloj en smbolos de bit, que se dividen
en dos mitades, con la polaridad de la segunda mitad siempre inversa a la de la
primera mitad. As con la codificacin Manchester diferencial, el 0 se codifica como
una transicin al principio del intervalo, mientras que el 1 se codifica como sin
transicin al principio del intervalo. Como tanto los 0 como los 1 producen una
transicin de seal, el reloj puede, en efecto, recuperarse en el receptor.

Sus caractersticas son:


-

Inmunidad al ruido.

No hay componente continua en ningn caso.

Mantiene la sincronizacin, es decir, no hay necesidad de reloj en cuanto hay


transicin en medio del bit.

Necesita un mayor ancho de banda Bw que el Manchester sin diferencial ya que


trabaja a doble frecuencia de la velocidad de la red

11.5.Codificacin B8ZS
El significado de sus siglas es Bipolar with 8 Zeros Substitution. Se basa en el AMI
bipolar, con la excepcin de que modifica la cadena de 8 ceros seguidos, dando
lugar a un intervalo de seal continua muy grande, con una muy probable prdida
de sincronizacin del reloj.
La cadena de 8 ceros seguidos se sustituye por una cadena 000VB0VB donde
-

B es polaridad normal, es decir, se codifica como un 1 normal

V es la violacin de cdigo, es decir, se codifica como un 1 inverso

http://www.tonet.jazztel.es

60

As tendramos

Por lo tanto las reglas son:

Si aparece un octeto con todos ceros y el ltimo valor de tensin anterior a dicho
octeto fu positivo, codificar dicho octeto como 000+-0-+

Si aparece un octeto con todos ceros y el ltimo valor de tensin anterior a dicho
octeto fu negativo, codificar dicho octeto como 000-+0+-

http://www.tonet.jazztel.es

61

12. Modos de transmisin


La transmisin digital consiste en una transmisin serializada de un conjunto de
bits, por lo que es necesario que los dispositivos transmisor y receptor funcionen de
una forma ordenada, de forma que el receptor pueda distinguir cada una de las
partes del mensaje recibido. En general, esta forma ordenada se consigue de 2
formas: sncrona y asncrona.

12.1. Transmisin asncrona


Este tipo de transmisin consiste en que el tiempo de inicio de transmisin del
grupo de bits es impredecible. Entre la transmisin de un grupo de bits y la siguiente
transmisin no se transmite nada. En este caso siempre hay una forma de
identificar el inicio y el final de la informacin til mediante uno o ms bits
adicionales. Es por ejemplo el caso de una comunicacin entre el teclado y un
ordenador.
La polaridad de los bits de inicio (start) y de fin (stop) debe ser diferente de forma
que as siempre haya una transicin. Tambin en este tipo de transmisiones la
eficiencia es menor porque se envan unos bits adicionales sin llevar informacin
til.
Se emplea en transmisiones de baja velocidad y se utiliza cuando se transmite
durante intervalos aleatorios, por ejemplo, un teclado. Lo habitual de esta
transmisin es su orientacin a carcter y a trama.

12.1.1.Sincronizacin de bit o de reloj


En la transmisin asncrona, el reloj del receptor corre asncronamente respecto a la
seal de entrada. Pero con el fin de sincronizar el emisor y el receptor, el reloj del
receptor funciona a una frecuencia varias veces la velocidad de transmisin, siendo
habitual 16 veces. As es ms facil conseguir conocer el centro de la seal del bit
transmitido. As si Vt es la velocidad de transmisin, el tiempo de transmisin de 1
bit tb vale 1/Vt.
Si fr es la frecuencia del reloj, es decir, fr = N Vt y el tiempo de reloj tr valdr
tr= 1 / fr = 1 / (N Vt ) = tb / N
Cuanto ms alto sea N, habr mejor sincronizacin.

http://www.tonet.jazztel.es

62

12.1.2.Sincronizacin de carcter
Se trata de enviar los caracteres de forma secuencial y a su vez poder determinar
cual es el primer bit y el ltimo que conforman el carcter, de acuerdo con las
distintas codificaciones de carcter existentes (ASCII, EBCDIC,etc.). Este tipo de
sincronizacin tiene que decidir cuando empieza la informacin de un carcter y
cuando termina.
La situacin de reposo es el estado 1, por ejemplo en la codificacin NRZ-L es la
tensin baja. El bit de inicio o start siempre es 0, porque el estado de reposo es 1.
En cuanto a la parada, siempre termina con 1 o ms bits 0 con el fin de provocar al
menos un salto y poder resincronizar el reloj. La polaridad de los bits de start y stop
han de ser opuestos.
Con esta sincronizacin no todos los bits transmitidos son datos propiamente
dichos, por lo que debemos definir la eficiencia de transmisin Et como la relacin
entre el nmero de bits de informacin y el nmero de bits totales.
Et = n bits de informacin / n bits totales
En consecuencia, la velocidad efectiva de transmisin Vef vale
Vef = Et Vt
Por ejemplo si se transmite 1 carcter ASCII (8 bits), con 1 bit de inicio (start) y 2
bits de final (stop), la eficiencia de transmisin Et vale
Et = 8 / (1+8+2) = 8 / 11 = 72,7 %
Este esquema no es muy exigente en cuanto a los requisitos de temporizacin. Si
se transmiten caracteres de 8 bits, incluido el bit de paridad, y el receptor es un 5%
ms rpido o lento que el emisor, el octavo muestreo estar desplazado un 45%
que an es un valor aceptable. Pero si la velocidad de transmisin es de 10000 bps,
el tiempo de bit es 0,1 ms. Si el receptor est desincronizado un 6%, es decir, 6 s
por cada bit, el octavo bit lo leer errneamente. En realidad tenemos dos errores,
uno que el ltimo bit muestreado lo leer incorrectamente el receptor y dos que la
cuenta de bits puede estar desalineada. A este error se le llama de delimitacin de
trama y tambin se llama el efecto ISI.

12.1.3.Sincronizacin de trama
En este caso se trata de determinar no solo el inicio y el final de cada carcter sino
tambin poder determinar el inicio y el final de cada trama, es decir, se necesita la
sincronizacin de trama.
En estos casos lo habitual es encapsular los caracteres tiles entre 2 caracteres
especiales, no imprimibles, llamados STX (start-of-text) que indica el inicio de la

http://www.tonet.jazztel.es

63

trama y ETX (end-of-text) que indica el final de la trama. Estos caracteres tambin
se conocen con el nombre de caracteres de control de la transmisin.
STX

Caracteres imprimibles

ETX

Sin embargo, si se transmiten datos binarios, estos caracteres no son suficientes


por lo que se les precede de otro carcter especial denominado DLE (data link
escape)
DLE

STX

Datos binarios DLE

DLE

Datos binarios DLE ETX

Con el fin de detectar una posible combinacin de bits que coincidan con el carcter
DLE, el emisor en este caso repite esta combinacin. Es lo que se conoce como
stuffing.

12.2. Transmisin sncrona


En la transmisin sncrona, las seales digitales se transmiten a una velocidad
constante, de acuerdo con las seales de un reloj. La informacin transmitida
contiene las seales del reloj, permitiendo as la sincronizacin del reloj del receptor
con el reloj del emisor. Aunque no hayan datos a transmitir, siempre se est
enviando como mnimo la seal de sincronizacin.
En una transmisin sncrona,
-

la informacin transmitida se codifica para facilitar su sincronismo.

todas las tramas van precedidas de 1 o ms octetos o caracteres con el fin de


que el receptor interprete correctamente el inicio y el fin de las tramas.

el contenido de cada trama se encapsula entre un par de caracteres reservados


u octetos para que haya sincronizacin.

Por tanto tenemos unos octetos de sincronizacin entre tramas y unos octetos de
inicio y fin de trama aadidos a la informacin til de la trama. Este tipo de
transmisin se usa orientada a bit y orientada a carcter.

12.2.1.Sincronizacin de bit
En la sincronixzacin de bit, el reloj del receptor debe funciona sncronamente con
el reloj del emisor. En este caso, no se emplean bits de inicio ni de fin, que son
propios de una transmisin asncrona. La sincronizacin se consigue de una de las
formas siguientes:
-

Una que la informacin del reloj est incluida en la seal transmitida y que el
receptor extraer u

Otra que el receptor tenga un reloj local pero que se sincronice mediante lo que
se conoce como "digital phase-lock-loop".

http://www.tonet.jazztel.es

64

En el primer caso, es necesario que haya una codificacin apropiada como la AMI
bipolar, la Manchester o la Manchester diferencial. En el segundo caso, se extrae
de la codificacin NRZ-I.

12.2.2.Sincronizacin de carcter
Se trata del sincronismo de caracteres o bloques de ellos. En este caso no hay bits
de inicio ni de fin.
La sincronizacin se consigue mediante la adicin de dos o ms caracteres de
control conocidos como SYN, que es un carcter no imprimible. Este carcter tiene
dos funciones:
-

permitir al receptor obtener el bit de sincronizacin.

permitir al receptor la sincronizacin del carcter.

Como en la transmisin asncrona, el carcter o bloque de caracteres est


encapsulado en los caracteres especiales STX y ETX. Sin embargo ahora el STX
estar precedido por un o ms caracteres SYN.
SYN

SYN

STX

Caracteres imprimibles

ETX

Si se transmiten datos binarios, estos caracteres no son suficientes por lo que se


les precede de otro carcter especial, denominado DLE (data link escape)
SYN

SYN

DLE

STX

Datos binarios

DLE

DLE

Datos binarios DLE

ETX

Con el fin de detectar una posible combinacin de bits que coincidan con el carcter
DLL, el emisor en este caso repite esta combinacin. Es lo que se conoce como
stuffing.

12.2.3.Orientado al bit
El mtodo anterior orientado al carcter es de una eficiencia bastante baja en
cuanto a la transmisin de datos binarios. Por ello se ha diseado otro mtodo
orientado al bit que es ms eficiente. Se trata de una transmisin orientada al bit y
consiste en un flag de inicio y de un flag de final. Este flag consta de 8 bits con una
combinacin especfica y que es la 01111110
En realidad el transmisor antes de enviar el flag de inicio, enva una cadena de
unos y al final, despus del flag de final, tambin enva otra cadena de unos.
Ahora tambin habr stuffing, pero ser en el caso de que hayan 5 unos seguidos.
En este caso despus de 5 unos seguidos siempre se inserta un cero.
Por ejemplo si se ha de transmitir la cadena 0111111111101, se enva
011111011111001
Los 2 bits cero en negrita se debe convertir en unos en recepcin.

http://www.tonet.jazztel.es

65

13. Nivel de enlace


A nivel de enlace, en los modelos OSI y TCP/IP, se debe definir el formato de las
tramas o mensajes que se envan por la red. As las informaciones digitales de las
que estamos tratando, su elemento bsico es el bit, y la transmisin no es bit a bit,
sino por grupos de bits, que se llaman tramas a nivel fsico (nivel 2). Su formato
general es el siguiente
Cabecera

Datos

Control de error

es decir, siempre constan de tres partes:

Una cabecera. En este grupo de bits se especifica la informacin accesoria de la


trama, pero no por accesoria tan importante como los datos que se transmiten.

Los datos, en ingls, payload.

Un control de error, con el fin de que el receptor no solo detecte que hay un error
en la trama, sino que tambin haya la posibilidad de recuperarlo sin necesidad de
que se reenve esta trama.

13.1. Deteccin de errores


Los datos estn formados por P bits significativos. Si queremos detectar errores en
una transmisin, tenemos que recurrir a la redundancia de los mismos, es decir, a
aadir ms bits a los P significativos, pero a coste de disminuir su rendimiento. As
el envo de P bits se transforma en el envo de P+Q bits, siendo Q el nmero de bits
redundantes empleados. Al cdigo P+Q se le llama palabra cdigo (code word) y a
la transformacin de P en Q, cdigo detector de errores. Por tanto la cantidad de
bits enviados es P+Q y esta palabra cdigo es la que verifica el receptor si es vlida
o no.
La tasa de error de bit (BER - Bit Error Rate) es el factor que se emplea para medir
el nivel de errores en una transmisin. Si Pb es la probabilidad de que un solo bit se
corrompa, se define la tasa de error de bit BER a la probabilidad de error de un bit
en un intervalo de tiempo dado.
En el caso de un bloque de n bits, la probabilidad Pf de bloque errneo es
Pf = 1 - (1 - Pb)n
Hay dos tcnicas bsicas de deteccin de errores:

La FEC (Forward Error Control) que permite la deteccin del error y su


correccin y

http://www.tonet.jazztel.es

66

La Feedback / Backward Error Control que permite la deteccin pero no su


correccin. Es el caso de la los cdigos de error basados en la paridad
simple, la paridad longitudinal LRC y el CRC.

Se entiende por burst errors o rfaga de bits errneos cuando son errneos una
cadena de bits contiguos.

13.1.1.Paridad simple
Consiste en aadir 1 bit a cada carcter y a este bit se le llama bit de paridad.
Para el clculo del bit de paridad a partir de los bits a transmitir hay dosmtodos
bsicos:

Paridad par. En este caso el bit de paridad es 0, si el nmero de unos es par


y 1 si es impar. La suma total de unos es par.

Paridad impar. En este caso el bit de paridad es 0, si el nmero de unos es


impar y 1 si es par. La suma total de unos es impar.

Esta codificacin se emplea en las transmisiones orientadas a carcter y slo


permiten la deteccin de un nico error y sin posibilidad de correccin.

13.1.2.Cdigo Hamming
La utilizacin de paridad simple solo permite la deteccin de un bit errneo, pero no
su correccin porque no puede saberse cual de los bits que conforman el carcter
es el bit errneo, es decir, en que posicin est. Para su correccin se necesita el
empleo de una mayor redundancia. Por ejemplo, si se transmiten caracteres de 7
bits, con 3 bits adicionales es posible la correccin de bits errneos. En esto es lo
que se basa el cdigo Hamming.
Se entiende por distancia Hamming a la mnima distancia (nmero de bits
diferentes) entre dos palabras cdigo.
As si dh es la distancia Hamming utilizada y n es el nmero de bits errneos,

La cantidad mxima de bits errneos detectables es n = dh -1 y

La cantidad mxima de bits errneos corregibles n = ( dh -1) / 2

Si la distancia Hamming dh es 2, y por tanto

el nmero mximo de bits errneos detectables es n = dh - 1 = 1


el nmero mximo de bits errneos corregibles es n = (dh - 1) / 2 = 0

Este es el caso del empleo de paridad simple.


Cmo se calcula la distancia Hamming?

http://www.tonet.jazztel.es

67

Como se ha dicho ms arriba, es el nmero de bits distintos y por tanto su clculo


se hace aplicando la funcin XOR y contando el nmero de unos.
Supongamos que tenemos cuatro palabras cdigo y sus contenidos son
000000
111111
001101
110100
La distancia Hamming del conjunto ser la mnima. As el nmero de bits distintos
entre los dos primeros es 6, y su distancia Hamming 6. Entre el primero y el tercero
hay 3 bits distintos y por tanto su distancia Hamming es 3.
A continuacin el cuadro expone la distancia Hamming de cada pareja
1

--

--

--

--

La distancia Hamming del conjunto ser la menor de ellas ya que es el caso peor,
por tanto en el ejemplo es 3.
Si la distancia Hamming dh es 3,

el nmero mximo de bits errneos detectables es n = dh - 1 = 2

el nmero mximo de bits errneos corregibles es n = (dh - 1) / 2 = 1

13.1.3.Paridad longitudinal (LRC)


Con este tipo de deteccin de errores, adems del empleo del bit de paridad, se
introduce un nuevo carcter de paridades llamado BCC (Block Check Character).
As cada n caracteres includo su bit de paridad, se enva otro carcter el BCC que
es una combinacin de los bits que componen los n caracteres.
Supongamos que transmitimos 3 caracteres, cada uno con su bit de paridad y
necesitamos calcular el carcter BCC que debemos transmitir a continuacin con su
bit de paridad. En la tabla siguiente, se muestra este clculo, y para ello se ha
utilizado paridad par en horizontal, es decir, el bit de paridad de cada carcter y
paridad par para el clculo del BCC.

http://www.tonet.jazztel.es

68

B6

B5

B4

B3

B2

B1

B0

En consecuencia el carcter BCC sera 10000100 y en este caso se transmitira


11000110 11010100 01101001 10000100

13.1.4.CRC (Cyclic Redundancy Check)


Esta metodologa permite la deteccin de ms de 1 bit errneo. Se entiende por
error burst al nmero de bits entre dos bits errneos consecutivos incluidos stos. Si
Pb es la probabilidad de error de un bit y Pf la probabilidad de una trama errnea,
entonces
Pf = 1 - (1 - Pb ) L
siendo L el nmero de bits de una trama.
Si Pb L << 1, entonces la probabilidad de trama errnea es
Pf = 1 - (1- Pb) L Pb L
De hecho si L-> , es decir, si la trama es muy larga, entonces (1 - Pb) L 0, y por
tanto la probabilidad de trama errnea Pf = 1, es decir, cuanto ms larga es la trama
ms probable que haya un bit errneo.
La teora del CRC consiste en que dada una trama de k bits, el transmisor genera
adems una secuencia de n bits, denominada FCS (Frame Check Sequence), de
tal manera que la trama resultante, de n + k bits, sea divisible por algn nmero
predeterminado. El receptor har la operacin inversa, es decir, dividir la trama
recibida por este nmero y si el resto es cero, es indicativo de que no hay errores.
Por ejemplo, el transmisor enva el nmero 1234 y adems un 9, que lo ha obtenido
de dividir 1234 por 35. Cuando llega al receptor el 1234 y el 9, como ste sabe que
el valor de referencia es 35, verifica que coincide. Si es as no hay errores y el
nmero 1234 es el correcto. Si por el camino, el nmero 1234 se hubiera
modificado y convertido en otro, se podra detectar. Evidentemente no siempre es
detectable el error porque nicamente verifica el resto y no es suficiente.
En las transmisiones digitales basadas en bits, una buena forma de entenderlo es
usando la representacin polinmica. Una trama de k bits se puede representar por

http://www.tonet.jazztel.es

69

un polinomio de grado k -1, donde los coeficientes del polinomio son los bits de la
trama
M(x) = sk-1 xk-1 + sk-2 xk-2 + . . . +s1 x + s0
Donde sk = 0 si el bit de la posicin k es 0 y sk =1 si el bit vale 1.
Por ejemplo la trama 10110, se representa por el polinomio M(x) = x4 + x2 + x
A continuacin se debe definir el nmero de bits L de que constar el FCS. Con
este dato, se genera un polinomio generador G(x) de grado L, para que de esta
forma el resto sea de grado L 1. Este polinomio es el que se emplear para dividir
el polinomio resultante del contenido de la trama.
CRC = resto ( (M(x) xL ) / G(x) )
En recepcin, se debe realizar la operacin inversa.
Esta operacin en aritmtica de mdulo 2 equivale al XOR exclusivo.
La ventaja de este mecanismo es que permite detectar:

Todos los errores de 1 bit

Todos los errores dobles siempre que el polinomio de referencia tenga al


menos tres 1

Cualquier nmero impar de bits errneos siempre que el polinomio de


referencia contenga el factor (x + 1)

Cualquier error burst cuya longitud sea menor que la longitud del polinomio
divisor, es decir, menor o igual que la longitud de la FCS

La mayora de los error burst de longitud mayor que la longitud del FCS.

Los polinomios de referencia ms frecuentes son


CRC-12

x12+x11+x3+x2+x+1

Se utiliza para la transmisin de


tramas de caracteres de 6 bits y
genera una FCS de 12 bits.

CRC-16

x16+x15+x2+1

Es habitual en la transmisin de
tramas de caracteres de 8 bits.

CRC-CCITT x16+x12+x5+1

Es habitual en la transmisin de
tramas de caracteres de 8 bits.

CRC-32

X32+x26+x23+x22+x16+x12+x11+ Es muy utilizado en las LAN.


x10+x8+x7+x5+x4+x2+x+1

http://www.tonet.jazztel.es

70

Ejemplo
Supongamos que se quiere enviar la secuencia de bits 11100110 y emplear un
CRC de 4 bits. Por ello el polinomio generador ha de ser de grado 4 y supongamos
que es
G(x) = x4 + x3 + 1
Para calcular los 4 bits del CRC, primero transformaremos la secuencia de bits a
enviar en el polinomio correspondiente, en este caso ser
M(x) = x7 + x6 + x5 + x2 +x
Ahora el CRC es el resto de la divisin M(x) x4 / G(x), y en este caso ser
x11 + x10 + x9 + x6 + x5 | x4 + x3 + 1
x11 + x10 + x7
| x7 + x5 + x4 + x2 + x
x9 + x7 + x6 +x5
x9 + x8 + x5
x8 + x7 + x6
x8 + x7 + x4
x6 + x4
x6 + x5 + x2
x5 + x4 + x2
x5 + x4 + x
x2 + x
Por tanto el resto siempre tiene un grado inferior al del polinomio generador.
El CRC estar compuesto por los coeficientes del polinomio resto resultante, es
decir, en este caso ser la secuencia 0110

13.2. Servicios confirmados y no confirmados


Cuando un emisor enva un mensaje, puede ser que el mensaje llegue al receptor o
no. As en algunos casos, el emisor quiere tener una confirmacin del receptor en
cuanto ha recibido el mensaje. La razn de tener esta confirmacin es de que si no
ha llegado, tenga razones para poderlo volver a enviar.
As se entiende por servicios confirmados aquellos en que el receptor contesta si la
recepcin ha sido correcta o no en cuanto a las tramas enviadas por el receptor. De
lo contrario estamos ante un servicio no confirmado. En realidad esta confirmacin
o no est directamente ligada al control de errores y al control de flujo.
En cuanto al control de errores, en cuanto se detecta una trama errnea, es
necesario volverla a transmitir, ya que en general no se emplean mecanismos de
correccin de errores, porque penalizan mucho la eficiencia.

http://www.tonet.jazztel.es

71

En cuanto a la recuperacin de errores hay dos tcnicas bsicas:

Stop and wait (Idle RQ) y

Continous RQ o protocolos de retransmisin continua y dentro de stos, hay


los de repeticin selectiva (selective repeat) y de go-back-N

A continuacin se detalla el funcionamiento de cada una de estas tcnicas.


Otro problema que aparece en el nivel de enlace de datos y en otros niveles, es
como controlar la velocidad a la que se transmite la informacin de forma que el
receptor tenga siempre recursos (p.e. buffers) necesarios para recoger la
informacin. A esto se le denomina control de flujo. En cuanto al control de flujo, la
tcnica ms empleada es la de la ventana deslizante (sliding window).

13.3. Control de errores


13.3.1.Control de errores manual
Se trata de un control de error realizado por el usuario. Por ejemplo cuando el
usuario se equivoca al teclear un carcter, pulsa la tecla de borrado, de forma que
el programa no tenga en cuenta el carcter enviado con anterioridad. En realidad no
hay un borrado propiadamente dicho, sino lo que se sucede es que se aade a la
secuencia un carcter (DEL) que le indica al receptor que el carcter anterior no lo
debe tener en cuenta.

13.3.2.Echo checking
Este control de errores se utiliza en la ejecucin de aplicaciones remotas. El
terminal remoto que recibe un carcter, devuelve un eco del mismo al emisor que
consiste en el mismo carcter recibido. Esto permite al emisor verificar si el carcter
enviado es correcto y a la vez es una confirmacin de que el carcter ha llegado a
su destino. En caso afirmativo, enva el carcter siguiente y en caso negativo,
vuelve a enviar el mismo carcter.

13.3.3.Control de errores automtico


En este tipo de control de errores, si el receptor detecta errores, pide
automticamente la retransmisin del bloque, trama o carcter enviado. La
deteccin del error se realiza mediante alguno de los mtodos ya mencionados y es
el que emplea en la transmisin de tramas en las redes de ordenadores.
As en el caso de los servicios confirmados, que es cuando hay la posibilidad de
control de errores, se contempla el hecho de la retransmisin de la informacin y
que se conoce con el nombre de repeticin automtica ARQ (Automatic Repeat
Request). Hay dos tcnicas para realizarlo:

http://www.tonet.jazztel.es

72

Stop and wait (idle RQ). Se usa bsicamente en transmisiones orientadas a


carcter. Hay dos tipos:

retransmisin implcita

retransmisin explcita

Continous RQ o de retransmisin continua. Se usa bsicamente en


transmisiones orientadas a bit. Hay dos tipos:

repeticin selectiva (selective repeat). En este caso la


retransmisin tambin puede ser implcita o explcita.

Go-back-N. Normalmente solo es explcito.

13.3.4.Stop & Wait (Idle RQ)


Retransmisin implcita
En este caso el transmisor despus de enviar una trama de informacin, espera
recibir una trama de reconocimiento (ACK) antes de enviar la trama siguiente.

Para ello el transmisor utiliza un temporizador TOUT para el control del tiempo
transcurrido desde el envo. La necesidad de este temporizador es que si no llegase
nunca la trama de reconocimiento ACK, el transmisor quedara bloqueado y
esperara eternamente. La razn por la que el transmisor no recibe la trama de
reconocimiento puede ser

porque se ha perdido la trama de informacin, caso B del ejemplo,

http://www.tonet.jazztel.es

73

porque se ha perdido la trama de reconocimiento ACK, caso C del ejemplo, o

porque ha llegado con errores.

Si existe el temporizador TOUT, cuando expira, el transmisor vuelve a retransmitir la


trama Ik e inicializa el temporizador de nuevo. Logicamente el valor de inicializacin
del temporizador debe ser lo ms pequeo posible, pero lo suficiente grande para
dar tiempo a que lleguen las tramas de reconocimiento. Si el valor es muy grande,
la penalizacin en caso de error puede ser importante.
Retransmisin explcita
En este tipo de retransmisin, cuando el receptor detecta una trama corrupta, enva
al transmisor una trama del tipo NAK (Negative Acknoledgement), es decir, el
transmisor puede recibir

tramas de reconocimiento normales ACK y

tramas de reconocimiento negativo NAK.

Parmetros de evaluacin del protocolo


Tiempo de propagacin tp es el tiempo que tarda en ir la informacin desde el
transmisor al receptor. Es el tiempo de viaje y depende del medio de transmisin.
tp = D / V p
siendo D la distancia entre el transmisor y el receptor, y Vp la velocidad de
propagacin del medio.
Tiempo de transmisin tt de trama se define como
tt = L / Vt
siendo L el tamao de la trama en bits y Vt la velocidad de transmisin. El tiempo de
transmisin de una trama ACK sera tack = Lack / Vt
Tiempo de proceso tproc es el tiempo en que el transmisor o el receptor tarda en
procesar una trama. En general tproc << tt , tp. Por ejemplo cuando llega una trama al
receptor, el tiempo de proceso es el tiempo que tarda en verificarala y enviar la
trama de reconocimiento.
Tiempo del ciclo Tc es el tiempo transcurrido entre que el primer bit sale del
transmisor hasta que se recibe el ltimo bit de la trama ACK. En la figura se
representa una trama de datos con una devolucin de una trama de reconocimento
por parte del receptor. Esto es un ciclo completo de transmisin y el tiempo de ciclo,
de acuerdo con la figura, es

http://www.tonet.jazztel.es

74

Tc = 2 tp + tt + tack
Tiempo de espera Tespera es el tiempo transcurrido desde que el ltimo bit de la
trama ha salido hasta que llegue el ltimo bit de la trama ACK.
Tespera = 2 tp + tack
Este tiempo de espera siempre debe contemplarse ante el posible evento de que el
emisor no reciba el correspondiente mensaje de reconocimento, ya sea porque la
trama de datos no ha llegado al receptor o porque la trama de reconocimento se ha
perdido durante la transmisin. Si este tiempo de espera no existiera, en caso de
error, el emisor esperara indefinitivamente la respuesta y por lo tanto se quedara
colgado.
En cuanto a los tiempos del temporizador Twt variarn del momento en que se
active:

Si el temporizador se activa al comenzar la transmisin de la trama, su tiempo Twt


debe ser mayor que el tiempo de ciclo Tc .

Si el temporizador se activa al acabar la trama, su tiempo Twt debe ser mayor


que el tiempo de espera Tespera .

Si se considera que tack << tp , en este caso el tiempo del temporizador Twt debe ser
mayor que 2 tp
Se define la eficiencia del protocolo U como un factor de utilizacin que se calcula
como el cociente del tiempo de transmisin y el tiempo de ciclo.
U = tt / Tc
Si definimos como a = tp / tt , este parmetro a es una medida indicativa de la
distancia entre el emisor y el receptor, ya que para una misma trama el tiempo de
transmisin es independiente de la distancia.

http://www.tonet.jazztel.es

75

Si adems tack << tp, tt entonces


Tc = 2 tp + tt + tack 2 tp + tt = tt (1+ 2 a)
Y la eficiencia U vale
U = 1 / (1 + 2 a )
Por otro lado se define como velocidad efectiva Vef a
Vef = U Et Vt
siendo U la eficiencia del protocolo, Et la eficiencia de la transmisin (asncrona,
sncrona, cdigo de error, ...) y Vt la velocidad de transmisin.
Consideraciones
1) Este mtodo es til cuando la distancia sea lo ms corta posible, ya que su peso
ms importante es la velocidad de transmisin.
2) Hasta aqu se ha calculado la eficiencia del protocolo sin tener en cuenta las
retransmisiones. Si Nr es el nmero medio de retransmisiones, el tiempo de ciclo
con retransmisiones valdr
T'c = Nr Tc
siendo Tc el tiempo de ciclo sin retransmisiones y suponiendo que tack << tt , tp
T'c = Nr ( 2 tp + tt + tack) = Nr tt (1 + 2 a )
y en consecuencia
U = 1 / (Nr (1 + 2 a))
As si hay muchas retransmisiones, Nr es muy grande, la eficiencia U es
prcticamente 0.
Si expresamos Nr en trminos de probabilidad de trama errnea y por tanto de la
probabilidad de bit errneo
Pf = 1 - (1 - Pb ) n
siendo n la longitud en bits de la trama, se demuestra que
Nr = 1 / (1 - Pf)
Por ejemplo, si Pf = 0,5, Nr = 2, es decir, la mitad de las tramas son errneas,
suponiendo que todas las tramas ACK son correctas. En este supuesto la eficiencia
U vale

http://www.tonet.jazztel.es

76

U = ( 1- Pf ) / ( 1 + 2 a)
3) En cuanto a la posibilidad de que el receptor recibe ms de una copia de la
misma trama, se resuelve porque en este caso los protocolos incluyen en su
cabecera un nmero de secuencia. Este nmero de secuencia es un campo y
depender de su longitud la cantidad de nmeros de secuencia que se pueden
manejar.
El nmero de secuencia de la trama que sale del transmisor N(S) est incluida
dentro de la trama, as esta tendr como estructura
SOH N(S) STX

Datos

ETX BCC

y el mismo nmero de secuencia de vuelta N(R) debe estar incluida en las tramas
ACK y NAK y por tanto su formato es
Trama ACK

ACK N( R ) BCC

Trama NAK

NAK N( R ) BCC

Se demuestra que este tipo de control Stop-and-wait es bueno para distancias


cortas y tambin tiene la ventaja de necesitar un buffer mnimo.

13.3.5.Retransmisin continua (Continous-RQ)


El problema del mtodo Stop-and-wait es que si el tiempo de propagacin tp es alto,
la eficiencia disminuye de forma significativa, ya que el transmisor se queda mucho
tiempo bloqueado. Es el caso de la existencia de distancias largas entre el
transmisor y el receptor, ya que el tiempo de propagacin es proporcional a esta
distancia.
El mtodo de retransmisin continua (Continous RQ) lo que hace es incrementar
la capacidad de almacenaje (buffers) y as transmitir de forma continua sin parar
mientras no se queden los buffers llenos. Estos buffers se emplean pues para
almacenar tramas que todava no han sido reconocidas. El receptor tambin
dispone de buffers para almacenar tramas que puede recibir como copia debido al
funcionamiento del protocolo.
En este mtodo las tramas, tanto las normales como las de reconocimiento ACK y
las de no reconocimiento NAK, deben ir numeradas con el fin de poder aparejarlas.
As en la figura las tramas normales vienen identificadas por I(N) donde N es el
nmero de secuencia que las identifica. Una trama de reconocimiento ACK(N)
tambin debe contener un nmero de identificacin para poder conocer de que
trama se trata. De forma anloga sucede con las tramas de no reconocimiento
NAK(N).

http://www.tonet.jazztel.es

77

Funcionamiento
La secuencia del funcionamiento de este control de error de tramas es el siguiente:
1) El transmisor enva tramas de forma continua sin esperar la recepcin de las
tramas de reconocimiento ACK. En el buffer del transmisor se almacenan las
tramas pendientes de reconocimiento y se manejan mediante el sistema FIFO.
2) Si el receptor recibe una trama correctamente, devuelve una trama de
reconocimiento ACK con la identificacin N de esta trama I.
3) Cuando el transmisor recibe la trama de reconocimiento ACK de una trama I, la
elimina de su buffer.
4) El receptor almacena las tramas I en una lista de recepcin (buffer) para que
sean procesadas.
La eficiencia de los protocolos de retransmisin continua, si no hay errores, es
Up = 1
Si se producen errores, habr retransmisiones y esto se hace con alguna de las
tcnicas siguientes:

Repeticin selectiva (Selective Repeat), consiste en retransmitir slo las


tramas incorrectas

Go-back-N, que consiste en repetir la retransmisin a partir de la ltima


trama correcta.

http://www.tonet.jazztel.es

78

13.3.6.Repeticin selectiva
Con este mtodo de control de errores, el transmisor slo retransmite las tramas
incorrectas y para ello hay dos maneras de hacerlo:

mediante retransmisin implcita, es decir, en este caso el receptor reconoce


las tramas correctas y el transmisor deduce cuales han sido incorrectas.

mediante retransmisin explcita, es decir, en este caso el receptor reconoce


las tramas correctas y tambin es l quien deduce cuales han sido incorrectas.
Por esta razn, en este caso, el receptor enva mensajes de reconocimiento
ACKs y de reconocimiento negativo NAKs.

Retransmisin selectiva implcita

Si el transmisor recibe tramas de reconocimento ACK, significa que la trama


enviada ha llegado correctamente.

http://www.tonet.jazztel.es

79

Supongamos que la trama IN+1 sea corrupta, y por tanto que el receptor ha enviado
tramas de reconocimento ACK de las tramas N, N+2, N+3, N+4.
El transmisor al no recibir una trama de reconocimiento ACK de la trama N+1,
deduce que el receptor no dispone de ella por alguna razn, y por lo tanto debe
retransmitirla. El transmisor no transmite nuevas tramas hasta que retransmite las
que tiene como no reconocidas.
As el transmisor elimina la trama N+2 del buffer y retransmite la trama N+1 antes
de la N+5. A continuacin el receptor recibe la trama N+1 y la reconoce.
Pero, qu sucede si la trama ACKN es corrupta? En este caso el transmisor ha
detectado correctamente la tramas N-1 y N+1, en cuanto que ha recibido las
correspondientes tramas de reconocimiento ACKN-1 y ACKN+1. Ante esta situacin,
el transmisor decide volver a retransmitir la trama IN
Si el receptor detecta que una trama es copia de una que ya recibi, la descarta,
pero debe reenviar la trama de reconocimiento ACK correspondiente al transmisor
para que ste la elimine de su lista de retransmisin.
Retransmisin selectiva explcita
Este tipo de retransmisn, llamada tambin retransmisin acumulada, consiste en
que una trama de reconocimento ACK no solo es un reconocimiento de una trama
sino tambin de todas las anteriores. En este caso las tramas corruptas se
reconocen con una trama de reconocimiento negativo NAK, cosa que no sucede
con una retransmisin implcita.

http://www.tonet.jazztel.es

80

As puede verse en la figura de que no hay las tramas de reconocimiento de las


tramas identificadas por N+1, N+2 y N+3.

Supongamos que la trama IN+1 llega corrupta. En este caso el receptor habr
enviado una trama de reconocimento ACKN y una trama de reconocimiento negativo
NAKN+1

http://www.tonet.jazztel.es

81

A continuacin el transmisor al recibir la trama de reconocimento negativo NAKN+1,


reenva la trama IN+1. El receptor la recibe y contina enviando tramas de
reconocimento ACK. En este caso como los reconocimientos son acumulados,
puede enviar una trama de reconocimiento ACKN+4, ya que ello presupone que ha
recibido correctamente las tramas N+1, N+2, N+3 y N+4.
Consideraciones
En este tipo de control de errores, no se mantiene el orden de recepcin, ya que la
trama N+1 se recibe despus de las tramas N+2, N+3, ... Por tanto las tramas tiene
que estar identificadas, para que el receptor las pueda ensamblar en el orden
correcto. Tambin en este caso, el tiempo de procesamiento de tramas en el
receptor es mayor porque requiere de una ordenacin previa, antes de ensamblar
los contenidos de los datos de las tramas.
Tambin implica la necesidad de ms temporizadores para evitar un bloqueo del
transmisor. En la retransmisin implcita, si la ltima trama es corrupta, se necesita
detectarlo de alguna forma la no recepcin de su trama de reconocimento ACK. Si
la retransmisin es explcita, se tiene que prever el hecho de que se pierda una
trama de reconocimiento negativo NAK.

13.3.7.Go-back-N
Este mtodo de control de errores permite mantener el orden de las tramas en el
recepctor y as ahorrar en buffers a la hora de reensamblar las tramas fuera de
orden.

Para ello es necesario usar retransmisin explcita, es decir, tramas de recocimiento


ACKs acumuladas. Supongamos que la trama IN+1 ha llegado corrupta pero que se
han recibido tramas posteriores N+2, etc.

http://www.tonet.jazztel.es

82

En este caso el receptor enva una trama de reconocimiento negativo NAKN+1 para
que el transmisor empiece a retransmitir a partir de la trama N+1. El receptor
descarta cualquier trama que le llegue despus de la N+1.
A continuacin el transmisor entra en modo retransmisin y reenva otra vez las
tramas N+1, N+2, N+3, ... y el receptor enva las tramas de reconocimiento
correspondientes ACKN+1, ACKN+2,

Qu sucede si se pierde una trama de reconocimento ACK? Supongamos que la


trama de reconocimento ACKN+1 se pierde o es corrupta, pero que el transmisor
recibe la trama de reconocimento ACKN+2 correctamente. En este caso el
transmisor al no recibir una trama de reconocimento negativo NAK, supone que
todas las tramas hasta la N+2 han llegado correctamente.
En este caso tambin se necesitan ms temporizadores por si se pierden tramas de
reconocimento negativo NAKs. Con todo esto, ya vemos que la repeticin selectiva
es ms eficiente ya que solo retransmite las tramas corruptas, pero por otro lado
tiene el inconveniente de que necesita ms buffers.
El mtodo de control de errores Go-back-n necesita menos buffers que otros
mtodos pero desperdicia capacidad del ancho de banda ya que retransmite
informacin que ya haba llegado correctamente.

13.3.8.Piggy-backing
Algunos protocolos en vez de devolver tramas de reconocimiento ACK y de
reconocimiento negativo NAK como tales, aprovechan el flujo de vuelta para

http://www.tonet.jazztel.es

83

incorporar en l, el reconocimiento o no de las mismas, es decir, en las tramas de


vuelta se incluye el reconocimiento o no de las tramas recibidas. De esta forma se
aumenta la eficiencia global del sistema.
En los protocolos, siempre hay una conversacin entre los dos extremos. Entonces
puede darse el caso de que en un mismo instante, se quiera enviar un mensaje del
receptor al transmisor y a su vez tambin hay una trama de reconocimiento a
enviar. Si hay piggy-backing, no se envan dos tramas, sino solo una con las
informacin de ambas tramas.
En contraposicin las tramas de informacin deben incluir un campo con el nmero
de secuencia y un campo de reconocimiento. El protocolo HDLC usa esta tcnica
llamada de piggy-backing.
En estos caso el tiempo de ciclo Tc vale
Tc = tp + tt +tp + tt = 2 ( tp + tt )

13.4. Control de flujo


El objetivo del control de flujo es controlar la velocidad de transmisin de las tramas
de un enlace, de tal forma que siempre haya recursos, por ejemplo buffers,
suficientes para almacenar las tramas recibidas. Si la salida de tramas por unidad
de tiempo del transmisor es mayor que la que puede procesar el receptor, significa
que si no se regula aquella salida, se perdern tramas en recepcin, lo que conlleva
a nuevas retransmisiones y en consecuencia a una prdida de rendimiento. Esto
tambin puede ocurrir en algn dispositivo intermedio de la red, como puede ser un
enrutador. Esto implica la posibilidad de bloqueo del transmisor en el caso de que
las tramas salgan a demasiada velocidad y que se puedan desbordar los buffers de
recepcin. Es el caso de que las prestaciones del transmisor y del receptor sean
diferentes.
Hay distintas posibilidades de control de flujo tales como:

Echo checking. En este caso adems de controlar los posibles errores, este
mtodo permite controlar el flujo, ya que si los buffers se llenan, se para el
envo de ecos y el transmisor se bloquea hasta que vuelva a recibir un eco.

X-OFF/X-ON o tambin llamado In-bound-flow-control. Este mtodo es un


complemento del mtodo anterior y consiste en que muchas veces aunque el
receptor deja de enviar ecos, el transmisor sigue enviando caracteres. En
este caso la forma de bloquear el transmisor, es enviando al receptor un
carcter de control X-OFF, que hace cesar el envo de caracteres. Para
reanudar la transmisin, el receptor enva un carcter de control X-ON al
transmisor.

Out-of-band-control. Este mtodo se utiliza en las lneas de transmisin


analgicas y se le conoce como la norma V.24. Para ello se emplean los

http://www.tonet.jazztel.es

84

comandos RTS (request to send) y CTS (Clear to send). Tambin en el caso


de las impresiones, es decir, entre ordenador e impresora, se utiliza este
mtodo, ya que la impresora es un dispositivo mucho ms lento que los
ordenadores a los que est asociada.

Mecanismos de ventanas. De estos mecanismos el ms conocido y


empleado es el de ventana deslizante que se desarrolla a continuacin.

13.4.1.Ventana deslizante (Sliding window)


Este control de flujo permite la existencia de un nmero mximo de tramas de
informacin esperando su confirmacin en el transmisor. A este nmero se le llama
ventana de transmisin kT. La informacin de cada trama en espera de su
confirmacin est contenida en esta ventana.
Cuando la ventana de transmisin se agota, el transmisor se bloquea. As
podramos decir que el control de errores Stop-and-wait es en realidad un control de
ventana deslizante de kT = 1
En general se define un lmite inferior de ventana Linf (LWE - Lower Window Edge) y
un lmite superior de ventana Lsup (UWE - Upper Window Edge). Al inicio de la
transmisin, ambos valores valen cero
Linf = Lsup = 0
Cuando el transmisor quiere transmitir una trama:

Si Lsup - Linf < kT entonces incrementa el valor de Lsup en 1 y a continuacin


transmite la trama, es decir, primero verifica que la ventana no est agotada.

Si Lsup - Linf = kT, el transmisor se bloquea, dado que la ventana est


agotada, y no transmite la trama.

Si el transmisor recibe una trama de reconocimiento ACK, entonces


incrementa el valor de Linf en 1. En este caso el transmisor si estaba
bloqueado, se desbloquea.

Por lo tanto

L sup es el nmero de tramas enviadas y

L inf es el nmero de tramas reconocidas

Se define la ventana de recepcin kR como el nmero mximo de tramas que


pueden ser almacenadas en recepcin. El valor de la ventana del receptor debe
estar relacionada con la ventana del transmisor y as se representa en la tabla
siguiente dependiendo del mtodo de control de flujo utilizado.

http://www.tonet.jazztel.es

85

Ventana del Ventana del


transmisor
receptor
Stop-and-wait

Repeticin selectiva

Go-back-N

Para calcular el valor mnimo en el lado receptor, nos tenemos que situar en el caso
peor. Por ejemplo en el caso de repeticin selectiva, sera que se perdieran las
tramas de reconocimiento ACK. Por esta razn si la ventana del transmisor es K, la
del receptor tambin como mnimo debe ser K. Adems en el caso de repeticin
selectiva es as porque las tramas pueden llegar desordenadas.
Clculo de la ventana ptima de transmisin
En retransmisin continua nos interesa seguir manteniendo eficiencias cercanas al
100%. Si introducimos un control de flujo, qu ventanas necesitamos para que el
transmisor no se quede nunca bloqueado en condiciones normales?
Recordemos que el tiempo de ciclo vale
Tc = 2 tp + tt + tack
Ahora el tiempo mximo de transmisin es el tiempo que el emisor puede transmitir
hasta que se agota el buffer de transmisin y por tanto vale kT . tt
Por tanto en este caso la eficiencia U vale
U = ( kT tt ) / Tc = ( kT tt ) / ( 2 tp + tt + tack ) < 1
Por otro lado interesa que las tramas de reconocimiento ACK lleguen antes de que
se agote la ventana. Recordemos que cuando llega una trama de reconocimiento
ACK, se incrementa el valor del lmite inferior de ventana Linf.
La solucin ptima es aquella en que la eficiencia U vale 1, luego
U = ( kT t t ) / T c = 1
kT ptima = Tc / tt
Si k < kopt entonces U = ( kT tt ) / Tc < 1
Si k kopt entonces U = 1 y adems el transmisor nunca se bloquea.
Desarrollando el valor de KT ptimo, resulta
kopt = Tc / tt = ( Tespera + tt ) / tt = ( Tespera / tt ) + 1

http://www.tonet.jazztel.es

86

siendo Tespera = 2 tp + tack , si suponemos que el temporizador se activa cuando sale


el ltimo bit de la trama.
Numeracin de las tramas
El objetivo de la numeracin de las tramas sirve para poder relacionar las tramas de
reconocimiento con la trama que quiere reconocer en el caso de que haya varias
tramas pendientes de reconocimiento y adems en este caso el orden de recepcin
no tiene porque coincidir con el de envo. Si no se usasen ventanas se podra
utilizar una numeracin con rango infinito.
Limitando el nmero de tramas que pueden ser transmitidas, limitamos tambin el
rango de nmeros de secuencia que se pueden usar. El nmero de secuencia es
un campo de n bits en la trama. Con n bits, podemos secuenciar 2n nmeros
N = 2n nmeros de secuencia
Para calcular el valor mximo necesario de N nos debemos situar en el caso peor,
que sera cuando todas las tramas de reconocimiento ACK se pierden y por tanto al
receptor le llegan todas las tramas repetidas.
Caso de Stop-and-wait
Si se emplea el mtodo Stop-and-wait, con un bit para la numeracin de tramas es
suficiente (n=1), porque solo se necesitan dos nmeros de secuencia (N=1), el 0 y
el 1, es decir,

si todo va bien, ahora usa 0, y a continuacin el 1

si es necesario la repeticin, si haba mandado una trama con nmero de


secuencia 0, vuelve a enviar la misma trama con nmero de secuencia 0, y lo
mismo si el nmero de secuencia fu 1.

Caso de repeticin selectiva


Si se emplea el mtodo de repeticin selectiva, ahora kT = k , es decir, el transmisor
enva toda su ventana de transmisin ( k tramas) y se queda bloqueado esperando
la primera trama de reconocimiento ACK de la secuencia.
Para calcular el mximo valor de N nos hemos de situar en el caso peor que es si el
receptor enva las tramas de reconocimiento ACK pero que todas estn corruptas.
En este caso el transmisor retransmite toda la secuencia cuando han saltado los
temporizadores.
Cmo sabe el receptor si esta nueva secuencia es la repeticin de la anterior
debido a que todas las tramas de reconocimiento ACK estn corruptas o es una
nueva secuencia? La manera de hacerlo es enviando unos nuevos nmeros de
secuencia distintos a los de la primera serie. As en este caso el nmero de
secuencia debe ser mayor que el tamao de la ventana.
N = 2n 2 kT
kT <= N / 2 = 2n-1

http://www.tonet.jazztel.es

87

Ahora pues nos encontramos que el valor de la ventana kT debe ser un compromiso
entre la desigualdad kT <= N/2 y la condicin vista anteriormente de kT kopt
Por ejemplo si se emplean 3 bits para la numeracin de tramas (n = 3), el valor
mximo de nmeros de secuencia es 8 (N = 8) y en este caso por un lado
kT <= N / 2 = 4
pero por el otro supongamos que kopt = 24
En este supuesto no hay solucin ptima porque para kT = 24, el nmero de bits n
necesario para la numeracin de tramas es
24 = N/2 N=48 48= 2n-1 por tanto n = 6 bits.
Caso de Go-back-N
Si se emplea el mtodo Go-back-N, el supuesto peor es cuando el transmisor enva
toda la ventana y el receptor reconoce todas las tramas pero determina que son
corruptas. Ahora el transmisor reenva otra vez todas las tramas.
Al receptor le basta reconocer el primero de la nueva secuencia ya que si la primera
trama I0 fuera la incorrecta, el receptor descartara automticamente el resto de la
secuencia. Por tanto en este caso
N kT + 1
Por ejemplo si n = 3 , N = 8 y el tamao de la ventana vale kT <= N 1 = 7
Pero por otro lado si kopt = 24, entonces k + 1 N y 25 N = 2n
n= 5 bits
Utilizacin del enlace
Como ya hemos visto, si U es la utilizacin del enlace
U =1 si kT kopt
U = ( kT tt ) / Tc si kT < kopt
Por otro lado:
-

Los nmeros de secuencia pueden tener un gran impacto en la


eficiencia si no estn bien diseados.

La eleccin de la ventana de retransmisin tiene un gran impacto en el


clculo del nmero medio de retransmisiones, recordemos que Tc = Nr
Tc

http://www.tonet.jazztel.es

88

Caso de repeticin selectiva


Si se utiliza el mtodo de repeticin selectiva, el numero de retransmisiones vale
Nr = 1 / ( 1 Pf)
siendo Pf la probabilidad de trama corrupta.
En este caso el valor de utilizacin U del enlace vale
U = 1 / Nr si kT kopt
U = ( kT tt ) / ( Nr Tc ) si kT < kopt
Caso de Go-back-N
Si se utiliza el mtodo Go-back-N, cuando una trama est corrupta se han de
retransmitir ms de una trama.
Si Nr es el nmero medio de tramas retransmitidas para conseguir xito, se
demuestra que
Nr = ( 1 Pf + k Pf ) / ( 1 Pf )
Y por tanto la utilizacin del enlace U valdr
U =1 / Nr = ( 1 Pf ) / (1 Pf + k Pf ) si kT kopt
U = ( k tt ) / (Nr Tc ) = k ( 1 Pf ) tt / Tc ( 1 Pf + k Pf ) si kT < kopt
En el caso de k , k Pf 0, entonces para k kopt
U = ( 1 Pf )
y por tanto coincide con el valor del caso de repeticin selectiva.

http://www.tonet.jazztel.es

89

14. Redes LAN (Local Area Network)

14.1.Introduccin
LAN (Local Area Network) es una red que conecta directamente entre s equipos
situados en un mbito geogrfico local (unos centenares de metros o unos pocos
Km). Suele ser administrada localmente por la misma empresa que dispone de la
red, es decir, se trata de una red privada. Ofrece velocidades de transmisin altas,
del orden de los Mbps y en la actualidad se llega al Gbps.
El medio de transmisin es compartido por todas las estaciones, por consiguiente
es necesario el uso de un protocolo de enlace que permita a las estaciones acceder
de forma coherente al medio.
Las LANs se dividen en:
-

LANs cableadas y que se caracterizan porque usan un medio guiado y

LANs no cableadas que se caracterizan porque usan medios no


guiados.

El componente bsico de una LAN es la tarjeta de red (NIC: Network Interface


Cards) y sus controladores: las NICs implementan el hardware de red (nivel fsico y
enlace) de la LAN mientras que los controladores implementan los programas del
protocolo a nivel de enlace.
Si la LAN es cableada, tiene como componentes adicionales:

El cable: medio guiado (coaxial, par trenzado o fibra ptica). Los cables se
instalan siguiendo los estndares de cableado estructurado (norma EIA
568) y

Los conectores: es lo que permite conectar la tarjeta de red al cable.

14.2. Topologas
La topologa es la estructura que forman el medio de transmisin y los ordenadores
conectados al medio. Hay tres topologas fsicas bsicas:
-

Bus: tpicas de las redes Ethernet antiguas

Anillo: tpicas en las redes Token Ring y FDDI

Estrella: utilizadas en todas las LAN actuales en substitucin de los


buses y los anillos.

http://www.tonet.jazztel.es

90

14.2.1.Topologa bus
Punto de vista fsico
En esta topologa, cada dispositivo est conectado a un cable comn y los
dispositivos comunes son aquellos que permiten que el dispositivo se una o se
conecte al nico medio compartido. Una de las ventajas de esta topologa es que
todos los dispositivos estn conectados entre s y, de ese modo, se pueden
comunicar directamente. Una desventaja de esta topologa es que la ruptura del
cable hace que la red quede partida en dos de forma inaccesible una parte de la
otra.
Punto de vista lgico
Una topologa de bus permite que todos los dispositivos de red puedan ver todas
las seales de todos los dispositivos del bus, lo que puede ser ventajoso si se
desea que todos los dispositivos obtengan esta informacin. Sin embargo, puede
representar una desventaja ya que es comn que se produzcan problemas de
trfico y colisiones.

14.2.2.Topologa en anillo
Punto de vista fsico
La topologa en anillo muestra todos los dispositivos que estn conectados
directamente entre s por medio de cables en lo que se denomina una cadena
margarita.
Punto de vista lgico
Para que la informacin pueda circular, cada estacin debe transferir la informacin
a la estacin adyacente.

14.2.3.Topologa en estrella
Punto de vista fsico
La topologa en estrella tiene un nodo central desde el que salen todos los enlaces.
La ventaja principal es que permite que todos los dems nodos se comuniquen
entre s de manera conveniente, ya que el nodo central puede actuar como gestor.
La desventaja principal es que si el nodo central falla, toda la red se desconecta.
Segn el tipo de dispositivo de red que se usa en el centro de la red en estrella, las
colisiones pueden representar un problema.
Punto de vista lgico
El flujo de la informacin puede ser transferido o no a todos los nodos de la red, en
funcin del tipo de dispositivo que sea el nodo central. Si este nodo central es un

http://www.tonet.jazztel.es

91

concentrador, que se caracteriza por ser un nodo pasivo, todos los nodos vern
todos los flujos venga del nodo que venga. Pero si el nodo central es un
conmutador, que se caracteriza por ser un nodo activo con su procesador, este
puede establecer filtros de forma que se impongan restricciones de trnsito al flujo
de informacin. Un inconveniente de este tipo de topologa es que el fallo del nodo
central hace que toda la red deje de funcionar.

14.2.4.Topologa en estrella extendida


Punto de vista fsico
La topologa en estrella extendida tiene una topologa en estrella central, con cada
uno de los nodos finales de la topologa central actuando como el centro de su
propia topologa en estrella. La ventaja de esto es que el cableado es ms corto y
limita la cantidad de dispositivos que se deben interconectar con cualquier nodo
central.
Punto de vista lgico
La topologa en estrella extendida es sumamente jerrquica, y busca que la
informacin se mantenga local. Esta es la forma de conexin utilizada actualmente
por el sistema telefnico.

14.2.5.Estrella compartida y estrella conmutada


En cuanto a los dispositivos a los que se conectan los ordenadores de una red, hay
dos filosofas:
Por difusin (Broadcasting) o compartido (Shared).
Por conmutacin (Switching).
En cuanto a topologas, por los dispositivos que las definen en las LANs son
Estrella compartida. En este caso se emplean concentradores o hubs (repetidores
multipuerto) que son dispositivos pasivos. Internamente la conexin es en estrella
o mediante un bus interno. Se usa en las redes Ethernet. Es un dispositivo que
funciona por difusin, es decir, cuando una estacin transmite una trama, el
concentrador propaga esta trama por todos los puertos de salida de forma que
todas las estaciones reciben una copia de la trama.
Estrella conmutada. En este caso se emplean conmutadores o switches, que son
dispositivos activos dotados de un procesador. Internamente es una estrella o bus
interno. La trama transmitida por una estacin es transmitida por un puerto
determinado dependiendo de la direccin de la estacin (direccin MAC). Estos
dispositivos disponen de las tablas necesarias para realizar esta funcionalidad.

http://www.tonet.jazztel.es

92

14.3. IEEE 802.2


El proyecto 802 de IEEE define las especificaciones del nivel de enlace ms
extendido en las LANs. Este nivel de enlace se divide en dos subniveles:

el subnivel MAC (Medium Access Control), que es un nivel 1 (fsico) y


el subnivel LLC (Logical Link Control).

El subnivel MAC tiene como funcionalidades:

El envo y la recepcin de tramas.

La asignacin de una direccin a cada ordenador.

Una deteccin de errores y

La implementacin del protocolo de acceso al medio.

Emplea tres clases defunciones primitivas en cuanto a su relacin con el subnivel


LLC:

Request. Se trata de solicitar algn servicio por parte del subnivel LLC al subnivel
MAC, por tanto, siempre es en la direccin desde el subnivel LLC al MAC. Esta
primitiva incluye la direccin de destino, el tipo de servicio solicitado y los datos a
enviar.

Indication. Se trata de tramas con datos o avisos del subnivel MAC al LLC .

Confirmation. Estas tramas se envan al subnivel LLC desde el subnivel MAC,


indicndole que las tramas por el enviadas, ya han sido enviadas al medio y a su
vez incluyen informacin del tipo de fallo o no de la trama Request.

El subnivel LLC est entre el nivel MAC y el nivel 3 (red) y sus funcionalidades son:

La posibilidad de servicios confirmados.

Un control de error.

Un control de flujo.

Entramar y multiplexar jerarquas de protocolos de nivel superior (e.g. SPX/IPX,


TCP/IP, ).

El protocolo 802.2 se corresponde con el subnivel LLC del proyecto 802 dentro del
nivel de enlace (2) del modelo OSI. Por un lado interopera con los protocolos 802.3,
802.5,etc. del subnivel MAC del nivel de enlace (2) y por otro con los protocolos de
nivel de red (3).
Nivel 3
Nivel 2

IP
LLC
MAC

IPX

NetBIOS

802.2
802.3

802.5

Otros

http://www.tonet.jazztel.es

93

Este protocolo 802.2 no se refleja en los mensajes que circulan por las redes,
porque son internos, es decir, van dentro del propio dispositivo como un
controlador. Sus direcciones origen y destino, conocidas como SAPs, se
corresponden a los protocolos de nivel 3 de los dispositivos origen y destino.
El subnivel LLC inicia el intercambio de seales de control, organiza el flujo de
datos, interpreta los comandos, genera respuestas y gestiona las funciones de
control de errores y su recuperacin.
Este protocolo 802.2 ofrece 3 tipos de servicio distintos:

Tipo 1 : sin reconocimiento y no orientado a conexin. Tambin se llama


modo de operacin datagrama del usuario. Es el ms usado por ejemplo en
redes TCP/IP. No hay reconocimiento por parte del receptor, ni el emisor
espera este reconocimiento, porque se consideran las redes suficientemente
fiables. Por esta razn, los servicios del nivel transporte, es decir, de nivel
superior, los que tienen que proporcionar el control de error.

Tipo 2 : orientado a conexin. En este caso, se establecen circuitos virtuales


entre el dispositivo que enva y el dispositivo que recibe. Es el caso del
protocolo HDLC en modo ABME (Asyncrhonous Balanced Mode Extended).
En este caso, hay primero el establecimiento del enlace y luego durante la
transmisin, hay una deteccin de errores, su recuperacin y un control de
flujo.

Tipo 3 : con reconocimiento y no orientado a conexin. En este caso no hay


circuitos virtuales. Este tipo resulta especialmente interesante para las LAN
de alta velocidad como FDDI y concretamente para los protocolos de gestin
de la LAN.

La estructura del mensaje es


SAP destino

SAP origen

Control

Datos

Donde

SAP destino es un campo de 8 bits, de los cuales 6 representan la direccin


propiamente dicha. El bit 8 es el indicativo de I/G (individual o grupo). La
direccin significa la puerta del protocolo LLC correspondiente con el
protocolo de nivel de red del dispositivo destino.

SAP origen es un campo de 8 bits. El bit 8 es 0 o 1, si el mensaje es un


comando o una respuesta. La direccin que utiliza 6 bits, significa la puerta
del protocolo LLC correspondiente con el protocolo de nivel de red del
dispositivo origen.

Control, campo de 1 o 2 octetos donde se especifica la funcin del comando


de solicitud o respuesta, as como el tipo de LLC empleado. Su contenido se
parece mucho al del protocolo SDLC, as hay 3 tipos de formatos: sin
secuencia, supervisor y de informacin.

Datos.

http://www.tonet.jazztel.es

94

En cuanto a la direccin SAP, un dispositivo puede tener ms de un SAP asociado


a ella para un nivel especfico, igual que un dispositivo puede tener ms de una
sesin activa mediante un SAP.
Los procesos de los niveles superiores usan los servicios del protocolo 802.2 a
travs de puntos de acceso al servicio (SAP - Service Access Points). Estos SAP
identifican los protocolos del nivel de red que deben recibirlo, en el caso de pasar
mensajes de nivel 2 al 3. Sin embargo si es al contrario, es decir, un mensaje que
pasa del nivel 3 al 2, el SAP destino es el protocolo de nivel de red del dispositivo
de destino.
Algunos valores de SAP son los siguientes:
APPN
TCP/IP
SNA
X.25
SNAP

04
06
08
7E
AA

Vines
IPX
NetBIOS
RPL
Ungerman-Bass

BC
E0
F0
F8
FA

14.4.Conmutadores / Switches
Al principio de la existencia de las redes de ordenadores, se utilizaba un
concentrador o hub, al cual se conectaban todos los ordenadores de la red. As
cuando un ordenador emita un mensaje, todos los ordenadores de la red lo
reciban y solo contestaba el ordenador cuya direccin MAC coincida con el campo
destino del mensaje. Estos concentradores o hubs eran elementos pasivos, es
decir, no tenan ninguna capacidad de procesamiento.
La siguiente fase consiste en sustituir los concentradores o hubs por conmutadores
o switches. Estos dispositivos tienen capacidad de procesamiento, por lo que
internamente pueden disponer de capacidad de filtrado y enrutamiento. As cuando
un ordenador enva un mensaje y llega al concentrador, este dispositivo de acuerdo
con sus instrucciones internas lo enva hacia una o ms salidas. Estas instrucciones
internas pueden ser de filtrado o enrutamiento, es decir, a diferencia de los
concentradores, un mensaje enviado por un ordenador no es visto por todos los
ordenadores conectados al conmutador.
As estos conmutadores se caracterizan por:

Incrementar el ancho de banda de la LAN.

El uso del Spanning Tree Algorithm para evitar bucles cerrados en el


caso de varios conmutadores conectados entre si. Este algoritmo lo
emplea el protocolo que permite a los conmutadores intercambiarse las
tablas de direcciones MAC que hay en cada puerto.

http://www.tonet.jazztel.es

95

Hay dos tipos de conmutadores o switches:


-

Cut-Through Switching

Store-and-Forward Switching

14.4.1. Tipo Cut-Through Switching


Este tipo de conmutador retransmite las tramas despus de que algunos bits
acaban de ser recibidos, es decir, antes de leer toda la trama, ya empieza a
retransmitirla.
Esta es la razn por la que reenva cualquier tipo de trama, ya sean correctas o no,
tales como:
-

runt frames. Se entiende por runt frame, una trama con un tamao menor al
tamao mnimo de un paquete Ethernet (64 octetos). Si la retransmisin de la
trama es despus de leer ms de 64 octetos, el propio switch puede detectar las
runt frames.

Tramas errneas.

Este tipo de conmutadores se congestionan fcilmente.

14.4.2.Tipo Store-and-Forward Switching


Este tipo de conmutador retransmite tramas despus de recibir todos los bits de la
trama.
Se caracteriza por:
-

No retransmitir tramas errneas y runt frames .

No se congestiona tan fcilmente como un conmutador Cut-Through.

Desventaja: mayor latencia debido al almacenamiento previo de toda la trama.

Estos conmutadores emplean tres clases de topologas de almacenamiento:


-

Buffers de entrada: problema Head Of Line (HOL).

Buffers de salida: puede haber congestin si los buffers son pequeos.

Buffers compartidos: si es necesario permite implementar otras disciplinas de


planificacin a FIFO.

Combinacin de las distintas topologas.

http://www.tonet.jazztel.es

96

14.4.3.Conmutadores hbridos
Tambin existen conmutadores hbridos de los tipos anteriores. Por ejemplo un
conmutador del tipo Store-and-Forward y Cut-Through. En este caso depende de
las circunstancias del estado y trfico de la red, emplea un tipo u otro.
As podemos establecer que

Si no hay congestin y la tasa de errores es pequea, emplea el mtodo CutThrough.

Si hay congestin o la tasa de errores es alta, emplea el mtodo Store-andForward.

Conmutacin adaptativa: la decisin de usar Cut-Through o Store-andForward se toma trama-a-trama.

14.4.4.Conmutacin a nivel 2 y 3
Existen dos mtodos de conmutacin de tramas de datos:
-

conmutacin a nivel 2 y

conmutacin a nivel 3.

La conmutacin es el proceso de tomar una trama que llega de una interfaz y enviar
a travs de otra interfaz. Los enrutadores utilizan la conmutacin de nivel 3 para
enrutar un paquete; los conmutadores utilizan la conmutacin de nivel 2 para enviar
tramas.
La diferencia entre la conmutacin de nivel 2 y nivel 3 es el tipo de informacin que
se encuentra dentro de la trama y que se utiliza para determinar la interfaz de salida
correcta. Con la conmutacin de nivel 2, las tramas se conmutan tomando como
base la informacin de la direccin MAC. Con la conmutacin de nivel 3, las tramas
se conmutan tomando como base la informacin del protocolo de nivel de red.
Si el conmutador de nivel 2 no sabe dnde enviar la trama, realiza una solicitud de
broadcast de la trama desde todos sus puertos hacia la red a fin de saber cul es el
destino correcto. Una vez que vuelve la trama de respuesta, el conmutador aprende
la ubicacin de la nueva direccin y agrega dicha informacin a la tabla de
conmutacin.

http://www.tonet.jazztel.es

97

15. Protocolos de acceso al medio (MAC)


Se trata de aquellos protocolos cuyas funcionalidades corresponden al nivel de
acceso al medio (MAC) y que a su vez corresponde a un subnivel del nivel de
enlace segn el modelo OSI. En la actualidad hay los tres tipos siguientes:

Paso de testigo. Los protocolos de este tipo consisten en que una estacin no
transmite hasta que est en posesin de un token y que adems est libre.

Aleatorios. Los protocolos de este tipo consisten en que cuando una estacin
quiere transmitir, transmite sin verificar si el medio est ocupado o no.

Reserva. Los protocolos de este tipo se caracterizan porque la estacin


transmisora verifica si el medio est ocupado antes de transmitir, es decir, que
mientras una estacin est transmitiendo, tiene el medio reservado hasta que
finaliza su transmisin. Es el caso de los protocolos CSMA/CD que emplea
Ethernet y CSMA/CA del protocolo IEEE 802.11

15.1.Token Ring
Esta tecnologa de red de rea local fue diseada originalmente por IBM en los
aos 70 y estandarizada por el IEEE con el nombre IEEE 802.5. La especificacin
IEEE 802.5 es prcticamente idntica a la red Token Ring de IBM y absolutamente
compatible con ella.

Este protocolo est en la actualidad en desuso por razones de mercado, aunque


an existen instalaciones con este protocolo. Tecnolgicamente es mejor que el
protocolo Ethernet, porque permite un mayor aprovechamiento del ancho de banda
(hasta un 90%, contra un 30% del Ethernet). Sin embargo el precio de los

http://www.tonet.jazztel.es

98

dispositivos y el no haber superado los 16 Mbps, hace que no hayan nuevas redes
con este protocolo.
En cuanto a su topologa:

Fsicamente es una estrella (MAUs: Multistation Access Unit).

Lgicamente es un anillo por paso de testigo (token).

El cdigo Manchester Diferencial es el que se usa para codificar la seal que


contiene los datos binarios, que son transmitidos a velocidades de 4 o 16 Mbps
(velocidades estndar del IEEE). En la implementacin de redes Token Ring de
IBM, se recomienda cable apantallado STP aunque tambin se puede usar el cable
sin apantallar UTP. El cable de fibra ptica multimodo es otra opcin de cableado.
Este anillo consta de un conjunto de repetidores conectados entre s con enlaces
half-duplex punto-a-punto formando un lazo cerrado. Cada estacin se conecta al
repetidor con un enlace full-duplex punto-a-punto. Soporta como mximo 260
estaciones por anillo y los anillos se pueden unir mediante puentes o bridges.
El acceso al anillo es controlado por un token que circula continuamente por el
mismo. El equipo que quiera transmitir datos, esperar que le pase el token y a su
vez que est libre. Cuando le llega el token, el equipo lo cambia por un mensaje, al
que le aade los datos y lo transmite. Si el equipo de destino est activo, copiar el
mensaje, lo marcar como copiado, y lo reenviar al equipo transmisor. Este equipo
descargar los datos y liberar el token al anillo.
Repetidores multipuerto o MAU/CAU
Los repetidores regeneran la seal y la retransmiten. Los repetidores pueden estar
en tres estados distintos:

En estado de transmisin. Es el estado del repetidor perteneciente a la


estacin transmisora. La estacin transmite una trama que el repetidor
regenera y retransmite al siguiente repetidor.

En estado de escucha. Es el estado de aquellos repetidores conectadas a


las estaciones receptoras. Estos repetidores adems de regenerar y
retransmitir las tramas hacia el siguiente repetidor, copian la trama y la
retransmiten a la estacin en el caso de que la direccin MAC destino
pertenezca a la estacin a la que estn conectadas. En este estado es
posible modificar bits de las tramas si el algoritmo de acceso al medio lo
considera necesario.

En estado de cortocircuito. Es el estado en el que el repetidor se comporta


como un cable, es decir, es como si no existiese un repetidor. Es el caso de
que en un conector del concentrador no haya conectado ningn dispositivo.

Mtodos de liberacin del testigo


El acceso al medio del Token Ring se basa en el paso de testigo (token passing).
Este algoritmo consiste en que slo puede transmitir la estacin que posee una

http://www.tonet.jazztel.es

99

trama especial llamada testigo (token). Una vez transmitida la trama, la estacin
libera el testigo que pasa a la siguiente estacin. As se repite el proceso
continuamente.
Hay tres mtodos de liberacin del testigo:

Single Packet: la estacin transmisora libera el testigo cuando recibe el


ltimo bit de la trama, es decir, el ltimo bit de la trama ha dado la vuelta
completa al anillo.

Single Token: la estacin transmisora libera el testigo cuando recibe el


primer bit de la trama, es decir, el primer bit de la trama ha dado la vuelta
completa al anillo.

Multiple Token: la estacin transmisora libera el testigo inmediatamente


despus de haber transmitido el ltimo bit de la trama.

15.2. Ethernet
Ethernet o IEEE 802.3 es el protocolo ms utilizado actualmente en el mundo de las
redes de ordenadores por razones de economa. Desde su introduccin en el
mercado en los aos 70, se ha implantando en un gran abanico de mbitos de todo
tipo. Inventado por Xerox en los aos 70 y llevado al mercado con el nombre de
Ethernet V.1, el protocolo fue desarrollado en un foro donde estaban las empresas
DEC, Intel y Xerox. Este foro sac en los aos 80 una nueva versin de Ethernet
llamada Ethernet (DIX) V2.
Tambin se hizo pblica su arquitectura y as de la mano del Institute of Electrical
and Electronics Engineers (IEEE), ha llegado a ser un estndar internacional de
facto. El IEEE ratific el estndar Ethernet DIX V2 con ligeras modificaciones y lo
denomin IEEE 802.3. El estndar IEEE 802.3 ha sido tambin aprobado por otras
organizaciones tales como el American National Standards Institute (ANSI) y el
International Organization for Standardization (ISO 8802-3).
As hay 4 versiones de este protocolo que son las siguientes:
Ethernet

Esta versin corresponde a la versin original DIX y


su posterior versin II

802.3

Corresponde al protocolo 802.3 sin empleo del


protocolo 802.2. Este protocolo lo emple Novell
Netware cuando an no estaban aprobadas las
especificaciones del protocolo.

802.3 - 802.2 LLC

Es el protocolo 802.3 pero que necesita del


protocolo 802.2 para su funcionamiento.

http://www.tonet.jazztel.es
802.3 - 802.2 LLC - SNAP

100

Ethernet SNAP extiende el encabezado IEEE 802.2


agregando un encabezado de Protocolo de acceso
de subred (SNAP) que proporciona un cdigo de
"tipo de encapsulamiento" similar al definido en la
especificacin de Ethernet Versin II y utilizado con
TCP/IP y AppleTalk.

Las principales ventajas del protocolo Ethernet / 802.3 son :

Amplia eleccin de equipos.

Bajo precio de los mismos.

Alta velocidad de transmisin.

En cuanto a su topologa:

Fsicamente es una estrella (hub o concentrador).

Lgicamente es una estrella.

El acceso al medio utiliza el mtodo CSMA/CD (Carrier Sense Multiple Access with
Collision Detection). Este mtodo se basa en escuchar el medio para ver si est
ocupado por alguna trama de alguna estacin antes de transmitir tramas. A pesar
de que se escuche el medio, las tramas pueden colisionar en el medio con lo que
en este caso es necesario retransmitirlas.
Otro mtodo similar es el CSMA/CA, que consiste en informar de forma previa a la
red de que se va a transmitir. Con ello se evitan colisiones, pero disminuye la
eficiencia de la red, ya que hay una informacin adicional que se transmite y que no
son datos propiamente dichos.

15.2.1.Nivel fsico
Ethernet forma una familia que abarca Ethernet (10 Mbps), Fast Ethernet (100
Mbps) y Gigabit Ethernet (1 Gbps, 10 Gbps) sobre cables de cobre apantallados
STP y sin apantallar UTP, y de fibra ptica multimodo y monomodo.
El mtodo de codificacin de las seales es la Manchester, es decir, el tiempo de bit
se divide en dos mitades, siendo su transicin en funcin del contenido del bit, as

el 1 corresponde a una transicin baja-alta y

el 0 a una transicin alta-baja

http://www.tonet.jazztel.es

101

Medios de transmisin
La velocidad del protocolo Ethernet es de 10 Mbps. Sus medios de transmisin
definidos en sus especificaciones cintemplan 4 configuraciones bsicas: 10Base2,
10Base5, 10BaseT y 10BaseF.
El significado del nmero a la izquierda es su velocidad. En cuanto el cdigo a su
derecha, corresponde a la mxima distancia en cientos de metros o a la clase de
medio de transmisin empleado.
a) 10 Base2
En este caso se trata de redes Ethernet que emplean cable coaxial de tipo thin, de
aqu que tambin se las conozca como Thinnet o Cheapnet.
El empleo de este tipo de cableado hace que los dispositivos se conecten en bus
(segmento) y el empleo de taps (impedancias de 50 ) en sus extremos.
El tipo de conector es BNC-T. Este conector conecta la tarjeta de red (NIC) de la
estacin al cable coaxial.
La distancia mxima recomendada es de 200 m.
b) 10Base5
En este caso se trata de redes Ethernet que emplean cable coaxial de tipo thick, de
aqu que tambin se las conozca como Thicknet.
En el caso de tener un 10Base5 se usa un transceiver para conectar la tarjeta de
red al cable. El hardware est repartido entre la tarjeta de red y el transceiver. En
este caso los conectores que se emplean son los AUI (Attachment Unit Interface).
La distancia mxima recomendada es de 500 m.
c) 10BaseT
Las configuraciones bsica 10BaseT emplea cable de cobre con par trenzado sin
apanatallar UTP-3 y UTP-5.
Los concentradores implementan internamente un bus. Las estaciones se conectan
generalemente con cable sin apantallar UTP y conector RJ45 entre las tarjetas de
red de la estacin y el puerto del concentrador.
d) 10BaseF
La configuracione bsica 10BaseF emplea fibra ptica. Los conectores son del tipo
SC o ST.
10BaseF define 3 variantes:

10BaseFP (passive star): repetidor ptico pasivo con un mximo de 33


nodos y 1Km/segmento.

http://www.tonet.jazztel.es

102

10BaseFL (link): interconecta nodos o repetidores con un lmite de 2 Km.


10BaseFB (backbone): interconecta repetidores hasta 2 Km entre ellos con
transmisin sncrona (hasta 15 repetidores en cascada), excediendo el lmite
de la regla 5-4-3. Se usa para interconectar mltiples concentradores en
cascada y as incrementar la longitud de la red excediendo la regla de que
slo haya 5 segmentos de red conectados entres s.

15.2.2.Nivel MAC
El formato de trama es algo diferente de si se trata del protocolo Ethernet-II o el
Ethernet IEEE 802.3. Los formatos de los mensajes para Ethernet y IEEE 802.3 son
distintos, sin embargo, ambos protocolos usan el mismo medio y el mismo mtodo
de acceso. Esto significa que los equipos de la red pueden compartir ambos
formatos en el bus comn, pero no se pueden comunicar entre s.
La estructura del mensaje 802.3 / Ethernet es la siguiente :
Prembulo Sincroni- Direccin Direccin
zacin
destino
origen

Tipo

Datos

PAD Control
de error

Donde

Prembulo - 7 octetos. Permite que la electrnica de sealizacin del nivel


fsico pueda sincronizar con la electrnica de recepcin de mensajes. En
contenido de cada octeto es 10101010

Sincronizacin (SFD-Start Frame Delimiter) - 1 octeto. Indica que porcin de


datos del mensaje vienen a continuacin en la transmisin del mismo. Su
contenido es 10101011

Direccin destino (DA) - 48 bits. Se corresponde a la direccin MAC (Media


Access Control). Tres tipos de direcciones destino son posibles : individual,
de multicast y de broadcast. La individual contiene una nica direccin de un
nodo concreto de la red. La de multicast significa que se usa un grupo de
direcciones. La de broadcast es una forma especial de multicast, pero para
todos los nodos de la red.

Direccin origen (SA) - 48 bits. Su significado es el mismo que la direccin


destino.

Tipo - 16 bits. Este campo identifica el tipo de protocolo del nivel superior.
Los fabricantes deben registrar sus protocolos de acuerdo con el estndar
Ethernet. Cada protocolo registrado tiene un identificador de 2 octetos. En el
protocolo 802.3, este campo corresponde a la longitud del mensaje. La
identificacin del protocolo de nivel superior en el caso del protocolo 802.3 se
realiza en las direcciones SAP del protocolo 802.2, por ejemplo 0x0800 si es
protocolo IP o 0x0806 si es protocolo ARP.

Datos - Este campo contiene los datos a transmitir y su longitud oscila entre
38 y 1482 octetos. Ethernet asume que los niveles superiores asegurarn

http://www.tonet.jazztel.es

103

que el tamao mnimo de mensaje sea de 46 octetos. Si se emplea el


protocolo 802.2, dentro de este campo se incluye la cabecera de este
protocolo.

PAD - campo de relleno. IEEE 802.3 (y Ethernet) especifican un tamao


mnimo de mensaje de 64 octetos. Sin embargo, el 802.3 permite que el
campo de datos sea inferior a los 46 octetos requeridos para que la longitud
total sea como mnimo de 64 octetos. Por ello el 802.3 aade los caracteres
de rellenos necesarios para cumplir este requisito.

Control de error - 32 bits. Se emplea el mtodo de control de error CRC-32.

En el caso del protocolo 802.3 con 802.2, el campo de datos se desglosa en:

SAP destino.

SAP origen.

Control, campo de 1 2 octetos.

El protocolo 802.3 con SNAP desglosa su campo de datos en:

SAP destino.

SAP origen.

Control, campo de 1 2 octetos.

Id. Organizacin, 3 octetos.

Tipo, 2 octetos. Corresponde al tipo de protocolo de nivel superior, as para


IP, es 2048 y para ARP, 2054.

El tamao de trama es como mnimo de 64 octetos y como mximo 1518 octetos.

15.2.3.Tecnologa CSMA/CD
CSMA/CD (Carrier Sense Multiple Access con Deteccin de Colisin) es el nombre
de la tecnologa utilizada en el bus del protocolo Ethernet /IEEE 802.3 para
controlar la operacin de la red.
Su esquema de funcionamiento est detallado en el esquema adjunto.
Fase de transmisin
Cuando la estacin transmisora quiere enviar una trama,

primero debe montar la trama con la informacin recibida del protocolo del
nivel superior.

http://www.tonet.jazztel.es

104

A continuacin verificar si el medio est libre. Si otro dispositivo est


transmitiendo, debe esperar a que termine su transmisin.

En el caso de que est libre, verificar que el tiempo IPG que ha de


transcurrir entre la transmisin de dos tramas consecutivas ha transcurrido.
La razn de este tiempo IPG es con el fin de que una estacin est mucho
tiempo transmitiendo y no deje transmitir a otra.

Transmitir el primer bit de la trama y a continuacin comprobar si hay


colisin. Esta colisin puede existir en cuanto dado que hay una distancia
entre dispositivos y en consecuencia un retardo, hace que aunque se
verifique que el medio est libre, otra estacin tambin puede estarlo
verificando casi simultanemente. En este tiempo del retardo podran
ponerse a transmitir ambas.

Esta transmisin de bits y su verificacin de colisin se realiza durante toda


la transmisin de la trama.

http://www.tonet.jazztel.es

105

Fase de colisin
Si hay colisin, la estacin que la detecta, enva una seal de jamming consistente
en varios bits que fuerzan a que la colisin se prolongue durante un tiempo
suficiente para que se enteren todas las estaciones del segmento.
A continuacin la estacin que quiere transmitir, deja transcurrir un tiempo aleatorio
o tiempo de backoff, y vuelve a intentar la transmisin pendiente. El componente
aleatorio de este tiempo es para minimizar la probabilidad de nuevas colisiones.
Este tiempo de backoff es un mltiplo del tiempo de bit y vale
t = k x 512 x tb
siendo k un valor entero aleatorio y tb el tiempo de bit.

http://www.tonet.jazztel.es

106

Estos intentos tambin son controlados por un contador, que una vez superado un
umbral establecido intentos, da la trama por no transmitida.
La probabilidad de una colisin es proporcional a

El nmero de dispositivos conectados al bus.

La frecuencia de transmisin.

El tamao de los mensajes y

La longitud de los cables de la red.

Fase de recepcin
Mientras un dispositivo no emite, est en estado de escucha. Cuando detecta la
presencia de una seal en la red, inhibe la posibilidad de transmisin del mismo.
Con los bits de prembulo de la trama, obtiene la sincronizacin necesaria para
leerla. Lo primero que obtiene es la direccin MAC de destino de la misma y la
compara con la suya. En caso afirmativo, la direccin MAC origen, la direccin MAC
destino y los datos son enviados al buffer para su procesamiento. A continuacin
verifica el cdigo de error de la trama, dndola por correcta o errnea.Tambin
verifica la longitud de la trama, y si es ms pequea de 64 octetos la descarta.
Si lo que lee es consecuencia de colisin, enva una secuencia de jamming y deja
de transmitir.
Valores de los parmetros
Es habitual en Ethernet el empleo de los siguientes valores:
Lmite de intentos de transmisin = 16
Tamao de la seal de jamming = 48 bits
IPG = 9,60 s (96 bits)

15.2.4.Dominio de colisin
Dominio de colisin es aquel conjunto de dispositivos conectados fsicamente entre
si, pero que en cada instante solo uno de ellos puede transmitir. Al rea en el que
cuando se produce una colisin, se propaga la seal diciendo que hay una colisin,
se le llama Dominio de Colisiones.
En el caso de un concentrador, todos los dispositivos conectados a l forman un
dominio de colisin. Si tenemos varios concentradores conectados entre si, en este
caso solo hay un dominio de colisin. Sin embargo, si la unin de 2 concentradores
se hacen mediante el uso de un puente o un enrutador, cada concentrador es un
dominio de colisin.

http://www.tonet.jazztel.es

107

15.2.5.Ventana de colisiones
Cuando se utiliza el protocolo Ethernet en una LAN, y debido a la tecnologa de
deteccin de colisiones CSMA/CD, existe tcnicamente un tamao mnimo de
trama. La razn es que si una estacin transmite, y se produce una colisin porque
otra estacin tambin est transmitiendo, cuando tiempo se tarda en conocerse?
La situacin peor, es decir, la del tiempo mximo es lo que se llama la ventana de
colisiones.
Este tiempo mximo es el que transcurre:

desde que se propaga el primer bit de la trama de una estacin


ms el tiempo que tarda en propagarse el primer bit de la seal de jamming
de la otra estacin que ha detectado primero la colisin.

Hay que dar tiempo a que si se produce una colisin entre las dos estaciones ms
lejanas el primer bit de la trama llegue a la estacin ms lejana (el tiempo de
propagacin Tp ), que sta detecte la colisin y transmita su jamming (otro tiempo
de propagacin Tp ).
En esta situacin lmite, si cuando llega el primer bit de la seal de jamming a la
primera estacin, sta ya ha transmitido toda la trama, no detectar la colisin y
dar por entregada correctamente dicha trama, cuando en realidad no ha sido as
porque ha habido colisin.
La ventana de colisin, tambin llamada tiempo de vulnerabilidad Tv , nos permite
conocer durante cuanto tiempo el sistema es vulnerable a las colisiones dado que
una estacin ha transmitido una trama.
As la ventana de colisin es de dos veces el tiempo de propagacin mximo,
teniendo en cuenta el viaje de ida y vuelta de la trama y el caso peor que
corresponder al caso de las dos estaciones ms alejadas.
Ventana de colisin = 2 Tp max
Por otro lado se define como dimetro de la red (DR) a la distancia entre los dos
dispositivos ms alejados.
Por todo lo expuesto el tamao mnimo de trama L min vale
L min = ventana de colisin / T b
Siendo T b el tiempo de bit y la ventana de colisin
Ventana de colisin = 2 T p max = 2 ( DR / v p)
Siendo v p la velocidad de propagacin.
El protocolo 802.3/Ethernet ha establecido el tamao mnimo de trama en 64
octetos, es decir, 512 bits.

http://www.tonet.jazztel.es

108

En consecuencia para la velocidad de 10 Mbps, el dimetro mximo de red es


Ventana de colisin = L min T b = 512 . (1 / 10000000) = 0,0000512 seg.
DR = (0,0000512 v p ) / 2 = 0,0000256 v p
La velocidad de propagacin depende del medio de transmisin empleado, que
puede ser cable de cobre o fibra ptica. Para 100 Mbps, el dimetro mximo de red
vale
DR = (0,00000512 v p ) / 2 = 0,00000256 v p
Es decir, 10 veces menos.
Sin embargo el empleo de concentradores activos, introduce unos retardos por
cada uno de ellos que se encuentren entre los dos dispositivos ms alejados.
Por esta razn en estos casos la ventana de colisin vale
Ventana de colisin = 2 T p max + suma de retardos de los enlaces + suma de los
retardos de los repetidores + retardo NIC 1 + retardo NIC 2
Siendo el retardo NIC, el tiempo de procesamiento en la tarjeta de red del
dispositivo.
Las configuraciones bsicas definen el tamao mximo de un segmento Ethernet,
en 10Base2 es de 185 mt, en 10Base5 es de 500 mt, en 10BaseT es de 100 mt y
en 10BaseF depende si se emplea fibra multimodo o monomodo. Si queremos
aumentar el tamao de la red (Dimetro de la Red) hasta su tamao mximo
(Dimetro Mximo de la Red) hay que utilizar repetidores.
Las configuraciones bsicas definen cual es el dimetro mximo de la red: en un
10Base2 es de 1 Km y en un 10Base5 es de 2.5 Km.
Primitivas
Las funciones necesarias para el funcionamiento del protocolo se llaman primitivas
y en el caso del protocolo 802.3/Ethernet son:
request. Esta funcin consiste en una solicitud del protocolo 802.3/Ethernet
al protocolo de nivel superior, que en la actualidad es el 802.2
Indication. Esta funcin consiste en recibir una notificacin de sucesos
procedente del protocolo de nivel superior. En la actualidad es el 802.2
Confirm. Esta funcin consiste en una respuesta a una solicitud del
protocolo de nivel superior, es decir, el 802.2

http://www.tonet.jazztel.es

109

15.3. Protocolo Fast Ethernet


15.3.1.Nivel fsico
La caracterstica ms importante es su velocidad de 100 Mbps. Para obtener esta
velocidad hay que usar codificaciones digitales ms complejas. La estructura de la
trama es exactamente igual que la del protocolo Ethernet 802.3.
Los tipos de medio de transmisin son:

100BaseTX. El medio de transmisin es cable de cobre sin apantallar UTP


clase 5 usando 2 pares trenzados. Es posible usar cable apantallado STP
pero no lo recomiendan. El conector que se emplea es RJ-45. Su
codificacin es MLT-3. La transmisin es full-duplex.

100BaseFX. El medio de transmisin es cable de fibra ptica. Su


codificacin es la misma que el protocolo FDDI, es decir, 4B/5B-NRZI. La
transmisin es full-duplex.

100BaseT4. El medio de transmisin es cable de cobre sin apantallar UTP


clase 3. La sealizacin 4T+ emplea un par de hilos para detectar la colisin
y los otros 3 pares para la transmisin de datos. Soporta operacin fullduplex. La especificacin IEEE 802.3u para redes 100BaseT4 permite un
mximo de dos repetidores y un dimetro mximo de red de 200 m.

Tanto los concentradores como los conmutadores permiten puertos con las
velocidades de 10 y 100 Mbps (puertos en 10Base y puertos en 100Base). Adems
es posible conectar un 10BaseT a un 100BaseTX/T4. La tarjeta de red (NIC) usa un
mecanismo de autonegociacin, que consiste en un pulso elctrico de integridad
que le permite detectar si las tarjetas son de velocidad de 10 Mbps o 100 Mbps.

15.3.2.Repetidores
El protocolo Fast Ethernet define dos tipos de repetidores: clase I y clase II.
El repetidor clase I est pensado como un concentrador 100BaseT/F al que slo
hay conectados estaciones, pero no otro repetidor.
Sus caractersticas son:

Solo se puede emplear un repetidor Clase I en una red Fast Ethernet.

Permite puertos T4, TX y FX en el mismo repetidor.

Si queremos conectar dos concentradores 100Base hay que definir un estndar que
cumpla los requisitos Ethernet, es decir, un Mximo Dimetro de la Red
dependiente de la ventana de colisiones. Ese estndar es el clase II. El clase II se
puede usar como un solo repetidor o conectado a un segundo repetidor (tambin

http://www.tonet.jazztel.es

110

clase II) a travs del llamado up-link port. Este cable tiene una longitud mxima de
5 metros que es la mxima distancia que se permite entre dos concentradores
100Base.
Eso hace que los clase II no sean muy utilizados. Si queremos aumentar el nmero
de puertos de un clase I dentro del mismo dominio de colisiones, podemos usar otra
tcnica distinta a la de interconectar dos concentradores: usar repetidores apilables
(en ingls stackable)..
Sus caractersticas son:

Uno o dos repetidores Clase II en un red Fast Ethernet.

Los dos repetidores se conectan con un puerto de 5 m.

Todos los puertos son T4.

Todos los puertos son TX y FX.

Repetidores apilables
Un concentrador apilable es un clase I que interconecta los buses internos a travs
de una conexin interna (Intra-hub connection). De esta forma escalamos el
repetidor para que permita ms puertos 100Base dentro del mismo dominio de
colisiones.
Se llaman apilables porque los repetidores se colocan uno encima de otro. Notar
que la conexin Intra-hub no es una conexin entre dos puertos 100Base, las
tramas no tienen que ser traducidos por el nivel fsico, sino que se transmiten
digitalmente por el bus. Se puede ver como un alargamiento del bus interno, por
consiguiente no es una conexin entre dos concentradores.
La desventaja que tiene esta tcnica es que los concentradores apilables no estn
estandarizados, por lo que deben ser del mismo fabricante para que la conexin
Intra-hub sea compatible.

http://www.tonet.jazztel.es

111

16. Redes inalmbricas


El protocolo estndar IEEE 802.11 define el nivel fsico y el nivel de acceso al
medio (MAC) para una red de area local inalmbrica. Este estndar define tres
niveles fsicos distintos para las redes inalmbricas 802.11, cada uno operando en
un rango de frecuencias distintas y a velocidades diferentes.
En la actualidad hay dos normas la IEEE 802.11b y la IEEE.11a. La empleada
habitualmente es la primera y su compatibilidad viene regida por la etiqueta Wi-Fi.
Protocolo IEEE 802.11b: Trabaja en la frecuencia de 2,4 Ghz con una velocidad
mxima de transmisin de 11 Mbps y modulacin DSSS.
Protocolo IEEE 802.11a: Trabaja en la frecuancia de 5 Ghz y velocidades de
transmisin hasta 54 Mbps. Su modulacin es OFDM.

16.1.Protocolos
16.1.1.Protocolo 802.11a
El protocolo 802.11a utiliza el mismo protocolo del nivel de enlace y el mismo
formato de trama que el estndar original, pero a nivel fsico emplea la modulacin
OFDM. Opera en la banda de los 5 GHz con una velocidad mxima de 54 Mbps,
con un cdigo de correccin de errores, lo que da un rendimiento real neto de unos
20 Mbps
Dado que la banda de 2,4 GHz es muy utilizada, la utilizacin de la banda de 5 GHz
es ventajosa. Sin embargo la alta frecuencia de la portadora tiene un
inconveniente: el rango efectivo total del protocolo 802.11a es menor que el del
protocolo 802.11b/g. En teora, las seales del protocolo 802.11a se absorben ms
fcilmente por las paredes y otros objetos slidos que encuentra en su camino
debido a que su longitud de onda es ms pequea y, como resultado de ello, no
puede penetrar tanto como las seales del protocolo 802.11b. En la prctica, el
protocolo 802.11b tiene normalmente una myor rango a velocidades bajas.

16.1.2.Protocolo 802.11b
El protocolo 802.11b tiene una tasa de transmisin mxima de 11 Mbps, y utiliza el
mismo mtodo de acceso que el estndar original. Los productos con el protocolo
802.11b aparecieron en el mercado a principios del ao 2000, ya que el protocolo
802.11b es una extensin directa de la tcnica de modulacin definida en el
estndar original. El aumento en el rendimiento del protocolo 802.11b le llev a una
rpida aceptacin.
Los dispositivos con el protocolo 802.11b sufren interferencias de otros dispositivos

http://www.tonet.jazztel.es

112

que operan en la banda de los 2,4 GHz. Los dispositivos que operan en la banda de
2,4 GHz son: hornos microondas, dispositivos Bluetooth, monitores de bebs, y
telfonos inalmbricos.

16.1.3.Protocolo 802.11g
En Junio de 2003, fue ratificado este protocolo 802.11g. Funciona en la banda de
2,4 GHz como el protocolo 802.11b, pero utiliza la misma modulacin OFDM que el
protocolo 802.11a. Opera a una velocidad mxima de 54 Mbps con cdigos de
correccin de errores includos o una tasa media de 22 Mbps compatible con el
hardware del protocolo 802.11b.
El protocolo 802.11g fue rpidamente adoptado por los consumidores a partir de
Enero de 2003, mucho antes de la ratificacin, debido al deseo de tasas de datos
ms altas. En el verano de 2003, la mayora de los productos doble banda del
protocolo 802.11a/b se convirtieron para poder trabajar de forma conjunta con los
productos del protocolo a y b. Al igual que el protocolo 802.11b, el protocolo
802.11g sufre interferencias de otros dispositivos que operan en la banda de los 2,4
GHz, por ejemplo, los teclados inalmbricos.

16.1.4.Protocolo 802.11n
El protocolo 802.11n es una enmienda que mejora los estndares 802.11 anteriores
y aade las antenas MIMO (multiple-input multiple-output). El protocolo 802.11n
funciona tanto en la banda de 2,4 GHz y en la banda de 5 GHz. El IEEE ha
aprobado la enmienda, que fue publicada en Octubre de 2009. Antes de la
ratificacin final, las empresas ya estaban migrando al protocolo 802.11n basado en
los productos con la certificacin de la Wi-Fi Alliance que cumplen con el borrador
del ao 2007 del protocolo 802.11n.

16.2.Canales de transmisin

El protocolo 802,11 divide cada una de las bandas que utiliza en canales, de
manera anloga a cmo se subdividen las bandas de radio y televisin de difusin.
Por ejemplo, la banda de 2,4000-2,4835 GHz se divide en 13 canales separados de
5 MHz, con el canal 1 centrado en los 2,412 GHz y el canal 13 en los 2,472 GHz. El
protocolo 802.11b se basa en las formas de onda DSSS que utilizan 22 MHz y que
no tienen bordes abruptos. En consecuencia slo tres canales no se solapan.
Incluso ahora, los dispositivos que se venden con los canales 1, 6 y 11 como
opciones prefijadas. En cuanto al protocolo 802.11g hay cuatro canales que no se

http://www.tonet.jazztel.es

113

solapan y son los canales 1, 5, 9 y 13. En la actualidad hay cuatro, porque las
seales del protocolo 802.11g utilizan 20 MHz con una modulacin OFDM.
La disponibilidad de los canales est regulado por cada pas, y est limitado en
parte por la forma en que cada pas tiene asignado su espectro radioelctrico. En
Japn se permite el uso de todos los 14 canales para el protocolo 802.11b,
mientras que otros pases como Espaa solo permiten inicialmente los canales 10 y
11 y Francia slo permite los canales 10, 11, 12 y 13. En la actualidad, ya permiten
los canales del 1 al 13. Norteamrica y algunos pases de Amrica Central y
Sudamrica slo permiten los canales del 1 al 11.
Adems de especificar la frecuencia central de cada canal, el protocolo 802,11
especifica tambin una mscara espectral que define la distribucin de potencia
permitida a travs de cada canal. La mscara requiere que la seal se atene por lo
menos 30 dB a 11 MHz de la frecuencia central, para que los canales tengan de
forma efectiva 22 MHz de ancho. Una consecuencia de esto es que las estaciones
slo se puede los canales cuarto o quinto sin solapamientos, normalmente los
canales 1, 6 y 11 en Amrica, y en teora los canales 1, 5, 9 y 13 en Europa,
aunque tambin es normal los canales 1, 6, y 11. Otra cuestin es que los canales
del 1 al 13 requieren efectivamente requieren la banda 2,401-2,483 GHz, por
ejemplo, en el Reino Unido desde 2,400 hasta 2,4835 Ghz, en los Estados Unidos
desde 2,402 hasta 2,4735 GHz, etc
Puesto que la mscara espectral slo define restricciones de potencia de salida de
hasta 11 MHz de la frecuencia central, y con un valor de -50 Db, a menudo se
supone que la energa del canal se extiende ms all de estos lmites. Es ms
correcto decir que, dada la separacin entre los canales 1, 6 y 11, la seal de
cualquier canal debe ser suficientemente atenuada para interferir mnimamente con
un transmisor en cualquier otro canal.

16.3.Arquitectura LAN 802.11


Los principales componentes de la arquitectura LAN no cableada 802.11 se
encuentran representados en la figura siguiente.

El bloque fundamental de esta arquitectura es la celda, conocida como BSS (Basic


Service Set). Una celda BSS consta de una o ms estaciones inalmbricas y una
estacin central base, conocida como AP (Access Point) en la terminologa del
protocolo 802.11

http://www.tonet.jazztel.es

114

Las estaciones inalmbricas, que pueden ser fijas o mviles, y la estacin central
base se comunican entre ellas mediante el protocolo IEEE 802.11. Mltiples APs se
pueden conectar juntos mediante redes cableadas, conformando lo que se llama un
Sistema de Distribucin (DS). Un Sistema de Distribucin (DS) es una sola red 802
a efecto de los protocolos de niveles superiores, ya que la parte inalmbrica emplea
el protocolo 802.11 y en la parte cableada el Ethernet o 802.3. A este tipo de
arquitectura se le denomina modo infraestructura
Las estaciones IEEE 802.11 tambin se pueden agrupar para formar una red ad
hoc como se puede ver en la figura siguiente. As una red ad hoc es una red sin
control central ni conexiones con el mundo exterior. En este caso la red adems de
no disponer de cable alguno, no emplea ningn Punto de Acceso (AP).

BSS

16.4.Protocolos de Acceso al Medio 802.11


Igual que en una red Ethernet cableada 802.3, las estaciones en una red
inalmbrica IEEE 802.11 deben coordinar sus accesos y el uso del medio de
transmisin compartido, que en este caso es la frecuencia radio. El protocolo IEEE
802.11 es un protocolo de tecnologa CSMA/CA (Carrier Sense Multiple Access )
con Prevencin de Colisin.
Un protocolo CSMA consiste en que una estacin antes de enviar una trama,
verifica si el medio est ocupado. En la especificacin del protocolo 802.11, el nivel
fsico monitoriza el nivel de energa de la frecuencia de radio con el fin de
determinar si hay otra estacin transmitiendo y adems suministra la informacin de
deteccin de portadora al protocolo del subnivel MAC correspondiente. Si el medio
est libre durante un tiempo igual o mayor que el valor del parmetro DIFS
(Distributed Inter frame Space), entonces una estacin est autorizada a transmitir.
Como en el caso de un protocolo de acceso aleatorio, la trama ser recibida
correctamente en la estacin de destino si no han habido interferencias durante la
transmisin desde la estacin origen.
Cuando una estacin receptora ha recibido correctamente y completamente una
trama de la cual era el destinatario, a continuacin espera un corto perodo de
tiempo, conocido como el parmetro SIFS (Short Inter Frame Spacing) y luego
enva una trama de reconocimiento explcito al transmisor. Este reconocimiento a
nivel de enlace de datos permite al transmisor saber si el receptor ha recibido
correctamente la trama de datos enviada al receptor. Este reconocimiento explcito
es necesario porque, a diferencia del protocolo Ethernet cableado, el transmisor

http://www.tonet.jazztel.es

115

inalmbrico no puede determinar por si mismo si la transmisin de la trama fu


recibida satisfactoriamente en destino. La transmisin de la trama por la estacin
transmisora y su reconocimiento subsiguiente por la estacin destino se representa
en la figura siguiente.

En esta figura se ilustra el caso cuando el transmisor escucha el medio para


verificar si est libre. Qu sucede si el medio est ocupado? En este caso, la
estacin realiza un proceso de backoff similar al del protocolo Ethernet. En el caso
de que la estacin detecta que el medio est ocupado, demorar su acceso hasta
que el medio est libre. Una vez detecta que el medio est libre durante un tiempo
igual o mayor que el valor del parmetro DIFS, la estacin espera un tiempo
adicional de backoff. Una vez ha transcurrido el tiempo de backoff, la estacin
transmite la trama. Como en el protocolo Ethernet, el temporizador aleatorio de
backoff sirve para evitar el inicio simultneo de transmisin de varias estaciones, es
decir, con el fin de evitar sucesivas colisiones despus de un tiempo de inactividad
DIFS. Como en el protocolo Ethernet, el tiempo de backoff es el doble cada vez que
la transmisin de una trama experimenta una colisin.
A diferencia del protocolo Ethernet 802.3, el protocolo 802.11 no implementa la
deteccin de colisiones. Hay dos razones para ello:

La posibilidad de detectar colisiones requiere la posibilidad de enviar y


recibir al mismo tiempo, cosa que no sucede en el protocolo 802.11. No
puede enviar su propia seal y recibir otra simultaneamente con el fin de
determinar si las transmisiones de otra estacin estn interfiriendo con la
propia transmisin.

El hecho de que, si una estacin tuviese deteccin de colisin y no la


detectara cuando enva, puede haber una colisin en el receptor y no
detectarla.

Esta situacin resulta que es una de las caractersticas del medio inalmbrico.
Supongamos que la estacin A est transmitiendo a la estacin B y que tambin al
mismo tiempo la estacin C est transmitiendo a la estacin B. En el caso de que
estemos frente al problema de la estacin escondida (hidden terminal), las
obstrucciones fsicas en el entorno pueden hacer que A y C no puedan escuchar las
transmisiones de la otr estacin, aunque las transmisiones de A y C con destino a B
se estn interfiriendo entre ellas.

http://www.tonet.jazztel.es

116

Una segunda situacin en el que no es posible detectar las colisiones en el receptor


es el fading o atenuacin de la seal a medida que se propaga a travs del medio
inalmbrico.
Dadas estas dificultades para detectar las colisiones en el receptor, los diseadores
del protocolo IEEE 802.11 desarrollaron un protocolo de acceso al medio para
evitar las colisiones (CSMA/CA), en vez de detectar y recuperarse de las colisiones
(CSMA/CD). Primero la trama del protocolo IEEE 802.11 contiene un campo de
duracin en que la estacin transmisora indica explicitamente la cantidad de tiempo
que su trama ser transmsitida en el medio. Este valor permite a las dems
estaciones determinar la cantidad mnima de tiempo, llamado NAV (Network
Allocation Vector), durante el cual retrasarn su acceso al medio.
El protocolo 802.11 tambin puede usar una trama corta de control RTS (Request
To Send) y una trama corta CTS (Clear To Send) para reservar el acceso al medio.
Cuando un transmisor quiere enviar una trama, puede enviar primero una trama
RTS al receptor, indicando la duracin del paquete de datos y el paquete de
reconocimiento ACK. Un receptor que recibe una trama RTS responde con una
trama CTS, dando un permiso explcito al transmisor para enviar. Entonces todas
las dems estaciones que oyen las tramas RTS y CTS, saben que hay una
transmisin pendiente de datos y as pueden evitar la interferencia con estas
transmisiones. Un transmisor de protocolo IEEE 802.11 puede operar ya sea
usando las tramas de control RTS/CTS, o simplemente enviando sus datos sin usar
antes la trama de control RTS.
El uso de las tramas RTS y CTS ayudan a evitar colisiones de dos maneras:

Debido a que la trama CTS transmitida por el receptor ser oida por todas
las estaciones dentro del radio de accin del receptor, la trama CTS ayuda a
evitar el problema de las estaciones escondidas y el problema de la
atenuacin o fading.

Debido a que las tramas RTS y CTS son cortas, una colisin de una trama
RTS o CTS durar un tiempo muy pequeo. Fijmonos que cuando las
tramas RTS y CTS se transmiten correctamente, es seguro que en la
transmsin de datos subsiguiente y de la trama ACK no hay colisiones.

http://www.tonet.jazztel.es

117

17. Modelo TCP/IP


En la actualidad la expansin de Internet ha hecho que el protocolo TCP/IP sea un
estndar de facto en las redes de ordenadores.
El modelo TCP/IP consta fundamentalmente de los protocolos siguientes:
IP
ICMP
TCP
UDP
ARP

RARP

Internet Protocol
Internet Control Message
Protocol

Protocolo de nivel 3
Protocolo de nivel 3,
responsable de la
generacin de mensajes
Transmission Control Protocol Protocolo de nivel 4
User Datagram Protocol
Protocolo de nivel 4
Address Resolution Protocol
Protocolo de nivel 3, dada
una direccin IP busca su
direccin MAC
Reverse Address Resolution Protocolo de nivel 3, que
Protocol
realiza la operacin inversa
del protocolo ARP

Como se ve en la tabla anterior, los protocolos IP, ICMP, ARP y RARP funcionan a
nivel de red segn el modelo de referencia OSI, mientras que los protocolos TCP y
UDP funcionan a nivel de transporte.

17.1.IP v4 - Internet Protocol


La especificacin del protocolo IPv4 se encuentra en
-

La RFC 791 Internet Protocol y

La RFC 950 Internet Standard Subnetting Procedure.

IP es un protocolo que funciona a nivel de red (3) segn el modelo de referencia


OSI, es decir, se interrelaciona con los protocolos que funcionan a nivel de enlace
(2) por debajo y a nivel de transporte (4) por arriba. Los protocolos de nivel de
enlace son cualesquiera que soporten el estndar IEEE 802 e incluso cualquier otro
protocolo de los que habitualmente se emplean en los sistemas de comunicaciones
y que ya se han explicado anteriormente. En cuanto a los protocolos de nivel de
transporte, el protocolo IP solo se entiende con el TCP y el UDP, que a su vez
enlazan con los protocolos de aplicaciones.
Las dos caractersticas bsicas del protocolo IPv4 son:
-

Es un protocolo no fiable, es decir, no realiza un control de mensajes perdidos ni


duplicados y

http://www.tonet.jazztel.es
-

118

No est orientado a conexin. Esto significa que los mensajes IP pueden llegar
desordenados e incluso pueden llegar duplicados si la red es mallada, porque el
camino que siguen para ir del dispositivo origen al de destino puede variar en
funcin del estado de la red. Una de las razones por las que este protocolo IP es
no orientado a conexin, es porque as se minimiza la dependencia de otras
redes que utilizan redes jerrquicas orientadas a conexin.

Cuando un dispositivo enva un mensaje IP, inserta en el mismo la direccin IP


origen y la direccin IP destino en su cabecera. A continuacin examina la direccin
IP destino y la compara con la tabla de enrutamiento local. En funcin de esto, hay
3 posibles soluciones :
-

pasar el mensaje a un nivel ms arriba del propio dispositivo

enviarla a la red a travs de su interface o

tirarlo, es decir, no enviarlo.

17.1.1.Cabecera IPv4
Los mensajes IPv4 constan de una cabecera, un campo de datos de longitud
variable y un tercer campo de control de error. Los campos de la cabecera son los
siguientes:
Versin

Longitud

Servicio

Identificacin
Supervivencia

Tamao
Flags

Protocolo

Fragmentacin
Control de error

Direccin origen
Direccin destino
Tipo

Longitud

Opcin

Opciones
Opciones

Relleno
Datos

donde
Versin del IP, en este caso la 4, 4 bits
Longitud, 4 bits. Corresponde al tamao de la cabecera del mensaje en mensajes
de 32 bits.
Servicio, 1 octeto. Es una indicacin de la calidad de servicio requerida, es decir,
si tiene prioridad o no, se puede retrasar o no, etc.
Tamao del mensaje, 4 octetos. Es la longitud total del mensajes, es decir, la
longitud de la cabecera ms los datos y se expresa en octetos.

http://www.tonet.jazztel.es

119

Identificacin, 2 octetos. Un nmero nico asignado por el emisor. Esta


identificacin permite el ensamblado de mensajes fragmentados si los hubiera,
ya que todos los fragmentos tienen la misma identificacin.
Flags, 3 bits. Dos bits DF y NF. El primero indica si el mensaje se puede o
fragmentar o no y el segundo indica si es el ltimo mensaje de la fragmentacin
o es uno intermedio.
Fragmentacin, 13 bits. Se utiliza con los mensajes fragmentados. Su valor indica
la posicin relativa de cada mensaje fragmentado.
Supervivencia, 1 octeto. Utilizado para indicar el tiempo mximo que se le permite
a un mensaje circular por la red. Es lo que tambin se llama tiempo de vida.
Cuando un mensaje es procesado por un enrutador, ste resta uno al valor
original.
Control de error, 4 octetos. Suma de pruebas complementada a uno de la
cabecera IP para detectar posibles errores.
Protocolo, 1 octeto. Indica el protocolo de nivel de red (3) del que procede o se
dirige. Algunos valores en decimal son:
1
4
6
8
17
29
36

ICNP
IP (IP encapsulado en IP)
TCP
EGP
UDP
ISO-TP4
XTP

Direccin origen/destino, 4 octetos. La direccin origen y destino se mantiene


siempre segn va progresando por la red. La direccin destino permite encaminar el
mensaje a travs de los diferentes enrutadores que interconectan las redes.

Opciones. Es un campo de longitud variable e implementa elementos de seguridad,


control etc.. Algunas de estas opciones son:
o Source routing. Si esta opcin est activa, en el campo opciones se indica el
camino que debe seguir el mensaje hasta llegar a su destino. Para ello se
anotan las diferentes direcciones IP en estos campos de opciones.
o Record route. En este caso el campo opciones se va rellenando con las
direcciones de los dispositivos que va atravesando el mensaje hasta llegar a
su destino.
o Time stamp. Esta opcin fuerza a los enrutadores a grabar la hora (contador
de 32 bits en unidades de milisegundos) en la que pasa el mensaje por este
dispositivo y esto se hace en el campo opciones. Tambin se rellena con la
direccin IP del dispositivo en cuestin.

http://www.tonet.jazztel.es

120

17.1.2. Fragmentacin y ensamblado


Las distintas redes interconectadas entre si no tienen por que utilizar el mismo
tamao de mensaje (MTU), as por ejemplo en Ethernet lo habitual son tamaos del
orden de 1500 octetos y en las redes Token Ring, de 4096 octetos. Por definicin el
tamao mximo de un mensaje del protocolo IP es de 64K octetos. Cuando la
longitud del mensaje del protocolo IP es mayor que el del protocolo de nivel de
enlace, es preciso realizar una fragmentacin del mensaje IPv4. Este proceso se
realiza en el propio dispositivo origen y cada fragmento se encamina a su destino
de forma independiente, siendo responsabilidad del dispositivo de destino su
ensamblado.
El proceso de fragmentacin en el dispositivo origen consiste en:

Comprobar el bit DF del campo IP para ver si est permitida su


fragmentacin. Si no lo est se descarga el mensaje, es decir, no se
transmite.

En funcin del tamao mximo permitido por la red fsica, se divide el campo
de datos en varios segmentos.

Con estos mensajes del campo de datos del mensaje original, se forman
nuevos mensajes, cuyo cabecera IP es idntica a la original excepto en:
* El bit de ms datos (MF) se pone a uno, excepto el
del ltimo mensaje.
* En el campo de fragmentacin, se indica la posicin
de cada fragmento.
* Se recalcula el campo de longitud.
* Se recalcula el control de error.

En el dispositivo destino se ensamblan todos los mensajes con la informacin


fragmentada. Para ello se utiliza el campo de identificacin y el de fragmentacin. El
primero para saber todos los mensajes que corresponden a la misma fragmentacin
y el segundo para saber el orden en que se deben ensamblar.
El sistema final utiliza un buffer de recepcin que liberar en caso de transcurrir un
tiempo determinado y no haber llegado todos los mensajes correspondientes.
Debido al propio funcionamiento del protocolo IP, se pueden producir situaciones de
prdida de mensajes, duplicado de los mismos, la llegada al destino fuera de
secuencia, o con errores. En todos estos casos es el protocolo de nivel superior, es
decir, un protocolo de nivel de transporte quien se encarga del tratamiento de la
prdida o duplicacin de la informacin.

17.1.3.Direccionamiento y clases IPv4

http://www.tonet.jazztel.es

121

El protocolo IPv4 utiliza un modelo de direccionamiento, de forma que a cada


interfaz de cada dispositivo se le asigna una direccin independientemente de su
direccin MAC, que es la que utilizan los protocolos de nivel de enlace. La direccin
IP destino es un dato que debe ser suministrado por las aplicaciones que corren en
el propio dispositivo al protocolo IP. La direccin IP origen es un parmetro del
propio controlador del protocolo IPv4.
Estas direcciones IP constan de 32 bits y para su representacin se emplea la
notacin decimal de puntos (X.X.X.X). sta consiste en 4 nmeros decimales
separados por un punto, por ejemplo
194.110.100.200
El mbito de cada valor es de 0 a 255, dado que corresponden a 1 octeto, o sea, 8
bits. Su representacin hexadecimal sera
C2.6E.64.C8
y la representacin binaria
11000010.01101110.01100100.11001000
El valor ms a la derecha slo puede oscilar entre 1 y 254 porque el 255 est
reservado a la direccin de broadcast y el 0 es indicativo de toda la subred.
En Internet, para acomodar la estructura de direccionamiento a las diferentes
necesidades de utilizacin, el mbito de direcciones IP se ha agrupado en clases
de acuerdo con el criterio siguiente:
Clase

Prefijo

Sufijo

Clase

A:

+ 7 bits para red y 24 para los dispositivos

Clase

B:

10

+ 14 bits para red y 16 para los dispositivos

Clase

C:

110

+ 21 bits para red y 8 para los dispositivos

Clase

D:

1110

+ 28bits para multicasting

Clase

E:

1111

+ 28 bits experimental

De esta forma la simple inspeccin de una direccin IP permite conocer a que clase
pertenece, as los rangos de direcciones IP correspondientes a cada clase son:
Clase

A:

de la 0.0.0.0

Clase

B:

de la 128.0.0.0 a la 191.255.255.255

Clase

C:

de la 192.0.0.0 a la 223.255.255.255

Clase

D:

de la 224.0.0.0 a la 238.255.255.255

Clase

E:

de la 240.0.0.0 a la 247.255.255.255

17.1.4.Mscaras

a la 127.255.255.255

http://www.tonet.jazztel.es

122

Con posterioridad a la definicin inicial del protocolo IP, se definen lo que se conoce
como mscaras. Estas mscaras constan de 4 octetos (32 bits), igual que una
direccin IP y debido a como se utilizan deben contener unos a la izquierda y ceros
a la derecha, es decir, no pueden haber mezclas de unos y ceros.
En Internet es habitual el empleo de las siguientes mscaras para cada clase:
Clase

Mscara

255.0.0.0

255.255.0.0

255.255.255.0

Si a una direccin IP aplicamos la mscara con el operador AND, en realidad


dividimos la direccin IP en 2 partes:
-

La parte izquierda que corresponde a la identificacin de la red fsica, y

La parte derecha que identifica al dispositivo dentro de cada red.

Con las mscaras introducimos el concepto de nmero de red dentro del campo de
direccin IP. Es caracterstico del protocolo IPv4, el hecho de que las mscaras no
viajan en los mensajes IP, es decir, se emplean de forma local en cada dispositivo.

17.1.5.Enrutamiento
El protocolo IP es un protocolo de enrutamiento en cuanto sus mensajes son
encaminados segn el contenido de unas tablas que contienen cada uno de los
dispositivos de la red. A estas tablas, se les denomina tablas de enrutamiento.
Estas tablas de enrutamiento se utilizan cuando un mensaje de protocolo IP tiene
que salir de un dispositivo.
Cmo llega el mensaje al protocolo IP? Hay 2 posibles caminos:
-

puede proceder de protocolos de nivel superior del propio dispositivo o

puede haber entrado por una interface de un enrutador, es decir, procedente de


un protocolo de nivel inferior, el cual lo debe encaminar para que siga su
camino.

As una vez que el protocolo IP ha confeccionado su mensaje, su controlador debe


decidir por cual de sus interfaces debe salir. La decisin de cual es la interface de
salida se calcula mediante el empleo de la tabla de enrutamiento del dispositivo.
Para ello vamos a emplear el ejemplo siguiente. Se trata de un ordenador con una
tarjeta de red con direccin IP 192.168.0.5, mscara 255.255.255.0 y puerta de
enlace 192.168.0.254

http://www.tonet.jazztel.es

123

Su tabla de enrutamiento es la siguiente:


Direccin de
red

Mscara

Puerta de
enlace

Interface

0.0.0.0

0.0.0.0

192.168.0.254

192.168.0.5

127.0.0.0

255.0.0.0

127.0.0.1

127.0.0.1

192.168.0.0

255.255.255.0

192.168.0.5

192.168.0.5

192.168.0.5

255.255.255.255

127.0.0.1

127.0.0.1

192.168.0.255

255.255.255.255

192.168.0.5

192.168.0.5

255.255.255.255

255.255.255.255

192.168.0.5

192.168.0.5

Cada lnea de la tabla es una solucin posible, as para cada direccin de red con
su mscara, le corresponde una puerta de enlace y una interface por la que debe
salir el mensaje IP.
Vamos a analizar cada una de sus lneas que corresponde a una posible solucin:
-

La direccin de red 0.0.0.0 con mscara 0.0.0.0 es la solucin por defecto, es


decir, si no cumple ninguna de las otras soluciones, el mensaje IP ser enviado
a la puerta de enlace 192.168.0.254 por la interface 192.168.0.5

La direccin de red 127.0.0.0 con mscara 255.0.0.0 siempre se reserva como


direccin IP interna o de localhost. Por esta razn siempre se encamina a la
propia direccin IP interna 127.0.0.1. En este caso el mensaje IP no sale por
ninguna interface y por tanto no es necesario que est conectado a una red.

La direccin de red 192.168.0.0 y mscara 255.255.255.0 corresponde a la red


donde est conectado el dispositivo. Por esta razn, si la direccin IP destino
corresponde a esta red, debe salir por su interface 192.168.0.5 y no debe ser
dirigida a la puerta de enlace. El objetivo de la puerta de enlace es enviar el
mensaje a otras redes distintas de la suya 192.168.0.0

La direccin de red 192.168.0.5 y mscara 255.255.255.255 corresponde a la


propia interface, por lo que el mensaje IP se enva a la direccin IP interna
127.0.0.1

La direccin de red 192.168.0.255 y mscara 255.255.255.255 corresponde a la


direccin de broadcast de esta red, por lo que los mensajes IP con direccin IP
destino 192.168.0.255 deben salir por la interface 192.168.0.5

La direccin de red 255.255.255.255 y mscara 255.255.255.255 es una


direccin de broadcast general y como tal los mensajes IP con esta direccin IP
destino deben salir por la interface 192.168.0.5

Una vez explicado el significado de la tabla de enrutamiento, vamos a explicar como


el protocolo IP encuentra la solucin de por cual interface debe enviar cada
mensaje IP. Esto lo realiza tomando la direccin IP de destino de cada mensaje y la

http://www.tonet.jazztel.es

124

compara con cada una de las direcciones de red de la tabla aplicndole la mscara
correspondiente con el operador lgico AND.
Supongamos una direccin IP de destino 192.168.0.100. En la tabla siguiente, la
columna resultado consiste en aplicar la mscara de cada lnea a la direccin IP
destino 192.168.0.100, es decir,
resultado = 192.168.0.100 AND mscara
Direccin de
red

Mscara

Resultado

Interface

0.0.0.0

0.0.0.0

0.0.0.0

192.168.0.5

127.0.0.0

255.0.0.0

192.0.0.0

127.0.0.1

192.168.0.0

255.255.255.0

192.168.0.0

192.168.0.5

192.168.0.5

255.255.255.255

192.168.0.100

127.0.0.1

192.168.0.255

255.255.255.255

192.168.0.100

192.168.0.5

255.255.255.255

255.255.255.255

192.168.0.100

192.168.0.5

Si comparamos la columna direccin de red y resultado, hay 2 posibles soluciones,


la primera y la tercera. Como la solucin solamente puede ser una, se elige la que
tiene la mscara con ms unos a la izquierda en representacin binaria, por tanto la
solucin es la tercera y el mensaje IP es enviado a la interface 192.168.0.5
En el caso de un enrutador, se hace exactamente lo mismo, lo que sucede es que
en estos casos hay ms de una interface posible. Tambin en el caso de los
enrutadores, el mensaje IP no se procesa si su tiempo de vida es cero.

17.2.IPv6 - Internet Protocol version 6


La versin 4 del protocolo IP tiene entre otros problemas que:
-

el nmero actual de direcciones IP est saturado y

no contempla la implantacin de ningn tipo de seguridad.

Por esta razn se ha definido la versin 6, con unas especificaciones bastantes


diferenciadas y que se encuentran detalladas en la RFC 2460. As el protocolo IPv6
tiene como caractersticas ms significativas las siguientes:
-

Un mayor espacio de direcciones

Globalmente un direccionamiento nico y jerrquico, basado en prefijos ms que


en clases de direcciones, permitiendo as unas tablas de enrutamiento ms
pequeas y eficientes.

Un mecanismo para la autoconfiguracin de las interfaces de las redes.

Soporte para encapsulacin propia y de otros productos.

http://www.tonet.jazztel.es

125

Clases de servicios que distinguen los tipos de datos.

Soporte de enrutamiento multicast mejorado, preferentemente frente al


broadcast.

Lleva incorporado autenticacin y encriptacin.

Mtodos de transicin desde el protocolo IPv4.

Mtodos de compatibilidad para coexistir y comunicar con el protocolo IPv4.

Estructura del mensaje


El formato del mensaje del protocolo IPv6 es muy diferente del de la versin 4 del
protocolo IP. En principio como todos los protocolos, consta de una cabecera y un
campo de datos.
Sin embargo en este protocolo, la cabecera consta de una parte bsica y fija en
cuanto a estructura, y de varias cabeceras adicionales y opcionales.
La estructura de la cabecera principal es
Versin

Clase de
trfico

Etiqueta de flujo

Longitud

Cabecera
siguiente

Lmite de
saltos

Direccin IP origen
Direccin IP destino
Datos
donde
-

Versin, 4 bits. Contiene el nmero 6 indicativo de esta versin.

Clase de trfico, 4 bits.


Clase de trfico de 0 a 7. Los mensajes con esta prioridad no
se envan si hay congestin.
Clase de trfico de 8 a 15. Se intentan enviar estos mensajes
aunque haya congestin.

Etiqueta de flujo, 24 bits. Se emplea para etiquetar los distintos tipos de flujo,
con el fin de darles un tratamiento diferencial.

Longitud, 16 bits. Es la longitud del mensaje en octetos exceptuando esta


cabecera.

Cabecera siguiente, 8 bits. Indica el tipo de cabecera que hay a continuacin de


la principal. Los posibles valores entre otros son
0

Opciones Hop-by-Hop

41

IPv6

http://www.tonet.jazztel.es
43

Enrutamiento IPv6

44

Fragmento Ipv6

45

Protocolo
Protocol)

IRP

46

Protocolo
Protocol)

RSVP

50

Protocolo
Payload)

ESP

51

Autenticacin Ipv6

58

Mensaje ICMP IPv6

59

Sin cabecera

60

Opciones de destino

(Interdomain
(Resource

126

Routing

Reservation

(Encapsulating

Security

Lmite de saltos, 8 bits. Equivale al tiempo de vida de la versin 4, pero ahora en


cantidad de saltos.

Direccin IP origen, 128 bits.

Direccin IP destino, 128 bits.

Datos, que incluyen ms cabeceras.

Se puede observar si se compara con la estructura del mensaje del protocolo IPv4
que:
-

La alineacin ha pasado de 32 bits a mltiplos de 64.

El campo de longitud de cabecera ha desaparecido y es reemplazado por otro


de longitud del mensaje (2 octetos) sin la cabecera. La longitud de la cabecera
principal es fija y consta de 40 octetos.

El tamao del campo de direcciones pasa de 4 a 16 octetos cada uno de ellos.

La informacin de la fragmentacin pasa a formar parte de las cabeceras


auxiliares.

El campo tiempo de vida se sustituye por un campo de limitacin de nmero de


saltos (1 octeto).

El campo tipo de servicio es reemplazado por 2 campos: uno de clase de trfico


y otro de etiqueta de flujo. El campo clase de trfico permite a los enrutadores
clasificar los mensajes y establecer prioridades.

El campo protocolo es reemplazado por un campo que especifica el tipo de


cabecera adicional o extendida (1 octeto).

http://www.tonet.jazztel.es

127

Cabecera opcionales
Su estructura bsica es la siguiente:
Cabecera siguiente

Longitud
Datos

donde
-

Cabecera siguiente, 8 bits. Identificacin del tipo de cabecera que est a


continuacin de sta.

Longitud, 8 bits. Longitud de esta cabecera opcional.

Datos. La estructura de este campo es variable en funcin del tipo de cabecera


de que se trate.

Direccionamiento
Sus especificaciones se encuentran detalladas en la RFC 2373. Cada direccin IP
consta de 128 bits (16 octetos) y su sintaxis es igual a la de la versin 4, es decir,
16 nmeros del 0 al 255 separados por un punto, o tambin en hexadecimal, como
8 valores separados por dos puntos(:).
Como los nmeros de telfono, es habitual el dividir la direccin en dos, un prefijo y
la direccin IP propiamente dicha.
La direccin IP interna equivalente a la 127.0.0.1 deIPv4 es ::1 y la de una direccin
IPv4 es ::direccin IPv4.
Hay un rango reservado a direcciones globales con estructura jerarquizada y
consiste en el prefijo 001.

17.3.ICMP - Internet Control Message Protocol


ICMP es un protocolo que se describe en la RFC 792 y est actualizada en la RFC
950. Es un protocolo que funciona en el nivel de red (3) segn el modelo de
referencia OSI y se basa en el protocolo de red IP.
Cuando un enrutador o un dispositivo destino debe informar al dispositivo origen de
errores en el procesado de los mensajes del protocolo IP, usa el protocolo ICMP
para informar del tipo de error al dispositivo origen. Esto no siempre es bueno,
porque a veces el dispositivo origen no puede hacer nada segn del error de que se
trate.

http://www.tonet.jazztel.es

128

El protocolo ICMP se caracteriza por :


El uso del protocolo IP como protocolo de ms bajo nivel, es decir, los mensajes
ICMP se encapsulan en mensajes IP. Sin embargo el protocolo ICMP es una
parte integral del protocolo IP y debe ser implementado en cada mensaje del
protocolo IP.
Informar de algunos errores, es decir, no hace el protocolo IP ms seguro. Los
mensajes pueden perderse, sin tener informacin va ICMP. La seguridad del
protocolo IP debe llevarse en protocolos de ms alto nivel.
Informar de errores de cualquier mensaje del protocolo IP, excepto de los propios
mensajes ICMP.
En el caso de fragmentacin, los mensajes del protocolo ICMP solo informan de
errores del fragmento cero.
Los mensajes del protocolo ICMP nunca se envan como respuesta de un
mensaje que tenga direccin IP origen que no sea de un dispositivo en concreto,
es decir, que no sea ni bucle, ni broadcast ni multicast.
Los mensajes del protocolo ICMP nunca se envan como respuesta a mensajes
de error de ICMP.
Estructura del mensaje
Los mensajes ICMP su estructura es la misma que la de un mensaje IP excepto en
que el tipo de servicio es cero y el campo de protocolo es un 1 indicativo del
protocolo ICMP. Esta es la razn por la que el protocolo ICMP se considera de que
es un protocolo de nivel de red.
El campo de datos contiene los campos siguientes:
-

Tipo, 8 bits. Contiene la identificacin del tipo de mensaje.

Cdigo, 8 bits. Contiene ms detalle del tipo de mensaje

Datos

Control de error, 16 bits

17.4.ARP - Address Resolution Protocol


El sistema de direccionamiento del protocolo IP plantea un problema desde el
punto de vista de direccionamiento del nivel fsico (1). Por ejemplo en una red local
basada en el protocolo Ethernet, dos dispositivos solo pueden comunicarse si se
conocen sus respectivas direcciones fsicas (MAC). As cuando un dispositivo
desea enviar un mensaje, a nivel del protocolo IP, debe rellenar el campo de la
direccin IP origen con su propia direccin IP que conoce y lo mismo sucede en el
caso del protocolo Ethernet, donde se ha de rellenar la direccin MAC origen y que

http://www.tonet.jazztel.es

129

tambin el mismo conoce. La cosa cambia cuando se trata de rellenar el campo de


la direccin IP destino. Obviamente el dispositivo origen la ha de conocer. Pero en
el caso de la direccin MAC destino, cmo la puede conocer? Para ello, se ha
creado el protocolo ARP que es el encargado de dada una direccin IP, buscar la
direccin MAC que le corresponde.
El protocolo ARP es un protocolo de nivel de red (3) segn el modelo de referencia
OSI y sus especificaciones estan desarrolladas en la RFC 826.
El protocolo ARP permite encontrar las direcciones fsicas basndose en las
direcciones IP de los dispositivos. Para ello se realiza primeramente una emisin
broadcast de un mensaje de control conteniendo entre otros datos la direccin IP
que se desea localizar. Todas los dispositivos de la red reciben este mensaje, pero
solamente aquel cuya direccin IP coincida, responde con otro mensaje de control.
Este mensaje contiene la direccin fsica (MAC) de dicho dispositivo. Al recibirse la
respuesta, el primer dispositivo "aprende" la direccin fsica (MAC) del segundo.
Esta informacin se mantiene en memoria cach para posteriores envos.
Las entradas en la memoria cach se asocian a un temporizador para permitir la
modificacin dinmica de la direccin fsica de los dispositivos porque
-

la direccin IP puede ser cambiada por necesidades de operacin y

la direccin fsica MAC tambin cambia si se cambia su tarjeta de red.

En UNIX, se puede usar el comando arp a para obtener el contenido de la tabla


ARP. La duracion de una entrada es del orden de unos 20 minutos.
- arp [-vn] [-H type] [-i if] -a [hostname]
- aucanada% arp a
teix.ac.upc.es (147.83.35.110) at 00:20:E1:10:4f:34 [ether] on eth0
arenys5.ac.upc.es (147.83.35.2) at 00:10:F8:B3:E4:00 [ether] on eth0
En Windows, tambien hay el comando arp y su sintaxis para la visualizacion de la
tabla ARP es
ARP -a
Las llamadas al protocolo ARP proceden de los protocolos de nivel de enlace, ya
que estos son los que reciben los paquetes del protocolo IP con sus direcciones IP,
y que para construir su trama requieren de las direcciones MAC equivalentes a
estas direcciones IP.
El algoritmo para el envo del protocolo ARP es el siguiente:
- Dada una direccin IP, primero consultar en la tabla ARP del propio dispositivo.
- Si se encuentra dicha direccin IP, utilizar la correspondiente direccin fsica.
- S no est, enviar una solicitud ARP de broadcasting. Temporizar y reenviar si no
se recibe respuesta.

http://www.tonet.jazztel.es

130

El proceso de recepcin de mensajes de bsqueda del protocolo ARP funciona de


la siguiente manera:

Al recibir una solicitud del protocolo ARP, si la direccin IP corresponde al


equipo:

Se almacenan las direcciones IP y las direcciones fsicas recibidas


en la tabla ARP del propio dispositivo.

Se rellena el campo correspondiente de la direccin fsica del


dispositivo.

Se enva un mensaje de respuesta con su direccin fsica.

S la direccin IP no es la del dispositivo, se almacena la direccin IP y la


direccin fsica correspondiente en su tabla ARP para posibles usos futuros.

Un posible problema que puede aparecer en las redes TCP/IP es el denominado


"tormenta de broadcast". Cuando un dispositivo enva un comando ARP buscando
una determinada direccin, puede provocar una cadena de mensajes ARP por parte
del resto de los dispositivos. Normalmente esto se produce cuando algunas de los
dispositivos conectados a la red no cumplen exactamente las mismas reglas en
situaciones muy particulares. En el caso de que todos los dispositivos utilicen el
subdireccionamiento pueden repetir el comando ARP intentando buscar el
dispositivo en su subred.
Estructura del paquete
El mensaje ARP corresponde al campo de datos del protocolo de nivel de enlace de
la red en cuestin. As si es una red 802.3/Ethernet con protocolo 802.2 SNAP, los
campos SAP origen y destino contienen el nmero 170, y el campo de tipo de
Ethernet 2054, indicativo de que se trata de un mensaje ARP. Por esta razn se
considera de que es un protocolo de nivel de red segn el modelo de referencia
OSI.
Los campos de la direccin fsica del destino van a 0 en el mensaje de bsqueda.
El dispositivo destino insertar aqu su direccin fsica en el mensaje ARP de
respuesta.

17.5.RARP - Reverse Address Resolution Protocol


Las especificaciones del protocolo RARP estn descritas en la RFC 903.
El protocolo RARP permite asignar direcciones IP a dispositivos sin unidades de
disco y as resolver este problema. Para ello se utilizan mensajes del mismo tipo
que los del protocolo ARP.
Todos los dispositivos con interface de red tiene una direccin fsica MAC pero en
nuestro caso, estos dispositivos no disponen de direccin IP, por lo que no pueden

http://www.tonet.jazztel.es

131

comunicarse con protocolos de niveles superiores al de enlace. Por esta razn este
protocolo RARP funciona a nivel de red (3) segn el modelo de referencia OSI.
El proceso comienza cuando un dispositivo enva una solicitud de direccin IP. En
la respuesta se indica adems de la direccin IP, la direccin fsica del dispositivo y
a continuacin se pone en estado de espera de una respuesta por parte de uno o
varios servidores RARP que le indiquen su direccin IP.
Tambin debemos tener en cuenta, de que si los servidores RARP estn fuera de
servicio, los dispositivos pendientes de ellos, no podrn conectarse a la red.
El mensaje RARP corresponde al campo de datos del protocolo de nivel de enlace
de la red en cuestin. As si es una red 802.3/Ethernet con protocolo 802.2 SNAP,
los campos SAP origen y destino contienen el nmero 170, y el campo de tipo de
Ethernet 32821, indicativo de que se trata de un mensaje RARP. Por esta razn se
considera de que es un protocolo de nivel de red segn el modelo de referencia
OSI.
El protocolo RARP tiene frame type = 0x8035 y op= 3 en los mensajes de
request y op=4 en los mensajes de reply.
A diferencia de los mensajes de reply del protocolo ARP son del tipo broadcast, los
mensajes de reply de RARP son unicast.

17.6.TCP - Transmission Control Protocol


El protocolo TCP es un protocolo que funciona a nivel de transporte segn el
modelo de referencia OSI y como tal por una parte enlaza con los protocolos de
nivel super o de aplicacin y por otro con el protocolo de nivel de red IP. Es un
protocolo que no se entiende con otros protocolos de nivel de red tales como IPX,
NetBIOS, etc.
El protocolo TCP se describe bsicamente en la RFC 793. Tambin se desarrolla,
amplia y complementa en las RFC siguientes:
-

RFC 1122, ampla y actualiza algunos conceptos.

RFC 813, describe la gestin de ventanas,

RFC 816, describe como aislar los fallos y como recuperarlos

RFC 879, desarrolla los tamaos mximos de los mensajes

RFC 896, comenta el tema de la congestin

Este protocolo TCP tiene como caractersticas principales:


-

Es un protocolo orientado a conexin

La realizacin de recuperacin de errores

El control de flujo y

http://www.tonet.jazztel.es
-

132

Empleo de conexin full duplex. El protocolo TCP funciona mediante una


comunicacin full duplex, es decir, suministra flujo de datos concurrentes en
ambas direcciones

El objetivo principal del protocolo TCP es suministrar un circuito lgico fiable y un


servicio de conexin entre pares de procesos de distintos dispositivos. No asume la
fiabilidad de los protocolos de nivel inferior como el IP, es decir, el TCP debe
garantizar por si mismo la fiabilidad de sus mensajes.
Desde el punto de vista de las aplicaciones, el protocolo TCP transfiere un flujo
continuo de octetos a travs de la red. La aplicacin no tiene que preocuparse con
la fragmentacin de los datos en bloques. El protocolo TCP hace si es necesario la
segmentacin, agrupando los octetos en segmentos TCP, que son pasados al
protocolo IP para su transmisin a destino.
A veces una aplicacin necesita estar segura de que todos los datos han pasado al
protocolo TCP con el fin de ser transmitidos a su destino. Por esta razn, existe una
funcin push, que cuando se activa, se envan todos los segmentos TCP
almacenados en el buffer del dispositivo origen al dispositivo destino. La funcin de
cierre normal de la conexin incluye la funcin push. De esta forma se garantiza de
que no se queda nada en el buffer pendiente de envo.
Puertos
El protocolo TCP es un protocolo de nivel de transporte y como tal debe
intercambiar los datos con los distintos protocolos a nivel de aplicacin. Este
intercambio ser a doble direccin, es decir, del protocolo de aplicacin al protocolo
TCP y viceversa.
Por esta razn el protocolo TCP debe poder distinguir los distintos protocolos de
aplicacin existentes. Esto se realiza mediante la definicin de puerto. Un puerto
TCP equivale a un buffer para cada protocolo de aplicacin del dispositivo en
cuestin. Para un mismo protocolo pueden definirse ms de un puerto.
As el protocolo POP, deja sus datos en el puerto 110, datos que procesa el
protocolo TCP. A la inversa, cuando llega un mensaje POP al protocolo TCP de
este dispositivo, el protocolo TCP los deja en el puerto 110.
En una transmisin de informacin entre dos dispositivos, el mensaje TCP contiene
un campo que identifica el nmero del puerto del dispositivo origen y otro con el
nmero del puerto del dispositivo destino, y que no tienen porque coincidir.

Puerto 1

Puerto 2

Protocolo TCP

Protocolo IP

Puerto 3

http://www.tonet.jazztel.es

133

El empleo de puertos equivale pues a un efecto de multiplexacin cuando se


transmiten mensajes al exterior y de desmultiplexacin cuando se pasan a nivel
superiores al de transporte. Esto permite que varios protocolos de aplicaciones
puedan transmitir y recibir simultneamente desde el protocolo TCP.
En Internet, los nmeros de los puertos TCP se dividen en 3 rangos y pueden
encontrarse en la direccin de Internet http://www.iana.org/assignments/portnumbers y son:
-

Los Bien Conocidos (de 0 a 1023), asignados por el IANA

Los Registrados (de 1024 a 49151) y

Los Dinmicos y Privados ( de 49152 a 65535).

Cabecera TCP
Los mensajes TCP constan de una cabecera, un campo de datos de longitud
variable y un tercer campo de control de error. Los campos de la cabecera son los
siguientes:
Puerto origen

Puerto destino

Nmero de secuencia
Nmero de reconocimiento
Tamao

Flags

Control de error

Ventana
Indicador de urgencia

Opciones
Datos

Puertos de origen / destino, 16 bits. Estos campos contiene el nmero de


los puertos de los dispositivos origen y destino de la conexin TCP. Estos
dos valores junto con las direcciones IP de origen y destino contenidas en la
cabecera del protocolo IP, constituyen la conexin entre procesos ULP, que
ser nica en la red.

Nmeros de secuencia, 32 bits. Contiene un valor que representa el nmero


de secuencia del primer octeto de datos del mensaje. Si el indicador SYN
est activo, el campo nmero de secuencia ser el inicial (ISN), por lo que el
primer mensaje de datos tendr el nmero ISN+1.

Nmero de reconocimiento, 32 bits. Si el indicador ACK est activo, este


campo contendr el valor del siguiente nmero de secuencia que el
transmisor del mensaje est esperando recibir.

Tamao, 4 bits. Indica el nmero de palabras de 32 bits de la cabecera


TCP.

http://www.tonet.jazztel.es

134

Indicador de control. Son condiciones que se emplean en el


establecimiento, mantenimiento y finalizacin de las conexiones y estn
representadas cada una de ellas por un bit.
URG:
ACK:
PSH:
RST:
SYN:
FIN:

Indicador de urgencia.
Este mensaje incluye un reconocimiento (ACK).
Activacin de la funcin push.
Reinicio de le conexin.
Sincronizacin de los nmeros de secuencia.
Indicativo de que no hay ms datos del transmisor.

Ventana, 16 bits. Se emplea en los mensajes ACK, y especifica el nmero


de octetos de datos, comenzando en el nmero contenido en el campo del
nmero de validacin, que el transmisor del segmento es capaz de aceptar.

Control de error, 16 bits. Es el complemento a uno de la suma de los


complementos a uno de la cabecera y el campo de datos.

Indicador de urgencia, 16 bits. Solamente es significativo cuando el bit URG


est activo. Contiene el valor del offset positivo desde el nmero de
secuencia del octeto que va a continuacin de los datos urgentes.

Opciones. Existen solamente tres opciones definidas:


o

Fin de opciones, con el valor de opcin 0

No operacin, con el valor de opcin 1.

Tamao mximo de segmento con el valor de opcin 2. Esta opcin


se utiliza en la solicitud de conexin inicial.

Fases del protocolo TCP


El protocolo TCP est orientado a conexin, por lo que antes de enviar los datos
propiamente dichos, debe establecer la conexin entre los dispositivos origen y
destino y cuando ha terminado la transmisin de datos, debe cerrar esta conexin.
As en la operacin del protocolo TCP podemos distinguir tres fases: el
establecimiento de la conexin, la fase de transmisin de datos y la finalizacin de
la conexin. Vamos a detallar cada una de estas fases.
a) Fase de establecimiento de la conexin o sincronizacin
Las aplicaciones indican su disponibilidad a aceptar conexiones solicitando al
protocolo TCP el establecimiento de un estado "pasive open. En esta solicitud se
debe indicar el nmero de puerto local. Establecido el estado de pasive open, el
puerto identificada se mantendr en estado de escucha "listen" hasta la recepcin
de su apertura activa.
Cuando una aplicacin quiere establecer una conexin con otra aplicacin de otro
ordenador que se encuentra en estado "listen", solicitar un "active open" a su
aplicacin local, indicando la direccin IP y el nmero de puerto del otro ordenador

http://www.tonet.jazztel.es

135

junto con su nmero de puerto local. Para ello el protocolo TCP enviar un mensaje
de sincronizacin "SYN" en el que incluir las direcciones IP y los puertos de los
ordenador origen y destino, el nmero de secuencia del siguiente octeto de datos
que espera recibir y otros datos opcionales.
El protocolo TCP del ordenador destino comparar los valores recibidos con sus
nmero de puertos en escucha salientes, y si algn valor coincide, enviar otro
mensaje de sincronizacin SYN con un mensaje de reconocimiento ACK, las
direcciones IP y el nmero de secuencia del primer octeto de datos que espera
recibir. Este mensaje se confirma a su vez mediante otro mensaje SYN-ACK, con lo
que queda la conexin establecida.
El ordenador destino, cuyo protocolo TCP est en estado de escucha, pasar al
estado de conexin establecida al recibir este tercer mensaje.
Si el mensaje SYN inicial no recibe el mensaje de reconocimiento ACK debido a
problemas en la red o que el ordenador destino no se encuentra en estado de
escucha para el puerto solicitado, cuando el correspondiente temporizador llega a
cero, se har un reintento, repitindose un cierto nmero de veces. Si al final no
puede establecerse la conexin, el protocolo TCP del ordenador origen notificar el
fallo de la conexin mediante un mensaje "open failure" a la aplicacin que haba
realizado la solicitud del propio ordenador origen.
b) Fase de envo de datos
Una vez establecida la conexin, el protocolo TCP soporta un flujo de datos fullduplex entre las aplicaciones del ordenador origen y el ordenador destino que se
comunican. El flujo de datos que genera el ordenador origen respeta la secuencia
de origen.
Cuando no sea posible la entrega de los datos dentro de los lmites impuestos por
los temporizadores del protocolo TCP, este notificar a su aplicacin local el fallo
del servicio y finalizar la conexin.
El flujo de datos se controla numerando cada octeto que se transmite a travs de la
conexin establecida. Este mecanismo tambin sirve para la ordenacin de los
datos, la deteccin de duplicaciones, la aceptacin y el mecanismo de ventana
deslizante en el ordenador destino. La informacin de control es tambin numerada
y se controla su secuencia.
Todos los datos que se transmiten deben ser validados por el prdenador destino.
Para controlar esto, se emplean temporizadores en el controlador del protocolo
TCP, que al vencimiento de los cuales sin aceptacin del ordenador destino, se
procede a la retransmisin de los datos. Los valores particulares de los
temporizadores, los contadores de retransmisin y la frecuencia de las
aceptaciones dependen de cada implementacin en particular.
El mecanismo de deteccin de error, basado en el control de error de 16 bits
incluido en la cabecera del protocolo TCP, permite recuperar los errores mdeiante
un sencillo mecanismo que consiste en descartar los mensajes errneos, siendo
retransmitidos por el ordenador destino al no recibir la correspondiente aceptacin.

http://www.tonet.jazztel.es

136

c) Fase de finalizacin de la conexin

Normalmente la finalizacin de las conexiones del protocolo TCP sigue un orden.


Esto requiere la sincronizacin de ambos extremos para garantizar que toda la
informacin correspondiente al canal full-duplex es transmitida y validada antes del
cierre final de la conexin.
La solicitud de finalizacin se realiza mediante un mensaje "close request", que
indica que la aplicacin local ha completado su transferencia de datos. Una vez
solicitado el cierre de la conexin, el ordenador origen no enviar ms informacin
por la conexin en proceso de cierre, y comprobar que todos los datos enviados
sean aceptados por el ordenador destino.
El protocolo TCP del ordenador origen enviar un mensaje FIN para notificar el
cierre al ordenador destino, que a su recepcin lo notificar a su aplicacin local
mediante un mensaje "closing indication". A continuacin, el ordenador destino
enviar un mensaje FIN-ACK con lo que el ordenador origen transmite un mensaje
"close request" a su aplicacin, momento en que sta enviar un mensaje FIN.
Temporizadores
En todos los protocolos es importante conocer que temporizadores se emplean y en
base a que parmetros se rigen cada uno de ellos. En el caso del protocolo TCP, es
importante conocer estos temporizadores, porque muchas veces su conocimiento y
su anlisis explican el porque algunos mensajes no llegan nunca a su destino, o se

http://www.tonet.jazztel.es

137

requiere una nueva retransmisin de los mismos, con lo que los tiempos de
respuesta aumentan.
El protocolo TCP utiliza 7 temporizadores en cada conexin, y son los siguientes:
1 ) Un temporizador arranca cuando se enva una seal de sincronizacin (SYN)
con el fin de establecer una nueva conexin. Si al cabo de 75 segundos no se ha
recibido respuesta, se aborta dicho intento de conexin.
2 ) Otro temporizador arranca cuando el protocolo TCP del ordenador origen
empieza a enviar datos, es decir, una vez ya establecida la conexin. Si no hay
reconocimiento por parte del ordenador destino, el protocolo TCP del ordenador
origen retransmite los datos. El valor de este temporizador se calcula
dinmicamente y vara en funcin de las retransmisiones. Su valor oscila entre 1 y
64 segundos.
3 ) Los mensajes de reconocimiento (ACK) tardan 200 ms. en enviarse a partir del
instante que el ordenador sabe que las tiene que enviar, es decir, se aade un
retardo. Si hay ms datos a enviar, se envan con el mensaje de datos.
4 ) Cuando la ventana llega a cero, arranca otro temporizador mientras no se
envan nuevos datos. Si el protocolo TCP del ordenador origen continua sin poder
enviar datos porque el ordenador destino no contesta a una ventana de valor cero, y
el temporizador tambin llega a cero, el ordenador origen enva 1 octeto de datos
con el fin de verificar que la ventana sigue abierta.
5 ) Hay un temporizador llamado keepalive, que obliga al otro extremo a responder.
De esta forma un ordenador conoce si el ordenador en el otro extremo de la
conexin est en lnea, es decir, activo.
6) Temporizador FIN_WAlT_2. Cuando una conexin pasa del estado FIN_WAlT_1
al FIN_WAlT_2 la conexin no puede enviar ms datos, establecindose este
temporizador en 10 minutos. Pasado este tiempo, si no ha habido el cambio de
estado correspondiente, la conexin se pierde. El objetivo de este temporizador es
que no quede en permanente estado FIN_WAlT_2
7) Tambin entra en juego otro temporizador cuando se entra en estado
TIME_WAlT. Transcurrido este tiempo sin un cambio de estado, la conexin se
cierra.
Para entender como funcionan estos 3 ltimos temporizadores, debemos conocer
como funciona el cierre de una conexin que en principio siempre es solicitado por
el ordenador origen. Para ello el ordenador origen enva un mensaje FIN al
ordenador destino. En este instante el ordenador origen entra en estado
FIN_WAIT_1, en espera de recibir el mensaje de reconocimiento ACK del
ordenador destino, quedando este en estado CLOSE-WAIT. Cuando el ordenador
origen lo recibe pasa a estado FIN_WAIT_2.
Cuando se quiere cerrar la sesin, el ordenador destino tambin enva al ordenador
origen un mensaje de FIN, quedando en estado LAST-ACK. Cuando el ordenador
origen lo recibe, pasa a estado TIME-WAIT, a la vez que enva un mensaje de
reconocimiento ACK al ordenador destino.

http://www.tonet.jazztel.es

138

Reconocimientos y retransmisiones
El protocolo TCP asigna un nmero de secuencia a cada mensaje que transmite,
consistente en la posicin del primer octeto que enva respecto a todos los datos a
enviar. Por ejemplo, supongamos que tienen que transmitirse 96234 octetos. Si el
nmero de secuencia es 11200, significa que el primer octeto de datos de este
mensaje corresponde al 11200 de todos los datos a transmitir.
Por otro lado, el ordenador destino enva reconocimientos peridicos de los
mensajes que va recibiendo. Si el mensaje de reconocimiento ACK no es recibido
en un tiempo preestablecido, el ordenador origen los retransmite pero solo a partir
del nmero de secuencia del mensaje que no ha recibido reconocimiento.
Tambin el protocolo TCP del ordenador destino usa los nmeros de secuencia
para ensamblar los segmentos cuando llegan sin orden y a su vez eliminar los
duplicados si los hubiere.
Control de flujo. Ventanas.
Se entiende por control de flujo a la sincronizacin que se establece entre dos
dispositivos que se transmiten datos. En el caso del protocolo TCP, cuando el
ordenador destino enva un mensaje de reconocimiento ACK al ordenador origen,
tambin le notifica del nmero de octetos que puede recibir despus del ltimo
mensaje TCP recibido, sin provocar saturacin ni overflow en sus buffers internos.
Esto es lo que se llama ventana o windowing. De esta forma el ordenador origen
aumenta o disminuye el flujo de transmisin de datos, con el fin de optimizar el
tiempo de respuesta.
A mayor tamao del mensaje, menor segmentacin y por tanto el tiempo de
transmisin es menor. Sin embargo, un mayor tamao de mensaje comporta una
mayor probabilidad de errores durante la transmisin. De aqu que se negocie este
tamao entre el ordenador origen y el ordenador destino durante la transmisin.
Ejemplo del trfico TCP

http://www.tonet.jazztel.es

139

17.7.UDP - User Datagram Protocol


UDP (User Datagram Protocol) es un protocolo descrito en la RFC 768. Es un
protocolo que funciona en el nivel transporte (4) del modelo de referencia OSI. Sus
relaciones con los protocolos a nivel de aplicacin es escasa, es decir, hay pocos
protocolos de nivel 7 que lo emplean como protocolo de transporte. En cuanto a los
protocolos de nivel inferior, es decir de red, slo se entiende con el protocolo IP.
UDP es un protocolo alternativo al protocolo TCP, sin embargo a diferencia de ste
no es ni fiable, ni hace control de flujo ni control de errores, por lo que solo se
recomienda en redes con sistemas de transmisiones fiables.
UDP es un protocolo no orientado a conexin, es decir, no hay un establecimiento
previo de la conexin
Este protocolo UDP aporta un procedimiento para que los programas de aplicacin
puedan enviar mensajes a otros programas con un mnimo de mecanismo de
protocolo. El protocolo UDP se orienta a transacciones, y tanto la entrega como la
proteccin ante duplicados no se garantizan.
El protocolo UDP puede ser considerado como poco pesado, por lo que no genera
sobrecargas, sin embargo requiere que la aplicacin se haga cargo de la
recuperacin de errores.
Las aplicaciones que envan mensajes UDP a otro ordenador necesitan identificar
la aplicacin de este ordenador destino, ya que los mensajes se dirigen
normalmente a ciertos procesos y no al sistema en general.
Los mensajes UDP constan de una cabecera, un campo de datos de longitud
variable y un tercer campo de control de error. Los campos de la cabecera son los
siguientes:
Puerto origen

Puerto destino

Longitud

Control de error
Datos

donde
Puerto Origen, 16 bits. Indica el puerto del dispositivo origen. Es opcional y si no
se utiliza, se inserta un valor cero.
Puerto Destino, 16 bits. Especifica el puerto del dispositivo destino.
Longitud, 16 bits. Es el tamao, en octetos, del mensaje incluida la cabecera.

http://www.tonet.jazztel.es

140

Control de error, 16 bits. Es un conjunto de bits de comprobacin.


Con el fin de calcular de una manera ms fiable el campo control de error, se hace
a partir de la confeccin de una pseudo-cabecera UDP que no se transmite. Esta
pseudo-cabecera contiene la direccin IP del ordenador origen, la direccin IP del
ordenador destino, el cdigo del protocolo UDP en el protocolo IP (17) y la longitud
del mensaje UDP. La razn de la inclusin de las direcciones IP har que sea ms
fiable en cuanto se garantiza mejor el reconocimiento por parte del dispositivo
destino.
En cuanto a los puertos que utiliza, su funcionamiento es exactamente igual que el
protocolo TCP, sin embargo tienen otros nmeros. En Internet, el nmero de estos
puertos tambin esta reglamentado y es habitual que tengan el mismo nmero que
el puerto TCP.
Los principales protocolos a nivel de aplicacin que utilizan este protocolo UDP a
nivel de transporte son:
-

el DNS (Domain Name Server)

el TFTP (Trivial File Transfer Protocol)

el SNMP (Simple Network Management Protocol) y

el programa Ping

http://www.tonet.jazztel.es

141

18. Redes Cliente/Servidor


18.1.Introduccin
En una red de ordenadores que sigue el modelo cliente/servidor, los ordenadores
de la red se clasifican en dos tipos: servidores y clientes. La informacin que
manejan los clientes, como debe ser compartida por varios de ellos, se almacena
en los servidores. De esta forma en los ordenadores de los clientes, la informacin
almacenada se considera que no es necesaria para el funcionamiento de la
empresa en cuestin. De esta forma, solo debe asegurarse la informacin
contenida en los servidores, ya sea mediante copias de seguridad o de centros de
respaldo.
Caso de un slo servidor
En este supuesto, en el servidor debe haber una base de datos que contenga de
cada cliente que pueda acceder a su informacin, el nombre y la contrasea que
autoriza su acceso.
Por otro lado, debe haber una base de datos en el servidor, que contenga para
cada cliente o grupos de ellos los nombres y los directorios a los que pueden
acceder del servidor. Adems se ha de tener en cuenta que los ficheros tienen
distintas caractersticas mediante las cuales el acceso de cada cliente o grupos de
ellos puede ser distinto. Hay tres tipos muy claros que son:

sin acceso

acceso de slo lectura

acceso total, que permite la modificacin de su contenido.

As debe haber otra base de datos donde cada fichero o directorio, diga que para
cada cliente o grupo, que tipos de acceso tiene.
Estos permisos de los ficheros depende del sistema de ficheros est implementado
en el servidor. Estos sistemas de ficheros tambin dependern del sistema
operativo del servidor.
Caso de ms de un servidor
En este caso, la cuestin se complica en cuanto uno de los servidores debe ser el
principal y por lo tanto ha de tener las funcionalidades explicadas anteriormente.
Los servidores secundarios deben coordinarse con el principal, ya que de lo
contrario, el cliente debera darse de alta en cada uno de los servidores con la
consiguiente complicacin que ello conllevara.

http://www.tonet.jazztel.es

142

18.2.Acceso del cliente a la informacin


De forma general, cuando un cliente necesita una informacin almacenada en un
servidor, la solicitar y el servidor la servir en funcin del reconocimiento del
cliente, mediante su nombre y su contrasea, y la verificacin de los permisos que
tiene concedidos a este cliente para este fichero.
a) Caso de un fichero ofimtico
En este caso, si el cliente slo tiene acceso de lectura, el servidor lo enviar al
cliente pero no le permitir su devolucin, ya sea con o sin cambios.
Si el permiso del cliente le autoriza a modificar el contenido del fichero, cuando el
cliente haya realizado todas las modificaciones, devolver el fichero al servidor. En
este caso, el servidor debe controlar la posibilidad de que ms de un cliente pueda
realizar modificaciones. Por esta razn en estos caso, la solicitud de un fichero por
parte de un cliente, ha de bloquear las modificaciones por parte de otros clientes.
Este bloqueo no debe ser a efectos de slo lectura.
b) Caso de una informacin contenida en una base de datos
En este caso, el cliente solo solicita una parte de la informacin contenida en la
base de datos, con una mayor o menor elaboracin. Cuidado tambin en las
modificaciones del cliente de la informacin contenida en la base de datos. Las
principales bases de datos que soportan el lenguaje SQL, las modificaciones se
realizan en base a la tecnologa de las colas de espera.
c) Caso de una informacin solicitada a un servidor web
En principio los ficheros de un servidor web son de slo lectura, y no se requiere la
identificacin del cliente solicitante. Sin embargo estos ficheros que enva un
servidor web ante una solicitud de un cliente son de dos tipos:

ficheros con informacin fija y

ficheros que se generan de acuerdo con la peticin realizada por el cliente. En


este caso, quiere decir que en el servidor web hay una base de datos, de la cual se
extraer la informacin solicitada por el cliente, se elaborar, y se enviar un fichero
de slo lectura con esta informacin elaborada.

18.3.Gestin de las identidades y de los permisos de acceso


Durante estos ltimos aos, la solucin de la gestin de las identidades y de los
permisos de acceso (en ingls, Identities and Access Management - I&AM) se ha
desarrollado a travs de una infraestructura centralizada integrada. Este concepto
combina los procesos de negocio, sus polticas y sus tecnologas que permiten a las
empresas:

http://www.tonet.jazztel.es

proporcionar un acceso seguro a cualquier recurso,

un control eficiente de este acceso,

responder rpidamente a las relaciones cambiantes,

proteger la informacin confidencial de los usuarios no autorizados.

143

As las tres cuestiones importantes que concurren hoy en da dentro de las


organizaciones de los departamentos de la Tecnologa de la Informacin en cuanto
a este tema son:

La gran base instalada de ordenadores, estaciones de trabajo y servidores,


basados en Windows ha llevado a la adopcin del Active Directory y el
amplio despliegue de aplicaciones basadas en Active Directory como
Microsoft Exchange.

Los departamentos de la Tecnologa de la Informacin gestionan de forma


creciente entornos heterogneos basados en un organizacin centralizada
para la seguridad, el cumplimiento y la reduccin de costes. La actividad de
fusiones y adquisiciones tambin sigue presentando desafos impredecibles
de integracin en plazos muy ajustados. Al mismo tiempo, las herramientas
de gestin de las identidades y de los permisos de acceso y las prcticas no
han seguido el ritmo de la creciente diversidad de plataformas, en particular a
travs de los muchos nuevos vendedores de Linux y las distribuciones.

Las empresas se enfrentan a una proliferacin de almacenes de las


identidades, las cuentas de usuario y las contraseas. Esto ha llevado a
mayores costos administrativos, mayores riesgos de seguridad, problemas
con cumplir con los requisitos de cumplimiento normativo y una disminucin
en la satisfaccin del usuario final y la productividad.

18.3.1.Objetivos
Durante los ltimos aos, las organizaciones han desarrollado sus negocios a
travs de Internet, lo que aumenta las necesidades del acceso a su red. Esto crea
el reto de mantener dos restricciones opuestas: ser ms flexible y mantener un
entorno seguro.
a)

Ampliar el acceso a los sistemas de informacin. Para hacer negocios, las


empresas tienen que abrir su red, es decir, hacer ms accesible y no slo a
los clientes, sino tambin a sus socios. Cada vez ms usuarios y
aplicaciones traen una preocupacin crtica a estas empresas, que es
garantizar y mantener la seguridad de los activos y la proteccin de la
privacidad, mientras que se identifican las partes autorizadas. Para llevar a
cabo estas operaciones, las empresas necesitan herramientas eficientes de
gestin y polticas de seguridad. La ausencia de un mtodo centralizado para
la gestin de las identidades y los permisos de acceso es una fuente de
riesgos operacionales.

b)

Crear relaciones con las diferentes identidades. Las organizaciones pueden


tener que gestionar las crecientes relaciones con los diferentes tipos de

http://www.tonet.jazztel.es

144

comunidades: empleados, clientes y socios de negocios. Todos estos tipos


de poblaciones tienen necesidades diferentes. Para los empleados, el
enfoque se hace sobre la productividad, lo que significa un rpido acceso a
los recursos adecuados. Para los clientes, un punto crtico es la seguridad de
acceso web, incluyendo la facilidad de uso y privacidad y la confidencialidad
de la transaccin. Por ltimo, para los socios del negocio, la prioridad es la
definicin de modelos de confianza y los acuerdos bilaterales para permitir el
acceso a la informacin confidencial entre cada organizacin. Sin una
propuesta de gestin integrada de las identidades y de los permisos de
acceso que implica los sistemas de la Tecnologa de la Informacin y los
servicios Web, las empresas no sern capaces de gestionar correctamente
la seguridad de estas poblaciones diferentes.
c)

Gestionar mltiples identidades. A medida que crece el nmero de


aplicaciones de negocio, los usuarios y los administradores de sistemas se
enfrentan a un gran nmero de contraseas para hacer su trabajo. Adems
de consumir mucho tiempo para que un usuario inicie la sesin en los
diferentes sistemas operativos, los servicios de directorio o las aplicaciones,
el elevado nmero de identidades, nombres de usuario y contraseas,
aumentan los costos del soporte a los usuarios en el tratamiento de las
solicitudes relacionadas con la identidad. Otro problema con la proliferacin
de identidades es poner en marcha una poltica de contraseas fuertes para
evitar la fcil adivinacin de las contraseas o prevenir a los usuarios de
escribirlas en un papel. En esta situacin, las organizaciones deben hacer
hincapi en una metodologa de inicio de sesin eficiente.

d)

Gestionar el ciclo de vida de los usuarios. El rpido crecimiento de la


poblacin de usuarios hace que la tarea de gestionar los usuarios sea ms
complicado. Dentro de los entornos ms amplios, las empresas tienen que
gestionar de forma eficaz el ciclo de vida de cada usuario individual, as
como mantener el control de la seguridad, a pesar de los frecuentes cambios
de sus puestos de trabajo. La creacin de nuevas cuentas con privilegios
adecuados a los recursos adecuados, y la modificacin de los privilegios
asociados a un usuario cuando cambia su puesto de trabajo o desactivar
cuentas obsoletas para los empleados/contratistas/socios/clientes, cuando
estas cuentas ya no son necesarias, tienen que realizarse de manera
eficiente y en una forma segura. Si no es as, esto puede generar un nmero
inmanejable de permisos, prdida de la productividad y podra llevar a
problemas graves de seguridad.

18.3.2.Ampliacin del Active Directory de Microsoft a entornos ajenos al mismo


En un tpico entorno de las Tecnologa de la Informacin, la heterogeneidad es la
norma, no slo en lo relacionado con los sistemas operativos de servidor dentro de
una organizacin, sino tambin en lo que respecta a las aplicaciones de software y
a las bases de datos que se ejecutan en los servidores. La realidad es que los
entornos mixtos de Windows, UNIX, Linux y Mac son un hecho en casi todos los
departamentos de la Tecnologa de la Informacin. Y esto seguir as, ya que tanto

http://www.tonet.jazztel.es

145

Linux como Windows seguirn creciendo en los centros de datos y se desplegarn


aplicaciones basadas en Java y en web.
No es de extraar que la interoperabilidad entre estas plataformas sea una
preocupacin muy importante para los administradores de los departamentos de las
Tecnologas de la Informacin. Las organizaciones desean servidores heterogneos
y aplicaciones "plug and play" por lo que no se tiene que gastar tiempo y
presupuesto actuando como un integrador de sistemas o teniendo que administrar
manualmente un nmero cada vez mayor de sistemas y aplicaciones de forma
individual. Adems las organizaciones quieren aprovechar las inversiones
existentes en sus presupuestos que les obliga a hacer ms con menos.
Esta necesidad de la interoperabilidad en plataformas mixtas de aplicaciones de
Windows, UNIX, Linux, Mac, Web, bases de datos y aplicaciones empresariales es
probablemente ms importante en lo que respecta a la gestin de las identidades y
de los permisos de acceso. La gestin de las identidades es un conjunto de
procesos y tecnologas que intervienen en el almacenamiento de la informacin de
las identidades de usuario y la concesin de derechos sobre la base de las reglas
de autenticacin y de autorizacin. La administracin de los permisos de acceso
permite a las organizaciones de manera determinista otorgar a los usuarios un
acceso adecuado a los recursos corporativos, independientemente de la plataforma
que se est utilizando.

18.3.3.La fragmentacin de la gestin de las identidades y de los permisos de


acceso dentro de un entorno distribudo
En un entorno Windows, Microsoft ofrece una solucin integral de gestin de las
identidades a travs del Active Directory. Muchos departamentos de las
Tecnologas de la Informacin han invertido mucho dinero en la implementacin del
Active Directory como reemplazo de la estructura de dominio de Windows NT 4.0 o
como parte de las implementaciones de Windows XP y Microsoft Exchange 2003.
De hecho, de acuerdo con una serie de analistas de la industria, la migracin a
Windows Server y el despliegue del Active Directory estan entre los puntos ms
presupuestados para todos los departamentos de las Tecnologas de la Informacin
en los ltimos aos. El despliegue actual del Windows Server 2003 y tambin del
Windows 2008 se prev que sea uno de los principales puntos presupuestados.
La inversin en Active Directory es tan importante que el Gartner Group predice que
"a finales de 2010, al menos el 90 por ciento de las empresas grandes y medianas
habrn implementado el Active Directory en su infraestructura interna." Active
Directory se ha convertido en el directorio por defecto para muchos usos dentro de
la red corporativa. Por ejemplo en muchas organizaciones todos los usuarios
corporativos tienen cuentas de Active Directory para permitir el correo electrnico
corporativo y controlar el acceso a los recursos de red, como impresoras y ficheros
compartidos.
En cuanto al entorno UNIX/Linux, ninguna solucin de gestin de las identidades
goza de algo parecido al Active Directory en el entorno Windows. As los
departamentos de las Tecnologas de la Informacin deben hacer frente a una gran

http://www.tonet.jazztel.es

146

cantidad de almacenes de identidades desplegados por las plataformas en


UNIX/Linux, incluyendo:
1.

El uso significativo de la gestin local de los ficheros de texto /etc/passwd


en los sistemas individuales.

2.

Un pesado uso del obsoleto Network Information Service (NIS) de Sun y


otras soluciones anticuadas como el directorio de Netscape.

3.
4.

El uso de los directorios basados en LDAP, como OpenLDAP.


Mientras que las soluciones de gestin de las identidades existen para las
redes Apple Mac, representan otro sistema de identidades para que la
gestione el personal de los departamentos de las Tecnologas de la
Informacin. Muchas de las caractersticas clave de integracin de
plataforma cruzada que necesitan los administradores carecen de las
soluciones que vienen de Microsoft y Apple.

Las funciones de control de acceso estn integrados en el Active Directory y son


muy utilizadas para administrar el acceso a los recursos de un entorno Windows.
Sin embargo, existen pocas soluciones para ampliar el control de acceso a los
entornos que no son de Windows. Los administradores de los departamentos de las
Tecnologas de la Informacin se enfrentan a menudo con la implementacin de
soluciones propietarias que son costosas y difciles de manejar.
A medida que se lanzan nuevas aplicaciones Java y web en las distintas
plataformas, tales como Apache, JBoss, Tomcat, IBM WebSphere y BEA
WebLogic, los desarrolladores estn creando an ms almacenes de identidades
mediante el uso de ficheros de texto o de tablas en bases de datos. Las
plataformas de bases de datos como DB2 de IBM e Informix, junto con las
aplicaciones empresariales como SAP, aaden otra serie de almacenes de
identidades.
Por lo tanto, la cuestin es que en la mayora de las organizaciones, la gestin de
las identidades y de los permidsos de acceso para los sistemas, las aplicaciones y
las bases de datos de un entorno UNIX, Linux y Mac, est bastante fragmentado en
comparacin con un entorno Windows. La gestin de la identidad y el acceso en
entornos heterogeneos debe tener una solucin.
Una pregunta obvia es: Por qu no han sido capaces las organizaciones de
estandarizar una solucin de gestin de las identidades y los permisos de acceso?
La respuesta descansa en varios obstculos:

La falta de interoperabilidad. Muchos almacenes de las identidades y los


servicios de directorio simplemente no operan unos con otros. El control de
acceso multiplataforma es difcil de implementar, especialmente si los
distintos sistemas de autenticacin y de autorizacin se utilizan en cada
plataforma. Los sistemas de polticas que estn vinculadas a los almacenes
de las identidades tienden a ajustarse a los sistemas operativos individuales
en lugar de la poltica en toda la empresa.

http://www.tonet.jazztel.es

147

Falta de soporte de la plataforma. Muchas de las soluciones lderes, como


Microsoft Active Directory, slo funcionan en un subconjunto de plataformas
que ha implementado una organizacin. Y en el caso de la plataforma
Windows, una organizacin debe implementar el Active Directory. Como
denota Gartner Group, "... no hay ms remedio ... si se implementan los
servidores Windows 2000 o Windows 2003, se va a implementar Active
Directory." Sin embargo, histricamente el Active Directory slo ha sido
utilizado para las redes de Windows.

Falta de coordinacin. En algunos casos, los grupos que estn aislados uno
de otro en una organizacin instalan soluciones difrentes de servidores y de
aplicaciones. Esto puede hacer incompatible el despliegue de mltiples
soluciones puntuales.

Falta de transparencia. Los desarrolladores internos de las nuevas


aplicaciones a menudo no tienen los medios para interoperar con los
almacenes de identidades existentes. Cuando existen las API, los
desarrolladores tienen que realizar un gran esfuerzo para desarrollar las
complejas capacidades de integracin en que se basan los metadirectorios o
la sincronizacin. Esto deja a varios almacenes de identidades intactos, lo
que requiere un continuo drenaje de recursos de mantenimiento al tiempo
que aade otro nivel de complejidad.

Falta de capacidades delegadas de administracin. La administracin de los


departamentos de las Tecnologas de la Informacin puede necesitar aislar
la gestin de determinados almacenes de identidades y asignar derechos
privilegiados a determinados administradores para un subconjunto de toda la
organizacin. Si se emplea una gestin centralizada de las identidades y de
los permisos de acceso, el sistema tendra que ser lo suficientemente flexible
para dar cabida a la administracin delegada de los administradores de la
gestin de las identidades y los permisos de acceso.

Est claro que es difcil moverse a una nica solucin de gestin de las identidades
y los permisos de acceso. Sin embargo, una reduccin significativa de los
almacenes de las identidades en la red corporativa puede mejorar
significativamente la productividad del usuario final, reducir los costes operativos,
mejorar la seguridad y que sea mucho ms fcil cumplir con los requisitos
regulatorios.
Frente a los aspectos discutidos anteriormente, las organizaciones de los
departamentos de las Tecnologas de la Informacin tienen por lo menos tres
opciones para resolver esta crisis de gestin de las identidades y de los permisos
de acceso.
1)

No hacer nada y vivir con un ambiente balcanizado. La desventaja de esta


estrategia son los costos y riesgos potenciales documentados anteriormente.
Sin embargo, muchas organizaciones se sienten forzados a esta situacin
debido a la falta de una solucin que se ajuste a su presupuesto y no
requiere cambios intrusivos en los sistemas existentes o en la existentes
prcticas empresariales.

http://www.tonet.jazztel.es
2)

3)

148

Tratar de implementar una solucin de sincronizacin costosa y compleja.


Muchas soluciones de gestin existentes siguen este enfoque. Dejan a los
sistemas existentes donde estn e instalan soluciones que mapean y
sincronizan la informacin del usuario y los derechos de acceso entre los
diferentes sistemas incompatibles. A menudo, estas soluciones de mapeo se
ven facilitadas por una base de datos que mantiene los vnculos de la
credencial entre cada sistema. Los problemas con este enfoque son
numerosos:

Las implementaciones de estas soluciones son muy complejas, y


con frecuencia requieren una base de datos relacional para
proporcionar el mapeo de datos. La gestin de los departamentos
de las Tecnologas de la Informacin todava se carga con el
mantenimiento de registros duplicados en mltiples sistemas de
identidad. En muchos casos, las contraseas u otros datos
sensibles se sincronizan a travs de la red sin encriptar.

Estas soluciones suelen ofrecer unas bajas capacidades de


denominador comn a travs de los sistemas de las identidades.
Por ejemplo, slo pueden gestionar los nombres de usuario y sus
contraseas, dejando a los departamentos de las Tecnologas de la
Informacin que busquen otra solucin puntual a las necesidades de
directorio, control de acceso o la ejecucin de la poltica.

Estos soluciones son muy caras de adquirir, implementar y


mantener. Si una organizacin cuenta con 30 sistemas de identidad,
se seguiran manteniendo los 30 sistemas de identidad. Adems la
organizacin cargara con el costo adicional de comprar y mantener
las soluciones de sincronizacin. En muchos casos los gastos son
altos y aumentan la complejidad, dejando a los beneficios
potenciales de este tipo de solucin en cuestin.

Ampliar un almacn existente de las identidades como sustitucin de los


distintos depsitos existentes de las identidades en lo que sea posible. El
objetivo sera empezar construyendo un sistema de directorio centralizado
mediante la seleccin de un sistema de identidades que tenga una probada
trayectoria y una clara direccin de futuro, y hacer que el sistema nico de
identidades reemplace y/o consolide los sistemas existentes de identidades
en el tiempo. La consolidacin y la centralizacin de los sistemas de
identidades ofrece unos claros beneficios en trminos de productividad,
ahorro de costes, seguridad y presentacin de informes. La pregunta difcil
de responder ha sido: qu almacn de identidades tiene el potencial para
cubrir esta necesidad? Dado que el Active Directory es una parte
inseparable del entorno Windows y que la mayora de las organizaciones ya
lo tienen implementado, y que Microsoft se ha comprometido a la aplicacin
de importantes recursos para mejorar sus prestaciones y su escalabilidad, es
el candidato ideal para asumir el papel de un sistema de administracin
centralizada de identidades de un sistema. Sin embargo Microsoft centra sus
esfuerzos en la plataforma Windows y no proporciona una solucin integral
para el servicio de otras plataformas. As las organizaciones se han visto
obligadas a utilizar otros almacenes de identidades para plataformas ajenas

http://www.tonet.jazztel.es

149

a Microsoft. Por lo tanto este tercer enfoque ms prctico no se ha podido


implementar hasta ahora.

http://www.tonet.jazztel.es

150

19. Redes P2P (Peer-to-peer)


El trmino anglosajn P2P (Peer-to-Peer) suele ser traducido al castellano como
entre pares. Sin embargo, y segn el diccionario, peer significa en ingls par,
igual. Luego la traduccin correcta es entre iguales o de igual a igual, aunque lo
ms normal es referirse directamente al acrnimo P2P.
Bsicamente una red P2P se refiere a una red que no tiene clientes y servidores
fijos, sino una serie de nodos que se comportan a la vez como clientes y como
servidores de los dems nodos de la red. Este modelo de red contrasta con el
modelo cliente-servidor tradicionalmente empleado en las aplicaciones de Internet.
As, en una red P2P todos los nodos se comportan igual y pueden realizar el mismo
tipo de operaciones; pudiendo no obstante diferir en cuanto a su configuracin local,
su velocidad de proceso, su ancho de banda y su capacidad de almacenamiento.
El P2P no es un concepto nuevo aunque gracias a muchos factores como la gran
explosin de ordenadores conectados a Internet, el rpido incremento de ancho de
banda disponible por los usuarios, la mayor potencia de clculo y la capacidad de
almacenamiento de los ordenadores personales y la proliferacin de fuentes de
informacin y contenidos diversos a travs de la Red han hecho que esta tecnologa
sea por fin conocida por la inmensa mayora de los internautas.
A continuacin describiremos los conceptos fundamentales de las redes P2P. En
cuanto a sus aplicaciones se pueden clasificar en:

Aplicaciones de comparticin de ficheros, siendo las ms conocidas


Shareaza, BitTorrent, Ares, BearShare, Kazaa, Morpheus, Limewire, Emule,
WinMX entre otras.

Aplicaciones de programas colaborativos

Motores de bsqueda en las webs

Aplicaciones de transmisin de voz e imagen

Aplicaciones de computacin distribuida

Aplicaciones relacionadas con las copias dde seguridad

Aplicaciones de distribucin de contenidos, etc.

Ms adelante se describen de forma breve tres aplicaciones P2P muy conocidas,


dos relacionadas con la comparticin de ficheros BitTorrent y Emule y la otra
relacionada con la transmisin de voz e imagen Skype.

http://www.tonet.jazztel.es

151

19.1.Elementos de las redes P2P


El elemento fundamental de toda red P2P es un par o un igual, y es la unidad de
procesamiento bsico de cualquier red P2P. Un par es una entidad capaz de
desarrollar algn trabajo til y de comunicar los resultados de ese trabajo a otra
entidad de la red, ya sea directa o indirectamente.
Existen dos tipos de pares:
- Pares simples: Sirven a un nico usuario final, permitindole proporcionar
servicios desde su dispositivo y empleando los servicios ofrecidos por otros pares
de la red. Los pares suelen tener una naturaleza dinmica y heterognea, es decir
se conectan a la red de forma intermitente y tienen capacidades muy distintas.
- Superpares: Ayudan a los pares simples a que encuentre otros pares o a otros
recursos de los pares. Los pares lanzan solicitudes de bsqueda de recursos a los
superpares y los superpares les indican donde conseguirlos. Generalmente los
superpares tienen una naturaleza esttica, se encuentran conectados normalmente
a la red y son fcilmente accesibles.
Otro elemento es el concepto de grupo de pares, Un grupo de pares es un conjunto
de pares formado para servir a un inters comn u objetivo dictado por el resto de
pares implicados. Los grupos de pares pueden proporcionar servicios a sus
miembros pares que no son accesibles por otros pares de la red P2P.
Considerando un sistema P2P en el que todos los clientes pueden hablar el mismo
conjunto de protocolos, el concepto de grupo de pares es necesario para dividir el
espacio de la red.
Los servicios proporcionan una funcionalidad til que se consigue mediante la
comunicacin de los distintos pares. Esta funcionalidad o aplicacin para el usuario
puede ser transferir un fichero, proporcionarle informacin de estado, realizar un
clculo o comunicarse con otro usuario.
Los servicios se pueden clasificar en servicios de pares y servicios de grupo de
pares:
- Servicios de pares: funcionalidades ofrecidas por un par concreto de la red a otros
pares, si el par se desconecta el servicio se cae.
- Servicios de Grupo de pares: funcionalidades proporcionadas por varios miembros
del grupo consiguiendo as acceso redundante al servicio. Si un par del grupo se
cae el servicio sigue estando disponible.

19.2.Arquitectura de las redes P2P


19.2.1.Modelo hbrido o centralizado

http://www.tonet.jazztel.es

152

La primera generacin de redes P2P empleaba una estructura de red


cliente/servidor. El servidor central mantiene una base de datos con informacin de
los ficheros servidos por cada par. Cada vez que un cliente se conecta o
desconecta de la red, la base de datos se actualiza. Todos los mensajes de
bsqueda y control son enviados al servidor centralizado. El servidor centralizado
compara la solicitud de sus clientes con el contenido de su base de datos y enva
las correspondencias al cliente en cuestin. Una vez que es informado de las
correspondencias, el cliente contacta con el par directamente y accede al recurso
solicitado.
Proporciona un rendimiento muy elevado a la hora de localizar recursos siempre y
cuando el servidor est bien dimensionado, sin embargo es muy costoso y el
servidor es un elemento crtico en cuanto a la seguridad.

19.2.2.Modelo P2P puro o totalmente descentralizado


La segunda generacin de redes P2P usa un modelo distribuido donde no existe
ningn servidor central y todos los nodos tienen el mismo estatus. Cada nodo acta
como servidor y como cliente en la red. Como es evidente, cada par dentro de esta
arquitectura trata de mantener un cierto nmero de conexiones con otros pares
durante todo el tiempo. Este conjunto de pares conectados transporta el trfico de
la red, que est conformado esencialmente por peticiones y las respuestas a estas
peticiones, y varios mensajes de control que facilitan el descubrimiento de otros
nodos.
A pesar de que el nmero de saltos de la red es potencialmente infinito, permanece
limitado por un tiempo de vida mximo (TTL-Time To Live), relacionado con el
mximo nmero de saltos que puede dar un mensaje. Por cada nodo o par por el
que circula el mensaje de peticin se decrementa en una unidad el TTL
descartndose la peticin si esta llega a cero.
El modelo P2P puro es ms robusto al no depender de un servidor central, adems
ms econmico. La principal desventaja es el elevado tiempo y la sobrecarga de
ancho de banda que suponen las bsquedas de informacin en la red. Adems
puede ser que el recurso buscado ni siquiera pueda ser encontrado aunque exista.

19.2.3.Modelo P2P mixto o semicentralizado


La mayora de aplicaciones P2P consideradas de tercera generacin emplean un
modelo mixto. Dentro de este modelo, ciertos pares de la red son seleccionados
como superpares y ayudan a gestionar el trfico dirigido hacia otros pares. Los
superpares cambian dinmicamente a medida que nuevos pares se conectan.
En este modelo cada nodo cliente mantiene slo un pequeo nmero de
conexiones abiertas y cada una de esas conexiones es a un superpar. As mismo
los superpares estn conectados entre si.

http://www.tonet.jazztel.es

153

Esta nueva topologa virtual tiene el efecto de hacer la red escalable, mediante la
reduccin del nmero de nodos involucrados en el encaminamiento y manejo de los
mensajes, as como la disminucin del volumen de trfico entre ellos.
Adems la velocidad de respuesta a las solicitudes dentro de un entorno mixto es
comparable al de un entorno P2P centralizado.

19.3.Comunicacin en las redes P2P


Para que la comunicacin tenga lugar es importante poder identificar los pares,
grupos de pares y los contenidos en la red. En los sistemas P2P tradicionales,
algunos de estos identificadores se basaban en detalles especficos de los
protocolos de transporte, por ejemplo, un par puede ser identificado mediante su
direccin IP y un puerto TCP. Sin embargo esta representacin es inflexible e
incapaz de proporcionar un sistema de identificacin independiente de la red de
transporte subyacente.

19.3.1.Bsqueda de pares, contenidos y servicios


La bsqueda de informacin (pares, contenidos y servicios), dada la ausencia de un
conocimiento global de los datos y recursos involucrados, es un aspecto
fundamental en entornos P2P, as como es tambin uno de sus grandes problemas.
Un sistema de bsqueda de
informacin en una red P2P debe soportar bsquedas flexibles, eficientes tolerantes
a fallos, y ofrecer garantas de que todo lo que existe puede ser encontrado;
tambin debe ser capaz de tratar con escalabilidad, dinamismo y heterogeneidad
de estos entornos distribuidos.
La bsqueda se realiza en tres niveles:
- Bsqueda en cach (Sin descubrimiento): Cada par mantiene una cach de
recursos previamente descubiertos. Este mtodo es muy fcil de implementar y
reduce enormemente la cantidad de trfico generado por cada par en la red. La
cach debe eliminar las entradas que han superado un tiempo de vida mximo o
aquellos recursos que dejan de estar disponibles. Se suele implementar como una
cola FIFO (First In First Out). Este mtodo es el ms usado para encontrar
superpares y pares en el momento previo de conexin a la red. En la mayora de las
aplicaciones P2P, la forma ms sencilla de asegurar que un par en concreto pueda
encontrar a un superpar es descargar en el par un listado actualizado de
superpares.
- Bsqueda directa: Los pares en caso de no encontrar la informacin en su cach,
pasar a preguntar directamente a otros pares de la red con los que tenga conexin
directa, usando mtodos de broadcast y multicast. Es la forma de bsqueda usada
en modelos P2P puros o totalmente descentralizados.

http://www.tonet.jazztel.es

154

- Bsqueda indirecta: Los superpares actan como fuente de informacin de


localizacin de pares y otros recursos conocidos. Adems esos hacen la bsqueda
en nombre del par. Es la bsqueda usada en arquitecturas mixtas o
semidescentralizadas.

19.3.2.Tablas Hash Distribuidas (DHT)


Las tablas hash distribuidas son un componente esencial de las redes P2P, y han
tenido un efecto revolucionario en la descentralizacin de estas redes. Las
topologas caticas de red de la primera generacin de protocolos P2P ha sido
sustituida por arquitecturas ms escalables y con mejores propiedades gracias a las
DHT.
Una DHT realiza bsicamente las funciones de una tabla hash, que bsicamente se
resumen en dos operaciones, almacenar el par valor y clave en la tabla, y dada una
clave buscar su valor. Un ejemplo tpico de tabla hash es un diccionario donde las
palabras son claves y sus definiciones los valores.
Lo que se pretende con las DHT es distribuir el almacenamiento y la bsqueda de
la tabla hash a mltiples mquinas. A diferencia de un modelo cliente/servidor en el
que se basan las arquitecturas de replicacin de datos, todos los nodos son iguales
que pueden unirse y dejar la red libremente. A pesar del aparente caos producido
por el cambio de los miembros en la red, DHT garantiza su funcionamiento.
Para comenzar nuestro estudio sobre el diseo de una DHT, comenzaremos con
una lista doblemente enlazada. Cada nodo en la lista es una mquina en la red y
cada nodo mantiene una referencia al siguiente y al nodo previo. Para definir este
orden a cada nodo de la red se le asigna un Identificador (ID) de k bits, de forma
aleatoria y nico. En la mayora de los protocolos es un ID de k=64 bits,
suficientemente grande para que no se produzcan colisiones. Por lo tanto se define
el nodo siguiente como aquel que tiene el ID superior ms cercano al suyo propio y
el nodo anterior el que tiene el ID inferior mas cercano al suyo propio. La nica
excepcin es para el nodo con ID mayor que tiene como siguiente al ID menor, y al
nodo ID menor que tiene como anterior al nodo con ID mayor Tambin es
importante definir la distancia entre dos nodos, que por ejemplo, puede consistir en
calcular la distancia entre dos nodos con identificadores a y b, como la diferencia
entre sus identificadores. Hay otras formas mejores de medir la distancia.
Para construir una DHT, cada nodo tiene una tabla hash estndar, y las
operaciones de almacenar y consultar el valor, se realizarn en el nodo apropiado
de la red. Una manera simple de determinar cual es el nodo apropiado para una
clave en particular es la misma que para determinar cual es el sucesor de un nodo
con un ID particular.
Primero tomamos la clave que puede ser el nombre de un recurso, como el
contenido de un fichero, y el valor su ubicacin) y realizamos una funcin hash para
generar una clave de exactamente k bits, el mismo nmero de bits que el ID.
Tratamos ese numero como un ID de nodo y determinamos cual es su nodo
sucesor empezando en cualquier punto en el anillo y desplazndose en sentido
horario hasta que se encuentre el nodo cuya ID sea la ms cercana pero todava

http://www.tonet.jazztel.es

155

superior que la clave en particular. El nodo encontrado es el responsable de


almacenar y buscar para esa clave en particular. Las funciones hash para generar
la clave deben tener la propiedad de generar claves con igual probabilidad en todo
el rango de IDs, para que la distribucin sea lo mayor posible y no sobrecargar un
nodo en particular.
Este diseo DHT es simple pero suficiente para el propsito de una tabla hash
distribuida para una red de nodos estticos. Una cosa a tener en cuenta en el
cdigo es que en una DHT real cada nodo debera estar en un ordenador diferente
y todas las llamadas entre ellas se deben comunicar mediante algn protocolo de
red.
Para hacer ms til este diseo, se tiene que aadir la posibilidad de que los nodos
puedan unirse y dejar la red, ya sea intencionadamente o en caso de fallo. Para ello
se debe establecer un protocolo de entrada/salida de la red.
El primer paso para entrar a formar parte de la red es buscar el sucesor del nuevo
nodo ID usando el protocolo de bsqueda en cuestin. El nuevo nodo debera
insertarse entre el nodo sucesor y antecesor y hacerse responsable de la parte de
claves que le corresponde de su predecesor. Para garantizar el correcto
funcionamiento durante la unin del nodo, los nodos no cambiarn sus punteros
hasta que no se hayan copiado todas las claves que le corresponden al nuevo
nodo.
En cuanto a la salida de la red tambin es muy simple, el nodo que deja la red,
copia toda su informacin a su predecesor y este cambia su puntero de nodo
siguiente al mismo del nodo que abandona la red. En caso de cada del nodo, el
nodo anterior al nodo cado, tendr que iniciar un proceso de salida para volver a
establecer el anillo.
Tambin cabe destacar que en caso de cada de un nodo, la informacin
almacenada en dicho nodo deja de estar disponible temporalmente. Los distintos
protocolos establecen mecanismos de almacenamiento de la informacin pasado
un tiempo para que la informacin vuelva a estar disponible. Sin embargo este
protocolo no est del todo optimizado, ya que para encontrar un recurso en la red
se pueden dar tantos saltos como nmero de nodos como mximo, siendo el
nmero de saltos medio n/2, donde n es el nmero de nodos.
Para resolver esto, una modificacin al protocolo es que cada nodo en lugar de
apuntar nicamente al siguiente nodo, tenga una tabla donde apunte a k nodos. La
distancia entre el ID del nodo que almacena la tabla y los IDs de los nodos
apuntados se incrementa de forma exponencial. Para que la bsqueda logartmica
funcione, la tabla de punteros necesita estar actualizada. Una tabla de punteros a
nodos mal actualizada no tiene porque perjudicar a la bsqueda, siempre y cuando
todos los nodos tengan el puntero al siguiente nodo actualizado, aunque en el caso
de estar la tabla mal actualizada, no funcionar la bsqueda logartmica. As cada
nodo tiene k punteros a otros nodos.
Cuando se hace una bsqueda, hay que decidir cual de los k nodos apuntados se
elige en el siguiente salto. Para cada nodo, se buscar en la tabla de punteros a
nodos aquel que tenga la menor distancia a la clave.

http://www.tonet.jazztel.es

156

Otra propiedad til para una DHT es la posibilidad de actualizar la tabla de punteros
de forma pasiva, haciendo bsquedas de forma pasiva para refrescar la tabla. Otra
de las mejoras que se le puede aadir al protocolo es la posibilidad para un nodo de
aadir mas punteros a nodos en su tabla, cuando contacta con otros nodos durante
la bsqueda, ya que en el proceso de bsqueda se establece la comunicacin con
el nodo reduciendo la sobrecarga en la red.
Desafortunadamente estas tablas de punteros son unidireccionales, o lo que es lo
mismo, la distancia no es simtrica entre dos nodos y por lo tanto un nodo como
norma general no estar en la tabla de nodos apuntados de los nodos a los que el
apunta. Una solucin a este problema es remplazar la distancia entre nodos
definida anteriormente, por la operacin XOR entre las IDs de los nodos siendo as
la distancia(A,B)=distancia(B,A). Si A est en la tabla de punteros de B entonces B
est en la tabla de A. Esto significa que los nodos pueden actualizar sus tablas de
punteros guardando la tabla de los nodos a los que consulta, reduciendo as la
cantidad de trfico.

19.4.Seguridad
Frecuentemente el uso compartido de los recursos tiene lugar entre iguales que no
se conocen entre si y, como resultado de ello, no confan necesariamente entre si.
En muchos casos, el uso de las aplicaciones P2P requiere reconocer los accesos
de las terceras partes a los recursos de un sistema interno, por ejemplo, con el fin
de compartir los ficheros o los ciclos de procesador. El abrir un sistema de
informacin para comunicar con las terceras partes o concederles acceso, puede
tener efectos contrarios a la seguridad. Frecuentemente esto sucede en los
mecanismos de seguridad convencionales, como la posibilidad de burlar el software
de un cortafuego. Otro ejemplo ms es la comunicacin va el software de
mensajera instantnea. A menudo, en este caso, la comunicacin tiene lugar sin
hacer uso de la encriptacin. Como resultado de ello, se pone en peligro la cuestin
de la seguridad en cuanto a la confidencialidad. Las tcnicas y los mtodos para
suministrar la autenticacin, la autorizacin, la comprobacin de disponibilidad, la
integridad de los datos y la confidencialidad, estn entre las cuestiones clave
relacionadas con las infraestructuras P2P.

19.5.Informacin
En cuanto a la informacin a intercambiar en las redes P2P hay que tener en
cuenta: la informacin de presencia, la gestin de documentos y la colaboracin.

Informacin de presencia: La informacin de presencia juega un papel muy


importante en cuanto a las aplicaciones P2P. Es decisiva en la autoorganizacin de las redes P2P porque suministra la informacin sobre que
nodos y que recursos estn disponibles en la red. Permite que los nodos
establezcan contacto directo con otros nodos y la pregunta sobre los
recursos. Un ejemplo ampliamente distribudo de aplicaciones P2P que usan

http://www.tonet.jazztel.es

157

esencialmente la informacin de presencia son los sistemas de mensajera


instantnea. Estos sistemas ofrecen a los nodos la oportunidad de pasar
informacin va la red, como si estuvieran disponibles para los procesos de
comunicacin. El uso de la informacin de presencia es interesante en el uso
compartido de los ciclos de procesador y en los escenarios relacionados con
los ordenadores omnipresentes y la disponibilidad de informacin.
Independientemente las aplicaciones pueden reconocer que nodos estn
disponibles a ellas dentro de un red de ordenadores y determinar como las
tareas intensivas de computacin se pueden distribuir entre los ciclos de
procesador libres de los respectivos nodos. Consecuentemente, en los
entornos de computacin ubicuos, es til si un dispositivo mvil puede
reconocer de forma independiente a estos nodos que estn disponibles en
su entorno, por ejemplo, con el fin de solicitar servicios Web, informacin,
almacenamiento o ciclos de procesador.

Gestin de documentos: Habitualmente, los DMS (Document Management


Systems), que estn organizados de forma centralizada, permiten el
almacenamiento, la gestin y el uso de los datos compartidos. Sin embargo
solo es posible acceder a los datos que han sido colocados en el repositorio
central del DMS. Como resultado de ello, se requiere un esfuerzo adicional
para crear un ndice centralizado de los documentos importantes. La
experiencia muestra que una gran porcin de los documentos creados en
una empresa, se distribuyen entre los ordenadores sin un repositorio central
que tenga conocimiento de su existencia. En este caso, el uso de redes P2P
puede ayudar a resolver esta cuestin.

Colaboracin: el trabajo en grupo basado en P2P permite la gestin de


documentos a nivel de grupos de trabajo cerrados. Como resultado de ello,
los miembros de un equipo se pueden comunicar sncronicamente, mediante
reuniones online conjuntas y editar documentos compartidos, sncrona o
asncronamente. En el trabajo en grupo basado en cliente/servidor, las
correspondientes areas de trabajo para la gestin de los datos centrales se
han establecido y se han administrado en el servidor para cada grupo de
trabajo. Con el fin de evitar esta tarea adicional de administracin, se pueden
usar las redes P2P para el trabajo en colaboracin.

19.6.Ancho de banda
Debido al hecho de que estn subiendo continuamente las demandas de capacidad
de transmisin, en particular debido al incremento de los datos multimedia de gran
tamao, se hace ms y ms importante el uso efectivo del ancho de banda.
Actualmente, en la mayora de los casos, se usan principalmente las propuestas
centralizadas de forma que los ficheros estn en un servidor de un proveedor de
informacin y se transfieren desde all al cliente solicitante. En este caso, surge un
problema cuando espontneamente se incrementa la demanda, lo que ejerce una
influencia negativa en la disponibilidad de los ficheros debido a la aparicin de
cuellos de botella y al desarrollo de las colas de espera. Sin incurrir en una
administracin adicional significativa, las propuestas basadas en P2P consiguen un

http://www.tonet.jazztel.es

158

mejor balanceo de la carga tomando ventaja de las rutas de transmisin que no


estn plenamente explotadas. Tambin facilitan el uso compartido del ancho de
banda suministrado por los proveedores de informacin.

19.7.Almacenamiento
Actualmente DAS (Direct Attached Storage), NAS (Network Attached Storage) o
SAN (Storage Area Networks) son los conceptos de diseo principales usados para
almacenar datos en una empresa. Estas soluciones tienen inconvenientes como el
uso ineficiente del almacenamiento disponible, de la carga adicional en la red de la
empresa o de la necesidad de personal especialmente entrenado y de las
soluciones de copias de seguridad adicionales.
Sin embargo la creciente conectividad y la creciente disponibilidad de ancho de
banda permiten formas alternativas de gestin de almacenamiento que resuelven
estos problemas y requieren menos esfuerzo de administracin. Con las redes P2P
de almacenamiento, se asume generalmente que solo se usar una porcin del
disco duro disponible de un ordenador de usuario. Una red P2P de almacenamiento
es un conjunto de ordenadores, formado en base a las redes existentes, que
comparten todo el almacenamiento disponible en la red. Entre los sistemas que
estn disponibles para explicar la forma como trabajan las redes P2P de
almacenamiento son PAST, Pasta y OceanStore. Tienen similitudes bsicas en la
forma que se construyen y se organizan. Con el fin de participar en una red P2P de
almacenamiento, cada nodo recibe un par de llaves pblica/privada. Con la ayuda
de una funcin hash, la llave pblica se usa para crear un nmero de identificacin
nico para cada peer. Con el fin de tener acceso a almacenar en otro ordenador, el
nodo tiene o que hacer disponible parte de su propio almacenamiento o pagar una
tasa. De acuerdo con esta contribucin, cada nodo tiene asignado un volumen
mximo de datos que puede aportar a la red. Cuando se almacena un fichero en la
red, se asigna un nmero de identificacin nico, creado con una funcin hash del
nombre del contenido del fichero respectivo, as como de la llave pblica del
propietario. El almacenamiento del fichero y su bsqueda en la red tiene lugar en la
forma descrita antes en el modelo encaminaniento del documento. Adems tambin
se almacena un nmero de rplicas de ficheros determinado libremente. Cada nodo
recupera su propia versin actual de la tabla de encaminamiento que se usa para el
almacenamiento y la bsqueda. El nodo verifica la disponibilidad de sus vecinos a
unos intervalos establecidos con el fin de establecer que nodos ya no estn en la
red. De esta forma los nuevos nodos que han entrado en la red tambin son
includos en la tabla.
Para coordinar las redes P2P de almacenamiento, se han de generar y distribuir
pares de claves a los nodos respectivos y se ha de monitorizar el uso del
almacenamiento.
Por medio de la rplica de ficheros y de la distribucin aleatoria de los nmeros de
identificacin a los nodos usando una funcin hash, la red P2P de almacenamiento
se asegura automticamente que se almacenan varias copias del mismo fichero en
distintas localizaciones geogrficas. No se requiere una administracin adicional o

http://www.tonet.jazztel.es

159

una solucin de copia de seguridad adicional para conseguir la proteccin contra un


incidente local o una prdida de datos. Tambin este procedimiento reduce la
trascendencia de un problema que es la caracterstica de las redes P2P: en las
redes P2P no hay garanta de que un determinado nodo estar disponible en la red
en un instante determinado. En el caso de las redes P2P de almacenamiento, esto
podra hacer que no hubiese ningn nodo disponible en la red que tuviera
almacenado el fichero que se est solicitando. Sin embargo incrementando el
nmero de rplicas almacenadas en distintas localizaciones geogrficas, se puede
mejorar la probabilidad de que al menos haya un nodo disponible en la red. Los
bajos costes de administracin, como consecuencia del carcter auto-organizativo
de las redes P2P de almacenamiento y del hecho que se requieran soluciones de
copias de seguridad adicionales, son entre otras las ventajas que ofrecen estos
nuevos sistemas con una gestin de almacenamiento eficiente.

19.8.Ciclos de Procesador
Reconociendo que no se usa con frecuencia toda la potencia de computacin
disponible de las entidades de la red, hubo una primera iniciativa para manejar la
potencia de computacin usando aplicaciones P2P. Al mismo tiempo, se ha ido
incrementando el requerimiento de una computacin de alto rendimiento, es decir,
las operaciones de computacin en el campo de la bioinformtica, la logstica o el
sector financiero. Usando las aplicaciones P2P para el manejo de los ciclos de
procesador, es posible conseguir una potencia de computacin que an los
supercomputadores ms caros dificilmente pueden suministrar. Esto se efecta
formando un grupo de ordenadores independientes en red, en que un solo
ordenador es transparente y todos los nodos de la red se combinan en un solo
ordenador lgico. Las respectivas propuestas sobre el uso coordinado de liberacin
y comparticin de recursos de computacin distribudos en organizaciones
dinmicas y virtuales que se extienden por una sola institucin, normalmente caen
bajo el trmino de grid computing. El trmino grid computing es una analoga a las
redes de potencia habituales. As estara disponible a un usuario la cantidad ms
grande posible de recursos, en particular la potencia de computacin, idealmente
sin restriciones ni problemas de localizacin.

19.9.BitTorrent
El sistema de distribucin de ficheros BitTorrent utiliza como mtodo de bsqueda
la eficiencia de Pareto. Con esto se logra un mayor nivel de robustez y una mejor
utilizacin de los recursos que con otra tcnica cooperativa conocida actualmente.
As cuando se solicita una pgina web en Internet, todo su coste se carga al
servidor donde est almacenada aquella pgina, dado que es quien sirve la pgina.
Con BitTorrent, el fichero a descargar se ha fragmentado, y sus fragmentos se
encuentran repartidos entre distintos ordenadores que estn conectados a Internet.
As ahora cuando un cliente se quiere descargar un fichero, lo har desde varios

http://www.tonet.jazztel.es

160

ordenadores, con lo que los costes quedan repartidos entre estos ltimos que son
los que envan los fragmentos del fichero al ordenador solicitante.
La tcnica a emplear en cuanto a la localizacin de los distintos fragmentos a
descargar en los ordenadores disponibles es uno de los puntos clave de esta
aplicacin. Otra cuestin es el hecho de que en Internet, la mayora de los usuarios
se conectan durante unos perodos de tiempo cortos y que una vez un usuario ha
obtenido su objetivo de disponer del fichero entero que quera, se desconecta, con
lo que deja de dar servicio a los dems usuarios.
Finalmente, existe un problema general de justicia y es como se distribuyen la
velocidad de descarga total desde un usuario entre los dems usuarios que
disponen de los fragmentos del fichero que uno se quiere descargar.

19.9.1.Interfaz
La interfaz de BitTorrent es muy sencilla, y basta con que los usuarios hagan un
click al hiperenlace del fichero que se quieren descargar y a la pregunta de donde
guardarlo, se guardar un fichero con extensin .torrent del que se habla a
continuacin. Adems de poder visualizar el trfico de subida y bajada de cada
fichero, se puede configurar los distintos parmetros de la aplicacin.

19.9.2.Implementacin
Los ficheros disponibles a la descarga por parte del usuario, es a decisin de utilizar
BitTouna cosa suya, dado que l es el propietario del fichero. Los que se descargan
ficheros utilizan BitTorrent, porque es una forma de conseguir el fichero que se
desea. Con frecuencia los que se descargan ficheros, cesan la subida de ficheros
tan pronto como ha finalizado su descarga, aunque se considera de buena
educacin dejar la descarga del cliente por un tiempo despus de su descarga se
haya completado. La implementacin estndar sigue con la descarga hasta que se
cierra la ventana, lo que se traduce con frecuencia que las subidas continuen hasta
que vuelva el usuario a su ordenador.
En una implementacin normal, el nmero de personas con descargas incompletas,
se incrementa muy rpidamente despus de que se encuentra disponible el fichero.
Tambin acostumbre a suceder de que hay picos y luego se cae a una velocidad
aproximadamente exponencial. El nmero de personas con descargas completas
aumenta lentamente.

19.9.3.Publicando el contenido
Para iniciar una publicacin de un fichero en Torrent, se ha de crear un fichero con
la extensin .torrent, ubicado en un servidor web corriente. El fichero con
extensin .torrent contiene informacin sobre el fichero, su longitud, el nombre y la
informacin del hash, y la direccin URL de un rastreador. Los rastreadores son los
responsables de ayudar a los descargadores de encontrarse unos a otros. Ellos

http://www.tonet.jazztel.es

161

hablan un protocolo muy sencillo por encima del protocolo HTTP, y mediante el cual
se enva informacin sobre el fichero que se est descargando, por que puerto est
escuchando, y otra informacin similar, y el rastreador responde con una lista de
informacin de contacto de los usuarios que estn descargando el mismos fichero.
A continuacin los descargadores utilizan esta informacin para conectarse entre s.

19.9.4.Distribucin de los usuarios


Todos los problemas logsticos de descarga de ficheros se manejan en las
interacciones entre pares. Las responsabilidades del rastreador se limitan
estrictamente a ayudar a los usuarios a encontrarse. As adems de que los
rastreadores es la nica forma de encontrarse los usarios, tambin es el nico
punto de coordinacin. El algoritmo de seguimiento consiste en devolver una lista
aleatoria de usuarios.
Con el fin de facilitar la descarga de los ficheros, BitTorrent divide los ficheros en
fragmentos de tamao fijo, por lo general de 250k octetos. Cada usuario que se
descarga un fichero, debe informar a todos sus pares de los fragmentos que tiene.
Para verificar la integridad de los datos, lse calcula un hash SHA1 de cada uno de
los fragmentos y est informacin est includa en el fichero de extensin .torrent.
Los pares no comunican la existencia de un fragmento hasta que se haya
comprobado su hash.
Cuando se transfieren datos utilizando el protocolo TCP, que es lo que hace
BitTorrent, es muy importante tener siempre a la vez varias solicitudes pendientes
con el fin de evitar retrasos entre los fragmentos que se envan, lo que redundara
en una tasa de transferencia desastrosa. BitTorrent facilita esto, dividiendo a su vez
los fragmentos en trozos ms pequeos, por lo general de un tamao de 16k
octetos, y manteniendo siempre un nmero, por lo general cinco, de solicitudes en
cola a la vez. Cuando llega un trozo, inmediata se enva una solicitud. La cantidad
de datos a enviar ha sido seleccionado como un valor que puede saturar de forma
fiable la mayora de las conexiones.

19.9.5.Seleccin del fragmento


Si se quiere obtener un buen rendimiento, es importante el orden en que se
seleccionan los framentos. Un algoritmo pobre de seleccin de un fragmento puede
hacer que se seleccionan fragmentos de los que an no dispone el usuario para su
subida.
Prioridad estricta
La primera poltica de BitTorrent para la seleccin de fragmentos es que una vez
que se ha solicitado un solo trozo, los trozos restantes de este fragmento se
solicitan antes que los trozos de otro fragmento. Con esto se consiguen fragmentos
completos tan pronto como sea posible.
Rarest First

http://www.tonet.jazztel.es

162

Cuando se determina que fragmento se va a usar en la descarga siguiente, en


general sus pares descargan los fragmentos que son ms raros, en cuanto a que
los tienen la menor cantidad de sus propios pares. Estos fragmentos son los que se
sirven primero. A esta tcnica se le denomkina como 'rarest first'. Con esta tcnica
se asegura de que los fragmentos que son ms comunes se dejan para ms
adelante.
La teora de la informacin dicta que ningn descargador se puede completar hasta
que descargan todas los fragmentos del fichero. Para las implementaciones con
una sola semilla, cuya capacidad de descarga es considerablemente menor que el
de muchos descargadores, el rendimiento es mucho mejor si diferentes
descargadores obtienen diferentes fragmentos de la semilla, ya que las descargas
redundantes desperdician la oportunidad para que la semilla obtenga ms
informacin.
Random First Piece
Cuando empieza la descarga, el par no tiene nada que subir, as que es importante
obtener un fragmento completo lo ms pronto posible. Los fragmentos raros, por lo
general slo se encuentra en un compaero, por lo que se puede descargar ms
lento que los fragmentos que estn presentes en mltiples pares para los cuales es
posible descargar los trozos de diferentes lugares. Por esta razn, para descargar
fragmentos se seleccionan al azar hasta que el primer fragmento completo se
ensambla y, a continuacin la estrategia cambia a la rarest first. A este mtodo se le
denomina random first piece.
Modo endgame
A veces un fragmento solicitadao a un par se recibe con una velocidades de
transferencia muy lenta. Este puede retrasar la llegada de una descarga. Para evitar
que eso suceda, todos las trozos que no tiene un par, son solicitados de forma
general a todos los pares. A medida que llegan los trozos, se comunica que ya han
llegadocon el fin de repetir envos.

19.9.6.Algoritmos de choking
BitTorrent no hace ninguna asignacin de recursos de forma centralizada. Cada par
es responsable de tratar de maximizar su propia velocidad de descarga. Los pares
hacen esto mediante la descarga de los que pueden y decide de qu compaeros
se va a subir los fragmentos. Lo usuarios que cooperan suben ficheros y los que no
lo hacen, es porque no quieren colaborar, al menos de forma temporal.
El algoritmo de choking no es tcnicamente parte del protocolo BitTorrent, pero es
necesario para un buen rendimiento. Un buen algoritmo de choking debera utilizar
todos los recursos disponibles, proporcionando unas velocidades de descarga
razonablemente consistentes para todo el mundo.
Eficiencia de Pareto
En trminos de informtica, la bsqueda basada en la eficiencia de Pareto es un
algoritmo de optimizacin local en el que los pares de las entidades de

http://www.tonet.jazztel.es

163

contrapartida ven si pueden mejorar su situacin en conjunto, y los algoritmos de


este tipo tienden a conducir a los ptimos globales. En concreto, si dos pares tienen
una pobre reciprocidad en cuanto a lo que se refiere a la subida de ficheros, lo que
pueden hacer es comunicrselo, de forma que aumenten la tasa de descarga entre
ambos. A nivel tcnico, cada par de BitTorrent mira la posibilidad de mejorar su
comunicacin en base a la eficiencia de Pareto. Este enfoque permite un control de
congestin del protocolo TCP con el fin de saturar la capacidad de carga de forma
fiable.
Las decisiones en cuanto a que pares se aplica la eficiencia de Pareto, se basan
estrictamente en la velocidad de descarga actual. El clculo de la velocidad de
descarga actual de manera significativa es un problema difcil, as la
implementacin actual utiliza esencialmente promedios de 20 segundos. Los
algoritmos de choking anteriores utilizaban informacin de la transferencia de
tiempos anteriores, con lo que se obtenan resultados peores, porque el valor del
ancho de banda vara rpidamente con el tiempo cuando los recursos desaparecen
y se convierten en disponibles.
Para evitar situaciones en las que los recursos se desperdician por el uso de la
activacin y desactivacin del algoritmo de choking, los pares de BitTorrent
reaclculan quienes quieren la activacin del algoritmo de choking cada diez
segundos. Diez segundos es un perodo de tiempo suficientemente largo para que
el protocolo TCP permita nuevas transferencias a su mxima capacidad.
Una vez que un cliente se est descargando algo, no tiene utilidad en cuanto a las
velocidades de descarga decidir desde que clientes hacerlo. La implementacin
actual cambia a los clientes preferidos que tienen mejores velocidades de descarga.

19.10.E-Mule
eMule es una aplicacin de intercambio de archivos muy popular que se basa en el
protocolo eDonkey. La red de eMule consta de varios cientos de servidores de
eMule y millones de clientes eMule. Los clientes deberan conectarse a un servidor
para obtener los servicios de red y la conexin al servidor se mantiene abierta,
siempre y cuando el cliente est en el sistema. Los servidores realizan los servicios
centralizados de indexacin y no se comunican entre si.
Cada cliente de eMule est preconfigurado con una lista de servidores y una lista
de ficheros compartidos en su sistema local de ficheros. Un cliente utiliza una
conexin TCP a un servidor de eMule para conectarse a la red, obtener informacin
sobre los ficheros deseados y los clientes disponibles. El cliente eMule tambin
utiliza varios cientos de conexiones TCP a otros clientes que se utilizan para subir y
descargar ficheros. Cada cliente de eMule mantiene una cola de subida para cada
uno de sus ficheros compartidos. Los clientes que descargan ficheros se unen a la
cola de espera en su parte inferior y avanzan gradualmente hasta llegar al primero
de la cola y comienza a descargar el fichero. Un cliente puede descargar el mismo
fichero de varios clientes de eMule, consiguiendo diferentes fragmentos de cada
una de ellos. Un cliente tambin puede subir trozos de un fichero que an no ha
completado la descarga. Por ltimo, eMule ampla las capacidades del eDonkey, y

http://www.tonet.jazztel.es

164

permite a los clientes intercambiar informacin acerca de los servidores, otros


clientes y otros ficheros.
El servidor emplea una base de datos interna en la que se almacena la informacin
de los clientes y de los ficheros. Un servidor de eMule no almacena ningn fichero,
acta como un ndice centralizado de la informacin almacenada sobre la ubicacin
de los ficheros. Una funcin adicional del servidor, que se est convirtiendo en
obsoleta, es tender un puente entre los clientes que se conectan a travs de un
cortafuegos y no son capaces de aceptar conexiones entrantes. Esta funcionalidad
aumenta considerablemente la carga del servidor. eMule emplea el protocolo UDP
para mejorar las capacidades de los clientes frente al servidor y a otros clientes. La
capacidad del cliente de enviar y de recibir mensajes UDP no es obligatorio para el
correcto funcionamiento diario del cliente y podra funcionar sin problemas cuando
un servidor de seguridad le impide enviar y recibir mensajes UDP.

19.10.1.Conexin del cliente al servidor


Al inicio el cliente se conecta mediante el protocolo TCP a un nico servidor eMule.
El servidor proporciona al cliente una identificacin que es vlida nicamente a
durante la conexin en cuestin del cliente al servidor, es decir, si el cliente se
desconecta, cuando se vuelve a conectar, debe volver a solicitar una identificacin.
Tras el establecimiento de la conexin el cliente enva al servidor su lista de ficheros
compartidos. El servidor almacena la lista en su base de datos interna que por lo
general contiene varios cientos de miles de ficheros disponibles y los clientes
activos. El cliente eMule tambin enva su lista de descarga que contiene los
ficheros que desea descargar.
Una vez establecida la conexin, el servidor eMule enva al cliente una lista de otros
clientes que poseen los ficheros que el cliente desea descargar.
A partir de este momento, el cliente de eMule comienza a establecer conexiones
con otros clientes. Tener en cuenta que la conexin TCP cliente/servidor se
mantiene abierta durante toda la sesin del cliente. De vez en cuando, el cliente
enva peticiones de bsqueda de ficheros que son contestadas por los resultados
de bsqueda. Una operacin de bsqueda es seguida generalmente por una
consulta de los posibles usuarios que tienen partes del fichero solicitado. La
respuesta contendr las direcciones IP y los puertos TCP de estos usuarios.
El protocolo UDP se utiliza para la comunicacin con los servidores que no son a
los que se ha conectado inicialmente el cliente. El propsito de los mensajes UDP
es mejorar la bsqueda de ficheros, la mejora de los clientes que disponen de los
ficheros y asegurarse de que todos los servidores eMule en la lista de servidores
del cliente son vlidos.

19.10.2.Conexin cliente a cliente


Un cliente de eMule se conecta a otro cliente de eMule con el fin de descargar un
fichero, que se divide en fragmentos que luego se fragmentan ms. Un cliente

http://www.tonet.jazztel.es

165

puede descargar el mismo fichero desde distintos clientes consiguiendo distintos


fragmentos de cada uno de ellos.
Cuando dos clientes se conectan, se intercambian la informacin de su capacidad y
luego negocian el comienzo de una descarga. Cada cliente tiene una cola de
descarga que contiene una lista de clientes que estn esperando para descargar
ficheros. Cuando la cola de descargas del cliente de eMule se vaca, si a
continuacin llega una solicitud de descarga, muy probablemente la descarga se
iniciar de inmediato. Cuando la cola de descarga no est vaca, una nueva
solicitud de descarga se aade a la cola. No hay ningn intento de servir a ms de
unos pocos clientes en un momento dado, proporcionando un ancho de banda
mnimo de 2,4 Kbps para cada uno de ellos. La lista de clientes en espera puede
alterar su orden en funcin de un ranking en los primeros 15 minutos.
Cuando un cliente que est esperando la descarga un fichero, llega a la cabeza de
la cola de descarga, se inicia una conexin con el fin de enviar los fragmentos
necesarias del fichero. Un cliente de eMule puede estar en la cola de espera de
otros clientes, registrado para descargar los mismos fragmentos del fichero. Cuando
el cliente que esperaba completa con los fragmentos, no notifica a todos los dems
que pueden sacarle de sus colas, sino que simplemente rechazar el intento de
carga cuando llega a la cabeza de su cola.
eMule utiliza un sistema de crdito con el fin de fomentar la subida de los ficheros y
para evitar la suplantacin del eMule mantiene un sistema de crdito mediante una
criptografa de clave pblica del tipo RSA. Las conexiones de cliente pueden utilizar
un conjunto de mensajes que no estn definidos por el protocolo eDonkey, y a
estos mensajes se les llama el protocolo extendido. El protocolo extendido se usa
para la implementacin del sistema de crdito, para el intercambio de informacin
general como las actualizaciones de las listas de servidores y fuentes, y para
mejorar el rendimiento mediante el envo y la recepcin de fragmentos de ficheros
comprimidos. La conexin del cliente eMule utiliza el protocolo UDP de una forma
limitada para comprobar peridicamente el estado del cliente en la cola de subida
de sus clientes, mientras que se est esperando para comenzar a descargar un
fichero.

19.10.3.Identificacin del cliente


La identificacin del cliente es un identificador de 4 octetos proporcionada por el
servidor en el momento de la conexin. La identificacin del cliente es vlida slo
durante la sesin de conexin TCP, aunque en el caso de que el cliente tenga una
identificacin alta se le asignar la misma identificacin en todos los servidores
hasta que cambie su direccin IP. Las identificaciones de los clientes se dividen en
dos categoras: baja y alta. Normalmente el servidor de eMule asignar a un cliente
una identificacin baja cuando el cliente no puede aceptar conexiones entrantes.
Tener una identificacin baja, restringe el uso del cliente de la red eMule y podra
hacer que el servidor lo rechazara durante la fase de conexin del cliente.
Una identificacin alta se calcula sobre la base de la direccin IP del cliente.Una
identificacin alta se da a los clientes que permiten que otros clientes se conecten
otros libremente al puerto TCP de eMule en su ordenador. Un cliente con una

http://www.tonet.jazztel.es

166

identificacin alta no tiene restricciones en el uso de la red eMule. Cuando el


servidor no puede abrir una conexin TCP al puerto de eMule del cliente, le da una
identificacin baja al cliente. Esto ocurre principalmente con los clientes que estn
detras de un cortafuegos y que por lo tanto le niega las conexiones entrantes. Un
cliente tambin puede recibir una identificacin baja en los casos siguientes:
Cuando el cliente est conectado a travs de un servidor NAT o proxy.
Cuando el servidor es ocupado, lo que provoca la expiracin del temporizador de
reconexin del servidor.
La identificaciones altas se calculan de la siguiente manera: si suponemos que la
direccin IP del cliente es X.Y.Z.W, la identificacin ser X+ 28 Y+ 216 Z+ 224 W
("representacin big endian). Una identificacin baja es siempre inferior al
16777216 (0x1000000) que no se puede encontrar ninguna pista acerca de cmo
se calcula, dado que vara en funcin del servidor. Una identificacin baja de un
cliente que no tiene IP pblica, hace que el cliente se comunique a los dems a
travs del servidor de eMule. Esto aumenta la carga computacional del servidor y la
resistencia de los servidores a aceptar clientes de identificacin baja. Adems esto
significa que un cliente con una identificacin baja no se puede conectar a otro
cliente con identificacin baja que no est en el mismo servidor porque eMule no
soporta un tnel de las peticiones entre los servidores. Para soportar los clientes
con una idnetificacin baja, se ha introducido un mecanismo de devolucin de la
llamada. Mediante este mecanismo, un cliente con una identificacin alta puede
preguntar a travs del servidor de eMule, la conexin a un cliente con identificacin
baja con el fin de intercambiar ficheros.

19.10.4.Identificacin del usuario


eMule soporta un sistema de crdito con el fin de animar a los usuarios a compartir
ficheros. Cuantos ms ficheros camparta un usuario, ms arriba estar en la cola
de espera. La identificacin del usuario consta de 16 octetos y se crea a partir de la
concatenacin de nmeros aleatorios, los octetos sexto y quinceavo 15 no se
generan al azar, y sus valores son 14 y 111 respectivamente. Mientras que la
identificacin del usuario slo es vlida durante la sesin del usuario con un
determinado servidor, la identificacin del usuario es nica y se utiliza para
identificar a un cliente a travs de las sesiones. La identificacin del usuario juega
un papel importante en el sistema de crdito. eMule soporta un esquema de
encriptacin que est diseado para prevenir el fraude y la suplantacin de los
usuarios. La implementacin de este esquema est basado en un mtodo de
encriptacin de clave pblica/privada del tipo RSA.

19.10.5.Identificacin del fichero


La identificacin del fichero se utiliza para identificar los ficheros de forma nica en
la red y para la deteccin y recuperacin de errores en los ficheros. Tener en
cuenta que eMule no se basa en el nombre del fichero con el fin de identificarlo de
forma nica y catalogarlo, un fichero se identifica mediante un identificador nico
global calculado por hashing del contenido del fichero. Hay dos tipos de
identificadores de ficheros: el primero se utiliza principalmente para generar la

http://www.tonet.jazztel.es

167

identificacin de forma nica y el segundo es til para la deteccin de la corrupcin


y la recuperacin.

19.11.Skype
Skype es una aplicacin de videoconferencia basado en la tecnologa P2P.
Desarrollado por KaZaa permite a sus usuarios hacer llamadas de imagen y voz y
enviar mensajes de texto a otros usuarios que sean clientes de Skype. Hay dos
tipos de nodos en esta red: nodos ordinarios y supernodos (SN). Un nodo ordinario
es un ordenador conectado a la red que tiene instalada la aplicacin Skype. Un
supernodo es un ordenador conectado a la red y que hace de intermediario de los
nodos ordinarios. Este supernodo ha de tener una direccin IP pblica y la
suficiente CPU, memoria y ancho de banda de red para soportar las funciones
propias del Skype. Por un lado un nodo ordinario debe estar conectar a un
supernodo y adems se debe registrar al servidor de login de Skype. El servidor de
inicio de sesin de Skype no tiene que ser necesariamente un nodo Skype. Los
nombres y las contraseas de los usuarios se almacenan en el servidor de inicio de
sesin. La autenticacin del usuario tambin se hace en este servidor. Este servidor
tambin asegura que los nombres de inicio de sesin de Skype sean nicos en su
espacio de nombres del Skype.
Aparte del servidor de inicio de sesin, no hay ningn servidor central en la red
Skype. La informacin online y offline del usuario se almacena y propaga de una
forma descentralizada y as son las solicitudes de bsqueda de usuario. Cada nodo
ordinario usa una variante del protocolo STUN para determinar el tipo de NAT y
cortafuegos que hay detrs.
La red Skype es una red P2P, razn por la cual cada cliente Skype construye y
actualiza una tabla de los nodos a los que se puede conectar. En Skype, esta tabla
se llama host cache y contiene las direcciones IP y los nmeros de los puerto TCP/
UDP de los supernodos.
Skype utiliza codecs de banda ancha que le permiten mantener una calidad
razonable de la llamada con un ancho de banda disponible de 32 kb/s. Tambin
utiliza el protocolo TCP para la sealizacin y este y el UDP para el transporte del
trfico de datos. La sealizacin y el trfico de datos no se envan por los mismos
puertos.
Otras caractersticas son:

No soporta la supresin de los silencios

Soporta la llamada en espera

Conferencia a tres bandas

http://www.tonet.jazztel.es

168

19.11.1.Componentes clave
Un cliente Skype escucha por un determinado puerto las llamadas entrantes,
mantiene la tabla host cache, usa codecs de banda ancha, mantiene una lista de
compaeros, encripta los mensajes extremo a extremo y determina si est detrs
de un NAT o un cortafuegos.
Puertos
Un cliente Skype abre un puerto de escucha TCP y otro UDP de acuerdo con el
nmero de puerto configurado en su dilogo de conexin. El cliente Skype decide
aleatoriamente el nmero de puerto en el momento de la instalacin y adems
tambin abre los puertos de escucha TCP en el puerto nmero 80 (puerto HTTP) y
el nmero de puerto 443 (puerto HTTPS).
Host Cache
La host cache (HC) es una lista de direcciones IP y los puertos de los supernodos,
que se actualiza periodicamente. Es la parte ms crtica del funcionamiento de
Skype y al menos debe tener una entrada vlida, es decir, una direccin IP y el
nmero de puerto de un nodo de Skype en lnea.
Codecs
Los codecs iLBC, ISAC u otrosson los habitualmente empleados. Lo que si permite
en un rango de frecuencias entre 50-8000 Hz. Esta gama de frecuencias es
caracterstica de un codec de banda ancha.
Lista de contactos
Cada usuario Skype dispone de una lista de contactos que almacena localmente y
a su vez est firmada digitalmente y encriptada. As sii un usuario utiliza el Skype en
un ordenador diferente para iniciar la sesin en la red de Skype, el usuario tiene
que reconstruir la lista de contactos.
Encriptacin
Skype utiliza el sistema de encriptacin AES(Advanced Encryption Standard) para
proteger la informacin confidencial. Skype utiliza una encriptacin de 256 bits, que
cuenta con un total de 1,1 x 10 77 claves posibles, con el fin de encriptar los datos
de forma activa en cada llamada de Skype. Skype utiliza desde 1536 hasta 2048
bits RSA para negociar claves simtricas de AES. Las claves de usuario pblicas
estn certificadas por el servidor de Skype al iniciar la sesin.
NAT y cortafuegos
Un cliente Skype utiliza una variacin del protocolo STUN para determinar el tipo de
NAT y cortafuegos que est detrs.

http://www.tonet.jazztel.es

169

19.11.2.Funciones
19.11.3.Inicio de sesin
La funcin de inicio de sesin es quizs la funcin ms crtica para el
funcionamiento del Skype. Durante este proceso de login del cliente Skype se
autentica su nombre de usuario y su contrasea con el servidor de inicio de sesin,
anuncia su presencia a sus contactos, determina el tipo de NAT y cortafuegos que
est detrs, y descubre los nodos Skype con direcciones IP pblicas.
Proceso de inicio de sesin
Como se explic antes, la host cache debe contener como mnimo una entrada
vlida para un cliente Skype para poder conectarse a la red de Skype. Si un cliente
Skype no puede conectarse a un supernodo, recibir un mensaje de error.
La mayora de los cortafuegos estn configurados para permitir el trfico saliente
TCP por el puerto 80 (puerto HTTP) y el puerto 443 (HTTPS). Un cliente Skype
detrs de un cortafuegos, que bloquea el trfico UDP y el trfico de permisos
selectivos de TCP, se aprovecha de este hecho. Al inicio de sesin, se establece
una conexin TCP con otro nodo de Skype con una direccin IP pblica y el puerto
80 o el puerto 443.
Servidor de inicio de sesin
Una vez un cliente Skype se ha conectado a un supernodo, se debe autenticar el
nombre de usuario y la contrasea de inicio de sesin con el servidor de inicio de
sesin. El servidor de inicio de sesin es el nico componente central en la red de
Skype. Almacena los nombres de usuario y las contraseas de Skype y asegura
que los nombres de los usuarios de Skype son nicos en el espacio de nombres de
Skype.
Nodos de arranque
Despus de iniciar la sesin por primera vez despus de la instalacin, la host
cache se inicializa con siete pares de direccin IP y nmeros de puerto. A estos se
les denomina nodos de arranque. Estos pares de direccin IP y el puerto y sus
correspondientes nombres de host se obtienen mediante una bsqueda inversa.
Proceso de inicio de sesin
La primera vez la host cach est vaca despus de una instalacin. Por lo tanto, un
cliente de Skype debe conectarse a los nodos conocidos de Skype con el fin de
iniciar la sesin en la red de Skype. Lo hace mediante el envo de paquetes UDP a
algunos supernodos de arranque y luego espera su respuesta. A continuacin el
cliente de Skype establece una conexin TCP con el supernodo de arranque que le
ha respondido. Puede darse el caso de que le responda ms de un supernodo, en
cuyo caso se conecta a todos ellos. Despus de intercambiar algunos paquetes con
estos supernodos, adquiere la direccin del servidor de inicio de sesin con lo que

http://www.tonet.jazztel.es

170

ya puede conectarse a l para su autenticacin, y finalmente cierra las conexin


TCP con los supernodos de arranque.
El proceso de inicio de sesin que no es la primera vez, es muy similar al proceso
de inicio de sesin por primera vez. El cliente de skype ya dispone de una host cahe
que ahora no es vaca. As ahora el cliente de Skype establece una conexin TCP
con al menos un par de nodos de la host cache.

19.11.4.Bsqueda del Usuario


Skype usa su tecnologa de Global Index (GI) para buscar un usuario. Skype
pretende que la bsqueda sea distribuida y se garantiza encontrar al usuario si
existe y se ha conectado durante las ltimas 72 horas.
Un cliente de Skype tiene determinado un dilogo de bsqueda. Despus de entrar
la identificacin de usuario Skype y pulsar el botn de bsqueda, el cliente de
Skype empieza la bsqueda de un determinado cliente. Para ello enva un paquete
TCP a su supernodo, que le da la direccin IP y el nmero de puerto de los nodos a
los que se puede dirigir para hacer la bsqueda.

19.11.5.Establecimiento y desconexin de la llamada


Es importante sealar que la sealizacin de llamadas se realiza siempre a travs
de TCP. Para los usuarios que no estn presentes en la lista de contactos, antes de
la llamada, debe realizarse la bsqueda del cliente. As la llamda siempre consiste
en pulsar el botn de llamada sobre el contacto deseado de la lista de contactos.
De esta manera se establece una conexin TCP entre ambos. El primer intercambio
de mensajes entre la persona que llama y el destinatario indica la existencia de un
mecanismo de pregunta-respuesta.
En la configuracin de la red en que la persona que llama est detrs de un NAT, el
intercambio de mensaje entre la persona que llama y el destinatario se hace
mediente unos nodos intermedios. Lo mismo sucede si hay algn cortafuegos por
en medio. En todos los casos, se establece una ruta para loa paquetes de voz.
Durante la desconexin de la llamada, la informacin de sealizacin se
intercambia a travs de mensajes TCP entre el que llama.
Si el que llama y el destinario tienen una direccin IP pblica, entonces el trfico
fluye directamente entre ellos a travs de mensajes UDP. El tamao de paquete de
voz es de 67 octetos, que es el tamao de un mensaje UDP. As si el ancho de
banda total del enlace ascendente y descendente utilizado para el trfico de voz es
de 5 kbps, la utilizacin del Skype equivale a un ancho de banda de 3-16 kbps.
Si la persona que llama o el destinatario de la llamada o ambos estan detrs de un
NAT, el trfico de voz se hace mediante mensajes UDP. Si los usuarios estn
detrs de un NAT y un cortafuegos, el trfico de voz se hace mediante mensajes
UDP. El protocolo de Skype prefierie el uso del UDP para la transmisin de voz
tanto como sea posible.

http://www.tonet.jazztel.es

171

20. Redes WAN (Wide Area Network)


20.1.Introduccin
Las limitaciones de la LAN son el nmero de ordenadores conectados y el dimetro
de la red. Una WAN es una red que permite conectar un gran nmero de
ordenadores situados a grandes distancias.
Los factores diferenciales de una WAN son

la distancia entre usuarios

el coste y

el nivel de protocolos

Una WAN se caracteriza por


Ser una red que conecta equipos situados remotamente.
Ser gestionados sus enlaces por una operadora de telecomunicaciones.
Tener un alcance de decenas o centenares de Km.
Utilizar velocidades muy variadas (desde baja velocidad a muy alta velocidad).
Disponer de una gran conectividad entre las distintas redes.
Disponer de sus propios protocolos.

20.2.Conmutacin de paquetes por circuito virtual


La conmutacin de paquetes por circuito virtual es la tecnologa digital en que se
basan las comunicaciones actuales. Consiste en la comunicacin con varios
extremos, y dada la cantidad de octetos a transmitir, se deben fragmentar, y a cada
uno de ellos se denomina paquete. Los nodos intermedios o conmutadores son los
que redirigen los paquetes a sus lugares de destino, pero no todos siguen
necesariamente el mismo camino.
En este tipo de comunicaciones se emplea un servicio orientado a la conexin.
En las redes de conmutacin de paquetes tambin se efecta una reserva de
recursos durante el establecimiento de la conexin. Pero a diferencia de la
conmutacin de circuitos donde la reserva de recursos eran canales fsicos TDM
sncronos, en la conmutacin de paquetes la multiplexacin es TDM asncrona. Eso
significa que los canales se asignan bajo demanda despus de que los datos
(tramas de nivel 2 o paquetes de nivel 3) se hayan almacenado en un buffer del

http://www.tonet.jazztel.es

172

conmutador. Por consiguiente, la reserva de recursos consiste en una reserva


virtual de buffers en el conmutador.
Los retardos son variables dada la existencia de buffers en los nodos.

Las redes de conmutacin de paquetes implementan conmutadores con 2 3


niveles y las funciones que se realizan en cada nivel son totalmente dependientes
de la red de conmutacin de paquetes. Por ejemplo, el nivel de enlace Frame Relay
y ATM realizan algunas funciones parecidas (usan identificadores de circuito virtual
en nivel 2), pero tambin realizan funciones muy distintas (encapsulado distinto,
sincronismo de trama distinto, funciones de control de trfico y de la congestin
distintos, ...).
Tablas de Circuitos Virtuales.
La decisin del camino a seguir por los paquetes se hace durante la fase del
establecimiento de la conexin. Una vez decidida la ruta hay que reservar los
recursos en los enrutadores.
Para poder identificar los paquetes de los distintos circuitos virtuales, los paquetes
incluyen un identificador de circuito virtual en la cabecera. Este identificador es local
a cada enrutador. Durante el establecimiento de la conexin, se indica con un
identificador en el paquete de conexin que circuito virtual atravesar ese enrutador
y que vendr por un puerto de entrada Pin y saldr por un puerto de salida Pout. El
identificador VCI del paquete de entrada viene fijado por el enrutador anterior, el
que est conectado al puerto Pin. Como este identificador VCI podra estar siendo
utilizado por un circuito virtual del enlace de salida, el enrutador escoge un
identificador VCI libre, y que no tiene porque ser el mismo que el de entrada y lo
asigna a este circuito virtual.
De esta forma los paquetes que entran con un identificador VCI, pueden salir del
enrutador con un identificador VCI distinto. El enrutador guarda una tabla donde se
indica para cada puerto de entrada, los identificadores VCI que estn activos y a
que puerto de salida y con que identificador VCI van a salir los paquetes.
Retardos
Los retardos de los paquetes son difciles de calcular ya que estos son variables. Se
puede aproximar el clculo por un retardo medio. As en la figura se representa la
transmisin de varios paquetes entre el transmisor y el receptor. En este ejemplo

http://www.tonet.jazztel.es

173

los paquetes siguen siempre la misma ruta y atraviesan N nodos intermedios. En


vertical es la escala del tiempo.

El retardo de la fase de transmisin se puede dividir en el retardo de propagacin


(Tp ) entre los nodos de acceso y el retardo de transmisin. Para calcular este ltimo
hay que tener en cuenta el retardo medio en los buffers. Supongamos que en media
haya B paquetes en los buffers, lo que significa que cuando llega un paquete tarda
un tiempo BTt en ser procesado. Por otro lado, si consideramos una transmisin de
n paquetes y que hay que atravesar N nodos, y por tanto N-1 enlaces, el tiempo de
transferencia T transf valdr
Ttransf = Tconex + Tdesconex + Tp + n (Tt +BTt ) + (N-1) (Tt +BTt ) + Tt
El retardo de transferencia depende de
el nmero de paquetes transmitidos,
el nmero de nodos que se atraviesan y
del retardo medio en los buffers.
Casos particulares en el clculo del retardo de transferencia son:
caso de B=0 (encuentra los nodos vacos y slo tarda una transmisin por
nodo):
Ttransf = Tconex + Tdesconex + Tp + nTt +NTt
caso n=1 (Tiempo de transferencia de un slo paquete):
Ttransf = Tconex + Tdesconex + Tp + N (B + 1) Tt + Tt

20.3.Tipos de redes WAN


Fundamentalmente son de 3 tipos: red pblica, red privada y red privada virtual
Red pblica:

http://www.tonet.jazztel.es

174

Es una red que alquila lneas de comunicacin a usuarios (clientes) para


conectarlos con otros usuarios o con servidores.
En estas redes. el usuario no administra las lneas de comunicaciones, stas
son administradas por la operadora de telecomunicaciones.
Estas redes suelen usar tecnologa WAN y los protocolos correspondientes a la
misma.
Red privada:
Es una red que administra sus propias lneas de comunicaciones
Estas redes pueden usar tecnologa LAN o WAN
Red privada virtual
Es una red privada, es decir, administrada por el dueo de la red, pero que usa
una red pblica, es decir, administrada por una operadora, para interconectar a
sus usuarios.
Estas redes pueden usar tecnologa LAN o WAN

22.1.Tipos de enlaces
Los tipos de enlaces que en realidad son lneas de comunicaciones se pueden
agrupar en dos tipos en funcin del tipo de transmisin:
-

Comunicaciones analgicas, tales como las lneas telefnicas convencionales


(RTC) y

Comunicaciones digitales.

En cuanto a las comunicaciones analgicas, que en principio tambin son de


conmutacin por circuito, pueden ser:
-

mediante llamada, como es el caso de la llamada telefnica convencional o

dedicada, es decir, una comunicacin fija y permanente las 24 horas del da.
Tambin se les llama punto a punto.

En cuanto a las lneas de comunicaciones digitales, hay tres tipos:


-

conmutacin por circuito. En este caso tambin puede ser mediante llamada o
lnea dedicada. Un ejemplo es el de RDSI.

conmutacin por mensajes. Es el caso del X.25, Frame Relay y ADSL.

conmutacin por celdas. Es el caso de ATM.

http://www.tonet.jazztel.es

175

22.2.Sistemas de transmisin digital


Los sistemas de transmisin digital estn basados en la digitalizacin de los canales
de voz (PCM). El canal bsico es de 64 kbps.
En RDSI se define 2 tipos de accesos :

el bsico (BRI) (2B + D), que consta de 2 canales B y un canal D de 16 kbps, con
un ancho de banda total de 144 kbps y

el primario (PRI) (30B + D), que consta de 30 canales B y un canal de 128 Kbps
(8 canales D de 16 kbps), con un ancho de banda total de 2 Mbps

En comunicaciones la jerarqua de canales europea es la siguiente:


Velocidad

Sistema

Nmero de
canales

E1

2048 Kbps

1er. orden

30

E2

8448 Kbps

2 orden

E3

34368 Kbps

E4

Canales de
sincronismo

Nombre
vulgar

128 Kbps(2)

2 Mbps

120

768 Kbps(12)

8 Mbps

3er. orden

480

3648 Kbps(57)

34 Mbps

139264 Kbps

4 orden

1920

16384 Kbps(256) 140 Mbps

E-5

564992 Kbps

5 orden

7680

73472 Kbps(1148) 565 Mbps

E-6

2488000 Kbps

6 orden

30720

521920 Kbps(8155)

2,5 Gbps

As en Europa una lnea digital E1 consta de 30 canales de voz de 8 bits/canal ms


2 canales de sincronizacin: L t =32*8=256 bits con una duracin de 0,125 ms para
una V t =2,048 Mbps. Las sucesivas etapas de multiplexacinson: E2 (120 canales
de voz), E3 (480 canales de voz =34,368 Mbps) ...
En todos los casos tiene que cumplirse que Vef Vef i (para i =1N). Eso significa
que si tenemos un enlace E3 a 34,368 Mbps con 480 canales de 64 Kbps, su
velocidad de transmisin para sincronismo vale
34,368 Mbps - 480 * 64 Kbps = 34,368 Mbps - 30,72 Mbps = 3,648 Mbps
es decir, 3,648 Mbps se dedican a transportar bits o canales de sincronismo (por
ejemplo 3,648 Mbps / 64 Kbps = 57 canales a 64 Kbps para sincronismos).
Sin embargo en EEUU y Japn, el equivalente al E1 es el DS -1 o T1 que consta de
24 canales de voz de 8 bits/canal ms 1 bit de sincronizacin al principio de cada
trama: L t =24*8+1=193 bits con una duracin de 0,125 ms para una V t =1,544
Mbps. Asimismo tiene su jerarqua equivalente para los niveles de mayor velocidad.

22.3.RDSI (Red Digital de Servicios Integrados)

http://www.tonet.jazztel.es

176

Red Digital de Servicios Integrados (RDSI), en ingls ISDN, se basa en la


tecnologa de conmutacin de circuitos. Es un sistema digital de comunicaciones
que permite el enlace entre distintas redes de datos. Este sistemas de
comunicaciones no solo permiten transmitir datos sino tambin voz.
Sus caractersticas principales son :
Multiplexado por divisin de tiempo (TDM)
Asignacin esttica de ancho de banda
Time slots fijos
Tiempo de latencia fijo, pequeo y predecible
Trfico iscrono
Componentes bsicos
Los componentes de RDSI incluyen terminales, adaptadores de terminal (TA),
dispositivos de terminacin de red (NT), equipo de terminacin de lnea y equipo de
terminacin de intercambio. La tabla suministra un resumen de los componentes
de RDSI.
Equipo de terminal tipo 1
(ET1)

Designa un dispositivo que es compatible


con la red RDSI. Un ET1 se conecta a un
TR1 o TR2.

Equipo de terminal tipo 2


(ET2)

Designa un dispositivo que no es


compatible con la red RDSI y requiere un
adaptador de terminal (AT).

Adaptador de terminal (AT)

Convierte seales analgicas a digitales


compatibles con RDSI.

Terminacin de red tipo 1


(TR1)

Conecta el cableado de RDSI de 4 hilos a


la instalacin convencional de 2 hilos.

Terminacin de red tipo 2


(TR2)

Es un dispositivo al que se pueden


conectar uno o varios equipos de terminal
1 (TE1) o adaptadores de terminal (AT), y
que realiza funciones de concentracin y
conmutacin.

Los terminales RDSI son de dos tipos, Tipo 1 o Tipo 2. Los terminales
especializados RDSI se denominan equipo de terminal de tipo 1 (ET1). Los
terminales que no son RDSI, como el equipo terminal de datos (DTE), ms antiguos
que los estndares RDSI, se denominan equipo de terminal de tipo 2 (ET2). Los
ET1 se conectan a la red RDSI a travs de un enlace digital de par trenzado de
cuatro cables. Los ET2 se conectan a la red RDSI a travs de un AT. El AT RDSI
puede ser un dispositivo autnomo o una placa dentro del ET2. Si el ET2 se
implementa como un dispositivo autnomo, se conecta al AT a travs de una
interfaz estndar de la capa fsica.
Ms all de los dispositivos ET1 y ET2, el siguiente punto de conexin en la red
RDSI es el dispositivo de terminacin de red de tipo 1 (TR1) o de terminacin de

http://www.tonet.jazztel.es

177

red de tipo 2 (TR2). Estos son dispositivos de terminacin de red que conectan el
cableado de cuatro cables del suscriptor con el bucle local de dos cables
convencional. En Estados Unidos, TR1 es un dispositivo del equipo terminal del
abonado (CPE). En la mayora de los pases del mundo, adems de Estados
Unidos, TR1 forma parte de la red suministrada por la portadora. TR2 es un
dispositivo ms complicado, que habitualmente se encuentra en los intercambios
privados de ramas (PBX) digitales, que ejecutan servicios de protocolo de nivel 2 y
nivel 3. Tambin hay un dispositivo TR1/2, que es un dispositivo nico que combina
las funciones de TR1 y TR2.
S

ET1

TR2
R

U
TR1

ET2

AT

Puntos de referencia
Los puntos de referencia son un conjunto de especificaciones que definen la
conexin entre dispositivos especficos, segn sus funciones en la conexin de
extremo a extremo. En la tabla siguiente se detalla cada uno de ellos.
R

Punto de conexin entre un dispositivo no


compatible con RDSI y un adaptador de
terminal (AT)

Punto de conexin de un TR2 con los


dispositivos compatibles con RDSI, es decir,
ET1 y ET2

Punto de conexin de un TR2 con un TR1

Punto de conexin entre un TR1 y la red


RDSI de la empresa de comunicaciones.

Canales: tipos
Este tipo de comunicaciones consta de 2 tipos de canales,
el canal B que se emplea para la transmisin de datos y tiene un
ancho de banda de 64 Kbps y
el canal D que se emplea como canal de sealizacin con una
velocidad de 16 Kbps.
El canal B funciona a nivel del red (3) segn el modelo de referencia OSI, mientras
que el canal D o de sealizacin slo funciona a nivel fsico (1).

http://www.tonet.jazztel.es

178

El RDSI define 2 tipos de accesos :


el bsico (BRI) (2B + D), que consta de 2 canales B y un canal D,
con un ancho de banda total de 144 kbps y
el primario (PRI) (30B + D), que consta de 30 canales B y un canal D,
con un ancho de banda total de 2 Mbps
En Estados Unidos, el tipo de acceso primario consta de 23 canales B y un canal D
con un ancho total de 1,544 Mbps
Canal D
Este canal de sealizacin emplea protocolos que comprenden los 3 primeros
niveles, fsico, enlace y red, del modelo de referencia OSI. Asimismo se basa en la
recomendacin SS7.
Las recomendaciones del CCITT empleadas en cada nivel son
Nivel red

Q.930/I.450 y Q.931/I.451

Nivel enlace Q.920/I.440 y Q.921/I.441


Nivel fsico

I.430 para el acceso bsico 0 I.431 para lnea


multiplex primaria, con cable de cobre de 2 y
4 hilos

A nivel de enlace se utiliza el protocolo LAPD, protocolo orientado al bit. Se basa en


los estndares (HDLC) de la OSI (ISO 3309 a ISO 4355) y trabaja en modo de
operacin asncrono balanceado.
Las terminales no pueden transmitir al canal D a menos que antes detecten una
cantidad especfica de unos (que indica que no hay seal) correspondiente a una
prioridad preestablecida.
Canal B
Este canal B solo se emplea en la transmisin de datos, por lo que solo se emplea
el nivel fsico, siendo sus recomendaciones las mismas del canal D, es decir, I.430
para el acceso bsico 0 I.431 para lnea multiplex primaria, con cable de cobre de 2
y 4 hilos.
Transmisin
En una transmisin de datos de RDSI, el flujo de bits que se transmite comprende
no solo los de canal de datos B y el de sealizacin D, sino tambin otros bits
auxiliares o complementarios tales como bits de activacin, de alineacin de trama,
de equilibrado, de multitrama, etc.
Los bits del canal D se intercalan entre los octetos del canal B, y los octetos de los
distintos canales B tambin viajan intercalados, es decir, si es un acceso bsico con
2 canales B, primero se enva un octeto del canal 1 del B, luego un octeto del canal
2, otro del 1, y as sucesivamente.

http://www.tonet.jazztel.es

179

22.4.Frame Relay
El Frame Relay es un protocolo de comunicaciones digital que se basa en la
conmutacin de paquetes.
Sus caractersticas principales son :
-

Empleo de multiplexado estadstico, es decir, TDM asncrono

Transmisin orientada a la conexin

Asignacin dinmica del ancho de banda

Paquetes de longitud variable, por consiguiente el retardo es variable.

Tiempo de latencia alto e impredecible

Se trata de un protocolo que opera en los niveles fsico y de enlace de datos del
modelo de referencia OSI, es decir, emplea conmutacin a nivel 2.
En cuanto al control de errores y control de flujo depende de los protocolos de nivel
superior como TCP.
Su velocidad de transmisin puede llegar hasta 2 Mbps.

Hay 3 conceptos importantes en cuanto al protocolo Frame Relay y son :


-

Data link connection identifier (DLCI). El DLCI es el identificador de cada enlace


de comunicacin, es decir, es el equivalente a una direccin. Los mensajes
Frame Relay contienen esta informacin, as se sabe su origen y destino. El
trfico es multiplexado utilizando varios DLCIs por cada enlace fsico, es decir,
un enlace fsico puede soportar uno o ms enlaces virtuales.

Circuitos virtuales permanentes (PVC). Los PVCs son enlaces predefinidos a


travs de la red Frame Relay y que conectan dos sistemas finales. Son enlaces

http://www.tonet.jazztel.es

180

lgicos identificados cada uno de ellos por su DLCI. Estos enlaces son de
carcter permanente y se establecen de esta forma.
-

Circuitos virtuales conmutados (SVC). A diferencia de los PVCs, los SVCs no


estn permanentemente definidos en la red Frame Relay. El equipo terminal
conectado requiere una llamada de inicio para establecer un circuito virtual antes
de una transmisin de datos. Las caractersticas de esta transmisin se
especifican en esta llamada. Asimismo cuando se termina la transmisin, se
cierra en enlace y el DLCI se libera para su uso posterior.

Una de las ventajas del Frame Relay es que los conmutadores utilizan una tabla de
enrutamiento con el formato que se ha detallado en el apartado anterior, es decir,
Puerto
entrada

DLCI
entrada

Puerto
salida

DLCI
salida

Esto ocupa muy poco espacio y por tanto cabe en memoria, y adems como tiene
pocos elementos, es de un manejo extremadamente rpido, por lo que se
introducen unos retardos mnimos en el trfico Frame Relay.
Con el fin de poder gestionar el trfico de cada enlace, ya sea permanente PVC o
temporal SVC), hay un conjunto de parmetros que son los siguientes:

Velocidad de la lnea. Es la velocidad nominal de la lnea.

Commited Information Rate (CIR). Es el ancho de banda comprometido a


utilizar en condiciones normales. Esta velocidad es el promedio en un
perodo de tiempo. El CIR tambin se refiere al mnimo ancho de banda
aceptable. El CIR puede ser inferior o igual a la velocidad de la lnea, es
decir, el DTE puede enviar mensajes a mayor velocidad que el CIR.

22.5.ADSL
El ADSL es un sistema digital de comunicaciones, que se emplea
fundamentalmente para la transmisin de datos mediante la utilizacin de los cables
de cobre existentes para telefona analgica o digital. Con los modems habituales
se llega como mximo a 56 Kbps y con la tecnologa ADSL se sobrepasa en mucho
este ancho de banda.
Un circuito ADSL conecta un adaptador ADSL a cada extremo de una lnea
telefnica convencional, creando tres canales de informacin:
un canal de alta velocidad en direccin al usuario,
un canal dplex de velocidad media, que depende de la
implementacin de la arquitectura ADSL, y

http://www.tonet.jazztel.es

181

un POTS (Plain Old Telephone Service) o un canal RDSI. El canal


POTS/RDSI se separa del adaptador digital mediante filtros, y as se
garantiza una conexin POTS/ISDN, aunque el ADSL falle.
La velocidad del canal rpido es de 1,5 a 6,1 Mbps, mientras que la del dplex es
de 16 a 832 Kbps. Cada canal puede ser submultiplexado con el fin de generar
mltiples canales de menor velocidad, dependiendo del sistema.
Los adaptadores ADSL tienen una configuracin mnima de 1,5 o 2,0 Mbps en
direccin al usuario y un canal dplex de 16 Kbps; otras empresas ofrecen
velocidades de 6,1 Mbps y 64 Kbps para el dplex. Los productos que hay
actualmente en el mercado soportan hasta 8 Mbps en una direccin y hasta 640 en
el dplex.
La velocidad mxima soportada depende de varios factores tales como la longitud
de la lnea de cobre, su seccin, la presencia de puentes y las interferencias
existentes. La atenuacin de la lnea aumenta con la longitud y la frecuencia y
disminuye si aumenta la seccin.
A continuacin hay una tabla orientativa de las velocidades que se pueden llegar a
obtener en funcin de estos valores.
Velocidad

Wire Gauge

Longitud

Seccin

Distancia

1,5 o 2 Mbps

24 AWG

18.000 ft

0,5 mm

5,5 km

1,5 o 2 Mbps

26 AWG

15.000 ft

0,4 mm

4,6 km

6,1 Mbps

24 AWG

12.000 ft

0,5 mm

3,7 km

6,1 Mbps

26 AWG

9.000 ft

0,4 mm

2,7 km

En el caso peor en cuanto a la existencia de ruido, se obtiene un caudal de 2 Mbps


en sentido descendente y 0,9 Mbps en sentido ascendente hasta una distancia de
2,6 Km. de la central. Esto supone que en la prctica, teniendo en cuenta la longitud
media del bucle de abonado en las zonas urbanas, la mayor parte de los usuarios
estn en condiciones de recibir por medio del ADSL un caudal superior a los 2
Mbps. Este caudal es suficiente para muchos servicios de banda ancha, y desde
luego puede satisfacer las necesidades de cualquier internauta, teletrabajador as
como de muchas empresas pequeas y medianas.
Comparacin con los modems
El ADSL es una tcnica de modulacin para la transmisin de datos a gran
velocidad sobre el par de cobre. La primera diferencia entre esta tcnica de
modulacin y las usadas por los modems en banda vocal (V.32 a V.90) es que
estos ltimos slo transmiten en la banda de frecuencias usada en telefona (300
Hz a 3400 Hz), mientras que los modems ADSL operan en un margen de
frecuencias mucho ms amplio que va desde los 24 KHz hasta los 1104 KHz,
aproximadamente.
Otra diferencia entre el ADSL y otros modems es que el ADSL puede coexistir en
un mismo bucle de abonado con el servicio telefnico. Basta con ver que trabajan

http://www.tonet.jazztel.es

182

en bandas de frecuencia distintas, lo que no es posible con un mdem convencional


ya que funciona en la banda vocal, la misma que la telefona.
Tecnologa
ADSL depende de los avances tecnolgicos sobre el procesamiento de las seales
digitales y los algoritmos para transmitir la informacin sobre el par telefnico.
Adems se han requerido muchos avances en transformadores, filtros analgicos y
convertidores A/D. Las lneas telefnicas largas pueden atenuar las seales de
hasta 1 Mhz hasta 90 dB, forzando a que las partes analgicas de los adaptadores
ADSL trabajen muy forzados, separando canales y manteniendo valores bajos de
ruido. Desde fuera, el ADSL parece sencillo, ya que consta de canales
transparentes de datos sncronos a distintas velocidades sobre las lneas
telefnicas convencionales.
Para crear mltiples canales, los adaptadores ADSL dividen el ancho de banda
disponible de una lnea telefnica de dos formas, por Frequency Division
Multiplexing (FDM) o por Echo Cancellation. FDM asigna una banda en un sentido y
otra en el sentido contrario. En la direccin al usuario, se emplea multiplexacin por
TDM en uno o ms canales de alta velocidad. En el sentido desde el usuario, se
multiplexa en los correspondientes canales de baja velocidad. Con Echo
Cancellation, se asigna la banda que viene del usuario encima de la que va hacia
l, y se separan ambas por medio de local echo cancellation, una tcnica bien
conocida en los modems V.32 y V.34. Con cualquiera de estas tcnicas, ADSL
separa un canal de 4 kHz para POTS al final de la banda.
Un adaptador ADSL organiza el flujo de datos creado por multiplexacin de los
canales en direccin al usuario, canales dplex y canales de mantenimiento juntos
en bloques, y aade un cdigo de correccin de error a cada uno de ellos. El
receptor as puede verificar y corregir los errores generados durante la transmisin
junto con la longitud del mismo especificado en el bloque. Tambin pueden crearse
superbloques juntando subbloques. As permite una eficiente transmisin de
seales de datos y vdeo.
Descripcin de la modulacin
Al tratarse de una modulacin en la que se transmiten diferentes caudales en los
sentidos Usuario -> Red y Red -> Usuario, el mdem ADSL situado en el extremo
del usuario es distinto del ubicado al otro lado del bucle, es decir, en la central local.
As en los modems situados en casa del usuario (ATU-R o "ADSL Terminal UnitRemote) y en los de la central (ATU-C o "ADSL Terminal Unit-Central"), se ha de
colocar delante de cada uno de ellos un dispositivo denominado "splitter". Este
dispositivo no es ms que un conjunto de dos filtros: uno paso alto y otro paso bajo.
La finalidad de estos filtros es la de separar las seales transmitidas por el bucle de
abonado, es decir, las seales de baja frecuencia (telefona) de las de alta
frecuencia (ADSL).

http://www.tonet.jazztel.es

ATU-C

Splitter

183

Splitter

ATU-R

Bucle de
abonado
de cobre
Voz
Central telefnica

Telefno
Domicilio del usuario

Modulacin
En una primera etapa, coexistieron dos tcnicas de modulacin para el ADSL:
CAP ("Carrierless Amplitude/Phase") y
DMT ("Discrete MultiTone").
Sin embargo los organismos de estandarizacin (ANSI, ETSI e ITU) se han
decantado por la solucin DMT. Esta solucin consiste bsicamente en el empleo
de mltiples portadoras y no slo una, que es lo que se hace en los modems de
banda vocal. Cada una de estas portadoras (denominadas subportadoras) es
modulada en cuadratura (modulacin QAM) por una parte del flujo total de datos
que se van a transmitir. Estas subportadoras estn separadas entre s 4,3125 KHz,
y el ancho de banda que ocupa cada subportadora modulada es de 4 KHz. El
reparto del flujo de datos entre subportadoras se hace en funcin de la estimacin
de la relacin Seal/Ruido en la banda asignada a cada una de ellas. Cuanto mayor
es esta relacin, tanto mayor es el caudal que puede transmitir por una
subportadora. Esta estimacin de la relacin Seal/Ruido se hace al comienzo de la
transmisin, es decir, cuando se establece el enlace entre el ATU-R y el ATU-C por
medio de una secuencia de entrenamiento predefinida. La tcnica de modulacin
usada es la misma tanto en el ATU-R como en el ATU-C. La nica diferencia estriba
en que el ATU-C dispone de hasta 256 subportadoras, mientras que el ATU-R slo
puede disponer como mximo de 32.
La modulacin es bastante complicada, pero el algoritmo de modulacin se traduce
en una IFFT (transformada rpida de Fourier inversa) en el modulador, y en una
FFT (transformada rpida de Fourier) en el demodulador situado al otro lado del
bucle. As el modulador del ATU-C, hace una IFFT de 512 muestras sobre el flujo
de datos que se ha de enviar en sentido "downstream". El modulador del ATU-R,
hace una IFFT de 64 muestras sobre el flujo de datos que se ha de enviar en
sentido "upstream". El demodulador del ATU-C, hace una FFT de 64 muestras
tomadas de la seal "upstream" que recibe. El demodulador del ATU-R, hace una
FFT, sobre 512 muestras de la seal "downstream" recibida.
Los espectros nunca se solapan con la banda reservada para el servicio telefnico
bsico (POTS o "Plain Old Telephone Service"), y en cambio s que se solapan con
los correspondientes al acceso bsico RDSI. Por ello el ADSL y el acceso bsico
RDSI son incompatibles.

http://www.tonet.jazztel.es

184

DSLAM
Como antes se ha explicado, el ADSL necesita una pareja de modems por cada
usuario: uno en el domicilio del usuario (ATU-R) y otro (ATU-C) en la central local a
la que llega el bucle de ese usuario.
Esto complica el despliegue de esta tecnologa de acceso en las centrales. Para
solucionar esto, surgi el DSLAM ("Digital Subscriber Line Access Multiplexer").
Este dispositivo consiste en un chasis que agrupa gran nmero de tarjetas, cada
una de las cuales consta de varios modems ATU-C, y que adems concentra el
trfico de todos los enlaces ADSL hacia una red WAN.

22.6.Modems en telefona mvil


Se trata de utilizar la telefona mvil como lnea de comunicaciones de transmisin
de datos. Para ello se necesita un mdem que funciona como un modem estndar
analgico de acceso telefnico que se conecta al ordenador o a un dispositivo a
travs de una interfaz serie y que se configura y llama con los comandos AT.
Cuando se diferencia es que utiliza una red celular inalmbrica para realizar la
conexin a travs de su antena en oposicin a una conexin fsica a una lnea
telefnica analgica. Ms all de la conexin, acta y funciona como un mdem
normal.
Los modems en telefona mvil funcionan de la misma forma que un mdem
analgico de acceso telefnico, excepto que convierten los datos digitales en
seales de radio y viceversa. Lo que es interesante es que la evolucin del mdem
a travs de una red de telefona mvil se ha producido a un ritmo mucho ms
rpido. De hecho el primer mdem para telefona mvil se desarroll en la dcada
de 1990 y en el transcurso de slo 14 aos sus velocidades han pasado de 9.600
bps a 153K bps. Estas velocidades se espera mejorar an ms como la tecnologa
evoluciona.
En la telefona mvil, hay dos estndares que compiten entre ellos: GPRS y CDMA,
que dado son incompatibles, el usuario debe decidir cual de ellos va a emplear.
La eleccin de una tecnologa se debe basar en la cobertura de la empresa, la
aplicacin que va a utilizar, entre otras cuestiones por ejemplo de ndole econmica.
Una diferencia importante entre las tecnologas CDMA es que es ms rpido que el
GPRS. Adems, CDMA es tambin ligeramente ms caro, tanto en el hardware y
en el servicio.
Con GPRS, el proceso de activacin del servicio de datos de telefona mvil es muy
similar a la activacin de un telfono mvil. Una vez que haya establecido una
cuenta con su compaa, la compaa proporcionar una tarjeta SIM (Subscriber
Identity Module). Esta tarjeta contiene todos los derechos de acceso, incluyendo la
identificacin de la facturacin. La tarjeta tambin incluye espacio de
almacenamiento para mensajes SMS y una agenda de telfonos. Se enchufa en
una ranura en la parte frontal del mdem inalmbrico. La tarjeta SIM se pueden

http://www.tonet.jazztel.es

185

intercambiar fcilmente con el nuevo hardware que le proporciona mayor flexibilidad


y movilidad.
Con CDMA, el mdem de telefona mvil, dependiendo de la compaa, utiliza la
tecnologa de activacin OTA (IP Over-The-Air). Tras la instalacin, el mdem de
forma inmediata y segura se registra en una red inalmbrica a travs de la
mensajera estndar de registro. La red inalmbrica identifica de forma automtica
el dispositivo a travs del Nmero de Serie Electrnico, recoge los datos del usuario
y completa la activacin. En la mayora de los casos, el mdem de telefona mvil
est preparado para varias empresas, lo que significa que necesita comprar un
modelo especfico segn sea la compaa.

22.7.Conmutacin de paquetes por datagrama


Se trata de una red tipo IP, es decir, una red de nivel 3, obviando los protocolos de
nivel 2.
En este caso la unidad de informacin es el datagrama y se trata de un servicio no
orientado a la conexin y no hay ningn tipo de reserva de recursos. La red de
paquetes se limita a hacer lo que puede, sin garantizar ningn tipo de calidad de
servicio (retardos o prdidas acotadas), ya que la red no sabe por donde van a
pasar los paquetes.
El encaminamiento de los paquetes se decide en el instante en que llega el paquete
a la red. Esta decisin se hace por paquete y no por conexin. De hecho no
podemos hablar de conexin ya que la red no considera que haya conexiones,
considera que hay paquetes que viajan por la red.
Los nodos de estas redes son nodos no dedicados, por ejemplo, los enrutadores.

Ahora ya no se identifican los paquetes con un identificador de circuito virtual ya


que no hay un circuito establecido. Para tomar decisiones de por que puerto de
salida hay que sacar el paquete, se utilizan las direcciones origen y destino del
paquete. Estas direcciones identifican la red al que pertenece el equipo terminal y al
mismo tiempo identifican al equipo terminal.
La red sigue usando buffers para almacenar los paquetes que llegan. Al no haber
una reserva de recursos (buffers), cuando llegan muchos paquetes, los buffers se
saturan producindose congestin. En este momento, lo normal es que el

http://www.tonet.jazztel.es

186

conmutador descarte paquetes. Es problema de la pila de protocolos en el origen, el


ser capaz de recuperar esta informacin, usando algn mecanismo de
retransmisiones, por ejemplo con el protocolo de nivel de transporte.
Los retardos son variables para cada paquete, ya que la ruta puede ser distinta
para cada uno de los paquetes. Como mucho se puede calcular el retardo medio
por paquete transmitido.
El tiempo de transferencia T transf se define como el tiempo que tarda en transmitirse
una informacin que consta de un bloque de bits. As su frmula es
T transf = Tt + T red_Dat
Donde
-

Tt es el tiempo de transmisin y

T red_Dat es el tiempo desde que entra en la red hasta que sale.

22.7.1.Enrutador
Un enrutador o router es un dispositivo de nivel 3 que conecta distintos segmentos
de una red. As si un host A (@IP A ) quiere enviar un paquete IP a otro host B
(@IP B ) que est en otro segmento distinto, se har a travs de un router que
conecte ambos segmentos.
Las principales funciones de un enrutador son:
Forwarding: envar paquetes de una subred a otra
Routing: decidir a que subred debe enviar un paquete que le llegue
de otra subred, es decir, decidir interficies de salida del router
Error messaging: notificar al host origen con un mensaje ICMP de
cualquier problema que le impida realizar un forwarding
Otras funciones:
Fragmentation and reassembly: (cada vez ms en desuso) debido al
uso del MTU Path Discovery
Quality of Service (QoS): cada vez ms en uso con la introduccin de
aplicaciones en tiempo real (Reserva de recursos)
Otras: balanceos de cargas, servicios multiprotocolo, seguridad
informtica (IPSec), proteccin de entrada en Intranets (firewalls), ....

22.7.2.Protocolo enrutable
Los protocolos como, por ejemplo, IP, IPX/SPX y AppleTalk suministran soporte de
nivel 3 y, en consecuencia, son enrutables. Sin embargo, hay protocolos que no
soportan la nivel 3, que se clasifican como protocolos no enrutables. El ms comn

http://www.tonet.jazztel.es

187

de estos protocolos no enrutables es NetBEUI. NetBeui es un protocolo pequeo,


veloz y eficiente que est limitado a ejecutarse en un segmento.
Para que un protocolo sea enrutable, debe brindar la capacidad para asignar un
nmero de red, as como un nmero de host, a cada dispositivo individual. Algunos
protocolos, tal como el protocolo IPX, slo necesitan que se le asigne un nmero de
red; estos protocolos utilizan una direccin MAC de host como el nmero fsico.
Otros protocolos como, por ejemplo, IP, requieren que se suministre una direccin
completa, as como tambin una mscara de subred. La direccin de red se obtiene
mediante una operacin AND de la direccin con la mscara de subred.

22.7.3.Protocolos de enrutamiento
Los protocolos de enrutamiento determinan las rutas que siguen los protocolos
enrutados hacia los destinos. Entre los ejemplos de protocolos de enrutamiento
estn el RIP, el IGRP, el EIGRP y el OSPF.
Los protocolos de enrutamiento permiten que los enrutadores conectados creen un
mapa interno de los dems enrutadores de la red o de Internet. Esto permite que se
produzca el enrutamiento (es decir, la seleccin de la mejor ruta y conmutacin).
Estos mapas forman parte de la tabla de enrutamiento de cada router.
Los enrutadores usan protocolos de enrutamiento para intercambiar tablas de
enrutamiento y compartir informacin de enrutamiento. Dentro de una red, el
protocolo ms comn que se usa para transferir la informacin de enrutamiento
entre enrutadores ubicados en la misma red es el RIP. El IGP calcula las distancias
hacia un host destino en trminos de cuntos saltos (es decir, cuntos
enrutadores) debe atravesar un paquete. El RIP permite que los enrutadores
actualicen sus tablas de enrutamiento a intervalos programables, generalmente
cada 30 segundos. Una de las desventajas de los enrutadores que usan RIP es que
constantemente se conectan con los enrutadores vecinos para actualizar sus tablas
de enrutamiento, generando as una gran cantidad de trfico de red.
El RIP permite que los enrutadores determinen cul es la ruta que se debe usar
para enviar los datos. Esto lo hace mediante un concepto denominado vectordistancia. Se contabiliza un salto cada vez que los datos atraviesan un router es
decir, pasan por un nuevo nmero de red, esto se considera equivalente a un salto.
Una ruta que tiene un nmero desaltos igual a 4 indica que los datos que se
transportan por la ruta deben atravesar cuatro enrutadores antes de llegar a su
destino final en la red. Si hay mltiples rutas hacia un destino, la ruta con el menor
nmero de saltos es la ruta seleccionada por el router.
Como el nmero de saltos es la nica mtrica de enrutamiento utilizada por el RIP,
no necesariamente selecciona la ruta ms rpida hacia su destino. Una mtrica es
una unidad de medicin que permite tomar decisiones y prximamente aprender
que otros protocolos de enrutamiento utilizan otras mtricas adems del nmero de
saltos para encontrar la mejor ruta de transferencia de datos. Sin embargo, el RIP
contina siendo muy popular y se sigue implementando ampliamente. La principal
razn de esto es que fue uno de los primeros protocolos de enrutamiento que se
desarrollaron.

http://www.tonet.jazztel.es

188

Otro de los problemas que presenta el uso del RIP es que a veces un destino
puede estar ubicado demasiado lejos como para ser alcanzable. El RIP permite un
lmite mximo de quince para el nmero de saltos a travs de los cuales se pueden
enviar datos. La red destino se considera inalcanzable si se encuentra a ms de
quince saltos del enrutador.

http://www.tonet.jazztel.es

189

23. Analizadores de paquetes


Un analizador de paquetes es una aplicacin que permite la captura de paquetes
para poder analizar su contenido. No se trata de una interceptacin, sino slo de
obtner una copia de los paquetes que se transmiten por la red.

23.1.Funciones
Entre las distintas funciones de un analizador de paquetes, podemos resaltar las
siguientes:

Decodificacin de los paquetes. Esta funcin puede ser on-line u off-line, y


consiste en extraer la informacin que contiene cada paquete, no slo los
datos, sino tambin el contenido de los distintos campos de cada protocolo.

Monitorizar el trfico de la red. Esta funcin consiste en cuantificar el ancho


de banda consumido por cada protocolo, y su desglose de acuerdo con las
direcciones origen y destino.

Conocer las razones de la existencia de cuellos de botella. Cuando hay un


cuello de botella en la red, los tiempos de respuesta de las aplicaciones en
red aumentan de forma importante. El anlisis de los paquetes de la red
permite conocer las causas de estos cuellos de botella y en consecuencia
actuar sobre los dispositivos de gestin para hacer frente a estos cuellos de
botella.

Detectar la actividad ilegal.

23.2.Funcionamiento
Un analizador de paquetes es un analizador de protocolo destinado a capturar los
paquetes que son vistos por la tarjeta de red (NIC) del ordenador. Cuando un
analizador de paquetes se ejecuta en un sistema, graba todos los paquetes que
entran y sale de la tarjeta de red (NIC) del ordenador en el que est instalado el
analizador de paquetes. Esto significa que, si la tarjeta de red est configurada en
modo promiscuo, entonces recibir todos los paquetes enviados a la red si la red
est conectada a un concentrador. Por desgracia, en una red conmutada, dado que
no hay difusin de paquetes, los analizadores de paquetes no puede ver cualquier
paquete que no tenga la direccin de destino del ordenador en la que est
instalado. Desde el punto de vista de la seguridad, un ataque satisfactorio a un
analizador de paquetes en modo promiscuo puede ser muy peligroso.

http://www.tonet.jazztel.es

190

23.3.Modo promiscuo o no promiscuo


Los controladores de nivel 1 de las tarjetas de red (NIC) por defecto estn
configuradas de forma que si la direccin MAC de destino de los paquetes no
coincide con la suya, los paquetes no son procesados. De esta forma no se
sobrecarga el procesador, ya que al principio de las redes Ethernet, que estaban
dotadas de concentradores en vez de conmutadores, todos los paquetes de una
LAN eran recibidos por todos los ordenadores de la LAN.
En la actualidad no es as, pero las configuraciones por defecto siguen de esta
manera. A este modo de trabajar se le llama modo no promiscuo. Sin embargo si se
quieren analizar todos los paquetes de la LAN, se tiene que configurar la tarjeta de
red como modo promiscuo. Insisto en que es bsico que a la tarjeta de red le
lleguen los paquetes, ya que si hay un filtraje en algn punto de la LAN, y hace que
no le lleguen, es indiferente que la tarjeta de red est en modo promiscuo o no.

23.4.Formato de un paquete IP
El formato de un paquete IP capturado por un analizador de paquetes puede ser
por ejemplo el siguiente:
------------ ETHER Header -----------ETHER: Destination: 00-20-18-3A-00-16
ETHER: Source: 00-20-18-3A-0A-12
ETHER: Protocol: IP
ETHER: FCS: DEF66737
------------ IP Header -----------IP: Version = 4
IP: Header length = 20
IP: Differentiated Services (DS) Field = 0x00
IP:
0000 00.. DS Codepoint = Default PHB (0)
IP:
.... ..00 Unused
IP: Packet length = 52
IP: Id = 121
IP: Fragmentation Info = 0x4000
IP:
.1.. .... .... .... Don't Fragment Bit = TRUE
IP:
..0. .... .... .... More Fragments Bit = FALSE
IP:
...0 0000 0000 0000 Fragment offset = 0
IP: Time to live = 64
IP: Protocol = TCP (6)
IP: Header checksum = C37B
IP: Source address = 147.83.40.67
IP: Destination address = 147.83.40.68
------------ TCP Header -----------TCP: Source port = 1031
TCP: Destination port = telnet (23)
TCP: Sequence number = 3513537882
TCP: Ack number = 3620132009
TCP: Data offset = 32
TCP: Flags = 0x11
TCP:
..0. .... URGENT Flag = FALSE
TCP:
...1 .... ACK Flag = TRUE
TCP:
.... 0... PUSH Flag = FALSE
TCP:
.... .0.. RST Flag = FALSE
TCP:
.... ..0. SYN Flag = FALSE
TCP:
.... ...1 FIN Flag = TRUE
TCP: Window = 32120

http://www.tonet.jazztel.es

191

TCP: Checksum = E036


TCP: Urgent pointer = 00000000
TCP: Options = (nop,nop,tsval = 736556 tsecr = 366040)

En este paquete se puede ver la cabecera Ethernet, la cabecera IP y tambin la


cabecera del nivel de transporte, en este caso, el protocolo TCP. Si analizamos los
campos de la cabecera IP, sus valores son:

Versin IP del paquete:

Versin 4

Longitud de la cabecera:

20 octetos

Longitud total del paquete: 52 octetos (20 de cabecera + 20 de datos)

Identificador: 0 (identifica que no hay fragmentacin de paquetes)

Time to live: 64

Direccin origen: 147.83.40.68

Direccin destino: 147.83.40.67

23.5.Formato de un paquete TCP


El formato de un paquete TCP capturado por un analizador de paquetes puede ser
por ejemplo el siguiente:
------------ TCP Header -----------TCP: Source port = 1031
TCP: Destination port = telnet (23)
TCP: Sequence number = 103822598
TCP: Ack number = 160466417
TCP: Data offset = 32
TCP: Flags = 0x11
TCP:
..0. .... URGENT Flag = FALSE
TCP:
...1 .... ACK Flag = TRUE
TCP:
.... 0... PUSH Flag = FALSE
TCP:
.... .0.. RST Flag = FALSE
TCP:
.... ..0. SYN Flag = FALSE
TCP:
.... ...1 FIN Flag = TRUE
TCP: Window = 32120
TCP: Checksum = E036
TCP: Urgent pointer = 00000000
TCP: Options = (nop,nop,tsval = 736556 tsecr = 366040)

En este paquete solo se muestra la parte del protocolo TCP, dado que ira incluido
en un paquete IP que se ha mostrado en el apartado anterior. Si analizamos los
campos de la cabecera TCP, sus valores son:

Puerto origen: 1031 (16 bits)

Puerto destino: 23 (16 bits), correspondiente a la aplicacin telnet

Nmero de secuencia: El nmero de secuencia del primer octeto de datos


del segmento.

Nmero de ACK: Si el bit ACK vale 1, este campo contiene el nmero de


secuencia siguiente al de recepcin.

Longitud datos: 32 octetos.

Flags: Campo de 6 bits que contiene las funciones de control:

http://www.tonet.jazztel.es

192

URGENT: Puntero de emergencia

ACK: Campo de acuse de recibo

PSH: Implica que la aplicacin ha solicitado enviar los datos


existentes en la memoria temporal.

RST: Campo de interrupcin de la conexin actual.

SYN: Campo de la sincronizacin de los nmeros de secuencia.

FIN: Campo que indica a la aplicacin de que no hay ms datos a


transmitir.

Window: Campo de 16 bits que indica cuantos octetos tiene la ventana de


transmisin del protocolo de control de flujo en el mecanismo de ventana
deslizante.

Checksum: Campo de 24 bits que contiene la suma de la comprobacin de


errores.

Urgent Pointer: Campo de 8 bits que se utiliza cuando se envan datos


urgentes con preferencia sobre los dems.

Options: Puede estar presente o no y sus opciones son:

Timestamp: Sirve para monitorizar los retardos

Aumento del tamao de la ventana (Window)

Indicar el tamao mximo del segmento que se puede enviar.

23.6.Formato de un paquete HTTP


Se trata de un ejemplo de un protocolo de nivel de aplicacin y que por lo tanto
debe ir dentro de paquete de un protocolo de nivel de transporte TCP/UDP y este a
su vez en un paquete de un protocolo de nivel red como es el protocolo IP. Ambos,
el IP y el TCP, ya se han mostrado en los apartados anteriores.
En el caso del protocolo HTTP, hay tres tipos de cabeceras: General Headers,
Request Headers y Entity Headers. En el ejemplo en cuestin solo se muestra la
Request Headers y es la siguiente:
------------ HTTP Header -----------HTTP: Full Request
HTTP: Method= GET
HTTP: Request-URI= /
HTTP: HTTP-version= HTTP/1.1
HTTP: Host= www.google.com
HTTP: User-Agent= Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.1) Gecko/20020830
HTTP:
Accept=text/xml,application/xml,application/xhtml+xml,text/html;
q=0.9,text/plain;q=0.8,video/xmng,image/png,image/jpeg,image/gif;q=0.2,text/css,*/*;q=0.1
HTTP: Accept-Language= en-us, en;q=0.50
HTTP: Accept-Encoding= gzip, deflate, compress;q=0.9
HTTP: Accept-Charset= ISO-8859-1, utf-8;q=0.66, *;q=0.66
HTTP: Keep-Alive= 300
HTTP: Connection= keep-alive

Si analizamos los campos de la cabecera HTTP, sus valores son:

http://www.tonet.jazztel.es

193

Tipo de peticin: Full-Request (peticin completa)

Mtodo: GET. Este mtodo significa que el cliente desea obtener el


recurso especificado en el URI de la peticin. Otros mtodos: head,
post, put, delete, link y unlink

Request-URI: es parte del Request-Line e identifica el objeto al que se


aplicar el mtodo solicitado.

Versin del protocolo: HTTP 1.1

Host, pgina web solicitada

User-Agent: Equipo y software desde donde se realiza la peticin

Otros parmetros del protocolo dan informacin sobre el idioma, el


formato de compresin i la tabla de caracteres utilizada.

http://www.tonet.jazztel.es

194

24. Gestin de redes


La gestin de una red se refiere a las actividades, mtodos, procedimientos y
herramientas que pertenecen a la operacin, la administracin, el mantenimiento y
el aprovisionamiento de los sistemas en red.
La operacin se ocupa de que la red est en funcionamiento sin problemas. Esto
incluye la monitorizacin de la red para detectar problemas tan pronto como sea
posible, idealmente antes de que los usuarios se vean afectados.
La administracin se ocupa de hacer el seguimiento de los recursos en la red y
cmo se asignan. Incluye todas las operaciones que son necesarias para mantener
la red bajo control.
El mantenimiento se ocupa de realizar las reparaciones y mejoras, por ejemplo
cuando un equipo debe ser reemplazado, cuando un enrutador necesita un parche
en su sistema operativo, cuando se aade un nuevo conmutador a la red. El
mantenimiento tambin incluye medidas preventivas y correctivas para que la red
funcione mejor, tales como el ajuste de los parmetros de configuracin de cada
uno de los dispositivos de la red.
El aprovisionamiento se refiere a la configuracin de recursos en la red para dar
soporte a un determinado servicio. Por ejemplo, esto podra incluir la configuracin
de la red para que un nuevo usuario puede recibir servicio de voz.
Tambin hay que saber que hay dos aspectos importantes en las redes TCP/IP, el
encaminamiento y la utilizacin del ancho de banda, cuya gestin es muy
importante.

24.1.Monitorizacin de las redes


Se utiliza el trmino monitorizacin para designar el tipo de acciones consistentes
en obtener informacin de la red con el fin de detectar anomalas. Estas acciones
son pasivas y su nico objetivo es conocer el comportamiento respecto al trfico del
sistema. Una vez se conoce el sistema se puede proceder al control: para ello se
establece una sealizacin o plano de control en toda red que se ocupa de regular
activamente las comunicaciones y, en general, el trfico de la red.
En el proceso de monitorizacin de la red se consideran una serie de aspectos
como son: en primer lugar, una definicin de la informacin de gestin que se
monitoriza, una forma de acceso a la informacin de monitorizacin, un diseo de
los mecanismos de monitorizacin y, finalmente, un procesado de la informacin de
monitorizacin obtenida. Por otra parte, la informacin de monitorizacin puede
clasificarse segn su naturaleza temporal en: informacin esttica que se almacena
en los elementos monitorizados (p.e. inventario); informacin dinmica que se

http://www.tonet.jazztel.es

195

almacena en los propios elementos o en equipos especializados (p.e. cambios de


estado o fallos) e informacin estadstica que se genera a partir de la informacin
dinmica y que puede residir en cualquier lugar que tenga acceso a la informacin
dinmica (p.e. Rendimientos).
Para la monitorizacin se utilizan los analizadores de paquetes descritos en el
captulo anterior.

24.2.Gestin por niveles


En la gestin de una red de ordenadores debe tenerse en cuenta que estas
funcionan de acuerdo con un nivel de protocolos. As a nivel hardware, debemos
controlar el correcto funcionamiento del mismo y en especial de la tarjeta de red
(NIC). Por ello es muy general la existencia de un indicador luminoso en la tarjeta
de red o en algn lugar del ordenador.
En cuanto a los protocolos de red y transporte, habitualmente TCP/IP, sus
controladores son piezas de programacin. La verificacin de su correcto
funcionamiento pasa por abrir una ventana del sistema, ejecutando el comando
cmd. Una vez en esta ventana, ejecutaremos
ping 127.0.0.1
y si la respuesta es correcta, significa que los controladores TCP/IP estn
correctamente instalados. Eso se puede hacer con el ordenador conectado a la red
o no, dado que es una verificacin interna del propio ordenador.
A continuacin conectaremos el ordenador a la red, y necesitaremos conocer la
direccin IP del ordenador. Para ello dependiendo del sistema operativo utilizado,
ejecutaremos el comando ipconfig o ifconfig o uno equivalente.
Ahora en la ventana del sistema, ejecutaremos
ping (direccin IP del ordenador)
Si la respuesta es correcta, significa que el protocolo TCP/IP funciona
correctamente en esta red.
Con todo esto hay que hacer una ltima verificacin en cuanto a la configuracin
del DNS. Para ello en la ventana del sistema ejecutaremos
ping www.yahoo.com
o algo similar, con lo que se visualiza la traduccin de la URL www.yahoo.com a
una direccin IP.

http://www.tonet.jazztel.es

196

24.3.Gestin de ancho de banda


Las redes de ordenadores de las empresas han ido incorporando nuevos servicios
tales como la videoconferencia, las aplicaciones multimedia, el seguimiento de
pedidos e inventario, el comercio Internet remoto y las aplicaciones crticas basadas
en Intranet. Estos servicios son en la actualidad la infraestructura de los modernos
negocios. Estas tendencias han llevado a la adopcin generalizada de procesos de
negocio basados en Intranet y han transformado la WAN de la empresa de ser una
simple herramienta de conectividad a ser un recurso estratgico.
Sin embargo, a medida que las redes crecen, las organizaciones se dan cuenta de
que el costo operacional aumenta significativamente, mientras que su capacidad
para dirigir y controlar la red es muy limitado. La raz de este problema yace en el
hecho de que a diferencia de la LAN, que son propiedad de la empresa, la Intranet
se basa en la WAN y sta se alquila o contrata a las empresas de comunicaciones.
As, mientras el uso de LAN es basicamente gratuito en tanto en cuanto la
compaa posee su infraestructura, el costo de propiedad de la WAN es importante
y es una partida significativa en el presupuesto de la empresa. Esta es la razn
principal de porque el ancho de banda de las lneas de comunicaciones que
enlazan las LAN ha sido siempre un recurso limitado.
La dificultad de controlar el trfico por estas lneas de comunicaciones, ha hecho
que las aplicaciones que necesitan un amplio ancho de banda, colapsen las lneas,
sus servidores siempre estn muy ocupados, y que haya una demanda creciente de
las aplicaciones multimedia y que ms usuarios estn autorizados a conectarse a
Internet cada da. Adems el crecimiento exponencial de las velocidades de LAN
versus las bajas velocidades de las lneas de comunicaciones han creado un
desequilibrio entre la cantidad de trfico que intenta cruzar la red de la empresa y la
cantidad que las lneas de comunicaciones pueden soportar realmente. Este
ambiente catico y libre-para-todo ha hecho casi imposible garantizar el
rendimiento adecuado de las aplicaciones crticas para el negocio que se requieren
que permanezcan funcionando y corriendo en todo momento.
Es este problema ha llevado a los gestores informticos a buscar herramientas que,
mediante un control activo y una priorizacin del trfico de las lneas de
comunicaciones, puedan priorizar y asignar ancho de banda basndose en las
necesidades corporativas, optimizando la utilizacin del ancho de banda a travs de
las aplicaciones y garantizando un tiempo de respuesta adecuado para cada
aplicacin.
Hay actualmente dos enfoques distintos en cuanto a la gestin del ancho de banda
de las lneas de comunicaciones. El primer enfoque se basa en el uso de un
dispositivo de LAN que regule el trfico de LAN que va al enrutador en la suposicin
que la tal accin mejorar el rendimiento de las lneas de comunicaciones. El
segundo enfoque usa un dispositivo nativo de WAN, que se conecta fsicamente a
la salida de las lneas de comunicaciones y regula el trfico real que fluye por ellas.

http://www.tonet.jazztel.es

197

24.3.1.Conocimiento de las lneas de comunicaciones


Con el fin de gestionar de forma efectiva el ancho de banda de las lneas de
comunicaciones, un sistema de gestin necesita estar totalmente versado con las
topologas y los protocolos de WAN. El clculo de la utilizacin de lnea, por
ejemplo, requiere del anlisis del BECN y FECN que generan los conmutadores
Frame Relay y estn limitados por los enrutadores. Otros parmetros requeridos
para una eficaz gestin del ancho de banda tales como los errores de lnea, el
anlisis del tiempo de respuesta, la verificacin del CIR y las medidas de
congestin, requieren que el hardware de monitorizacin est conectado al enlace
WAN. Un sistema basado en LAN es incapaz de medir estos parmetros, por lo
tanto, ser incapaz de comprender cual es el estado real de la WAN, con lo que no
puede hacer una gestin eficaz del ancho de banda de la misma. Los sistemas
basados en LAN se alimentan manualmente con el rendimiento terico de WAN y
entonces simplemente asumen que el rendimiento de la WAN (tales como
utilizacin, tasa de error, nivel de congestin) nunca cambia. Esta suposicin no es
vlida, dado que el rendimiento de la WAN cambia dinmicamente. Sin embargo los
sistemas nativos basados en WAN pueden controlar fcilmente los parmetros
especficos de WAN porque ellos estn conectados fsicamente a ella.

24.3.2.Monitorizacin Dinmica por Circuito


La monitorizacin de los enlaces WAN donde el trfico debe ser modulado, es un
requisito previo para una gestin eficaz del ancho de banda de WAN ya que sin
mediciones apropiadas, un sistema de gestin de ancho de banda es incapaz de
aplicar las prioridades correctas al trfico de red. Dado que cada enlace WAN
consta de varios Circuitos (PVCs, SVCs, o punto-a-punto), la monitorizacin debe
hacerse por circuito. As el enrutador WAN separar las tramas entrantes a la LAN
en los distintos circuitos con base al destino de los datos y los actuales caminos de
la red, y combinar el trfico entrante de WAN de mltiples circuitos en una fuente
nica de LAN. Dado que cada circuito se comporta como una entidad separada de
WAN teniendo su propio CIR, el rendimiento y los parmetros de ancho de banda,
la monitorizacin se debe basar por circuito.
El problema con los sistemas basados en LAN es que todo el trfico de LAN parece
igual. Solamente despus de que el enrutador divide las tramas de LAN en sus
apropiados circuitos de WAN, puede verdaderamente hacerse una monitorizacin
de la WAN.
En contraste a esto y dado que un sistema basado en WAN entiende de
topologas y protocolos de WAN y opera a nivel de circuito, este sistema WAN
puede identificar las posibles congestiones y garantizar que el trfico ms crtico
dispone de una prioridad ms alta sobre este determinado canal.

http://www.tonet.jazztel.es

198

25. Simuladores de redes


Un simulador de red es un programa de software que imita el funcionamiento de
una red de ordenadores, sin estar presente una red real. En los simuladores, la red
de ordenadores se suele modelar con los dispositivos, el trfico, etc. y se analiza el
rendimiento. Por lo general, los usuarios pueden personalizar el simulador para
satisfacer sus necesidades especficas de anlisis y vienen con el soporte para los
protocolos ms populares actualmente en uso, tales como WAN, Wifi, UDP y TCP.
La mayora de los simuladores comerciales se basan en GUIs, mientras que otros
simuladores de red requieren scripts o comandos de entrada para parmetrizar la
red. Los parmetros de red describen el estado de la red (la situacin de los nodos,
los enlaces existentes) y de los eventos (las transmisiones de los datos, los fallos
de los enlaces, etc.) Un resultado importante de las simulaciones son los ficheros
donde se alacenan los datos de la simulacin. Estos ficheros pueden documentar
todos los eventos que ocurrieron durante la simulacin y se utilizan para el anlisis.
Determinados simuladores han aadido la funcionalidad de capturar este tipo de
datos directamente desde el entorno de produccin en funcionamiento en distintos
momentos del da, semana o mes, a fin de reflejar el promedio, el peor de los casos
y las condiciones del mejor de los casos. Los simuladores de la red tambin puede
proporcionar otras herramientas que facilitan el anlisis visual de las tendencias y
los posibles puntos dbiles.
La mayora de los simuladores de red utilizan la simulacin de eventos discretos, en
el que se almacena una lista de eventos en espera, y estos eventos se procesan en
orden, de forma que desencadenen eventos futuros, como el evento de la llegada
de un paquete en un nodo.
Algunos problemas de la simulacin de red, especialmente los que dependen de la
teora de colas, se adaptan bien a las simulaciones de la cadena de Markov, en el
que no se mantienen una lista de eventos futuros y la simulacin consiste en el
trnsito entre los estados diferentes del sistema de una forma sin mememoria. La
simulacin de la cadena de Markov es en general ms rpida pero menos precisa y
flexible que la simulacin detallada de eventos discretos. Algunas simulaciones son
cclicas y se basan en simulaciones y son ms rpidas en comparacin con las
simulaciones basadas en eventos.
La simulacin de las redes puede ser una tarea difcil, por ejemplo, si la congestin
es alta, entonces la estimacin de la ocupacin media es un reto debido a la alta
variancia. Para estimar la probabilidad de un desbordamiento del bfer en una red,
el tiempo necesario para una respuesta precisa puede ser muy grande. Hay
tcnicas que aceleran la resolucin de esta simulacin.
En comparacin con el costo y el tiempo necesarios para crear un banco de
pruebas completo que contenga varios ordenadores conectados en red, los
enrutadores y los enlaces, los simuladores de red son ms rpidos y ms baratos.
Permiten a los ingenieros y a los investigadores probar escenarios que podran ser

http://www.tonet.jazztel.es

199

especialmente difciles o costosos de emular utilizando hardware real, como por


ejemplo, simulando un escenario con varios nodos o experimentando con un nuevo
protocolo en la red. Los simuladores de red son particularmente tiles para permitir
a los investigadores probar nuevos protocolos de red o cambios en los protocolos
existentes en un entorno controlado y reproducible.
Los simuladores de red, como su nombre indica, son utilizados por los
investigadores, los desarrolladores y los ingenieros para disear distintos tipos de
redes, simular y a continuacin analizar el efecto de diversos parmetros en el
rendimiento de la red. Un simulador de red tpica abarca una amplia gama de
tecnologas de red y puede ayudar a los usuarios a construir redes complejas a
partir de bloques constructivos bsicos, tales como una variedad de nodos y
enlaces. Con la ayuda de los simuladores, se pueden disear redes jerrquicas con
varios tipos de nodos, como ordenadores, concentradores, puentes, enrutadores,
conmutadores, enlaces, etc.
Hay una gran variedad de simuladores de red, que van desde los ms simples
hasta los ms complejos. Como mnimo un simulador de red deber permitir a un
usuario representar a una topologa de red, especificando los nodos de la red, los
enlaces entre los nodos y el trfico entre los nodos. Los sistemas ms complicados
pueden permitir que el usuario especifique todo lo relacionado con los protocolos
utilizados para manejar el trfico en una red. Las aplicaciones grficas permiten a
los usuarios visualizar fcilmente el funcionamiento del entorno simulado. Las
simulaciones basadas en texto puede proporcionar una interfaz menos intuitiva,
pero puede permitir formas ms avanzadas de personalizacin.

25.1.Elementos de una simulacin de redes


El primer paso de una simulacin de red es el establecimiento de su topologa. Para
ello deben definirse los nodos que componen esta red a simular. A continuacin
establecer los enlaces entre los nodos y en cada uno de ellos, definir sus
parmetros de funcionamiento, por ejemplo, distancia, resistencia elctrica, etc.
El segundo paso es definir las fuentes de trfico, es decir, toda red de ordenadores
sirve para llevar informacin desde un origen a un destino. As en una red se deben
definir los nodos origen que son las fuentes del trfico y los nodos destino que son
los que reciben el trfico. Adems las fuentes de trfico pueden ser de distintos
tipos y en funcin de los anlisis a realizar, se establecern unos tipos u otros de
patrones de trfico. El trfico de Internet es del tipo que se conoce como best-effort.
Un tercer paso es parametrizar los nodos intermedios, que se conocen con el
nombre de enrutadores. Estos nodos intermedios, aparte de su tiempo de latencia,
deben estar dotados de las correspondientes tablas de encaminamiento, cuyo
contenido es fundamental para la distribucin del trfico de la red.
A todo esto hay que aadir los protocolos con sus parmetros y temporizadores, as
como los mtodos de las teoras de cola que se utilizan en la gestin de los bferes.

http://www.tonet.jazztel.es

200

25.2.Tipos de simulaciones
Existen varias caractersticas de las cuales podemos clasificar las simulaciones,
siendo algunas de estas posibles clasificaciones las siguientes:
- Simulacin esttica: Se denomina modelo de simulacin esttica a la
representacin de un sistema en un instante de tiempo determinado.
- Simulacin dinmica: Se denomina modelo de simulacin dinmica a la
representacin de un sistema cuando evoluciona con el tiempo.
- Simulacin determinista: Se denomina modelo de simulacin determinista a la
representacin de un sistema que no contiene absolutamente ninguna variable
aleatoria.
- Simulacin aleatoria: Se denomina modelo de simulacin aleatoria a la
representacin de un sistema que contendr variables aleatorias.
- Simulacin continua: Se denomina modelo de simulacin continuo a la
representacin de un sistema donde su comportamiento cambia de forma continua
en el tiempo.
- Simulacin Discreta: Se denomina modelo de simulacin discreto a la
representacin de un sistema donde su comportamiento cambia nicamente en
instantes de tiempo concretos, eventos.

25.3.ns Network Simulator


El simulador ns es un simulador de eventos discretos de la red, basado en software
libre, licenciado bajo la licencia GNU GPLv2, y est a disposicin del pblico de
investigacin, desarrollo y uso.
El ns est desarrollado con los lenguajes C++ y Python, y utiliza secuencias de
comandos para su ejecucin. Est compuesto por 30 mdulos, y sus principales
caractersticas son:

Eventos de devolucin de llamada

Sistemas de atributos gestionado por defecto y valores de simulacin por


objeto

Ayudas que permitan un uso ms simple de las API para configurar


simulaciones

Incluyen cuatro pasos:


1. La implementacin de modelos de protocolos.
2. Configuracin del escenario de simulacin en un fichero texto plano.

http://www.tonet.jazztel.es

201

3. Ejecucin de la simulacin.
4. Anlisis de los resultados de la simulacin.

25.4.Simulador OMNeT++
OMNeT++ es un simulador de redes de eventos discretos, modular y orientado a
objetos. El simulador se puede usar para:

modelar el trfico de las redes de telecomunicaciones


modelar protocolos
modelar las colas de espera de las redes
modelar sistemas multiprocesadores y otros hardware distribuido
validar arquitecturas de hardware
evaluar aspectos de rendimiento de complejos sistemas de software
modelar cualquier otro sistema donde la propuesta de eventos discretos sea
posible.

Un modelo OMNeT++ consta de mdulos anidados jerarquicamente. La


profundidad del anidado de mdulos no tiene lmites, lo que permite al usuario
reflejar la estructura lgica del sistema actual en la estructura del modelo. Los
mdulos se comunican a travs del traspaso de mensajes. Los mensajes pueden
contener arbitrariamente estructuras complejas de datos. Los mdulos pueden
enviar mensajes ya sea directamente a su destino o a lo largo de un camino
predefinido, a travs de puertas y conexiones.
Los mdulos pueden tener sus propios parmetros. Los parmetros se pueden usar
para customizar el comportamiento del mdulo y parametrizar la topologa del
modelo.
Los mdulos al nivel ms bajo de la jerarqua del mdulo encapsulan el
comportamiento. Estos mdulos se llaman mdulos simples y estn programados
en C++ usando la librera de simulacin.

25.5.Simulador GNS3
GNS3 es un simulador grfico de la red que permite la simulacin de redes
complejas. Para proporcionar simulaciones completas y precisas, GNS3 est
estrechamente relacionado con:

Dynamips, un emulador de Cisco IOS.

Qemu, un emulador de mquina genrico y abierto y un virtualizador.

VirtualBox, un software de virtualizacin gratuito y potente.

Tambin se puede utilizar para experimentar las caractersticas del IOS de Cisco, el
JunOS de Juniper o para verificar las configuraciones que deben implementarse
ms tarde en los enrutadores.

http://www.tonet.jazztel.es

202

Este proyecto es un programa de cdigo abierto y gratuito que se puede utilizar en


mltiples sistemas operativos, incluyendo Windows, Linux y MacOS X.

25.6.SSFNet
SSFNet es una coleccin de componentes basado en Java, que permiten la
modelizacin y la simulacin de los protocolos utilizados en Internet y las redes por
encima del nivel de paquetes IP. El modelado de los niveles de enlace y de la capa
fsica se puede proporcionar en componentes separados.
Los modelos SSFNet se configura automticamente, es decir, cada instancia de la
clase SSFNet se puede configurar de forma autnoma mediante la consulta de una
base de datos de configuracin, que puede residir localmente o remotamente en
Internet. Los ficheros de configuracin de la red estn en formato DML. Se utilizan
para configurar un modelo completo e inician una simulacin con la ayuda del
paquete escalable de datos de configuracin en DML que se distribuye con los
simuladores SSF.
Las clases principales utilizadas para construir virtualmente cualquier modelo de red
se organizan en dos estructuras, SSF.OS para el modelado de los ordenadores y
los componentes del sistema operativo, como los protocolos y SSF.Net para el
modelado de la conectividad de las redes, creando las configuraciones de los nodos
y los enlaces.
Los marcos SSF.OS y SSF.Net ocultan todos los detalles de las API del simulador
de eventos discretos SSF, que permite implementar los protocolos, como en un
sistema operativo real.

25.7.GTNetS
El Georgia Tech Network Simulator (GTNetS) es un entorno completo de simulacin
de red que permite a los investigadores en redes de ordenadores estudiar el
comportamiento de redes de distinto tamao bajo una variedad de condiciones. La
filosofa de diseo de GTNetS es crear un entorno de simulacin que est
estructurado al igual que estn estructuradas las redes actuales. Por ejemplo, en
GTNetS, hay una separacin clara de los niveles de la pila de protocolos.
Los paquetes en GTNetS consisten en una lista de PDUs de los distintos protocolos
que se aaden y se retiran del paquete a medidad que se mueve arriba y abajo de
la pila de protocolos. Los objetos de simulacin que representan los nodos de red
tienen una o ms interfaces, cada una de ellas puede tener una direccin IP
asociada y un enlace asociado. Los objetos del protocolo de nivel 4 en GTNetS
enlaza con los puertos, de manera casi idntica a la unin a los puertos de
protocolos de red real. Las conexiones entre los objetos de protocolo en el nivel de
transporte se especifican mediante una tupla que contiene la direccin IP de origen,
el puerto de origen, la direccin IP de destino y el puerto de destino como las
conexiones TCP reales. La interfaz entre las aplicaciones y los protocolos de nivel

http://www.tonet.jazztel.es

203

de transporte utiliza las llamadas ahbituales connect, listen, send y sendto como en
las API de los entornos UNIX.
Las aplicaciones en GTNetS pueden tener asociadas uno o ms objetos de
protocolo y pueden simulatar el flujo de datos entre aplicaciones.

http://www.tonet.jazztel.es

204

26. Programando en red con python


26.1.Introduccin
En este captulo se explica como desarrollar un protocolo a nivel de aplicacin
utilizando el lenguaje de programacin Python. Para ello se implementa el mdulo
socket en Python, mdulo que abarca sobre todo las llamadas del sistema y las
funciones, todo ello implementado con la programacin orientada al objeto. Este
protocolo de nivel de aplicacin debe correr con la pila TCP/IP, es decir, slo
funcionara en ordenadores que tengan implementados el protocolo IP a nivel de red
y el TCP o UDP a nivel de enlace.
Python ofrece un interfaz simple, mucho ms simple que en C, para crear y para
utilizar correctamente un socket. Sobre todo, se define la funcin socket()
devolviendo un objeto socket. El socket tiene varios mtodos, correspondiendo a
sus pares de sys/socket.h de C, como bind(), connect(), listen() o accept(). Los
programadores acostumbrados con el uso del socket en lenguaje C, encontrarn
muy fcil traducir su conocimiento en la implementacin del socket y ms fcil de
utilizar en Python. Python elimina la tarea desalentadora de llenar estructuras como
sockaddr en un hostent y facilita el uso de mtodos o de funciones previamente
mencionados, es decir, el pasar parmetro, as la llamada de las funciones son ms
fciles de dirigir. Tambin se proporcionan algunas funciones orientadas a red: el
gethostbyname(), el getprotobyname() o las funciones de conversin ntohl(),
htons(), tiles cuando los nmeros enteros que convierten a y desde red ajustados
a formato. El mdulo proporciona constantes como SOMAXCONN, INADDR *,
usado en funciones del gesockopt() o del setsockopt().
Python proporciona adems del socket, los mdulos adicionales que apoya los
protocolos ms comunes de red a nivel de usuario. Por ejemplo podemos
encontrar los tiles mdulos como el httplib, ftplib, telnetlib y smtplib. Est
implementado el soporte para la ejecucin de los scripts de CGI a travs del mdulo
cgi, un mdulo para el anlisis del URL, clases que describen los servidores web.
Estos mdulos son implementaciones especficas de protocolos bien conocidos
para que el usuario los utilice y no se est intentando reinventar la rueda.

26.2.Uso bsico del socket


El socket es la estructura bsica para la comunicacin entre los procesos. Un
socket se define como "un punto final de la comunicacin a la cual se pueda limitar
con un nombre". La implementacin 4.3 BSD define tres dominios de comunicacin
para un socket: el dominio UNIX para la comunicacin on-system entre procesos;
el dominio Internet para los procesos que se comunican sobre el protocolo de

http://www.tonet.jazztel.es

205

TCP(UDP)/IP; el dominio NS usado por los procesos que se comunican sobre el


viejo protocolo de comunicacin de Xerox.
Python slo utiliza los primeros dos dominios de la comunicacin: los dominios
UNIX e Internet, las familias de direcciones AF UNIX y los AF INET
respectivamente. Las direcciones del dominio UNIX se representan como cadenas
de caracteres, nombrando un camino local: por ejemplo /tmp/sock. Esto puede ser
un socket creado por un proceso local o creado posiblemente por un proceso
forneo. Las direcciones del dominio de Internet se representan como un par
(dispositivo, puerto), donde el dispositivo es una cadena de caracteres que
representa un nombre hostname vlido de Internet, por ejemplo matrix.ee.utt.ro o
una direccin IP en el notacin decimal con puntos y el puerto es un puerto vlido
entre 1 y 65535.
Python ofrece los cinco tipos de socket definidos en la implementacin 4.3 BSD
IPC. Dos se utilizan generalmente en la inmensa mayora de las nuevas
aplicaciones. Un stream socket es un socket orientado a conexin y tiene el
soporte de la comunicacin subyacente del protocolo TCP, suministrando un flujo
de datos bidireccional, confiable, secuenciado y sin duplicidades. Un datagram
socket es un socket de comunicacin no orientado a conexin, apoyado en el
protocolo UDP. Ofrece un flujo de datos bidireccional, no confiable, no secuenciado
y con posibilidad de duplicidades. Un proceso que recibe una secuencia de
datagramas puede encontrar mensajes duplicados o, posiblemente, en otro orden
distinto de los paquetes cuando fueron enviados. Raramente se usan los tipos
raw, ordenados y confiablemente entregados de los zcalos del mensaje. El tipo
raw socket es necesario cuando una aplicacin puede requerir el acceso a los
recursos ms ntimos proporcionados por la implementacin del socket. Nuestro
documento se centra en los stream socket y los datagram socket.

26.3.Creando un socket
Un socket se crea con la llamada socket(familia, tipo [, proto ]); la familia es una de
las antedichas familias de direccin: AF UNIX y AF INET, el tipo se representa con
las constantes siguientes: SOCK STREAM, SOCK DGRAM, SOCK RAW, SOCK
SEQPACKET y SOCK RDM. El argumento proto es opcional y por defecto es 0.
Vemos que la funcin socket() crea un socket en el dominio especificado con el tipo
especificado. Debido a que las constantes mencionadas arriba estn contenidas en
el mdulo socket, todas se deben utilizar con la notacin CONSTANT de socket.
De no hacerlo as, el intrprete generar un error. Para crear un stream socket en
el dominio de Internet utilizaremos la lnea siguiente:
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
Sustituyendo socket.SOCK_STREAM por socket.SOCK_DGRAM, creamos un
datagram socket en el dominio de Internet. La llamada siguiente crear un stream
socket en el dominio UNIX:
sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)

http://www.tonet.jazztel.es

206

Ms adelante discutimos sobre la obtencin de un socket de diferentes tipos en


diferentes dominios de comunicacin.

26.4.Conectando un socket y transfiriendo datos


Un servidor es un proceso que escucha por un determinado puerto. Podemos
denominar servicio a la asociacin puerto, proceso. Cuando otro proceso quiere
encontrar el servidor o utilizar un servicio determinado, debe conectarse a la
direccin y nmero de puerto especificado por el servidor. Esto se hace llamando
el mtodo socket connect(direccin), donde la direccin es un par (ordenador,
puerto) en el dominio de Internet y un camino de nombre en el dominio UNIX. Si se
usa el dominio de Internet, una conexin se realiza con el cdigo siguiente:
sock.connect(('localhost', 8000))
mientras que en el dominio UNIX,
sock.connect('/tmp/sock')
Si el servicio es inasequible o el servidor no desea hablar con el proceso del cliente,
se genera un socket.error (111, ' Conexin rechazada'). Por otra parte, despus de
que se establezca la conexin con el servidor deseado, los datos se envan y se
reciben con los mtodos send(buffer [, flags]) y recv(buffer [, flags]). Estos mtodos
aceptan como parmetro obligatorio el tamao del buffer en octetos y algunos flags
opcionales.

26.5.Dando un nombre al socket


El socket, despus de su creacin, no tiene nombre, aunque tiene un descriptor
asociado. Antes de que se pueda utilizar, se le debe dar un nombre a una direccin
apropiada puesto que sta es la nica manera que un proceso forneo puede
referirse a l. El mtodo bind(direccin) se utiliza para nombrar un socket. El
significado de la direccin se ha explicado anteriormente. La llamada siguiente
nombrar un socket en el dominio de Internet con la direccin compuesta de
nombre de ordenador localhost y del puerto nmero 8000:
sock.bind(('localhost', 8000))
Por favor cuidado al teclear: de hecho hay dos pares de parntesis. El propsito de
los dos pares de parntesis es simple: la direccin es un tuple que contiene una
cadena de caracteres y un nmero entero. El nombre de ordenador debe ser
escogido correctamente, y el mejor mtodo es utilizar la rutina gethostname() para
asegurar la independencia del ordenador y su portabilidad. Para crear un socket en
el dominio UNIX, utilizar la direccin como una nica cadena de caracteres,
nombrando un camino local:

http://www.tonet.jazztel.es

207

sock.bind('/tmp/sock')
Esto crear el fichero (pipe) '/tmp/sock' que se usar para la comunicacin entre
los procesos del servidor y del cliente. El usuario debe tener los permisos de
lectura/escritura en el directorio especificado donde se cre el socket y el propio
fichero debe ser borrado una vez ya no se necesita.

26.6.Escuchando y aceptando conexiones


Una vez que tenemos un socket con un nombre propio y limitado a l, el paso
siguiente es llamar el mtodo listen(queue). Este mtodo le dice al socket que
escuche pasivamente en el puerto establecido. El mtodo listen() toma como
parmetro al nmero entero que representa la cola mxima de la conexin. Este
argumento debera ser por lo menos 1 y el mximo, dependiendo del sistema, 5.
Hasta este momento tenemos un socket con una direccin limitada apropiada.
Cuando llega una peticin de conexin, el servidor decide si es aceptado o no.
Aceptar una conexin se hace con el mtodo accept(). No toma ningn parmetro
sino que devuelve un tuple (clientsocket, direccin) donde clientsocket es un nuevo
socket que el servidor usa para comunicarse con el cliente y la direccin es la
direccin del cliente. Normalmente accept() se bloquea hasta que se realiza la
conexin. Este comportamiento puede ser eliminado ejecutando el mtodo en un
thread separado, recogiendo los nuevos descriptores creados del socket en una
lista y procesarlos por orden. Los mtodos antedichos se usan como sigue:
sock.listen(5)
clisock, address = sock.accept()
Este cdigo manda al socket que escuche con una cola mxima de espera de cinco
conexiones y acepta todos las llamadas entrantes. As el mtodo accept()
devuelve un socket nuevo que ser utilizado en el intercambio posterior de datos.
Con la cadena bind-listen-accept es como se crean los servidores TCP. Dado que
un socket TCP est orientado a la conexin, cuando un cliente desea hablar a un
servidor en particular al que debe conectarse, espera hasta que el servidor acepta
la conexin, se intercambian los datos y despus se cierra la conexin. Esto es
como en una llamada telefnica: el cliente marca el nmero, espera hasta que el
otro lado establece la conexin, habla y despus cuelga.

26.7.Sockets UDP
Un datagram socket se caracteriza por un intercambio simtrico de mensajes sin
conexin. El servidor y el cliente intercambian paquetes de datos, no secuencias de
datos, y los paquetes se tratan entre el cliente y el servidor por separado. La
conexin UDP se asemeja al sistema postal: cada mensaje se encapsula en un
sobre y se recibe como entidad separada. Un mensaje grande se puede partir en

http://www.tonet.jazztel.es

208

mltiples partes, cada una entregada por separado (no en el misma orden,
duplicado, etctera). Es el deber del receptor el montar el mensaje.
El servidor tiene un mtodo bind() que se usa para aadir un nombre propio y un
puerto. En los sockets UDP, no hay los mtodos listen() ni accept(), porque el
servidor no est escuchando y no acepta la conexin. Bsicamente se crea un
buzn de correos donde es posible recibir mensajes de los procesos del cliente.
Los clientes envan solamente los paquetes, los datos y la direccin estando
incluidos en cada paquete.
Los paquetes de datos se envan y se reciben con los mtodos sendto(data,
direccin) y recvfrom(buffer [, flags]). El primer mtodo toma como parmetros
una cadena de caracteres y la direccin del servidor de acuerdo con lo explicado
anteriormente con los mtodos connect() y bind(). Debido a que se especifica en
el extremo remoto del socket, no hay necesidad de conectarlo. El segundo mtodo
es similar al recv().

26.8.Cerrando el socket
Cuando se deja de usar el socket, se debe cerrar con el mtodo close(). Cuando
un usuario ya no est interesado en cualquier dato pendiente, se puede realizar una
parada antes de cerrar el socket. El mtodo para hacer esto se llama
shutdown(how), donde how es: 0 si no se acepta la entrada de ms datos, 1 si
se desabilita el envo de datos y un valor de 2 previene de enviar y recibir datos.

26.9.Diseando un servidor TCP


El diseo de un servidor TCP debe seguir los pasos bind-listen-accept. Se
muestra el cdigo para un simple servidor de eco, corriendo en localhost y
escuchando por el puerto 8000. Aceptar una nica conexin del cliente, har un
eco de todos los datos y despus de no recibir nada, cierra la conexin.
import socket
serversocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
serversocket.bind(('localhost', 8000))
serversocket.listen(1)
clientsocket, clientaddress = serversocket.accept()
print 'Connection from ', clientaddress
while 1:
data = clientsocket.recv(1024)
if not data: break
clientsocket.send(data)
clientsocket.close()
En la primera lnea se declara la instruccin import del mdulo socket. Las lneas
de la 3 a la 6 son la cadena estndar de servidor TCP. En la linea 6 el servidor
acepta la conexin iniciada por el cliente; el mtodo accept() devuelve el socket

http://www.tonet.jazztel.es

209

clientsocket, usado a continuacin para el intercambio de datos. El bucle while 1


es el cdigo de eco; devuelve los datos transmitidos por el cliente. Una vez roto el
bucle (cuando el cliente envia una cadena vaca y no se cumple la condicin if not
data: break) se cierra el socket y termina el programa.

26.10.El cliente TCP


El cliente entrar en bucle donde los datos son leidos desde una entrada estndar y
enviados (en paquetes de 1024 octetos esta es la cantidad mxima de datos que
el servidor lee segn el cdigo de servidor anterior) al servidor. El servidor devuelve
los mismos datos y el cliente los visualiza. Aqu est el cdigo:
import socket
clientsocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
clientsocket.connect(('localhost', 8000))
while 1:
data = raw_input('>')
clientsocket.send(data)
if not data: break
newdata = clientsocket.recv(1024)
print newdata
clientsocket.close()
Primero el cliente envia datos y solo despus de enviar los datos, en el caso de
datos cero, sale. Esto previene al servidor de colgarse (recuerde, el servidor sale
cuando recibe una cadena vaca). Decidimos almacenar los datos recibidos en
newdata para prevenir cualquier problema que pueda surgir, si no se transmiten
datos o algo malo vuelve al servidor. Comparado con el servidor, el cdigo del
cliente es mucho ms simple solo la creacin del socket y una conexin simple,
despus el protocolo sigue.

26.11.Aplicacin de transmisin de un fichero


26.11.1.Envo de un texto desde un cliente a un servidor
Este ejemplo consiste en abrir un servidor mediante la ejecucin del comando
python 1server.py 2000
donde se le dice que el servidor escuche por el puerto 2000. A continuacin se
debe ejecutar el comando
python 1client.py 127.0.0.1 2000 abc
con lo que el cliente abre el puerto 2000 para enviar el texto abc al servidor. Ahora
el servidor multiplica la cadena varias veces y la devuelve al cliente, y cuando

http://www.tonet.jazztel.es

210

termina, cierra la conexin y termina el programa. En la mquina cliente se visualiza


la cadena multiplicada y termina el programa.
El cdigo del programa del servidor 1server.py es
import socket
import sys
# crear un socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# asociar el socket al puerto
host = ' ' # se puede dejar en blanco en el lado del servidor
port = int(sys.argv[1])
s.bind((host, port))
s.listen(1)
conn, addr = s.accept()
print 'client is at', addr
data = conn.recv(1000000)
data = 10 * data # concatenate data with itself 999 times
z = raw_input()
conn.send(data)
conn.close()
El cdigo del programa cliente 1client.py es
import socket
import sys
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
host = sys.argv[1] # direccin IP del servidor
port = int(sys.argv[2])
# puerto del servidor por el que escucha
s.connect((host, port))
s.send(sys.argv[3])
# envo de la cadena de caracteres
i=0
while(1):
data = s.recv(1000000) # leer hasta 1000000 octetos
i += 1
if (i < 5): # mirar slo la primera parte del mensaje
print data
if not data:
# finalizar si no hay datos
break
print 'received', len(data), 'bytes'
s.close()

26.11.2.Envo de un texto desde un cliente a un servidor


Consiste en abrir un servidor mediante la ejecucin del comando
python 2server.py
usando el puerto cuyo nmero nos pide. A continuacin se debe ejecutar el
comando

http://www.tonet.jazztel.es

211

python 2client.py
en otra mquina y nos pide:
1) la direccin o nombre del servidor
2) el puerto del servidor por el que escucha
3) un texto que se enviar al servidor.
A continuacin el servidor pregunta cuantas veces se quiere multiplicar la cadena y
lo enva al cliente, y cuando termina, cierra la conexin y termina el programa.
En la mquina cliente adems de visualizar la cadena multiplicada, crea un fichero
donde graba esta cadena de texto y a continuacin termina el programa.
El cdigo del programa servidor 2server.py es
import socket
import string
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
host = ' '
# se puede dejar en blanco en el lado del servidor
portc = raw_input("Puerto a usar: ")
portn = string.atoi(portc)
print portn
s.bind((host, portn))
s.listen(1)
conn, addr = s.accept()
print 'client is at', addr
data = conn.recv(1000000)
num1c = raw_input("Cuantas veces: ")
num1n = string.atoi(num1c)
data = num1n * data # concatenate data with itself 999 times
conn.send(data)
conn.close()
El cdigo del programa cliente 2client.py es
import socket
import sys
import string
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
hostc = raw_input("Direccion del server: ")
portc = raw_input("Puerto a usar: ")
portn = string.atoi(portc)
s.connect((hostc, portn))
texto = raw_input("Texto a grabar: ")
s.send(texto) # send test string
f = open("foo","w")
i=0
while(1):
data = s.recv(1000000)
i += 1

http://www.tonet.jazztel.es

212

if (i < 5): # mirar slo la primera parte del mensaje


f.write(data)
print data
print 'received', len(data), 'bytes'
if not data:
# finalizar si no hay datos
break
f.flush()
f.close()
s.close()

26.11.3.Envo de un fichero del cliente al servidor


Consiste en abrir un puerto en un servidor mediante la ejecucin del comando
python 3server.py
usando el puerto cuyo nmero nos pide.
A continuacin se debe ejecutar en el cliente el comado
python 3client.py
y nos pide:
4) la direccin o nombre del servidor
5) el puerto del servidor por el que escucha
Ahora el servidor lee el fichero foo y a continuacin lo enva al cliente, y cuando
termina, cierra la conexin y termina el programa, especificando la duracin de la
transmisin.
Ahora en la mquina cliente grabe el fichero foo del servidor en el fichero foow en el
cliente y a continuacin termina el programa.
El cdigo del programa servidor 3server.py es
import socket
import sys
import string
import time
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
host = ' '
# se puede dejar en blanco en el lado del servidor
portc = raw_input("Puerto a usar: ")
portn = string.atoi(portc)
print portn
s.bind((host, portn))
s.listen(1)
conn, addr = s.accept()
print 'client is at', addr

http://www.tonet.jazztel.es
f = open("foo","r")
starttime = time.time()
i=0
while(1):
f.seek(10000*i)
data = f.read(10000)
i += 1
if (i < 1000):
# mirar slo la primera parte del mensaje
conn.send(data)
if not data:
# finalizar si no hay datos
break
f.close()
stoptime = time.time()
conn.close()
dur=stoptime - starttime
print 'Duracion ', dur
El cdigo del programa cliente 3client.py es
import socket
import sys
import string
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
hostc = raw_input("Direccion del server: ")
portc = raw_input("Puerto a usar: ")
portn = string.atoi(portc)
s.connect((hostc, portn))
f = open("foow","w")
i=0
while(1):
data = s.recv(1000000)
i += 1
if (i < 1000):
# mirar slo la primera parte del mensaje
f.write(data)
print i
print 'received', len(data), 'bytes'
if not data:
# finalizar si no hay datos
break
f.flush()
f.close()
s.close()

213

http://www.tonet.jazztel.es

214

También podría gustarte