2017-01-13 5 views
0

Ich bin auf der Suche nach einer Möglichkeit, Pakete von Proxies parallel zu senden. Ist das möglich ? um den Datenfluss zu teilen werfen Sie mehrere Proxies als paralel Fluss und auf der Zielseite verschmelzen diese Pakete? Das gleiche gilt für Pakete vom Server.Datenfluss paralleles Senden an Webserver und Empfangen

Während ich Daten erhalten möchten, erhalten Anfrage auf die gleiche Weise, aber Split-Empfang zu Proxies nicht nur eine.

Ist das möglich? Dank

Antwort

0

Dies ist, wie Sie die verschiedenen Datenströme annehmen könnte:

static void Main(string[] args) { 
     string IPAddr = "127.0.0.1"; 
     TcpListener listener = new TcpListener(new IPAddress(Encoding.UTF8.GetBytes(IPAddr)), 8080); 
     listener.Start(); 
     while (true) { 
      Task.Factory.StartNew(() => handleTCPResults(listener.AcceptTcpClient())); 
     } 

    } 

    static void handleTCPResults(TcpClient client) { 
     var stream = client.GetStream(); 
    } 

Sie die Daten irgendwie retten könnte und dann haben Sie alles zusammen. Mein erster Gedanke wäre, die ersten zwei Bytes (oder mehr, wenn Sie höhere Zahlen benötigen) des Streams zu erhalten und das erste Byte zum Beispiel die Nummer der fusionierten gepackten, das zweite Byte den Index des Pakets. Dann müssen Sie den besten Weg finden, um die Daten zusammen zu bekommen.

byte numberOfSplitPackage = Convert.ToByte(stream.ReadByte()); 
byte IndexOfPackage = Convert.ToByte(stream.ReadByte()); 

speichern in Liste der ungefähr wie folgt aus:

public struct Package { 
    public byte numberOfSplitPackage; 
    public byte IndexOfPackage; 
    public byte[] body; 
    } 
Verwandte Themen