1 00:00:00,000 --> 00:00:04,884 2 00:00:04,884 --> 00:00:08,050 DOUG LLOYD: En este video vamos para hablar sobre el control de la transmisión 3 00:00:08,050 --> 00:00:10,440 Protocolo, TCP. 4 00:00:10,440 --> 00:00:13,290 Si no has visto el video en el protocolo de Internet, IP, 5 00:00:13,290 --> 00:00:15,290 es posible que desee hacerlo antes de ver el vídeo 6 00:00:15,290 --> 00:00:18,680 porque los dos son muy relacionados entre sí. 7 00:00:18,680 --> 00:00:21,100 >> Por lo tanto, el protocolo de Internet, de nuevo, un resumen rápido, 8 00:00:21,100 --> 00:00:22,930 ese es el protocolo que se mueve la información 9 00:00:22,930 --> 00:00:28,210 desde una máquina que envía a un receptor máquina a través de la red. 10 00:00:28,210 --> 00:00:29,720 >> Entonces, ¿qué es TCP? 11 00:00:29,720 --> 00:00:33,310 Aunque apenas moverse de un envío máquina para máquina receptora, 12 00:00:33,310 --> 00:00:35,120 no es la historia completa. 13 00:00:35,120 --> 00:00:38,040 También sabemos que nuestro programa, nuestras computadoras, por ejemplo, 14 00:00:38,040 --> 00:00:41,000 se están ejecutando varios programas, y tienen múltiples servicios 15 00:00:41,000 --> 00:00:45,140 que se ejecuta en esas máquinas. 16 00:00:45,140 --> 00:00:51,750 Y así, si queremos obtener un paquete, o información a un programa específico, 17 00:00:51,750 --> 00:00:54,590 en una máquina específica, necesitamos más información 18 00:00:54,590 --> 00:00:59,490 que sólo lo permite IP nosotros para llegar la información del punto A al punto B. 19 00:00:59,490 --> 00:01:02,390 >> Por lo tanto, TCP puede ser pensado como dirigir el paquete 20 00:01:02,390 --> 00:01:07,590 para el programa correcto, o la correcta servicio, en la máquina receptora. 21 00:01:07,590 --> 00:01:11,810 Y por lo que es importante, como puede ser que esperar, saber dónde se supone que debe ir, 22 00:01:11,810 --> 00:01:14,550 y lo que el paquete es durante al mismo tiempo. 23 00:01:14,550 --> 00:01:18,370 Y así, con frecuencia, cuando se habla de protocolo de control de transmisión, TCP, 24 00:01:18,370 --> 00:01:23,900 De verdad oye a menudo en el contexto, TCP IP slash, o simplemente TCP / IP. 25 00:01:23,900 --> 00:01:27,639 Estos dos protocolos son tan interrelacionados eso, son básicamente 26 00:01:27,639 --> 00:01:28,680 tratados como una sola unidad. 27 00:01:28,680 --> 00:01:31,630 Pero son dos protocolos separados que hacer dos cosas separadas. 28 00:01:31,630 --> 00:01:36,690 >> Una vez más, la propiedad intelectual es responsable de conseguir desde una máquina a otra. 29 00:01:36,690 --> 00:01:41,250 Y TCP es responsable de conseguir que el programa correcto, 30 00:01:41,250 --> 00:01:43,490 o el servicio correcto en una máquina. 31 00:01:43,490 --> 00:01:45,500 Y lo hace algo otra cosa que la propiedad intelectual no hace, 32 00:01:45,500 --> 00:01:48,600 que es garantizar la entrega. 33 00:01:48,600 --> 00:01:55,060 >> Por lo tanto, si ahora pareja IP de una máquina abordar con el llamado número de puerto, 34 00:01:55,060 --> 00:01:58,750 y un número de puerto es como una específica servicio, o utilidad, o programa, 35 00:01:58,750 --> 00:02:00,350 se identifica en una máquina. 36 00:02:00,350 --> 00:02:03,920 Si ahora tenemos una IP dirección, más un número de puerto, 37 00:02:03,920 --> 00:02:07,240 ahora podemos identificar de forma exclusiva un servicio en particular 38 00:02:07,240 --> 00:02:09,479 que se ejecuta en una máquina particular. 39 00:02:09,479 --> 00:02:11,920 >> Así que por eso TCP e IP son con tanta frecuencia interrelacionados, 40 00:02:11,920 --> 00:02:14,170 debido a que el número de puerto por sí sola no hace realmente 41 00:02:14,170 --> 00:02:17,670 significa nada si usted necesita un número de puerto, y la máquina 42 00:02:17,670 --> 00:02:19,566 que usted está hablando. 43 00:02:19,566 --> 00:02:24,060 ¿Qué equipo se supone que se utiliza este puerto en particular, por ejemplo. 44 00:02:24,060 --> 00:02:28,350 >> La otra cosa que lo hace TCP, como Yo dije, es que garantiza la entrega. 45 00:02:28,350 --> 00:02:30,810 Así, además de especificando el número de puerto, 46 00:02:30,810 --> 00:02:34,640 también indica cuántos paquetes, el protocolo de Internet, IP, 47 00:02:34,640 --> 00:02:36,110 ha dividido a los datos. 48 00:02:36,110 --> 00:02:41,200 Y ordena esos paquetes para que puede reconstruirse en el receptor 49 00:02:41,200 --> 00:02:45,820 máquina, incluso si received-- en una orden diferente de lo que fueron enviados. 50 00:02:45,820 --> 00:02:48,460 ¿Qué puede suceder debido a IP es un protocolo sin conexión, 51 00:02:48,460 --> 00:02:52,610 y así diferentes paquetes pueden tomar diferentes caminos través del sistema. 52 00:02:52,610 --> 00:02:53,660 53 00:02:53,660 --> 00:02:55,865 >> Algunos de estos números de puerto son muy comúnmente usado, 54 00:02:55,865 --> 00:02:57,990 y han sido estandarizados en todos los equipos, 55 00:02:57,990 --> 00:03:00,500 al igual que, casi todos fabricante del equipo ahora. 56 00:03:00,500 --> 00:03:03,612 Así que algo llamado FTP, el protocolo de transferencia de archivos, 57 00:03:03,612 --> 00:03:05,820 que se utiliza para transmitir archivos, como se podría esperar, 58 00:03:05,820 --> 00:03:10,060 de una máquina a otra, que utiliza el puerto 21 de manera convencional. 59 00:03:10,060 --> 00:03:13,000 Correo electrónico, SMTP, utiliza el puerto 25. 60 00:03:13,000 --> 00:03:16,070 DNS, el sistema de nombres de dominio, lo que nos hablado en nuestra imprimación internet 61 00:03:16,070 --> 00:03:17,976 de vídeo, utiliza el puerto 53. 62 00:03:17,976 --> 00:03:20,100 Si alguna vez estás navegando la web, que está bastante 63 00:03:20,100 --> 00:03:23,440 siempre utilizando el puerto 80, a menos que usted está navegando por la web de forma segura, 64 00:03:23,440 --> 00:03:26,060 navegación web segura, utilizando el puerto 443. 65 00:03:26,060 --> 00:03:28,610 66 00:03:28,610 --> 00:03:30,790 >> Entonces, ¿qué es este proceso TCP / IP? 67 00:03:30,790 --> 00:03:33,730 ¿Qué está pasando con los dos de estos protocolos juntos? 68 00:03:33,730 --> 00:03:35,520 Bueno, vamos a hablar de ello. 69 00:03:35,520 --> 00:03:39,420 Cuando un programa desea enviar datos, TCP ayuda a romperlo en pedazos, 70 00:03:39,420 --> 00:03:42,700 y comunica esos paquetes a software de red del ordenador. 71 00:03:42,700 --> 00:03:45,850 Así que toma los datos y se envuelve la información a su alrededor 72 00:03:45,850 --> 00:03:48,700 que indica qué puerto se supone que ir, 73 00:03:48,700 --> 00:03:52,500 y lo que para que paquete es de todos. 74 00:03:52,500 --> 00:03:56,940 Así que uno de los paquetes de 10, dos de 10, tres de los 10, y así sucesivamente. 75 00:03:56,940 --> 00:04:01,750 >> IP consigue esos fragmentos de datos que se han envuelto con TCP, 76 00:04:01,750 --> 00:04:06,447 y envuelve más información sobre donde se supone que el paquete para ir. 77 00:04:06,447 --> 00:04:08,780 Podríamos llamar a esto el IP capas que rodean el paquete. 78 00:04:08,780 --> 00:04:11,210 Por lo tanto, es una especie de, como, una de esas muñecas de la jerarquización. 79 00:04:11,210 --> 00:04:14,780 Tenemos los datos de la medio y, a continuación, TCP en la parte superior de, 80 00:04:14,780 --> 00:04:17,920 diciendo que cuando el datos dentro de TCP es 81 00:04:17,920 --> 00:04:22,150 supone ir, a qué puerto o lo que el servicio en una máquina. 82 00:04:22,150 --> 00:04:25,110 Alrededor de ese es la capa IP. 83 00:04:25,110 --> 00:04:29,230 ¿Qué dirección IP, qué máquina, es en realidad conseguir esto. 84 00:04:29,230 --> 00:04:32,070 >> Así pues, ese paquete que ha estado envuelto con todas esas capas, 85 00:04:32,070 --> 00:04:35,250 se envía a través de protocolo de Internet a través del sistema de routers, consiguiendo 86 00:04:35,250 --> 00:04:39,960 del punto A al punto B. Cuando el máquina receptora, o dispositivo, obtiene 87 00:04:39,960 --> 00:04:42,790 , se ve en el IP capa, dice, yup eso es 88 00:04:42,790 --> 00:04:45,260 mi dirección IP, por lo que se necesita off, una especie de grietas que el huevo, 89 00:04:45,260 --> 00:04:47,380 y se quita la capa IP. 90 00:04:47,380 --> 00:04:49,530 Entonces se ve que hay una capa TCP, y dice, 91 00:04:49,530 --> 00:04:52,720 OK, parece que esto es ir al puerto de x, o puerto y. 92 00:04:52,720 --> 00:04:55,842 Y al parecer es número de paquete ocho de 15. 93 00:04:55,842 --> 00:04:56,800 Así que eso es bueno saberlo. 94 00:04:56,800 --> 00:05:01,240 Así que entonces puede tomar esa información, quitar la capa TCP ahora, 95 00:05:01,240 --> 00:05:04,410 sabiendo que es para el puerto de x, y es el número de paquetes de ocho, 96 00:05:04,410 --> 00:05:06,270 y obtener los datos en el interior. 97 00:05:06,270 --> 00:05:09,460 Y puede preparar los datos a organizarse en la forma correcta. 98 00:05:09,460 --> 00:05:11,449 Y una vez que la totalidad de la los datos se recibe, TCP 99 00:05:11,449 --> 00:05:13,990 puede entregarlo fuera a la correcta servicio, y decir, aquí tienes. 100 00:05:13,990 --> 00:05:16,107 He aquí los datos que ha recibido. 101 00:05:16,107 --> 00:05:17,940 Ese proceso podría ser algo como esto. 102 00:05:17,940 --> 00:05:21,392 Así que vamos a enviar un correo electrónico de un emisor a un receptor. 103 00:05:21,392 --> 00:05:23,100 Y digamos que este email es bastante pequeña, 104 00:05:23,100 --> 00:05:25,975 así que sólo tenemos que dividirlo en cuatro paquetes, y que llamaremos A, 105 00:05:25,975 --> 00:05:29,460 B, C, y D. Bueno, queremos mover ese primer paquete de lo que sucede? 106 00:05:29,460 --> 00:05:34,491 Bueno, tenemos que parte de los datos, los datos que forma parte del paquete A, 107 00:05:34,491 --> 00:05:38,500 y alrededor de que vamos envolverlo con una capa TCP. 108 00:05:38,500 --> 00:05:41,670 Los correos electrónicos, que pueden recordar, son enviados a través del puerto 25, 109 00:05:41,670 --> 00:05:46,181 y tenemos cuatro fragmentos de datos, aquí, que vamos a utilizar, 110 00:05:46,181 --> 00:05:47,430 y este es el primero de ellos. 111 00:05:47,430 --> 00:05:50,013 Así que tal vez nuestra capa TCP contiene información sobre, bueno, estamos 112 00:05:50,013 --> 00:05:56,060 ir al puerto 25, y esto es el número de paquetes de uno de cuatro. 113 00:05:56,060 --> 00:05:59,280 >> Alrededor de ese, así que ahora tenemos todo lo que información lía juntos, 114 00:05:59,280 --> 00:06:03,000 vamos a decir dónde lo queremos ir, qué máquina, lo que la dirección IP 115 00:06:03,000 --> 00:06:04,910 se supone que conseguir este paquete. 116 00:06:04,910 --> 00:06:06,604 Y eso es parte de la capa IP. 117 00:06:06,604 --> 00:06:08,770 Y hay otra información ahí también, por ejemplo 118 00:06:08,770 --> 00:06:11,300 como la dirección de retorno en caso de que algo va mal, 119 00:06:11,300 --> 00:06:14,390 sabe dónde enviar información de nuevo, y así sucesivamente. 120 00:06:14,390 --> 00:06:16,475 >> Pero la capa IP va alrededor de todo eso. 121 00:06:16,475 --> 00:06:19,860 Esa cosa entera se lía juntos, como una unidad grande, 122 00:06:19,860 --> 00:06:22,080 y enviado a través de una transferencia de la propiedad intelectual. 123 00:06:22,080 --> 00:06:26,180 Así que va a parar a través del router red, utilizando el protocolo de internet. 124 00:06:26,180 --> 00:06:28,700 Y el receptor recibe toda la cosa. 125 00:06:28,700 --> 00:06:31,910 Y entonces se puede empezar a deconstruir lo que está pasando aquí. 126 00:06:31,910 --> 00:06:36,030 Se ve en la capa IP, el capa exterior de estos datos, 127 00:06:36,030 --> 00:06:38,560 y dice, sí, esa es mi IP dirección para que podamos descartar eso. 128 00:06:38,560 --> 00:06:40,685 Puedo, clase de, ignorarlo, no lo necesita más, 129 00:06:40,685 --> 00:06:42,480 y puede buscar un nivel más profundo. 130 00:06:42,480 --> 00:06:47,590 Se ve que, OK, este es un dato que está destinado a ser recibido en el puerto 25. 131 00:06:47,590 --> 00:06:50,560 Es al parecer la primera parte de cuatro. 132 00:06:50,560 --> 00:06:54,260 Por lo tanto, voy a tener eso en mente, y mirar los datos, 133 00:06:54,260 --> 00:06:57,349 y un durísimo disparo, más o menos donde Creo que va a ir. 134 00:06:57,349 --> 00:07:00,140 Ahora, debido a el protocolo de Internet que no es necesariamente el caso 135 00:07:00,140 --> 00:07:03,442 que el siguiente paquete de la receptor recibe, es paquete de dos. 136 00:07:03,442 --> 00:07:05,150 De hecho, el siguiente cosa que el receptor recibe 137 00:07:05,150 --> 00:07:08,230 podría ser número de paquete tres porque estos paquetes 138 00:07:08,230 --> 00:07:11,777 tomaron caminos diferentes a causa de diferente tráfico en la red. 139 00:07:11,777 --> 00:07:14,360 Y así, yo no voy a ir a través del diagrama de la construcción de ésta 140 00:07:14,360 --> 00:07:17,560 de nuevo, pero de paquetes de tres movimientos, consigue despojados 141 00:07:17,560 --> 00:07:20,410 de todos sus capas, la Capa IP, la capa TCP, 142 00:07:20,410 --> 00:07:22,420 y los datos se puso en el lugar correcto. 143 00:07:22,420 --> 00:07:25,200 Y entonces, digamos que recibe paquete de cuatro. 144 00:07:25,200 --> 00:07:29,290 >> Ahora vamos a decir, eso es todo, que No hay nada más datos. 145 00:07:29,290 --> 00:07:30,300 ¿Qué va a hacer? 146 00:07:30,300 --> 00:07:32,110 IP no hace nada por nosotros. 147 00:07:32,110 --> 00:07:33,260 Pero TCP hace. 148 00:07:33,260 --> 00:07:38,250 TCP sabe, bueno, he recibido uno de cuatro, tres de cuatro, y cuatro de cuatro. 149 00:07:38,250 --> 00:07:41,100 Hasta ahora no recibo más datos. 150 00:07:41,100 --> 00:07:43,770 Así que algo ha ido mal. 151 00:07:43,770 --> 00:07:45,050 Pero puedo garantizar la entrega. 152 00:07:45,050 --> 00:07:49,300 Sé que ese paquete número dos se encuentra. 153 00:07:49,300 --> 00:07:52,470 Y así TCP ahora puede hacer una solicitud, especie de, en la dirección inversa. 154 00:07:52,470 --> 00:07:55,170 Agrupación por su solicitud de la misma manera, 155 00:07:55,170 --> 00:07:57,230 y enviándolo a través de IP, que, lo sé, podría 156 00:07:57,230 --> 00:08:00,880 dar lugar a algún tipo de bucle infinito de dejar caer los paquetes a todo el mundo en el camino. 157 00:08:00,880 --> 00:08:05,580 >> Pero baste decir que TCP dice, que me falta un paquete. 158 00:08:05,580 --> 00:08:08,670 Necesito enviar información de vuelta al remitente. 159 00:08:08,670 --> 00:08:12,025 Afortunadamente la dirección IP del remitente es, clase de, envuelto en la capa IP. 160 00:08:12,025 --> 00:08:15,780 Es parte de-- Es el regreso dirección en el sobre. 161 00:08:15,780 --> 00:08:18,800 Y digo que me falta el número de paquetes dos, puede usted por favor reenviarlo. 162 00:08:18,800 --> 00:08:20,550 Cuando el remitente recibe esa información, 163 00:08:20,550 --> 00:08:22,599 que no tiene que enviar todo el correo electrónico de nuevo. 164 00:08:22,599 --> 00:08:25,390 Sólo tiene que enviar ese individuo pedazo de él que le faltaba, 165 00:08:25,390 --> 00:08:27,590 así que podríamos enviar el paquete número dos. 166 00:08:27,590 --> 00:08:32,610 Y cuando se consigue, ahora dice que TCP, Tengo las cuatro piezas de datos 167 00:08:32,610 --> 00:08:34,100 que necesito. 168 00:08:34,100 --> 00:08:39,590 Así, puedo montar juntos, y tomar todo este bloque de información 169 00:08:39,590 --> 00:08:44,169 y pasarlo junto al puerto 25, donde será interpretado como un correo electrónico. 170 00:08:44,169 --> 00:08:47,010 Y eso-- de esta manera que hemos ahora enviar un correo electrónico del remitente 171 00:08:47,010 --> 00:08:49,273 al receptor a través de TCP / IP. 172 00:08:49,273 --> 00:08:51,430 173 00:08:51,430 --> 00:08:54,180 Así que, como he dicho, si en algún momento en el camino algo salió mal, 174 00:08:54,180 --> 00:08:56,600 TCP puede tratar con él. 175 00:08:56,600 --> 00:09:00,010 Se puede hacer una petición de que el la información se envía de nuevo a él. 176 00:09:00,010 --> 00:09:01,840 Y puede reconstruir el mensaje. 177 00:09:01,840 --> 00:09:05,090 Y una vez que se reconstruye el mensaje de todos los paquetes que ha recibido, 178 00:09:05,090 --> 00:09:10,350 entonces se puede organizarlos y entregarlos al servicio correcto. 179 00:09:10,350 --> 00:09:11,990 >> Así que eso es TCP en pocas palabras. 180 00:09:11,990 --> 00:09:14,550 Así es como garantizamos entrega de información. 181 00:09:14,550 --> 00:09:16,540 Recuerde que el TCP con frecuencia trabaja con IP, 182 00:09:16,540 --> 00:09:18,990 por lo que estos dos protocolos La verdad es que ir de la mano. 183 00:09:18,990 --> 00:09:22,160 Les comentamos en varios videos aquí porque hacen cosas diferentes, 184 00:09:22,160 --> 00:09:26,190 pero son tan relacionados entre sí, que usted por lo general se utilicen juntos. 185 00:09:26,190 --> 00:09:27,150 >> Soy Doug Lloyd. 186 00:09:27,150 --> 00:09:29,160 Esto es CS50. 187 00:09:29,160 --> 00:09:31,233