Exemple #1
0
        public async Task Start()
        {
            Console.WriteLine("Starting server...");
            using (_udpServer = new UdpClient(_port, AddressFamily.InterNetwork))
            {
                _remoteEndPoint = new IPEndPoint(IPAddress.Parse(_multicastIPAddress), _multicastPort);

                _udpServer.JoinMulticastGroup(IPAddress.Parse(_multicastIPAddress));
                _udpServer.MulticastLoopback = true;

                Console.WriteLine($"Server started...");

                await Task.Factory.StartNew(SendPackage);
            }
        }
Exemple #2
0
        private static void Main()
        {
            Console.WriteLine("Server started.");

            const string fileName = "Settings.xml";

            if (!File.Exists(fileName))
            {
                Console.WriteLine($"{fileName} not found.");
                return;
            }

            using var fileStream = File.Open(fileName, FileMode.Open);
            var serializer = new XmlSerializer(typeof(Options));
            var options    = (Options)serializer.Deserialize(fileStream);

            var       random   = new Random();
            const int mode     = 35000;
            const int maxValue = 100000;

            using var udpClient = new UdpClient(AddressFamily.InterNetwork);
            var address    = IPAddress.Parse(options.IpAddress);
            var ipEndPoint = new IPEndPoint(address, options.Port);

            udpClient.JoinMulticastGroup(address);

            long i = 0;

            while (true)
            {
                i++;
                try
                {
                    int value   = random.Next(random.Next(mode - random.Next(1, mode)), random.Next(mode, mode + random.Next(1, maxValue)));
                    var message = new Message(i, value);
                    using var stream = new MemoryStream();
                    Serializer.Serialize(stream, message);
                    udpClient.Send(stream.ToArray(), (int)stream.Length, ipEndPoint);
                }
                catch (Exception e)
                {
                    Console.WriteLine(e);
                }
            }
        }
Exemple #3
0
        static void Main(string[] args)
        {
            UdpClient udp = new UdpClient(9090);

            Console.WriteLine("Server is setting ....");
            udp.JoinMulticastGroup(IPAddress.Parse("224.100.0.1"), 50);

            IPEndPoint ipe = new IPEndPoint(IPAddress.Loopback, 9090);

            while (true)
            {
                var buffer = udp.Receive(ref ipe);
                var data   = Encoding.ASCII.GetString(buffer);
                Console.WriteLine("Received : " + data + " from : " + ipe.Address);
            }

            udp.Close();

            Console.ReadKey();
        }