Archivos Mensuales: mayo 2011

Capa de Transporte Nivel 4

Chicos aqui les dejo un trabajo realizado por Robert Denda y Sergio Martin sobre la capa de transporte

Es excelente

Anuncios

Detecta posibles brechas de seguridad en una red local

Programa que aplicaremos Acid Scanner

La mayor preocupación de un administrador de sistema es a buen seguro cerciorarse de que no existan brechas de seguridad en su red. Acid Scanner les ayudará en esa tarea mediante una serie de utilidades de monitorización y escaneo que ofrecen la posibilidad de escanear a la vez un amplio rango de IPs.

Acid Scanner es un conjunto de herramientas de monitorización que escanearán a todas las maquinas conectadas a una red local, con tal de detectar posibles brechas de seguridad, en especial en los recursos compartidos y conexiones remotas.

Entre las herramientas disponibles, está el escaneo de los recursos compartidos del sistema, ping, traceroute, e incluso la posibilidad de establecer una conexión vía protocolos TCP o UDP para enviar y recibir paquetes de datos. Adicionalmente, podrás montar recursos remotos en tu propio PC, ver información netbios

Datagramas Ip en la segmentación de datos

Host

Dirección física

Dirección IP

Red

A

00-60-52-0B-B7-7D

192.168.0.10

Red 1

R1

00-E0-4C-AB-9A-FF

192.168.0.1

A3-BB-05-17-29-D0

10.10.0.1

Red 2

B

00-E0-4C-33-79-AF

10.10.0.7

R2

B2-42-52-12-37-BE

10.10.0.2

00-E0-89-AB-12-92

200.3.107.1

Red 3

C

A3-BB-08-10-DA-DB

200.3.107.73

D

B2-AB-31-07-12-93

200.3.107.200

 
 

 

El concepto de red está relacionado con las direcciones IP que se configuren en cada ordenador, no con el cableado. Es decir, si tenemos varias redes dentro del mismo cableado solamente los ordenadores que permanezcan a una misma red podrán comunicarse entre sí. Para que los ordenadores de una red puedan comunicarse con los de otra red es necesario que existan routers que interconecten las redes. Un routers o en caminador no es más que un ordenador con varias direcciones IP, una para cada red, que permita el tráfico de paquetes entre sus redes.

La capa de red se encarga de fragmentar cada mensaje en paquetes de datos llamados datagramas IP y de enviarlos de forma independiente a través de la red de redes. Cada datagrama IP incluye un campo con la dirección IP de destino. Esta información se utiliza para enrutar los datagramas a través de las redes necesarias que los hagan llegar hasta su destino.

Nota: Cada vez que visitamos una página web o recibimos un correo electrónico es habitual atravesar un número de redes comprendido entre 10 y 20, dependiendo de la distancia de los hosts. El tiempo que tarda un datagrama en atravesar 20 redes (20 routers) suele ser inferior a 600 milisegundos.

En el ejemplo anterior, supongamos que el ordenador 200.3.107.200 (D) envía un mensaje al ordenador con 200.3.107.73 (C). Como ambas direcciones comienzan con los mismos números, D sabrá que ese ordenador se encuentra dentro de su propia red y el mensaje se entregará de forma directa. Sin embargo, si el ordenador    200.3.107.200 (D) tuviese que comunicarse con 10.10.0.7 (B), D advertiría que el ordenador destino no pertenece a su propia red y enviaría el mensaje al router R2 (es el ordenador que le da salida a otras redes). El  router entregaría el mensaje de forma directa porque B se encuentra dentro de una de sus redes (la Red 2).

