Tcp ip21

166
TCP/IP Historia IP ARP y RARP ICMP DHCP DNS UDP y TCP Otros protocolos

Transcript of Tcp ip21

Page 1: Tcp ip21

TCP/IP

HistoriaIP

ARP y RARPICMP

DHCPDNS

UDP y TCP

Otros protocolos

Page 2: Tcp ip21

Historia

Todo comenzó como un experimento

Page 3: Tcp ip21

3

Arquitectura TCP/IPArquitectura TCP/IP

SNMPDNSSMTPFTPTelnet

ARP Internet Protocol

ICMP

Ethernet WANs Token Ring FDDI

TransmissionControl Protocol

User DatagramProtocol

AplicaciónPresentaciónSesión

Transporte Transporte(host-to-host)

Acceso a la red(host a red

Aplicación

InternetRed

EnlaceFísico

Page 4: Tcp ip21

4

Orígenes

TCP/IP es en realidad un conjunto de protocolos para la interconexión de redes y computadoras sin importar su arquitectura ni su sistema operativo.

Consiste de protocolos de comunicación y protocolos de aplicación estandarizados.

Desarrollado inicialmente por el DARPA del Departamento de Defensa (DoD) de los EE.UU.. para la red ARPANET a principios de 1970.

Page 5: Tcp ip21

5

(...) Orígenes

ARPANET fue diseñado como un experimento de conmutación de paquetes en una red WAN. Sus primeros resultados satisfactorios provocaron la expansión y perfeccionamiento del protocolo TCP/IP hasta lograr su adaptación a redes LAN.

A principios de los 80s, TCP/IP se comenzó a incluir en las diferentes versiones de Unix.

En 1983, TCP/IP se convirtió en el protocolo estándar de redes e interconexión de redes militares: ARNET y MILNET (división que resulto de ARPANET).

Page 6: Tcp ip21

6

Internet

Internet es una colección de redes y conecta a todo tipo de organizaciones: gubernamentales, de investigación, sociales, comerciales, educativas, etc.

Internet tomo forma en 1980 cuando las instituciones de investigación sobre DARPA empezaron su conversión a TCP/IP. La conversión fue culminada en 1983.

Page 7: Tcp ip21

7

RFC

Request For Comment.Se usan para formalizar protocolos y otros

procedimientos de operaciones en Internet.Un RFC es primero publicado electrónicamente

y comentado sobre todo por aquellos quienes tomaron parte en la discusión electrónica.

El documento podría pasar por varias revisiones antes de llegar finalmente a un acuerdo. Si el documento es aceptado como una buena idea se le asigna un número y se archiva con otros RFCs.

Page 8: Tcp ip21

8

Categorización de RFCs

Por el estado de estandarización: Estándar Propuesta Experimental Histórica

Por el estado del protocolo: Requerida Recomendada Electiva No recomendada

Page 9: Tcp ip21

9

(...) Categorización de RFCs

Un protocolo estándar y requerido debe ser implementado por los hosts conectados a Internet.

Un protocolo electivo y propuesto es discutido y acordado pero su implementación no es obligatoria.

Los informativos RFCs contienen información objetiva acerca de Internet y sus operaciones.

Sólo algunos de los RFCs son actualmente estándares. La mayoría son para propósitos de información y discusión.

Page 10: Tcp ip21

10

OSI y TCP/IP

Page 11: Tcp ip21

IP

El protocolo de Internet

Page 12: Tcp ip21

12

IP

Internet Protocol.Responsable de transmitir bloques de datos a

través de un conjunto de redes interconectadas. IP recibe dichos bloques (datagramas) desde un

nivel superior de protocolos (como TCP o UDP) y luego los retransmite a través de Internet.

Proporciona un servicio de entrega sin conexión entre estaciones terminales. Cada datagrama contiene la dirección de destino y es ruteada a través del sistema, independientemente de los otros datagramas.

Page 13: Tcp ip21

13

Formato

Page 14: Tcp ip21

14

(...) Formato

VERS. Versión del protocolo IP utilizado para crear el datagrama.

LEN. Longitud del encabezado. Type of Service. Tipo de servicio requerido para

el datagrama. Total Length. Longitud del datagrama medida

en bytes, incluye la cabecera y los datos. Todos los hosts deben ser capaces de recibir datagramas de 576 bytes. Los hosts enviarán datagramas mayores sólo cuando el administrador de la red tenga la seguridad que el host destino puede aceptar dichos datagramas.

Page 15: Tcp ip21

15

(...) Formato

Identification. Identificación exclusiva del datagrama. El emisor del datagrama asigna este valor al datagrama original no fragmentado. Si el datagrama es fragmentado por un ruteador, dicho valor se copia en el campo Identification de todos los fragmentos resultantes.

Flags. Información de control de fragmentación. La configuración de estos bits determina si un datagrama puede ser fragmentado o no. Si un datagrama es fragmentado, el campo Flags se usa para indicar si hay más fragmentos o si este es el último fragmento en una serie de fragmentos.

Page 16: Tcp ip21

16

(...) Formato

Fragment Offset. Indica la ubicación del fragmento en el datagrama original. El valor es una medida en unidades de 8 bytes desde el inicio del datagrama original. El primer fragmento tiene el valor 0.

TTL. Time To Live, tiempo de vida del datagrama. Protocol. Formato de protocolo del campo de datos. Header cheksum. Suma de comprobación de la

cabecera. Source IP address. Dirección IP de origen.

Page 17: Tcp ip21

17

(...) Formato

Destination IP address. Dirección IP de destino.

Options. Opciones IP Padding. Bits de relleno Data. Datos enviados dentro del paquete IP.

Page 18: Tcp ip21

18

Direccionamiento IP

Dirección de red Dirección de host

0 1 2 3 . . . . . . 29 30 31

Las direcciones IP consisten de 32 bits de los cuales, unos identifican a la red y otros identifican al host.

Page 19: Tcp ip21

19

(…) Direccionamiento IP(…) Direccionamiento IP

11000000 10101000 00000010 00000001

192 .168 . 2 . 1

Red Host

Page 20: Tcp ip21

20

0 1 7 8 31

Clase AClase A

0 Red Dirección de host (24)

Clases de Direcciones IPClases de Direcciones IP

El primer byte se encuentra entre 0 y 127. Hay 126 redes clase A. Cada red clase A puede tener 16777214 hosts. La máscara estándar es 255.0.0.0 El primer bit es 0.

Page 21: Tcp ip21

21

0 1 2 15 16 31

Clase BClase B

Dirección de host (16)1 0 Red

(…) Clases de Direcciones IP(…) Clases de Direcciones IP

El primer byte se encuentra entre 128 y 191. Hay 16382 redes clase B. Cada red clase B puede tener 65534 hosts. La máscara estándar es 255.255.0.0 Los dos primeros bits son 10.

Page 22: Tcp ip21

22

0 1 2 3 23 24 31

Clase CClase C

Host (8)1 1 0 Red

(…) Clases de Direcciones IP(…) Clases de Direcciones IP

El primer byte se encuentra entre 192 y 223. Hay 2097150 redes clase C. Cada red clase C puede tener 254 hosts. La máscara estándar es 255.255.255.0 Los tres primeros bits son 110.

Page 23: Tcp ip21

23

0 1 2 3 4 31

Clase DClase D

Direcciones multicast1 1 1 0

(…) Clases de Direcciones IP(…) Clases de Direcciones IP

El primer byte se encuentra entre 224 y 239. Usado para operaciones multicast. No usa máscara. Los cuatro primeros bits son 1110.

Page 24: Tcp ip21

24

0 1 2 3 4 31

Clase EClase E

Direcciones reservadas1 1 1 1

(…) Clases de Direcciones IP(…) Clases de Direcciones IP

El primer byte se encuentra entre 240 y 255. Reservado por la IETF. Los cuatro primeros bits son 1111.

Page 25: Tcp ip21

25

Red

Ejemplo de Clase A (30.10.21.17 / 8)Ejemplo de Clase A (30.10.21.17 / 8)

00011110 . 00001010 . 00010101 . 00010001

0 31Host

30 10 21 17

Red

Ejemplo Clase B (129.10.2.3 / 16)Ejemplo Clase B (129.10.2.3 / 16)

10000001. 00001010 . 00000010 . 000000110 31

Host

129 10 2 3

Notación decimal Notación decimal

Page 26: Tcp ip21

26

Red

Ejemplo Clase C (202.15.23.11 / 24)Ejemplo Clase C (202.15.23.11 / 24)

110 01010. 00001111 . 00010111 . 000010110 31

Host

202 15 23 11

(…) Notación Decimal(…) Notación Decimal

Page 27: Tcp ip21

27

Direcciones especiales

IP: 0.0.0.0M: 0.0.0.0

Indica toda la internet. Usado como ruta por defecto por los ruteadores.

También puede indicar ausencia de configuración IP.

127.0.0.0 Dirección IP de la red loopback, hace referencia a la

propia red (red local). La dirección 127.0.0.1 pertenece a esta red y hace referencia al propio host (localhost).

Page 28: Tcp ip21

28

(…) Direcciones especiales

IP: 169.254.0.0M: 255.255.0.0

Usado la auto-configuración DHCP en ausencia de un servidor DHCP.

Todos los bits de host en 0 Dirección IP de la red.

Page 29: Tcp ip21

29

(…) Direcciones especiales

Todos los bits de host en 1 Dirección IP de broadcast.

Todos los bits de red en 0 Reservado.

Todos los bits de red en 1 Reservado.

Page 30: Tcp ip21

30

(…) Direcciones especiales

10.0.0.0 – 10.255.255.255172.16.0.0 – 172.31.255.255

192.168.0.0 – 192.168.255.255

Direcciones IP privadas. Para usa interno en las redes locales.

Existen en clase A (1), clase B (16) y clase C (256).

No pueden usarse en Internet.

Page 31: Tcp ip21

31

Subnetting

Una máscara diferente a la máscara estándar nos indica que estamos ante un caso de subredes.

Máscaras estándar: 255.0.0.0 (clase A) 255.255.0.0 (clase B) 255.255.255.0 (clase C)

Máscara no estándar: 255.255.255.240

Page 32: Tcp ip21

32

(…) Subnetting

Las direcciones IP se han convertido en un recurso escaso.

Los proveedores del servicio de Internet proporcionan un conjunto limitado de direcciones IP. Por ejemplo, la dirección:

IP: 200.48.1.192M: 255.255.255.240

identifica a una subred de sólo 16 direcciones IP.

Page 33: Tcp ip21

33

Función de la máscara de subred

Tenga en cuenta: Dirección IP: Conjunto de 32 bits que identifica a

un host. Máscara de subred: Conjunto de 32 bits, donde

los bits que identifican a la red se ponen en 1 y los bits que identifican al host se ponen en 0.

Por tanto, la máscara255.255.255.240=11111111.11111111.11111111.1111000

0

indica que la red tiene sólo 4 bits para los hosts, esto es 16 hosts.

Page 34: Tcp ip21

34

Ejemplo de subredes

200.48.1.0 200.48.1.1 . . 200.48.1.192 . 200.48.1.207 . . 200.48.1.254 200.48.1.255

Page 35: Tcp ip21

35

Ejemplo de subredes

Page 36: Tcp ip21

36

Ejemplo de subredes

La red 200.48.1.0 /24, contiene las siguientes direcciones IP:

Page 37: Tcp ip21

37

Trama muy grandeTrama muy grande

HostHost

RouterRouter

Capa Internet : IPCapa Internet : IP

WANWAN

Tramapequeña

Tramapequeña

Tramapequeña

Page 38: Tcp ip21

38

Formato IPFormato IP

versionversionHeadHeadlengthlength TOSTOS

identificaciónidentificación

TTLTTL protocoloprotocolo

Direccion IP de la FuenteDireccion IP de la Fuente

Dirección IP del DestinoDirección IP del Destino

Longitud TotalLongitud Total

flagflag Desplaz. fragmentoDesplaz. fragmento

Suma verific. encabezadoSuma verific. encabezado

OPCIONES IPOPCIONES IP RellenoRelleno

DATOSDATOS

..................................................

0 4 8 16 24 310 4 8 16 24 31

Page 39: Tcp ip21

39

Mensajes de Mensajes de Error Error Destination

Unreachable Redirect Source Quench Time Exceeded Parameter

Problem

Mensajes de Mensajes de Información Información Echo/Request

(Ping) Information TimeStamp Address Mask Router

Discovery

Capa Internet : InternetCapa Internet : Internet Control Message Protocol (ICMP Control Message Protocol (ICMP))

Page 40: Tcp ip21

40

Origen

(activo)

Destino

(pasivo)

Establecer Conexión

Cerrar Conexión

Transferecia de Datos

syn

Syn ack

fin

(fin) (ack)

(ack)

Capa Transporte : Capa Transporte : Transmission Control Protocol (TCP)Transmission Control Protocol (TCP)

Page 41: Tcp ip21

41

B

A

ARP Request

Broadcast

Address Resolution Protocol (ARP)Address Resolution Protocol (ARP)

Page 42: Tcp ip21

42

B

A

ARP Response

Unicast

Address Resolution Protocol (ARP)Address Resolution Protocol (ARP)

Page 43: Tcp ip21

43

RARP Request

(hardware address)

RARP server

RARP client

IP address = ?

Reverse ARP: RARPReverse ARP: RARP

Page 44: Tcp ip21

44

RARP ResponseRARP server

RARP client

(IP address)

Reverse ARP: RARPReverse ARP: RARP

Page 45: Tcp ip21

45

10.0.0.1 10.0.0.3

DLCI = 33

10.0.0.2DLCI = 22

Frame Relay Network

Inverse ARP: InARPInverse ARP: InARP

Page 46: Tcp ip21

46

RedRed

RedRed RedRed

RedRed

RedRed

IP RouterIP Router

IP RouterIP Router

IP RouterIP Router

Arquitectura de InternetArquitectura de Internet

Page 47: Tcp ip21

47

Host Host OrigenOrigen

HostDestino

IP Router

Routing DirectoRouting Directo

Page 48: Tcp ip21

48

IP Router

IP Router Host Destino

Host Origen

Routing IndirectoRouting Indirecto

Page 49: Tcp ip21

49

Dest. Addr: 172.3.0.0Dest. Addr: 172.3.0.0

Next Router Hops Owner Timer

172.5.3.2 3 RIP 145172.5.4.7 3 RIP 170172.5.3.9 6 RIP 25

Tablas de EnrutamientoTablas de Enrutamiento

Page 50: Tcp ip21

50

Port 1

Port 2

Port 1

Port 2

Port 1

Port 2

140.4.0.0150.5.0.0 160.6.0.0 170.7.0.0

140.4.0.1

150.5.0.1

150.5.0.2

160.6.0.1

160.6.0.2

170.7.0.1

Router A Router B Router C

Tablas de EnrutamientoTablas de Enrutamiento

Page 51: Tcp ip21

51

Port 1

Port 2

Port 1

Port 2

Port 1

Port 2

140.4.0.0 150.5.0.0 160.6.0.0 170.7.0.0

140.4.0.1

150.5.0.1

150.5.0.2

160.6.0.1

160.6.0.2

170.7.0.1

Router A Router B Router C

Modelo de FuncionamientoModelo de Funcionamiento

% 080002001111% 080002001111

% 080002001234% 080002001234

% 080002001235% 080002001235

% 080002001236% 080002001236

% 080002002222% 080002002222

% 080002001232% 080002001232

% 080002001231% 080002001231 % 080002001233% 080002001233

140.4.0.2 170.7.0.2AA BB

Page 52: Tcp ip21

52

Host DestinoHost Destino170.7.0.2170.7.0.2

Host OrigenHost Origen140.4.0.2140.4.0.2

IP DataIP Data

MAC DestinoMAC Destino% 80002001231% 80002001231

MAC OrigenMAC Origen% 80002001111% 80002001111

TypeType08000800 Ethernet DataEthernet Data CRCCRC

IPIP

EthernetEthernet

Paquete en la Red Paquete en la Red 140.4.0.0140.4.0.0

Page 53: Tcp ip21

53

Host DestinoHost Destino170.7.0.2170.7.0.2

Host OrigenHost Origen140.4.0.2140.4.0.2

IP DataIP Data

MAC DestinoMAC Destino% 80002001233% 80002001233

MAC OrigenMAC Origen% 80002001232% 80002001232

TypeType08000800 Ethernet DataEthernet Data CRCCRC

IPIP

EthernetEthernet

Paquete en la Red Paquete en la Red 150.5.0.0150.5.0.0

Page 54: Tcp ip21

54

Host DestinoHost Destino170.7.0.2170.7.0.2

Host OrigenHost Origen140.4.0.2140.4.0.2

IP DataIP Data

MAC DestinoMAC Destino% 80002001235% 80002001235

MAC OrigenMAC Origen% 80002001234% 80002001234

TypeType08000800 Ethernet DataEthernet Data CRCCRC

IPIP

EthernetEthernet

Paquete en la Red Paquete en la Red 160.6.0.0160.6.0.0

Page 55: Tcp ip21

55

Host DestinoHost Destino170.7.0.2170.7.0.2

Host OrigenHost Origen140.4.0.2140.4.0.2

IP DataIP Data

MAC DestinoMAC Destino% 80002002222% 80002002222

MAC OrigenMAC Origen% 80002001236% 80002001236

TypeType08000800 Ethernet DataEthernet Data CRCCRC

IPIP

EthernetEthernet

Paquete en la Red Paquete en la Red 170.7.0.0170.7.0.0

Page 56: Tcp ip21

56

Rutas por DefaultRutas por Default

Si la ruta para un datagrama no puede ser localizado, se descarta el paquete.

Si está definido la ruta por default, el router lo utiliza.

Las rutas por default, reducen el tamaño de las tablas

Page 57: Tcp ip21

57

Redes Lógicas MúltiplesRedes Lógicas Múltiples

Red 140.4.0.0Red 140.4.0.0 Red 150.5.0.0Red 150.5.0.0

Red 160.6.0.0Red 160.6.0.0

140.4.0.3140.4.0.3140.4.0.2140.4.0.2

150.5.0.1150.5.0.1140.4.0.1140.4.0.1

160.6.0.1160.6.0.1

160.6.0.3160.6.0.3 160.6.0.2160.6.0.2

150.5.0.2150.5.0.2 150.5.0.3150.5.0.3

Page 58: Tcp ip21

58

IGP y EGPIGP y EGP

IGP1IGP1

IGP1IGP1

IGP1IGP1

IGP1IGP1

IGP2IGP2

IGP2IGP2

IGP2IGP2

IGP2IGP2IGP1IGP1 EGPEGP

Sistema autónomo 1Sistema autónomo 1 Sistema Autónomo 2Sistema Autónomo 2

Page 59: Tcp ip21

59

Algoritmos de EnrutamientoAlgoritmos de Enrutamiento

ESTATICOESTATICO Tablas creadas por el

Administrador. Problemas con

cambios y crecimiento rápidos.

Si cambia la topología el router debe ser actualizado manualmente

Ubicar errores es dificil.

DINAMICO

Responden automáticamente a los cambios de topología

Responden automáticamente a problemas de congestión

Page 60: Tcp ip21

60

Dos tipos: Vector-Distancia (Bellman-Ford) Estado de Enlace (Shortest Path First ó

Dijkstra Usan métricas para calcular el camino más

corto a la red destino. Algunas métricas usadas son:

Número de Saltos (hop) Retardo de transmisión. Ancho de Banda de la línea Definida por el administrador

Algoritmos de Enrutamiento Algoritmos de Enrutamiento Dinámico Dinámico

Page 61: Tcp ip21

61

Ventajas: Fácil de implementar Requiere pocos ciclos de CPU.

Desventajas: Dificil de verificar la veracidad de las tablas Actualización lenta en redes grandes Dificil de localizar fallas en routers Pueden generarse cadenas de actualización Convergencia lenta Problemas de crecimiento ó escalabilidad

Algoritmos de Algoritmos de Vector - Distancia Vector - Distancia

Page 62: Tcp ip21

62

Conocen la topología completa de la redLas tablas contienen el estado de cada ruta.Los routers usan la misma base de datos.Ventajas:

Elimina los lazos y convergencia lenta Fácil de detectar routers que fallan Facilidad de crecimiento ó escalabilidad

Desventajas: Demasiada memoria y ancho de banda. Requiere muchos ciclos de CPU.

Algoritmos de Algoritmos de Estado de Enlace Estado de Enlace

Page 63: Tcp ip21

63

PaquetePaqueterecibidorecibido Manejo de Paquetes por el Router IPManejo de Paquetes por el Router IP

CabeceraCabeceray checksumy checksum válidos ?válidos ?

NONO

SISI

NONO Enviar ICMPEnviar ICMPtime exceededtime exceeded

DescartarDescartarpaquetepaquete

Disminuir TTLDisminuir TTLes TTL>0 ?es TTL>0 ?

SISI

Page 64: Tcp ip21

64

Si la ruta es UP, buscar ARP cachéSi la ruta es UP, buscar ARP caché para mapa direccionespara mapa direcciones

ChequearChequeartabla con dirección.tabla con dirección.Destino IPDestino IP

RutaRutaencontrada ?encontrada ?

SISI

NONOEnviar ICMPEnviar ICMPdestinationdestinationunreachableunreachable

DescartarDescartarpaquetepaquete

Ruta por Ruta por Default Default definida ?definida ?

SISI

TTL>0TTL>0SISI

NONO

Page 65: Tcp ip21

65

ARP Reply recibidoARP Reply recibidoalmacenar direccionesalmacenar direccionesen caché ARPen caché ARP

MACMACencontrada ?encontrada ?

NONOEnviar ARP Enviar ARP RequestRequest

SISI

Use número de puerto de la tablaUse número de puerto de la tablade rutas, use dirección física de rutas, use dirección física del caché ARPdel caché ARP

Enviar paquete paraEnviar paquete parasu transmisiónsu transmisión

Page 66: Tcp ip21

Direccionamiento de Direccionamiento de SubredesSubredes

Page 67: Tcp ip21

67

Reduce Tabla de Reduce Tabla de EnrutamientoEnrutamiento

161 . 130 . 32 . 0161 . 130 . 32 . 0161 . 130 . 64 . 0161 . 130 . 64 . 0161 . 130 . 96 . 0161 . 130 . 96 . 0161 . 130 . 128 . 0161 . 130 . 128 . 0161 . 130 . 160 . 0161 . 130 . 160 . 0161 . 130 . 192 . 0161 . 130 . 192 . 0161 . 130 . 224 . 0161 . 130 . 224 . 0

161.130.0.0161.130.0.0

InternetInternet RouterRouter

Red Privada Red Privada

Page 68: Tcp ip21

68

Jerarquía de SubredesJerarquía de Subredes

NetIDNetID

NetIDNetID

HostIDHostID

SubnetIDSubnetID HostIDHostID

Dos NivelesDos Niveles

Tres NivelesTres Niveles

Page 69: Tcp ip21

69

Máscara de la subredMáscara de la subred

Número de RedNúmero de Red Número de HostNúmero de Host

Número de RedNúmero de Red SubredSubred Host de SubredHost de Subred

Dirección IP NormalDirección IP Normal

Dirección de SubredDirección de Subred

11111111 11111111 11111111 00000000 11111111 11111111 11111111 00000000 MáscaraMáscarade la subredde la subred

11111111 11111111 00000000 0000000011111111 11111111 00000000 00000000DefaultDefaultMaskMask

Page 70: Tcp ip21

70

Prefijo de Red ExtendidoPrefijo de Red Extendido

NetIDNetID SubnetIDSubnetID HostIDHostID

Prefijo de Red ExtendidoPrefijo de Red Extendido

Page 71: Tcp ip21

71

Consideraciones Consideraciones de Diseño de Subredesde Diseño de Subredes

1. Cuántas Subredes necesitamos hoy?

2. Cuántas Subredes necesitaremos en el futuro.

3. Cuántos Hosts por cada subred necesitamos hoy?.

4. Cuántos Hosts por cada subred necesitaremos en el futuro?

Page 72: Tcp ip21

72

Proceso de PlanificaciónProceso de Planificación

1. Considerar el máximo número de subredes proyectadas.

2. Expresar éste valor en potencia de dos(2n).

3. Asegurarse que el número de hosts por cada subred son suficientes.

Page 73: Tcp ip21

73

Solución AlternativaSolución Alternativa

1. Asignar números de Red de Direcciones Privadas (RFC 1918: Intranets) al interior de la empresa,

2. Usar un NAT (Network Address Translator para proporcionar acceso externo.

Page 74: Tcp ip21

74

Transmisión de PaquetesTransmisión de Paquetes

Host Origen: 129.10.3.15Host Address:

10000001.00001010.00000011.00001111Subnet Mask:

11111111.11111111.11111111.00000000-----------------------------------------------------------

----------Origen AND Mask:

10000001.00001010.00000011.00000000

Page 75: Tcp ip21

75

Transmisión de PaquetesTransmisión de Paquetes

Host Destino A: 129.10.3.7Host Address:

10000001.00001010.00000011.00000111Subnet Mask:

11111111.11111111.11111111.00000000-----------------------------------------------------------

----------Dest.A AND Mask:

10000001.00001010.00000011.00000000

Page 76: Tcp ip21

76

Transmisión de PaquetesTransmisión de Paquetes

Host Destino B: 129.10.5.4Host Address: 10000001.00001010.00000101.00000100Subnet Mask: 11111111.11111111.11111111.00000000---------------------------------------------------------------------Dest.A AND Mask: 10000001.00001010.00000101.00000000

Host Origen con host A: comunicación directaHost Origen con Host B: Deben usar un router

Page 77: Tcp ip21

77

Seudocódigo sin subredesSeudocódigo sin subredes

Get IP Address from Source hostGet IP Address from Destination hostIF ((Source NetNumber) = (Destination

NetNumber)) THEN Destination is local / Transmit

directlyELSE Destination is remote / Use a

RouterENDIF

Page 78: Tcp ip21

78

Seudocódigo con subredesSeudocódigo con subredes

Get IP Address from Source hostGet IP Address from Destination hostIF ((Source AND Mask) = (Destination AND Mask))

THEN Destination is local / Transmit

directlyELSE Destination is remote / Use a

RouterENDIF

Page 79: Tcp ip21

Máscara de Subredes Máscara de Subredes de Longitud Variablede Longitud Variable

(VLSM)(VLSM)

Page 80: Tcp ip21

80

IntroducciónIntroducción

RFC 1009 (1987) : especificación de subredes que usan más de una máscara de subred.

RIP-1: Permite una sóla máscara de subred, porque no proporcionaba máscara de subred en intercambio de tablas de rutas.

Page 81: Tcp ip21

81

VLSMVLSM

Permite una división recursiva del espacio de direcciones.

Reduce la información de enrutamiento en el nivel más alto.

Una red se divide en subredes, algunas de las subredes son luego divididas en sub-subredes y algunas en sub2-subredes.

Page 82: Tcp ip21

82

División Recursiva VLSMDivisión Recursiva VLSM

11.0.0.0/811.0.0.0/8

11.1.0.0/1611.1.0.0/1611.2.0.0/1611.2.0.0/1611.3.0.0/1611.3.0.0/16 .. .. ..11.252.0.0/1611.252.0.0/1611.253.0.0/1611.253.0.0/1611.254.0.0/1611.254.0.0/16

11.1.1.0/2411.1.1.0/2411.1.2.0/2411.1.2.0/24 ..11.1.253.0/2411.1.253.0/2411.1.254.0/2411.1.254.0/24

11.253.32.0/1911.253.32.0/1911.253.64.0/1911.253.64.0/19 ..11.253.160.0/1911.253.160.0/1911.253.192.0/1911.253.192.0/19

11.1.253.32/2711.1.253.32/2711.1.253.64/2711.1.253.64/27 ..11.1.253.160/2711.1.253.160/2711.1.253.192/2711.1.253.192/27

Page 83: Tcp ip21

83

11.2.0.0/1611.2.0.0/1611.3.0.0/1611.3.0.0/16 ..11.252.0.0/1611.252.0.0/1611.254.0.0/1611.254.0.0/16

11.1.1.0/2411.1.1.0/2411.1.2.0/2411.1.2.0/24 ..11.1.252.0/2411.1.252.0/2411.1.254.0/2411.1.254.0/24

11.253.32.0/1911.253.32.0/1911.253.64.0/1911.253.64.0/19 ..11.253.160.0/1911.253.160.0/1911.253.192.0/1911.253.192.0/19

11.1.253.32/2711.1.253.32/2711.1.253.64/2711.1.253.64/27 ..11.1.253.160/2711.1.253.160/2711.1.253.192/2711.1.253.192/27

Router DRouter DRouter CRouter C

Router BRouter BRouter ARouter A

11.253.0.0/1611.253.0.0/16 11.1.253.0/2411.1.253.0/24

11.1.0.0/1611.1.0.0/16

InternetInternet

11.0.0.0/811.0.0.0/8

Page 84: Tcp ip21

Classless Inter-Domain Classless Inter-Domain RoutingRouting(CIDR)(CIDR)

Page 85: Tcp ip21

85

Introducción

Problemas generados por el crecimiento de Internet: Se agotan las direcciones de

clase B Excesivo crecimiento de las

tablas de enrutamiento. El colapso de las direcciones IPv4

Page 86: Tcp ip21

86

Introducción

Los dos primeros problemas se volvieron críticos en los años 1994-1995

“La respuesta fue el desarrollo del concepto de Supernetting ó Classless inter-Domain Routing (CIDR)”

Page 87: Tcp ip21

87

Introducción

El tercer problema está siendo resuelto por el grupo de trabajo de IETF de IPv6.

CIDR fue documentado oficialmente en 1993 en RFC 1517, 1518, 1519 y 1520

Page 88: Tcp ip21

88

Caracteríticas de CIDR

Elimina el concepto tradicional de direcciones de red de clase A, B, C.

Simplificación de las tablas de Enrutamiento.

Soporta redes de tamaño arbitrario.

Page 89: Tcp ip21

89

Eficiente distribución del espacio de direcciones IPv4

Utiliza el concepto de “Network-Prefix”.

Vgr.: Una red con 20 bits de número de red y 12 bits de número de host, podría representarse con el prefijo de longitud=20 (a/20)

10.23.64.0/20130.5.0.0/20200.7.128.0/20

Page 90: Tcp ip21

90

Entorno ClasslessEntorno Classless

Dividir el bloque 200.25.16.0/20 en dos pedazos de igual tamaño: 200.25.16.0/21: Organización A 200.25.24.0/21: Reservado

Dividir el bloque reservado en dos piezas de igual tamaño: 200.25.24.0/22: Organización B 200.25.28.0/22: Reservado

Page 91: Tcp ip21

91

Entorno ClasslessEntorno Classless

Dividir el bloque reservado (200.25.28.0/22) en dos pedazos de igual tamaño: 200.25.28.0/23: Organización C 200.25.30.0/23: Reservado

Page 92: Tcp ip21

92

Page 93: Tcp ip21

93

Page 94: Tcp ip21

94

Page 95: Tcp ip21

95

Page 96: Tcp ip21

96

Page 97: Tcp ip21

ARP

IP a MAC

Page 98: Tcp ip21

98

ARP

Address Resolution Protocol.Traduce una dirección IP a una dirección

MAC.ARP estrictamente no es un protocolo IP

puesto que no tiene cabecera IP.ARP no usa los servicios de IP ya que los

mensajes ARP no salen de la red lógica y nunca necesitan ser ruteados.

Page 99: Tcp ip21

99

Funcionamiento

El host A necesita comunicarse con el host B

Page 100: Tcp ip21

100

ARP Request

El host A envía ARP Request a toda la red

Page 101: Tcp ip21

101

ARP Response

El host B envía su dirección MAC al host A

Page 102: Tcp ip21

102

Características

Dos hosts en una misma red que desean comunicarse necesitan conocer algo más que su dirección IP, ellos necesitan también conocer su dirección MAC. Si los dos host no estuvieran en la misma red, el host de origen debería enviar el paquete al default gateway y dejar que éste lleve el paquete a la red apropiada.

No hay una conexión inéquivoca entre una dirección IP y una dirección MAC, por lo que hace necesario un mecanismo de traducir una dirección lógica IP a una dirección física MAC.

Page 103: Tcp ip21

103

(...) Características

El ARP Request debe ser enviado mediante un broadcast y no puede ser enviado directamente al host de destino.

Para lograr una operación eficiente y reducir el broadcast, cada host mantiene un cache de mapeo Internet-Ethernet. Antes de transmisitir un paquete, el host siempre consulta su caché antes de enviar un ARP Request.

Las entradas en el cachée son removidas si no son utilizadas en determinado período de tiempo.

Page 104: Tcp ip21

104

(...) Carácterísticas

Para reducir el tráfico, el emisor de un ARP Request incluye en éste su mapeo Internet-Ethernet a fin de que el receptor pueda adicionar este mapeo a su cache.

Puesto que un ARP Request es un broadcast, todas los hosts de la red local tienen la posibilidad de agregar el mapeo del emisor en su propio caché.

Page 105: Tcp ip21

105

Encapsulación del paquete ARP

El paquete ARP se encapsula en un paquete Ethernet para su transmisión sobre la red física

Page 106: Tcp ip21

106

Formato

Page 107: Tcp ip21

107

(...) Formato

Hardware Address Space. Tipo de hardware utilizado en el nivel de red. Para Ethernet, este valor es 1.

Protocol Address Space. Indica el protocolo usado en el nivel de red.

Hardware Address Length. Indica la longitud de la dirección de hardware en bytes. Para Ethernet, este valor es 6.

Protocol Address Length. Indica la longitud de la dirección del protocolo en bytes. Para el protocolo TCP/IP, este valor debería ser 4.

Page 108: Tcp ip21

108

(...) Formato

Operation Code. Describe la función del paquete: ARP Request, ARP Response, RARP Request y RARP Response.

Source Hardware Address. Dirección de hardware del host emisor. Para la mayoría de los casos debería se la dirección Ethernet.

Source Protocol Address. La dirección IP del host emisor.

Page 109: Tcp ip21

109

(...) Formato

Target Hardware Address. Cuando realice un ARP Request, esta es la dirección de hardware del receptor. La respuesta trasportara ambos, la dirección de hardware y la de Internet del host destino. Para la mayoria de aplicaciones deberia ser la dirección de Internet.

Target Protocol Address. Cuando realice un ARP Request, éste contiene la dirección IP destino. La respuesta transportara ambas direcciones la de hardware y la dirección IP.

Page 110: Tcp ip21

RARP

MAC a IP

Page 111: Tcp ip21

111

RARP

Reverse Address Resolution Protocol.La dirección IP de un host es asignado por

el administrador de la red cuando el software de comunicación o sistema operativo es inicialmente instalado.

Un host diskless no tiene como almacenar una dirección IP, por lo que debe solicitar al servidor una dirección IP mediante RARP identificándose con su dirección MAC.

Page 112: Tcp ip21

112

Funcionamiento

El host A emite un RARP Request, lo cual es un broadcast.

Page 113: Tcp ip21

113

RARP Response

El servidor procesa la solicitud y envía una respuesta.

Page 114: Tcp ip21

114

Características

El host que requiere de una dirección IP emite un broadcast limitado RARP Request incluyendo su dirección Ethernet en el campo Target Hardware Address.

Un servidor procesa la solicitud y envia una respuesta. Para que el RARP sea exitoso, la red debe contener por lo menos un servidor RARP.

Page 115: Tcp ip21

ICMP

Un buen acompañante para IP

Page 116: Tcp ip21

116

ICMP

Internet Control Message Protocol.Todos los ruteadores y hosts que

implementan IP deben implementar obligatoriamente ICMP.

Proporcionan el mecanismo necesario para que un ruteador o host de destino pueda reportar un error al procesar un datagrama, hacia el host de orígen.

El uso de mensajes ICMP no puede ser considerado como confiable, los mensajes ICMP pueden ser perdidos o descartados.

Page 117: Tcp ip21

117

Errores comunes reportados

Cuando: Un ruteador descarta un datagrama cuyo tiempo de

vida expiro. Un ruteador no tiene el buffer necesario para

redireccionar un datagrama. Un ruteador debe fragmentar un datagrama que

tiene el atributo No Fragmentado. Se descubre un error de sintaxis en la cabecera IP. Un ruteador no tiene una ruta para la red de destino

en su tabla de ruteo. Un ruteador pregunta por un host origen para utilizar

otro ruteador que proporciona una ruta más corta.

Page 118: Tcp ip21

118

Encapsulación de ICMP

El mensaje ICMP se encapsula como la parte de datos de un paquete IP.

Page 119: Tcp ip21

119

Características

ICMP, al igual que IP, opera en la capa 3 del modelo OSI, a pesar de ello es un usuario de IP.

Cada mensaje ICMP es construido y luego pasado hacia el proceso IP local. IP encapsula el mensaje con una cabecera IP y trasmite el datagrama resultante de la red física hacia el host o ruteador de destino.

Puesto que ICMP debe cruzar ruteadores y redes es mandatorio el uso de encapsulado IP en lugar del encapsulado Ethernet.

Page 120: Tcp ip21

DHCP

Automatice la configuración IP

Page 121: Tcp ip21

121

DHCP

Dynamic Host Configuration Protocol.Configura de manera automática los hosts

de una red TCP/IP.DHCP se basa en el protocolo BOOTP al

que agrega la capacidad de asignar automáticamente direcciones IP reutilizables y opciones de configuración adicionales.

Page 122: Tcp ip21

122

Modos de asignación

DHCP soporta tres modos de asignación de direcciones IP: Asignación automática: DHCP asigna al host

una dirección IP permanente. Asignación dinámica: DHCP asigna al host una

dirección IP por un tiempo determinado. Este modo permite la reutilización de las direcciones que ya no son utilizadas.

Asignación manual: La dirección IP es asignada por el administrador.

Page 123: Tcp ip21

123

Almacenamiento de parámetros de clientes

DHCP permite un almacenamiento persistente de los parámetros de red de los clientes.

DHCP almacena una entrada con un valor y una clave para cada cliente; donde el valor contiene los parámetros de configuración del cliente, y la clave es un identificador único, por ejemplo un número IP de subred y un identificador único dentro de la subred.

Page 124: Tcp ip21

124

Funcionamiento

El cliente emite un mensaje DHCPDISCOVER, el cual es un broadcast.

El mensaje DHCPDISCOVER puede incluir algunas opciones como sugerencias de la dirección de la red, duración de la concesión, etc.

Cada servidor DHCP puede responder con un mensaje DHCPOFFER que incluye una dirección de red disponible y otras opciones de configuración.

Page 125: Tcp ip21

125

(...) Funcionamiento

El cliente recibe uno o más mensajes DHCPOFFER y elige uno de acuerdo a los parámetros ofertados.

El cliente emite un mensaje DHCPREQUEST que incluye el nombre del servidor DHCP al cual se le ha aceptado la oferta.

El mensaje DHCPREQUEST, el cual es un broadcast, sirve también para informar a los otros servidores DHCP que el cliente ya ha sido satisfecho.

Page 126: Tcp ip21

126

(...) Funcionamiento

El servidor DHCP seleccionado registra al cliente en su tabla de almacenamiento y emite un mensaje DHCPACK que contiene los parámetros de configuración para el cliente.

El cliente recibe el DHCPACK, comprueba los parámetros usando ARP y adopta la configuración sugerida.

Si hubiera un problema con los parámetros del DHCPACK, el cliente emite un DHCPDECLINE y reinicia el proceso de configuración.

Page 127: Tcp ip21

127

(...) Funcionamiento

Para liberar la dirección IP asignada, el cliente puede emitir una mensaje DHCPRELEASE.

Para renovar la concesión de la dirección IP, el cliente emite un DHCPREQUEST con la dirección IP solicitada y otros parámetros.

Los servidores que conozcan los parámetros de configuración del cliente responden con un DHCPACK.

El cliente recibe el DHCPACK, comprueba los parámetros y adopta la configuración sugerida.

Page 128: Tcp ip21

128

(...) Funcionamiento

Si hubiera algún problema con los parámetros en el mensaje DHCPACK, el cliente emite un mensaje DHCPDECLINE y reinicia el proceso de configuración.

Si el cliente recibe un mensaje DHCPNAK, no podrá utilizar la dirección que solicito y deberá seguir el procedimiento para solicitar una nueva dirección IP.

Page 129: Tcp ip21

129

Formato

Page 130: Tcp ip21

130

(...) Formato

code. 1, Request. 2, Reply. HWtype. Indica el tipo de hardware. 1, Ethernet. 6,

IEEE 802 Networks. length. Longitud en bytes de la dirección de

hardware. Ethernet y las redes en anillo usan 6 bytes. hops. El cliente lo pone en 0. Cada ruteador que

retransmite la solicitud a otro servidor lo incrementa con el fin de detectar bucles. 3 indica un bucle.

Transaction ID. Número aleatorio usado para comparar la solicitud con la respuesta que genera.

Page 131: Tcp ip21

131

(...) Formato

Seconds. Tiempo transcurrido, en segundos, desde que el cliente inicio el proceso de arranque. Es fijado por el cliente.

Flags Field. El bit más significativo de este campo se usa como flag de broadcast. Todos los demás bits deben estar a 0; están reservados para usos futuros. Normalmente, los servidores DHCP tratan de entregar los mensajes DHCPREPLY directamente al cliente usando unicast. La dirección de destino en la cabecera IP se pone al valor de la dirección IP fijada por el servidor DHCP, y la dirección MAC a la dirección hardware del cliente DHCP.

Page 132: Tcp ip21

132

(...) Formato

Si un host no puede recibir un datagrama IP en unicast hasta saber su propia dirección IP, el bit de broadcast se debe poner a 1 para indicar al servidor que el mensaje DHCPREPLY se debe enviar como un broadcast en IP y MAC. De otro modo, este bit debe ponerse a cero.

Client IP address. Fijada por el cliente. O bien es su dirección IP real o 0.0.0.0.

Your IP address. Fijada por el servidor si el valor del campo anterior es 0.0.0.0

Server IP address. Fijada por el servidor. Router IP address. Fijada por el ruteador

retransmisor si se usa retransmisión BOOTP.

Page 133: Tcp ip21

133

(...) Formato

Client hardware address. Fijada por el cliente y usada por el servidor para identificar cuál de los clientes registrados está arrancando.

Server host name. Nombre opcional del host servidor acabado en X’00.

Nombre del archivo de arranque. El cliente o bien deja este campo vacío o especifica un nombre genérico, como ruteador indicando el tipo de archivo de arranque a usar. En la solicitud de DHCPDISCOVER se pone al valor nulo. El servidor devuelve la ruta de acceso completa del archivo en una respuesta DHCPOFFER. El valor termina en X’00.

Page 134: Tcp ip21

134

(...) Formato

Options. Los cuatro primeros bytes del campo de opciones del mensaje DHCP contienen el cookie (99.130.83.99). El resto del campo de opciones consiste en parámetros marcados llamados opciones.

Page 135: Tcp ip21

DNS

Es más fácil utilizar nombres

Page 136: Tcp ip21

136

DNS

Domain Name System.Una zona de autoridad es un conjunto de

nombres simbólicos, también conocido como espacio de nombres distribuido.

En cada zona, uno o más hosts (conocidos como servidores de nombres) tienen la tarea de mantener una base de datos de nombres simbólicos y direcciones IP; además de atender las solicitudes de los clientes para la traducción de nombres simbólicos a direcciones IP.

Page 137: Tcp ip21

137

Dominios

Los servidores de nombres se interconectan lógicamente en un árbol jerárquico de dominios.

Cada zona contiene una parte del árbol y los nombres de dicha zona se administran de manera independiente. La autoridad sobre una zona se delega a los servidores de nombres.

Generalmente, los servidores de nombres que tienen autoridad en una zona tendrán nombres de dominio de la misma.

Page 138: Tcp ip21

138

(...) Dominios

Los servidores de nombres también pueden delegar autoridad sobre sí mismos; en este caso, el espacio de nombres sigue dividido en zonas, pero la autoridad para ambas las ejerce el mismo servidor.

La división por zonas se realiza utilizando los registros guardados en el DNS: SOA, define el inicio de una zona. NS, marca el fin de una zona iniciada por un SOA y

apunta al servidor de nombres con autoridad sobre la zona siguiente.

Page 139: Tcp ip21

139

Características

No se usa un único servidor central para la base de datos, sino que el trabajo implicado en mantenerla se reparte entre los hosts a lo largo y ancho del espacio de nombres.

La autoridad para crear/cambiar nombres de hosts y la responsabilidad de mantener una base de datos le corresponde a la organización propietaria de la zona que los contiene.

Desde el punto de vista del usuario, hay una sola base de datos que resuelve los nombres

Page 140: Tcp ip21

140

Resolución de nombres con un full resolver

Page 141: Tcp ip21

141

Resolución de nombres con un stub resolver

Page 142: Tcp ip21

142

Registros

La base de datos distribuida del DNS se componen de registros de recursos RR (Resource Records) y son los siguientes: SOA, Start of Authority, inicio de autoridad. NS, Name Server, servidor de nombres A, Address, nombre de host. CNAME, nombre de dominio MX, Mail Exchanger, intercambiador de correos. PTR, registro para la resolución inversa.

Page 143: Tcp ip21

143

Tipos de servidores DNS

Hay tres tipos de servidores DNS: Servidor primario, Servidor secundario y Servidor caché.

Un servidor DNS puede operar como primario o secundario para varios dominios. También, puede operar como primario para un dominio y secundario para otro dominio.

Un servidor primario o secundario realiza todas las funciones de un servidor caché.

Page 144: Tcp ip21

144

(...) Tipos de servidores DNS

Primario. Un servidor primario carga de disco la información de una zona y tiene autoridad sobre ella.

Secundario. Tiene autoridad sobre una zona pero obtiene la información de un servidor primario mediante un proceso llamado transferencia de zona. Para asegurar su sincronismo con el servidor primario ejecutan una transferencia de zona cada cierto tiempo.

Caché. No tiene autoridad sobre zona alguna. Obtiene todos sus datos de servidores primarios y secundarios. Requiere al menos un registro NS que apunte al servidor del cual pueda obtener datos.

Page 145: Tcp ip21

UDP

Transporte con el mejor esfuerzo

Page 146: Tcp ip21

146

UDP

User Data Protocol.Proporciona un servicio de entrega orientado

a transacciones y de mejor esfuerzo para aplicaciones que no requieren un servicio confiable de datos.

Sus principales clientes son: Network File System, NFS. Domain Name Service, DNS. Trivial File Transfer Protocol, TFTP. Simple Network Management Protocol, SNMP.

Page 147: Tcp ip21

147

Características

Proporciona la confiabilidad que proporciona IP.

No implementa control de flujo.No requiere el uso de reconocimientos ACK.No usa secuenciamiento de paquetes.Ocasiona un overhead mínimo.Proporciona la posibilidad de demultiplexar

datos.La cabecera UDP incluye un checksum que

ayuda a detectar errores.

Page 148: Tcp ip21

148

Formato

Page 149: Tcp ip21

149

(...) Formato

Source Port. Número de puerto del proceso origen. Es opcional.

Destination Port. Número de puerto de destino usado para demultiplexar datagramas entre los procesos del host destino.

Lenght. Longitud total. Incluye cabecera y datos. Checksum. Suma de comprobación ya que el

checksum de IP no cubre la porción de datos del datagrama. Es opcional.

Page 150: Tcp ip21

TCP

Transporte seguro

Page 151: Tcp ip21

151

TCP

Transport Control Protocol.TCP es un protocolo orientado a la conexión

y proporciona una comunicación host-to-host altamente confiable entre pares de computadoras.

Sus principales clientes son: El protocolo de inicio de sesión remoto Telnet. El protocolo de transferencia de archivos, FTP. El protocolo de transferencia de correo simple,

SMTP.

Page 152: Tcp ip21

152

Funciones

Establecer y terminar las conexiones.Mantenimiento de la entrega confiable de

paquetes.Entrega de paquetes en secuencia.Control de flujo para proteger a los host de

una sobrecarga de datos.Recuperación de errores: pérdida o

duplicación de paquetes.Demultiplexado entre las múltiples

aplicaciones en un host.

Page 153: Tcp ip21

153

Formato

Page 154: Tcp ip21

154

(...) Formato

Source Port. Identifica a la aplicación (dentro de un host) que origino la transmisión.

Destination Port. Indentifica a la aplicación (dentro de un host) a la que deber ser transmitido los datos.

Sequence Number. Número de secuencia del primer byte de datos dentro del segmento (excepto cuando SYN está presente). Cuando SYN está presente, el número de secuencia es el número de secuencia inicial (ISN) y el primer byte de datos es ISN+1.

Page 155: Tcp ip21

155

(...) Formato

Acknowledge Number. Es el próximo número de secuencia que el host origen del segmento esta esperando recibir. Aplicable sólo si el bit de control ACK es fijado. Si una conexión es establecida, este valor siempre es enviado.

Data Offset. Indica donde comienzan los datos del segmento, ya que el campo Options es variable.

Reserverd. Reservados y siempre en cero. Controls Bits. Acompañan al reconocimiento y

otras funciones específicas.

Page 156: Tcp ip21

156

(...) Formato

Window. Número de bytes que puede ser aceptado por el host destino, que valiéndose de un ACK se lo hace saber al host origen. Comienza en 1.

Checksum. Suma de comprobación. Si un error es detectado, el segmento es descartado.

Urgent Pointer. Es un desplazamiento positivo del número de secuencia e indica el fin de Urgent Data. Aplicable sólo si el bit URG es fijado.

Options. Campo de longitud variable. Padding. Bits de relleno.

Page 157: Tcp ip21

157

Confiabilidad

TCP es capaz de recuperar segmentos dañados, perdidos, duplicados o entregados fuera de secuencia.

TCP asigna un número de secuencia a cada segmento y exige un reconocimiento positivo (ACK, Acknowledge) desde el host destino. Si no se recibe el ACK, los segmentos deben ser retransmitidos por el host origen.

El host destino usa el número de secuencia para ordenar los segmentos evitando duplicados y los segmentos entregados fuera de secuencia.

Page 158: Tcp ip21

158

(...) Confiabilidad

Los segmentos dañados son resueltos mediante la inclusión de un checksum en cada segmento transmitido.

Si el checksum no es el correcto, se descarta el segmento dañado.

Un segmento dañado no es reconocido positivamente, por lo que el host origen debe volver a transmitir los datos.

Page 159: Tcp ip21

159

Control de flujo

TCP proporciona un mecanismo para que el host destino controle la cantidad de datos enviados por el host origen.

Junto con cada ACK, es entregada una ventana de recepción, en la que se indica al host origen la cantidad de datos adicionales que el host destino está en condiciones de aceptar.

A medida que el buffer de recepción se llena la ventana de advertencia se contraerá. Si el búfer se libera, la ventana de advertencia se incrementará.

Page 160: Tcp ip21

160

Multiplexado

Al igual que el UDP, TCP usa puertos para identificar el destino final de un segmento al interior de una máquina.

TCP provee un conjunto de puertos dentro de cada host para permitir múltiples procesos dentro de un único host, lo que permite el uso simultáneo de varios servicios de comunicación.

Un socket es creado mediante la combinación de la dirección IP de un host con un número de puerto.

Page 161: Tcp ip21

161

Sockets

Los sockets son el destino final de todo tráfico TCP.

Un par de sockets, uno en cada host, identifica a cada conexión.

Los procesos usados frecuentemente deben usar números de puertos bien conocidos:

SMTP 25FTP 21HTTP 80DNS 53

Page 162: Tcp ip21

162

Conexión

Una conexión se define por cuatro números: las direcciones IP y los números de puerto de cada extremo.

Cada datagrama contiene esos cuatro números, las direcciones IP residen en la cabecera IP y los números de puertos residen en la cabecera TCP.

Don conexiones no pueden tener los mismos números y se diferencian por lo menos en un número.

Page 163: Tcp ip21

Telnet

Conexión desde cualquier lugar

Page 164: Tcp ip21

164

Telnet

Proporciona una interfase estándar a través de la cual un cliente Telnet remoto puede acceder a los recursos de un servidor Telnet como si fuera un cliente local.

Page 165: Tcp ip21

165

Funcionamiento

TELNET es un protocolo basado en tres ideas: El concepto de NVT (Network Virtual Terminal). Una perspectiva simétrica de las terminales y los

procesos. Negociación de las opciones de la terminal.

Los dos hosts comienzan verificando que existe una comprensión mutua entre ellos. Una vez que se ha completado esta negociación inicial, son capaces de trabajar en el nivel mínimo implementado por la NVT.

Page 166: Tcp ip21

166

Network Virtual Terminal, NVT

Una NVT es un dispositivo lógico que posee una estructura básica común a una amplia gama de terminales reales. Cada host mapea las características de su propia terminal sobre las de su NVT, y asume todos los demás hosts harán lo mismo.