网络游戏实战总结

1.Tcp,udp传输层,ip协议网络层

2.应,表,会,传,网,数,物

3.应,表,会 小统称应用层

4.应用层把字符串转换成二进制

5.传输层 数据流传送,可靠性校验,流量控制。 tcp有头信息

6.网络层地址之间传送 包的拆分, ip首部 

7.数据链路层校验 对错。比特流组合成帧

8.物理层电缆、

9.IP端口

10. 

    IPEndPoint ip = new IPEndPoint(IPAddress.Parse("192.168.1.1"), 3366);

11.tcp是面向连接,可靠,基于字节流,无连接,不可靠

12.tcp链接 三次握手, 数据传送完毕,便要断开链接, 四次握手确保双端都断开链接。 

13.套接字 tcp/ip协议基本操作单元,连接之前需要创建套接字,和bind, 客户端由系统分配,可以省去bind;

14.服务器端通过listen开启监听,等待客户端接入。

15.客服端通过connect连接服务器, 服务器通过accept接收客服端连接, 在过程中会进行三次握手。

16.客服端和服务器端通过write和read发送和接收数据。操作系统将会完成tcp数据的确认,重复步骤。

17.通过clolse关闭连接,操作系统会进行四次握手。

18.127.0.0.1 和主机地址

19.    listenfd.Listen(0); 挂起最大长度

20.     byte[] readBuff = new byte[1024];

21.字节转换成字符串

  int count = connfd.Receive(readBuff);

                string str = System.Text.Encoding.UTF8.GetString(readBuff, 0, count);

22.转出字节数列

      //send
                byte[] bytes = System.Text.Encoding.Default.GetBytes("serv echo" + str);

                connfd.Send(bytes);

23地址簇,套接字类型

 Socket listenfd = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);

24.用tcp 则是Socket(AddressFamily.InterNetwork,SocketType.Dgram,ProtocolType.Udp);

25.接收和发送都返回长度 。

26.多个请求要用到异步

      //send                byte[] bytes = System.Text.Encoding.Default.GetBytes("serv echo" + str);
                connfd.Send(bytes);

猜你喜欢

转载自www.cnblogs.com/xiaomao21/p/9498836.html