Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Winsock, udp/tcp, internet e vb6...domanda!! :)

141 views
Skip to first unread message

skunk

unread,
Jan 8, 2001, 6:13:14 AM1/8/01
to
Salve,
forse il soggetto del mio messaggio non è chiarissimo ma...è la
perfetta situazione che ho in mente sull' argomento. Mi spiego meglio.
Già da quando si parlava di fare una cosa tipo napster mi ero
entusiasmato nel pensare che potevo vedere come funziona un
applicazione client/server scritta in vb, adesso, leggendo i vari post
mi sembra che non sia una cosa poi così impossibile creare
applicazioni vb che parlino con simili installati su altri pc. Bhè, è
ora che io metta le mie manine anche qui :)) Voglio provare a fare una
cosa "stupidissima" che mette in comunicazione due pc, di fatto
potrebbe essere solo un form con un bottone e una label che alla
pressione del bottone mi visualizza "CONNESSO!! SEI GRANDE STE'!!" :))
Inizierò a cercarmi qualcosa, nel frattempo, qualcuno, può gentilmente
farmi una panoramica sull' utilizzo e sul cosa sia questo componente
winsock? Inoltre, leggevo in un altro post che si consiglia il
protocollo udp rispetto al tcp/ip...facendo forza sulle mie
conoscienze spicciole :)) mi sorge una domanda...ma il protocollo udp,
non è meno affidabile di quello tcp/ip? Inoltre, da vb, come si fa a
scegliere che protocollo utilazzare per fa si che due applicazioni
parlino tra loro?

Aspetto news...

Saluti...

A.Gianni alla Microel

unread,
Jan 8, 2001, 6:26:53 AM1/8/01
to

skunk <sku...@libero.it> wrote in message
3a599e15...@news.enter.it...
> Salve,
[...tagliato..]
> Aspetto news...
>
> Saluti...

Ciao Stunk,

quella di cui parli č forse la mia news...

io posso dire che del controllo winsock conosco il 99% del suo
funzionamento... ho creato dapprima 2 programmini (uno in TCP e uno in UDP!)
e poi, siccome volevo creare applicazioni avanzate e meglio progettate, ho
cercato di studiare i comportamenti di questo Winsock...

Siccome di winsock ce n'č da dire...
1- dai un'occhiata alla guida che come prima volta puň esserti molto utile
per capire cosa devi fare (anche senza conoscere come dialoga in TCP o UDP)
2- se ti interessa cosě tanto il discorso del funzionamento della rete...
scrivimi a arry...@libero.it : ti passo qualche informazione piů
dettagliata e magari il codice sorgente dei miei programmi ! (i primi che ho
fatto sono un po' rudimentali, ma dovresti capire...)

ciao ciao
Gianni


SKUNK

unread,
Jan 8, 2001, 6:47:09 AM1/8/01
to
>Ciao Stunk,

Salve...

>quella di cui parli è forse la mia news...
Esatto, era la tua risposta ad un tuo messaggio.

>io posso dire che del
controllo winsock conosco il 99% del suo
>funzionamento... ho creato
dapprima 2 programmini (uno in TCP e uno in
>UDP!) e poi, siccome volevo
creare applicazioni avanzate e meglio progettate, ho
>cercato di studiare
i comportamenti di questo Winsock...

Bhè i forse so meno di quel 2% che
a te manca per conoscerlo alla perfezione :) Non ho mai creato applicazioni
che funzionino remotamente e non ho mai visto codice di programmi simili.
Parto praticamente da zero sull' argomento. Sul mio libro/guida :) qualcosa
mi sembra di averla letta nell' indice, un applicazione ftp o roba
simile...devo ancora iniziare a documentarmi bene.

>Siccome di winsock
ce n'è da dire...
>1- dai un'occhiata alla guida che come prima volta può


esserti molto utile
>per capire cosa devi fare (anche senza conoscere come
dialoga in TCP o
>UDP)

La guida la leggerò sicuramente (voglio vedere
anche sul sito comune se trovo qualcosa), primo perchè non so neanche che
sia questo winsock e poi perchè ci sono sempre esempi interessanti, magari
li trovo già quello che vorrei fare io. Per quanto riguarda i protocolli di
rete...bhè, singolarmente qualcosina la so anche io :) ma non li ho mai
studiati in relazione al vb.