El protocolo de red IP

 Sólo tiene cabecera, ya que no realiza ninguna comprobación sobre el contenido del paquete. Sus campos se representan siempre alineados en múltiplos de 32 bits. Los campos son, por este orden:

  • Versión: 4 bits, actualmente se usa la versión 4, aunque ya esta en funcionamiento la versión 6. Este campo permite a los routers discriminar si pueden tratar o no el paquete.
  • Longitud de cabecera (IHL): 4 bits, indica el número de palabras de 32 bits que ocupa la cabecera. Esto es necesario porque la cabecera puede tener una longitud variable.
  • Tipo de servicio: 6 bits (+2 bits que no se usan), en este campo se pensaba recoger la prioridad del paquete y el tipo de servicio deseado, pero los routers no hacen mucho caso de esto y en la práctica no se utiliza. Los tipos de servicios posibles serían:
    • D: (Delay) Menor retardo, por ejemplo para audio o vídeo.
    • T: (Throughput) Mayor velocidad, por ejemplo para envío de ficheros grandes.
    • R: (Reliability) Mayor fiabilidad, para evitar en la medida de lo posible los reenvíos.
  • Longitud del paquete: 16 bits, como esto lo incluye todo, el paquete más largo que puede enviar IP es de 65535 bytes, pero la carga útil será menor, porque hay que descontar lo que ocupa la propia cabecera.
  • Identificación: 16 bits, Es un número de serie del paquete, si un paquete se parte en pedazos más pequeños por el camino (se fragmenta) cada uno de los fragmentos llevará el mismo número de identificación.
  • control de fragmentación: son 16 bits que se dividen en:
    • 1 bit vacío: sobraba sitio.
    • 1 bit DF: del ínglés dont’t fragment. Si vale 1 le advierte al router que este paquete no se corta.
    • 1 bit MF: del inglés more fragments indica que éste es un fragmento de un paquete más grande y que, además, no es el último fragmento.
    • desplazamiento de Fragmento: es la posición en la que empieza este fragmento respecto del paquete original.
  • Tiempo de vida: 8 bits, en realidad se trata del número máximo de routers (o de saltos) que el paquete puede atravesar antes de ser descartado. Como máximo 255 saltos.
  • Protocolo: 8 bits, este campo codifica el protocolo de nivel de transporte al que va destinado este paquete. Está unificado para todo el mundo en Números de protocolos por la IANA Internet Assigned Numbers Authority.
  • Checksum de la cabecera: 16 bits, aunque no se comprueben los datos, la integridad de la cabecera sí es importante, por eso se comprueba.
  • Direcciones de origen y destino: 32 bits cada una. Son las direcciones IP de la estaciones de origen y destino.
  • Opciones: Esta parte puede estar presente o no, de estarlo su longitud máxima es de 40 bytes.

Capa II nivel de enlace de Datos según OSI

    El nivel de enlace de datos (en inglés data link level) o capa de enlace de datos es la segunda capa del modelo OSI, el cual es responsable de la transferencia fiable de información a través de un circuito de transmisión de datos. Recibe peticiones de la capa de red y utiliza los servicios de la capa física.

El objetivo de la capa de enlace es conseguir que la información fluya, libre de errores, entre dos máquinas que estén conectadas directamente (servicio orientado a conexión).

Para lograr este objetivo tiene que montar bloques de información (llamados tramas en esta capa), dotarles de una dirección de capa de enlace, gestionar la detección o corrección de errores, y ocuparse del control de flujo entre equipos (para evitar que un equipo más rápido desborde a uno más lento).

Cuando el medio de comunicación está compartido entre más de dos equipos es necesario arbitrar el uso del mismo. Esta tarea se realiza en la subcapa de control de acceso al medio.

Dentro del grupo de normas IEEE 802, la subcapa de enlace lógico se recoge en la norma IEEE 802.2 y es común para todos los demás tipos de redes (Ethernet o IEEE 802.3IEEE 802.11 o Wi-FiIEEE 802.16 o WiMAX, etc.); todas ellas especifican un subcapa de acceso al medio así como una capa física distinta.

Otro tipo de protocolos de la capa de enlace serían PPP (Point to point protocol o protocolo punto a punto), HDLC (High level data link control o protocolo de enlace de alto nivel), por citar dos.

