In deze les leer je de basis van de werking van het Internet.
Op deze pagina zie je hoe een website je de bestanden stuurt die je opvraagt en leer je een aantal termen die te maken hebben met het internet.
Het internet is een netwerk van onafhankelijke apparaten verspreid over de hele wereld die met elkaar verbonden zijn. Mensen gebruiken de termen "internet" en "wereldwijde web" door elkaar, maar dit zijn verschillende dingen. Het wereldwijde web (het "web") is de verzameling van onderling gelinkte documenten (zoals HTML-bestanden) die je bekijkt met een web-browser door het invoeren van een adres als http://bjc.berkeley.edu/website/privacy.html.
De meeste webpagina's zijn geschreven in HTML (HyperText Markup Language). Je browser vraagt webpagina's op bij een webserver met een protocol genaamd HTTP (Hypertext Transfer Protocol).
Een URL, of Uniform Resource Locator, is een adres om een webdocument te
vinden op een (web)server (een computer die data bewaart om anderen toegang tot deze data
te bieden). Een URL kun je splitsen in drie delen:
Het internet is veel algemener dan het wereldwijde web. Het bevat ook e-mail, bestandsoverdracht, mobiele apps, chat-programma's (zoals WhatsApp), en veel andere manieren om computers met elkaar te laten communiceren.
Een protocol is een verzameling afspraken en regels om communicatie goed te laten verlopen.
Een pakket is een kleine brok data: tekst, getallen, lijsten, enz.
Het internet is een gigantisch netwerk van computers dat communicatie over de gehele wereld verzorgt. Het doet dit vooral door gebruik te maken van een aantal protocollen (standaarden voor communicatie) waar je meer over zal leren in Les 2:
Het algoritme dat ervoor zorgt dat alle internetdata correct aankomt, moet blijven werken zolang het internet groeit. Dus is het internet ontworpen met de volgende twee ideeën in gedachte:
Denk aan een harde schrijf in een computer. Om informatie van of naar de schijf te sturen, moet de computer een magnetische kop naar de plek op de disk brengen waar de informatie is en wachten tot de disk naar de correcte positie draait. Dit hele proces kan allemaal meer dan een seconde duren. Die wachttijd is de latentie. Maar zodra de kop op de goeie plek staat, is de bandbreedte van de disk heel hoog. Hij schrijft dan met hoge snelheid gegevens op de schijf.
De snelheid van een systeem (zoals de bandbreedte en latentie van internet) is van invloed op hoe we het gebruiken. In de vroege dagen van internet was de bandbreedte traag, dus mensen konden geen video's versturen (alleen tekst en kleine afbeeldingen). In plaats van een video eerste helemaal te versturen en die daarna af te spelen kan een video ook gestreamd worden. Hierbij wordt een stukje van de video verstuurd en daarna wordt deze meteen afgespeeld, waarna het volgende stukje wordt verstuurd en afgespeeld. Zo kan een gehele video gekeken worden zonder te wachten tot de hele video aangekomen is. Video's streamen vereist een hogere bandbreedte maar kan een hogere latentie tolereren. Als je internetverbinding een hoge latentie heeft, zal je computer bij het streamen van een video een aantal seconden de video bufferen (van tevoren downloaden) voordat deze begint met afspelen, zodat de video niet hoeft te pauzeren wanneer wellicht de gegevens opraken.
De grootte van een systeem heeft ook invloed op hoe het wordt gebruikt. In de begindagen van computers waren computers enorm en duur, dus gingen mensen naar het computercentrum van hun bedrijf of plaatselijke universiteit om hun berekeningen uit te voeren. Naarmate computers kleiner en efficiënter werden, werden gecentraliseerde computercentra veel minder belangrijk omdat mensen berekeningen konden uitvoeren op hun persoonlijke machines. Maar tegenwoordig, vereisen bepaalde soorten berekeningen (zoals zoekopdrachten op het web en spraakherkenning) meer rekenkracht, en deze taken worden in plaats daarvan naar grote computercentra gestuurd die worden beheerd door bedrijven zoals Google en Amazon, waar tienduizenden computers samen aan een probleem werken. Je hebt nog steeds een computer aan je bureau (of in je hand), maar sommige van de programma's draaien eigenlijk op een groep computers op een van deze gecentraliseerde computerboerderijen.
Deze computercentra samen worden vaak de cloud genoemd. Je gebruikt de cloud al dit hele vak: al je Snap!-projecten staan in de cloud.
Data opslaan in de cloud betekent dat het ergens opgeslagen moet zijn op het internet, maar je weet niet waar precies. De cloud service provider (bijvoorbeeld Google Drive of Dropbox) zorgen voor de echte opslaglocatie.
Door data op te slaan in de cloud kan je makkelijk bestanden delen, maar het verhoogt wel het aantal veiligheidsrisico's. Als iemand je wachtwoord ontdekt dan kunnen ze bij al je gegevens. Of iemand onderschept de data terwijl ze naar de cloud worden gestuurd