>2- se ti interessa così tanto il discorso
del funzionamento della rete...

Bhè, non tanto come funziona la
rete...quella roba già l' ho vista a suo tempo :)

>scrivimi a
arry...@libero.it : ti passo qualche informazione più


>dettagliata e
magari il codice sorgente dei miei programmi ! (i primi che
>ho fatto sono
un po' rudimentali, ma dovresti capire...)

Scriverti...wow! Grazie
mille, lo farò sicuramente, considerato che conosci l' ambiente molto
meglio di me. Per i tuoi codici..bhè, magari me li passi! Che poi siano
rudimentiali, poco importa, a me interessa vedere come si possono collegare
due applicazioni, io parlavo addirittura di un form, un pulsante e una
label :)) Appena inizio a vedere qualcosa sull' argomento ti scrivo, e vedo
se avrò subito delle domande da farti.
Grazie per l' aiuto.

Saluti...

--------------------------------
Inviato via http://usenet.iol.it

Della Bianca Giuseppe

unread,
Jan 8, 2001, 7:04:29 AM1/8/01
to
skunk ha scritto nel messaggio
]zac[

>Inizierò a cercarmi qualcosa, nel frattempo, qualcuno, può gentilmente
>farmi una panoramica sull' utilizzo e sul cosa sia questo componente
>winsock?
]zac[

Un salto su http://vbsimple.virtualave.net/, Richieste dei lettori, Cartelle
remote.

>Inoltre, leggevo in un altro post che si consiglia il
>protocollo udp rispetto al tcp/ip...facendo forza sulle mie
>conoscienze spicciole :)) mi sorge una domanda...ma il protocollo udp,
>non è meno affidabile di quello tcp/ip? Inoltre, da vb, come si fa a
>scegliere che protocollo utilazzare per fa si che due applicazioni
>parlino tra loro?

???? mi risulta che il protocollo sia sempre tcp/ip e che l'udp utilizza una
'porta' ed e' utilizzato per stabilire una connessione ... boh!.

Salve
Dbg


Marco Picariello

unread,
Jan 8, 2001, 7:05:58 AM1/8/01
to
salve ragazzi,
potrei conoscere la guida di cui parlate?

Per Gianni: Ho avuto problemi col winsock quando ho più client collegati ad
un server in ascolto. In pratica il server si ricorda solo dell'utlimo
client anche se creo più istanze del componente winsock. Come è possibile?
L'indirizzo e-mail a cui scrivere può essere valido anche per me?
Scrivetemi a: marco.pi...@italdata.it
ciao.


Marco Picariello

unread,
Jan 8, 2001, 7:11:39 AM1/8/01
to

SKUNK <sku...@libero.it> wrote in message
212Z29Z130Z175Y...@usenet.iol.it...
> >Ciao Stunk,
>
> Salve...
[taglio....]

Daniele

unread,
Jan 8, 2001, 7:26:56 AM1/8/01
to
Ciao..
Sul sito www.vbtips.it trovi un esempio su come puoi realizzare una chat,
molto utile per capire alcune funzioni.

Saluti a tutti.
Daniele P.

"skunk" <sku...@libero.it> ha scritto nel messaggio
news:3a599e15...@news.enter.it...

skunk

unread,
Jan 8, 2001, 8:45:05 AM1/8/01
to
>Un salto su http://vbsimple.virtualave.net/, Richieste dei lettori, Cartelle
>remote.

Grande!! Mi scarico il propgetto e mi stampo anche quello che ha
scritto Fibia...

>???? mi risulta che il protocollo sia sempre tcp/ip e che l'udp utilizza una
>'porta' ed e' utilizzato per stabilire una connessione ... boh!.

Non vorrei dire una sciemenza, ma io ricordo che l' udp è un
protocollo che, insieme ad altri forma, il tcp/ip. Aspetto una
conferma o una smentita. Venerdì, quando arrivo a casa se la cosa ti
interessa ti faccio sapere meglio.

Saluti...

skunk

