TEMA 7 Redes de datos: TCP/IP e Internet -...

23
1 0 0 0 1 1 010011 1 1 0 0 0 1 Rb = 2 bit/s Trama: 2 time slot (bit) Rb 1 = Rb 2 = Rb 3 = 1 TEMA 7 Redes de datos: TCP/IP e Internet 1.- Introducción a la conmutación de paquetes 1.1.- La multiplexión estadística: STDM Para fuentes de datos que transmiten de forma discontinua, como es habitual en las aplicaciones informáticas, la multiplexión estática, ya sea TDM 1 o FDM 2 , resulta ineficiente. En periodos de inactividad de los canales de entrada, se desperdicia la capacidad reservada para los mismos en el enlace de salida, lo que es aplicable también a fuentes de tasa de bit variable. La multiplexión estadística se basa en que ciertas fuentes no generan tráfico de forma continuada, lo que permite aprovechar los periodos de inactividad de una fuente para transmitir los datos generados por otra que en ese instante se encuentre activa. Los slots disponibles en el canal de salida se asignan de forma dinámica a los canales de entrada en función de la demanda, lo que permite disminuir el régimen binario a la salida del multiplexor, que resulta menor que la suma de las capacidades máximas de los canales de entrada. Si todos los canales de entrada transmitieran a su tasa máxima, no habría sitio suficiente en la trama de salida, por lo que algunos datos deberán esperar en una memoria (buffer) un slot libre en la siguiente trama. Por ello este tipo de transmisión es adecuada para fuentes que generan información de forma discontinua y aplicaciones poco sensibles al retardo, como es habitual en transmisiones de datos. La ventaja de la multiplexión estadística consiste en su ganancia en multiplexión, que sería la diferencia de régimen binario a la salida con respecto a TDM, expresada en tanto por ciento. Por ejemplo, si tenemos 10 canales de entrada cada uno con un régimen binario de 8 kbps, y que generan tráfico en media únicamente un 75% del tiempo, 1 Time Division Multiplex 2 Frequency Division Multiplex

Transcript of TEMA 7 Redes de datos: TCP/IP e Internet -...

Page 1: TEMA 7 Redes de datos: TCP/IP e Internet - trajano.us.estrajano.us.es/~rafa/ARSS/apuntes/tema7.pdf · detectar errores de transmisión, etc. Existen dos modalidades en la conmutación

10

00

1 1010011

1 1

0 0

0 1

Rb = 2 bit/sTrama: 2 time slot (bit)Rb

1 = Rb

2 = Rb

3 = 1

TEMA 7

Redes de datos: TCP/IP e Internet

1.- Introducción a la conmutación de paquetes

1.1.- La multiplexión estadística: STDM

Para fuentes de datos que transmiten de forma discontinua, como es habitual en lasaplicaciones informáticas, la multiplexión estática, ya sea TDM1 o FDM2, resulta ineficiente. Enperiodos de inactividad de los canales de entrada, se desperdicia la capacidad reservada para losmismos en el enlace de salida, lo que es aplicable también a fuentes de tasa de bit variable.

La multiplexión estadística se basa en que ciertas fuentes no generan tráfico de formacontinuada, lo que permite aprovechar los periodos de inactividad de una fuente para transmitirlos datos generados por otra que en ese instante se encuentre activa. Los slots disponibles en elcanal de salida se asignan de forma dinámica a los canales de entrada en función de la demanda,lo que permite disminuir el régimen binario a la salida del multiplexor, que resulta menor que lasuma de las capacidades máximas de los canales de entrada.

Si todos los canales de entrada transmitieran a su tasa máxima, no habría sitio suficiente en latrama de salida, por lo que algunos datos deberán esperar en una memoria (buffer) un slot libre enla siguiente trama. Por ello este tipo de transmisión es adecuada para fuentes que generaninformación de forma discontinua y aplicaciones poco sensibles al retardo, como es habitual entransmisiones de datos.

La ventaja de la multiplexión estadística consiste en su ganancia en multiplexión, que sería ladiferencia de régimen binario a la salida con respecto a TDM, expresada en tanto por ciento. Porejemplo, si tenemos 10 canales de entrada cada uno con un régimen binario de 8 kbps, y quegeneran tráfico en media únicamente un 75% del tiempo,

1 Time Division Multiplex2 Frequency Division Multiplex

Page 2: TEMA 7 Redes de datos: TCP/IP e Internet - trajano.us.estrajano.us.es/~rafa/ARSS/apuntes/tema7.pdf · detectar errores de transmisión, etc. Existen dos modalidades en la conmutación

• Un multiplexor TDM necesitaría un régimen binario de salida de 8 x 10 = 80 kbps

• Un multiplexor STDM podría atender el tráfico con un régimen de salida de 8 x 0.75 x 10 =60 kbps, lo que supone una ganacia del 25%.

Como desventajas figuran la aparición de retardos variables en la transmisión (dependiendodel estado de las memorias de espera y la demanda de tráfico del resto de canales en ese instante),e incluso la posibilidad de pérdida de información si los búffers de almacenamiento se desbordan.

Los multiplexores estadísticos son, en general, equipos más complejos que los multiplexoresTDM, puesto que existen múltiples configuraciones en función de la posición de las colas(búffers), su gestión, y su tamaño. Así mismo presentan características avanzadas, como políticasde prioridad a las entradas, compresión de datos, detección de la velocidad de los terminales...

1.2.- La conmutación de paquetes

En las redes de conmutación de paquetes, la información a transmitir es troceada en paquetesque serán enviados a la red. Cuando un paquete llega a un nodo de red, éste decide el enlace desalida por el que debe reenviar el paquete hacia el siguiente nodo (o destino final), bien enfunción de la dirección destino, de alguna marca que identifique la ruta que debe seguir, etc.

Los paquetes transmitidos entre los nodos utilizan el enlace a su máxima capacidad mediantemultiplexión estadística. La longitud máxima de estos paquetes se encuentra acotada a fin deevitar que un paquete monopolice mucho tiempo el enlace de salida, y para minimizar laincidencia de errores. En cada canal de salida existen colas donde son almacenados los paquetes ala espera de que les llegue su turno de ser transmitidos, ya que puede existir diferencia entre latasa a la que llegan paquetes al enlace de salida, y el régimen con el que éste es capaz deservirlos.

Al utilizar multiplexión estadística, la conmutación de paquetes permite obtener el mayorrendimiento de los recursos disponibles. Por ello, es especialmente indicada para redes en las queel tráfico es intermitente (a ráfagas), como en el caso de las comunicaciones ente equipos dedatos, por ejemplo, transacciones contra bases de datos remotas, consulta de páginas web, etc.

Los retardos que sufre en paquete al atravesar la red vendrán dados por los tiempos dealmacenamiento y reenvío y el tiempo de espera en cola (término generalmente dominante), todosproporcionales al número de nodos que atraviese el paquete hasta llegar al destino. En general,esos retardos son variables y dependen de la carga de tráfico en la red.

Por otra parte, el tamaño de las colas de salida es finito, por lo cual existe una ciertaprobabilidad de desbordamiento y, en consecuencia, de pérdida de paquetes. Generalmente sonlos protocolos de nivel superior que están empleando la red los que deben detectar esas pérdidas ysolucionarlas mediante reenvío de información o cualquier otra técnica.

Además de la información a transmitir, cada paquete transporta unos datos adicionales decontrol o cabeceras. Éstas permiten identificar al origen y destino del paquete, identificar elnúmero de secuencia del mismo (para facilitar su ordenación en el destino o detectar pérdidas),

Page 3: TEMA 7 Redes de datos: TCP/IP e Internet - trajano.us.estrajano.us.es/~rafa/ARSS/apuntes/tema7.pdf · detectar errores de transmisión, etc. Existen dos modalidades en la conmutación

