martes, 9 de junio de 2009

Direcciones IPy mascaras de red y clases de red

En una red TCP/IP los ordenadores se identifican mediante un número que se denomina dirección IP. Esta dirección ha de estar dentro del rango de direcciones asignadas al organismo o empresa a la que pertenece, estos rangos son concedidos por un organismo central de Internet, el NIC (Network Information Center).
Una dirección IP está formada por 32 bits, que se agrupan en octetos:
01000001 00001010 00000010 00000011
Para entendernos mejor utilizamos las direcciones IP en formato decimal, representando el valor decimal de cada octeto y separando con puntos:
129.10.2.3
Las dirección de una máquina se compone de dos partes cuya longitud puede variar:
· Bits de red: son los bits que definen la red a la que pertenece el equipo.
· Bits de host: son los bits que distinguen a un equipo de otro dentro de una red.
Los bits de red siempre están a la izquierda y los de host a la derecha, veamos un ejemplo sencillo:

Bits de Red
Bits de Host
10010110 11010110 10001101
11000101
150.214.141.
197

Para ir entrando en calor diremos también que esta máquina pertenece a la red 150.214.141.0 y que su máscara de red es 255.255.255.0. Si queréis ir reflexionando sobre algo os mostramos de nuevo en formato binario la máscara de red llevando a caballitos a la dirección de la máquina:

10010110
11010110
10001101
11000101
11111111
11111111
11111111
00000000

La máscara de red es un número con el formato de una dirección IP que nos sirve para distinguir cuando una máquina determinada pertenece a una subred dada, con lo que podemos averiguar si dos máquinas están o no en la misma subred IP. En formato binario todas las máscaras de red tienen los "1" agrupados a la izquierda y los "0" a la derecha.
Para llegar a comprender como funciona todo esto podríamos hacer un ejercicio práctico.Ejercicio 1
Sea la dirección de una subred 150.214.141.0, con una máscara de red 255.255.255.0
Comprobar cuales de estas direcciones pertenecen a dicha red:
150.214.141.32
150.214.141.138
150.214.142.23
Paso 1: para ver si son o no direcciones validas de dicha subred clase C tenemos que descomponerlas a nivel binario:
150.214.141.32 10010110.1101010.10001101.10000000
150.214.141.138 10010110.1101010.10001101.10001010
150.214.142.23 10010110.1101010.10001110.00010111
255.255.255.0 11111111.1111111.11111111.00000000
150.214.141.0 10010110.1101010.10001101.00000000
Paso 2: una vez tenemos todos los datos a binario pasamos a recordar el operador lógico AND o multiplicación:
Valor A
Valor B
Resultado
0
0
0
0
1
0
1
0
0
1
1
1

Vamos a explicar como hace la comprobación el equipo conectado a una red local.
Primero comprueba la dirección IP con su máscara de red, para ello hace un AND bit a bit de todos los dígitos:
150.214.141.32 10010110.1101010.10001101.10000000
255.255.255.0 11111111.1111111.11111111.00000000
__________________________________________________
150.214.141.0 10010110.1101010.10001101.00000000

Luego hace la misma operación con la dirección IP destino.
150.214.141.138 10010110.1101010.10001101.10001010
255.255.255.0 11111111.1111111.11111111.00000000
__________________________________________________
150.214.141.0 10010110.1101010.10001101.00000000

El resultado que obtenemos ambas veces es la dirección de red, esto no indica que los dos equipos están dentro de la misma red.
Paso3: vamos ha hacerlo con la otra dirección IP.

150.214.142.23 10010110.1101010.10001110.00010111
255.255.255.0 11111111.1111111.11111111.00000000
__________________________________________________
150.214.142.0 10010110.1101010.10001110.00000000

Como vemos este resultado nos indica que dicho equipo no pertenece a la red sino que es de otra red en este caso la red sería 150.214.142.0.Ejercicio 2
Pasamos ahora a complicar un poco más la cosa. Como hemos leído antes la dirección IP se compone de dos partes la dirección de red y la dirección de host(máquina o PC). Imaginemos que en nuestra red solo hace falta 128 equipos y no 254 la solución sería dividir la red en dos partes iguales de 128 equipos cada una.
Primero cogemos la máscara de red.
Dirección de red Dirección de host.
________.________.________.________
255.255.255.0 11111111.11111111.11111111.00000000

