1 00:00:00,000 --> 00:00:04,884 2 00:00:04,884 --> 00:00:08,050 Doug LLOYD: Neste video imos para falar do Control de Transmisión 3 00:00:08,050 --> 00:00:10,440 Protocolo TCP. 4 00:00:10,440 --> 00:00:13,290 Se aínda non asistiu a vídeo sobre protocolo de Internet, IP, 5 00:00:13,290 --> 00:00:15,290 pode querer facelo antes de asistir a este vídeo 6 00:00:15,290 --> 00:00:18,680 porque os dous son moi interrelacionados. 7 00:00:18,680 --> 00:00:21,100 >> Así, o protocolo de Internet, unha vez máis, un rápido resumo, 8 00:00:21,100 --> 00:00:22,930 que é o protocolo que se move información 9 00:00:22,930 --> 00:00:28,210 a partir dunha máquina que envía a un receptor máquina a través da rede. 10 00:00:28,210 --> 00:00:29,720 >> Entón, cal é TCP? 11 00:00:29,720 --> 00:00:33,310 Aínda que só se desprazan dun envío Máquina para recibir máquina, 12 00:00:33,310 --> 00:00:35,120 non é a historia completa. 13 00:00:35,120 --> 00:00:38,040 Tamén sabemos que o noso programa, os nosos ordenadores, por exemplo, 14 00:00:38,040 --> 00:00:41,000 está executando varios programas, e ter varios servizos 15 00:00:41,000 --> 00:00:45,140 en execución nesas máquinas. 16 00:00:45,140 --> 00:00:51,750 E así, se queremos obter un paquete, ou información para un programa específico, 17 00:00:51,750 --> 00:00:54,590 nunha máquina específica, necesitamos máis información 18 00:00:54,590 --> 00:00:59,490 IP que o que nos permite chegar información desde o punto A ó punto B. 19 00:00:59,490 --> 00:01:02,390 >> Así, o TCP pode ser pensado como dirixir o paquete 20 00:01:02,390 --> 00:01:07,590 para o programa correcto, ou o correcto servizo, na máquina receptora. 21 00:01:07,590 --> 00:01:11,810 E por iso é importante, como pode esperar, sei onde se quere ir, 22 00:01:11,810 --> 00:01:14,550 e que o paquete está para á vez. 23 00:01:14,550 --> 00:01:18,370 E así, a miúdo, cando fala sobre Transmission Control Protocol, TCP, 24 00:01:18,370 --> 00:01:23,900 moitas veces realmente oín-lo no contexto, TCP cortar IP, ou só TCP / IP. 25 00:01:23,900 --> 00:01:27,639 Estes dous protocolos son tan interrelacionados que son, basicamente, 26 00:01:27,639 --> 00:01:28,680 tratados como un todo. 27 00:01:28,680 --> 00:01:31,630 Pero son dous protocolos distintos que facer dúas cousas separadas. 28 00:01:31,630 --> 00:01:36,690 >> Unha vez máis, IP é responsable de obter ela dunha máquina a outra. 29 00:01:36,690 --> 00:01:41,250 E TCP é responsable de comeza-lo para o programa correcto, 30 00:01:41,250 --> 00:01:43,490 ou o servizo correcto nunha máquina. 31 00:01:43,490 --> 00:01:45,500 E fai algo outra cousa que non fai IP, 32 00:01:45,500 --> 00:01:48,600 que é a entrega de garantía. 33 00:01:48,600 --> 00:01:55,060 >> Entón, se nós agora par IP da máquina abordar co número do porto así chamada, 34 00:01:55,060 --> 00:01:58,750 e un número de porto é como un específico servizo ou utilidade, ou programa, 35 00:01:58,750 --> 00:02:00,350 é identificado nunha máquina. 36 00:02:00,350 --> 00:02:03,920 Agora temos un IP enderezo engade un número de porto, 37 00:02:03,920 --> 00:02:07,240 agora podemos identificar con exclusividade un determinado servizo 38 00:02:07,240 --> 00:02:09,479 rodando nunha máquina en particular. 39 00:02:09,479 --> 00:02:11,920 >> Entón é por iso TCP e IP son tan frecuentemente interrelacionadas, 40 00:02:11,920 --> 00:02:14,170 porque ese número de porto por si só non fai realmente 41 00:02:14,170 --> 00:02:17,670 nada dicir, se precisa dun número de porto, ea máquina 42 00:02:17,670 --> 00:02:19,566 que está falando. 43 00:02:19,566 --> 00:02:24,060 Que máquina se quere estar a usar esa porta particular, por exemplo. 44 00:02:24,060 --> 00:02:28,350 >> A outra cousa que o TCP fai, como Dixen, é que garante a súa entrega. 45 00:02:28,350 --> 00:02:30,810 Así, ademais especificando o número do porto, 46 00:02:30,810 --> 00:02:34,640 el tamén indica cantas paquetes, o protocolo de Internet, IP, 47 00:02:34,640 --> 00:02:36,110 dividiu os datos. 48 00:02:36,110 --> 00:02:41,200 E ordena os paquetes para que pode ser reconstruído na recepción 49 00:02:41,200 --> 00:02:45,820 máquina, aínda que received-- nunha orde distinta daquela en que foron enviados. 50 00:02:45,820 --> 00:02:48,460 O que pode ocorrer porque IP é un protocolo sen conexión, 51 00:02:48,460 --> 00:02:52,610 e así por paquetes diferentes pode levar camiños diferentes a través do sistema. 52 00:02:52,610 --> 00:02:53,660 53 00:02:53,660 --> 00:02:55,865 >> Algúns deses números de porta son moi comunmente usado, 54 00:02:55,865 --> 00:02:57,990 e eles foron estandarizados en todos os ordenadores, 55 00:02:57,990 --> 00:03:00,500 como, practicamente todos os fabricante de ordenadores agora. 56 00:03:00,500 --> 00:03:03,612 Entón algo chamado FTP, o protocolo de transferencia de ficheiros, 57 00:03:03,612 --> 00:03:05,820 que se usa para transmitir arquivos, como podería esperar, 58 00:03:05,820 --> 00:03:10,060 a partir dunha máquina a outra, que usa a porta 21 convencionalmente. 59 00:03:10,060 --> 00:03:13,000 Correo electrónico, SMTP, utiliza o porto 25. 60 00:03:13,000 --> 00:03:16,070 DNS, sistema de nomes de dominio, o que falou na nosa cartilla internet 61 00:03:16,070 --> 00:03:17,976 vídeo, utiliza o porto 53. 62 00:03:17,976 --> 00:03:20,100 Se está sempre navegando a web, está moi ben 63 00:03:20,100 --> 00:03:23,440 sempre usando o porto 80, salvo que está navegando na web con seguridade, 64 00:03:23,440 --> 00:03:26,060 navegación web segura, a través da porta 443. 65 00:03:26,060 --> 00:03:28,610 66 00:03:28,610 --> 00:03:30,790 >> Entón, cal é este proceso TCP / IP? 67 00:03:30,790 --> 00:03:33,730 O que está pasando cos dous destes protocolos xuntos? 68 00:03:33,730 --> 00:03:35,520 Ben, imos falar sobre iso. 69 00:03:35,520 --> 00:03:39,420 Cando un programa quere enviar datos, TCP axuda a rompe-lo en anacos, 70 00:03:39,420 --> 00:03:42,700 e comunica estes paquetes para software de rede do computador. 71 00:03:42,700 --> 00:03:45,850 Por iso, leva os datos e que implica información en torno a el 72 00:03:45,850 --> 00:03:48,700 que indica que porta se quere ir, 73 00:03:48,700 --> 00:03:52,500 eo fin de que paquete está fóra de todo. 74 00:03:52,500 --> 00:03:56,940 Entón, faga un paquete de 10, dous de 10, tres dos 10, e así por diante. 75 00:03:56,940 --> 00:04:01,750 >> IP recibe os bloques de datos que foron rotas con TCP, 76 00:04:01,750 --> 00:04:06,447 e implica máis información sobre onde o paquete se quere ir. 77 00:04:06,447 --> 00:04:08,780 Podemos chamar iso de IP capas que rodean o paquete. 78 00:04:08,780 --> 00:04:11,210 Entón, é unha especie de, como, unha desas bonecas. 79 00:04:11,210 --> 00:04:14,780 Temos os datos no medio, e, a continuación, TCP encima, 80 00:04:14,780 --> 00:04:17,920 dicíndolle onde a datos dentro do TCP é 81 00:04:17,920 --> 00:04:22,150 debería ir, para que o porto ou o servizo nunha máquina. 82 00:04:22,150 --> 00:04:25,110 Arredor, que é a capa IP. 83 00:04:25,110 --> 00:04:29,230 O enderezo IP, o que a máquina, Está realmente quedando esta. 84 00:04:29,230 --> 00:04:32,070 >> Polo tanto, este paquete que foi embrulhado con todas esas capas, 85 00:04:32,070 --> 00:04:35,250 é enviado a través do protocolo Internet mediante o sistema de routers, obtendo 86 00:04:35,250 --> 00:04:39,960 do punto A ó punto B. Cando o recibir máquina, ou dispositivo, recibe 87 00:04:39,960 --> 00:04:42,790 Lo, ten en conta o IP capa, el di, si é que 88 00:04:42,790 --> 00:04:45,260 meu enderezo IP, polo que leva fóra, tipo de fendas do ovo, 89 00:04:45,260 --> 00:04:47,380 e tira a capa IP. 90 00:04:47,380 --> 00:04:49,530 A continuación, el ve que hai unha capa TCP, e el di, 91 00:04:49,530 --> 00:04:52,720 OK, parece que este é indo a porta x, y ou porta. 92 00:04:52,720 --> 00:04:55,842 E, ao parecer, é packet número oito dos 15. 93 00:04:55,842 --> 00:04:56,800 Entón, iso é bo saber. 94 00:04:56,800 --> 00:05:01,240 Así, entón pode ter esa información, despegar a capa TCP agora, 95 00:05:01,240 --> 00:05:04,410 sabendo que é a porta x, e é packet número oito, 96 00:05:04,410 --> 00:05:06,270 e obter os datos dentro. 97 00:05:06,270 --> 00:05:09,460 E pode preparar os datos para ser organizados de maneira correcta. 98 00:05:09,460 --> 00:05:11,449 E xa que toda a os datos son recibidos, TCP 99 00:05:11,449 --> 00:05:13,990 pode entrega-lo para o correcto servizo, e dicir, aquí vai. 100 00:05:13,990 --> 00:05:16,107 Aquí está os datos que recibiu. 101 00:05:16,107 --> 00:05:17,940 Este proceso pode parecer algo así. 102 00:05:17,940 --> 00:05:21,392 Entón, imos enviar unha mensaxe un emisor a un receptor. 103 00:05:21,392 --> 00:05:23,100 E digamos que este correo electrónico é moi pequena, 104 00:05:23,100 --> 00:05:25,975 por iso, só precisa rompe-lo en catro paquetes, e nós imos chamalos de A, 105 00:05:25,975 --> 00:05:29,460 B, C, e D. Ben, queremos avanzar que primeiro paquete que pasa? 106 00:05:29,460 --> 00:05:34,491 Ben, nós levamos ese anaco de datos, Os datos que se parte do paquete de A, 107 00:05:34,491 --> 00:05:38,500 e ao redor de que imos para envolve-lo cunha capa TCP. 108 00:05:38,500 --> 00:05:41,670 Correos electrónicos, pode lembrar, son enviados a través do porto 25, 109 00:05:41,670 --> 00:05:46,181 e nós temos catro bloques de datos, aquí, que nós imos estar a usar, 110 00:05:46,181 --> 00:05:47,430 e esta é a primeira delas. 111 00:05:47,430 --> 00:05:50,013 Entón, talvez a nosa capa TCP contén información sobre, así, estamos 112 00:05:50,013 --> 00:05:56,060 indo a porta 25, e este é un número de paquetes de catro. 113 00:05:56,060 --> 00:05:59,280 >> En torno a iso, entón agora temos todo o que información embalaxe xuntos, 114 00:05:59,280 --> 00:06:03,000 imos dicir que queremos que ir, o equipo, o que dirección IP 115 00:06:03,000 --> 00:06:04,910 se quere obter este paquete. 116 00:06:04,910 --> 00:06:06,604 E iso é parte da capa IP. 117 00:06:06,604 --> 00:06:08,770 E hai outras informacións alí tamén, como 118 00:06:08,770 --> 00:06:11,300 como o enderezo de retorno en caso algo sae mal, 119 00:06:11,300 --> 00:06:14,390 el sabe onde enviar información para atrás, e así por diante. 120 00:06:14,390 --> 00:06:16,475 >> Pero a capa IP pasa en torno a todo isto. 121 00:06:16,475 --> 00:06:19,860 Esa cousa toda é embalaxe en conxunto, coma un todo grande, 122 00:06:19,860 --> 00:06:22,080 e enviado a través dunha transferencia IP. 123 00:06:22,080 --> 00:06:26,180 Por iso, é roteado través do router rede, empregando o protocolo de internet. 124 00:06:26,180 --> 00:06:28,700 E o receptor recibe a cousa enteira. 125 00:06:28,700 --> 00:06:31,910 E entón pode comezar a desconstruir o que está pasando aquí. 126 00:06:31,910 --> 00:06:36,030 Ten en conta a capa IP, o capa exterior destes datos, 127 00:06:36,030 --> 00:06:38,560 e di, si, ese é o meu IP enderezo para que poidamos descartar isto. 128 00:06:38,560 --> 00:06:40,685 Podo, tipo, ignore-lo, non é máis necesario, 129 00:06:40,685 --> 00:06:42,480 e pode ollar un nivel máis profundo. 130 00:06:42,480 --> 00:06:47,590 Ve que, OK, isto é datos que destínase a ser recibidos na porta 25. 131 00:06:47,590 --> 00:06:50,560 É, ao parecer, a primeira parte de catro. 132 00:06:50,560 --> 00:06:54,260 Entón, eu vou manter isto importa, e ollar os datos, 133 00:06:54,260 --> 00:06:57,349 e slot-lo máis ou menos onde Eu creo que vai ir. 134 00:06:57,349 --> 00:07:00,140 Agora, debido ao protocolo de internet non é necesariamente o caso 135 00:07:00,140 --> 00:07:03,442 que o seguinte paquete a receptor recibe, é de paquetes dous. 136 00:07:03,442 --> 00:07:05,150 De feito, o seguinte cousa que o receptor recibe 137 00:07:05,150 --> 00:07:08,230 pode ser o número de paquetes tres porque estes paquetes 138 00:07:08,230 --> 00:07:11,777 tomou camiños diferentes, porque de tráfico diferente na rede. 139 00:07:11,777 --> 00:07:14,360 E así, eu non estou indo a ir a través do diagrama de constrúe-la 140 00:07:14,360 --> 00:07:17,560 Se outra vez, pero tres paquetes movementos, queda arrancada 141 00:07:17,560 --> 00:07:20,410 de todas as súas capas, o Capa IP, a capa TCP, 142 00:07:20,410 --> 00:07:22,420 e os datos e colocar no lugar seguro. 143 00:07:22,420 --> 00:07:25,200 E entón, imos dicir que recibe o paquete de catro. 144 00:07:25,200 --> 00:07:29,290 >> Agora imos dicir, é que é non recibe máis datos. 145 00:07:29,290 --> 00:07:30,300 Que vai facer? 146 00:07:30,300 --> 00:07:32,110 IP non facer nada para nós. 147 00:07:32,110 --> 00:07:33,260 Pero TCP fai. 148 00:07:33,260 --> 00:07:38,250 TCP sabe, ben, eu recibín un dos catro, tres de catro, e catro de catro. 149 00:07:38,250 --> 00:07:41,100 Non estou a recibir máis datos. 150 00:07:41,100 --> 00:07:43,770 Entón, algo deu mal. 151 00:07:43,770 --> 00:07:45,050 Pero podo garantir a súa entrega. 152 00:07:45,050 --> 00:07:49,300 Sei que paquete número dous falta. 153 00:07:49,300 --> 00:07:52,470 E así TCP pode agora facer un pedido, máis ou menos, no sentido inverso. 154 00:07:52,470 --> 00:07:55,170 Agregación de súa solicitude do mesmo xeito, 155 00:07:55,170 --> 00:07:57,230 e envialo vía IP, que, sei, podería 156 00:07:57,230 --> 00:08:00,880 levar a algún tipo de loop infinito de todos descartar paquetes no camiño. 157 00:08:00,880 --> 00:08:05,580 >> Pero basta dicir que o TCP di, eu estou falta un paquete. 158 00:08:05,580 --> 00:08:08,670 Necesito enviar información de volta ao remitente. 159 00:08:08,670 --> 00:08:12,025 Afortunadamente enderezo IP do remitente, tipo de, agasalhados na capa IP. 160 00:08:12,025 --> 00:08:15,780 É parte de-- é o retorno enderezo no sobre. 161 00:08:15,780 --> 00:08:18,800 E dicir, eu estou falta número do paquete dous, pode por favor volva a enviar. 162 00:08:18,800 --> 00:08:20,550 Cando o remitente recibe que a información, 163 00:08:20,550 --> 00:08:22,599 non ten que enviar Todo o correo electrónico de novo. 164 00:08:22,599 --> 00:08:25,390 El só precisa enviar ese individuo anaco del que faltaba, 165 00:08:25,390 --> 00:08:27,590 para que puidésemos enviar o número de paquetes dous. 166 00:08:27,590 --> 00:08:32,610 E cando recibe-lo, agora TCP di, Teño todos os catro anacos de datos 167 00:08:32,610 --> 00:08:34,100 que eu teño. 168 00:08:34,100 --> 00:08:39,590 Entón, podo monte-los xuntos, e levar todo ese bloque de información 169 00:08:39,590 --> 00:08:44,169 e pasalo para o porto 25, onde será interpretado como un e-mail. 170 00:08:44,169 --> 00:08:47,010 E isso-- deste xeito temos enviar un correo-e do emisor 171 00:08:47,010 --> 00:08:49,273 ao receptor utilizando TCP / IP. 172 00:08:49,273 --> 00:08:51,430 173 00:08:51,430 --> 00:08:54,180 Entón, como dixen, se nalgún momento ao longo do camiño algo deu mal, 174 00:08:54,180 --> 00:08:56,600 TCP pode tratar con isto. 175 00:08:56,600 --> 00:09:00,010 Pode facer unha solicitude para que o información envíase de volta para el. 176 00:09:00,010 --> 00:09:01,840 E pode reconstituir a mensaxe. 177 00:09:01,840 --> 00:09:05,090 E xa que é reconstruída a mensaxe de todos os paquetes é recibida, 178 00:09:05,090 --> 00:09:10,350 entón pode organiza-los e entrega-los para o servizo axeitado. 179 00:09:10,350 --> 00:09:11,990 >> Entón, iso é TCP en poucas palabras. 180 00:09:11,990 --> 00:09:14,550 É así que nós garante entrega de información. 181 00:09:14,550 --> 00:09:16,540 Teña en conta que do TCP frecuentemente traballa con IP, 182 00:09:16,540 --> 00:09:18,990 Polo tanto, estes dous protocolos realmente andan da man. 183 00:09:18,990 --> 00:09:22,160 Discutir-los en varios vídeos aquí, porque eles fan cousas diferentes, 184 00:09:22,160 --> 00:09:26,190 pero son tan interrelacionados, eles normalmente vai usalos xuntos. 185 00:09:26,190 --> 00:09:27,150 >> Eu son Doug Lloyd. 186 00:09:27,150 --> 00:09:29,160 Este é CS50. 187 00:09:29,160 --> 00:09:31,233