detectar errores de transmisión, etc.

Existen dos modalidades en la conmutación de paquetes:

• Circuito Virtual (o orientado a conexión): Todos los paquetes que pertenecen a un mismoflujo de comunicación origen – destino siguen la misma ruta en la red. Para ello, esnecesario establecer previamente dicha ruta (equivalente al establecimiento de unaconexión). Todos los paquetes llevan una referencia de la ruta que deben seguir, lo quepermite que lleguen ordenados al destino. Un ejemplo de este tipo de conmutación laencontramos en las redes ATM3.

• Datagrama (o no orientado a conexión): Cada paquete lleva la dirección del destino, ycada nodo de la red decide al recibirlo cúal será el siguiente nodo por el que reenviará elpaquete. Permite optimizar el uso de la red, ya que es posible encaminar los paquetes por elenlace menos saturado en cada nodo. Como contrapartida, distintos paquetes pueden seguirdiferentes rutas con retardos diversos, lo que puede hacer que lleguen al destinatariodesordenados. Un ejemplo de este tipo de conmutación lo encontramos en las redes IP.

2.- Modelos de Referencia: OSI frente a TCP / IP

2.1.- El modelo de referencia OSI

Durante la aparición de los primeros ordenadores, el coste de los recursos computacionales eramuy elevado, lo que hiz necesario la separación entre los terminales usuario (ligeros y “tontos”) yel servidor central, donde se ofrecían los servicios. Esta separación conlleva la necesidad

3 Asynchronous Transfer Mode

A

C

D

E

B

3 2 11

3

13

132

3 2 1

mensaje

mensaje

2

2

X

13 X

X

13

2

Page 4: TEMA 7 Redes de datos: TCP/IP e Internet - trajano.us.estrajano.us.es/~rafa/ARSS/apuntes/tema7.pdf · detectar errores de transmisión, etc. Existen dos modalidades en la conmutación

Capa N

Capa N-1

Capa N

Capa N-1

Connect Request

Connect Response

Connect Indication

Connect Confirm

N-1 PDU

implícita de una red que permita a los terminales acceder a los recursos del equipo central.

Las primeras soluciones de red eran propietarias de cada fabricante e incompatibles entre sí,por lo que surgió la necesidad de una normalización. Como resultado, en los años 70, la ISO4

desarrolla un modelo de referencia para la interconexión de sistemas abiertos (OSI5), queproporcionó la base para definir el proceso global de las comunicaciones entre equipos de datos,aceptado por la ITU-T en su recomendación X.200.

Podemos resumir las siguientes características generales del modelo OSI:

• Cada sistema de comunicaciones se estructura en una serie de niveles o capas. Una capa estáformada por módulos especializados o entidades, que realizan parte del proceso global de lacomunicación. En OSI se especifican un total de 7 capas.

• Cada capa utiliza los servicios ofrecidos por la capa inmediatamente inferior, y ofrece suspropios servicios a la capa inmediatamente superior.

• La frontera o interfaz entre dos niveles o capas residentes en el mismo sistema se define entérminos de primitivas, que definen completamente el servicio ofrecido. Estas primitivaspueden ser de cuatro tipos:

• Petición: utilizada por la capa usuario para invocar una función o servicio de la capaproveedora de servicio.

• Indicación: Utilizada por la capa proveedora para notificar que una función ha sidoinvocada.

• Respuesta: utilizada por la capa usuaria para completar la función invocada medianteuna primitva de petición previa.

• Confirmación: mediante la cual, la capa proveedora confirma que una funciónpreviamente invocada se ha completado.

Cualquier servicio se ofrece como combinación de estos cuatro tipos de primitivas, que ademáscontendrán un conjunto de parámetros específicos del servicio a ofrecer.

Para ofrecer un servicio, las entidades residentes en una capa dentro de un sistema debencolaborar con sus entidades gemelas, situadas dentro de la misma capa en el sistema remoto. Elconjunto de reglas que rigen dicha colaboración se denomina protocolo, y se lleva a cambiomediante el intercambio de unidades de datos de protocolo (PDU6), cada una de las cuales

4 International Standards Organization5 Open Systems Interconnection6 Protocol Data Unit

Page 5: TEMA 7 Redes de datos: TCP/IP e Internet - trajano.us.estrajano.us.es/~rafa/ARSS/apuntes/tema7.pdf · detectar errores de transmisión, etc. Existen dos modalidades en la conmutación

consiste en información de control del protocolo (PCI7) y unidad de datos del servicio (SDU8).

Tanto la información procedente del usuario final (aplicaciones), como la información decontrol de los protocolos (intercambiada entre entidades gemelas), necesitan utilizar el mismomedio físico de transporte. Para ello, conforme la información de la aplicación va descendiendo atraves de la torre de capas, cada una de ellas añade su información de control de protocolo enencabezamientos sucesivos.

El conjunto resultante se transmite por el canal físico, sufriendo el proceso inverso al llegar alreceptor. Cada encabezamiento es utilizado sólo por la capa receptora del mismo nivel de laarquitectura, siendo eliminado después. Los encabezamientos destinados a capas superiores sonignorados por las inferiores, facilitando así el funcionamiento independiente de las distintascapas, así como su evolución por separado.

Los sistemas que implementan las siete capas se denominan sistemas finales, y tienen todos elmismo nivel jerárquico. Los sistemas que no implementan las siete capas se denominan sistemasintermedios, y generalmente pertenecen a uno de estos de tres tipos:

• Repetidores (sólo implementan la primera capa)

• Puentes (implementan las dos primeras capas)

• Encaminadores (implementan las tres primeras capas)

Las funciones básicas de cada nivel son:

7 Protocol Control Information8 Service Data Unit

datos PCI N+1

PCI N

PCI N-1

… PCI 1

Capa N+1

Capa N

Capa N-1

Capa 1

Capa N+1

Capa N

Capa N-1

Capa 1

datos

datos PCI N+1

datos PCI N+1

PCI N

datos PCI N+1

PCI N

PCI N-1

. . .

datos PCI N+1

PCI N

PCI N-1

… PCI 1

datos PCI N+1

PCI N

PCI N-1

… PCI 1

. . .

datos PCI N+1

PCI N

PCI N-1

datos PCI N+1

PCI N

datos PCI N+1

datos

N-PDU

N-1-SDU

Page 6: TEMA 7 Redes de datos: TCP/IP e Internet - trajano.us.estrajano.us.es/~rafa/ARSS/apuntes/tema7.pdf · detectar errores de transmisión, etc. Existen dos modalidades en la conmutación

FÍSICO (Capa 1): Permite la transmisión y recepción de de unidades básicas de información(bits) sobre los canales de transmisión. De esta forma, las capas superiores quedan libres de lasfunciones propias impuestas por el tipo de medio de transmisión (fibra óptica, cable coaxial...).Entre sus funciones están:

• Representación de los bits: codificación a utilizar, características eléctricas de la señal querepresenta a los ceros y unos.

• Sincronismo de bit y tasa de transmisión: base de tiempo común entre transmisor y receptorpara permitir una correcta interpretación de la señal recibida.

• Aspectos mecánicos: características del medio de transmisióna utilizar, tamaño de losconectores, número de patillas, topología física...

• Modo de transmisión: simplex, duplex, semiduplex.

Los equipos intermedios que sólo implementan el nivel físico se denominan repetidores. Sumisión es conectar subredes que utilizan el mismo nivel de enlace (mismo protocolo, mismoformato de trama, etc), pero distinto soporte físico (por ejemplo: Conectar entre sí dos redes deárea local Ethernet, una soportada por cable coaxial, y otra por cable de pares RJ45).

