En este cuestonario podran encontrar vario temas relacionados con el TCP/IP.
El Protocolo de Control de Transmisión
(TCP) y Protocolo de Internet (IP), que fueron dos de los primeros en
definirse, y que son los más utilizados de la familia. Existen tantos
protocolos en este conjunto que llegan a ser más de 100 diferentes, entre ellos
se encuentra el popular HTTP (HyperText Transfer Protocol), que es el que se
utiliza para acceder a las páginas web, además de otros como el ARP (Address
Resolution Protocol) para la resolución de direcciones, el FTP (File Transfer
Protocol) para transferencia de archivos, y el SMTP (Simple Mail Transfer
Protocol) y el POP (Post Office Protocol) para correo electrónico, TELNET para
acceder a equipos remotos, entre otros.
El TCP/IP es la base de Internet, y sirve para enlazar computadoras que utilizan diferentes sistemas operativos, incluyendo PC, minicomputadoras y computadoras centrales sobre redes de área local (LAN) y área extensa (WAN).
TCP/IP fue desarrollado y demostrado por primera vez en 1972 por el Departamento de Defensa de los Estados Unidos, ejecutándolo en ARPANET, una red de área extensa de dicho departamento.
El funcionamiento de los protocolos TCP/IP
debe tenerse en cuenta la arquitectura que ellos proponen para comunicar redes.
Tal arquitectura ve como iguales a todas las redes a conectarse, sin tomar en
cuenta el tamaño de ellas, ya sean locales o de cobertura amplia. Define que
todas las redes que intercambiarán información deben estar conectadas a una
misma computadora o equipo de procesamiento (dotados con dispositivos de comunicación);
a tales computadoras se les denominan compuertas, pudiendo recibir otros
nombres como enrutadores o puentes.
Para que en una red dos computadoras puedan
comunicarse entre sí ellas deben estar identificadas con precisión Este
identificador puede estar definido en niveles bajos (identificador físico) o en
niveles altos (identificador lógico) de pendiendo del protocolo utilizado.
TCP/IP utiliza un identificador denominado dirección Internet o dirección IP,
cuya longitud es de 32 bytes. La dirección IP identifica tanto a la red a la
que pertenece una computadora como a ella misma dentro de dicha red.
El Protocolo de Control de Transmisión
(TCP) permite a dos anfitriones establecer una conexión e intercambiar datos.
El TCP garantiza la entrega de datos, es decir, que los datos no se pierdan
durante la transmisión y también garantiza que los paquetes sean entregados en
el mismo orden en el cual fueron enviados.
Los bits se compone de las direcciones de
ip versión
VERSION 4 : 32 Bits
VERSION 4 : 32 Bits
VERSION 6 : 128 Bits
La versión IP Version 6 fue creada ya a que
hace falta de direcciones. IPv4 tiene un espacio de direcciones de 32
bits, en cambio IPv6 ofrece un espacio de 128 bits. El reducido espacio de
direcciones de IPv4, junto al hecho de falta de coordinación para su asignación
durante la década de los 80, sin ningún tipo de optimización, dejando incluso
espacios de direcciones discontinuos, generan en la actualidad, dificultades no
previstas en aquel momento.
Otros de los problemas de IPv4 es la gran
dimensión de las tablas de ruteo en el backbone de Internet, que lo hace
ineficaz y perjudica los tiempos de respuesta.
Debido a la multitud de nuevas aplicaciones
en las que IPv4 es utilizado, ha sido necesario agregar nuevas funcionalidades
al protocolo básico, aspectos que no fueron contemplados en el análisis inicial
de IPv4, lo que genera complicaciones en su escalabilidad para nuevos
requerimientos y en el uso simultáneo de dos o más de dichas funcionalidades.
Entre las mas conocidas se pueden mencionar medidas para permitir la Calidad de
Servicio (QoS), Seguridad (IPsec) y movilidad.
Las características de IPVersion6 son :
Es una extensión conservadora de IPv4. La mayoría de los protocolos de transporte -y aplicación- necesitan pocos o ningún cambio para operar sobre IPv6; las excepciones son los protocolos de aplicación que integran direcciones de capa de red, como FTP o NTPv3, NTPv4.
IPv6 especifica un nuevo formato de
paquete, diseñado para minimizar el procesamiento del encabezado de paquetes.
Debido a que las cabeceras de los paquetes IPv4 e IPv6 son significativamente
distintas, los dos protocolos no son interoperables.
Algunos de los cambios de IPv4 a IPv6 más relevantes son:
Capacidad extendida de direccionamiento
El interés de los diseñadores era que
direcciones más largas permiten una entrega jerárquica, sistemática y en
definitiva mejor de las direcciones y una eficiente agregación de rutas.
Autoconfiguración de direcciones libres de
estado (SLAAC)
Los nodos IPv6 pueden configurarse a sí
mismos automáticamente cuando son conectados a una red ruteada en IPv6 usando
los mensajes de descubrimiento de routers de ICMPv6.
Multicast
La habilidad de enviar un
paquete único a destinos múltiples es parte de la especificación base de IPv6.
Esto es diferente a IPv4, donde es opcional (aunque usualmente implementado).
IPv6 no implementa broadcast, que es la
habilidad de enviar un paquete a todos los nodos del enlace conectado.
Seguridad de Nivel de Red obligatoria
Internet Protocol Security (IPsec), el protocolo
para cifrado y autenticación IP forma parte integral del protocolo base en
IPv6. El soporte IPsec es obligatorio en IPv6; a diferencia de IPv4, donde es
opcional o fue un agregado posterior (pero usualmente implementado).
Procesamiento simplificado en los routers
Se hicieron varias simplificaciones en la
cabecera de los paquetes, así como en el proceso de reenvío de paquetes para
hacer el procesamiento de los paquetes más simple y por ello más eficiente.
Movilidad
A diferencia de IPv4 móvil (MIPv4), IPv6 móvil (MIPv6) evita el ruteo triangular y por lo tanto
es tan eficiente como el IPv6 normal. Los routers IPv6 pueden soportar también
Movilidad de Red (NEMO, por Network Mobility) (RFC 3963), que permite que redes
enteras se muevan a nuevos puntos de conexión de routers sin reasignación de
numeración.
Soporte mejorado para las extensiones y
opciones
Los cambios en la manera en que se
codifican las opciones de la cabecera IP permiten límites menos rigurosos en la
longitud de opciones, y mayor flexibilidad para introducir nuevas opciones en
el futuro.
Jumbogramas
Aca podemos encontrar un ejemplo que explica de una manera mas sencilla
Palabras breves de los diferentes protocolos:
TCP Transmission
Control Protocol (en español Protocolo de Control de Transmisión) o TCP, es uno
de los protocolos fundamentales en Internet. Fue
creado entre los años 1973
y 1974 por Vint Cerf y
Robert
Kahn.
Muchos programas dentro de una red de datos
compuesta por computadoras, pueden usar TCP para crear conexiones
entre ellos a través de las cuales puede enviarse un flujo de datos. El
protocolo garantiza que los datos serán entregados en su destino sin errores y
en el mismo orden en que se transmitieron. También proporciona un mecanismo
para distinguir distintas aplicaciones dentro de una misma máquina, a través
del concepto de puerto.
UDP o
User Datagram Protocol: Es un protocolo del nivel de transporte basado en el intercambio de
datagramas
(Encapsulado de capa 4 Modelo OSI). Permite el envío de datagramas a través de
la red sin que se haya establecido previamente una
conexión, ya que el propio datagrama incorpora suficiente información de
direccionamiento en su cabecera. Tampoco tiene confirmación ni control de
flujo, por lo que los paquetes pueden adelantarse unos a otros; y tampoco se
sabe si ha llegado correctamente, ya que no hay confirmación de entrega o
recepción. Su uso principal es para protocolos como DHCP, BOOTP, DNS y demás protocolos en
los que el intercambio de paquetes de la conexión/desconexión son mayores, o no
son rentables con respecto a la información transmitida, así como para la
transmisión de audio y vídeo en tiempo real, donde no es posible realizar
retransmisiones por los estrictos requisitos de retardo que se tiene en estos
casos.
Una dirección IP es una etiqueta
numérica que identifica, de manera lógica y jerárquica, a un interfaz
(elemento de comunicación/conexión) de un dispositivo (habitualmente una computadora)
dentro de una red que utilice el protocolo IP (Internet Protocol), que
corresponde al nivel de red del Modelo OSI.
Dicho número no se ha de confundir con la dirección
MAC, que es un identificador de 48bits para identificar de forma única la tarjeta
de red y no depende del protocolo de conexión utilizado ni de la red. La
dirección IP puede cambiar muy a menudo por cambios en la red o porque el
dispositivo encargado dentro de la red de asignar las direcciones IP decida
asignar otra IP (por ejemplo, con el protocolo DHCP). A esta forma de
asignación de dirección IP se denomina también se ocupa para encontrar
domicilios y toda la información necesariadirección IP dinámica (normalmente
abreviado como IP dinámica).
ICMP (Protocolo de mensajes de control de Internet) es un protocolo que
permite administrar información relacionada con errores de los equipos en red.
Si se tienen en cuenta los escasos controles que lleva a cabo el protocolo IP,
ICMP no permite corregir los errores sino que los notifica a los protocolos de
capas cercanas. Por lo tanto, el protocolo ICMP es usado por todos los routers para
indicar un error (llamado un problema de entrega).
ARP Son las siglas en inglés de Address
Resolution Protocol (Protocolo de resolución de direcciones).
Es un protocolo
de la capa de enlace de datos responsable de encontrar la dirección hardware (Ethernet MAC)
que corresponde a una determinada dirección
IP. Para ello se envía un paquete (ARP request) a la dirección de difusión
de la red (broadcast (MAC = FF FF FF FF FF FF)) que contiene la dirección
IP por la que se pregunta, y se espera a que esa máquina (u otra) responda
(ARP reply) con la dirección Ethernet que le corresponde. Cada máquina mantiene una caché con las
direcciones traducidas para reducir el retardo y la carga. ARP permite a la
dirección de Internet
ser independiente de la dirección Ethernet, pero
esto sólo funciona si todas las máquinas lo soportan.
ARP está documentado en el Request for comments RFC
(Request For Comments) 826.
DNS o Domain
Name System(en español: sistema de nombres de dominio) es un sistema de
nomenclatura jerárquica para computadoras, servicios o cualquier recurso
conectado a Internet
o a una red
privada. Este sistema asocia información variada con nombres de dominios asignado a cada uno de los
participantes. Su función más importante, es traducir (resolver) nombres
inteligibles para las personas en identificadores binarios asociados con los
equipos conectados a la red, esto con el propósito de poder localizar y
direccionar estos equipos mundialmente.
RARP son las siglas en inglés de Reverse Address Resolution Protocol
(Protocolo de resolución de direcciones inverso).
Es un protocolo utilizado para resolver la dirección
IP de una dirección hardware dada (como una dirección Ethernet). La
principal limitación era que cada dirección
MAC tenía que ser configurada manualmente en un servidor central y se
limitaba sólo a la dirección IP, dejando otros datos como
la máscara de subred, puerta de enlace y
demás información que tenían que ser configurados a mano. Otra desventaja de
este protocolo es que utiliza como dirección destino, evidentemente, una
dirección MAC de difusión para llegar al servidor RARP. Sin embargo, una
petición de ese tipo no es reenviada por el router del segmento de subred local
fuera de la misma, por lo que este protocolo, para su correcto funcionamiento,
requiere de un servidor RARP en cada subred.
FTP
(siglas en inglés
de File Transfer Protocol, 'Protocolo de Transferencia de Archivos') en
informática, es un protocolo de red para la transferencia de archivos entre sistemas
conectados a una red TCP (Transmission Control Protocol),
basado en la arquitectura cliente-servidor.
Desde un equipo cliente se puede conectar a un servidor para descargar archivos
desde él o para enviarle archivos, independientemente del sistema operativo
utilizado en cada equipo.
Telnet (TELecommunication NETwork) es el nombre de un protocolo
de red a otra máquina para manejarla remotamente como si estuviéramos
sentados delante de ella. También es el nombre del programa informático que implementa el cliente. Para que la conexión funcione, como
en todos los servicios de Internet, la máquina a la que se acceda debe tener un
programa especial que reciba y gestione las conexiones. El puerto que se
utiliza generalmente es el 23.
Clasificaciones de las direcciones IP:
Una dirección IP es un número que identifica de manera lógica y jerárquica a un dispositivo dentro de la red.
En la versión 4 de TCP/IP estas direcciones están formadas por cuatro grupos de tres dígitos numéricos, de los que no se muestran los 0 a la izquierda del número, salvo que el valor del grupo sea 0.
El valor de estos grupos está comprendido entre 0 y 255, pero no todos los valores están disponibles para designar una dirección IP de usuario válida, ya que muchos de ellos están reservados para direcciones concretas.
La Internet Corporation for Assigned Names and Numbers (ICANN) reconoce tres clases de direcciones IP:
Clase A:
En esta clase se reserva el primer grupo a la identificación de la red, quedando los tres siguientes para identificar los diferentes host. Los rangos de esta clase están comprendidos entre 1.0.0.0 y 127.255.255.255. Actualmente la ICANN asigna redes de este grupo a gobiernos de todo el mundo, aunque hay algunas grandes empresas que tienen asignadas IP's de esta clase.
Clase B:
En esta clase se reservan los dos primeros grupos a la identificación de la red, quedando los dos siguientes para identificar los diferentes host. Los rangos de esta clase están comprendidos entre 128.0.0.0 y 191.255.255.255. Actualmente la ICANN asigna redes de este grupo a grandes y medianas empresas.
Clase C:
En esta clase se reservan los tres primeros grupos a la identificación de la red, quedando el último para identificar los diferentes hosts. Los rangos de esta clase están comprendidos entre 192.0.0.0 y 223.255.255.255. Actualmente la ICANN asigna redes de este grupo a aquellos que lo solicitan.
Dentro de estas clases hay otra serie de asignaciones:
- La dirección 0.0.0.0 se utiliza por las máquinas cuando están arrancando o no se les ha asignado dirección.
- La dirección que tiene su parte de host a cero sirve para definir la red en la que se ubica. Se denomina dirección de red.
- La dirección que tiene su parte de host a unos sirve para comunicar con todos los hosts de la red en la que se ubica. Se denomina Dirección de broadcast.
- Las direcciones 127.x.x.x se reservan para pruebas de retroalimentación. Se denomina Dirección de bucle local o loopback.
Al usuario lo que más le interesa es un grupo de direcciones IP que no están asignadas dentro de cada grupo. Son las que reciben el nombre de Redes privadas, y son las que pueden ser utilizadas por los hosts que usan traducción de dirección de red (NAT) para conectarse a Internet o por los hosts que no se conectan a Internet.
En una misma red no puede haber dos direcciones iguales, pero sí se pueden repetir en dos redes privadas que no tengan conexión entre sí. Las direcciones privadas dentro de cada clase son:
- Clase A: 10.0.0.0 a 10.255.255.255 (8 bits red, 24 bits hosts)
- Clase B: 172.16.0.0 a 172.31.255.255 (16 bits red, 16 bits hosts)
- Clase C: 192.168.0.0 a 192.168.255.255 (24 bits red, 8 bits hosts)
Pero no es esta la única dirección de tipo TCP/IP que tenemos en nuestra red. Vamos a ver los diferentes tipos y a qué corresponde cada uno de ellos:
Dirección IP:
Es la que hemos visto hasta el momento, y sirve para identificar a nuestra máquina. Esta dirección puede ser a su vez de dos tipos diferentes:
- IP pública:
Es la dirección IP con la que nos identificamos al conectarnos a otras redes (Internet). Esta IP nos la asigna nuestro proveedor ISP, y no tenemos control sobre ella. A su vez puede ser de dos tipos diferentes:
- IP estática:
Es cuando tenemos una dirección IP fija asignada. Este tipo es poco utilizado, carece de interés para el usuario doméstico y además los proveedores ISP suelen cobrar un suplemento por ellas.
- IP dinámica:
Es la utilizada habitualmente. Nuestro proveedor ISP nos asigna al conectarnos a la red (Internet) una dirección que tenga disponible en ese momento. Esta dirección cambia cada vez que nos desconectamos de Internet y nos volvemos a conectar.
OJO: desconectarse de Internet y volver a conectarse NO es cerrar y volver a abrir el explorador de Internet, sino que es, en el caso de un router, apagar el router y volver a encenderlo pasado un tiempo (normalmente más de 5 minutos) o bien en el caso de utilizar un módem cuando apagamos éste (o en ese caso cerramos la conexión).
Hay que recordar que esta IP se le asigna al equipo que conecta con Internet, entendiéndose como equipo al módem o router.
- IP privada:
Es la dirección IP de cada equipo (ordenador o cualquier elemento que se conecte a través del protocolo TCP/IP) de nuestra red.
Al contrario de lo que ocurre con la IP pública, la IP privada sí que la asignamos nosotros, aunque se puede asignar de forma automática (mediante DHCP).
Un datagrama IP tiene dos formas de
encaminar los paquetes en una red conmutación de paquetes. Estas son:
Datagrama y Circuito Virtual.
En la técnica de datagrama cada
paquete se trata de forma independiente, conteniendo cada uno la dirección de
destino. La red puede encaminar (mediante un router) cada
fragmento hacia el Equipo
Terminal de Datos (ETD) receptor por rutas distintas. Esto no garantiza que
los paquetes lleguen en el orden adecuado ni que todos lleguen al destino.
Protocolos basados en datagramas: IPX, UDP, IPoAC, CL. Los datagramas tienen
cabida en los servicios de red no orientados a la conexión (como por ejemplo
UDP o Protocolo de Datagrama de Usuario). Los datagramas IP son las unidades
principales de información de Internet. Los términos trama,
mensaje, paquete
de red y segmento también se usan para describir las agrupaciones de
información lógica en las diversas capas del modelo de
referencia OSI y en los diversos círculos tecnológicos.
El datagrama será analizado en fragmentos
de 8 bytes, indicando la longitud de cada campo; recordemos que es un paquete
de ICMP encapsulado en IP.
Del byte 0 al 7:
y tenemos la siguiente información de sus
campos:
IHL: Especifica la longitud del encabezado
de IP en palabras de 32 bits (4 Bytes) y el valor mínimo es 5.
TOS: Type of service, 8 bits, especifica
los parámetros para el tipo de servicio solicitado. Los parámetros pueden ser
utilizados por las redes para defini el manejo del datagrama durante el
transporte. El bit M fue agregado en el RFC 1349.
Total Lenght: es la longitud total del
datagrama, en este caso es 0x003C (60 bytes).
Identification: Usado para indentificar
fragmentos de un datagrama deaquellos de otro. El módulo de protocolo que
origina al datagrama fija el valor del campo de identificación a un valor
que debe ser único para el par de Fuente-Destino y protocolo por todo el tiempo
que el datagrama estará activo en el sistema de red. El módulo de protocolo de
origen de un datagrama completo pone los bits MF y el Fragment Offset a cero.
Fragment Offset, 13 bits: usado para
dirigir el reensamblado de un datagrama fragmentado. En este caso es cero
porque no hay más fragmentos.
Del byte 8 al 15:
TTL: Time to live, es un temporizador para
llevar un control del tiempo de vida del datagrama. Cuando el TTL es
decrementado a cero, el datagrama es desechado.
Protocol: este campo especifica el
protocolo encapsulado, en este caso el valor es 1, lo que nos indica que se
trata de un paquete de ICMP (ping).
Header Checksum: 16 bits de la suma de
verificación del encabezado de IP y las opciones IP.
Source IP Address: Es la dirección IP del
transmisor, en este caso 192.168.1.1 (0xC0.A8.01.01).
Del byte 16 al 27:
Destination IP Address: es la dirección IP
del destino, en este caso 192.168.1.17 (0xC0.A8.01.11).
C,
Class y Option: en este caso indican (tabla de valores):
0x0: no copiar
0x00: mensaje de control
0x1000:
solicitud de Echo (RFC 792, Summary of Message Types, 8
Echo).
Padding: es de longitud variable y sirve
como relleno para asegurar que los datos comienzan tras de una frontera de 32
bits después de la dirección de destino.
Aquí es importante destacar que al tratarse
de un mensaje de control (ICMP) se utilizan los bytes del 20 al 27 para
información de control; y se usan de la siguiente manera (RFC792):
20 21 22 23
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|
Type | Code
| Checksum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|
Identifier | Sequence Number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Data ...
+-+-+-+-+-
De aquí obtenemos que:
Byte 20, es un paquete tipo 8 (echo
request)
Byte 21, siempre va a cero
Byte 22 y 23, es el checksum de ICMP
Bytes 24 y 25, si el byte 21=0 el
identificador ayuda a hacer match entre las solicitudes y las respuestas de
eco; puede ser 0 o puede usarse para identificar una sesión.
Bytes 26 y 27 son para llevar la secuencia
de las solicitudes de eco, y quien responde debe usar el mismo número; la
secuencia debe incrementarse con cada nueva solicitud (en una instrucción
típica de ping se envían 4 paquetes, y pueden enviarse cuantos se desee).
Bytes del 28 al 59 (32 bytes)
Son los datos de relleno que se colocaron
dentro del mensaje de Echo, y se trata de una secuencia, del 0×61 al 0×77, y se
vuelve a comenzar. Cuando se responde la solicitud de eco se debe incluir
exactamente la misma información en el campo de datos.
Lista los Puertos Renombrados como los
define la IANA y son utilizados por Red Hat Enterprise Linux como los puertos
de comunicación predeterminados para varios servicios, incluyendo FTP, SSH y
Samba.
Nombre
|
Comentario
|
|
1
|
tcpmux
|
Multiplexador de servicios de puertos TCP
|
5
|
rje
|
Entrada de trabajo remota
|
7
|
echo
|
Servicio echo
|
9
|
discard
|
Servicio nulo para la evaluación de
conexiones
|
11
|
systat
|
Servicio de estado del sistema para
listar los puertos conectados
|
13
|
daytime
|
Envía la fecha y la hora al puerto
solicitante
|
17
|
qotd
|
Envía la cita del día al host conectado
|
No hay comentarios:
Publicar un comentario