lunes, 19 de mayo de 2014

Capitulo 5 (continuación)

5.2 redes: división de hosts en grupos5.2.1 Redes: Separación De Hosts En Grupos Comunes

Una de las principales funciones de la capa de Red es proveer un mecanismo para direccionar hosts. A medida que crece el número de hosts de la red, se requiere más planificación para administrar y direccionar la red. 

División de redes 

En lugar de tener todos los hosts conectados en cualquier parte a una vasta red global, es más práctico y manejable agrupar los hosts en redes específicas. Históricamente, las redes basadas en IP tienen su raíz como una red grande. Como esta red creció, también lo hicieron los temas relacionados con su crecimiento. Para aliviar estos problemas, la red grande fue separada en redes más pequeñas que fueron interconectadas. Estas redes más pequeñas generalmente se llaman subredes.
Red y subred son términos utilizados indistintamente para referirse a cualquier sistema de red hecho posible por los protocolos de comunicación comunes compartidos del modelo TCP/IP.
De manera similar, a medida que nuestras redes crecen, pueden volverse demasiado grandes para manejarlas como una única red. En ese punto, necesitamos dividir nuestra red. Cuando planeamos la división de la red, necesitamos agrupar aquellos hosts con factores comunes en la misma red.
Las redes pueden agruparse basadas en factores que incluyen:
• ubicación geográfica,
• propósito, y
• propiedades 

5.3 enrutamiento: cómo se maneja nuestros paquetes de datos5.3.1 Parámetros de Dispositivos. Como respaldar la comunicación fuera de nuestra red

Dentro de una red o subred, los hosts se comunican entre sí sin necesidad de un dispositivo intermediario de capa de red. Cuando un host necesita comunicarse con otra red, un dispositivo intermediario o router actúa como un Gateway hacia la otra red.
Como parte de su configuración, un host tiene una dirección de Gateway por defecto definida. La dirección de Gateway es la dirección de una interfaz de router que está conectada a la misma red que el host.
Tenga en claro que no es factible para un host particular conocer la dirección de todos los dispositivos en Internet con los cuales puede tener que comunicarse. Para comunicarse con un dispositivo en otra red, un host usa la dirección de este Gateway, o Gateway por defecto, para enviar un paquete fuera de la red local.

El router también necesita una ruta que defina dónde enviar luego el paquete. A esto se lo denomina dirección del siguiente salto. Si una ruta está disponible al router, el router enviará el paquete al router del próximo salto que ofrece una ruta a la red de destino.

5.4 procesos de enrutamientos: Como se aprende las rutas  5.4.1 Protocolos De Enrutamiento: Como Compartir Rutas 

El enrutamiento requiere que cada salto o router a lo largo de las rutas hacia el destino del paquete tenga una ruta para reenviar el paquete. De otra manera, el paquete es descartado en ese salto. Cada router en una ruta no necesita una ruta hacia todas las redes. Sólo necesita conocer el siguiente salto en la ruta hacia la red de destino del paquete. 

La tabla de enrutamiento contiene información que un router usa en sus decisiones al reenviar paquetes. Para las decisiones de enrutamiento, la tabla de enrutamiento necesita representar el estado más preciso de rutas de red a las que el router puede acceder. La información de enrutamiento desactualizada significa que los paquetes no pueden reenviarse al siguiente salto más adecuado, causando demoras o pérdidas de paquetes. 

Esta información de ruta puede configurarse manualmente en el router o aprenderse dinámicamente a partir de otros routers en la misma Internetwork. Después de que se configuran las interfaces de un router y éstas se vuelven operativas, se instala la red asociada con cada interfaz en la tabla de enrutamiento como una ruta conectada directamente. 





viernes, 16 de mayo de 2014

Capitulo 5

5.1.1 Capa de Red: Comunicación de Host a Host

Para transmitir datos de extremo a extremo la capa 3 utiliza cuatro procesos básicos:
ü  Direccionamiento: Se agrega dirección única al dispositivo y se lo denomina host.
ü  Encapsulación: Durante el proceso de encapsulación agrega un encabezado. El encabezado de la Capa 3 también contiene la dirección del host de origen y la dirección de destino.
ü  Enrutamiento: Dirigir los paquetes a su host de destino.
ü  Des encapsulación: Si la dirección es correcta, el paquete es des encapsulado por la capa de red y la PDU de la Capa 4 contenida en el paquete pasa hasta el servicio adecuado en la capa de Transporte.

Protocolos de la capa de red

ü  Protocolo de Internet versión 4 (IPv4)
ü  Protocolo de Internet versión 6 (IPv6)
ü  Intercambio Novell de paquetes de Internetwork (IPX)
ü  AppleTalk
ü  Servicio de red sin conexión (CLNS/DECNet)

5.1.2 Protocolo IPv4: Ejemplo de Protocolo de la Capa de Red

La versión de 4 de IP es la versión más utilizada, es el único protocolo que se utiliza para transportar datos en internet. IPv6 es otro protocolo que opera junto a IPv4, la estructura y el contenido del encabezado están especificados en estos protocolos. Las características de cada protocolo son diferentes.

Características básicas de IPv4:

ü  Sin conexión: No establece conexión antes de enviar los paquetes de datos.
ü  Máximo esfuerzo (no confiable): No se usan encabezados para garantizar la entrega de paquetes.
ü  Medios independientes: Operan independientemente del medio que lleva los datos.

5.1.3 Protocolo IPv4: Sin Conexión

Los protocolos orientados a la conexión, como TCP, requieren el intercambio del control de datos para establecer la conexión así como también los campos adicionales en el encabezado de la PDU. Como IP trabaja sin conexión, no requiere un intercambio inicial de información de control para establecer una conexión de extremo a extremo antes de que los paquetes sean enviados, ni requiere campos adicionales en el encabezado de la PDU para mantener esta conexión. Este proceso reduce en gran medida la sobrecarga del IP.


Sin embargo, la entrega del paquete sin conexión puede hacer que los paquetes lleguen a destino fuera de secuencia. Si los paquetes que no funcionan o están perdidos crean problemas para la aplicación que usa los datos, luego los servicios de las capas superiores tendrán que resolver estas cuestiones.

5.1.4 Protocolo IPv4 Mejor IntentoServicio de Mejor Intento (no confiable)

El transportar encabezados pequeños genera menor sobrecarga, esto significa menor tiempo en la entrega.
La capa 3 es la encargada de transportar los paquetes con la menor carga posible, esta capa no se encarga de ver si la comunicación es confiable de esto se encargan las capas superiores de tolerar la sobrecarga de la comunicación confiable.
Cuando se dice que IP no es confiable se refiere a que IP no tiene la capacidad de administrar ni recuperar paquetes no entregados o corruptos.
IP funciona con eficiencia en la capa de red. La capa de transporte en el conjunto TCT/IP puede elegir entre TCP o UDP según las necesidades de la comunicación, con esto se logra que IP sea más adaptable y actúe en los diferentes tipos de comunicación.
En el encabezado del paquete IP no existe: campos requeridos, acuses de recibo, control de errores, ni rastreo de paquetes, por lo tanto no existe la retransmisión de paquetes.

5.1.5 Protocolo IPv4: Independiente de los Medios

En la capa de red tampoco se encuentran las características de los medios para transportar los paquetes. IPv4 y IPv6 operan independientemente de los medios que llevan los datos a capas inferiores.
La capa de Enlace de Datos es la encargada de tomar el paquete IP y transmitirlo por el medio de comunicación, por lo tanto los paquetes IP no están limitados a un medio en particular.
La característica principal de los medios que la capa de Red considera:
El tamaño máximo de la PDU que cada medio puede transportar, denominada Unidad máxima de transmisión (MTU). La comunicación entre la capa de Enlace de Datos y la capa de Red se establecer un tamaño máximo para el paquete. La capa de Enlace de Datos pasa la MTU hacia arriba hasta la capa de Red. La capa de Red entonces determina de qué tamaño crear sus paquetes.
En algunos casos, un dispositivo intermediario, generalmente un router, necesitará separar un paquete cuando se lo envía desde un medio a otro medio con una MTU más pequeña. A este proceso se lo llama fragmentación de paquetes o fragmentación.

5.1.6 Paquete IPv4: Empaquetado de la PDU de la capa de Transporte

IPv4 encapsula o empaqueta el datagrama de la capa de transporte para que la red pueda entregarlo al host de destino. La encapsulación de IPv4 permanece en su lugar desde el host de origen hasta el host de destino.
El proceso de encapsulación por capas permite que las capas se desarrollen y escalen sin afectar a otras capas, por lo tanto los segmentos de la capa de transporte pueden ser empaquetados fácilmente por protocolos de la capa de red o por nuevos protocolos.
Los routers pueden implementar los protocolos de la capa de red, el enrutamiento realizado por estos dispositivos intermediarios solo considera el contenido del encabezado de paquetes que encapsula el segmento.
El PDU de la Capa de transporte encapsulada, permanece sin cambios durante los procesos de la capa de red.

5.1.7 Encabezado de paquete IPv4

IPv4 define muchos campos estos campos contienen valores binarios que son tomados como referencia para enviar paquetes a través de la red.
Dirección IP destino: Contiene un valor binario de 32 bits que representa la dirección de red de destino del paquete.
Dirección IP origen: Contiene un valor binario de 32 bits que representa la dirección de origen del paquete.
Tiempo de vida: (TTL) es un valor binario de 8 bits que indica el tiempo remanente de "vida" del paquete. El valor TTL disminuye al menos en uno cada vez que el paquete es procesado por un router (es decir, en cada salto). Cuando el valor se vuelve cero, el router descarta o elimina el paquete y es eliminado del flujo de datos de la red. Este mecanismo evita que los paquetes que no pueden llegar a destino sean enviados indefinidamente entre los routers en un routing loop. Disminuyendo el valor TTL en cada salto se asegura que eventualmente se vuelva cero y que se descartará el paquete con el campo TTL vencido.
Protocolo: Este valor binario de 8 bits indica el tipo de relleno de carga que el paquete traslada.
Los valores de ejemplo son: 01 ICMP, 06 TCP, y 17 UDP.
Tipo de servicio: Contiene un valor binario de 8 bits que se usa para determinar la prioridad de cada paquete. El router que procesa los paquetes puede ser configurado para decidir qué paquete es enviado primero basado en el valor del Tipo de servicio.
Desplazamiento de fragmentos: Cuando se produce una fragmentación, el paquete IPv4 utiliza el campo Desplazamiento de fragmento y el señalizador MF en el encabezado IP para reconstruir el paquete cuando llega al host destino. El campo de desplazamiento del fragmento identifica el orden en el cual ubicar el fragmento del paquete en la reconstrucción.
Señalizador de Más fragmentos: (MF) es un único bit en el campo del señalizador usado con el Desplazamiento de fragmentos para la fragmentación y reconstrucción de paquetes.
Señalizador de No Fragmentar: (DF) es un solo bit en el campo del señalizador que indica que no se permite la fragmentación del paquete.
Versión: Contiene el número IP de la versión (4).
Longitud del encabezado (IHL): Especifica el tamaño del encabezado del paquete.
Longitud del Paquete: Muestra el tamaño completo del paquete, incluyendo el encabezado y los datos, en bytes.
Identificación: Identifica únicamente fragmentos de un paquete IP original.
Checksum del encabezado: Se utiliza para controlar errores del encabezado del paquete.

