Il 0% ha trovato utile questo documento (0 voti)
37 visualizzazioni7 pagine

TPSI

Tecnologia e Progettazione di Sistemi Informatici, fatto per studiare a vista dell'esame di QUINTA
Copyright
© © All Rights Reserved
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato PDF, TXT o leggi online su Scribd
Il 0% ha trovato utile questo documento (0 voti)
37 visualizzazioni7 pagine

TPSI

Tecnologia e Progettazione di Sistemi Informatici, fatto per studiare a vista dell'esame di QUINTA
Copyright
© © All Rights Reserved
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato PDF, TXT o leggi online su Scribd
Sei sulla pagina 1/ 7

Tecnologia di PSIT

Iso/Osi:
Nel 1983, l'ISO (International Standard Organization) ha pubblicato lo standard
OSI, che definisce un modello di architettura di rete organizzato in 7 livelli:

1. Livello Fisico
○ Si occupa dei mezzi fisici e delle tecnologie per trasmettere dati,
come cavi in fibra ottica, cavi in rame e aria.
○ Include standard come Bluetooth e NFC e parametri come la
velocità di trasmissione dei dati.
2. Livello di Collegamento Dati (Data Link)
○ Gestisce la connessione tra due macchine attraverso una rete.
○ Si occupa dei frame di dati, controllo del flusso e degli errori.
○ Ethernet è un esempio di standard a questo livello.
○ Diviso in due sottolivelli: Media Access Control (MAC) e Logical
Link Control (LLC).
3. Livello di Rete
○ Trasferisce pacchetti di dati attraverso la rete dal computer di
origine a quello di destinazione.
○ La trasmissione non è sempre affidabile; i pacchetti possono essere
scartati in caso di malfunzionamento o congestione.
4. Livello di Trasporto
○ Trasferisce segmenti tra processi in esecuzione su due computer
della rete.
○ Può rendere la comunicazione affidabile gestendo errori come
pacchetti persi o disordinati.
○ Utilizza protocolli come TCP o UDP.
5. Livello di Sessione
○ Gestisce la sessione di comunicazione tra processi in esecuzione su
due computer.
6. Livello di Presentazione
○ Assicura che i dati siano trasmessi in formati standard.
○ Aggiunge un presentation header per specificare la codifica, il
formato degli allegati e la compressione o crittografia (es.
SSL/TLS) delle e-mail.
7. Livello di Applicazione
○ Interagisce con le applicazioni come programmi di posta
elettronica o browser.
○ Gestisce l'input e l'output dei dati e stabilisce la connessione con i
livelli inferiori.
○ Per le e-mail, aggiunge un application header con informazioni sul
protocollo (es. SMTP).

Il modello OSI viene utilizzato per standardizzare le funzioni delle reti di


telecomunicazioni e dei sistemi informatici. Dividendo la comunicazione di rete
in sette livelli, facilita l'interoperabilità tra diversi dispositivi e tecnologie,
garantendo che i dati possano essere trasmessi e ricevuti correttamente tra
sistemi diversi.

HTTP/HTTPS:
HTTP (HyperText Transfer Protocol) è un protocollo di comunicazione che
permette al browser di parlare con il server web e di richiedere risorse come
pagine web, immagini e file CSS. Questo avviene inviando richieste HTTP al
server, che risponde con dati testuali non crittografati. HTTP è un protocollo a
livello di applicazione nel modello OSI, utilizzato per la comunicazione di rete.
Dopo che il browser ha ricevuto la risposta dal server e ha completato il
rendering della pagina, la connessione HTTP può essere chiusa. Se il browser
necessita di ulteriori risorse, invia nuove richieste HTTP per ottenerle. Questo
ciclo di richiesta e risposta HTTP si verifica ogni volta che si visita una pagina
web o si interagisce con un sito tramite il browser.

HTTPS è una versione sicura di HTTP. La S finale sta per "Secure" e indica che
la comunicazione tra il browser e il server è protetta tramite crittografia. Questo
protegge i dati scambiati da potenziali tentativi di intercettazione e lettura da
parte di terzi.

La principale differenza tra HTTP e HTTPS risiede nella sicurezza offerta.


Mentre HTTP trasmette dati non crittografati, rendendo possibile
l'intercettazione da parte di terzi, HTTPS utilizza certificati come SSL (Secure
Socket Layer) per garantire la privacy e l'integrità dei dati durante la
comunicazione.
TCP/IP:
Il TCP, acronimo di Transmission Control Protocol, è un protocollo di
collegamento dati che facilita la comunicazione tra dispositivi su Internet. Si
colloca al livello di trasporto (livello 4) nel modello di riferimento OSI ed è uno
dei principali protocolli insieme a UDP (User Datagram Protocol). Il TCP
consente la trasmissione bidirezionale dei dati, permettendo a dispositivi di
inviare e ricevere dati simultaneamente, simile a una conversazione telefonica.
È noto per la sua affidabilità, grazie a un handshake a 3 vie, controllo del flusso,
gestione degli errori e controllo della congestione. Quando invii informazioni su
Internet, come un messaggio, una foto o un file, il TCP divide i dati in pacchetti
più piccoli e li riassembla al destinatario. Questo approccio facilita il
mantenimento dell'accuratezza nella trasmissione. Il TCP si assicura che nessun
pacchetto venga perso durante la trasmissione, richiedendo al destinatario di
confermare la ricezione dei pacchetti. Se la conferma non viene ricevuta, il
pacchetto viene ritrasmesso per garantire la consegna completa dei dati.