unread,
Jan 8, 2001, 8:49:17 AM1/8/01
to
>salve ragazzi,
>potrei conoscere la guida di cui parlate?

Quale guida scusa? :))

Saluti...

skunk

unread,
Jan 8, 2001, 8:48:23 AM1/8/01
to
>Sul sito www.vbtips.it trovi un esempio su come puoi realizzare una chat,
>molto utile per capire alcune funzioni.

A dire il vero non ho trovato la chat ma ho visto altre cose che mi
servono lo stesso, come ad esempio "trovare l' ip".

Saluti...

Gianni Rondinini

unread,
Jan 8, 2001, 9:04:42 AM1/8/01
to
On Mon, 08 Jan 2001 11:13:14 GMT, sku...@libero.it (skunk) wrote:

>conoscienze spicciole :)) mi sorge una domanda...ma il protocollo udp,
>non è meno affidabile di quello tcp/ip? Inoltre, da vb, come si fa a

Guarda, per farla il piu' facile possibile, praticamente, il tcp fa
si' che *sicuramente* tutti i pacchetti arrivino a destinazione, senza
garantirti l'ordine di arrivo, il tempo che ci mettono, la priorita'
che avranno in rete, blablabla. Se un pacchetto viene perso,
automaticamente verra' ritrasmesso, ad esempio.
L'udp, invece, non garantisce niente: potresti perdere l'80% dei
pacchetti e non riceverli mai piu'. Pero' l'udp, per come e' nato e
gestito, ha una priorita' maggiore nel traffico in rete e quindi e'
piu' facile che arrivi velocemente a destinazione. Chiaramente, se va
perso, e' perso. Questo e' il motivo per cui i giochi in rete si
basano su udp e non su tcp.
In tutti i casi, il packet loss oggi e' difficilmente molto alto. E se
devi essere proprio proprio sicuro di ricevere tutti i pacchetti, puoi
gestire a livello di applicazione il controllo che tu non abbia perso
niente durante il tragitto.

Saluti.
--
Gianni "bugbarbeq" Rondinini, 25, RA, 242, 152
VBR - Vero Birro Romagnolo®, diffidate dalle imitazioni!
Opel/ECC Calibrezio EVO-IV --- Kawasaki "Gas Gas" ZZ-R 1100
ICQ# 36893168 - IRCNet: bugbarbeq, @ on #linux-it & #NetBSD

skunk

unread,
Jan 8, 2001, 9:20:37 AM1/8/01
to
>Non vorrei dire una sciemenza, ma io ricordo che l' udp è un
>protocollo che, insieme ad altri forma, il tcp/ip.

L' ho detta :)) Sono entrambi protocolli di trasporto, ma separati tra
loro.

>Aspetto una conferma o una smentita.

Smentita...

skunk

unread,
Jan 8, 2001, 9:26:10 AM1/8/01
to
>Guarda, per farla il piu' facile possibile, praticamente, il tcp fa
>si' che *sicuramente* tutti i pacchetti arrivino a destinazione, senza
>garantirti l'ordine di arrivo, il tempo che ci mettono, la priorita'
>che avranno in rete, blablabla. Se un pacchetto viene perso,
>automaticamente verra' ritrasmesso, ad esempio.
>L'udp, invece, non garantisce niente: potresti perdere l'80% dei
>pacchetti e non riceverli mai piu'.

Esatto, era proprio quello che intendevo io, con il tcp ho un
controllo automatico che se quello che ho spedito sia veramente
arrivato, mentre con l' udp quello che arriva arriva, il resto...
pazienza :))

>Pero' l'udp, per come e' nato e gestito, ha una priorita' maggiore nel traffico in rete e quindi e'
>piu' facile che arrivi velocemente a destinazione.

L' udp è più veloce...per come è nato? Devo rivedere bene perchè stè
cose non me le ricordo più mica tanto...intendi che è sviluppato in un
modo da avere priorità in rete, o il semplice fatto che abbia meno
controlli lo rende più veloce?

>Chiaramente, se va
>perso, e' perso. Questo e' il motivo per cui i giochi in rete si
>basano su udp e non su tcp.

Ma non dovrebbe essere il contrario?

