Wie hören zwei Prozesse unter Windows 7 denselben Port ab?

Ich führe zwei Instanzen von stunnel unter Windows 7 aus, die so konfiguriert sind, dass sie denselben Port abhören, und es scheint, dass beide erfolgreich denselben Port abhören (nur mit socket () / bind () / listen ()). Beide Instanzen scheinen bei allen Aufrufen erfolgreich zu sein und werden in einer Netzstatistik angezeigt:

C:\>netstat -ano | grep 8000
  TCP    0.0.0.0:8000           0.0.0.0:0              LISTENING       5828
  TCP    0.0.0.0:8000           0.0.0.0:0              LISTENING       5852

Der erste, der zuhört, erhält alle eingehenden Anfragen.

Dies steht im Widerspruch zu meinen Erwartungen. (Ich hatte erwartet, dass EADDRINUSE mir mitteilt, dass der Hafen besetzt ist.) Also ...

Warum / Wie funktioniert das? Ist dieses Verhalten in einem bestimmten Kontext nützlich?Ich möchte nicht, dass eine Instanz erfolgreich ausgeführt wird, wenn eine andere Anwendung die eingehenden Anforderungen abfängt ... Wie mache ich den Port exklusiv?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage