TCP套接字编程

TCP套接字编程

ID:39468750

大小:416.00 KB

页数:18页

时间:2019-07-04

TCP套接字编程_第1页
TCP套接字编程_第2页
TCP套接字编程_第3页
TCP套接字编程_第4页
TCP套接字编程_第5页
资源描述:

《TCP套接字编程》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、计算机网络程序设计实验报告实验题目:面向TCPSocket编程学院计算机学院专业网络工程班级02班姓名温慧君学号409090402322012年4月13日一、实验名称熟悉和掌握网络编程的基本方法和步骤; 进一步理解client/server交互模式;加深学生对于网络协议概念的理解以及协议的设计和实现方法二、实验目的和要求目的:熟悉和掌握网络编程的基本方法和步骤; 进一步理解client/server交互模式;加深学生对于网络协议概念的理解以及协议的设计和实现方法要求:编写网络选课模拟程序,它由client和server两部分组成,client

2、和server之间的通信基于TCP协议,并且实现NCSP应用层协议(Network-basedCourseSelectionProtocol)。三、开发环境操作系统Windows7Ip:192.168.1.105物理地址:90-4C-E5-E0-62-0E使用软件:eclipse四、实验内容和结果1、程序整体功能编写网络选课模拟程序,它由client和server两部分组成,client和server之间的通信基于TCP协议,并且实现NCSP应用层协议(Network-basedCourseSelectionProtocol)。 NCSP应用

3、层协议NCSPServer的功能• 当接收到client发送的GETCOURSE协议消息,返回该用户已经选择的所有课程名字;• 当接收到client发送的SETCOURSE协议消息,记录用户名和课程名,以便client使用GETCOURSE命令查询;• 当接收到client发送的SHUTDOWN协议消息,检查用户是否有此权限,如果有则结束server程序。 NCSPClient的功能允许用户选择要发送的协议消息及其附带参数,然后向server发送GETCOURSE、SETCOURSE或者SHUTDOWN命令之一,并从server得到应答结果,

4、显示给用户。 NCSP协议本次实验所要实现的网络选课程序,其核心是client和server之间所遵从的共同协议:NCSP协议。下面我们详细描述该协议。 GETCOURSEGETCOURSE命令由client发送给server,它由一个ASCII字符串组成:首先是“GETCOURSE”,然后紧跟着一个空格(space),然后是用户名,最后是换行符('')。client然后等待服务器应答:如果返回的是“401Userdoesnotexist”字符串,说明该用户还没有选择课程;如果返回的是“200OK”字符串,说明该用户已经选择了课程,cli

5、ent继续接收server发送的课程消息,每一门课程名是一个字符串,当接收到“.”字符串时,说明课程名发送完毕。Client断开连接,重新接收用户输入。 当server接收到GETCOURSE命令,它解析出用户名,然后检索该用户是否已经选择了课程,如果没有,则返回“401Userdoesnotexist”字符串,关闭连接;如果用户选择了课程,则返回“200OK”字符串,然后将用户选择的课程名返回给client,由于用户可能选择了多门课程,因此每一门课程名作为一个字符串返回给client,当课程名都发送完毕,发送“.”字符串作为结束标志。然后断

6、开连接,重新监听新的client的连接请求。 当server解析GETCOURSE命令,发生错误时,返回“300Messageformaterror”字符串。3.3.2SETCOURSESETCOURSE命令由client发送给server,它由一个ASCII字符串组成:首先是“SETCOURSE”,然后紧跟着一个空格(space),然后是用户名,最后是换行符('')。client然后等待服务器应答:如果返回的是“301Userexists”字符串,说明该用户已经选择了课程(这里我们假设用户必须一次选择好课程,不能更改);如果返回的是“2

7、00OK”字符串,说明该用户还没有选择课程,可以选课。Client将用户输入的课程名发送给server,每一门课程名是一个以换行符''终结的字符串,当课程名都发送完毕,发送“.”字符串作为结束标志。然后Client断开连接,重新接收用户输入。 当server接收到SETCOURSE命令,它解析出用户名,然后检索该用户是否已经选择了课程,如果已经选择,则返回“301Userexists”字符串,关闭连接;如果用户还没有选择课程,则返回“200OK”字符串,server继续接收client发送的课程消息,每一门课程名是一个字符串,当接收到“.

8、”字符串时,说明课程名发送完毕。Server将用户名和其选择的所有课程存储起来,然后断开连接,重新监听新的client的连接请求。 当server解析SETCOUR

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

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

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