>In tutti i casi, il packet loss oggi e' difficilmente molto alto.

Bella consolazione :))

>E se devi essere proprio proprio sicuro di ricevere tutti i pacchetti, puoi
>gestire a livello di applicazione il controllo che tu non abbia perso
>niente durante il tragitto.

Si anche questo si può fare...

Saluti...

Moreno Sirri

unread,
Jan 8, 2001, 10:09:45 AM1/8/01
to
On Mon, 8 Jan 2001 13:05:58 +0100, "Marco Picariello" <marco.pi...@italdata.it> wrote:

>salve ragazzi,
>potrei conoscere la guida di cui parlate?
>
>Per Gianni: Ho avuto problemi col winsock quando ho più client collegati ad
>un server in ascolto. In pratica il server si ricorda solo dell'utlimo
>client anche se creo più istanze del componente winsock. Come è possibile?
>L'indirizzo e-mail a cui scrivere può essere valido anche per me?

Per evitare questo problema creo una nuova istanza dell'oggetto Winsock: in questo modo ogni istanza
ha la sua connessione, anche se si tratta dello stesso IP (= due sessioni di chat tra le stesse
macchine).
Provare per credere...

Ciao,
Moreno

#sirri#@#morenosoft#.com
(togliete "#" dall'indirizzo)

Moreno Sirri VB Site - http://www.morenosoft.com/MSVBSite/

---------------------------------------------------------------------------
Le risposte alle tue domande le trovi sul Sito Comune di questo NewsGroup:
http://www.murialdo.it/it_lang_vb
---------------------------------------------------------------------------

Moreno Sirri

unread,
Jan 8, 2001, 10:08:59 AM1/8/01
to
On Mon, 08 Jan 2001 11:13:14 GMT, sku...@libero.it (skunk) wrote:

>mi sorge una domanda...ma il protocollo udp,
>non è meno affidabile di quello tcp/ip? Inoltre, da vb, come si fa a
>scegliere che protocollo utilazzare per fa si che due applicazioni
>parlino tra loro?

Cerca le RFC dei due protocolli: scoprirai tutto quello che ti serve in merito.
Le puoi consultare al sito http://www.faqs.org/rfcs/

Moreno Sirri

unread,
Jan 8, 2001, 10:10:13 AM1/8/01
to
On Mon, 8 Jan 2001 13:05:58 +0100, "Marco Picariello" <marco.pi...@italdata.it> wrote:

>salve ragazzi,
>potrei conoscere la guida di cui parlate?
>
>Per Gianni: Ho avuto problemi col winsock quando ho più client collegati ad
>un server in ascolto. In pratica il server si ricorda solo dell'utlimo
>client anche se creo più istanze del componente winsock. Come è possibile?
>L'indirizzo e-mail a cui scrivere può essere valido anche per me?

Per evitare questo problema creo una nuova istanza dell'oggetto Winsock: in questo modo ogni istanza


ha la sua connessione, anche se si tratta dello stesso IP (= due sessioni di chat tra le stesse
macchine).
Provare per credere...

Ciao,

Moreno Sirri

unread,
Jan 8, 2001, 10:06:29 AM1/8/01
to
On Mon, 8 Jan 2001 13:05:58 +0100, "Marco Picariello" <marco.pi...@italdata.it> wrote:

>salve ragazzi,
>potrei conoscere la guida di cui parlate?
>
>Per Gianni: Ho avuto problemi col winsock quando ho più client collegati ad
>un server in ascolto. In pratica il server si ricorda solo dell'utlimo
>client anche se creo più istanze del componente winsock. Come è possibile?
>L'indirizzo e-mail a cui scrivere può essere valido anche per me?

Per evitare questo problema creo una nuova istanza dell'oggetto Winsock: in questo modo ogni istanza

Gianni Rondinini

unread,
Jan 8, 2001, 10:10:30 AM1/8/01
to
On Mon, 08 Jan 2001 14:26:10 GMT, sku...@libero.it (skunk) wrote:

>>Pero' l'udp, per come e' nato e gestito, ha una priorita' maggiore nel traffico in rete e quindi e'
>>piu' facile che arrivi velocemente a destinazione.
>
>L' udp è più veloce...per come è nato? Devo rivedere bene perchè stè
>cose non me le ricordo più mica tanto...intendi che è sviluppato in un
>modo da avere priorità in rete, o il semplice fatto che abbia meno
>controlli lo rende più veloce?

Diciamo che, sempre per dire cose imprecise ma intuitive e abbastanza
"di fatto", udp nasce per essere usato in stream di dati --giochi
online, stream a/v, ecc...-- quindi viene trattato con priorita'
relativamente alta ad esempio dai router. Senza approfondire troppo,
quindi se arrivano 2 pacchetti "insieme", uno tcp e uno udp, quello
udp passa prima per la porta del router. Con tutto quello che gli va
dietro.

>>Chiaramente, se va
>>perso, e' perso. Questo e' il motivo per cui i giochi in rete si
>>basano su udp e non su tcp.
>
>Ma non dovrebbe essere il contrario?

No, perche' se in una partita a Quake in rete perdi qualche pacchetto
non e' niente: vedrai, al limite, un mostro che si sposta a scatti
anziche' in modo fluido al 100%.
Inoltre con udp puoi fare una stima relativamente semplice del tempo
--medio-- che impiega ad arrivarti un pacchetto e quindi, a livello di
applicazione, puoi gestire la perdita dei pacchetti e chiedere la
ritrasmissione solo di quelli che effettivamente hanno il tempo di
arrivarti.
Questo, ad esempio, lo fa il Media Streaming Server di Windows2000
Server --e A.S.--.

>>In tutti i casi, il packet loss oggi e' difficilmente molto alto.
>
>Bella consolazione :))

