Está en la página 1de 12

PROTOCOLO DE ENLACE DE TRES VIAS:

El nivel de protocolo de control de transmisin (TCP) de protocolo de transporte TCP/IP es orientados a la conexin. Orientado a conexiones significa que, antes de que se pueden transmitir los datos, una conexin confiable debe ser obtenida y confirmada. Las transmisiones de datos de nivel de TCP, establecimiento de la conexin y terminacin de la conexin mantienen parmetros de control especfico que rigen el proceso completo. A continuacin se enumeran los bits de control: URG: Campo de puntero urgente significativo ACK: Confirmacin de campo significativo PSH: Funcin de insercin RST: Restablecer la conexin SYN: Sincronizar los nmeros de secuencia FIN: No hay ms datos de remitente Hay dos escenarios donde llevar a cabo un enlace de tres vas:

Establecer una conexin (un activo abierto) Terminar una conexin (un cierre activo)

Se obtuvo la informacin del ejemplo siguiente de una captura de Monitor de red. El Monitor de red es un analizador de protocolos puede obtenerse a partir de Microsoft Systems Management Server.

Establecer una conexin


La siguiente secuencia muestra el proceso de una conexin TCP est establecido: Marco 1: Como ver en el primer fotograma, el cliente NTW3, enva un segmento SYN (TCP.... S.). sta es una solicitud al servidor para sincronizar los nmeros de secuencia. Especifica su nmero de secuencia inicial (ISN), lo cual se incrementa en 1, 8221821 + 1 = 8221822 y que se enva al servidor. Para inicializar una conexin, el cliente y el servidor deben sincronizar los nmeros de secuencia de los dems. Tambin hay una opcin para el tamao de segmento mximo (MSS) se establezca que se define mediante la longitud (len: 4). esta opcin comunica el tamao mximo de segmento, el remitente desea recibir. El campo de confirmacin (trs: 0) se establece en cero porque sta es la primera parte del protocolo de enlace de tres vas.
1 2.0785 NTW3 --> BDC3 TCP ....S., len: 4, seq: 8221822-8221825, ack: 0, win: 8192, src: 1037 dst: 139 (NBT Session) NTW3 --> BDC3 IP TCP: ....S., len: 4, seq: 8221822-8221825, ack: 0, win: 8192, src: 1037 dst: 139 (NBT Session) TCP: Source Port = 0x040D

TCP: TCP: TCP: TCP: TCP: TCP:

Destination Port = NETBIOS Session Service Sequence Number = 8221822 (0x7D747E) Acknowledgement Number = 0 (0x0) Data Offset = 24 (0x18) Reserved = 0 (0x0000) Flags = 0x02 : ....S. ..0..... ...0.... ....0... .....0.. ......1. .......0 = = = = = = No urgent data Acknowledgement field not significant No Push function No Reset Synchronize sequence numbers No Fin

TCP: TCP: TCP: TCP: TCP: TCP: TCP: TCP: TCP: TCP:

Window = 8192 (0x2000) Checksum = 0xF213 Urgent Pointer = 0 (0x0) Options TCP: Option Kind (Maximum Segment Size) = 2 (0x2) TCP: Option Length = 4 (0x4) TCP: Option Value = 1460 (0x5B4)