Opciones: Existen medidas para campos adicionales en el encabezado IPv4 para proveer otros servicios pero éstos son rara vez utilizados.

Capitulo 4

4.1 Funciones de la capa de Transporte

La capa de Transporte permite la segmentación de datos y brinda el control necesario para re ensamblar las partes dentro de los distintos streams de comunicación.

Seguimiento de Conversaciones individuales.

Cualquier host puede tener múltiples aplicaciones que se están comunicando a través de la red. Cada una de estas aplicaciones se comunicará con una o más aplicaciones en hosts remotos.

Segmentación de datos.


Debido a que cada aplicación genera un stream de datos para enviar a una aplicación remota, estos datos deben prepararse para ser enviados por los medios en partes manejables.

Re ensamble de segmentos.


En el host de recepción, cada sección de datos puede ser direccionada a la aplicación adecuada. Además, estas secciones de datos individuales también deben reconstruirse para generar un stream completo de datos que sea útil para la capa de Aplicación.
Identificación de las aplicaciones.
Para poder transferir los streams de datos a las aplicaciones adecuadas, la capa de Transporte debe identificar la aplicación de destino. Para lograr esto, la capa de Transporte asigna un identificador a la aplicación. Los protocolos TCP/IP denominan a este identificador número de puerto. A todos los procesos de software que requieran acceder a la red se les asigna un número de puerto exclusivo en ese host.


Los requerimientos de datos varían.

En las redes convergentes actuales, las aplicaciones con distintas necesidades de transporte pueden comunicarse en la misma red. Los distintos protocolos De la capa de Transporte poseen distintas reglas que permiten que los dispositivos gestionen los diversos requerimientos de datos.

Separación de comunicaciones múltiples.
Considere una computadora conectada a una red que recibe y envía e-mails y mensajes instantáneos, explora sitios Web y realiza una llamada telefónica de VoIP de manera simultánea.

La división de los datos en partes pequeñas y el envío de estas partes desde el origen hacia el destino permiten que se puedan entrelazar (multiplexar) distintas comunicaciones en la misma red.

La segmentación de los datos, que cumple con los protocolos de la capa de Transporte, proporciona los medios para enviar y recibir datos cuando se ejecutan varias aplicaciones de manera concurrente en una computadora. Sin segmentación, sólo una aplicación, la corriente de vídeo por ejemplo, podría recibir datos. No se podrían recibir correos electrónicos, chats ni mensajes instantáneos ni visualizar páginas Web y ver un vídeo al mismo tiempo. 

En la capa de Transporte, cada conjunto de secciones en particular que fluyen desde una aplicación de origen a una de destino se conoce como conversación. Para identificar todos los segmentos de datos, la capa de Transporte agrega un encabezado a la sección que contiene datos binarios. Este encabezado contiene campos de bits. Son los valores de estos campos los que permiten que los distintos protocolos de la capa de Transporte lleven a cabo las diversas funciones. 

4.1.2 Control de las conversaciones

Multiplexación de conversaciones:

Pueden existir varias aplicaciones o servicios ejecutándose en cada host de la red. A cada una de estas aplicaciones o servicios se les asigna una dirección conocida como puerto para que la capa de Transporte pueda determinar con qué aplicación o servicio se identifican los datos.

Algunos protocolos de la capa de Transporte proveen: 

• Conversaciones orientadas a la conexión.
• Entrega confiable, 
• Reconstrucción ordenada de datos, y 
• Control del flujo. 

Establecimiento de una sesión La capa de Transporte puede brindar esta orientación a la conexión creando una sesión entre las aplicaciones. Estas conexiones preparan las aplicaciones para que se comuniquen entre sí antes de que se transmitan los datos. Dentro de estas sesiones, se pueden gestionar de cerca los datos para la comunicación entre dos aplicaciones. 

Entrega confiable Por varias razones, es posible que una sección de datos se corrompa o se pierda por completo a medida que se transmite a través de la red. La capa de Transporte puede asegurar que todas las secciones lleguen a destino al contar con el dispositivo de origen para volver a transmitir los datos que se hayan perdido. 

