programma

Transcript

programma
Eccone uno...
In rete
•
•
•
•
•
I programmi “si parlano”...
Come fanno a comunicare?
Si deve stabilire una connessione (come
per le chiamate telefoniche...)
Un computer è identificato da un
indirizzo (IP) es: 217.133.109.2
Al suo interno...
Ci sono delle “Porte”
•
•
•
•
•
...Sono disponibili circa 64000 (2**16)
porte
Es: 217.133.109.2:4662 (porta 4662 per
emule)
Sulle quali può essere in attesa di
messaggi un programma
Si fa una richiesta di comunicazione con
nome computer e porta...
Poi si scambiano messaggi
In rete
•
I “computers si parlano” in modalità:
–
–
Peer to Peer (P2P)… o...
Client/server
Client/server (C/S)
Il client fa richieste di servizio,
Il server le esaudisce
Un server può servire anche migliaia di client
Server di ...
•
•
•
•
•
•
•
•
File
Print
Web
DataBase
Applicazioni
Mail
Giochi
...
Ecco un esempio
Con client, application server e DB server (dati)
Three tier architecture (notare i server)
Server: hardware
• Qualunque “computer” (ovvero oggetto intelligente
con sufficienti risorse) può diventare un server
• Colleghi una stampante al PC e la condividi
in rete .... il PC diventa un print server
• Condividi alcuni raccoglitori in rete.. Il PC
è diventato un file server
• Ci installi Apache e diventa un web server!
però...
• Poiché un server gestisce anche
centinaia/migliaia di utenti (clients)
simultaneamente
• E, se si “ferma”... son dolori...
• Deve essere più affidabile di un normale client
• Quindi: ridondanze!
– Memorie ECC per correggere molti errori
– Dischi RAID per garantire l'affidabilità dei dati
– Dischi superveloci da 15000 rpm e/o SSD
– Dischi dual-ported
–
Ed anche
Connessioni in rete multiple e velocissime
●
Interi server duplicati
●
Ambiente protetto
●
Gruppi di continuità
●
Interi data center duplicati a distanza
●
SSD più veloce ed affidabile
Server:
processori





A 64 bit, potenti
Intel XEON
AMD opteron
ARM V8
Ogni SOC ha 48 CPU ARM V8 a
2.5Ghz
ARM V8
RAID 1 (aka mirroring,
shadowing) e RAID 5
Architettura server a tre livelli (three tier)
La diapositiva che segue contiene
Piastra madre per server:
Supertecnologia:
Contiene 4 zoccoli per processori, in ogni zoccolo si può
inserire un chip che contiene (oh my god!) 16 processori
da 3.5Ghz! totale 64 processori per scheda.
Per ogni chip ci sono otto slots per memorie, utilizzando dimm da
4GB si arriva a 32GB per ogni 16 processori ovvero 128GB per
scheda madre!
Server: software
•
•
Sistema operativo standard (windows,
Linux...) o … speciale...
Programmi server appositi
–
–
–
–
Samba (file server universale)
Apache, IIS (web server)
MySQL (DataBase server)
...
Print server
•
•
Gestisce una o più stampanti condivise in
rete
Può essere contenuto nella stampante (di
rete)
La mia
stampante
(LED) di
rete
File server
(disk server)
NAS (Network attached storage)
Il mio server NAS (ed altro)
3+3TB (mirrored)
+2TB +2TB
RACK
Database server
•
•
•
•
Riceve richieste di dati
Gestisce quantità enormi di dati.
Risponde a richieste del tipo
“SELECT * FROM STUDENTI WHERE VOTO > 7 AND ETA <
19 AND SESSO = MASCHIO;”
•
SQL: “Structured Query Language”
WEB server
•
•
•
•
Qui il discorso si fa interessante...
Risponde ad Url ricevuti dal browser ed
invia al browser...
Oggetti: pagine, immagini, programmi...
suoni, video...
Esegue programmi (ad es. PHP, ASP)
USB server via LAN (remotizza
dispositivi USB su LAN)
Compattezza: Armadi (rack)
pieni di servers
Ogni “blade”
contiene 4-8
processori, molti
giga di RAM ecc
Una “Unit” (1U) è 1.75 pollici, i
rack sono da 19 o 23 pollici
v
7 rack
Server ARM a 64 bit (ARM V8)
DELL copper (2014)
Ullltradimm per server
E' memoria flash che si inserisce
negli slot DIMM
Quanti servers ha Google?
•
Molte decine
di migliaia!!
Cloud computing
Tutto basato su server!
Server di dati ed applicazioni
Un client leggero (thin) sfrutta dati e
applicazioni dalla rete (cloud)
esempio: Google docs/apps
Cloud computing
Server di dati ed applicazioni
Un client leggero (thin) sfrutta dati e
applicazioni dalla rete (cloud)
esempio: Google docs/apps
Altri servizi
• Time server (fornisce l'ora esatta)
–
Protocollo NTP (Network Time Protocol)
• DNS
– Domain Name Server (elenchi
internet)
• Proxy Server
Proxy server
A volte (spesso) il WEB server è
proprio piccolino...
Questo microcontroller contiene
un web server .. e due paginette
(memoria totale 1KB)
Server in casa?
•
•
•
•
Si, piccola rete...con più PC ed altre cose
Print server (stampante condivisa)
Web server dentro molti apparati (router,
telefono, Network camera...)
File server
Arduserver.com