1 00:00:00,000 --> 00:00:04,884 2 00:00:04,884 --> 00:00:08,050 DOUG LLOYD: Yn y fideo hwn rydym yn mynd i siarad am y Rheoli Trosglwyddo 3 00:00:08,050 --> 00:00:10,440 Protocol, TCP. 4 00:00:10,440 --> 00:00:13,290 Os nad ydych wedi gwylio'r 'n fideo ar protocol rhyngrwyd, IP, 5 00:00:13,290 --> 00:00:15,290 efallai y byddwch yn dymuno gwneud hynny cyn gwylio'r fideo hwn 6 00:00:15,290 --> 00:00:18,680 oherwydd bod y ddau yn eithaf cydberthyn. 7 00:00:18,680 --> 00:00:21,100 >> Felly, mae'r protocol rhyngrwyd, unwaith eto, crynodeb cyflym, 8 00:00:21,100 --> 00:00:22,930 dyna'r protocol sy'n symud gwybodaeth 9 00:00:22,930 --> 00:00:28,210 o beiriant anfon at derbyn peiriant drwy'r rhwydwaith. 10 00:00:28,210 --> 00:00:29,720 >> Felly beth TCP? 11 00:00:29,720 --> 00:00:33,310 Tra bod ychydig symud o anfon peiriant i dderbyn peiriant, 12 00:00:33,310 --> 00:00:35,120 Nid yw'r stori lawn. 13 00:00:35,120 --> 00:00:38,040 Rydym hefyd yn gwybod bod ein rhaglen, ein cyfrifiaduron, er enghraifft, 14 00:00:38,040 --> 00:00:41,000 yn rhedeg rhaglenni lluosog, a chael gwasanaethau lluosog 15 00:00:41,000 --> 00:00:45,140 rhedeg ar beiriannau hynny. 16 00:00:45,140 --> 00:00:51,750 Ac felly, os ydym am gael pecyn, neu wybodaeth i raglen benodol, 17 00:00:51,750 --> 00:00:54,590 ar beiriant penodol, mae angen mwy o wybodaeth 18 00:00:54,590 --> 00:00:59,490 na dim ond yr hyn y IP yn ein galluogi i gael gwybodaeth o bwynt A i bwynt B. 19 00:00:59,490 --> 00:01:02,390 >> Felly, gall TCP yn cael ei meddwl fel cyfarwyddo'r pecyn 20 00:01:02,390 --> 00:01:07,590 i'r rhaglen gywir, neu'r cywir gwasanaeth, ar y peiriant derbyn. 21 00:01:07,590 --> 00:01:11,810 Ac felly mae'n bwysig eich bod, fel y gallai yn disgwyl, yn gwybod ble mae'n fod i fynd, 22 00:01:11,810 --> 00:01:14,550 a beth y pecyn yn am ar yr un pryd. 23 00:01:14,550 --> 00:01:18,370 Ac felly, yn aml, pan fyddwch yn siarad am protocol rheoli trosglwyddo, TCP, 24 00:01:18,370 --> 00:01:23,900 chi wir yn aml yn clywed yn y cyd-destun, TCP IP slaes, neu dim ond TCP / IP. 25 00:01:23,900 --> 00:01:27,639 Mae'r ddau protocolau mor cydberthynol bod, eu bod yn y bôn 26 00:01:27,639 --> 00:01:28,680 trin fel un uned. 27 00:01:28,680 --> 00:01:31,630 Ond maent yn ddau phrotocolau ar wahân bod yn gwneud dau beth ar wahân. 28 00:01:31,630 --> 00:01:36,690 >> Unwaith eto, IP yn gyfrifol am gael rhag un peiriant i'r llall. 29 00:01:36,690 --> 00:01:41,250 A TCP yn gyfrifol am ei gael ar y rhaglen gywir, 30 00:01:41,250 --> 00:01:43,490 neu'r gwasanaeth cywir ar beiriant. 31 00:01:43,490 --> 00:01:45,500 Ac mae'n gwneud rhywbeth arall nad IP yw'n gwneud, 32 00:01:45,500 --> 00:01:48,600 sydd yn cyflenwi warant. 33 00:01:48,600 --> 00:01:55,060 >> Felly, os ydym yn awr yn gwpl IP peiriant yn mynd i'r afael â'r nifer porthladd fel y'i gelwir, 34 00:01:55,060 --> 00:01:58,750 ac mae nifer porthladd yw sut mae benodol gwasanaeth, neu cyfleustodau, neu raglen, 35 00:01:58,750 --> 00:02:00,350 yn cael ei nodi ar beiriant. 36 00:02:00,350 --> 00:02:03,920 Os ydym yn awr yn cael IP cyfeiriad yn ogystal â nifer porthladd, 37 00:02:03,920 --> 00:02:07,240 Erbyn hyn gallwn nodi unigryw gwasanaeth penodol 38 00:02:07,240 --> 00:02:09,479 rhedeg ar beiriant arbennig. 39 00:02:09,479 --> 00:02:11,920 >> Felly dyna pam TCP a IP yn felly cydberthyn yn aml, 40 00:02:11,920 --> 00:02:14,170 gan fod y rhif porth ar ei ben ei hun nid yw'n wir yn 41 00:02:14,170 --> 00:02:17,670 golygu unrhyw beth os ydych angen rhif porth, a'r peiriant 42 00:02:17,670 --> 00:02:19,566 eich bod yn sôn amdano. 43 00:02:19,566 --> 00:02:24,060 Pa peiriant i fod i gael ei ddefnyddio y porthladd penodol, er enghraifft. 44 00:02:24,060 --> 00:02:28,350 >> Y peth arall y TCP yn ei wneud, fel y Dywedais, a yw'n gwarantu cyflwyno. 45 00:02:28,350 --> 00:02:30,810 Felly, yn ychwanegol at gan nodi rhif y porth, 46 00:02:30,810 --> 00:02:34,640 mae hefyd yn dangos faint o pecynnau, mae'r protocol rhyngrwyd, IP, 47 00:02:34,640 --> 00:02:36,110 wedi rhannu'r data i mewn. 48 00:02:36,110 --> 00:02:41,200 Ac mae'n gorchymyn pecynnau rhai fel eu bod yn Gellir ei hailadeiladu ar y derbyn 49 00:02:41,200 --> 00:02:45,820 peiriant, hyd yn oed os ydynt received-- mewn trefn wahanol nag y maent yn eu hanfon. 50 00:02:45,820 --> 00:02:48,460 A all ddigwydd oherwydd bod IP yn brotocol connectionless, 51 00:02:48,460 --> 00:02:52,610 ac felly gall gwahanol becynnau cymryd llwybrau gwahanol drwy'r system. 52 00:02:52,610 --> 00:02:53,660 53 00:02:53,660 --> 00:02:55,865 >> Mae rhai o'r rhifau porthladd hyn yn a ddefnyddir yn gyffredin iawn, 54 00:02:55,865 --> 00:02:57,990 ac maen nhw wedi cael eu safoni ar draws yr holl gyfrifiaduron, 55 00:02:57,990 --> 00:03:00,500 fel, 'n bert lawer pob gwneuthurwr cyfrifiadur yn awr. 56 00:03:00,500 --> 00:03:03,612 Felly rywbeth o'r enw FTP, mae'r protocol trosglwyddo ffeiliau, 57 00:03:03,612 --> 00:03:05,820 sy'n cael ei ddefnyddio i drosglwyddo ffeiliau, fel y gallech ddisgwyl, 58 00:03:05,820 --> 00:03:10,060 o un peiriant i'r llall, sy'n defnyddio porthladd 21 confensiynol. 59 00:03:10,060 --> 00:03:13,000 E-bost, SMTP, yn defnyddio porthladd 25. 60 00:03:13,000 --> 00:03:16,070 DNS, y system enw parth, yr ydym siarad am yn ein primer y rhyngrwyd 61 00:03:16,070 --> 00:03:17,976 fideo, yn defnyddio porthladd 53. 62 00:03:17,976 --> 00:03:20,100 Os ydych yn pori erioed y we, rydych yn 'n bert lawer 63 00:03:20,100 --> 00:03:23,440 bob amser yn defnyddio porth 80, oni bai eich bod yn pori'r we yn ddiogel, 64 00:03:23,440 --> 00:03:26,060 pori ar y we yn ddiogel, gan ddefnyddio porthladd 443. 65 00:03:26,060 --> 00:03:28,610 66 00:03:28,610 --> 00:03:30,790 >> Felly beth TCP broses hon / IP? 67 00:03:30,790 --> 00:03:33,730 Beth sy'n digwydd gyda'r ddau protocolau hyn ynghyd? 68 00:03:33,730 --> 00:03:35,520 Wel, gadewch i ni siarad am y peth. 69 00:03:35,520 --> 00:03:39,420 Pan fydd rhaglen am anfon data, TCP yn helpu i dorri i mewn i ddarnau, 70 00:03:39,420 --> 00:03:42,700 ac yn cyfathrebu pecynnau hynny i meddalwedd rhwydweithiol y cyfrifiadur. 71 00:03:42,700 --> 00:03:45,850 Felly mae'n cymryd y data ac mae'n wraps gwybodaeth o'i gwmpas 72 00:03:45,850 --> 00:03:48,700 sy'n dangos yr hyn y porthladd i fod i fynd i, 73 00:03:48,700 --> 00:03:52,500 a pha drefn y paced allan o'r holl. 74 00:03:52,500 --> 00:03:56,940 Felly gwnewch yn paced un o 10, dau o 10, tri o 10, ac yn y blaen. 75 00:03:56,940 --> 00:04:01,750 >> IP yn cael rhai darnau data sy'n wedi cael eu lapio gyda TCP, 76 00:04:01,750 --> 00:04:06,447 a wraps mwy o wybodaeth am lle y pecyn i fod i fynd. 77 00:04:06,447 --> 00:04:08,780 Efallai y byddwn yn galw hyn yn IP haenau o amgylch y pecyn. 78 00:04:08,780 --> 00:04:11,210 Felly, mae'n fath o, fel, un o'r doliau nythu hynny. 79 00:04:11,210 --> 00:04:14,780 Mae gennym y data yn y canol, ac yna TCP ar ben, 80 00:04:14,780 --> 00:04:17,920 yn dweud ei fod ble mae'r data y tu mewn o TCP yn 81 00:04:17,920 --> 00:04:22,150 fod i fynd, i ba borthladd neu pa wasanaeth ar beiriant. 82 00:04:22,150 --> 00:04:25,110 O gwmpas hynny yw'r haen IP. 83 00:04:25,110 --> 00:04:29,230 Pa gyfeiriad IP, pa peiriant, mewn gwirionedd yn cael hyn. 84 00:04:29,230 --> 00:04:32,070 >> Felly, yna, fod pecyn sy'n bod lapio gyda phob haenau hynny, 85 00:04:32,070 --> 00:04:35,250 yn cael ei anfon drwy protocol rhyngrwyd drwy'r system o llwybryddion, cael 86 00:04:35,250 --> 00:04:39,960 o bwynt A i bwynt B. Pan fydd y derbyn peiriant, neu ddyfais, yn cael 87 00:04:39,960 --> 00:04:42,790 y peth, mae'n edrych ar yr IP haen, mae'n ei ddweud, yup dyna 88 00:04:42,790 --> 00:04:45,260 fy cyfeiriad IP, felly mae'n cymryd off, math o craciau yr wy, 89 00:04:45,260 --> 00:04:47,380 ac yn cymryd oddi ar yr haen IP. 90 00:04:47,380 --> 00:04:49,530 Yna, mae'n gweld bod yna haen TCP, ac mae'n ei ddweud, 91 00:04:49,530 --> 00:04:52,720 OK, yn edrych fel hyn yn mynd i'r porthladd x, neu borthladd y. 92 00:04:52,720 --> 00:04:55,842 Ac i bob golwg mae'n paced wythwr o 15. 93 00:04:55,842 --> 00:04:56,800 Felly dyna braf gwybod. 94 00:04:56,800 --> 00:05:01,240 Felly, yna gall gymryd y wybodaeth honno, cymryd oddi ar yr haen TCP yn awr, 95 00:05:01,240 --> 00:05:04,410 gan wybod ei bod yn ar gyfer porthladd x, ac mae'n paced rhif wyth, 96 00:05:04,410 --> 00:05:06,270 a chael ar y data y tu mewn. 97 00:05:06,270 --> 00:05:09,460 A gall baratoi'r data i yn cael eu trefnu yn y ffordd gywir. 98 00:05:09,460 --> 00:05:11,449 Ac unwaith pob un o'r data yn cael ei dderbyn, TCP 99 00:05:11,449 --> 00:05:13,990 Gall rhowch hi i ffwrdd i'r cywir gwasanaeth, ac yn dweud, dyma i chi fynd. 100 00:05:13,990 --> 00:05:16,107 Dyma y data yr ydych yn eu derbyn. 101 00:05:16,107 --> 00:05:17,940 Gallai hynny proses edrych rhywbeth fel hyn. 102 00:05:17,940 --> 00:05:21,392 Felly gadewch i ni anfon e-bost oddi wrth anfonwr i dderbynnydd. 103 00:05:21,392 --> 00:05:23,100 A gadewch i ni yn dweud hyn e-bost yn eithaf bach, 104 00:05:23,100 --> 00:05:25,975 felly dim ond angen i ni ei dorri i mewn pedwar pecynnau, a byddwn yn A yn eu galw, 105 00:05:25,975 --> 00:05:29,460 B, C, a D. Wel, rydym am symud y pecyn cyntaf beth sy'n digwydd? 106 00:05:29,460 --> 00:05:34,491 Wel, rydym yn cymryd y darn o ddata, mae'r data sy'n rhan o becyn A, 107 00:05:34,491 --> 00:05:38,500 ac o amgylch yr ydym yn mynd i lapio â haen TCP. 108 00:05:38,500 --> 00:05:41,670 E-byst, efallai y byddwch yn cofio, yn cael eu hanfon drwy borthladd 25, 109 00:05:41,670 --> 00:05:46,181 ac mae gennym bedwar darnau o ddata, yma, ein bod yn mynd i fod yn defnyddio, 110 00:05:46,181 --> 00:05:47,430 ac mae hyn yw'r cyntaf ohonynt. 111 00:05:47,430 --> 00:05:50,013 Felly efallai ein haen TCP cynnwys gwybodaeth am, yn dda, rydym yn 112 00:05:50,013 --> 00:05:56,060 mynd i'r porthladd 25, ac mae hyn yw rhif paced un o bedwar. 113 00:05:56,060 --> 00:05:59,280 >> O amgylch hynny, felly erbyn hyn mae gennym bob un sy'n Gwybodaeth bwndelu fyny at ei gilydd, 114 00:05:59,280 --> 00:06:03,000 rydym yn mynd i ddweud ble rydym am ei gael i fynd, beth peiriant, pa gyfeiriad IP 115 00:06:03,000 --> 00:06:04,910 i fod i gael pecyn hwn. 116 00:06:04,910 --> 00:06:06,604 A dyna rhan o'r haen IP. 117 00:06:06,604 --> 00:06:08,770 Ac mae gwybodaeth arall yn yno hefyd, megis 118 00:06:08,770 --> 00:06:11,300 fel y cyfeiriad dychwelyd yn achos rhywbeth yn mynd o'i le, 119 00:06:11,300 --> 00:06:14,390 ei fod yn gwybod ble i anfon gwybodaeth yn ôl, ac yn y blaen. 120 00:06:14,390 --> 00:06:16,475 >> Ond mae'r haen IP yn mynd o amgylch hynny i gyd. 121 00:06:16,475 --> 00:06:19,860 Bod peth cyfan yn cael ei bwndelu gyda'i gilydd, fel un uned fawr, 122 00:06:19,860 --> 00:06:22,080 a'u hanfon drwy drosglwyddo IP. 123 00:06:22,080 --> 00:06:26,180 Felly mae'n mynd gyfeirio drwy'r llwybrydd rhwydwaith, gan ddefnyddio protocol y rhyngrwyd. 124 00:06:26,180 --> 00:06:28,700 Ac mae'r derbynnydd yn derbyn y peth cyfan. 125 00:06:28,700 --> 00:06:31,910 Ac yna gall ddechrau i ddadadeiladu yr hyn sy'n digwydd yma. 126 00:06:31,910 --> 00:06:36,030 Mae'n edrych ar yr haen IP, mae'r haen y tu allan i'r data hwn, 127 00:06:36,030 --> 00:06:38,560 ac yn dweud, yep, dyna fy IP cyfeiriad er mwyn i ni daflu hynny. 128 00:06:38,560 --> 00:06:40,685 Gallaf, math o, anwybyddu, nid oes angen ei anymore, 129 00:06:40,685 --> 00:06:42,480 a gall edrych un lefel yn ddyfnach. 130 00:06:42,480 --> 00:06:47,590 Mae'n gweld bod, OK, mae hyn yn ddata y bwriedir ei dderbyn ar borthladd 25. 131 00:06:47,590 --> 00:06:50,560 Mae'n debyg y rhan gyntaf o bedwar. 132 00:06:50,560 --> 00:06:54,260 Felly, dwi'n mynd i gadw hynny mewn meddwl, ac yn edrych ar y data, 133 00:06:54,260 --> 00:06:57,349 a slotio ei fras lle Rwy'n credu ei fod yn mynd i fynd. 134 00:06:57,349 --> 00:07:00,140 Yn awr, oherwydd y protocol rhyngrwyd nid yw'n reidrwydd yn wir 135 00:07:00,140 --> 00:07:03,442 bod y pecyn nesaf y derbynnydd yn cael, yw pecyn dau. 136 00:07:03,442 --> 00:07:05,150 Yn wir, mae'r nesaf beth y derbynnydd yn cael 137 00:07:05,150 --> 00:07:08,230 allai fod yn rhif paced tri oherwydd bod pecynnau hyn 138 00:07:08,230 --> 00:07:11,777 Cymerodd gwahanol lwybrau oherwydd traffig gwahanol ar y rhwydwaith. 139 00:07:11,777 --> 00:07:14,360 Ac felly, nid wyf i'n mynd i fynd trwy y diagram o adeiladu ei 140 00:07:14,360 --> 00:07:17,560 i fyny eto, ond pecyn tri yn symud, yn cael ei dynnu i ffwrdd 141 00:07:17,560 --> 00:07:20,410 o'i holl haenau, y Haen IP, yr haen TCP, 142 00:07:20,410 --> 00:07:22,420 ac mae'r data yn cael ei roi yn y fan a'r lle cywir. 143 00:07:22,420 --> 00:07:25,200 Ac yna, gadewch i ni ddweud ei fod yn derbyn pecyn pedwar. 144 00:07:25,200 --> 00:07:29,290 >> Nawr, gadewch i ni ddweud, dyna ni, mae'n nid yw'n cael unrhyw mwy o ddata. 145 00:07:29,290 --> 00:07:30,300 Beth mae'n mynd i'w wneud? 146 00:07:30,300 --> 00:07:32,110 Nid IP yn gwneud unrhyw beth i ni. 147 00:07:32,110 --> 00:07:33,260 Ond mae TCP yn ei wneud. 148 00:07:33,260 --> 00:07:38,250 TCP a ŵyr, yn dda, rydw i wedi derbyn un o pedwar, tri o bedwar, a phedwar o bedwar. 149 00:07:38,250 --> 00:07:41,100 Dydw i ddim yn cael unrhyw mwy o ddata. 150 00:07:41,100 --> 00:07:43,770 Felly rhywbeth wedi mynd o'i le. 151 00:07:43,770 --> 00:07:45,050 Ond gallaf warantu cyflenwi. 152 00:07:45,050 --> 00:07:49,300 Gwn fod pecyn rhif dau ar goll. 153 00:07:49,300 --> 00:07:52,470 Ac felly gall TCP yn awr yn gwneud cais, math o, yn y cyfeiriad arall. 154 00:07:52,470 --> 00:07:55,170 Bwndelu i fyny ei gais yn yr un modd, 155 00:07:55,170 --> 00:07:57,230 a'i hanfon trwy IP, sydd, yr wyf yn gwybod, gallwn 156 00:07:57,230 --> 00:08:00,880 arwain at ryw fath o dolen ddiddiwedd o pawb gollwng pecynnau ar y ffordd. 157 00:08:00,880 --> 00:08:05,580 >> Ond digon yw dweud bod TCP yn dweud, Im 'yn colli paced. 158 00:08:05,580 --> 00:08:08,670 Angen i mi anfon gwybodaeth yn ôl i'r anfonwr. 159 00:08:08,670 --> 00:08:12,025 Yn ffodus cyfeiriad IP yr anfonwr yw, math o, bwndelu i fyny yn yr haen IP. 160 00:08:12,025 --> 00:08:15,780 Mae'n rhan o- ei fod yn y ffurflen mynd i'r afael ar yr amlen. 161 00:08:15,780 --> 00:08:18,800 A dweud, Im 'ar goll rhif paced dau, gallwch chi os gwelwch yn dda ailanfon ef. 162 00:08:18,800 --> 00:08:20,550 Pan fydd yr anfonwr yn derbyn wybodaeth honno, 163 00:08:20,550 --> 00:08:22,599 nid oes rhaid iddo anfon yr e-bost cyfan eto. 164 00:08:22,599 --> 00:08:25,390 Dim ond angen i anfon unigolyn hwnnw darn ohoni sydd ar goll, 165 00:08:25,390 --> 00:08:27,590 er mwyn i ni anfon pecyn rhif dau. 166 00:08:27,590 --> 00:08:32,610 A phan fydd yn ei gael, yn awr TCP yn dweud, Mae gen i bob un o'r pedwar darn o ddata 167 00:08:32,610 --> 00:08:34,100 fod angen imi. 168 00:08:34,100 --> 00:08:39,590 Felly, gallaf eu cydosod gyda'i gilydd, a cymryd y bloc cyfan o wybodaeth 169 00:08:39,590 --> 00:08:44,169 ac yn ei throsglwyddo draw i borthladd 25, lle y bydd yn cael ei ddehongli fel e-bost. 170 00:08:44,169 --> 00:08:47,010 Ac that-- yn y modd hwn rydym wedi yn awr yn anfon e-bost gan anfonwr 171 00:08:47,010 --> 00:08:49,273 i derbynnydd gan ddefnyddio TCP / IP. 172 00:08:49,273 --> 00:08:51,430 173 00:08:51,430 --> 00:08:54,180 Felly, fel y dywedais, os ar unrhyw adeg ar hyd y ffordd aeth rhywbeth o'i le, 174 00:08:54,180 --> 00:08:56,600 Gall TCP ddelio ag ef. 175 00:08:56,600 --> 00:09:00,010 Gall wneud cais i'r gwybodaeth yn cael ei anfon yn ôl ato. 176 00:09:00,010 --> 00:09:01,840 A gall ail-greu y neges. 177 00:09:01,840 --> 00:09:05,090 Ac ar ôl ei ail-greu y neges o'r holl bacedi 'i' i law, 178 00:09:05,090 --> 00:09:10,350 yna gall eu trefnu ac eu cyflwyno i'r gwasanaeth cywir. 179 00:09:10,350 --> 00:09:11,990 >> Felly dyna TCP yn gryno. 180 00:09:11,990 --> 00:09:14,550 Dyna sut rydym yn gwarantu cyflwyno gwybodaeth. 181 00:09:14,550 --> 00:09:16,540 Cofiwch y TCP yn aml yn gweithio gyda IP, 182 00:09:16,540 --> 00:09:18,990 felly y ddau protocolau wir yn mynd law yn llaw. 183 00:09:18,990 --> 00:09:22,160 Buom yn trafod nhw mewn sawl fideos yma am eu bod yn gwneud pethau gwahanol, 184 00:09:22,160 --> 00:09:26,190 ond maen nhw mor rhyngberthynol, maent yn byddwch fel arfer yn eu defnyddio gyda'i gilydd. 185 00:09:26,190 --> 00:09:27,150 >> Rwy'n Doug Lloyd. 186 00:09:27,150 --> 00:09:29,160 Mae hyn yn CS50. 187 00:09:29,160 --> 00:09:31,233