Condivisione della tecnologia

programmazione di rete!

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

programmazione di rete

【1】Architettura di sviluppo della rete

(1) Architettura C/S
C: cliente (cliente)

S: server (server)

APP - è il server

L'architettura C/S realizza la separazione dell'interfaccia front-end e della logica aziendale back-end attraverso l'interazione tra il software client e il server, fornendo un modello di architettura stabile e affidabile.

(2) Architettura B/S
B: browser (pagina web)

S: server (server)

Apri QQ Music ----> Fai una richiesta a QQ Music

Eseguire il rendering delle risorse nel browser locale

L'architettura B/S realizza la separazione dell'interfaccia front-end e della logica aziendale back-end attraverso l'interazione tra il browser e il server, fornendo un modello di architettura flessibile e scalabile.


(3) Vantaggi e svantaggi dell'architettura B/S e dell'organizzazione C/S


Architettura B/S
I metodi di manutenzione e aggiornamento sono semplici: devo solo aggiornare le risorse del server.

Anche il costo è relativamente basso e ci sono molte opzioni

Ci sono troppi dati di servizio e il carico è serio

Architettura C/S
La pressione sul server è stata ridotta e alcune risorse vengono allocate al client per l'archiviazione.

L'archiviazione e la gestione dei dati sono relativamente trasparenti e l'APP è sottoposta a ingegneria inversa

Costi elevati e manutenzione laboriosa

L'architettura C/S è la tendenza principale


【2】Protocollo Internet


(1) Cos'è la programmazione di rete?


La premessa di ricerca della programmazione di rete si basa su Internet

La programmazione di rete consiste nella scrittura di codice basato su Internet

(2) Il mezzo della programmazione di rete


Il mezzo di programmazione di rete è la rete di computer.

I protocolli di rete, i framework e le librerie di programmazione di rete sono la base per realizzare la programmazione di rete.

【3】Protocollo OSI a sette livelli


Standard di protocollo di comunicazione di rete
Livello applicazione: responsabile della gestione di protocolli applicativi specifici, inclusi posta elettronica, trasferimento file e accesso remoto.

Livello di presentazione: responsabile della rappresentazione e della codifica dei dati, della conversione e della compressione dei dati prima della trasmissione in diversi sistemi.

Livello sessione: responsabile della creazione, gestione e terminazione delle sessioni, comprese funzioni come la sincronizzazione dello scambio di dati e la creazione e il ripristino dei checkpoint.

Livello di trasporto: responsabile della trasmissione dei dati end-to-end e della fornitura di servizi di trasmissione dati affidabili, inclusi il controllo del flusso, il controllo della congestione, il ripristino degli errori e la ritrasmissione dei dati.

Livello di rete: responsabile dell'inoltro dei pacchetti di dati e della selezione del router tra diversi computer e della fornitura di funzioni come l'indirizzamento logico e il controllo della congestione.

Livello di collegamento dati: trasmette i dati tramite frame ed è responsabile della trasmissione affidabile dei dati.

Livello fisico: responsabile della trasmissione di flussi di bit su supporti fisici, inclusi mezzi di trasmissione, interfacce fisiche e caratteristiche elettriche

vantaggio:
Facile da comprendere e implementare: poiché il modello OSI ha una chiara struttura a strati, è facile da comprendere e implementare

Buona scalabilità: poiché questa architettura definisce chiaramente diversi livelli e protocolli, è molto scalabile ed è possibile aggiungere nuovi protocolli e servizi in qualsiasi momento.

Interoperabilità dei protocolli migliorata: poiché il modello OSI fornisce una guida chiara per diversi protocolli, può promuovere l'interoperabilità tra dispositivi di produttori e fornitori diversi.

Complessità ridotta: il modello OSI presenta una complessità inferiore rispetto ad altre architetture poiché la funzionalità di ciascun livello è fissa.

discordanza:


Troppo teorico: il modello OSI è troppo teorico, il che ne limita l’uso nelle implementazioni pratiche.

Mancanza di flessibilità: poiché il modello OSI definisce funzioni specifiche a ogni livello, manca di flessibilità e non può adattarsi completamente ai requisiti dei diversi ambienti di rete.

Troppo macchinoso: poiché il modello OSI è suddiviso in 7 livelli, ciò comporterà un aumento della complessità del protocollo e del consumo di risorse nelle applicazioni pratiche.

Costo di implementazione elevato: poiché il modello OSI richiede l'uso di un gran numero di protocolli e dispositivi per ottenere la comunicazione tra vari livelli, il costo di implementazione è elevato.

【4】Protocollo TCP a cinque livelli


Livello applicazione: responsabile della gestione della comunicazione tra le applicazioni di rete.

Livello di trasporto: il protocollo del livello di trasporto fornisce un protocollo end-to-end per garantire una trasmissione affidabile dei dati sulla rete.

Livello di rete: gestisce la trasmissione e l'instradamento dei dati nella rete.

Livello di collegamento dati: fornisce una trasmissione dati affidabile sulla rete fisica. Incapsula i pacchetti di dati in frame e li trasmette attraverso supporti fisici.

Livello fisico: responsabile della trasmissione di flussi di bit su supporti fisici, inclusi mezzi di trasmissione, interfacce fisiche e caratteristiche elettriche