Si lo que queremos es crear dos subredes de 128 en este caso tenemos que coger un bit de la parte de identificativa del host.
Por lo que la máscara de re quedaría de esta manera.

Dirección de red Dirección de host.
________.________.________.x._______
255.255.255.128 11111111.11111111.11111111.10000000

Donde X es el bit que hemos cogido para dicha construcción. Por lo que el último octeto tendría el valor 10000000 que es 128 en decimal.
Si la dirección de red que hemos utilizado es la 150.214.141.0 al poner esta máscara de red tendríamos dos subredes.
La 150.214.141.0 y la 150.214.141.128 que tendrían los siguientes rangos IP:
La 150.214.141.0 cogería desde la 150.214.141.1 hasta la 150.214.141.127
La 150.214.141.128 sería pues desde la 150.214.141.128 hasta la 150.214.141.254.
La máscara de red para las dos subredes sería la 255.255.255.128.

Comprobar.
Sea la máscara de red 255.255.255.128
La dirección de red 150.214.141.128
Comprobar si las siguientes direcciones pertenecen a dicha subred.

150.214.141.134
150.214.141.192
150.214.141.38
150.214.141.94

Si hemos realizado el ejercicio se tiene que comprobar que:
150.214.141.134 150.214.141.192 pertenecen a la subred 150.214.141.128
150.214.141.38 150.214.141.94 pertenecen a la subred 150.214.141.0

CLASES DE RED


Las direcciones de clase A
Corresponden a redes que pueden direccionar hasta 16.777.214 máquinas cada una.
Las direcciones de red de clase A tienen siempre el primer bit a 0.
0 + Red (7 bits) + Máquina (24 bits)
Solo existen 124 direcciones de red de clase A.
Las direcciones de clase B
Las direcciones de red de clase B permiten direccionar 65.534 máquinas cada una.
Los dos primeros bits de una dirección de red de clase B son siempre 01.
01 + Red (14 bits) + Máquina (16 bits)
Existen 16.382 direcciones de red de clase B.
Las direcciones de clase C
Las direcciones de clase C permiten direccionar 254 máquinas.
Las direcciones de clase C empiezan con los bits 110
110 + Red (21 bits) + Máquina (8 bits)
Existen 2.097.152 direcciones de red de clase C.
Las direcciones de clase D
Las direcciones de clase D son un grupo especial que se utiliza para dirigirse a grupos de máquinas. Estas direcciones son muy poco utilizadas. Los cuatro primeros bits de una dirección de clase D son 1110.
Direcciones de red reservadas
Direcciones de subredes reservadas:
000.xxx.xxx.xxx (1)
127.xxx.xxx.xxx (reservada como la propia máquina)
128.000.xxx.xxx (1)
191.255.xxx.xxx (2)
192.168.xxx.xxx (reservada para intranets)
223.255.255.xxx (2)
· Direcciones de máquinas reservadas:
xxx.000.000.000 (1)
xxx.255.255.255 (2)
xxx.xxx.000.000 (1)
xxx.xxx.255.255 (2)
xxx.xxx.xxx.000 (1)
xxx.xxx.xxx.255 (2)
(1) Se utilizan para identificar a la red.
(2) Se usa para enmascarar.

lunes, 8 de junio de 2009

protocolos TCP/IP,que es TCP/IP

Protocolos de comunicaciones:Los protocolos que se utilizan en las comunicaciones son una serie de normas que deben aportar las siguientes funcionalidades:

- Permitir localizar un ordenador de forma inequívoca.

- Permitir realizar una conexión con otro ordenador.

- Permitir intercambiar información entre ordenadores de forma segura, independiente del tipo de maquinas que estén conectadas (PC, Mac,AS-400...).

- Abstraer a los usuarios de los enlaces utilizados (red telefónica, radioenlaces, satélite...) para el intercambio de información.

- Permitir liberar la conexión de forma ordenada.