Entrega en el mismo orden Ya que las redes proveen rutas múltiples que pueden poseer distintos tiempos de transmisión, los datos pueden llegar en el orden incorrecto. Al numerar y secuenciar los segmentos, la capa de Transporte puede asegurar que los mismos se re ensamblen en el orden adecuado. 

Control del flujo Los hosts de la red cuentan con recursos limitados, como memoria o ancho de banda. Cuando la capa de Transporte advierte que estos recursos están sobrecargados, algunos protocolos pueden solicitar que la aplicación que envía reduzca la velocidad del flujo de datos. Esto se lleva a cabo en la capa de Transporte regulando la cantidad de datos que el origen transmite como grupo. El control del flujo puede prevenir la pérdida de segmentos en la red y evitar la necesidad de retransmisión.

4.1.3 Soporte de comunicación confiable

Un protocolo de la capa de Transporte puede implementar un método para asegurar la entrega confiable de los datos. En términos de redes, confiabilidad significa asegurar que cada sección de datos que envía el origen llegue al destino. 

En la capa de Transporte, las tres operaciones básicas de confiabilidad son: 

• Seguimiento de datos transmitidos, 
• Acuse de recibo de los datos recibidos, y 
• Retransmisión de cualquier dato sin acuse de recibo.

4.1.4 TCP y UDP

Protocolo de datagramas de usuario (UDP) UDP es un protocolo simple, sin conexión, descrito en la RFC 768. Cuenta con la ventaja de proveer la entrega de datos sin utilizar muchos recursos. Las porciones de comunicación en UDP se llaman datagramas.

Entre las aplicaciones que utilizan UDP se incluyen:

• Sistema de nombres de dominios (DNS), 
• Streaming de vídeo, y 
• Voz sobre IP (VoIP).

Protocolo de control de transmisión (TCP) TCP: es un protocolo orientado a la conexión, descrito en la RFC 793. TCP incurre en el uso adicional de recursos para agregar funciones. Las funciones adicionales especificadas por TCP están en el mismo orden de entrega, son de entrega confiable y de control de flujo.

Las aplicaciones que utilizan TCP son: 

• Exploradores Web, 
• e-mail, y 
• Transferencia de archivos

4.1.5 Direccionamiento del puerto

Puertos bien conocidos (Números del 0 al 1 023): estos números se reservan para servicios y aplicaciones. Por lo general, se utilizan para aplicaciones como HTTP (servidor Web), POP3/SMTP (servidor de e-mail) y Telnet.

Puertos Registrados (Números 1024 al 49151): estos números de puertos están asignados a procesos o aplicaciones del usuario. Estos procesos son principalmente aplicaciones individuales que el usuario elige instalar en lugar de aplicaciones comunes que recibiría un puerto bien conocido.

Puertos dinámicos o privados (Números del 49 152 al 65 535): también conocidos como puertos efímeros, suelen asignarse de manera dinámica a aplicaciones de cliente cuando se inicia una conexión.

Utilización de los dos protocolos TCP y UDP Algunas aplicaciones pueden utilizar los dos protocolos: TCP y UDP. Por ejemplo, el bajo gasto de UDP permite que DNS atienda rápidamente varias solicitudes de clientes.

4.1.6 Segmentación y re ensamblaje: Divide y vencerás 

No puede transmitirse ningún otro tráfico de red mientras se envían estos datos. Una gran sección de datos puede tardar minutos y hasta horas en enviarse. Además, si hubiera algún error, el archivo de datos completo se perdería o tendría que ser reenviado. Los dispositivos de red no cuentan con buffers de memoria lo suficientemente grandes como para almacenar esa cantidad de datos durante la transmisión o recepción. El límite varía en función de la tecnología de la red y del medio físico específico que se utiliza.

Dividir los datos de aplicación en secciones garantiza que los datos se transmitan dentro de los límites del medio y que los datos de distintas aplicaciones puedan ser multiplexados en el medio. TCP y UDP gestionan la segmentación de forma distinta. Con TCP, cada encabezado de segmento contiene un número de secuencia. 

UDP también rastrean las conversaciones entre aplicaciones, no tienen en cuenta el orden en el que se transmitió la información ni el mantenimiento de la conexión. No existe número de secuencia en el encabezado UDP.

UDP es un diseño simple y genera menos carga que TCP, lo que produce una transferencia de datos más rápida. La información puede llegar en un orden distinto al que fue transmitida, ya que los paquetes pueden tomar diversas rutas a través de la red. Una aplicación que utiliza UDP debe tolerar el hecho de que los datos no lleguen en el orden en el que fueron enviados.

4.2 Protocolo TCP: Comunicación con confiabilidad

4.2.1 TCP: Como generar conversaciones confiables

La confiabilidad de la comunicación TCP se lleva a cabo utilizando sesiones orientadas a la conexión. Antes de que un host que utiliza TCP envíe datos a otro host, la capa de Transporte inicia un proceso para crear una conexión con el destino. Esta conexión permite el rastreo de una sesión o stream de comunicación entre los hosts. Este proceso asegura que cada host tenga conocimiento de la comunicación y se prepare. Una conversación TCP completa requiere el establecimiento de una sesión entre los hosts en ambas direcciones.

Esta confiabilidad se logra contando con campos en el segmento TCP, cada uno con una función específica, como se muestra en la figura. Estos campos se explicarán más adelante en esta sección.

