Slide 1

Slide 1 text

Netværk Distribuerede systemer på CBS, september 2015 DS-bogen, kapitel 2, 3 og 13

Slide 2

Slide 2 text

speakerdeck.com/kaspertidemann Mine slides til undervisningen ligger på Speaker Deck.

Slide 3

Slide 3 text

Hvad er et distribueret system?

Slide 4

Slide 4 text

Når to eller flere computere opfører sig som én.

Slide 5

Slide 5 text

Flere forskellige versioner af sandheden, der alle konvergerer mod den samme sandhed.

Slide 6

Slide 6 text

Akademisk definition. Men lad os være lidt mere praktiske.

Slide 7

Slide 7 text

No content

Slide 8

Slide 8 text

Client-server. Den mest udbredte model for hvordan to enheder taler med hinanden.

Slide 9

Slide 9 text

Peer-to-peer. Som I også kender som P2P fra BitTorrent med videre.

Slide 10

Slide 10 text

Hvad er en server? Lad os dykke lidt ned i det.

Slide 11

Slide 11 text

No content

Slide 12

Slide 12 text

No content

Slide 13

Slide 13 text

No content

Slide 14

Slide 14 text

En server kan både være et stykke metal og et program, der kører på en computer.

Slide 15

Slide 15 text

Webservere. Dem som serverer de sider, I går ind på i jeres browser.

Slide 16

Slide 16 text

No content

Slide 17

Slide 17 text

No content

Slide 18

Slide 18 text

No content

Slide 19

Slide 19 text

No content

Slide 20

Slide 20 text

Når I går ind på cbs.dk én gang, så går I derind 40 gange i træk.

Slide 21

Slide 21 text

Databaser. Anvendes næsten altid i en teknisk opsætning for at gemme data.

Slide 22

Slide 22 text

No content

Slide 23

Slide 23 text

No content

Slide 24

Slide 24 text

Servere som services. Vi jonglerer lidt med ordene.

Slide 25

Slide 25 text

No content

Slide 26

Slide 26 text

http://adresse/ressource/id Og bag hver ressource gemmer sig typisk mange forskellige komponenter.

Slide 27

Slide 27 text

Serviceorienteret arkitektur. Det har I måske læst som SOA et sted.

Slide 28

Slide 28 text

Hvad er en klient? Det er jo den anden del af client-server. Eller den første, rettere.

Slide 29

Slide 29 text

Enhver form for programmel, der ikke selv ejer sine ressourcer.

Slide 30

Slide 30 text

Tynde og tykke klienter. Et eksempel er fx et rejsekort og en mobiltelefon.

Slide 31

Slide 31 text

Netværk. Det er netværk, der binder træerne sammen.

Slide 32

Slide 32 text

Hvad er et netværk? I kender jo nok lidt til det, men lad os tage hul på det.

Slide 33

Slide 33 text

No content

Slide 34

Slide 34 text

No content

Slide 35

Slide 35 text

No content

Slide 36

Slide 36 text

Routere Switches Hubs Trådløse forbindelser

Slide 37

Slide 37 text

No content

Slide 38

Slide 38 text

No content

Slide 39

Slide 39 text

… i øvrigt har vi verdens bedste strømstik. … de sidder fast i væggen, jo!

Slide 40

Slide 40 text

Routere og hvad-har-vi sørger for at sende trafikken rundt.

Slide 41

Slide 41 text

No content

Slide 42

Slide 42 text

Når I besøger en hjemmeside, så går aldrig direkte ind på selve serveren, som den ligger på.

Slide 43

Slide 43 text

Routing er vores ven. Og det bygger Internettet på.

Slide 44

Slide 44 text

Packet switching. Store-and-forward-metoden går ud på ikke at etablere en fuldstændig forbindelse fra A til B, men blot videresende data fra A til den næste modtager i rækken, der så sørger for at videresende, der så sørger for at videresende indtil pakken fra A har nået B.

Slide 45

Slide 45 text

A B

Slide 46

Slide 46 text

Man havde stor militær interesse i at have flere veje til det samme sted.

Slide 47

Slide 47 text

A B

Slide 48

Slide 48 text

Hvorfor er det vigtigt? Netværk, routere, switches, alt muligt, hvilken betydning har det?

Slide 49

Slide 49 text

No content

Slide 50

Slide 50 text

No content

Slide 51

Slide 51 text

No content

Slide 52

Slide 52 text

KCG mistede $440 millioner på grund af en fejl. En lille sidebemærkning omkring Wall Street.

Slide 53

Slide 53 text

Et distribueret system er altid forsinket. Det er det, der definerer det.

Slide 54

Slide 54 text

Latency. Forsinkelse er essentielt.

Slide 55

Slide 55 text

No content

Slide 56

Slide 56 text

Ping-tider. Man kan pinge hinanden for at se om man er i live - og hvor hurtigt man får svar.

Slide 57

Slide 57 text

No content

Slide 58

Slide 58 text

Pause.

Slide 59

Slide 59 text

Protokoller. Beskrivelser af den måde, som teknologier fungerer på.

Slide 60

Slide 60 text

Request-for-comments. Det hele startede i universitetsmiljøet i USA.

Slide 61

Slide 61 text

No content

Slide 62

Slide 62 text

No content

Slide 63

Slide 63 text

No content

Slide 64

Slide 64 text

Protokoller er beskrivelser af hvordan noget fungerer. Det svarer til en opskrift når man laver mad.