ENLACE (Capa 2): Se encarga de la transferencia de bloques básicos de información (tramas)entre sistemas que se encuentran directamente conectados entre sí. El canal de comunicaciónpuede estar compartido or varios usuarios, además de verse afectado por ruidos, por lo que estacapa debe ofrecer a los niveles superiores un enlace fiable punto a punto entre dos sistemasconectados directamente. Las tareas básicas del nivel de enlace son:

• Entramado: divide el flujo de bits recibido del nivel superior en tramas.

• Control de flujo: previene el desbordamiento en el receptor cuando éste recibe datos a unavelocidad menor de a la que son enviados por el transmisor.

• Control de errores: mecanismo para detectar y corregir tramas con errores, defectuosas, operdidas.

• Control de acceso: organiza el acceso al medio físico cuando este se encuentra compartidopor varios equipos.

• Direccionamiento físico: cuando hay varios equipos conectados al mismo medio, debedistinguirse mediante direcciones cuál de ellos es el origen y cuál el destino de las tramas.

cable coaxialCable de pares RJ45

Repetidor

Nivel Enlace

Nivel Físico

Ethernet

Page 7: TEMA 7 Redes de datos: TCP/IP e Internet - trajano.us.estrajano.us.es/~rafa/ARSS/apuntes/tema7.pdf · detectar errores de transmisión, etc. Existen dos modalidades en la conmutación

Los equipos intermedios que sólo implementan las capas 1 y 2 se denominan puentes. Sumisión es unir subredes con diferentes niveles de enlace, de forma transparente al nivel de red.(por ejemplo: unir una red Token Ring con una red Ethernet)

RED (Capa 3): Se encarga de hacer llegar la información suministrada por la capa superiorhasta su destino final, atravesando para ello todos los sistemas intermedios que sea necesario, yeligiendo la ruta adecuada a través de los mismos. La principal tarea es el encaminamiento de lospaquetes, que deberán encontrar una ruta eficaz que permita llegar hasta el destino final,utilizando para ellos sistemas intermedios (encaminadores) que unen las distintas subredes.

Para llevar a cabo el encaminamiento, debemos poder distinguir a los sistemas de formaunívoca, lo que se realiza mediante la asignación de direcciones de red. Este nivel puede ofrecerun servicio en modo circuito virtual, o bien en modo datagrama.

Estas tres primeras capas forman el servicio de red, que ofrece a las capas superiores un canalde comunicación entre sistemas finales con independencia de su ubicación física.

Los equipos intermedios que implementan estas tres capas se denominan encaminadores. Sumisión es transportar los paquetes desde el punto origen de la red, al punto destino, atravesandocuantos nodos intermedios sea necesario.

TRANSPORTE (Capa 4): Encargada de proporcionar una transferencia fiable y ordenada detodo el mensaje (no sólo de paquetes o partes del mensaje). Para ello debe ocuparse de tareascomo el control de flujo o el control de errores de extremo a extremo. Algunas responsabilidadesde este nivel son:

• Direccionamiento de puntos de servicio: Un sistema final puede tener varios consumidoresde servicio (programas o aplicaciones) ejecutándose al mismo tiempo, por lo que habrá quedistinguirlas entre sí asignándoles una dirección de punto de acceso al servicio (SAP9) o

9 Service Access Point

Red Ethernet

Nivel Red

Nivel EnlaceEthernet

Red Token Ring

Puente

Nivel Transporte

Nivel Red

Red A Red B

Encaminador

Page 8: TEMA 7 Redes de datos: TCP/IP e Internet - trajano.us.estrajano.us.es/~rafa/ARSS/apuntes/tema7.pdf · detectar errores de transmisión, etc. Existen dos modalidades en la conmutación

puerto a cada una de ellas, dentro de ese sistema final.

• Segmentación y reeensamblado: Un mensaje de usuario puede ser dividido en segmentos(que son enviados en paquetes distintos), que habrá que re-ensamblar en el extremoreceptor.

• Control de conexión: El nivel de transporte puede enviar directamente los mensajes osegmentos a su destino de manera independiente (servicio no orientado a conexión), o bienpuede requerir que se establezca una conexión previa entre origen y destino antes decomenzar la transmisión, liberándose al concluir la comunicación (servicio orientado aconexión).

• Control de flujo y control de errores: La misma misión que en el nivel de enlace, pero eneste caso, extremo a extremo. Generalmente, los errores en este nivel se corrigen medianteretransmisiones.

El nivel de transporte, junto con las tres primeras capas, forman el denominado bloque detransporte, que se ocupa exclusivamente de aspectos relacionados con la comunicación, y queofrece a los sistemas superiores una comunicación fiable, transparente y libre de errores entreentidades de niveles superiores.

SESIÓN (Capa 5): Ofrece mecanismos para organizar y sincronizar los diálogos entreentidades de aplicación. El control del diálogo facilita que la comunicación entre dos procesospueda tener lugar en modo semi-duplex o full-duplex, marcando el progreso del diálogo,controlando qué sistema posee el turno para “hablar”... Permite también insertar puntos desincronismo desde donde retomar el diálogo si éste se interrumpiera por cualquier motivo.

PRESENTACIÓN (capa 6): Permite representar la información de una forma independientede la implementación realizada por los sistemas. La información así representada conforma unaserie de datos estructurados (caracteres, enteros, etc), y no simplemente una secuencia de bits quepuede ser interpretada de distinta forma por diversos sistemas (por ejemplo: ASCII frente aEBCDIC, big-endian frente a little-endian...). También es responsabilidad del nivel depresentación el cifrado (que permite la privacidad de la comunicación) y la compresión.

APLICACIÓN (Capa 7): Proporciona a los usuarios (personas o software) un conjunto deservicios de alicación distribuidos. Asegura la cooperación de los procesos o entidades deaplicación entre sí para ofecer los servicios finales al usuario. Es responsable de la semántica delprotocolo intercambiado entre entidades de aplicación. Se encuentran estandarizadas aplicacionesen este nivel como terminales virtuales de red (para acceso a consola de máquina remota),administración y transferencia de información en forma de archivos, correo electrónico, oservicios de directorio para acceso a bases de datos distribuidas.

A partir de este modelo de referencia, se desarrollaron las correspondientes entidades yprotocolos de cada capa. No obstante, la gran implantación de la red TCP / IP restó protagonismoa dichos protocolos. Aún así, el modelo de referencia sigue siendo válido y utilizado en cualquierarquitectura basada en capas para redes de datos.

2.2.- El modelo de referencia TCP / IP. Comparativa frente a OSI.

Page 9: TEMA 7 Redes de datos: TCP/IP e Internet - trajano.us.estrajano.us.es/~rafa/ARSS/apuntes/tema7.pdf · detectar errores de transmisión, etc. Existen dos modalidades en la conmutación

Poco antes de la aparición del modelo de referencia OSI, se inicia un proyecto encaminado aproporcionar una red de datos robusta de arquitectura distribuida. Dicha red nace en 1977-79 y sedenomina ARPA Net. Se inicia en el departamento de defensa de EEUU, y progresivamente vaincorporando universidades y entidades públicas, de forma que en 1983 se divide en dos redes:MilNET, con fines militares, y ARPA Net, para propósitos de investigación. Esta última fuecreciendo e incorporando nuevos equipos hasta formar lo que hoy conocemos como Internet.

Internet se apoya para su funcionamiento en una serie de protocolos abiertos (públicos ygratuitos) conocidos generalmente como TCP / IP. La torre de protocolos TCP / IP estácompuesta por cinco niveles: físico, enlace, red, transporte, y aplicación. Los primeros cuatroniveles realizan aproximadamente las mismas tareas que los correspondientes niveles OSI. Sinembargo, las tres últimas capas del modelo OSI están representadas por una única capa deaplicación en el modelo TCP / IP. No existe relación directa entre los modelos OSI y TCP / IP, yaque este último surge anteriormente, aunque ambos emplean el concepto de capas, donde cadaprotocolo se apoya en uno o varios del nivel inferior.