L'IP, acronimo di Internet Protocol, è responsabile di indirizzare e instradare i


pacchetti di dati tra dispositivi su Internet. Ogni dispositivo ha un indirizzo IP
univoco che lo identifica sulla rete e consente la comunicazione con altri
dispositivi. L'IP definisce il modo in cui applicazioni e dispositivi scambiano
pacchetti di dati su Internet. Fa parte della Suite di protocolli Internet (TCP/IP),
che organizza la comunicazione in quattro livelli di astrazione.

TCP e IP sono protocolli separati ma complementari. L'IP definisce gli indirizzi


e l'instradamento dei dati sulla rete, mentre il TCP gestisce la trasmissione
affidabile e l'ordine dei dati tra mittente e destinatario. Insieme, formano il
concetto di TCP/IP, essenziale per la trasmissione sicura e affidabile dei dati su
Internet.

UDP:
Il protocollo UDP (User Datagram Protocol) è un componente essenziale della
suite TCP/IP, utilizzato per la comunicazione veloce e senza connessione su reti
di computer. A differenza del TCP, UDP non garantisce la consegna o l'ordine
dei pacchetti, rendendolo adatto per applicazioni come lo streaming media e i
giochi online, dove la velocità è prioritaria rispetto all'affidabilità assoluta dei
dati. La sua implementazione riduce il carico di gestione della rete, migliorando
l'efficienza complessiva e supportando applicazioni che richiedono
aggiornamenti rapidi e tempestivi dei dati.

Java/C++:
Java e C++ sono due linguaggi di programmazione con alcune somiglianze
nella sintassi e nei tipi di dati, ma differiscono significativamente nei loro
approcci e nelle caratteristiche principali.

Java è stato sviluppato inizialmente nel 1991, con la prima versione pubblica,
Java 1.0, rilasciata il 23 maggio 1995.
C++ è stato creato nel 1985.

Java utilizza un garbage collector per la gestione automatica della memoria, il


che significa che il sistema libera automaticamente la memoria inutilizzata
senza richiedere interventi espliciti da parte del programmatore.

In contrasto, C++ richiede una gestione manuale della memoria. I


programmatori devono allocare e deallocare la memoria esplicitamente
utilizzando operatori come new e delete.

Java è progettato per essere più vicino all'utente rispetto a C++. Questo significa
che è orientato verso un alto livello di astrazione, il che rende il codice più
portabile ma può influire sulla performance in alcune applicazioni critiche.
C++, invece, è più vicino all'hardware e al sistema operativo, il che lo rende più
veloce in situazioni in cui è necessario massimizzare l'efficienza e il controllo a
basso livello.

XML/XSD:
La differenza principale tra XML e XSD è che XML è un linguaggio di markup
estensibile utilizzato per creare e condividere dati tra sistemi incompatibili,
mentre XSD è un linguaggio utilizzato per definire la struttura e i vincoli di
validità di documenti XML.

XML (Extensible Markup Language) è stato sviluppato dal World Wide Web
Consortium (W3C). È un linguaggio di markup che permette di descrivere dati
attraverso l'uso di tag, facilitando l'interscambio di documenti e dati tra diverse
applicazioni e database.
Un documento XML può essere "ben formato" (well-formed) se rispetta le
regole sintattiche di XML. Per essere "valido", deve anche conformarsi alle
regole semantiche definite da uno schema XML (XSD) associato. Lo schema
XSD definisce la struttura esatta e i vincoli di validità che i documenti XML
devono seguire.

Grazie agli schemi XSD, è possibile automatizzare l'elaborazione dei dati XML
utilizzando parser, software capaci di estrarre e gestire automaticamente le
informazioni dai documenti XML. I parser possono anche validare i documenti
rispetto agli schemi XSD specificati, assicurando che i dati rispettino la struttura
definita.

In sintesi, mentre XML è leggibile e modificabile dagli esseri umani grazie alla
sua natura basata su markup, XSD fornisce una struttura formale per garantire la
validità e l'automazione nell'elaborazione dei dati XML attraverso l'uso di parser
e la definizione di regole di validità.

Packet Switching:
Durante la Guerra Fredda, quando era realistico temere un attacco nucleare su
larga scala tra Stati Uniti e Unione Sovietica, nacque la necessità di sviluppare
tecnologie resilienti per le comunicazioni, che potessero funzionare anche in
condizioni di attacco devastante. In questo contesto, emerse la tecnologia del
packet-switching, oggi fondamento dell'Internet moderna.

Il packet-switching prevede che i dati da trasmettere siano divisi in piccoli


