public void Connect(string ip, int port)
        {
            IPEndPoint serveAddress = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 11000);

            _udpClient = new UdpClient();

            byte[] data = Encoding.ASCII.GetBytes("Connect");
            _udpClient.Send(data, data.Length, serveAddress);

            byte[] mes = _udpClient.Receive(ref serveAddress);

            MemoryStream    ms = new MemoryStream(mes);
            BinaryFormatter bf = new BinaryFormatter();

            object     ipEndPoint = bf.Deserialize(ms);
            IPEndPoint ed         = ipEndPoint as IPEndPoint;

            _udpClient.Connect(ed);

            if (_udpClient.Client.Connected)
            {
                stream = new UdpNetworkStream(_udpClient.Client);
                Update(true);
                _timeout.Start();
            }
        }
        public UdpServerClient(Socket socket)
        {
            if (socket == null)
            {
                ArgumentNullException ex = new ArgumentNullException("socket is null.");
                Logger.Instance.WriteLog("UDP stream creation: " + ex.ToString());
                throw ex;
            }

            this.socket = socket;
            stream      = new UdpNetworkStream(socket);
        }