Debido a la gran complejidad que conlleva la interconexión de ordenadores, se ha tenido que dividir todos los procesos necesarios para realizar las conexiones en diferentes niveles.

Cuando se habla de TCP/IP , se relaciona automáticamente como el protocolo sobre el que funciona la red Internet . Esto , en cierta forma es cierto , ya que se le llama TCP/IP , a la familia de protocolos que nos permite estar conectados a la red Internet .

- El protocolo TCP, funciona en el nivel de transporte del modelo de referencia OSI, proporcionando un transporte fiable de datos.

- El protocolo IP, funciona en el nivel de red del modelo OSI, que nos permite encaminar nuestros datos hacia otras maquinas.

Pero un protocolo de comunicaciones debe solucionar una serie de problemas relacionados con la comunicación entre ordenadores , además de los que proporciona los protocolos TCP e IP .

Arquitectura de protocolos TCP/IP

Para poder solucionar los problemas que van ligados a la comunicación de ordenadores dentro de la red Internet , se tienen que tener en cuenta una serie de particularidades sobre las que ha sido diseñada TCP/IP:

- Los programas de aplicación no tienen conocimiento del hardware que se utilizara para realizar la comunicación (módem, tarjeta de red...)

- La comunicación no esta orientada a la conexión de dos maquinas, eso quiere decir que cada paquete de información es independiente, y puede viajar por caminos diferentes entre dos maquinas.

- La interfaz de usuario debe ser independiente del sistema, así los programas no necesitan saber sobre que tipo de red trabajan.

- El uso de la red no impone ninguna topología en especial

Descomposición en niveles de TCP/IP.

Toda arquitectura de protocolos se descompone en una serie de niveles , usando como referencia el modelo OSI . Esto se hace para poder dividir el problema global en subproblemas de mas fácil solución .

Al diferencia de OSI , formado por una torre de siete niveles , TCP/IP se descompone en cinco niveles , cuatro niveles software y un nivel hardware . A continuación pasaremos a describir los niveles software , los cuales tienen cierto paralelismo con el modelo OSI.

Nivel de aplicación

Constituye el nivel mas alto de la torre tcp/ip . A diferencia del modelo OSI , se trata de un nivel simple en el que se encuentran las aplicaciones que acceden a servicios disponibles a través de Internet

Nivel de transporte

Este nivel proporciona una comunicación extremo a extremo entre programas de aplicación. La maquina remota recibe exactamente lo mismo que le envió la maquina origen.

Para implementar el nivel de transporte se utilizan dos protocolos :

- UDP:proporciona un nivel de transporte no fiable de datagramas, ya que apenas añade información al paquete que envía al nivel inferior, solo la necesaria para la comunicación extremo a extremo. Lo utilizan aplicaciones como NFS y RPC, pero sobre todo se emplea en tareas de control.

- TCP (Transport Control Protocolo):

es el protocolo que proporciona un transporte fiable de flujo de bits entre aplicaciones. Esta pensado para poder enviar grandes cantidades de información de forma fiable, liberando al programador de aplicaciones de la dificultad de gestionar la fiabilidad de la conexión (retransmisiones, perdidas de paquete, orden en que llegan los paquetes ,duplicados de paquetes, ...) que gestiona el propio protocolo. Pero la complejidad de la gestión de la fiabilidad tiene un coste en eficiencia, ya que para llevar a cabo las gestiones anteriores se tiene que añadir bastante información a los paquetes a enviar. Debido a que los paquetes a enviar tienen un tamaño máximo, como mas información añada el protocolo para su gestión , menos información que proviene de la aplicación podrá contener ese paquete. Por eso, cuando es mas importante la velocidad que la fiabilidad, se utiliza UDP, en cambio TCP asegura la recepción en destino de la información a transmitir.

-Nivel de red

También recibe el nombre de nivel Internet. Coloca la información que le pasa el nivel de transporte en datagramas IP, le añade cabeceras necesaria para su nivel y lo envía al nivel inferior. Es en este nivel donde se emplea el algoritmo de encaminamiento, al recibir un datagrama del nivel inferior decide, en función de su dirección, si debe procesarlo y pasarlo al nivel superior, o bien encaminarlo hacia otra maquina.