4.2.2 Procesos del servidor TCP

Un servidor individual no puede tener dos servicios asignados al mismo número de puerto dentro de los mismos servicios de la capa de Transporte.

Una manera de mejorar la seguridad en un servidor es restringir el acceso al servidor a sólo aquellos puertos asociados con los servicios y aplicaciones accesibles a solicitantes autorizados. 


La figura muestra la asignación típica de puertos de origen y destino en operaciones de cliente o servidor TCP.

4.2.3 Establecimiento y finalización de la conexión TCP

Cuando dos hosts se comunican utilizando TCP, se establece una conexión antes de que puedan intercambiarse los datos. Luego de que se completa la comunicación, se cierran las sesiones y la conexión finaliza. Los mecanismos de conexión y de sesión habilitan la función de confiabilidad de TCP.

Cada conexión representa dos streams de comunicación de una vía o sesiones. Para establecer la conexión los hosts realizan un intercambio de señales de tres vías. Los bits de control en el encabezado TCP indican el progreso y estado de la conexión. 

Enlace de tres vías: 

• Establece que el dispositivo de destino esté presente en la red. 
• Verifica que el dispositivo de destino tenga un servicio activo y esté aceptando las peticiones en el número de puerto de destino que el cliente que lo inicia intente usar para la sesión.
• Informa al dispositivo de destino que el cliente de origen intenta establecer una sesión de comunicación en ese número de puerto.

Los tres pasos para el establecimiento de una conexión TCP son:

1. El cliente que inicia la conexión envía un segmento que contiene un valor de secuencia inicial, que actúa como solicitud para el servidor para comenzar una sesión de comunicación. 


2. El servidor responde con un segmento que contiene un valor de reconocimiento igual al valor de secuencia recibido más uno, además de su propio valor de secuencia de sincronización. 

3. El cliente que inicia la conexión responde con un valor de reconocimiento igual al valor de secuencia que recibió más uno. Esto completa el proceso de establecimiento de la conexión.

Dentro del encabezado del segmento TCP, existen seis campos de un bit que contienen información de control utilizada para gestionar los procesos de TCP. 

Estos campos son los siguientes:

URG: Urgente campo de señalizador significativo, 
ACK: Campo significativo de acuse de recibo, 
PSH: Función de empuje, 
RST: Reconfiguración de la conexión, 
SYN: Sincronizar números de secuencia, 
FIN: No hay más datos desde el emisor.

4.2.4 Protocolo TCP de enlace de tres vías

Paso 1 

Un cliente TCP comienza el enlace de tres vías enviando un segmento con el señalizador de control SYN (Sincronizar números de secuencia) establecido, indicando un valor inicial en el campo de número de secuencia del encabezado. Este valor inicial para el número de secuencia, conocido como número de secuencia inicial (ISN), se elige de manera aleatoria y se utiliza para comenzar a rastrear el flujo de datos desde el cliente al servidor para esta sesión. El ISN en el encabezado de cada segmento se incrementa en uno por cada byte de datos enviados desde el cliente hacia el servidor mientras continúa la conversación de datos.

Paso 2 

El servidor TCP necesita reconocer la recepción del segmento SYN del cliente para establecer la sesión de cliente a servidor. Para hacerlo, el servidor envía un segmento al cliente con el señalizador ACK establecido indicando que el número de acuse de recibo es significativo. Con este señalizador establecido en el segmento, el cliente interpreta esto como acuse de recibo de que el servidor ha recibido el SYN del cliente TCP.

Paso 3 

El cliente TCP responde con un segmento que contiene un ACK que actúa como respuesta al SYN de TCP enviado por el servidor. No existen datos de usuario en este segmento. El valor del campo número de acuse de recibo contiene uno más que el número de secuencia inicial recibido del servidor. Una vez establecidas ambas sesiones entre el cliente y el servidor, todos los segmentos adicionales que se intercambien en la comunicación tendrán establecido el señalizador ACK.

4.2.5 Terminación de la sesión TCP 

Para cerrar la conexión se debe establecer el señalizador de control FIN (Finalizar) en el encabezado del segmento. Para finalizar todas las sesiones TCP de una vía, se utiliza un enlace de dos vías, que consta de un segmento FIN y un segmento ACK.

4.3 Administración de las sesiones TCP
4.3.1 Re ensamblaje de segmentos TCP

Cuando los servicios envían datos utilizando TCP, los segmentos pueden llegar a destinos desordenados. Para que el receptor comprenda el mensaje original, los datos en estos segmentos se reensamblan en el orden original. Para lograr esto, se asignan números de secuencia en el encabezado de cada paquete. 

El proceso TCP receptor coloca los datos del segmento en un búfer de recepción. Los segmentos se colocan en el orden de número de secuencia adecuado y se pasa a la capa de Aplicación cuando son reensamblados. Todos los segmentos que llegan con números de secuencia no contiguos se mantienen para su procesamiento posterior. Luego, se procesan los segmentos cuando llegan con los bytes perdidos.

4.3.2 Acuse de recibo de TCP con uso de ventanas 

Confirmación de recepción de segmentos una de las funciones de TCP es asegurar que cada segmento llegue a su destino. Los servicios TCP en el host de destino envían a la aplicación de origen un acuse de recibo de los datos recibidos.