En la práctica la subcapa de acceso al medio suele formar parte de la propia tarjeta de comunicaciones, mientras que el subcapa de enlace lógico estaría en el programa adaptador de la tarjeta (driver en inglés).

 

Tramas

En la capa de enlace la facilidad de área extensa por la que se pueden comunicar los sistemas mediante un protocolo de la capa de enlace de datos.

Funciones

La capa de enlace de datos es responsable de la transferencia fiable de información a través de un Circuito eléctrico de transmisión de datos. La transmisión de datos lo realiza mediante tramas que son las unidades de información con sentido lógico para el intercambio de datos en la capa de enlace. También hay que tener en cuenta que en el modelo TCP/IP corresponde a la segunda capa

Sus principales funciones son:

  1. Iniciación, terminación e identificación.
  2. Segmentación y bloqueo.
  3. Sincronización de octeto y carácter.
  4. Delimitación de trama y transparencia.
  5. Control de errores.
  6. Control de flujo.
  7. Recuperación de fallos.
  8. Gestión y coordinación de la comunicación.

     

Iniciación, terminación e identificación

La función de iniciación comprende los procesos necesarios para activar el enlace e implica el intercambio de tramas de control con el fin de establecer la disponibilidad de las estaciones para transmitir y recibir información.

Las funciones de terminación son de liberar los recursos ocupados hasta la recepción/envío de la última trama. También de usar tramas de control. La identificación es para saber a qué terminal se debe de enviar una trama o para conocer quien envía la trama. Se lleva a cabo mediante la dirección de la capa de enlace.

Segmentación y bloqueo

La segmentación surge por la longitud de las tramas ya que si es muy extensa, se debe de realizar tramas más pequeñas con la información de esa trama excesivamente larga.

Si estas tramas son excesivamente cortas, se ha de implementar unas técnicas de bloque que mejoran la eficiencia y que consiste en concatenar varios mensajes cortos de nivel superior en una única trama de la capa de enlace más larga.

Sincronización de octeto y carácter

En las transferencias de información en la capa de enlace es necesario identificar los bits y saber qué posición les corresponde en cada carácter u octeto dentro de una serie de bits recibidos.

Esta función de sincronización comprende los procesos necesarios para adquirir, mantener y recuperar la sincronización de carácter u octeto. Es decir, poner en fase los mecanismos de codificación del emisor con los mecanismos de decodificación del receptor.

 

Delimitación de trama

La capa de enlace debe ocuparse de la delimitación y sincronización de la trama. Para la sincronización puede usar 3 métodos:

  • El primero de ellos es “Principio y fin” (caracteres específicos para identificar el principio o el fin de cada trama).
  • También puede usar “Principio y cuenta” (Utiliza un carácter para indicar comienzo y seguido por un contador que indica su longitud).
  • Por último puede usar el “Guión” (se emplea una agrupación especifica de bits para identificar el principio y fin mediante banderas/flags).

La transparencia se realiza mediante la inserción de bits. Consta de ir contando los unos consecutivos y cuando se encuentra con 5 unos seguidos y consecutivos introduce el bit 0 después del quinto uno. Ejemplo: Las banderas/flag suelen ser 01111110, y al aplicar la transparencia pasa a ser 011111010.

Control de errores

Proporciona detección y corrección de errores en el envío de tramas entre computadores, y provee el control de la capa física. Sus funciones, en general, son:

Correctores de error: Es opcional en esta capa, la encargada de realizar esta función es la capa de transporte, en una WAN es muy probable que la verificación, la realiza la capa de enlace


Para la Identificación de tramas puede usar distintas técnicas como:

  • Contador de caracteres
  • Caracteres de inicio y final con caracteres de relleno
  • Secuencia de bits indicadora de inicio y final, con bits de relleno

El control de flujo es necesario para no ‘agobiar’ al receptor. Se realiza normalmente en la capa de transporte, también a veces en la capa de enlace. Utiliza mecanismos de retroalimentación. Suele ir unido a la corrección de errores y no debe limitar la eficiencia del canal.

