计算机网络课程设计报告.doc

上传人:西安人 文档编号:3292205 上传时间:2019-08-08 格式:DOC 页数:26 大小:540.01KB
返回 下载 相关 举报
计算机网络课程设计报告.doc_第1页
第1页 / 共26页
计算机网络课程设计报告.doc_第2页
第2页 / 共26页
计算机网络课程设计报告.doc_第3页
第3页 / 共26页
计算机网络课程设计报告.doc_第4页
第4页 / 共26页
计算机网络课程设计报告.doc_第5页
第5页 / 共26页
点击查看更多>>
资源描述

《计算机网络课程设计报告.doc》由会员分享,可在线阅读,更多相关《计算机网络课程设计报告.doc(26页珍藏版)》请在三一文库上搜索。

1、计算机网络课程设计专业班级:信息安全09级1班小组成员:XXX XXX 课程设计指导教师评定成绩表(学生1姓名: 学号:)项目分值优秀(100x90)良好(90x80)中等(80x70)及格(70x60)不及格(xx90)良好(90x80)中等(80x70)及格(70x60)不及格(x60)评分参考标准参考标准参考标准参考标准参考标准学习态度15学习态度认真,科学作风严谨,严格保证设计时间并按任务书中规定的进度开展各项工作学习态度比较认真,科学作风良好,能按期圆满完成任务书规定的任务学习态度尚好,遵守组织纪律,基本保证设计时间,按期完成各项工作学习态度尚可,能遵守组织纪律,能按期完成任务学习马

2、虎,纪律涣散,工作作风不严谨,不能保证设计时间和进度技术水平与实际能力25设计合理、理论分析与计算正确,实验数据准确,有很强的实际动手能力、经济分析能力和计算机应用能力,文献查阅能力强、引用合理、调查调研非常合理、可信设计合理、理论分析与计算正确,实验数据比较准确,有较强的实际动手能力、经济分析能力和计算机应用能力,文献引用、调查调研比较合理、可信设计合理,理论分析与计算基本正确,实验数据比较准确,有一定的实际动手能力,主要文献引用、调查调研比较可信设计基本合理,理论分析与计算无大错,实验数据无大错设计不合理,理论分析与计算有原则错误,实验数据不可靠,实际动手能力差,文献引用、调查调研有较大的

3、问题创新10有重大改进或独特见解,有一定实用价值有较大改进或新颖的见解,实用性尚可有一定改进或新的见解有一定见解观念陈旧论文(计算书、图纸)撰写质量50结构严谨,逻辑性强,层次清晰,语言准确,文字流畅,完全符合规范化要求,书写工整或用计算机打印成文;图纸非常工整、清晰结构合理,符合逻辑,文章层次分明,语言准确,文字流畅,符合规范化要求,书写工整或用计算机打印成文;图纸工整、清晰结构合理,层次较为分明,文理通顺,基本达到规范化要求,书写比较工整;图纸比较工整、清晰结构基本合理,逻辑基本清楚,文字尚通顺,勉强达到规范化要求;图纸比较工整内容空泛,结构混乱,文字表达不清,错别字较多,达不到规范化要求

4、;图纸不工整或不清晰指导教师评定成绩:指导教师签名: 年 月 日重庆大学本科学生课程设计任务书课程设计题目计算机网络课程设计学院计算机学院专业信息安全年级2009已知参数和设计要求:通过计算机网络的课程设计,使学生了解、掌握TCP、UDP协议的原理;了解、掌握利用Winsock API编程的方法;了解、掌握应用协议设计的思想;利用Winsock API编制一个能部署在Internet上的点对点数据交换(P2P)、HTTP/FTP服务器系统、共享白板。要求每组学生(23人/组)从上述3个系统中任选一个,独立完成系统的功能设计和实现,使所实现的系统可以能够包含主要的内容要求,并要求学生必须在报告中

5、明确具体分工情况。学生应完成的工作:分组 23人/组。 内容:协议编程。语言:Java或C+。3个题目任意两个一组供一个班级选择。1) 点对点数据交换(P2P):实现基于服务器转发的任意多点间的数据共享与交换。2) HTTP/FTP服务器系统:HTTP/FTP客户端系统和HTTP/FTP服务端系统。3) 共享白板:实现基于服务器转发的多点间的文字,简单图案等信息的远程实时共享。目前资料收集情况(含指定参考资料):1) 计算机网络第4版 谢希仁 电子工业出版社 2003年.6月2) 用TCP/IP进行网络互联(第一卷)D.E.Comer 电子工业出版社2004年.11月第四版3) TCP/IP网

6、络原理与技术 周明天、汪文勇:清华大学出版社:19934) Visual C+网络高级编程,陈坚,人民邮电出版社,2001年08月课程设计的工作计划:1需求分析(说明系统目的,要求,操作流程,开发工具与开发平台)2总体设计(描述系统功能,系统架构,模块化分)3详细设计(建立系统的数据结构,协议结构,数据流程图)4系统实现编码(用所选开发工具完成应用系统)任务下达日期 2012年 1 月 9日完成日期 2012 年 1 月 12 日指导教师 (签名)学 生 (签名)说明:1、学院、专业、年级均填全称,如:光电工程学院、测控技术、2003。2、本表除签名外均可采用计算机打印。本表不够,可另附页,但