El host receptor de la derecha recibe el segmento en la Capa 4 y determina que el número de secuencia es 1 y que posee 10 bytes de datos. Luego el host envía un segmento de vuelta al host de la izquierda para acusar recibo de estos datos. En este segmento, el host establece el número de acuse de recibo en 11 para indicar que el próximo byte de datos que espera recibir en esta sesión es el byte número 11.

La cantidad de datos que un origen puede transmitir antes de que un acuse de recibo deba ser recibido se denomina tamaño de la ventana. El tamaño de la ventana es un campo en el encabezado TCP que permite la administración de datos perdidos y el control del flujo.

4.3.3 Retransmisión de TCP

Manejo de la pérdida de segmentos

Un servicio de host de destino que utiliza TCP, por lo general sólo reconoce datos para secuencias de bytes contiguas. Si uno o más segmentos se pierden, sólo se acusa recibo de los datos de los segmentos que completan el stream. 

Los hosts actuales también suelen emplear una función opcional llamada Acuses de recibo selectivos. Si ambos hosts admiten el Acuse de recibo selectivo, es posible que el destino reconozca los bytes de segmentos discontinuos y el host sólo necesitará retransmitir los datos perdidos.

4.3.4 Control de congestión de TCP: 

Cómo minimizar la pérdida de segmentos

El control del flujo contribuye con la confiabilidad de la transmisión TCP ajustando la tasa efectiva de flujo de datos entre los dos servicios de la sesión. Cuando el origen advierte que se recibió la cantidad de datos especificados en los segmentos, puede continuar enviando más datos para esta sesión.

El mecanismo de retroalimentación de TCP ajusta la tasa de transmisión de datos efectiva al flujo máximo que la red y el dispositivo de destino pueden soportar sin sufrir pérdidas. TCP intenta gestionar la tasa de transmisión de manera que todos los datos se reciban y se reduzcan las retransmisiones. 

Reducción del tamaño de la ventana

Cuando los recursos de la red son limitados, TCP puede reducir el tamaño de la ventana para lograr que los segmentos recibidos sean reconocidos con mayor frecuencia. Esto disminuye de manera efectiva la tasa de transmisión, ya que el origen espera que los datos sean recibidos con más frecuencia. 


El host receptor TCP envía el valor del tamaño de la ventana al TCP emisor para indicar el número de bytes que está preparado para recibir como parte de la sesión. Si el destino necesita disminuir la tasa de comunicación debido a limitaciones de memoria del búfer, puede enviar un valor de tamaño de la ventana menor al origen como parte de un acuse de recibo.

4.4 Protocolo UDP: Comunicación con baja sobrecarga
4.4.1 UDP: Baja sobrecarga vs Confiabilidad

UDP es un protocolo simple que provee las funciones básicas de la capa de Transporte. Genera mucho menos sobrecarga que TCP, ya que no es orientado a la conexión y no cuenta con los sofisticados mecanismos de retransmisión, secuenciación y control del flujo.

Pese a que es relativamente baja la cantidad total de tráfico UDP que puede encontrarse en una red típica, entre los protocolos principales de la capa de 

Aplicación que utilizan UDP se incluyen: 
• Sistema de denominación de dominio (DNS), 
• Protocolo simple de administración de red (SNMP), 
• Protocolo de configuración dinámica de host (DHCP), 
• Protocolo de información de enrutamiento (RIP), 
• Protocolo trivial de transferencia de archivos (TFTP), y 
• Juegos en línea.

4.4.2 Re ensamblaje de datagramas de UDP



Cuando una aplicación posee datos para enviar, simplemente los envía. Muchas aplicaciones que utilizan UDP envían pequeñas cantidades de datos que pueden ocupar un segmento.

La PDU de UDP se conoce como datagrama, pese a que los términos segmento y datagrama a veces se utilizan de manera indistinta para describir una PDU de la capa de Transporte.

Cuando se envían múltiples datagramas a un destino, los mismos pueden tomar rutas distintas y llegar en el orden incorrecto. UDP no mantiene un seguimiento de los números de secuencia de la manera en que lo hace TCP. UDP no puede reordenar los datagramas en el orden de la transmisión.

UDP simplemente re ensambla los datos en el orden en que se recibieron y los envía a la aplicación. Si la secuencia de los datos es importante para la aplicación, la misma deberá identificar la secuencia adecuada de datos y determinar cómo procesarlos.

4.4.3 Procesos y solicitudes del servidor UDP 

Las aplicaciones de servidor basadas en UDP se les asigna números de puerto bien conocidos o registrados. Cuando se ejecutan estas aplicaciones o procesos, aceptan los datos que coincidan con el número de puerto asignado. Cuando UDP recibe un datagrama destinado a uno de esos puertos, envía los datos de aplicación a la aplicación adecuada en base a su número de puerto.

4.4.4 Procesos del cliente UDP

El proceso de cliente UDP selecciona al azar un número de puerto del rango dinámico de números de puerto y lo utiliza como puerto de origen para la conversación. El puerto de destino por lo general será el número de puerto bien conocido o registrado asignado al proceso del servidor. 