TCP: Frame Padding 00000: 02 60 8C .`.....`.;....E. 00010: 00 2C 0D .,..@....K.k...k 00020: 02 D3 04 .......}t~....`. 00030: 20 00 F2 9E 18 8B 02 60 8C 3B 85 C1 08 00 45 00 01 40 00 80 06 E1 4B 83 6B 02 D6 83 6B 0D 00 8B 00 7D 74 7E 00 00 00 00 60 02 13 00 00 02 04 05 B4 20 20 .........

Frame 2: En el segundo fotograma, el servidor BDC3, enva un ACK y un SYN en este segmento (TCP. a..S.). en este segmento el servidor es confirmar la solicitud del cliente para la sincronizacin. Al mismo tiempo, el servidor tambin enva su solicitud al cliente para la sincronizacin de sus nmeros de secuencia. Hay una diferencia importante en este segmento. El servidor transmite un nmero de confirmacin (8221823) al cliente. La confirmacin es la prueba slo al cliente la confirmacin es especfica de SYN cliente iniciado. El proceso de confirmar la solicitud del cliente permite que el servidor de incrementar el nmero del cliente secuencia en uno y lo utiliza como su nmero de confirmacin.
2 2.0786 BDC3 --> NTW3 TCP .A..S., len: 4, seq: 1109645-1109648, ack: 8221823, win: 8760, src: 139 (NBT Session) dst: 1037 BDC3 --> NTW3 IP TCP: .A..S., len: 4, seq: 1109645-1109648, ack: 8760, src: 139 (NBT Session) dst: 1037 TCP: TCP: TCP: TCP: Source Port = NETBIOS Session Service Destination Port = 0x040D Sequence Number = 1109645 (0x10EE8D) Acknowledgement Number = 8221823 (0x7D747F) 8221823, win:

TCP: Data Offset = 24 (0x18) TCP: Reserved = 0 (0x0000) TCP: Flags = 0x12 : .A..S. TCP: TCP: TCP: TCP: TCP: TCP: TCP: TCP: TCP: TCP: ..0..... ...1.... ....0... .....0.. ......1. .......0 = = = = = = No urgent data Acknowledgement field significant No Push function No Reset Synchronize sequence numbers No Fin

Window = 8760 (0x2238) Checksum = 0x012D Urgent Pointer = 0 (0x0) Options TCP: Option Kind (Maximum Segment Size) = 2 (0x2) TCP: Option Length = 4 (0x4) TCP: Option Value = 1460 (0x5B4)

TCP: Frame Padding 00000: 02 60 8C .`.;...`......E. 00010: 00 2C 5B .,[.@....L.k...k 00020: 02 D6 00 00030: 22 38 01 3B 85 C1 02 60 8C 9E 18 8B 08 00 45 00 00 40 00 80 06 93 4C 83 6B 02 D3 83 6B 8B 04 0D 00 10 EE 8D 00 7D 74 7F 60 12 2D 00 00 02 04 05 B4 20 20 ...........}t`. "8.-......

Frame 3: En el tercer fotograma, el cliente enva un ACK en este segmento (TCP. a....). En este segmento, el cliente confirma peticin desde el servidor para la sincronizacin. El cliente utiliza el mismo algoritmo servidor implementado en el suministro de un nmero de confirmacin. Confirmacin del cliente de solicitud del servidor de sincronizacin completa el proceso de establecer una conexin confiable, por lo tanto, el enlace de tres vas.
3 2.787 NTW3 --> BDC3 TCP .A...., len: 0, seq: 8221823-8221823, ack: 1109646, win: 8760, src: 1037 dst: 139 (NBT Session) NTW3 --> BDC3 IP TCP: .A...., len: 0, seq: 8221823-8221823, ack: 8760, src: 1037 dst: 139 (NBT Session) TCP: TCP: TCP: TCP: TCP: TCP: TCP: Source Port = 0x040D Destination Port = NETBIOS Session Service Sequence Number = 8221823 (0x7D747F) Acknowledgement Number = 1109646 (0x10EE8E) Data Offset = 20 (0x14) Reserved = 0 (0x0000) Flags = 0x10 : .A.... 1109646, win:

TCP: ..0..... = No urgent data TCP: ...1.... = Acknowledgement field significant TCP: ....0... = No Push function

TCP: .....0.. = No Reset TCP: ......0. = No Synchronize TCP: .......0 = No Fin TCP: TCP: TCP: TCP: Window = 8760 (0x2238) Checksum = 0x18EA Urgent Pointer = 0 (0x0) Frame Padding 9E 18 8B 02 60 8C 3B 85 C1 08 00 45 00 01 40 00 80 06 E0 4F 83 6B 02 D6 83 6B 0D 00 8B 00 7D 74 7F 00 10 EE 8E 50 10 EA 00 00 20 20 20 20 20 20 .......}t....P. "8....

