DOUG LLOYD: In deze video gaan we om te praten over het Transmission Control Protocol, TCP. Als u nog niet keek naar de video over internet protocol, IP, u wenst te doen voor het bekijken van deze video omdat de twee zijn vrij met elkaar verbonden. Dus, het internetprotocol, nogmaals, een korte samenvatting, dat is het protocol die beweegt informatie uit een verzendende machine naar een ontvangend machine via het netwerk. Dus wat is TCP? Terwijl slechts het verplaatsen van een verzenden machine op het ontvangen van de machine, is niet het volledige verhaal. We weten ook dat ons programma, onze computers, bijvoorbeeld, lopen meerdere programma's, en meerdere diensten die op deze machines. En dus, als we willen een pakket te krijgen, of gegevens van een specifiek programma, op een specifieke machine, we meer informatie nodig dan precies wat IP stelt ons in staat om Informatie van punt A naar punt B. Dus, kan TCP worden gedacht als de leiding van het pakket het juiste programma of de juiste service, op de ontvangende machine. En dus is het belangrijk om, zoals je misschien verwachten, weet waar het hoort te gaan, en wat het pakket voor tezelfdertijd. En zo vaak, als je praat over zendbesturingsprotocol, TCP, je echt vaak horen in de context, TCP slash IP, of gewoon TCP / IP. Beide protocollen zijn zo met elkaar verbonden dat ze in feite behandeld als een enkele eenheid. Maar ze zijn twee verschillende protocollen dat te doen twee verschillende dingen. Nogmaals, IP verantwoordelijk voor het verkrijgen van van de ene machine naar de andere. En TCP verantwoordelijk voor krijgen van het juiste programma, of de juiste dienst op een machine. En het iets doet anders dat IP niet doet, die garantie levering. Dus als we nu een paar IP-machine adres van de zogenaamde poortnummer en een poortnummer hoe een specifieke dienst of nut, of programma, geïdentificeerd op een machine. Als we nu een IP- adres plus een poortnummer, nu kunnen we unieke identificatie een bepaalde dienst die op een bepaalde machine. Dus dat is waarom TCP en IP zijn zo vaak met elkaar verbonden, want dat poortnummer op zich niet echt iets betekenen als u een poortnummer, en de machine dat je het over hebt. Wat machine wordt verondersteld te gebruiken deze specifieke poort, bijvoorbeeld. Het andere ding dat TCP doet, als Ik zei, is het garandeert levering. Dus, naast met vermelding van het poortnummer, Het geeft ook aan hoeveel pakketten, het internetprotocol, IP, heeft de gegevens gesplitst in. En beveelt die pakketjes, zodat ze kan worden gereconstrueerd op het ontvangende machine, zelfs wanneer zij in een received-- andere volgorde dan ze werden verzonden. Wat kan gebeuren, omdat IP- is een protocol zonder verbinding, en zo verschillende pakketten kan nemen verschillende paden door het systeem. Sommige van deze poortnummers zijn zeer vaak gebruikt, en ze zijn gestandaardiseerd voor alle computers, zoals, vrijwel elke computerfabrikant nu. Dus iets genaamd FTP, het File Transfer Protocol, die wordt gebruikt voor het verzenden bestanden, zoals je zou verwachten, van de ene machine naar de andere, dat gebruikt poort 21 conventioneel. E-mail, SMTP, gebruikt poort 25. DNS, het Domain Name System, waarmee we over gesproken in onze internet primer video, gebruikt poort 53. Als u ooit surft het web, je bent vrij veel altijd via poort 80, tenzij je surfen op het web veilig, veilig surfen op het web, via poort 443. Dus wat is het TCP / IP-proces? Wat gebeurt er met beide van deze protocollen bij elkaar? Nou, laten we erover praten. Wanneer een programma wil om gegevens te verzenden, TCP helpt breken in stukken, en communiceert deze pakketten naar software van de computer netwerk. Dus het duurt de gegevens en het wraps informatie eromheen die aangeeft welke poort wordt verondersteld te gaan, en wat opdat pakket uit alle. Dus maak een pakket van 10, twee van 10, 10 drie, enzovoort. IP krijgt die gegevens brokken die zijn omwikkeld met TCP, wraps en meer informatie over waar het pakket is daarheen. We zouden dit het IP bellen lagen rond het pakket. Dus, het is een soort van, zoals, een van die poppen. We hebben de gegevens in de midden, en vervolgens tcp op de top van, het vertellen waar de data binnen van TCP daarheen, naar welke poort of welke dienst op een machine. Daaromheen is de IP-laag. Wat IP-adres, wat de machine, is dit ook daadwerkelijk krijgt. Zo dan, dat pakket dat is geweest omwikkeld met alle lagen, wordt door middel van internet protocol gestuurd via het systeem van routers, krijgen van punt A naar punt B. Wanneer de ontvangende machine of apparaat, krijgt het, het kijkt naar het IP- laag, het zegt, yup dat is mijn IP adres, dus het duurt off, een soort van scheuren het ei, en neemt van de IP-laag. Dan ziet hij dat er een TCP laag, en het zegt, OK, lijkt erop dat dit ga naar de haven x, y of haven. En blijkbaar is het pakket nummer acht van de 15. Dus dat is goed om te weten. Dus dan kan die informatie te nemen, opstijgen van de TCP laag nu, wetende dat het voor poort x, en het is pakket nummer acht, en krijgen op de gegevens binnen. En kan de gegevens voorbereiden op de juiste wijze worden georganiseerd. En zodra alle van de data wordt ontvangen, TCP kan het met de hand uit om de juiste service, en zeggen: hier ga je. Hier is de data die u heeft ontvangen. Dat proces zou kunnen kijken iets zoals dit. Dus laten we sturen een e-mail uit een zender naar een ontvanger. En laten we zeggen e-mail is vrij klein, dus moeten we alleen maar om het te breken in vier pakketten, en we zullen ze een gesprek, B, C en D. Nou, we willen verhuizen dat eerste pakket wat gebeurt er? Nou, we nemen dat stuk van de gegevens, de gegevens die deel uitmaakt van pakket A, en rond dat we gaan om het te verpakken met een TCP laag. E-mails, kunt u herinneren, via poort 25 worden verzonden, en we hebben vier stukken van gegevens, hier, dat we gaan gebruiken, en dit is de eerste van hen. Dus misschien onze TCP laag bevat Informatie over, nou ja, we zijn zal poort 25, en dit is packet nummer één van de vier. Rond dat, dus nu hebben we al die informatie gebundeld samen, we gaan om te zeggen waar we willen het te gaan, wat de machine, wat het IP-adres wordt verondersteld om dit pakket te krijgen. En dat is een deel van de IP-laag. En er is meer informatie daar ook, zoals als het retouradres in het geval er iets mis gaat, het weet waar te sturen informatie weer, enzovoorts. Maar de IP-laag gaat rond dat alles. Dat hele ding is gebundeld samen, als één grote eenheid, en verzonden via een IP-overdracht. Dus het wordt omgeleid via de router netwerk, met behulp van internet protocol. En de ontvanger het hele ding. En dan kan het beginnen deconstrueren wat er hier gebeurt. Het ziet er op de IP-laag, de buitenlaag van deze gegevens, en zegt, yep, dat is mijn IP mailadres, zodat we kunnen negeren dat. Ik kan, een soort van, negeren, niet meer nodig, en het kan kijken een niveau dieper. Het ziet dat, OK, dit zijn gegevens die is bestemd om poort 25 te ontvangen. Het is blijkbaar het eerste deel van vier. Dus, ik ga te houden dat in geest, en kijk naar de data, en het slot is ongeveer waar Ik denk dat het gaat om te gaan. Nu, vanwege het internetprotocol het is niet per se het geval dat het volgende pakket van de ontvanger krijgt, is het pakket twee. In feite is de volgende wat de ontvanger krijgt zou pakketnummer worden drie omdat deze pakketten nam verschillende wegen door verschillende verkeer op het netwerk. En zo, ik ben niet van plan om te gaan door middel van het schema van bouwen opnieuw, maar packet drie beweegt, krijgt ontdaan weg van al de lagen, de IP-laag, de TCP laag, en de data wordt in de juiste plek. En dan, laten we zeggen dat het ontvangt pakket vier. Nu laten we zeggen, dat is het, het niet meer gegevens te krijgen. Wat gaat het doen? IP doet niets voor ons. Maar TCP doet. TCP weet, nou, ik heb een van de ontvangen vier, drie van de vier, en vier van vier. Ik krijg geen gegevens meer. Dus er is iets fout gegaan. Maar ik kan de levering garanderen. Ik weet dat pakket nummer twee ontbreekt. En dus TCP kan nu een verzoek te maken, soort, in omgekeerde richting. Bundeling van haar verzoek op vrijwel dezelfde manier, en op te sturen via IP, die, ik weet het, kon leiden tot een soort van oneindige lus van iedereen te laten vallen pakketten op de weg. Maar het volstaat te zeggen dat de TCP zegt, ik mis een pakket. Ik moet om informatie te sturen terug naar de afzender. Gelukkig is het IP-adres van de afzender is, soort, gebundeld in de IP-laag. Het is een deel van-- het is de terugkeer adres op de envelop. En zeg, ik mis pakket nummer twee, kunt u alstublieft opnieuw het. Wanneer de afzender ontvangt die informatie, het hoeft niet te sturen opnieuw de volledige e-mail. Het moet alleen naar die persoon sturen stuk dat ontbrak, dus we konden pakket nummer twee te sturen. En wanneer het wordt het, nu TCP zegt, Ik heb alle vier stukken van gegevens die ik nodig heb. Dus, ik kan ze samen monteren, en neem dit hele blok van informatie en geef het door aan poort 25, waar de het zal worden geïnterpreteerd als een e-mail. En dat-- op deze manier we hebben Nu stuur dan een e-mail van de afzender naar ontvanger via TCP / IP. Dus, zoals ik al zei, als op elk punt langs de weg iets mis ging, TCP kan behandelen. Het kan een verzoek dat de informatie wordt teruggestuurd naar het. En het kan het bericht te reconstrueren. En als het eenmaal is gereconstrueerd het bericht van alle pakketten deze is ontvangen, dan kan het hen organiseren en te leveren aan de juiste service. Dus dat is TCP in een notendop. Dat is hoe we garanderen levering van informatie. Denk aan de TCP vaak werkt met IP, dus deze beide protocollen echt gaan hand in hand. We bespraken ze in verschillende video's hier omdat ze verschillende dingen, maar ze zijn zo met elkaar verbonden, ze je meestal samen gebruiken. Ik ben Doug Lloyd. Dit is CS50.