Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Distribuerede systemer, CBS, 15. september 2015
Search
Kasper Tidemann
September 20, 2015
Education
0
370
Distribuerede systemer, CBS, 15. september 2015
Slides til forelæsningen om netværk i distribuerede systemer på CBS d. 21. september 2015 kl. 08:00.
Kasper Tidemann
September 20, 2015
Tweet
Share
More Decks by Kasper Tidemann
See All by Kasper Tidemann
Distribuerede systemer på CBS, 18. september 2017 - transaktioner, del 2
kaspertidemann
1
270
Distribuerede systemer på CBS, 14. september 2017 - transaktioner, del 1
kaspertidemann
0
390
Distribuerede systemer på CBS, 7. september 2017 - skalering, del 2
kaspertidemann
0
420
BitLab - Do IT Yourself
kaspertidemann
1
59
Distribuerede systemer på CBS, 7. september 2017 - skalering, del 1
kaspertidemann
0
440
Distribuerede systemer på CBS, 5. oktober 2016 - arkitektur og repetition
kaspertidemann
0
210
Distribuerede systemer på CBS, 3. oktober 2016 - arkitektur
kaspertidemann
0
220
Oplæg om IT-arkitektur, AEA, 29. september 2016
kaspertidemann
1
100
Distribuerede systemer på CBS, 28. september 2016 - transaktioner
kaspertidemann
0
220
Other Decks in Education
See All in Education
使用済燃料再処理等実施中期計画
hide2kano
0
150
財務分析 - 入門編
lsuzuki
0
330
キャリアと組織の成長塾#1 アスリートからエンジニアの道へ
takashi_toyosaki
1
410
Data Processing and Visualisation Frameworks - Lecture 6 - Information Visualisation (4019538FNR)
signer
PRO
1
1.7k
スクフェスの学びにチームを惹き込め! 社内同時視聴会のすゝめ!
pokotyamu
0
550
2 занятие. Бизнес-модели и метод наблюдения PINT/SIRP #ideaNN 26.01.2024.
karlov
0
140
LightSail2324
cbtlibrary
0
110
MySmartSTEAM2324
cbtlibrary
0
110
Pre-enrollment Information for UTokyo International Students
utokyoissr2360
0
3.8k
WordPressを教える人のための視点と考え方
crebowinfo
0
210
HyRead2324
cbtlibrary
0
110
Railsチュートリアルの歩き方 (第7版)
yasslab
PRO
1
1M
Featured
See All Featured
The Invisible Side of Design
smashingmag
293
49k
Build your cross-platform service in a week with App Engine
jlugia
223
17k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
355
22k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
39
4.3k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
242
20k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
225
51k
What’s in a name? Adding method to the madness
productmarketing
PRO
14
2.6k
Faster Mobile Websites
deanohume
296
30k
GraphQLの誤解/rethinking-graphql
sonatard
48
9.1k
Writing Fast Ruby
sferik
619
59k
VelocityConf: Rendering Performance Case Studies
addyosmani
319
23k
Why You Should Never Use an ORM
jnunemaker
PRO
50
8.6k
Transcript
Netværk Distribuerede systemer på CBS, september 2015 DS-bogen, kapitel 2,
3 og 13
speakerdeck.com/kaspertidemann Mine slides til undervisningen ligger på Speaker Deck.
Hvad er et distribueret system?
Når to eller flere computere opfører sig som én.
Flere forskellige versioner af sandheden, der alle konvergerer mod den
samme sandhed.
Akademisk definition. Men lad os være lidt mere praktiske.
None
Client-server. Den mest udbredte model for hvordan to enheder taler
med hinanden.
Peer-to-peer. Som I også kender som P2P fra BitTorrent med
videre.
Hvad er en server? Lad os dykke lidt ned i
det.
None
None
None
En server kan både være et stykke metal og et
program, der kører på en computer.
Webservere. Dem som serverer de sider, I går ind på
i jeres browser.
None
None
None
None
Når I går ind på cbs.dk én gang, så går
I derind 40 gange i træk.
Databaser. Anvendes næsten altid i en teknisk opsætning for at
gemme data.
None
None
Servere som services. Vi jonglerer lidt med ordene.
None
http://adresse/ressource/id Og bag hver ressource gemmer sig typisk mange forskellige
komponenter.
Serviceorienteret arkitektur. Det har I måske læst som SOA et
sted.
Hvad er en klient? Det er jo den anden del
af client-server. Eller den første, rettere.
Enhver form for programmel, der ikke selv ejer sine ressourcer.
Tynde og tykke klienter. Et eksempel er fx et rejsekort
og en mobiltelefon.
Netværk. Det er netværk, der binder træerne sammen.
Hvad er et netværk? I kender jo nok lidt til
det, men lad os tage hul på det.
None
None
None
Routere Switches Hubs Trådløse forbindelser
None
None
… i øvrigt har vi verdens bedste strømstik. … de
sidder fast i væggen, jo!
Routere og hvad-har-vi sørger for at sende trafikken rundt.
None
Når I besøger en hjemmeside, så går aldrig direkte ind
på selve serveren, som den ligger på.
Routing er vores ven. Og det bygger Internettet på.
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.
A B
Man havde stor militær interesse i at have flere veje
til det samme sted.
A B
Hvorfor er det vigtigt? Netværk, routere, switches, alt muligt, hvilken
betydning har det?
None
None
None
KCG mistede $440 millioner på grund af en fejl. En
lille sidebemærkning omkring Wall Street.
Et distribueret system er altid forsinket. Det er det, der
definerer det.
Latency. Forsinkelse er essentielt.
None
Ping-tider. Man kan pinge hinanden for at se om man
er i live - og hvor hurtigt man får svar.
None
Pause.
Protokoller. Beskrivelser af den måde, som teknologier fungerer på.
Request-for-comments. Det hele startede i universitetsmiljøet i USA.
None
None
None
Protokoller er beskrivelser af hvordan noget fungerer. Det svarer til
en opskrift når man laver mad.
I praksis taler man om en implementation. At man har
implementeret en abstrakt definition af noget.
Internet protocol suite. Bedre kendt som TCP/IP.
ISO Open Systems Interconnection Model. Eller bare OSI-modellen.
I den alder lånte jeg bøger på biblioteket om TCP/IP
og OSI-modellen.
En lagdelt, abstrakt beskrivelse af netværksprotokoller. Det svarer lidt til
fx at tale om objektorienteret udvikling generelt.
Applikation Præsentation Session Transport Netværk Dataforbindelse Fysisk lag Afsender Modtager
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
Hvert niveau indkapsler og sender videre. En form for decorator-pattern.
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.
TCP/IP. Bedre kendt som TCP/IP.
Applikation Transport Netværk Dataforbindelse Afsender Modtager
Applikation Transport Netværk Dataforbindelse HTTP, FTP, SMTP TCP, UDP IP,
ICMP ARP, netværkskort
TCP holder styr på om pakkerne er kommet frem. Derfor
er den kendetegnet ved at være “reliable”.
None
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.
UDP er ligeglad og sender bare pakker af sted. Derfor
er den kendetegnet ved at være “unreliable”.
None
Hvilken protokol er så den bedste? Det kommer jo an
på formålet. TCP er mere omstændig, UDP er utilregnelig.
IP-adresser. En central del af IP-protokollen.
83.94.121.217 Det er fx en af Googles servere.
2a00:1450:4005:800::1007 Det er den samme server, blot dens IPv6-adresse.
IPv4 vs. IPv6. Man løb simpelthen tør for IP-adresser -
eller tæt på, i hvert fald. 32-bit vs. 128-bit.
None
Porte. En server har typisk én IP-adresse, men tilbyder mange
forskellige services.
Når I går på nettet, så bruger I port 80.
Det er den port som HTTP benytter sig af. HTTPS er 443.
http://www.cbs.dk:80/ … det er der bare ingen, der skriver. Altså
:80.
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.
None
None
None
None
Hvorfor virker det ene og ikke det andet? Hallo, mand!
Det giver da ingen mening?
(Lige det her skyldes en virtual host, men vi skal
tale om DNS.)
Pause.
Domain Name System. En central del af IP-protokollen.
Skal et domænenavn have www foran? Lad mig høre hvad
I mener.
Kan et domænenavn være hvad som helst? Lad mig høre
hvad I mener igen.
None
DNS-serverne verden over holder styr på IP-adresser og domænenavne.
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.
None
A-records, MX-records, TXT-records og så videre. Det er sådan man
ser hvad et domæne peger på.
Man kan WHOIS’e et domænenavn. Så finder man information om
ejeren.
None
Seriøst, hvad sker der for folk på Internettet? Prøv lige
at se nogle af dem her.
None
None
Opsummering. For vi har været igennem en hulens masse i
dag.
Tak for i dag! For spørgsmål, skriv til mig på
[email protected]
.