关于Socket的建立及连接

最近在做一个东西,目前考虑的是采用Socket连接,从网上找了一个SuperSocket的socket通信框架....

关于Socket连接,个人并不是搞得太懂,写的东西也全是个人理解,那么这里先整理一下关于Socket建立及连接的思路吧(当然,是以这个框架为前提):

  • 服务器:
  1. 首先定义连接类型:
    public class SocketSession : AppSession<SocketSession>

    每一个session都是socket连接对象,标识一个用户和服务器建立的连接,<>里面的内容是把这个类SocketSession的定义传入父类APPSession,然后父类中的某些方法就可以识别我们自己定义的SocketSession类了.

  2. 然后呢定义一个服务器类型
    public class SocketServer : AppServer<SocketSession>

    <>里面的内容同理.

  3. 启动服务器:
    var socketServer = new SocketServer();
    socketServer.Setup(1234); //在1234端口启动一个服务器实例
  • 客户端
  1. 创建一个EndPoint的实例
    int port = 2000;
    IPAddress ip = new IPAddress(new byte[4]{127,0,0,1});
    IPEndPoint ipep = new IPEndPoint(ip, port);//把ip和port转化为IPEndpoint实例
  2. 创建Socket并连接到服务器
    Socket client = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);//创建Socket
    client.Connect(ipep);//连接到服务器

    接下来调用client.Send()方法就可以向服务器发送数据了,通过client.Receive()方法可以获取服务器返回的信息

以上,如果有一天有些地方我自己都搞不清楚了,那就把它搞清楚了,再把它补充进来.

原文地址:https://www.cnblogs.com/snys98/p/4447185.html