Slide 65

Slide 65 text

I praksis taler man om en implementation. At man har implementeret en abstrakt definition af noget.

Slide 66

Slide 66 text

Internet protocol suite. Bedre kendt som TCP/IP.

Slide 67

Slide 67 text

ISO Open Systems Interconnection Model. Eller bare OSI-modellen.

Slide 68

Slide 68 text

I den alder lånte jeg bøger på biblioteket om TCP/IP og OSI-modellen.

Slide 69

Slide 69 text

En lagdelt, abstrakt beskrivelse af netværksprotokoller. Det svarer lidt til fx at tale om objektorienteret udvikling generelt.

Slide 70

Slide 70 text

Applikation Præsentation Session Transport Netværk Dataforbindelse Fysisk lag Afsender Modtager

Slide 71

Slide 71 text

Applikation Præsentation Session Transport Netværk Dataforbindelse Fysisk lag HTTP, FTP, SMTP SSL, TLS SIP, authentication, sessions TCP, UDP IP Ethernet MAC, PPP Kabler, ADSL, trådløse signaler

Slide 72

Slide 72 text

Hvert niveau indkapsler og sender videre. En form for decorator-pattern.

Slide 73

Slide 73 text

Først skriver man et brev. Så putter man det i en konvolut. Så sætter man frimærke på. … og sender det med posten.

Slide 74

Slide 74 text

TCP/IP. Bedre kendt som TCP/IP.

Slide 75

Slide 75 text

Applikation Transport Netværk Dataforbindelse Afsender Modtager

Slide 76

Slide 76 text

Applikation Transport Netværk Dataforbindelse HTTP, FTP, SMTP TCP, UDP IP, ICMP ARP, netværkskort

Slide 77

Slide 77 text

TCP holder styr på om pakkerne er kommet frem. Derfor er den kendetegnet ved at være “reliable”.

Slide 78

Slide 78 text

No content

Slide 79

Slide 79 text

Rækkefølgen af pakker er garanteret korrekt. Så når man sender en fil, så bliver den delt op, sendt i mindre dele, og samlet igen.

Slide 80

Slide 80 text

UDP er ligeglad og sender bare pakker af sted. Derfor er den kendetegnet ved at være “unreliable”.

Slide 81

Slide 81 text

No content

Slide 82

Slide 82 text

Hvilken protokol er så den bedste? Det kommer jo an på formålet. TCP er mere omstændig, UDP er utilregnelig.

Slide 83

Slide 83 text

IP-adresser. En central del af IP-protokollen.

Slide 84

Slide 84 text

83.94.121.217 Det er fx en af Googles servere.

Slide 85

Slide 85 text

2a00:1450:4005:800::1007 Det er den samme server, blot dens IPv6-adresse.

Slide 86

Slide 86 text

IPv4 vs. IPv6. Man løb simpelthen tør for IP-adresser - eller tæt på, i hvert fald. 32-bit vs. 128-bit.

Slide 87

Slide 87 text

No content

Slide 88

Slide 88 text

Porte. En server har typisk én IP-adresse, men tilbyder mange forskellige services.

Slide 89

Slide 89 text

Når I går på nettet, så bruger I port 80. Det er den port som HTTP benytter sig af. HTTPS er 443.

Slide 90

Slide 90 text

http://www.cbs.dk:80/ … det er der bare ingen, der skriver. Altså :80.

Slide 91

Slide 91 text

Sockets. De er en kombination af en IP-adresse og et portnummer. En applikation laver en socket, og operativsystemet sørger for at sende al trafik modtaget på den givne port til den givne socket.

Slide 92

Slide 92 text

No content

Slide 93

Slide 93 text

No content

Slide 94

Slide 94 text

No content

Slide 95

Slide 95 text

No content

Slide 96

Slide 96 text

Hvorfor virker det ene og ikke det andet? Hallo, mand! Det giver da ingen mening?

Slide 97

Slide 97 text

(Lige det her skyldes en virtual host, men vi skal tale om DNS.)

Slide 98

Slide 98 text

Pause.

Slide 99

Slide 99 text

Domain Name System. En central del af IP-protokollen.

Slide 100

Slide 100 text

Skal et domænenavn have www foran? Lad mig høre hvad I mener.

Slide 101

Slide 101 text

Kan et domænenavn være hvad som helst? Lad mig høre hvad I mener igen.

Slide 102

Slide 102 text

No content

Slide 103

Slide 103 text

DNS-serverne verden over holder styr på IP-adresser og domænenavne.

Slide 104

Slide 104 text

Når man laver en ændring, så skal man vente. Det tager nemlig lidt tid før ændringerne er kommet ud til samtlige servere i verden.

Slide 105

Slide 105 text

No content

Slide 106

Slide 106 text

A-records, MX-records, TXT-records og så videre. Det er sådan man ser hvad et domæne peger på.

Slide 107

Slide 107 text

Man kan WHOIS’e et domænenavn. Så finder man information om ejeren.

Slide 108

Slide 108 text

No content

Slide 109

Slide 109 text

Seriøst, hvad sker der for folk på Internettet? Prøv lige at se nogle af dem her.

Slide 110

Slide 110 text

No content

Slide 111

Slide 111 text

No content

Slide 112

Slide 112 text

Opsummering. For vi har været igennem en hulens masse i dag.

Slide 113

Slide 113 text

Tak for i dag! For spørgsmål, skriv til mig på [email protected].