sockets(套接字)編程有三種,流式套接字(SOCK_STREAM),數據報套接字(SOCK_DGRAM),原始套接字(SOCK_RAW);基於TCP的socket編程是採用的流式套接字。編程
服務器端編程的步驟:
1:加載套接字庫,建立套接字(WSAStartup()/socket());
2:綁定套接字到一個IP地址和一個端口上(bind());
3:將套接字設置爲監聽模式等待鏈接請求(listen());
4:請求到來後,接受鏈接請求,返回一個新的對應於這次鏈接的套接字(accept());
5:用返回的套接字和客戶端進行通訊(send()/recv());
6:返回,等待另外一鏈接請求;
7:關閉套接字,關閉加載的套接字庫(closesocket()/WSACleanup())。服務器
客戶端編程的步驟:
1:加載套接字庫,建立套接字(WSAStartup()/socket());
2:向服務器發出鏈接請求(connect());
3:和服務器端進行通訊(send()/recv());
4:關閉套接字,關閉加載的套接字庫(closesocket()/WSACleanup())。socket