pacchetti, ognuno contenente informazioni sull'indirizzo del mittente e del
destinatario. Questi pacchetti possono viaggiare indipendentemente attraverso la
rete e essere riassemblati correttamente alla destinazione finale. Questo
approccio permette una maggiore robustezza rispetto ai tradizionali sistemi di
comunicazione, in quanto se un percorso di trasmissione è interrotto o
danneggiato, i pacchetti possono essere instradati attraverso percorsi alternativi.

Queste caratteristiche hanno reso possibile la realizzazione di una vasta rete


WAN (Wide Area Network), alla quale sono collegati oggi oltre un miliardo di
dispositivi. L'Internet moderna si basa su questa architettura distribuita e
resiliente, che permette la comunicazione globale senza subire significativi
guasti o malfunzionamenti anche in presenza di problemi locali.
In sintesi, il packet-switching non solo ha risposto all'esigenza di sopravvivenza
delle comunicazioni in situazioni di emergenza durante la Guerra Fredda, ma ha
anche rivoluzionato il modo in cui le reti di telecomunicazioni sono strutturate e
gestite, diventando il pilastro fondamentale delle moderne infrastrutture di
comunicazione globale.

ARPANET è stato il laboratorio iniziale in cui sono stati sperimentati e


perfezionati i concetti di packet-switching e di architettura di rete distribuita.
L'esperienza e le tecnologie sviluppate in ARPANET hanno poi influenzato lo
sviluppo successivo dell'Internet globale, che ha ereditato e implementato
queste innovazioni per diventare la rete pervasiva e resiliente che conosciamo
oggi.

Web Service:
I web service sono metodi di comunicazione e scambio di dati tra diverse
applicazioni di sistemi distribuiti su una rete, come Internet. Consentono alle
applicazioni di interagire tra loro indipendentemente dal linguaggio di
programmazione o dal sistema operativo utilizzato.
Esistono due protocolli principali utilizzati per implementare i web service, soap
e rest.

SOAP è un protocollo di comunicazione basato su XML (eXtensible Markup


Language). I web service basati su SOAP definiscono un insieme di regole per
la struttura del messaggio e le operazioni di comunicazione tra client e server. Il
protocollo SOAP si basa su un modello client-server in cui il client invia una
richiesta al server, il server elabora la richiesta e restituisce una risposta.
SOAP offre un'ampia gamma di funzionalità, come la sicurezza dei messaggi e
il trasporto affidabile, ma è spesso considerato più complesso e verboso rispetto
ad altre alternative.

REST, d'altra parte, è uno stile architetturale di comunicazione basato su HTTP


(Hypertext Transfer Protocol). I web service RESTful utilizzano i principi di
base del web, come le risorse identificate da URL (Uniform Resource Locator)
e le operazioni HTTP come GET, POST, PUT e DELETE per consentire
l'accesso e la manipolazione delle risorse. REST è noto per la sua semplicità e
scalabilità ed è ampiamente utilizzato per la creazione di API web.
Le API RESTful sono basate sul concetto di "risorse" e seguono i principi di
stato dell'applicazione trasferito (stateless), il che significa che ogni richiesta
deve contenere tutte le informazioni necessarie per comprenderla, senza dover
fare affidamento su uno stato memorizzato dal server.

SOAP (Simple Object Access Protocol)

● Cos'è: Un protocollo di comunicazione che utilizza XML.


● Struttura: Ha una struttura rigida e complessa.
● Vantaggi: Offre alta sicurezza e affidabilità.
● Utilizzo: Ideale per transazioni complesse in ambienti aziendali.

REST (Representational State Transfer)

● Cos'è: Uno stile architetturale che si basa su HTTP.


● Struttura: Semplice e flessibile.
● Vantaggi: È efficiente e scalabile.
● Utilizzo: Perfetto per API web moderne e applicazioni mobili.

JSON:
L'XML Working Group ha concepito XML nel 1996 e rilasciato la sua versione
nel 1998, derivando da SGML. È stato sviluppato per la pubblicazione
elettronica su larga scala, distinguendosi dall'HTML per la serializzazione dei
dati.
JSON è stato rilasciato nel 2001 da Douglas Crockford e Chip Morningstar,
derivato da JavaScript. Entrambi sono formati leggibili basati su testo per la
creazione, lettura e decodifica di dati nelle applicazioni reali. Sono gerarchici e
indipendenti dalla lingua per lo scambio di dati strutturati.
XML è flessibile nel rappresentare dati complessi come documenti e
transazioni, leggibile sia da macchine che da esseri umani. JSON è leggero e
efficiente per l'interscambio dati tra applicazioni diverse, senza fornire
informazioni sullo schema o sul tipo dei dati.

Una differenza chiave è che JSON è più efficiente nell'uso della memoria, ideale
per gestire grandi volumi di dati. È ampiamente supportato su diverse
piattaforme senza problemi significativi di compatibilità, mentre XML può
presentare sfide di interoperabilità tra diversi linguaggi di programmazione.

Potrebbero piacerti anche