Los niveles físico y de enlace, a los que también se les denomina colectivamente nivel desubred, no se encuentran definidos en este modelo, dejando libertad para la creación y evoluciónde subredes con diferentes tecnologías. Así, es posible emplear la torre de protocolos TCP / IPsobre cualquier nivel de enlace: redes de difusión como Ethernet, punto a punto como enlacesPPP, etc.

El nivel de red ofrece el servicio de transferencia de mensajes extremo a extremo atravesandocualesquiera subredes, utilizando el protocolo IP. Este es un protocolo no orientado a conexión ode modo datagrama, es decir, la ruta que sigue cada paquete depende de las decisiones tomadaspor cada nodo en el trayecto. En este nivel existen también otros protocolos auxiliares querealizan tareas específicas, como ICMP10 (que transporta mensajes de control, comonotificaciones de destino inalcanzable o control de flujo), IGMP11 (para la gestíon de grupos dedifusión), etc

El nivel de transporte ofrece dos protocolos: UDP12, un protocolo no fiable y no orientado aconexión, y TCP13, un servicio orientado a conexión y fiable que garantiza el transporte extremo aextremo. Típicamente UDP se utiliza en servicios sensibles al retardo (como el tráfico de audio ovídeo en tiempo real) o aplicaciones sencillas, mientras que TCP se usa en aplicaciones querequieren mayor fiablidad (transferencia de ficheros, navegación web)

En el nivel de aplicación se encuentran definidos algunos protocolos como el de transferenciade correo electrónico (SMTP14), transferencia de ficheros (FTP15), transferencia de hipertexto(HTTP16), terminal remoto (telnet), etc.

La unidad de datos creada por el nivel de aplicación se denomina mensaje. Estos mensajes se

10 Internet Control Message Protocol11 Internet Group Management Protocol12 Unreliable Datagram Protocol13 Transport Control Protocol14 Simple Mail Transport Protocol15 File Transfer Protocol16 Hyper Text Transfer Protocol

Page 10: TEMA 7 Redes de datos: TCP/IP e Internet - trajano.us.estrajano.us.es/~rafa/ARSS/apuntes/tema7.pdf · detectar errores de transmisión, etc. Existen dos modalidades en la conmutación

encapsularán en datagramas de usuario o segmentos, según se emplee para su transporte UDP oTCP. Estos elementos son encapsulados dentro de datagramas IP, cuya transferencia esresponsabilidad del nivel de red. Por supuesto, a su vez los datagramas IP son encapsulados en lastramas correspondientes al nivel de enlace que soporte la torre de protocolos, antes de sertransmitidos por el nivel fisico.

3.- El Protocolo IP

3.1.- Datagramas IP

El protocolo IP se encuentra definido en la RFC17 791 del IETF18. Ofrece un servicio de envíode paquetes no orientado a conexión y no confirmado. Dicho servicio se conoce como de tipo“Best Effort”: la red hará lo posible por llevar los paquetes hacia su destino, pero no da garantías,lo que implica que el paquete puede perderse, duplicarse, o llegar fuera de orden, y el nivel de redno detectará estos hechos. Si necesitamos una comunicación fiable entre dos aplicaciones deberánser el nivel de transporte TCP o el propio nivel de aplicación los que se encarguen de ello.

Los paquetes del nivel IP se denominan datagramas, y son de longitud variable (hasta 65.536bytes). Constan de dos partes:

• Campo de datos, donde se encapsulan las PDUs del nivel superior.

• Cabecera (denominada PCI en el modelo OSI). Contiene información necesaria para elencaminamiento de los paquetes. Su longitud puede variar entre 20 y 60 octetos.

El formato del datagrama IP es:

0 8 16 31

VERS HLEN ToS LEN

ID IDN OFFSET

TTL Protocol Checksum

D.O.

D.D.

OPT Relleno

• VERS: versión del protocolo IP utilizada (actualmente, IPv4 o IPv6).

• HLEN: longitud de la cabecera (medida en palabras de 4 bytes).

• ToS: tipo de servicio para la entrega del datagrama (prioridad, fiabilidad...).

17 Request For Comments18 Internet Engineering Task Force

Page 11: TEMA 7 Redes de datos: TCP/IP e Internet - trajano.us.estrajano.us.es/~rafa/ARSS/apuntes/tema7.pdf · detectar errores de transmisión, etc. Existen dos modalidades en la conmutación

3 bit 1 bit 1 bit 1 bit 2 bit

Prioridad D T R Reservado

• Bits de prioridad: usados en algoritmos de control de congestión

• Bit D (Delay): priorizar este paquete para minimizar su retardo

• Bit T (Throughput): priorizar este paquete para maximir su caudal.

• Bit R (Reliability): priorizar este paquete para minimizar su prob. de pérdida.

• LEN: longitud total (incluyendo cabeceras) del datagrama, expresada en octetos.

• ID, IDN, OFFSET: relacionados con la fragmentación de datagramas.

La máxima cantidad de información que cabe en una trama de nivel de enlace sedenomina MTU19. Cuando un datagrama pasa de una red a otra que implementa un nivelde enlace diferente, es posible que la MTU varíe y sea necesario fragmentar eldatagrama.

• ID: identifica al datagrama, y es el mismo en todos los fragmentos

• IDN: es un conjunto de tres bits que indican si el datagrama actual es un fragmentomás, o el último (o único)

• OFFSET: indica la posición del fragmento dentro del datagrama original.

• TTL: tiempo de vida. El sistema origen fija su valor inicial, y cada encaminador lodecrementa. Si su valor llega a cero, el paquete se descarta. De esta manera se evita que unpaquete viaje indefinidamente o permanezca eternamente en un bucle.

• PROTOCOL: especifica el protocolo de nivel superior que se encuentra encapsulado en laparte de datos del datagrama IP (6 = TCP, 17 = UDP, 1 = ICMP, etc).

• CHECKSUM: suma de control sobre los bytes de la cabecera, que permite verificar laintegridad de la misma.Debe ser recalculada en cada nodo debido a cambios en el TTL ofragmentación.

• DO: Dirección IP del sistema que origina el datagrama.

• DD: Dirección IP del sistema destino del datagrama.

• OPT: Campo de longitud variable que ofrece una serie de opciones para controlar elencaminamiento.

3.2.- Direccionamiento en IP

19 Maximum Transfer Unit

Page 12: TEMA 7 Redes de datos: TCP/IP e Internet - trajano.us.estrajano.us.es/~rafa/ARSS/apuntes/tema7.pdf · detectar errores de transmisión, etc. Existen dos modalidades en la conmutación

Las direcciones IP identifican a la red y al sistema (equipo) dentro de la red. Las direccionesIPv4 tienen 4 octetos, y están divididas en dos partes: identificador de red, e identificador deequipo dentro de dicha red. Todos los equipos conectados a una misma red comparten el mismoidentificador de red.

Normalmente se utiliza la notación decimal-punto para representar direcciones IP. Éstaconsiste en cuatro números decimales separados por puntos, cada uno de los cuales expresa elvalor del correspondiente octeto de la dirección. Así, por ejemplo, 132.4.23.3 o 211.23.76.254son direcciones válidas, mientras que 321.23.4.21 no lo es, pues el primer número está fuera delrango alcanzable con un octeto (0-255).

En función del valor que tome el primer número de la dirección, podemos distinguir cinco tiposo clases de direcciones:

• Clase A: Son aquellas que tienen un 0 en el bit más significativo del primer octeto (númerosmenos de 127 en decimal). En estas direcciones, el primer octeto es el identificador de red,y los tres siguientes identifican al equipo.

• Clase B: Son aquellas cuyos dos primeros bits más significativos son: 10 (primer númeroentre 128 y 191). En ellas, los dos pimeros octetos son el identificador de red, los dossiguientes el del equipo.

• Clase C: Los tres bits más significativos del primer octeto son: 110 (primer número entre192 y 223). En ellas, los tres primeros octetos identifican a la red, y el último al equipo.

• Clase D: Los cuatro bits más significativos del primer octeto son: 1110 (primer númeroentre 224 y 239). Son utilizadas para el direccionamiento punto a multipunto (multicast).

• Clase E: Los cuatro bits más significativos del primer octeto son: 1111 (primer númeroentre 240 y 255). Se encuentran reservados para usos futuros.

La clase de dirección a utilizar dependerá del número de equipos presentes en una red. Así, nopodremos utilizar direcciones de clase C para una red que tenga 500 equipos, pues el identificadorde equipo es de sólo un octeto. Cuando un equipo se encuentra conectado a múltiples redes (comoocurre con los encaminadores), deberá tener una IP por cada red que interconecte.

Existen algunas direcciones especiales que no pueden ser utilizadas por equipos, como son:

• Direcciones de red: Para identificar una red en su conjunto, se usa una dirección IP con elidentificador de equipo puesto a cero. Por ejemplo, direcciones como 122.0.0.0 o193.23.121.0 son direcciones de red.

• Dirección de difusión local: Se utiliza para hacer llegar un paquete a todos los equiposconectados a la red, y consiste en la dirección con todos los bits de la parte de equipopuestos a 1. Por ejemplo, 122.255.255.255 o 193.23.121.255.

• Dirección de difusión total: Utilizada para hacer llegar un paquete a todos los equipos detodas las redes. Consiste en todos los bits de la dirección puestos a 1 (255.255.255.255).Normalmente los encaminadores no la propagan, con lo cual equivale a la difusión local.

• Dirección de bucle local: utilizada para indicar el propio equipo, es cualquiera en la red de

Page 13: TEMA 7 Redes de datos: TCP/IP e Internet - trajano.us.estrajano.us.es/~rafa/ARSS/apuntes/tema7.pdf · detectar errores de transmisión, etc. Existen dos modalidades en la conmutación

clase A con identificador de equipo 127, es decir, 127.XXX.XXX.XXX. Generalmente sesuele emplear 127.0.0.1

• Dirección desconocida: utilizada para indicar la entrada por defecto en la tabla deencaminamiento: todos los bits a cero (0.0.0.0).

Además de estas direcciones especiales, la RFC 1918 define algunos rangos de direcciones queestán reservados para uso privado, es decir, pueden ser utilizados en redes privadas que nonecesiten conectarse con el exterior, y está prohibido utilizarlos en redes públicas (internet). Estosrangos son:

• Una red de clase A: 10.0.0.0 – 10.255.255.255

• 32 redes de clase B: 172.16.0.0 – 172.31.255.255

• 256 redes de clase C: 192.168.0.0 – 192.168.255.255

La división en clases del espacio de direcciones IP es una división jerárquica rígida. El tamañode las redes está fijo: las redes de clase C pueden albergar hasta 254 ordenadores (256 direccionesmenos la dirección de red y la de difusión local). Las de clase B, hasta 65534, y las de clase A,hasta 16777214. Esto plantea un problema de desaprovechamiento del espacio de direcciones,puesto que, por ejemplo, para alojar una red con 500 ordenadores, es necesario dedicar al menosuna dirección de clase B. En este ejemplo, 65.054 direcciones quedarían sin utilizar.

Conforme internet iba creciendo, el problema del agotamiento del espacio de direcciones sehizo cada vez más evidente. Como solución a este problema, se planteó una reestructuración delformato de las direcciones IP: En lugar de mantener el viejo esquema de asignación dedirecciones por clases, con identificadores de red de tamaño fijo, se utilizan identificadores de redde tamaño variable. Esto es lo que se conoce como direccionamiento sin clases (classless) oCIDR20.

CIDR aporta flexibilidad a la hora de especificar la separación entre identificador de red eidentificador de equipo. El número de bits correspondientes al identificador de red se seleccionamediante una máscara binaria: los bits pertenecientes al identificador de red están puestos a 1 endicha máscara, mientras que los bits pertenecientes al identificador de equipo están puestos acero.

Dirección IP 134.23.133.29 1 0 0 0 0 1 1 0 . 0 0 0 1 0 1 1 1 . 1 0 0 0 0 0 1 1 . 0 0 0 1 1 1 0 1Máscara 255.255.255.0 1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1 . 0 0 0 0 0 0 0 0

Id. de red Id. de host

El enmascaramiento permite, mediante la operación lógica AND, extraer el identificador de reda partir de la dirección IP del equipo y la máscara. Por ejemplo, la máscara 255.255.255.0,aplicada a la dirección IP 134.23.133.29, nos ofrece la red 134.23.133.0. Así pues, cualquierdirección IP debe llevar asociada una máscara que nos permita conocer qué parte identifica a lared, y qué parte al equipo. El conjunto (dirección IP, máscara) se suele representar mediante unanotación compacta que consiste en especificar la dirección IP y el número de bits de la máscaraque están puestos a 1, separados por una barra. Siguiendo el ejemplo anterior, el conjunto de

20 Classless Inter Domain Routing

Page 14: TEMA 7 Redes de datos: TCP/IP e Internet - trajano.us.estrajano.us.es/~rafa/ARSS/apuntes/tema7.pdf · detectar errores de transmisión, etc. Existen dos modalidades en la conmutación

dirección IP 134.23.133.29 y máscara 255.255.255.0 puede escribirse de manera más compactacomo 134.23.133.29 / 24.

Nótese que, siguiendo el esquema tradicional, una dirección como 134.23.133.29 / 25pertenecería a una red de clase B, y debería tener un id. de red de 16 bits. CIDR nos permitequedarnos con una “porción” de esa red, de un tamaño más adecuado a nuestras necesidades.También nos permite subdividir un rango en trozos más pequeños, que pueden ser administradosindependientemente. Esto facilita la tarea de asignación de direcciones, y el encaminamiento.

Por compatibilidad, las máscaras por defecto para las direcciones de clase A, B y C son255.0.0.0, 255.255.0.0 y 255.255.255.0, respectivamente, y no se suelen emplear máscaras conmenos bits puestos a uno que los correspondientes a la clase de dirección (por ejemplo, no espráctica habitual emplear una máscara 255.0.0.0 con una dirección de clase B, puesto que no seríacompatible con software o hardware previo a la introducción del CIDR).

3.3.- Integración de redes

El protocolo IP se encuentra por encima de los niveles de enlace y físico, por lo que permite laintegración de diferentes tipos de tecnología en estos niveles. Podemos clasificar estastecnologías en dos grandes grupos:

LAN: o redes de área local. De alta velocidad, suelen utilizar medios de transmisión propios ytener una extensión limitada. (normalmente a decenas o centenas de metros). El principalorganismo normalizador es el IEEE, y entre sus estándares más difundidos figura el Ethernet(802.3), con velocidades desde 100 hasta 1000 Mbps, y su versión inalámbrica WLAN(802.11b/g) En ellos se normaliza tanto el nivel físico como el de enlace.

Las tecnologías empleadas en el nivel de subred (enlace y físico) permiten la comunicacióndirecta entre equipos conectados al medio. Generalmente, estos medios tienen topología en bus,

Red 134.23.133.0 / 24

Internet

Red134.23.133.128 / 25

Red134.23.133.0 / 25

Red134.23.133.64 / 26

