DOUG LLOYD: In hierdie video wat ons gaan om te praat oor die Transmission Control Protokol, TCP. As jy nog nie gekyk video op die internet protokol, IP, wil jy dalk om dit te doen voor kyk na hierdie video omdat die twee is redelik interafhanklik. So, die internet-protokol, weer 'n vinnige opsomming, dit is die protokol wat beweeg inligting van 'n masjien stuur na 'n ontvangs masjien deur die netwerk. So, wat is TCP? Terwyl net die beweging van 'n stuur masjien ontvang masjien, is nie die volle verhaal. Ons weet ook dat ons program, ons rekenaars, byvoorbeeld, loop verskeie programme, en het verskeie dienste loop op die masjiene. En so, as ons wil 'n pakkie te kry, of inligting aan 'n spesifieke program, op 'n spesifieke masjien, ons meer inligting nodig as net wat IP ons toelaat om te kry inligting van punt A na punt B. So, kan TCP beskou word as die regie van die pakkie om die korrekte program, of die korrekte diens, op die ontvangs van die masjien. En daarom is dit belangrik om, as jy dalk verwag nie, weet waar dit veronderstel is om te gaan, en wat die pakkie is want op die dieselfde tyd. En so dikwels, wanneer jy praat oor Transmission Control Protocol, TCP, jy regtig dikwels hoor dit in die konteks, TCP streep IP, of net TCP / IP. Hierdie twee protokolle is so interafhanklik dat hulle is basies word as 'n enkele eenheid. Maar hulle is twee afsonderlike protokolle doen twee afsonderlike dinge. Weereens, IP is verantwoordelik vir om dit van 'n masjien na 'n ander. En TCP is verantwoordelik vir om dit na die korrekte program, of die korrekte diens op 'n masjien. En dit is iets doen anders wat IP dit nie doen nie, wat is waarborg aflewering. So, as ons nou egpaar IP 'n masjien se spreek met die sogenaamde poort nommer, en 'n poort nommer is hoe 'n spesifieke diens, of nut, of program, geïdentifiseer op 'n masjien. As ons nou 'n IP adres plus 'n poort nommer, nou kan ons uniek identifiseer 'n bepaalde diens loop op 'n spesifieke masjien. So dit is waarom TCP en IP is so dikwels interafhanklik, want die poort nommer op sy eie nie regtig beteken niks as jy nodig het 'n poort nommer, en die masjien wat jy praat. Wat masjien is veronderstel om gebruik hierdie spesifieke hawe, byvoorbeeld. Die ander ding wat TCP doen, soos Ek het gesê, is dit waarborg aflewering. So, bykomend tot vermelding van die poort nommer, dit dui ook hoeveel pakkies, die internet protokol, IP, het die data verdeel in. En dit beveel diegene pakkies, sodat hulle gerekonstrueer kan word op die ontvangs van masjien, selfs al is hulle in 'n received-- ander orde as hulle gestuur. Wat kan gebeur, omdat IP is 'n verbindinglose protokol, en so verskillende pakkies kan neem verskillende paaie deur die stelsel. Sommige van hierdie hawe getalle is baie algemeen gebruik word, en hulle het al gestandaardiseerde oor al die rekenaars, soos, pretty much elke rekenaar vervaardiger nou. So iets genoem FTP, die lêer oordrag protokol, wat gebruik word om te stuur lêers, soos jy kan verwag, van die een na die ander masjien, wat gebruik maak van die hawe 21 konvensioneel. E-pos, SMTP, gebruik port 25. DNS, die domein naam stelsel, wat ons gepraat oor in ons internet primer video, gebruik port 53. As jy ooit op die web, jy is pretty much altyd met behulp van die hawe 80, tensy jy op die web veilig, veilige webnavigatie, met behulp van die hawe 443. So, wat is hierdie TCP / IP proses? Wat gebeur met beide van hierdie protokolle saam? Wel, laat ons daaroor praat. Wanneer 'n program wil data te stuur, TCP help breek dit in stukke, en kommunikeer diegene pakkies om sagteware van die rekenaar se netwerk. So dit neem om die data en dit vou inligting rondom dit wat aandui wat die hawe veronderstel is om te gaan na, en wat sodat pakkie is uit al. So maak pakkie een van 10, twee van 10, drie van 10, en so aan. IP kry die data stukke wat is toegedraai met TCP, en vou meer inligting oor waar die pakkie is veronderstel om te gaan. Ons kan dit die IP noem lae rondom die pakkie. So, dit is soort van soos, een van daardie nes poppe. Ons het die data in die middel, en dan TCP op die top van, vertel dit waar die data binnekant van TCP is veronderstel is om te gaan, om watter hawe of wat diens op 'n masjien. Rondom wat die IP laag. Wat IP-adres, wat masjien, is hierdie eintlik om. So dan, dat pakkie dis nie toegedraai met al die lae, is deur middel van die internet protokol gestuur deur die stelsel van routers, kry van punt A na punt B. Wanneer die ontvangs masjien, of toestel, kry dit, dit lyk by die IP laag, dit sê, yup dis my IP-adres, so dit neem af, soort van krake die eier, en neem af die IP laag. Toe sien dit dat daar 'n TCP laag, en dit sê, OK, lyk soos hierdie is gaan na die hawe x, of hawe y. En blykbaar is dit pakkie nommer agt van 15. So dit is goed om te weet. So dan is dit dat die inligting te neem, neem uit die TCP laag nou, wetende dat dit vir die poort x, en dit is pakkie nommer agt, en kry aan die data binne. En dit kan die data voor te berei op die regte manier georganiseer word. En sodra al die data ontvang word, TCP kan dit aan die hand af om die korrekte diens, en sê, hier gaan. Hier is die data wat jy ontvang het. Dat die proses kan kyk iets soos hierdie. So laat stuur 'n e-pos van 'n sender na 'n ontvanger. En laat ons dit sê e-pos is redelik klein, so ons moet net om dit te breek in vier pakkies, en ons sal hulle 'n oproep, B, C, en D Wel, ons wil om te beweeg dat die eerste pakkie wat gebeur? Wel, neem ons aan dat deel van data, die data wat deel is van 'n pakkie, en om dat ons gaan om dit te draai met 'n TCP laag. E-pos, kan jy onthou, via poort 25 gestuur is, en ons het vier stukke van data, hier, dat ons gaan word met behulp van, en dit is die eerste van hulle. So miskien ons TCP laag bevat inligting oor, wel, ons is gaan na die hawe 25, en dit is pakkie nommer een van vier. Rondom daardie, so nou het ons alles wat inligting bundel saam, ons gaan om te sê waar ons dit wil hê om te gaan, wat masjien, wat IP-adres is veronderstel om hierdie pakkie kry. En dit is deel van die IP laag. En daar is ander inligting daar sowel, soos as die terugkeer adres in geval iets verkeerd gaan, dit weet waar om te stuur inligting terug, en so aan. Maar die IP laag gaan rondom dit alles. Dat die hele ding is saam saam as een groot eenheid, en gestuur word deur 'n IP-oordrag. So dit word gelei deur die router netwerk, met behulp van die internet protokol. En die ontvanger ontvang die hele ding. En dan kan dit begin dekonstrueer wat hier gebeur. Dit lyk op die IP laag, die buite laag van hierdie data, en sê, yep, dit is my IP adres, sodat ons kan weggooi nie. Ek kan, soort van, dit ignoreer, nie meer nodig het nie, en dit kan kyk een vlak dieper. Dit sien dat, OK, dit is data wat is bedoel op poort 25 te ontvang. Dit is blykbaar die eerste deel van vier. So, ek gaan hou dat in omgee, en kyk na die data, en die slot is dit rofweg waar Ek dink dit gaan om te gaan. Nou, as gevolg van die internet protokol dit is nie noodwendig die geval dat die volgende pakkie die ontvanger kry, is pakkie twee. In werklikheid, die volgende ding die ontvanger kry kan pakkie nommer drie omdat hierdie pakkies het verskillende paaie as gevolg van verskillende verkeer op die netwerk. En so, ek gaan nie om te gaan deur die diagram van die bou van dit weer, maar pakkie drie beweeg, kry gestroop weg van al sy lae, die IP laag, die TCP laag, en die data kry in die regte plek. En dan, kom ons sê dit ontvang pakkie vier. Nou laat ons sê, dit is dit, is dit nie meer data kry. Wat gaan dit doen? IP niks vir ons doen. Maar TCP doen. TCP weet, goed, ek het een van ontvang vier, drie of vier, en vier van vier. Ek kry nie meer data. So iets het verkeerd gegaan het. Maar ek kan die lewering waarborg. Ek weet dat pakkie nommer twee ontbreek. En so TCP kan nou 'n versoek te maak, soort, in die teenoorgestelde rigting. Bundeling up sy versoek in veel dieselfde manier, en stuur dit via IP, wat, ek weet, kon lei tot 'n soort van oneindige lus van almal val pakkies op die pad. Maar is dit voldoende om daardie TCP sê sê, ek mis 'n pakkie. Ek nodig het om inligting te stuur terug na die sender. Gelukkig IP adres van die sender se, soort, saam in die IP laag. Dit is deel of-- dit is die terugkeer spreek op die koevert. En sê ek mis pakkie nommer twee, kan jy asseblief weer gestuur word. Wanneer die sender ontvang daardie inligting, dit hoef nie te stuur weer die hele e-pos. Dit moet net dat individuele stuur stukkie van dit wat ontbreek is, sodat ons kan pakkie nommer twee te stuur. En wanneer dit kry dit nou TCP sê, Ek het al vier stukke van die data wat ek nodig het. So, ek kan hulle saam vergader, en neem hierdie hele blok van die inligting en slaag dit saam na die hawe 25, waar dit sal vertolk word as 'n e-pos. En that-- op hierdie manier ons het nou stuur 'n e-pos van sender om die ontvanger met behulp van die TCP / IP. So, soos ek gesê het, as by enige punt langs die pad iets verkeerd geloop het, TCP kan hanteer. Dit kan 'n versoek dat die inligting kry terug gestuur om dit te. En dit kan die boodskap te rekonstrueer. En nadat dit herbou die boodskap van al die pakkies dit ontvang het, dan kan dit vir hulle te organiseer en hulle lewer aan die regte diens. So dit is TCP in 'n neutedop. Dit is hoe ons waarborg lewering van inligting. Onthou die TCP gereeld werk met IP, so hierdie twee protokolle regtig gaan hand aan hand. Ons bespreek dit in verskeie video's hier omdat hulle doen verskillende dinge, maar hulle is so interafhanklik hulle jy gewoonlik saam gebruik. Ek is Doug Lloyd. Dit is CS50.