7、应在页脚添加页码。目录1、 设计方案 二、程序流程框图 三、程序源代码四、程序测试及结果五、参考文献六、成员分工七、小组总结1、 系统设计方案 该系统是针对点对点数据交换(P2P)进行设计的,它的目的是在建立后台server的前提下,实现后台server与客户端client的数据传输及客户端client与客户端client之间的数据共享与交换。 系统总体的要求是:点对点数据交换(P2P)实现基于服务器转发的任意多点间的数据共享与交换。 系统的操作流程如下: 首先打开服务器server,服务器server打开后我们建立了专门的线程 Thread thread = new Thread(new T

8、hreadStart(RunServer);进行监听,用户在登陆界面输入用户名和密码进行登陆,这个过程客户获取了主机的ip并和服务器建立了联系。当用户和服务器建立联系后通过reader函数和writer函数便可以实现服务器server与客户端client、客户端client与客户端client之间的数据共享与交换。2、 程序流程框图 图1. 服务器流程框图 图2.客户端流程框图 三、程序源代码using System.Linq;using System.Text;using System.Windows.Forms;namespace Server_Form_Net public partia

9、l class Server : Form private DealServer Dealserver;/后台处理服务器程序; public Server() InitializeComponent(); / CheckForIllegalCrossThreadCalls = false;/ 很危险,不安全; private void StartButton_Click(object sender, EventArgs e) Dealserver = new DealServer(ServerListBox); Dealserver.StartServer(); /开始监听; StartBut

10、ton.Enabled = false; /启动按钮失效; EndButton.Enabled = true; /终止按钮可用; private void EndButton_Click(object sender, EventArgs e) try Dealserver.EndServer(); /终止服务器; catch /*什么也不做,只是接受异常*/ StartButton.Enabled = true; /启动按钮可用; EndButton.Enabled = false; /终止按钮失效; protected override void OnClosing(CancelEventA

11、rgs e) try Dealserver.EndServer(); catch /*不处理异常*/ Application.Exit();/聊天窗口因为是副窗口,当关闭时使整个程序结束; using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Windows.Forms;using System.Net;using System.Net.Sockets;using System.Threading;using System.Collections;using

12、System.IO;namespace Server_Form_Net class DealServer private ListBox listBox; private IPAddress ipaddress = Dns.GetHostAddresses(Dns.GetHostName()0;/主机地址; private int port = 5000;/监听端口; private TcpListener listener; /服务器监听; private List userList=new List(); /所有用户列表; public DealServer(ListBox box) li

13、stBox = box; public void StartServer() SetListBox(服务器开始监听.); listener = new TcpListener(ipaddress, port); listener.Start(); Thread thread = new Thread(new ThreadStart(RunServer); thread.Start(); public void EndServer() SetListBox( ); SetListBox( 服务器终止,客户依次退出.); for (int i = 0; i 9) | (num 0) continu

14、e;/只是为了测试用; else /4-我的名字-6-对象名-信息; string splitString = ReadStream.Split(-); /取发送者名字; int myNum = int.Parse(splitString0); string myname = splitString1; /取聊天对象名字; int toNum = int.Parse(splitString2); string toname = splitString3; /取信息; string tostr = splitString4; tostr = myname + : + tostr; ChatToS

15、ingle(toname, tostr); /向自己发送; ChatToSingle(myname, tostr); continue; private string FriendList(string name,int n) /当用户第一次登录时,当有新用户登录时,群发好友列表;/当用户离线时,也群发信息;/*发送好友列表格式/自己名字群体聊天好友好友好友好友; string allName; if (n = 0)/离线; allName = + name + 离开房间了; else/上线; allName = + name + 群体聊天; for (int i = 0; i userLis

16、t.Count; i+)/将所用用户列表返回到客户端好友列表; User users = userListi; allName += + users.Username; /* return allName; /* /单独聊天; private void ChatToSingle(string name,string str) BinaryWriter writer; for (int i = 0; i userList.Count; i+) User user = userListi; if (user.Username = name) NetworkStream netStream = us

17、er.Client.GetStream(); writer = new BinaryWriter(netStream); writer.Write(str); break; /* /群发; private void ChatToAll(string name,string str) BinaryWriter writer; for (int i = 0; i userList.Count; i+) User user = userListi; NetworkStream netStream = user.Client.GetStream(); writer = new BinaryWriter

18、(netStream); writer.Write(name+ (群发):+str); /群发重载,添加好友列表,删除离线好友; private void ChatToAll(string str) BinaryWriter writer; for (int i = 0; i 23) listBox.SelectedIndex = listBox.Items.Count - 1;/锁定最后一行; catch /*什么也不做,只是接受异常*/ using System;using System.Collections.Generic;using System.Linq;using System.

19、Text;using System.Windows.Forms;using System.Net.Sockets;using System.IO;using System.Threading;namespace Client_Form_Net class DealClient private string userName;/用户名; private string passWord;/密码; private TcpClient client;/客户端; private ListBox chatRoomListBox;/聊天窗口; private ListBox friendListBox; /

20、好友列表; private TextBox sendTextBox; /发送窗口; private Label headLabel; private Form LoginForm;/登录窗口; private StreamWriter sw; private StreamReader sr; private BinaryReader reader;/读取流; private BinaryWriter writer;/写入流; string Friend; public DealClient(Form loginForm) LoginForm = loginForm; public DealClient(T

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 研究报告 > 信息产业


经营许可证编号:宁ICP备18001539号-1