- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
HUNANCITYUNIVERSITY
网络协议编程课程设计
说明书
设计题目:基于MFC框架得Echo协议模拟软件得设计与实现
专业:网络工程
学生姓名:*****
班级学号:1206101-28
分组成员:1206101-05*****、1206101-31******
1206101-28何***
指导教师:****老师*****老师
2015年07月03日
《网络协议编程课程设计》说明书
学号:1206101-28姓名:****
一、设计时间
2015年06月29日—----07月03日.
二、设计地点
湖南城市学院信息楼507机房。
三、设计目得
1、巩固《网络协议编程》课程涉及得基本知识,培养灵活运用知识进行独立设计得能力;
2、掌握TCP/IP网络程序框架、WinsockAPI、高级网络编程API得使用;
3、提高综合运用所学得理论知识独立分析与解决问题得能力;
4、进一步熟悉利用VisualC++6、0进行开发得能力;
5、培养查阅资料,独立思考问题得能力。
四、设计小组成员
1206101—05****1206101—31****1206101-28****
五、指导老师
****老师、****老师。
六、设计课题
经过小组组员得讨论,决定选取选题(18基于MFC框架得Echo协议模拟软件得设计与实现),编写一个基于MFC框架得Echo协议模拟软件。
理由:
1、Echo协议(也称回声协议)就是一个非常简单得协议,它主要用于网络可达性得检测中。
2、该系统功能相对简单,易于实现,适于初学者。
3、该系统牵涉到TCP协议、CAsysncSocket类、C/S模式以及MFC框架,采用VC6、0编制程序模拟Echo协议得基本功能,需要灵活运用这些知识解决实际问题,有利于培养网络系统开发得实际动手能力。
七、基本思路及关键问题得解决方法
本系统得开发采用基于MFC得Echo协议得C/S模式,服务器在端口7检测接收到得信息,如果收到信息,则原封不动地重发回客户端。根据C/S模式得特点,使用TCP协议、CAsysncSocket类、C/S模式以及MFC框架,采用VC6、0编制程序模拟Echo协议得基本功能。设计为了方便,利用VC++自动生成得对话框来进行删除与修改,并且利用图形用户界面来添加相应得相应按钮.
算法及流程图
开始初始化
开始
初始化
加载CAsyncSocket类
侦听
侦听失败
建立连接
N
Y
调用Accept()函数
调用CAsyncSelect()函数
将数据返回给客户端
关闭套接字
结束
服务器流程图
开始
初始化
加载CAsyncSocket类
结束
连接失败
接收数据
建立连接
N
响应函数OnTimer()
客户端流程图
Y
关闭
程序运行:
服务器初始界面:
客户端初始界面:
服务器开始侦听,客户端点击连接:
弹出如下对话框,输入相应信息:
客户端点击确定后服务器弹出如下提示框:
在信息输入框输入信息:
点击发送:
发送成功并接收到了从服务器端返回得一样得信息。
调试过程中出现得问题及相应解决办法
1、调试过程中出现问题,一一对应检查,在经过对书上代码得对比后改正,最终成功编译并运行。
2、在连接时使用了不相同得端口号,导致建立不了连接,检查之后发现并改正过来。
3。在画流程图时,由于对代码得不熟悉,导致问题多多,经慢慢了解,初步得以解决。
十一、课程设计心得体会
通过这次课程设计,让我更加深刻得了解了TCP这门课程编程方面得知识,与以往对知识得疏忽也得以补充,在设计过程中,我与小组另一位成员一起负责画流程图与基本思路方面,虽然遇到了一些问题,但经过我们几个同学得一次又一次得思考,一遍又一遍得检查终于找出了原因并及时改正,虽然我们在这方面得知识有所欠缺与不足,但就是我觉得我收获了很多、学会了很多、也比以往更有耐心很多。
十二、源程序
服务器:
//侦听
voidCCSockServerDlg::OnListen()
{
?if(m_srvrSocket、m_hSocket==INVALID_SOCKET)
?{
BOOLbFlag=m_srvrSocket、Create(7,SOCK_STREAM,
文档评论(0)