PDA

Visualizza la versione completa : protocolli


Caleb
10-04-2004, 17:48
ciao

sto studiando i protocolli di comunicazione ma non capisco una cosa:
un protocollo ad esempio tcpip è scritto in che linguaggio?

e poi, io dalle proprietà di rete di windows installo tcp/ip, ma in sostanza cosa sto installando? Un pezzettino di software, ma che cosa c'è lì dentro?

ho visto come è composto un pacchetto, i vari header eccetera, però come viene implementato il tutto?

mi spiego: se io volessi scrivere da zero il tcp/ip che installo sotto windows, che cosa dovrei scrivere?

Non so se è chiara la domanda, non so nemmeno io come porla! Cosa c'è al livello più basso??

ho parecchia confusione.. help!!

s|n3
10-04-2004, 17:58
al livello più basso c'è il linguaggio macchina fatto di tanti 0 e 1.
quando installi il tcp/ip in effetti installi una serie di applicazioni visto che il tcp/ip non è un protocolla ma una suite di protocolli cha agiscono su diversi livello della pila iso/osi (sopratutto 3:rete 4:trasporto e 7:applicazione)

mi risulta sia stato sviluppato in linguaggi assembler (basso livello) e in C (alto livelo sopratutto per la parte che riguarda il livello applicazione)

Caleb
10-04-2004, 18:05
grazie della risposta

premetto che non sono un programmatore

ma vorrei capire questo: fisicamente, il pacchetto chi lo costruisce? Quel pezzettino di software? su windows non posso, ma se io vado a vedere i sorgenti di linux trovo una parte dove viene costruito il pacchetto?

s|n3
10-04-2004, 18:16
Originariamente inviato da Caleb
grazie della risposta

premetto che non sono un programmatore

ma vorrei capire questo: fisicamente, il pacchetto chi lo costruisce? Quel pezzettino di software? su windows non posso, ma se io vado a vedere i sorgenti di linux trovo una parte dove viene costruito il pacchetto?
è una semplificazione ma fondamentalmente sì...troverai una parte di codice che crea il pacchetto con header ecc.

Caleb
10-04-2004, 18:23
ma quella parte di codice in pratica cosa fa? mette insieme una serie di bit, comprensibili dalla scheda di rete, nel formato header-data-ecc...?

ma se è così....

quindi il tcp/ip si potrebbe scrivere idealmente con qualunque linguaggio che abbia comunicazione diretta con l'hardware a basso livello?? non il basic ad esempio!

s|n3
10-04-2004, 18:36
Originariamente inviato da Caleb
ma quella parte di codice in pratica cosa fa? mette insieme una serie di bit, comprensibili dalla scheda di rete, nel formato header-data-ecc...?

esatto...ma stiamo sempre semplificando di moooolto il discorso.



ma se è così....

quindi il tcp/ip si potrebbe scrivere idealmente con qualunque linguaggio che abbia comunicazione diretta con l'hardware a basso livello?? non il basic ad esempio!


teoricamente il tcp/ip puoi scriverlo pure metà in asp e metà a mano su un pezzo di carta e poi lo prendi con lo scanner....ma ne và delle prestazioni.
del codice scritto in lunguaggio basso sfruttando al meglio la memoria farà fare sicuramente molti meno cicli alla cpu.in una situazione dove la velocità è fondamentale è quindi l'unica soluzione.

ma se sei curioso di sapere come funziona un protocollo mi sa che un po' di codice lo si trova in rete.
prova a cercare su google o nei siti delle università e preparati ad avere un gran mal di testa dopo la lettura ;)

Caleb
10-04-2004, 18:43
dunque io mi sto leggendo un libro sul tcp/ip dell'ibm ... tutto in inglese, paura!

spiega molto bene, molto dettagliato ecc....

però su come viene realizzato il tutto non dice nulla!

è tanto bello sapere che il pacchetto è formato da questa cosa qui, viene costruito così e frammentato spedito e ricomposto cosà... ma è la parte prima che mi manca!

quello che non riesco a capire:

uno studia un protocollo di comunicazione

poi decide di scriverlo nel linguaggio più appropriato

a questo punto come la mettiamo con le schede di rete? sono tutte diverse!

o ci si appoggia a un'interfaccia in mezzo, come potrebbe essere il driver della scheda di rete? perchè se no come fa il tcp/ip di windows a funzionare con TUTTE le schede di rete?

e se è così come funziona il driver, che fa?

grazie della tua pazienza!!

s|n3
10-04-2004, 18:49
capisco i tuoi dubbi ma parti da un presupposto sbagliato.
uno non studia il tcp/ip per poi riscriverlo,lu studia per sapere come funziona.che senso ha scrivere una cosa sapendo che quella cosa gia esiste e che non potremi migliorarla?
non trovi niente su quel libro perchè non è quello il suo scopo...non vuole spiegarti come è scritto il tcp/ip ma come funziona (che è anche più interessante imho)
mi sa che l'unico modo per capire quello che vuoi è trovare il sorgente di un qualche protocollo...io posso darti il codice di qualche algoritmo di instradamento al massimo (dovrei trovarlo tra i vecchi appunti) ma in questo non posso aiutarti :)

Caleb
10-04-2004, 18:53
mi sono espresso male!

non è che intendo scrivere un protocollo, mi mettevo solo nei panni di chi ha scritto il tcp/ip!

comunque sarebbe interessantissimo vedere quel codice!

D€Vil
10-04-2004, 19:38
Ti consiglio di cercare la RFC se ti interessa l'argomento :)


cerca con google la RFC 1118 intitolata "The hitchhiker's"

Loading