Infatti ogni tanto vedi qualcosa che si muove a scatti nei giochi,
pero' non rimani mai molto indietro col gioco.

Marco Picariello

unread,
Jan 8, 2001, 10:40:59 AM1/8/01
to
Ho provato, ma aprendo più client i messaggi spediti dal server arrivano
solo all'ultimo client (cioè quello avviato per ultimo...!?!?!)
In pratica ho creato un'array di oggetti winsock sul "exe server" ed ogni
connessione client ha effettivamente il suo ID session. Non riesco tuttavia
a spedire in broadcast un messaggio a tutti i client collegati.

Mi sai dire dove diavolo sbaglio? Te ne sarei grato
Se mai ti invio i sorgenti, se sei d'accordo, ad un tuo indirizzo di posta.
Ciao


Moreno Sirri

unread,
Jan 8, 2001, 10:55:33 AM1/8/01
to
On Mon, 8 Jan 2001 16:40:59 +0100, "Marco Picariello" <marco.pi...@italdata.it> wrote:

Un consiglio: siccome Agent dopo un certo livello di ident non segue piů la struttura del thread,
potresti quotare il msg originale? Altrimenti non si capisce a chi č indirizzato...

>Ho provato, ma aprendo piů client i messaggi spediti dal server arrivano
>solo all'ultimo client (cioč quello avviato per ultimo...!?!?!)


>In pratica ho creato un'array di oggetti winsock sul "exe server" ed ogni
>connessione client ha effettivamente il suo ID session. Non riesco tuttavia
>a spedire in broadcast un messaggio a tutti i client collegati.

Questo sinceramente non ho mai provato a farlo... perň una soluzione sarebbe quella di:

private sub Inviaatutti_click()
for i=0 to winsock1.count-1
winsock1(i).send "ciao a tutti", winsock(i).remoteport
next i
end sub

l'ho scritto di pugno, ma l'idea č quella che conta... ;-PP

Daniele

unread,
Jan 9, 2001, 1:03:32 AM1/9/01
to
"skunk" <sku...@libero.it> ha scritto nel messaggio
news:3a59c4c0...@news.enter.it...

Mi fa piacere... Cmq..
La chat la trovi a questo indirizzo..
http://www.vbtips.it/dettesempi.asp?id=96

Esempio completo di controllo FTP con WININET
http://www.vbtips.it/dettesempi.asp?id=95

Spero ti possa essere utile..
Ciao.
Daniele P.
www.vbtips.it

0 new messages