北京理工大学-计算机网络实践-winsock点对点通信实验报告new

北京理工大学-计算机网络实践-winsock点对点通信实验报告new

ID:18561299

大小:120.00 KB

页数:5页

时间:2018-09-19

北京理工大学-计算机网络实践-winsock点对点通信实验报告new_第1页
北京理工大学-计算机网络实践-winsock点对点通信实验报告new_第2页
北京理工大学-计算机网络实践-winsock点对点通信实验报告new_第3页
北京理工大学-计算机网络实践-winsock点对点通信实验报告new_第4页
北京理工大学-计算机网络实践-winsock点对点通信实验报告new_第5页
资源描述:

《北京理工大学-计算机网络实践-winsock点对点通信实验报告new》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、实验一WinSock点对点通信程序一、实验目的:WinSock是Windows操作系统下的Socket编程接口,通过WinSock函数库可以实现基于TCP/IP协议的进程之间通信。l理解基于WinSock的客户/服务器概念l掌握使用WinSock进行编程的方法l了解常见WinSock开发模式的使用二、实验内容:基于WinSock开发一个简单的客户/服务器文本传输程序,客户端能够发送由标准输入得到的文本,服务器能够接收并将其显示在标准输出上。三、实验环境:程序运行环境为以太网,采用TCP/IP协议栈,网络操作系统为Windows。程序开发环境为vs2012版本。四、实验步骤:步骤

2、1需求分析程序功能为:(1)服务器可以接受任何客户的连接(2)服务器在同一时刻只能与一个客户通信,直到该客户退出才可以接收下一个客户(3)客户程序使用命令行参数指定服务器地址(4)客户端输入的文本都发送给服务器(5)客户使用Ctrl+C键停止发送,关闭连接步骤2服务器程序:定义全局变量:SOCKETServer;//服务器端套接字SOCKADDR_INClient_Addr;//请求用户的Ip地址SOCKETSock_Conn;//是否建立连接成功5charBuff_Recv[1024];//接收字符缓冲charBuff_Send[1024];//发送字符缓冲区服务器端主程序及

3、用到的相关函数:voidSLoad();//加载套接字库voidSCreate();//创建套接字voidSBind();//绑定套接字到一个IP地址和一个端口上voidSListen();//将套接字设置为监听模式等待连接请求voidSAccept();/*请求到来后,接受连接请求,返回一个新的对应于此次连接的套接字*/voidSClose();//关闭套接字voidSUnLoad();//卸载套接字库voidReceive();//接受请求voidSend();//服务器段发送字符串到客户端主函数:intmain(intargc,char*argv[]){…/*循环查询*/

4、while(1){SLoad();SCreate();SBind();SListen();SAccept();Receive();SClose();SUnLoad();}5…}步骤三、客户端程序:定义全局变量:SOCKETClient;//客户端端套接字SOCKADDR_INServer_Addr;//服务器用户的Ip地址WSADATAwsaData;charBuff_Recv[1024];//接收字符缓冲charBuff_Send[1024];//发送字符缓冲区客户端主程序及用到的相关函数:voidSLoad();//加载套接字库voidSCreate();//创建套接字vo

5、idSBind();//绑定套接字到一个IP地址和一个端口上voidSAccept();/*请求到来后,接受连接请求,返回一个新的对应于此次连接的套接字*/voidSClose();//关闭套接字voidSUnLoad();//卸载套接字库voidReceive();//客户端接收字符串到客户端voidSend();//发送请求主函数:intmain(intargc,char*argv[]){…SLoad();SCreate();SBind();SAccept();/*循环发送请求*/while(1)5{Send();}SClose();SUnLoad();…}五、实验效果:Ø

6、服务器端接收请求:Ø客户端输入服务器IP地址并等待响应:Ø客户端选择命令帮助1进行通信2退出Ø服务器进行选择是否响应客户端开始通信:5Ø客户端:Ø服务器端:六、实验总结:Socket接口是TCP/IP网络的API,Socket接口定义了许多函数或例程,我们可以用它们来开发TCP/IP网络上的应用程序。要学Internet上的TCP/IP网络编程,必须理解Socket接口。socket实质上提供了进程通信的端点。进程通信之前,双方首先必须各自创建一个端点,否则不能建立联系并相互通信。在网络中,每一个socket用一个半相关描述:(协议,本地地址,本地端口)一个Server-Cli

7、ent模型的程序开发原理:  服务器,使用ServerSocket监听指定的端口,端口可以随意指定(由于1024以下的端口通常属于保留端口,在一些操作系统中不可以随意使用,所以建议使用大于1024的端口),等待客户连接请求,客户连接后,会话产生;在完成会话后,关闭连接。客户端,使用Socket对网络上某一个服务器的某一个端口发出连接请求,一旦连接成功,打开会话;会话完成后,关闭Socket。客户端不需要指定打开的端口,通常临时的、动态的分配一个1024以上的端口。5

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。