vantaggio:
Semplice e chiaro: il protocollo TCP/IP a cinque livelli è semplice e chiaro, facile da comprendere e implementare.

Forte apertura: il protocollo TCP/IP è uno standard aperto con buona compatibilità e scalabilità.

Stabile e affidabile: il protocollo TCP fornisce servizi di trasmissione dati affidabili per garantire l'integrità e l'affidabilità dei dati.

Elevata flessibilità: il protocollo TCP/IP supporta una varietà di applicazioni diverse, come e-mail, trasferimento di file, navigazione Web, ecc.

Elevata sicurezza: il protocollo TCP/IP fornisce alcuni meccanismi di sicurezza, come IPSec, SSL, ecc., per garantire la sicurezza e la privacy dei dati.

discordanza:


Elevata complessità: l'implementazione del protocollo TCP/IP è relativamente complessa e richiede una conoscenza approfondita dei principi dei protocolli di rete e delle tecnologie correlate.

Prestazioni limitate: per garantire l'affidabilità dei dati, il protocollo TCP introduce un certo ritardo e un certo sovraccarico e non è adatto per applicazioni con elevati requisiti di tempo reale.

Sicurezza insufficiente: alcuni meccanismi di sicurezza nel protocollo TCP/IP sono vulnerabili agli attacchi e per garantire la sicurezza è necessario adottare misure aggiuntive.

Affidabilità limitata: sebbene il protocollo TCP/IP fornisca servizi di trasmissione dati affidabili, quando la rete è congestionata possono verificarsi problemi come perdita e ritardo di pacchetti ed è necessario adottare alcune misure per risolverli.

Non adatto per l'implementazione su larga scala: poiché il protocollo TCP/IP non tiene conto adeguatamente dei problemi di gestione e manutenzione della rete, potrebbero verificarsi alcuni problemi nell'implementazione di rete su larga scala.

【5】Protocollo Ethernet


Standardizza gli standard per il nostro accesso a Internet

Fa parte di un'ampia gamma di tecnologie LAN cablate utilizzate per la comunicazione di dati nelle reti di computer.

Definisce le regole e i formati di comunicazione per il livello fisico e il livello di collegamento dati tra computer.

Protocollo EthernetCaratteristiche
Flessibilità, velocità, semplicità, affidabilità, tolleranza ai guasti, scalabilità, affidabilità

【6】Protocollo IP


È un protocollo di comunicazione di rete

Il protocollo TCP/IP è un protocollo del livello di rete responsabile della trasmissione dei pacchetti di dati dall'indirizzo di origine all'indirizzo di destinazione.

Definisce il modo in cui i dati vengono trasmessi e instradati su Internet

Protocollo IPCaratteristiche: Nessun collegamento, semplice e flessibile, trasmissione di pacchetti, routing, indirizzo IP, numero di versione, tipo di protocollo

【7】Indirizzo Mac


scheda di rete

È anche chiamato indirizzo fisico, che si riferisce all'indirizzo univoco globale assegnato alle apparecchiature di rete (come computer, router, switch, schede di rete) quando vengono prodotte.

Cerca un campo chiamato "Indirizzo fisico" o "Indirizzo MAC"

【8】Trasmissione


Scambio di dati all'interno della stessa LAN

【9】Protocollo TCP


protocollo di streaming

Affidabile, basato su un canale di trasmissione, il canale potrà essere stabilito solo se soddisfa le specifiche

(1) Stretta di mano a tre


1. Il client invia una richiesta di connessione al server (con l'identità del client aaa)

2. Il server riceve la richiesta di connessione del client e invia una richiesta al client (con l'identificatore del server e l'identificatore del client bbb)

3. Il client e il server stabiliscono una connessione

(2) Salutare quattro volte


1. Il client invia una richiesta di disconnessione al server

2. Il server riceve la richiesta del client e continua a elaborare i dati non completati.

3. Invia una richiesta di disconnessione al client

4. Il client riceve la richiesta di disconnessione dal server e si disconnette

【10】Protocollo UDP


accordo telegrafico

Il protocollo UDP è un protocollo a livello di trasporto

Caratteristiche
Senza connessione: UDP non richiede che venga stabilita una connessione prima di inviare i dati.

Semplice e veloce: l'intestazione del protocollo UDP è relativamente piccola. Il sovraccarico di comunicazione è minimo, quindi i trasferimenti sono relativamente veloci.

Inaffidabilità: UDP non fornisce garanzie di affidabilità e l'ordine di trasmissione dei pacchetti di dati non è garantito.

Supporta broadcast e multicast: tutti i dispositivi collegati alla LAN possono trasmettere

Adatto per applicazioni in tempo reale:

【11】Il protocollo socket è adatto per applicazioni in tempo reale


Come stabilire la connessione TCP/connessione UDP

Cos'è la presa:
Scoket può essere inteso come un endpoint astratto, che può essere utilizzato per stabilire connessioni di rete, inviare e ricevere dati.

Scocket è un'interfaccia di programmazione utilizzata per implementare la comunicazione di rete. Consente alle applicazioni di trasferire dati e compagni di classe tra diversi computer sulla rete.