I have a question regarding multiple winsock connections between 1 server and several clients. Here is my setup:

I have 5 winsock controls on my form:

sckListen
sckRequest1
sckRequest2
sckAccept1
sckAccept2

In Form_Load I do
VB Code:
  1. With sckListen
  2. .Bind .LocalIP, 7777
  3. .Listen
  4. End With
So now I have sckListen listening on port 7777.

I then have 2 command buttons that I click in this order:
VB Code:
  1. Private Sub Command2_Click()
  2.     sckRequest1.Connect sckListen.LocalIP, 7777
  3. End Sub
  4. ' and then
  5. Private Sub Command3_Click()
  6.     sckRequest2.Connect sckListen.LocalIP, 7777
  7. End Sub

In my sckListen_ConnectionRequest I have this:
VB Code:
  1. Private Sub sckListen_ConnectionRequest(ByVal requestID As Long)
  2.        
  3.     If sckAccept1.State = sckClosed Then
  4.         sckAccept1.Accept requestID
  5.     Else
  6.         sckAccept2.Accept requestID
  7.     End If
  8.    
  9. End Sub

If I then check the states and ports of my winsock controls I see this:
Code:
Listen: Listening LocalPort:7777
Request1: Connected LocalPort:2783
Accept1: Connected RemotePort:2783
Request2: Connected LocalPort:2784
Accept2: Connected RemotePort:2784
Does this make sense? I want to be able to have one winsock
listening for any connection requests from clients, and it would
then create new winsock instances to accept those requests.
(I am familiar with loading and unloading new controls)

Is the above log correct? Are my Request and Accept winsocks now connected on those ports? So any data passed between them should not be lost or misplaced(even though my initial .Connect method was called with port 7777)?