00000: 02 60 8C .`.....`.;....E. 00010: 00 28 0E .(..@....O.k...k 00020: 02 D3 04 00030: 22 38 18

Terminar una conexin


Aunque el enlace de tres vas slo requiere tres paquetes a transmitirse a travs de nuestros medios en red, la finalizacin de esta conexin confiable exigen la transmisin de paquetes de cuatro. Puesto que una conexin TCP es dplex completo (es decir, datos pueden fluir en cada direccin independientemente de la otra), cada direccin debe terminarse de forma independiente. Fotograma 4: En esta sesin de fotogramas, ver el cliente enva un FIN viene acompaado por una ACK (TCP. A...F). Este segmento tiene dos funciones bsicas. En primer lugar, cuando se establece el parmetro FIN, informar al servidor que no tiene ms datos para enviar. En segundo lugar, la confirmacin es esencial para identificar la conexin especfica que han establecido.
4 16.0279 NTW3 --> BDC3 TCP .A...F, len: 0, seq: 8221823-8221823, ack:3462835714, win: 8760, src: 2337 dst: 139 (NBT Session) NTW3 --> BDC3 IP TCP: .A...F, len: 0, seq: 8221823-8221823, ack: src: 1037 dst: 139 (NBT Session) TCP: TCP: TCP: TCP: TCP: TCP: TCP: Source Port = 0x040D Destination Port = NETBIOS Session Service Sequence Number = 8221823 (0x7D747F) Acknowledgement Number = 1109646 (0x10EE8E) Data Offset = 20 (0x14) Reserved = 0 (0x0000) Flags = 0x11 : .A...F ..0..... ...1.... ....0... .....0.. = = = = No urgent data Acknowledgement field significant No Push function No Reset 1109646, win: 8760,

TCP: TCP: TCP: TCP:

TCP: ......0. = No Synchronize TCP: .......1 = No more data from sender TCP: Window = 8760 (0x2238) TCP: Checksum = 0x236C TCP: Urgent Pointer = 0 (0x0) 00000: 00 20 AF .G.X...".9..E. 00010: 00 28 9B .(..@...!J.^.{.^ 00020: DE 57 09 ...f..P. 00030: 22 38 23 47 93 58 00 A0 C9 22 F5 39 08 00 45 00 F5 40 00 80 06 21 4A C0 5E DE 7B C0 5E 21 05 48 0B 20 96 AC CE 66 AE 02 50 11 6C 00 00 .W.!.H. "8#l.. .

Frame 5: En este marco, no ve nada especial excepto para el servidor confirmar FIN que transmite desde el cliente.
5 16.0281 BDC3 --> NTW3 TCP .A...., len: 0, seq: 1109646-1109646, ack: 8221824, win:28672, src: 139 dst: 2337 (NBT Session) BDC3 --> NTW3 IP TCP: .A...., len: 0, seq: 1109646-1109646, ack: 8221824, win:28672, src: 139 dst: 2337 (NBT Session) TCP: TCP: TCP: TCP: TCP: TCP: TCP: Source Port = 0x040D Destination Port = NETBIOS Session Service Sequence Number = 1109646 (0x10EE8E) Acknowledgement Number = 8221824 (0x7D7480) Data Offset = 20 (0x14) Reserved = 0 (0x0000) Flags = 0x10 : .A.... ..0..... ...1.... ....0... .....0.. ......0. .......0 = = = = = = No urgent data Acknowledgement field significant No Push function No Reset No Synchronize No Fin

TCP: TCP: TCP: TCP: TCP: TCP: TCP: TCP: TCP: TCP:

Window = 28672 (0x7000) Checksum = 0xD5A3 Urgent Pointer = 0 (0x0) Frame Padding 22 F5 39 08 00 02 03 BA 84 08 00 45 00 82 00 00 3F 06 6B BD C0 5E DE 57 C0 5E 48 09 21 CE 66 AE 02 0B 20 96 AD 50 10 A3 00 00 90 00 01 00 86 00 .{.H.!.f... p...........

00000: 00 A0 C9 ...".9........E. 00010: 00 28 D2 .(....?.k..^.W.^ 00020: DE 7B 05 ..P. 00030: 70 00 D5

Frame 6: Despus de recibir el FIN del equipo cliente, el servidor realizar ACK. Aunque TCP ha establecido las conexiones entre los dos equipos, las conexiones son todava independientes entre s. Por lo tanto, el servidor tambin debe transmitir un FIN (TCP. A...F) al cliente.
6 17.0085 BDC3 --> NTW3 TCP .A...F, len: 0, seq: 1109646-1109646, ack: 8221824, win:28672, src: 139 dst: 2337 (NBT Session) BDC3 --> NTW3 IP TCP: .A...F, len: 0, seq: 1109646-1109646, ack: 8221824, win:28672, src: 139 dst: 2337 (NBT Session) TCP: TCP: TCP: TCP: TCP: TCP: TCP: Source Port = 0x0548 Destination Port = 0x0921 Sequence Number = 1109646 (0x10EE8E) Acknowledgement Number = 8221824 (0x7D7480) Data Offset = 20 (0x14) Reserved = 0 (0x0000) Flags = 0x11 : .A...F ..0..... ...1.... ....0... .....0.. ......0. .......1 = = = = = = No urgent data Acknowledgement field significant No Push function No Reset No Synchronize No more data from sender

TCP: TCP: TCP: TCP: TCP: TCP: TCP: TCP: TCP: TCP:

Window = 28672 (0x7000) Checksum = 0xD5A2 Urgent Pointer = 0 (0x0) Frame Padding 22 F5 39 08 00 02 03 BA 84 08 00 45 00 94 00 00 3F 06 6B AB C0 5E DE 57 C0 5E 48 09 21 CE 66 AE 02 0B 20 96 AD 50 11 A2 00 00 02 04 05 B4 86 00 .{.H.!.f... p...........

00000: 00 A0 C9 ...".9........E. 00010: 00 28 D2 .(....?.k..^.W.^ 00020: DE 7B 05 ..P. 00030: 70 00 D5

Frame 7: El cliente responde con el mismo formato que el servidor, por ACKing FIN del servidor e incrementando el nmero de secuencia en 1.
7 17.0085 NTW3 --> BDC3 TCP .A...., len: 0, seq: 8221824-8221824, ack: 1109647, win: 8760, src: 2337 dst: 139 (NBT Session) NTW3 --> BDC3 IP TCP: .A...., len: 0, seq: 8221824-8221824, ack: 1109647, win: 8760, src: 2337 dst: 139 (NBT Session) TCP: TCP: TCP: TCP: TCP: Source Port = 0x0921 Destination Port = 0x0548 Sequence Number = 8221824 (0x7D7480) Acknowledgement Number = 1109647 (0x10EE8F) Data Offset = 20 (0x14)

TCP: Reserved = 0 (0x0000) TCP: Flags = 0x10 : .A.... TCP: TCP: TCP: TCP: TCP: TCP: ..0..... ...1.... ....0... .....0.. ......0. .......0 = = = = = = No urgent data Acknowledgement field significant No Push function No Reset No Synchronize No Fin

TCP: Window = 8760 (0x2238) TCP: Checksum = 0x236B TCP: Urgent Pointer = 0 (0x0) 00000: 00 20 AF .G.X...".9..E. 00010: 00 28 BA .(..@....J.^.{.^ 00020: DE 57 09 ...f..P. 00030: 22 38 23 47 93 58 00 A0 C9 22 F5 39 08 00 45 00 F5 40 00 80 06 02 4A C0 5E DE 7B C0 5E 21 05 48 0B 20 96 AD CE 66 AE 03 50 10 6B 00 00 .W.!.H. "8#k.. .

Cliente ACKing la notificacin del FIN del servidor identifica un cierre correcto de una conexin TCP.

QU ES UNA DIRECCIN IP V4?

NOTA: En esta pagina cuando se hable de direccin IP, se estara hablando de la direccin IP Versin 4. Una direccin IP es un nmero, que esta formado en formati binario por cuatro grupos de cuatro bits cada uno. Dicho lo anterior una direccin IP podra ser la siguiente en formato binario. 11100011.11100000.00000011.11111000 Como se puede observar los 4 grupos de bits estan separados por un punto. Las direcciones IP permiten identificar una red, una subred y host (Computadoras o PCs).

Las direcciones IP se muestran o se observan en formato decimal, es decir que se debe convertir las direcciones IP en binario a dicho formato osea el formato decimal, asi es como ms comunmente se encuentran. Con lo que cada grupo de 8 bits puede tener un rango de valores que van desde 00000000 hasta 11111111, segun las diferentes convinaciones que se logren con unos y ceros; por consiguiente se podr entonces tener un rango de valores decimales para cada grupo que va desde 0 (00000000) hasta 255 (11111111).

Clases de direcciones IP?


Dado que las direcciones IP estan segmentadas en cutro grupos de 8 bits cada uno, entonces se pueden clasificar las direcciones IP en varias clases valga la redundancia, y las clases existentes son:

A, B, C, D, E y Y.
Cada clase permite un numero determinado de redes y de computadoras dentro de esas redes.

Explicacin de cada clase:


CLASE A: En sta clase, el primer grupo de 8 bits indicara la red, es decir estos primeros ocho bits se usan para identificar redes solamente; mientras que los 24 bits restantes (los otros 3 grupos de 8 bits) se usan para identificar computadoras o subredes. El rango o la cantidad de redes que pueden haber de la clase A va desde 00000000.xxxxxxxx.xxxxxxxx.xxxxxxxx hasta 11111111.xxxxxxxx.xxxxxxxx.xxxxxxxx las x indican que esos son bits pero para equipos de computo asi que no los tendremos en cuenta, dado que solo se usan los primeros 8 bits para crear redes de clase A. Si tenemos en cuenta esto finalmente podremos ver que habran 256 posibles combinaciones de ocho bits (00000000 , 10000000, 11000000, , 11111111) para crear IPs clase A. Hasta aca claro ( eso espero ). Pero en la vida real no hay 256 direcciones IP disponibles sino 126, y la razn es la siguiente: Las direcciones IP clase A van desde 00000000 a 01111111 (no se ponen los tres ultimos octetos o tres ultimos bytes de la direccin ip porque no son necesarios para crear direcciones IP clase A, ya que las direcciones IP de sta clase solo son creadas con el primer octeto de bits o primer byte de los 4 bytes que componen la direccin IP completamente) dado que el primer bit siempre es cero (como el primer bit siempre es cero entonces se disminuye el numero de posibles combinaciones logicamente y ya no habran

256 combinaciones sino muchas menos); dado que la red cero no existe es decir, el primer byte totalmente cero asi, 00000000 y dado que el nmero 127 est reservado para referirse a su equipo (al mismo equipo en s); entonces por eso solo hay disponibilidad de 126 direcciones. NOTA: EL VALOR 127 NO ESTA DISPONIBLE PROQUE ES PARA HACER PRUEBAS INTERNAS ( LOOPBACK ). Normalmente cuando una aplicacin TCP/IP desea enviar informacin, esa informacin viaja a travs de el protocolo de capas hasta IP (capa de red) en donde la informacin es encapsulada en un datagrama IP. El datagrama luego pasa a la capa de enlace de datos, de la red fisica del dispositivo, para ser transmitido al proximo salto en camino a su direccin IP destino. Sin embargo, un rango especial de direcciones est reservado para la funcionalidad de LOOPBACK. Este es el rango 127.0.0.0 a 127.255.255.255. Los datagramas IP enviados por un host a una direccin de bucle invertido 127.x.x.x no se envian a la capa de enlace de datos para su transmisin. En lugar de eso, se envia al dispositivo que envio los datos a nivel de IP ( nivel de red ). En esencia, se trata de un cortocircuito de la normal pila de protocolo, los datos son enviados por una implementacin IP o implementacin de red de la tercer capa del dispositivo y entonces inmediatamente resividos por ste. El proposito de LOOPBACK es probar la implementacin del protocolo TCP/IP en un host. Dado que las capas ms bajas estn en cortocircuito, el envo a una direccin LOOPBACK (de bucle invertido) permite que las capas ms altas es decir las que estan por encima de la capa IP, sea la capa de red; sean efectivamente sometidas a ensayo sin la posibilidad de problemas en las capas inferiores, es decir, en las capas que van desde la capa de red hasta la ms baja. 127.0.0.1 es la direccin ms utilizada para propsitos de prueba. En conclusin si tu usas alguna direccin IP del rando de direcciones 127.0.0.0 a 127.255.255.255. Es porque deseas probar tu propio HOST para verificar que el protocolo TCP/IP esta funcionando bien, la direccin mas usas es 127.0.0.1 (El nombre localhost es traducido como la direccin IP de loopback 127.0.0.1 en IPv4, o como ::1 en IPv6.)

Usos prcticos
La direccion de loopback se puede usar para probar el funcionamiento de TCP/IP haciendo ping a 127.0.0.1, al recibir respuesta se puede asumir que el software asociado al protocolo est bien (el hardware como la tarjeta de red no lo conocemos con esta prueba, ya que no llega a salir del propio equipo).

Con fines educativos se suelen instalar servidores; locales http como XAMPP, LAMP o WAMP a los cuales se tendr acceso con localhost o 127.0.0.1 desde el navegador. Tambin se puede usar Appserv 2.5.9

En binario, una direccin IP de clase A luce as:

clase A CLASE B: En una direccin de red de sta clase los dos primeros bytes o dos primeros octetos de bits indican la red y los dos ultimos bytes o dos ultimos octetos de bits indican los equipos o computadores. Una cosa importante es que los dos primeros bits del primer octeto de bits o primer byte siempre sern 1 y 0, por lo tanto habran 16.384 redes. Las redes de la clase B son redes que van de 128.0.0.0 a 191.255.0.0. Entonces una direccin IP que comienza con un valor entre 224 y 239 en el primer octeto es una direccin Clase D. En binario, una direccin IP de clase B luce as:

clase B CLASE C:

En una direccin de red de sta clase los 3 primeros bytes o 3 primeros octetos de bits indican la red y ltimo byte o ltimo octeto de bits indica los equipos o computadores. Una cosa importante es que los 3 primeros bits del primer octeto de bits o primer byte siempre sern 1, 1 y 0, por lo tanto habran 2.097.152 redes. Las redes de la clase C son redes que van de 192.0.0.0 a 223.255.255.0. En binario, una direccin IP de clase C luce as:

clase C CLASE D: Esta clase se creo para permitir el multicast en una direccin IP. Multicast en una direccin IP significa que al indicar una direccin IP multicast como destino el paquete de datos enviado no es enviado a un solo equipo sino a varios, es decir que la direccin IP multicast agrupa un conjunto de direcciones IP normales a las cuales les llegara el paquete en caso de haberlo enviado a dicha direccin IP multicast. De esta manera una estacin o un equipo de red puede transmitir un paquete de datos a multiples receptores con solo indicar una sola IP (la cual debe ser multicast). Al igual de las demas clases las direcciones IP clase D estan limitadas de la siguiente manera: los primeros 4 bits del primer byte deben ser siempre 1110, con lo que el rango de valores para direccines IP clase D va de 11100000 a 11101111, 224 a 239. IMPORTANTE, las direcciones clase D todos los segmentos de la direccin IP son para identificar la red. CLASE E: La Fuerza de tareas de ingeniera de Internet (IETF), reservo las direcciones de sta clase para su propia investigacin. Debido a sto no se han puesto disponibles direcciones clase E para su uso en la internet. Los primeros 4 bits del primer byte de la direccin IP clase E siempre son 1. Por lo tanto, el rango del primer octeto para las direcciones Clase E es 11110000 a 11111111, o 240 a 255.

En binario, una direccin IP de clase E luce as:

Clase E CLASE Y: Las redes clase Y, utilizan todos los segmentos como identificadores de red y tiene un rango de direcciones que va desde 240.0.0.0 hasta 255.255.255.255. sta clase es reservada por la IANA para uso futuro.

Seguna la informacin la clase Y y la clase E son las mismas.


Asignacin de direcciones IP
El objetivo de dividir las direcciones IP en tres clases A, B y C es facilitar la bsqueda de un equipo en la red. De hecho, con esta notacin es posible buscar primero la red a la que uno desea tener acceso y luego buscar el equipo dentro de esta red. Por lo tanto, la asignacin de una direccin de IP se realiza de acuerdo al tamao de la red.
Clase Cantidad de redes posibles Cantidad mxima de equipos en cada una A B C 126 16384 2097152 16777214 65534 254

Las direcciones de clase A se utilizan en redes muy amplias, mientras que las direcciones de clase C seasignan, por ejemplo, a las pequeas redes de empresas.