Los números de puerto de origen seleccionados al azar colaboran con la seguridad. Si existe un patrón predecible para la selección del puerto de destino, un intruso puede simular el acceso a un cliente de manera más sencilla intentando conectarse al número de puerto que tenga mayor posibilidad de estar abierto.

lunes, 12 de mayo de 2014

(capitulo 3)

3.3.1 Protocolos y Servicios DNS
La capa de transporte utiliza un esquema de direccionamiento que se denomina número de puerto, estos identifican las aplicaciones y servicios de la capa de Aplicación, los programas generalmente utilizan números de puertos predefinidos que se conoce como clientes.
Algunos servicios de números de puertos TCP y UDP son:
·         Sistema de nombres de dominio (DNS): puerto TCP/UDP 53.
·         Protocolo de transferencia de hipertexto (HTTP, Hypertext Transfer Protocol): puerto TCP 80.
·         Protocolo simple de transferencia de correo (SMTP, Simple Mail Transfer Protocol): puerto TCP 25.
·         Protocolo de oficina de correos (POP): puerto UDP 110.
·         Telnet: puerto TCP 23.
·         Protocolo de configuración dinámica de host: puerto UDP 67.
·         Protocolo de transferencia de archivos (FTP, File Transfer Protocol): puertos TCP 20 y 21.
DNS
Los DNS fueron creados para convertir las direcciones IP en direcciones simples y reconocibles para el usuario, si se cambiara la dirección numérica de una página no habría problema ya que el nombre seguirá siendo el mismo para los usuarios.  
El Sistema de nombres de dominio (DNS) se creó para que el nombre del dominio busque soluciones para estas redes. DNS utiliza un conjunto distribuido de servidores para resolver los nombres asociados con estas direcciones numéricas.  DNS se creó para que el nombre del dominio busque soluciones para estas redes. DNS utiliza un conjunto distribuido de servidores para resolver los nombres asociados con estas direcciones numéricas.
Las comunicaciones del protocolo DNS utilizan un formato simple llamado mensaje. Este formato de mensaje se utiliza para todos los tipos de solicitudes de clientes y respuestas del servidor, mensajes de error y para la transferencia de información de registro de recursos entre servidores.
Mientras otros servicios utilizan un cliente que es una aplicación, el cliente DNS ejecuta un servicio por sí mismo. El cliente DNS, a veces denominado resolución DNS, admite resolución de nombre para otras aplicaciones de red y servicios que lo necesiten.
Al configurar un dispositivo de red, generalmente proporcionamos una o más direcciones del servidor DNS que el cliente DNS puede utilizar para la resolución de nombres. En general, el proveedor de servicios de Internet provee las direcciones para utilizar con los servidores DNS.
También existe una utilidad denominada nslookup que permite al usuario consultar manualmente los servidores de nombre para resolver un determinado nombre de host, también puede utilizarse para resolver los problemas de resolución de nombres y verificar el estado actual de los servidores de nombres.
Un servidor DNS proporciona la resolución de nombres utilizando el daemon de nombre que generalmente se llama named.  Los tipos de registros contienen el nombre, la dirección y el tipo de registro. Algunos de estos tipos de registro son:
A: una dirección de un dispositivo final.
NS: un servidor de nombre autoritativo.
CNAME: el nombre ideal (o Nombre de dominio completamente calificado) para un alias.
MX: registro de intercambio de correos.
Cuando un cliente realiza una consulta, el servidor primero observa en sus propios registros para ver si puede resolver el nombre. Si no puede resolver el nombre utilizando los registros almacenados, contacta a otros servidores para hacerlo. La solicitud pasa por varios servidores, lo cual lleva tiempo adicional y consume ancho de banda, cuando se encuentra una coincidencia se devuelve  al servidor y este almacena temporalmente en la caché la dirección numerada que coincide con el nombre, si se solicita nuevamente el mismo nombre el servidor regresa la dirección que estaba almacenada en la cache. El almacenamiento en caché reduce el tráfico de la red de datos de consultas DNS y las cargas de trabajo de los servidores más altos de la jerarquía.
El sistema de nombres de dominio utiliza un sistema jerárquico para crear una base de datos para proporcionar una resolución de nombres. La jerarquía es similar a un árbol invertido.
En la parte superior de la jerarquía, los servidores raíz mantienen registros sobre cómo alcanzar los servidores de dominio de nivel superior, los cuales a su vez tienen registros que apuntan a los servidores de dominio de nivel secundario y así sucesivamente.  Los diferentes dominios de primer nivel representan el tipo de organización o el país de origen. Algunos ejemplos de dominios de primer nivel son: .au: Australia, .com: una empresa o industria, .org: una organización sin fines de lucro. Después de los dominios de primer nivel se encuentran los dominios de segundo nivel y, debajo de estos, hay otros dominios de nivel inferior. Cada nombre de dominio es una ruta a través de este árbol invertido que comienza desde la raíz.
El sistema de nombres de dominio depende de esta jerarquía de servidores descentralizados y mantiene estos registros de recursos. Los registros de recursos enumeran nombres de dominios que el servidor puede resolver y servidores alternativos que también pueden procesar solicitudes.
3.3.2 Servicio WWW y HTTP
HTTP. URL (o Localizador uniforme de recursos) y URI (Identificador uniforme de recursos). Los exploradores web son aplicaciones que utilizan las computadoras para conectarse a WWW, para acceder a los diferentes recursos. El servicio web genera diferentes tipos de archivos disponibles.
Para acceder al contenido se realiza una conexión con el servidor, y este responde con los recursos, interpreta los datos y los presenta al usuario.
Los exploradores pueden interpretar y presentar muchos tipos de datos, como texto sin formato o Lenguaje de marcado de hipertexto (HTML, el lenguaje que se utiliza para construir una página Web). Otros tipos de datos, sin embargo, requieren de otro servicio o programa. Generalmente se los conoce como plug-ins o complementos. Para ayudar al explorador a determinar qué tipo de archivo está recibiendo, el servidor especifica qué clase de datos contiene el archivo.
Para comprender mejor cómo interactúan el explorador Web con el cliente Web, un ejemplo, seria  URL: http://www.cisco.com/web-server.htm.
Primero, el explorador interpreta las tres partes de la URL:
1. http (el protocolo o esquema),
2. www.cisco.com (el nombre del servidor),
3. web-server.htm (el nombre específico del archivo solicitado).
El explorador luego verifica con un servidor de nombres para convertir a www.cisco.com en una dirección numérica que utilizará para conectarse con el servidor, el explorador envía una solicitud GET al servidor y pide el archivo web-server.htm. El servidor, envía al explorador el código HTML de esta página Web. Finalmente, el explorador descifra el código HTML y da formato a la página para la ventana del explorador.
El protocolo de transferencia de hipertexto (HTTP), se utiliza para sistemas de información distribuidos y de colaboración. HTTP se utiliza a través de la World Wide Web para transferencia de datos y es uno de los protocolos de aplicación más utilizados.
HTTP especifica un protocolo de solicitud/respuesta. Cuando un cliente envía un mensaje de solicitud a un servidor, el protocolo HTTP define los tipos de mensajes que el cliente utiliza para solicitar la página Web y envía los tipos de mensajes que el servidor utiliza para responder. Los tres tipos de mensajes más comunes son GET, POST y PUT.
GET es una solicitud de datos del cliente. Un explorador Web envía el mensaje GET para solicitar las páginas desde un servidor Web.
POST y PUT se utilizan para enviar mensajes que cargan los datos al servidor Web.
PUT carga los recursos o el contenido al servidor Web.
Aunque es muy flexible, HTTP no es un protocolo seguro. Ya que los mensajes POST pueden ser interceptados y leídos. De forma similar, las respuestas del servidor.