Los métodos de control de errores son básicamente 2:

  • FEC o corrección de errores por anticipado y no tiene control de flujo.
  • ARQ: Posee control de flujo mediante parada y espera, o/y ventana deslizante.

Las posibles implementaciones son:

  • Parada y espera simple: Emisor envía trama y espera una señal del receptor para enviar la siguiente o la que acaba de enviar en caso de error.
  • Envío continuo y rechazo simple: Emisor envía continuamente tramas y el receptor las va validando. Si encuentra una errónea, elimina todas las posteriores y pide al emisor que envíe a partir de la trama errónea.
  • Envío continuo y rechazo selectivo: transmisión continúa salvo que sólo retransmite la trama defectuosa.

La detección de errores la realiza mediante diversos tipos de códigos del que hay que resaltar:

La corrección de errores están basados en Código Hamming, por repetición, verificación de paridad cruzada, Reed-Solomon y de goyle.

Control de flujo

El control de flujo es necesario para no saturar al receptor de uno a más emisores. Se realiza normalmente en la capa de transporte, también a veces en la capa de enlace. Utiliza mecanismos de retroalimentación. Suele ir unido a la corrección de errores y no debe limitar la eficiencia del canal. El control de flujo conlleva dos acciones importantísimas que son la detección de errores y la corrección de errores.

La detección de errores se utiliza para detectar errores a la hora de enviar tramas al receptor e intentar solucionarlos. Se realiza mediante diversos tipos de códigos del que hay que resaltar el CRC (códigos de redundancia cíclica), simple paridad (puede ser par, números de 1´s par, o impar) paridad cruzada (Paridad horizontal y vertical) y Suma de verificación

La corrección de errores surge a partir de la detección para corregir errores detectados y necesitan añadir a la información útil un número de bits redundantes bastante superior al necesario para detectar y retransmitir. Sus técnicas son variadas. El Código Hamming, Repetición, que cada bit se repite 3 veces y en caso de fallo se toma el bit que más se repite; También puede hacerse mediante verificación de paridad cruzadaReed-Solomon y de goyle.

También cabe destacar los protocolos HDLC que es un control de enlace de datos a alto nivel, orientado a bit y obedece a una ARQ de ventana deslizante o continua. También existen protocolos orientados a carácter.

Recuperación de fallos

Se refiere a los procedimientos para detectar situaciones y recuperar al nivel de situaciones anómalas como la ausencia de respuesta, recepción de tramas inválidas, etc. Las situaciones más típicas son la pérdida de tramas, aparición de tramas duplicadas y llegada de tramas fuera de secuencia.

Si no se tratasen correctamente estos eventos se perderán información y se aceptarán datos erróneos como si fuesen correctos. Generalmente se suelen utilizar contadores para limitar el número de errores o reintentos de los procesos y procedimientos. También se pueden usar temporizadores para establecer plazos de espera (timeout) de los sucesos.

Gestión y coordinación de la comunicación


 

La gestión atiende a 2 tipos:

  • El primero de ellos es un sistema centralizado donde existe una máquina maestra y varias esclavas. Estas conexiones se pueden realizar punto a punto o multipunto.
  • El segundo de ellos es el distribuido, donde no existe máquina maestra y todas compiten por el control del sistema de comunicación.

La coordinación se puede realizar mediante selección o contienda:

  • La selección se puede implementar mediante sondeo/selección, donde el maestro recoge un mensaje de una secundaria y se la entrega a quien seleccione. También es posible asignando un testigo a una máquina que es la que puede emitir mensajes/tramas. Son típicas las configuraciones Token Ring y Token Bus.
  • La contienda se basa en que cada ordenador emite su trama/mensaje cuando le apetece. Todos los componentes de la red son tanto emisores como receptores. Son típicos los sistemas ALOHA yCSMA/CD. Hay que tener cuidado con las colisiones.