电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

Socket编程利用TCP协议的实验报告

Socket编程利用TCP协议的实验报告_第1页
1/11
Socket编程利用TCP协议的实验报告_第2页
2/11
Socket编程利用TCP协议的实验报告_第3页
3/11
Socket 编程利用 TCP 协议的实验报告 Socket 编程报告(TCP/IP 协议) 一.实验目的通过 C++来实现 TCP/IP 协议下的 Socket 编程,掌握 TCP 协议的算法实现。二.实验原理客户端 建立 Socket,通过端口号和地址确定目标服务器,使用 Connect 连接到服务器,send 发送消息,等待处理,通信完成后调用 CloseSocket 关闭 Socket 服务端 建立 Socket,声明自身的端口号和地址并绑定到 Socket,使用 Listen 打开监听,然后不断用 Accept 去查看是否有连接,假如有,捕获 Socket,并通过 Recv 猎取消息的内容,通信完成后调用 CloseSocket 关闭这个对应 Accept 到的Socket,假如不再需要等待任何客户端连接,那么用 CloseSocket 关闭掉自身的 Socket三.实验代码(C++实现)服务器端代码如下:#pragma once#include #include #pragma comment (lib,"ws2_32.lib")class CServerNet{public: //初始化服务器,返回 0 表示成功int Init(const char* address,int port); //更新数据void Run();private:SOCKET m_sock;};int CServerNet::Init( const char* address,int port ){int rlt = 0; //用于记录错误信息,并输出int iErrorMsg; //初始化 WinSockWSAData wsaData;iErrorMsg = WSAStartup(MAKEWORD(1,1),&wsaData);if (iErrorMsg != NO_ERROR){//初始化 WinSock 失败printf("wsastartup failed with error : %d\n",iErrorMsg); rlt = 1;return rlt;}//创建服务端 Socketm_sock = socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);if (m_sock == INVALID_SOCKET) {//创建 Socket 异常printf("socket failed with error : %d\n",WSAGetLastError()); rlt = 2;return rlt;}//声明信息sockaddr_in serverAddr;serverAddr.sin_family = AF_INET;serverAddr.sin_port = port;serverAddr.sin_addr.s_addr = inet_addr(address);//绑定iErrorMsg = bind(m_sock,(sockaddr*)&serverAddr,sizeof(serverAddr));if (iErrorMsg < 0){//绑定失败printf("bind failed with error : %d\n",iErrorMsg);rlt = 3;return rlt;} return rlt;}void CServerNet::Run(){//公开连接listen(m_sock,5);sockaddr_in tcpAddr;int len = sizeof(sockaddr);SOCKET newSocket;char buf[1024];int rval;do{//接收信息newSocket = ac...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

Socket编程利用TCP协议的实验报告

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部