Red134.23.133.0 / 26

Page 15: TEMA 7 Redes de datos: TCP/IP e Internet - trajano.us.estrajano.us.es/~rafa/ARSS/apuntes/tema7.pdf · detectar errores de transmisión, etc. Existen dos modalidades en la conmutación

por lo que se hace preciso el uso de direcciones físicas (también conocidas como direccionesMAC) para identificar el origen y destino de la trama. Estas direcciones son direcciones hardwareasociadas físicamente a cada puerto de la máquina.

Ejemplo de red LAN: Ethernet, normalizada en la recomendación 802.3 del IEEE, define elnivel de enlace a emplear sobre diversos medios físicos con topología de bus, así como normalizadichos medios físicos. Se define el formato y codificación de trama de enlace, se establece elmétodo CSMA/CD21 para el acceso al medio, y se normalizan diversos niveles físicos: cablecoaxial, cable de pares, fibra óptica, etc. Puede ofrecer velocidades de transferencia desde 10Mbps a 10 Gbps. La trama Ethernet tiene el siguiente formato:

Preámbulo D.D. D.O. LN DATA CRC

8 octetos 6 o 6 o 2 o 48-1500 o 4 o

• Preámbulo + Inicio de trama: Una secuencia de 8 octetos formados por bits 1 y 0alternados, terminando el último por 11, que permite a transmisor y receptor sincronizarse.

• Dirección destino (D.D.) y dirección origen (D.O.). Para direccionar un equipo a nivel deenlace, se emplean direcciones MAC de 6 octetos, globalmente únicas para cada dispositivoethernet.

• Campo Longitud / Tipo. Por motivos históricos, existen al menos dos formatos de tramaEthernet. En uno de ellos, este campo de dos bytes codifica la longitud de la parte de datos.En el otro, este campo identifica al tipo de trama o protocolo de nivel superior que vaencapsulado en la parte de datos, y la longitud de la trama se determina por medios físicos.

• Campo de datos: de tamaño variable, como mínimo debe ocupar 48 bytes para que la tramatenga un tamaño mínimo de 64 octetos. En caso contrario, se añade relleno. Como máximo,la parte de datos puede ocupar 1500 bytes, de manera que el tamaño total de una tramaEthernet está entre 64 y 1528 octetos.

• CRC de 4 octetos para verificar la existencia de errores de transmisión. Cuando la señal enel canal vuelve al estado de reposo, el receptor compara los últimos 4 octetos recibidos conuna suma de control calculada sobre el frame.

Cuando nosotros, como usuarios, deseamos comunicarnos con una máquina remota a través delprotocolo IP, debemos conocer la dirección IP de dicha máquina. De la misma forma, cuando elprotocolo IP necesita ponerse en contacto con otra máquina (el destino final del datagrama, o unsistema intermedio que deba encaminarlo), debe conocer su dirección de enlace. En el caso de lasredes Ethernet, esta dirección se averigua a través del protocolo ARP22.

El protocolo ARP, definido en la RFC 826, permite averiguar la dirección física que secorresponde con una dirección de red, es decir, la dirección MAC Ethernet del dispositivo físicocuya dirección IP conocemos. Es un protocolo petición respuesta:

• El equipo origen envía un paquete ARP con su dirección MAC, su dirección IP, y ladirección IP del equipo cuya dirección física pretende averiguar. Este paquete es enviado a

21 Carrier Sense Multiple Access / Collission Detection22 Address Resolution Protocol.

Page 16: TEMA 7 Redes de datos: TCP/IP e Internet - trajano.us.estrajano.us.es/~rafa/ARSS/apuntes/tema7.pdf · detectar errores de transmisión, etc. Existen dos modalidades en la conmutación

la dirección MAC de difusión, de manera que es recibido por todos los equipos conectadosa la misma red física.

• El equipo que posea esa IP contesta con un paquete ARP de respuesta, indicando sudirección IP y su dirección MAC. Este paquete ya no se envía a la dirección MAC dedifusión, sino directamente al equipo que realizó la petición

• Ambos equipos, emisor y receptor, añaden la información que han averiguado a una tablade caché, llamada tabla ARP. Esta tabla evita que tengamos que realizar este procedimientocada vez que queramos enviar datos a un equipo cuya dirección MAC ya hemos averiguadoantes.

WAN, o redes de área extensa, permiten comunicar equipos separados por una gran distancia.Normalmente se alquilan líneas o se contrata el transporte físico a los operadores de redes detelecomunicación, utilizando para ello redes públicas, bien de conmutación de circuitos (RTC,RDSI, GSM) o de paquetes (X.25, FR, ATM...). En el caso de conexiones punto a punto, se sueleusar PPP23 como nivel de enlace. Las velocidades de transmisión son sensiblemente inferiores alcaso de las LAN, y el coste depende de la distancia y/o la tasa contratada con el operador.

Ejemplo de red WAN: Conexión sobre canal telefónico (RTC o RDSI). En estos casos, seestablece una conexión física entre los equipos (es decir, se realiza la llamada), y sobre el canalfísico se utiliza PPP como nivel de enlace.

PPP Es un protocolo diseñado por el IETF para permitir el intercambio de datos entre doselementos de red unidos por un enlace full duplex que garantice la entrega ordenada de datos enconexiones punto a punto, y se especifica en la RFC 1661. Consta de dos fases: una primera fasede establecimiento del canal, controlada por el protocolo LCP24, y una segunda fase denegociación de los protocolos de red que se van a transportar por el enlace, controlada por elprotocolo NCP25. Una vez establecida la sesión PPP, se transmiten tramas de datos, con elsiguiente formato:

Flag Dir Ctrl protocolo datos FCS Flag

1 octet 1 o 1 o 2 o X o 2 ó 4 o 1 o

• Flag: tanto al inicio como al fin, las tramas PPP incluyen una secuencia fija de bits que

23 Point to Point Protocol.24 Link control Protocol.25 Network control Protocol.

ARPREQ(MACA,DIFUSIÓN, IPA,IPD)

ARPRESP(MACD,MACA, IPD,IPA)

A

B C D E

Page 17: TEMA 7 Redes de datos: TCP/IP e Internet - trajano.us.estrajano.us.es/~rafa/ARSS/apuntes/tema7.pdf · detectar errores de transmisión, etc. Existen dos modalidades en la conmutación

sirve para identificar los límites de la trama.

• Dirección destino: El formato de trama de PPP está basado en el definido por el nivel deenlace HDLC26, regularizado en la norma ISO 3309-1979. Por ello aparece este campo, queen PPP no tiene uso: el enlace es punto a punto, el destinatario del paquete es siempre elotro extremo de la conexión.

• Control: un campo que define el tipo de trama y que también es heredado de HDLC. Suvalor es fijo.

• Protocolo: indica el protocolo de nivel superior que va encapsulado en la trama.

• Datos: parte de datos de la trama. Normalmente tiene un tamaño máximo de 1500 bytes,aunque se puede negociar un tamaño mayor al establecer la conexión PPP.

• FCS27: Suma de control. Habitualmente tiene un tamaño de 2 octetos, aunque se puedenegociar un tamaño de 4 octetos al establecerse la conexión.

3.4.- Encaminamiento

Cuando un equipo quiere enviar un datagrama IP a otro, debe tomar la decisión de a qué nodode la red debe entregar dicho datagrama para hacerlo llegar a su destino. De la misma forma,cuando un equipo recibe un datagrama IP, debe comprobar si la dirección destino del mismo es lasuya propia. En ese caso, simplemente extraerá la parte de datos y se la entregará a la capasuperior. En caso contrario, se enfrenta al mismo problema: a qué nodo debo reenviar el paquetepara hacer que llegue a su destino?

