tcp socket编程

tcp socket编程

ID:41032851

大小:30.50 KB

页数:4页

时间:2019-08-14

tcp socket编程_第1页
tcp socket编程_第2页
tcp socket编程_第3页
tcp socket编程_第4页
资源描述:

《tcp socket编程》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、1.实验目的• 熟悉和掌握网络编程的基本方法和步骤;• 进一步理解client/server交互模式;• 加深学生对于网络协议概念的理解以及协议的设计和实现方法 2.实验任务使用任意网络编程语言(Java、C、VB、Delphi等)编写网络选课模拟程序,它由client和server两部分组成,client和server之间的通信基于TCP协议,并且实现NCSP应用层协议(Network-basedCourseSelectionProtocol)。 3.NCSP应用层协议3.1NCSPServer的功能• 当接收到client发送的GE

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

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

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

5、ent的连接请求。 当server解析GETCOURSE命令,发生错误时,返回“300Messageformaterror”字符串。 下面是client和server的交互: C:GETCOURSEXT S:200OK S:ComputerNetwork S:DatabasePrinciple S:JavaLanguage S:. 3.3.2SETCOURSESETCOURSE命令由client发送给server,它由一个ASCII字符串组成:首先是“SETCOURSE”,然后紧跟着一个空格(space),然后是用户名,最后是换行符('

6、')。client然后等待服务器应答:如果返回的是“301Userexists”字符串,说明该用户已经选择了课程(这里我们假设用户必须一次选择好课程,不能更改);如果返回的是“200OK”字符串,说明该用户还没有选择课程,可以选课。Client将用户输入的课程名发送给server,每一门课程名是一个以换行符''终结的字符串,当课程名都发送完毕,发送“.”字符串作为结束标志。然后Client断开连接,重新接收用户输入。 当server接收到SETCOURSE命令,它解析出用户名,然后检索该用户是否已经选择了课程,如果已经选择,则返

7、回“301Userexists”字符串,关闭连接;如果用户还没有选择课程,则返回“200OK”字符串,server继续接收client发送的课程消息,每一门课程名是一个字符串,当接收到“.”字符串时,说明课程名发送完毕。Server将用户名和其选择的所有课程存储起来,然后断开连接,重新监听新的client的连接请求。 当server解析SETCOURSE命令,发生错误时,返回“300Messageformaterror”字符串。 下面是client和server的交互: C:SETCOURSEXT S:200OK C:ComputerN

8、etwork C:DatabasePrinciple C:JavaLanguage C:. 3.3.3SHUTDOWNSHUTDOWN命令由client发送给server,它由一个ASCII字符串组成:首先

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

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

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