// SimProxy: construct a proxy for a single simulator public SimProxy(ProxyConfig proxyConfig, IPEndPoint simEndPoint, Proxy proxy) { this.proxyConfig = proxyConfig; remoteEndPoint = new IPEndPoint(simEndPoint.Address, simEndPoint.Port); this.proxy = proxy; socket = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp); socket.Bind(new IPEndPoint(proxyConfig.clientFacingAddress, 0)); proxy.AddHandler(remoteEndPoint, this); Reset(); }