网站大量收购闲置独家精品文档,联系QQ:2885784924

简单的即时通信软件.doc

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
简单的即时通信软件简单的即时通信软件

河南理工大学 计算机科学与技术学院 课程设计报告 2011— 2012 学年第二学期 课程名称 计算机网络 设计题目 简单的即时通信软件 姓 名 学 号 专业班级 网络安全10-05 指导教师 2012 年 6 月 19 日 目录 一、课程设计目的及要求…………………………………………3 (一)本课程设计的教学基本要求…………………………………3 (二)简单的即时通信软件目的与要求……………………………3 二、设计原理………………………………………………………3 (一)socket简介…………………………………………………3 (二)WinSocket的通信原理………………………………………4 (三)SOCKET连接过程……………………………………………4 (四)套接字通信…………………………………………………5 三、程序设计相关介绍及方法……………………………………6 (一)点对点通信…………………………………………………6 (二)WinSocket通信的步骤………………………………………7 (三)程序中用到的过程函数和核心代码…………………………7 四、系统的原理框图及程序流程图………………………………11 五、设计结果及分析………………………………………………14 (一)服务器端和客户端在线初始化窗口…………………………14 (二)通信测试……………………………………………………15 (三)使用须知……………………………………………………16 六、总结……………………………………………………………17 七、参考文献………………………………………………………17 一、课程设计目的及要求 (一)本课程设计的教学基本要求 1.巩固和加深对计算机网络原理的理解,提高综合运用本课程所学知识的能 力。 2.培养学生选用参考书,查阅手册及文献资料的能力。培养独立思考,深入 研究,分析问题、解决问题的能力。 3.通过实际分析设计、编程调试,掌握计算机网络通信的基本规程,以及协 议的利用方法,体会体系结构分层的思路。 4.能够按要求编写课程设计报告书,能正确阐述设计和设计结果、正确绘制 系统和程序框图。 5.通过课程设计,培养学生严谨的科学态度,严肃认真的工作作风,和团队 协作精神。 (二)简单的即时通信软件目的与要求 利用WinSock进行点对点通信,工作机制模仿即时通信软件的基本功能,登 陆,上线,传递信息等等。分为客户部分和服务器部分两块,客户部分类似一般 通信软件例如QQ,服务器部分主要提供客户端用户基本数据配置。 二、设计原理 (一)socket简介 所谓socket通常也称作套接字,用于描述IP地址和端口,是一个通信链 的句柄。应用程序通常通过套接字向网络发出请求或者应答网络请求。 Socket接口是TCP/IP网络的API,Socket接口定义了许多函数或例程,程 序员可以用它们来开发TCP/IP网络上的应用程序。要学Internet上的TCP/IP 网络编程,必须理解Socket接口。 Socket接口设计者最先是将接口放在Unix 操作系统里面的。如果了解Unix系统的输入和输出的话,就很容易了解Socket 了。网络的Socket数据传输是一种特殊的I/O,Socket也是一种文件描述符。 Socket也具有一个类似于打开文件的函数调用Socket(),该函数返回一个整型 的Socket描述符,随后的连接建立、数据传输等操作都是通过该Socket实现的。 常用的Socket类型有两种:流式Socket(SOCK_STREAM)和数据报式Socket(SOCK_DGRAM)。流式是一种面向连接的Socket,针对于面向连接的TCP服务应 用;数据报式Socket是一种无连接的Socket,对应于无连接的UDP服务应用。 最重要的是,socket 是面向客户/服务器模型而设计的,针对客户和服务器 程序提供不同的socket 系统调用。客户随机申请一个socket (相当于一个想打 电话的人可以在任何一台入网电话上拨号呼叫),系统为之分配一个socket号; 服务器拥有全局公认的 socket ,任何客户都可以向它发出连接请求和信息请求 (相当于一个被呼叫的电话拥有一个呼叫方知道的电话号码)。 socket利用客户/服务器模式巧妙地解决了进程之间建立通信连接的问题。 服务器socket 半相关为全局所公认非常重要。不妨考虑一下,两个完全随机的 用户进程之间如何建立通信?假如通信双方没有任何一方的socket 固定,就好 比打电话的双方彼此不知道对方的

文档评论(0)

yyanrlund + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档