tcpip课程设计报告-聊天工具

tcpip课程设计报告-聊天工具

ID:12488312

大小:355.19 KB

页数:8页

时间:2018-07-17

tcpip课程设计报告-聊天工具_第1页
tcpip课程设计报告-聊天工具_第2页
tcpip课程设计报告-聊天工具_第3页
tcpip课程设计报告-聊天工具_第4页
tcpip课程设计报告-聊天工具_第5页
资源描述:

《tcpip课程设计报告-聊天工具》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、TCP/IP技术课程设计报告一、需求分析:1.1功能要求本实验通过简单的网络编程可以实现简单的通信功能,两个用户的通信和多个用户的通信,通过服务器转发。服务器:用户信息注册注册过的用户登录显示在线的好友④聊天⑤退出系统客户端:显示服务器的消息显示聊天对等端的信息对话信息1.2数据要求服务器:对客户端所注册的密码和用户名存储在文件中,所存储的数据不能改变。将登录的人员的信息动态保存在服务器端的一个结构体数组中。客户端:对数据进行读写,客户端按照要求输入信息。将注册信息写入服务器的文件中存储,从服务器端

2、读出登录验证反馈的信息,可以观察数据的存入状况。1.3潜在需求此系统在功能上还是有一定的不足的,还有一定的改善空间。如:实现离线消息的发送、添加图形化界面的实现、系统增加删除好友、实现用户修改信息以及使对话模式更加人性化。1.4系统逻辑模型:框架图:系统通信显示在线好友用户退出登陆用户信息注册用户信息用户在线聊天用户不在线客户B客户A服务器客户B客户A通信图:服务器发送转发二、设计思想与过程:此实验是通过UDP实现简单网络通信,客户A、B相互通信要经过服务器端转发。服务器端接收客户端发来的注册信息,

3、将信息中的用户名和密码存储到服务器端的文件中。当有客户登录系统,服务器端用结构体数组动态保存当时系统在线的用户名和IP地址。当两用户进行通信时,服务器将保存在动态数组里的IP地址取出用于转发。当接收方收到信息后,从接受状态转化成发送状态,可以回发信息,服务器用同样的方法转发。当客户端要求获取在线好友信息(本系统默认登录的用户都是好友),服务器把在线的动态结构体数组发给提出要求的用户,用户读取并显示信息。三、程序概貌:注册界面:登陆界面:聊天界面:实现多人通信:获取在线好友:服务器端的显示:四、本程序

4、的亮点及亮点所带来的优越性:本次课程设计实现了基本的通信要求,但程序的健壮性有待提高。设计中没有使用任何线程或进程,用标志位来循环切换发送状态和接收状态。实现了客户间的通信,完成了聊天的基本功能,可以注册用户信息并登录,更新好友列表,发送在线消息等。用户信息存储于服务器端的文件中,即使是服务器端断开后,下次开启的时候,客户端可以直接登录,以往的信息不回丢失。可以实现和任意一个在线用户通信的功能以及一对多的通信。五、对TCP/IP套接字编程的体会:通过本次课程设计,使我了解到了网络通信的一般流程,并掌

5、握了基本的编写网络通信程序的方法。在实验过程中写获取在线好友信息时,保存的数组里没有在线人数,所以在客户端用for循环的时候不知道具体循环多少次。因为用了一个比较大的数浪费了循环时间和资源,这一点有待改进。源代码刚写成时调试时出现过“段错误”,经上网查找资料知道段错误经常是伴随着指针出现的,故在程序中重点查找指针,终于发现错误所在。通过此次课程设计使我了解到UDP通信与我们熟悉的TCP通信有一定程度的不同。它的发送与接收使用的是通过sendto、recvfrom函数实现。区分了它们与send和rec

6、v函数的具体应用和区别。感觉这是一次经验的积累,更加深入的了解需要更加努力的学习。在调试的过程中出现各种各样的错误,但和同组同学耐心调试后还是可以解决的。团队精神和查阅资料这两者在课程设计中显得尤为重要。六、本游戏主要程序如下:程序源码保存在089074349+zhuxiaomin+089074330+liuweinan.zip中

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

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

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