Como hemos comentado, la red IP funciona en modo datagrama o no orientado a conexión:cada nodo decide el siguiente salto en la ruta que seguirá el paquete hacia su destino. Si el equipoque envía el datagrama y el que debe recibirlo pertenecen a la misma red (es decir, susdirecciones comparten el mismo identificador de red), la decisión es fácil: mecanismos comoARP nos permiten conocer la dirección de nivel de enlace del destinatario, y hacerle llegar eldatagrama directamente a él. Si los dos equipos pertenecen a redes distintas, deberemos valernosde un equipo intermedio o encaminador que interconecte, bien directa o indirectamente (a travésde otros encaminadores), ambas redes.

Este proceso de toma de decisiones es lo que denominamos encaminamiento, y la forma dedecidir el siguiente salto en la trayectoria de un paquete hacia su destino es empleando lo que seconoce como tablas de ruta o de encaminamiento.

Una tabla de encaminamiento es, básicamente, una secuencia de pares ( dirección IP destino,dirección siguiente salto ). La dirección destino puede referirse a un sólo equipo, o a una redcompleta. La dirección del siguiente salto puede identificar la interfaz (enlace de salida) por laque debemos enviar el mensaje, si el destino es directamente accesible, o la dirección IP delencaminador que debemos usar para hacer llegar el datagrama a su destino, en otro caso. Elencaminador será un equipo directamente accesible, conectado a nuestra misma red, pues en caso

26 High-level Data Link Control27 Frame Check Sequence.

Page 18: TEMA 7 Redes de datos: TCP/IP e Internet - trajano.us.estrajano.us.es/~rafa/ARSS/apuntes/tema7.pdf · detectar errores de transmisión, etc. Existen dos modalidades en la conmutación

contrario deberíamos resolver también cómo llegar al encaminador.

A la hora de enviar un datagrama a una red no directamente accesible, compararemos ladirección IP destino con todas las entradas de la tabla de encaminamiento, quedándonos conaquella cuyo identificador de red coincida con el de la IP destino. En caso de que haya varias, seelegirá la que tenga el mayor prefijo coincidente, es decir, el identificador de red mayor. Porejemplo, supongamos un equipo con la IP 170.1.2.3 y las siguientes entradas en la tabla deencaminamiento:

IP destino IP encaminador

193.4.5.0 / 24 170.1.1.1

193.4.5.128 / 25 170.1.1.2

Si este equipo desea enviar un datagrama a la IP 193.4.5.129, comparará dicha IP con todas lasde la tabla, aplicándole la máscara de cada entrada y comprobando si el identificador de redcoincide. En este caso, existen dos entradas, teniendo la primera un id. de red de 24 bits, y lasegunda, uno de 25. Por lo tanto, el encaminador usado será el 170.1.1.2, al ser el quecorresponde al mayor prefijo coincidente.

Para incluir en la tabla de encaminamiento una entrada que se refiera no a una red, sino a unúnico equipo, se utiliza una máscara 255.255.255.255 o, lo que es lo mismo, / 32 . Para incluiruna entrada por defecto, a la que será enviado cualquier datagrama que no encuentre una rutamejor, se utiliza la entrada 0.0.0.0 / 0. Nótese que cualquier dirección IP concuerda con estaentrada, pero lo hace con la mínima longitud de prefijo coincidente ( 0 ). Por lo tanto, esta entradasólo se utiliza cuando no hay ninguna otra en la tabla que concuerde con la IP destino. Alencaminador asociado con esta entrada se le denomina encaminador por defecto o ruta pordefecto. Por ejemplo, supongamos una red dividida en departamentos como la que se muestra enla figura de abajo:

193.100.0.3 / 25 193.100.0.2 / 25 193.100.0.1 / 25

194.0.0.2 / 24

Red Ethernet 1

Internet194.0.0.1 / 24Enlace PPP

193.100.0.194 / 26 193.100.0.195 / 26

193.100.0.193 / 26

Red Ethernet 3

193.100.0.131 / 26 193.100.0.130 / 26

193.100.0.129 / 26

Red Ethernet 2

Host 1 Encaminador A

193.100.0.132 / 26

Host 5

Encaminador B

IP

TCP / UDP

EthernetEthernet1 Ethernet2

PPP

I.430

IP (IPEth1, IPEth2, IPppp)

Page 19: TEMA 7 Redes de datos: TCP/IP e Internet - trajano.us.estrajano.us.es/~rafa/ARSS/apuntes/tema7.pdf · detectar errores de transmisión, etc. Existen dos modalidades en la conmutación

La tabla de encaminamiento del equipo Host1 en esta red sería:

Destino Máscara Sig. salto

193.100.0.0 255255255128 Directo Eth. 1

0.0.0.0 0.0.0.0 193.100.0.1

La tabla del encaminador A sería:

Destino Máscara Sig. salto

193.100.0.0 255.255.255.128 Directo Eth. 1

193.100.0.128 255.255.255.192 Directo Eth. 2

193.100.0.192 255.255.255.192 193.100.0.132 / 26

194.0.0.0 255.255.255.0 Directo PPP

0.0.0.0 0.0.0.0 194.0.0.1 / 24

En el siguiente ejemplo veremos el camino que recorrería un datagrama desde el Host1 alHost5. La nomenclatura es la siguiente: Eth ( MACa, MACb, < IP: IPc, IPd > ) representa unatrama Ethernet que viaja desde la dir. MAC MACa a la MACb, y que transporta un datagrama IPcon la dirección IP origen IPc y la dirección IP destino IPd:

Por último, el proveedor de servicio responsable del enlace PPP debería incluir en su tabla deencaminamiento una entrada para reenviar los datagramas destinados a la red 193.100.0.0/24 através del encaminador 194.0.0.2.

Las tablas de encaminamiento pueden ser configuradas de forma manual, estática, o puedeutilizarse un protocolo de encaminamiento como RIP28 u OSPF29. Este tipo de protocolosintercambian información sobre las rutas, redes y máscaras accesibles por cada encaminador, la

28 Routing Information Protocol29 Open shortest Path First

193.100.0.3 / 25 193.100.0.1 / 25

Internet

193.100.0.194 / 26

193.100.0.193 / 26

Eth ( MAC1, MACa, < IP: IP1, IP5 > )

193.100.0.129 / 26

Host 1 Encaminador A

193.100.0.132 / 26

Host 5

Encaminador B

Eth ( MACa, MACb, < IP: IP1, IP5 > ) Eth ( MACb, MAC5, < IP: IP1, IP5 > )

Page 20: TEMA 7 Redes de datos: TCP/IP e Internet - trajano.us.estrajano.us.es/~rafa/ARSS/apuntes/tema7.pdf · detectar errores de transmisión, etc. Existen dos modalidades en la conmutación

distancia o número de saltos hacia ellas, etc. y en función a esa información y a unas ciertasmétricas o funciones de coste, construyen una tabla de encaminamiento óptima.

3.5.- Mensajes de control IP: El protocolo ICMP

El protocolo IP se encarga del transporte de datagramas, pero no de informar sobre errores.Esta tarea se encomienda a un protocolo complementario, ICMP, que asume las tareas denotificación de eventos y control de la red. Por ejemplo, cuando un equipo recibe un datagramaque no sabe cómo encaminar, generalmente le comunica esta circunstancia al emisor mediante unmensaje Destination Network Unreachable (destino inalcanzable) ICMP.

Los mensajes ICMP viajan encapsulados en datagramas IP, y son usados por losencaminadores para informar a otros encaminadores, o a los equipos finales, acerca decondiciones de error o de control de la red. Existen varios tipos: destino inalcanzable, TTLexcedido, redirección, congestión, etc. Existen mensajes también que se utilizan para verificar laconectividad de la red, como los mensajes de eco (echo) que emplea el comando ping.

4.- Nivel de Transporte: TCP y UDP

El objetivo del nivel de transporte es comunicar las aplicaciones entre sí (comunicaciónextremo a extremo). Utiliza los servicios de red proporcionados por IP, y permite dosmecanismos diferentes: TCP, fiable y orientado a conexión, y UDP. Para permitir lacomunicación entre aplicaciones, debemos poder distinguir a los procesos de aplicación que seestán ejecutando en un sistema final, lo que se realiza con los puntos de acceso al servicio, que enTCP/UDP se denominan puertos, y son números enteros de 16 bits.

En TCP/IP se emplea el paradigma cliente / servidor: una aplicación servidora reserva para síun puerto (lo que se conoce como enlazado o binding) y espera la recepción de mensajes a travésde dicho puerto. La aplicación cliente se enlaza también a un puerto y envía mensajes al servidor,que serán respondidos por éste. El puerto al que se enlaza el servidor debe tener un númeroconocido a priori por los clientes, números que generalmente son asignados por el IANA30 a losdistintos servicios. Por ejemplo, el servicio HTTP tiene asignado el número de puerto TCP 80, elservicio de correo SMTP tiene asignado el puerto TCP 25, el servicio DNS de resolución denombres de dominio tiene asignado el puerto UDP 53, etc. Generalmente, estos puertos están enel rango 0 – 1024 y son puertos privilegiados (por ejemplo, en linux, sólo las aplicacionesejecutadas por el usuario root - administrador o superusuario - pueden enlazarse a estos puertos).Por el contrario, los clientes suelen simplemente solicitar al sistema operativo que los enlace alprimer puerto que esté libre, generalmente en el rango 1025 – 65535.

Los rangos de puertos TCP y UDP son independientes, es decir, es posible tener una aplicaciónenlazada al puerto TCP 60, y otra totalmente distinta enlazada al puerto UDP 60.

4.1.- UDP

30 Internet Assigned Numbers Association

Page 21: TEMA 7 Redes de datos: TCP/IP e Internet - trajano.us.estrajano.us.es/~rafa/ARSS/apuntes/tema7.pdf · detectar errores de transmisión, etc. Existen dos modalidades en la conmutación

Proporciona un servicio de transporte de datos entre aplicaciones no orientado a conexión.UDP recibe los datos del nivel de aplicación, les añade su cabecera, y los envía directamente aldestino dentro de un datagrama IP; el nivel de aplicación es quien deberá encargarse del controlde flujo y de errores. El formato de la cabecera UDP es el siguiente:

2 octetos 2 octetos

Puerto origen Puerto destino

Longitud Checksum

• Los puertos UDP origen y destino del datagrama.

• La longitud completa del datagrama, incluyendo cabecera, en octetos.

• Una suma de control, opcional, tanto de la cabecera como de los datos del paquete.

4.2.- TCP

Ofrece un servicio de transporte entre aplicaciones fiable y orientado a conexión. Permitentransmitir un flujo de octetos entre aplicaciones. La información se divide en segmentos, que sonenviados en datagramas IP utilizando mecanismos de control de flujo que regulan la velocidad deenvío de segmentos en función del nivel de carga de la red. Antes de intercambiar datos deaplicación, es necesario establecer una conexión TCP entre puerto origen y puerto destino. Unavez establecida, se intercambiarán segmentos cuya cabecera tiene el siguiente formato:

4 octetos

puerto origen puerto destino

número de secuencia

número de asentimiento

Hlen Reservado Flags Ventana

Checksum Puntero urgente

Opciones Relleno

• Puertos TCP origen y destino

• Número de secuencia: número que ocupa el primer byte de este segmento dentro del flujode octetos que intercambian origen y destino. el número de secuencia no comienza en cero,sino en un valor aleatorio negociado por ambas partes al establecer la conexión.

• Número de asentimiento: número de secuencia del próximo byte que espera el emisor delsegmento.

• HLEN: longitud de la cabecera TCP, medida en palabras de 4 octetos.

• Flags: indicadores del tipo de segmento: mensaje de conexión, asentimiento, datos, urgente,

Page 22: TEMA 7 Redes de datos: TCP/IP e Internet - trajano.us.estrajano.us.es/~rafa/ARSS/apuntes/tema7.pdf · detectar errores de transmisión, etc. Existen dos modalidades en la conmutación

etc.

• Ventana: tamaño del búffer de recepción del emisor.

• Checksum: suma de control del segmento TCP.

• Puntero urgente: si el segmento transporta datos urgentes (conocidos también como datosOOB31 o fuera de banda), este campo indica la posición del último byte urgente dentro de lazona de datos.

• Opciones: campo opcional que puede no existir. Permite negociar cuestiones como eltamaño máximo de segmento a utilizar.

5.- Nivel de aplicación

Existen multitud de aplicaciones que usan la torre de protocolos TCP / IP como servicio detransporte. Los protocolos en los que se basan la mayoría de ellas están normalizados por laprincipal organización normalizadora de estándares de internet, el IETF. Algunos de estosprotocolos de nivel de aplicación son:

• DNS: Sistema de nombre de dominio, es una gran base de datos jerárquica y distribuida quepermite dar “nombre” a las direcciones IP. Es el servicio encargado de traducir los nombresque recordamos, por ejemplo www.terra.es o www.google.com, a las correspondientesdirecciones IP. Utiliza los puertos TCP 53 y UDP 53.

• HTTP: Protocolo de transferencia de hipertexto, sustenta el servicio WWW. Utiliza pordefecto el puerto TCP 80.

• SMTP: Protocolo simple de transferencia de hipertexto, sustenta el correo electrónico.Utiliza por defecto el puerto TCP 25.

• FTP: Protocolo de transferencia de ficheros, utiliza por defecto el puerto TCP 21. Existeuna versión simplificada, TFTP (trivial FTP) que utiliza el puerto UDP 69.

• telnet: Servicio de consola remota, utiliza el puerto TCP 23.

• BOOTP, DHCP: Permiten a un equipo configurar dinámicamente, al arrancar, parámetroscomo su dirección de red, la dirección de sus servidores DNS, etc. Ambos utilizan el puertoUDP 67.

• SNMP: Protocolo Simple de Gestión de Red, permite a uno o varios equipos gestoresrecabar información o enviar órdenes de gestión a los equipos que forman la red. Utiliza elpuerto UDP 161.

5.- Bibliografía

• Principal:

31 Out of Band

Page 23: TEMA 7 Redes de datos: TCP/IP e Internet - trajano.us.estrajano.us.es/~rafa/ARSS/apuntes/tema7.pdf · detectar errores de transmisión, etc. Existen dos modalidades en la conmutación

• Stallings, W.; Comunicaciones y redes de computadores, 6ª ed.; Prentice-Hall; 2000.

• Andrew S. Tanenbaum, Redes de computadores, Cuarta edición, Prentice Hall, 2003.

• James F. Kurose y Keith W. Ross; Redes de Computadores. A top-down approachfeaturing the Internet; Addison Wesley; 2001.

• Complementaria:

• Andrew S. Tanenbaum, Redes de computadores, Tercera edición, Prentice Hall, 1996.

• Piscitello, David M,; Chapin, A. Lyman. Open Systems Networking: TCP/IP andOSI. Addison-Wesley, Massachusetts, 1993

• J. HENSHALL y S. SHAW, "OSI explained. End-to-end computer communicationstandards", Elllis Horwood, 1990.

• M. ROSE, "The open book. A practical perspective on OSI", Prentice-Hall, 1990.

• F. Halsall; Data Communications, Computer Networks and OSI. 3a Edición; AdisonWesley

• Telecomunication Networks, computers and OSI. F. Haldadel. Addison Wesley(1988).