Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
Visual Basic 6 - protocollo udp e perdita di pacchetti
Forum - Visual Basic 6 - protocollo udp e perdita di pacchetti

Avatar
muteblaster (Member)
Pro


Messaggi: 87
Iscritto: 16/07/2009

Segnala al moderatore
Postato alle 6:02
Martedì, 17/11/2009
e' da qualche giorno che uffcialmente ho iniziato i test sul programma di p2p e mi vengo a scontrare con un altro problema che in locale non vedevo, cioe' il protocollo udp perde dei pacchetti, ed un nuovo chunk viene spedito solo al ricevimento del precedente, supponiamo che io spedisca un pacchetto di chunk 2 MB quando il file ha terminato il suo download come faccio a vedere i chunk mancanti?.......


anonimity is the best defence
PM Quote
Avatar
GrG (Member)
Guru^2


Messaggi: 3430
Iscritto: 21/08/2007

Segnala al moderatore
Postato alle 15:06
Martedì, 17/11/2009
non ho ben chiaro come funzioni il protocollo udp ne tanto meno cosa siano i chunk... intuitivamente si capisce che invii i file a pezzi e vuoi sapere quanti "pezzi" mancano per completare il file... solo che devi specificare se questi pezzi li "fai tu" oppure no...


...
PM Quote
Avatar
muteblaster (Member)
Pro


Messaggi: 87
Iscritto: 16/07/2009

Segnala al moderatore
Postato alle 17:16
Martedì, 17/11/2009
un chunk sarebbe un pezzettino di circa 2kb che viene spedito chi lo riceve lo inserisce nel file che sta' scarcando, e poi richiede un altro pezettino, pero' questo mi genera un problema devo inviare tante richieste e non tutte arrivano...... io pensavo di inviare un blocco di richieste formate da 10 pezzettini ....e cosi' via.....alla fine quando ho finito di scaricare il file verifico quali pezzi mancano e li richiedo.......


anonimity is the best defence
PM Quote
Avatar
lorenzo (Normal User)
Guru


Messaggi: 1178
Iscritto: 15/04/2008

Segnala al moderatore
Postato alle 19:59
Martedì, 17/11/2009
adesso, non ho mai usato udp però, se non ricordo male le lezioni di Reti quel protocollo non ha nessun controllo sul corretto arrivo dei paccetti.
Si usa quando non è necessario che tutti i pkt arrivino a destinazione(streaming, voip, etc...)
Per trasferimento dati è meglio usare TCP


EDIT: difatti, cito Wikipedia:

A differenza del TCP, l'UDP è un protocollo di tipo connectionless, inoltre non gestisce il riordinamento dei pacchetti né la ritrasmissione di quelli persi, ed è perciò generalmente considerato di minore affidabilità. È in compenso molto rapido ed efficiente per le applicazioni "leggere" o time-sensitive. Ad esempio, è usato spesso per la trasmissione di informazioni audio o video. Dato che le applicazioni in tempo reale spesso richiedono un ritmo minimo di spedizione, non vogliono ritardare eccessivamente la trasmissione dei pacchetti e possono tollerare qualche perdita di dati, il modello di servizio TCP può non essere particolarmente adatto alle loro caratteristiche. L'UDP fornisce soltanto i servizi basilari del livello di trasporto, ovvero:
multiplazione delle connessioni, ottenuta attraverso il meccanismo delle porte
verifica degli errori mediante una checksum, inserita in un campo dell'intestazione del pacchetto.

mentre TCP garantisce anche il trasferimento affidabile dei dati, il controllo di flusso e il controllo della congestione.

L'UDP è un protocollo stateless, ovvero non tiene nota dello stato della connessione, dunque ha rispetto al TCP informazioni in meno da memorizzare. Un server dedicato ad una particolare applicazione che scelga UDP come protocollo di trasporto può supportare molti più client attivi.

Ultima modifica effettuata da lorenzo il 17/11/2009 alle 20:01


"There's no point in being exact about something if you don't even know what you're talking about."

JOHN VON NEUMANN


Siamo italiani NO??
Allora scriviamo in ITALIANO!!!!
PM Quote
Avatar
muteblaster (Member)
Pro


Messaggi: 87
Iscritto: 16/07/2009

Segnala al moderatore
Postato alle 22:24
Martedì, 17/11/2009
sisi il protocollo udp non possiede il controllo dei trasferimenti.....pero' e' implementabile a livello apllicativo......io vorrei una volta scaricato il file analizzarlo e vedere le parti mancanti e quelle mancanti richiederle.....


anonimity is the best defence
PM Quote