Introduction to sockets in c# .NET

The following examples show how to create a client and server and transfer messages from client and server.
Socket Server:

using System;
using System.Collections.Generic;
using System.Text;
using System.Net.Sockets;
using System.Net;
 
namespace ConsoleApplication1
 {
     Class Program
     {
         static void Main (String[] args)
         {
             // 1. to create a socket
             Socket sListen = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
 
             / / 2. Fill IP
             IPAddress IP = IPAddress.Parse ("127.0.0.1");
             IPEndPoint IPE = new IPEndPoint (IP, 4321);
 
             / / 3. binding
             sListen.Bind (IPE);
 
             / / 4. Monitoring
             sListen.Listen (2);
 
             / / 5. loop to accept client connection requests
             while (true)
             {
                 Socket clientSocket;
                 try
                 {
                     clientSocket = sListen.Accept();
                 }
                 catch
                 {
                     throw;
                 }
                 // send data to the client
                 clientSocket.Send (Encoding.Unicode.GetBytes ("You there?!!!!"));
             }
         }
 
     }
 }

Socket Client:

using System;
using System.Collections.Generic;
using System.Text;
using System.Net.Sockets;
using System.Net;
 
namespace ConsoleApplication2
{
    Class Program
     {
         static void Main (String[] args)
         {
             // 1.create socket
             Socket S = new Socket (AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
 
             // 2. complete remote IP
             IPAddress IP = IPAddress.Parse ("127.0.0.1");
             IPEndPoint IPE = new IPEndPoint (IP, 4321);
 
             // 3. connect to the server
             Console.WriteLine("Start to connect to server ....");
             s.Connect (IPE);
 
             // 4. to receive data
             byte[] buffer = new byte[1024];
             s.Receive (buffer, buffer.Length, SocketFlags.None);
             var Msg = Encoding.Unicode.GetString (buffer);
             Console.WriteLine ("received message: (0)", Msg);
 
             Console.ReadKey ();
         }
     }
}

Enjoyed this post? Share it!

 

Leave a comment

Your email address will not be published.