1. 程式人生 > >網絡遊戲實戰總結

網絡遊戲實戰總結

網絡 應用 斷開 實戰 odi ESS 127.0.0.1 div 比特

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);

網絡遊戲實戰總結