Para una comunicación segura a través de Internet, se utiliza el protocolo HTTP seguro (HTTPS) para acceder o subir información al servidor Web. HTTPS puede utilizar autenticación y encriptación para asegurar los datos cuando viajan entre el cliente y el servidor. HTTPS especifica reglas adicionales para pasar los datos entre la capa de Aplicación y la capa de Transporte.

viernes, 2 de mayo de 2014

Actividades

Actividad 3.4.2 ADMINISTRACION DE UN SERVIDOR WEB

1.   ¿Cuál es la carpeta de instalación predeterminada?
C:\Program Files\Apache Software Foundation\Apache2.2\
2.   Pruebe el servidor Web en varias direcciones IP diferentes en el rango de red de 127.0.0.0 /8. Complete la siguiente tabla con los resultados
Dirección
Estado
Explicación
127.0.0.1
Ok

127.255.255.254
Ok

127.255.255.255
Falla
Esta es la dirección de broadcast de red
127.0.0.0
Falla
Esta es la dirección de red
3.   ¿Por qué no hace falta ingresar index.html en el URL para que se muestren los contenidos del archivo?
La directiva de configuración del servidor Web para ese servidor muestra index.html como página predeterminada.

Actividad 3.4.3 PROTOCOLOS Y SERVICIOS DE CORREO ELECTRONICO

1.   ¿Cuál es el propósito del protocolo SMTP y cuál es el número de puerto TCP bien conocido?
El protocolo SMTP se utiliza para enviar correos electrónicos a un servidor de correo electrónico para reenvío a un receptor de correo. SMTP escucha el puerto TCP 25.
2.   ¿Cuál es nombre y la versión del servidor SMTP?
Sendmail, versión 8.13.1
3.   ¿Cuál es la respuesta del servidor SMTP al comando EHLO?
 250-localhost.localdomai Hello host-1.example.com [172.16.1.1], pleased to meet you\r\n
4.   Complete las respuestas del servidor de correo electrónico a los comandos del cliente de correo electrónico
Cliente de Correo Electrónico
Servidor de Correo Electrónico
MAIL FROM: , ccna1@excmaple.com>
250.2.1.0 ccna1@excmaple.com Emisor Ok
RCPT TO: < ccna1@excmaple.com>
250.2.1.5 ccna1@excmaple.com Recptor Ok
DATOS
354 Ingrese correo, finalice con “.” En una misma línea
(Cuerpo de Mensaje Enviado)
250.2.0.0 numero de serie de serie del correo Mensaje aceptado para entrega

5.   ¿Cuáles son los contenidos del último mensaje de parte del cliente de correo electrónico?
El último mensaje es “”SALIR”
6.   ¿Cómo responde  el servidor de correo electrónico?
Envía una respuesta al cliente de correo electrónico, 211, cerrando la conexión