- IP (Internet Protocol):

es un protocolo no orientado a la conexión, con mensajes de un tamaño máximo . Cada datagrama se gestiona de forma independiente, por lo que dos datagramas pueden utilizar diferentes caminos para llegar al mismo destino, provocando que lleguen en diferente orden o bien duplicados.

- ICMP (Internet Control Message Protocol):

proporciona un mecanismo de comunicación de información de control y de errores entre maquinas intermedias por las que viajaran los paquetes de datos .

- IGMP (Internet Group Management Protocol):

este protocolo esta íntimamente ligado a IP . Se emplea en maquinas que emplean IP multicast . El IP multicast es una variante de IP que permite emplear datagramas con múltiples destinatarios .

También en este nivel tenemos una serie de protocolos que se encargan de la resolución de direcciones:

ARP (Address Resolution Protocol):

cuando una maquina desea ponerse en contacto con otra conoce su dirección IP , entonces necesita un mecanismo dinámico que permite conocer su dirección física .

- RARP (Reverse Address Resolution Protocol):

a veces el problema es al revés, o sea, una máquina solo conoce su dirección física, y desea conocer su dirección lógica.

- BOOTP (Bootstrap Protocol):

el protocolo RARP resuelve el problema de la resolución inversa de direcciones, pero para que pueda ser mas eficiente, enviando más información que meramente la dirección IP, se ha creado el protocolo BOOTP.

Nivel de enlace

Este nivel se limita a recibir datagramas del nivel superior (nivel de red) y transmitirlo al hardware de la red. Pueden usarse diversos protocolos: DLC(IEEE 802.2), Frame Relay, X.25, etc.

La interconexión de diferentes redes genera una red virtual en la que las maquinas se identifican mediante una dirección de red lógica. Sin embargo a la hora de transmitir información por un medio físico se envía y se recibe información de direcciones físicas.

Transceivers

Transceivers:son una combinación de transmisor/receptor de información. El transceiver transmite paquetes de datos desde el controlador al bus y viceversa.En una ethernet, los transceivers se desconectan cuando el equipo al que están conectados no está funcionando, sin afectar para nada al comportamiento de la red.
Multitransceivers:Son transceivers que permiten la conexión de más de un equipo a la red en el mismo sitio, es decir, tienen varias salidas para equipos.
Multiport-transceivers:Son equipos que van conectados a un transceiver y que tienen varias puertas de salida para equipos. La única limitación que tienen es que mediante estos equipos no se pueden interconectar equipos que conecten redes entre sí.
Fan-out:van conectados a un transceiver, y permiten dividir la señal del mismo a varios equipos. Su limitación estriba en que la longitud de los cables que vayan a los equipos es menor , porque no regeneran la señal, a diferencia de los multiport-transceivers.
Multiport-repeaters:Son equipos que van conectados a red, dando en cada una de sus múltiples salidas señal de red regenerada. Entre sí mismos se comportan como un segmento de red.El multiport es un repetidor
Servidores de Terminales:Son equipos que van conectados a la red, y en sus salidas generan una señal para un terminal, tanto síncrono como asíncrono, desde el cual se podrá establecer una sesión con un equipo o host, El servidor de terminales es un dispositivo configurado para integrar terminales "tontas" o PCs por interface serie con un emulador de terminales.

routers

Estos equipos trabajan a nivel 3 de la pila OSI, es decir pueden filtrar protocolos y direcciones a la vez. Los equipos de la red saben que existe un router y le envían los paquetes directamente a él cuando se trate de equipos en otro segmento.

los routers pueden interconectar redes distintas entre sí; eligen el mejor camino para enviar la información, balancean tráfico entre líneas, etc.

Gateways.

También llamados traductores de protocolos, son equipos que se encargan, como su nombre indica, a servir de intermediario entre los distintos protocolos de comunicaciones para facilitar la interconexión de equipos distintos entre sí.

Su forma de funcionar es que tienen duplicada la pila OSI, es decir, la correspondiente a un protocolo y, paralelamente, la del otro protocolo