socket即时通信..docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
socket即时通信.

基于Socket的即时通讯系统 摘要:介绍了一种基于Delphi 7 的Socket 组件的局域网通信应用,通过对服务器端和客户端的设置,可实现局域网内信息的实时通信,并可以实现相关管理功能. 此系统可用于企事业内部的文字信息交流、通知传达等,具有简单实用、安全性高等特点. 关键字:Delphi Socket 局域网 服务器端 客户端 实时通信 引言 Delphi 在软件开发领域得到了广泛的应用,是Borland 公司的主要产品. 随着网络的普及,尤其是各企事业单位内部局域网的广泛应用,使局域网内部通信成为一种趋势. 使用Delphi 下的Socket 组件,不仅费用低廉,使用方便,而且安全性高.Socket 是建立在传输层协议(主要是TCP 和UDP) 上的一种套接字规范, 最初是由美国加州Berkley 大学提出的,它定义了两台计算机间进行通信的规范(一种编程规范) . 假设两台计算机是利用一个“通道”进行通信,那么这个“通道”的两端就是两个套接字. 套接字屏蔽了底层通信软件和具体操作系统的差异,使得任何两台安装了TCP 协议软件和实现了套接字规范的计算机之间的通信成为可能. 微软的Windows Socket 规范(简称Winsock) 对套接字规范进行了扩展,利用标准的Socket 方法,可以同平台上的任何Socket 进行通信;利用其扩展功能,可以更有效地实现在Windows 平台上计算机间的通信. 在Delphi 中, 其底层的Socket 是Win2dows 的Socket . Socket 减轻了编写计算机间通信软件的难度, 但仍相当复杂; Inprise 在Delphi 中对Windows Socket 进行了有效的封装,使得用户可以很方便地编写网络通信程序 设计目的 通过综合课程设计,使学生能够运用《数字信号处理》、《信号与系统》、《通信原理》、《面向对象的程序设计》、《计算机通信网》、《通信协议开发及应用》等课程的知识来设计一个基于Socket的即时通讯系统,培养学生的动手能力以及分析问题、解决问题的能力。 设计内容 1.大部分网络协议的实现都由客户端(Client)和服务器端(Server)来协作完成。这种模型本质上涉及两个不同的程序,通常这两个程序在不同机器上运行。这些机器之间都有网络连接。服务器端程序提供服务并对来自客户程序的请求作成响应。而客户端程序则是在使用者和服务器端程序之间建立某种沟通的渠道,或者是作为使用服务器端提供的某种网络服务的工具。 一个典型的服务器与客户机之间的交互可能如下所示: 1) 客户机提出一个请求; 2) 服务器收到客户机的请求,进行分析处理; 3) 服务器将运行处理的结果返回给客户机。 通常一个服务器需要向多个客户机提供服务。因此对服务器来说,还需要考虑如何有效地处理多个客户的请求。 2 .服务器与客户端的Socket 通信类型 Socket 的连接类型可以分为两种,分别是面向连接的字节流类型(Sock_stream)和面向无连接数据报类型(Sock_dgram)。面向无连接数据报类型的Socket 工作流程比较简单,双方不需要进行太多的沟通与交互。客户机直接将用户的请求打包发送到服务器端,省略了建立一个固定信息通道的过程。服务器端也是直接将处理的结果发送给客户端。每个发送的数据报都携带有传递所需要的所有地址信息。其工作流程如图1 所示。面向连接的字节流类型的Socket 工作中有比较严格的操作次序, 工作的原理也比较复杂。在这种类型的Socket 的工作过程中, 必须首先启动服务器端, 通过调用socket()函数建立一个Socket 对象,然后调用Bind()函数将该Socket 对象和本地网络地址绑定到一起。再调用Listen()函数使该Socket 对象处于侦听状态,并规定它的最大请求的数量。 设计要求 1熟练掌握面向对象的程序设计方法; 2实现点对点系统参数Delphi Socket 1.Delphi 中Socket 的操作方式 根据连接发起的方式以及本地Socket 要连接的目标,Socket 之间的连接可以分为:客户端连接、监听连接以及服务器端连接。Delphi 分别使用ClientSocket 组件和ServerSocket 组件来操纵客户端Socket 和服务器端Socket 的连接和通信。ClientSocket 组件为客户端组件。它是通信的请求方,也就是说,它是主动地与服务器端建立连接。ServerSocket 组件为服务器端组件。它是通信的响应方,也就是说,它的动作是监听以及被动接受客户端的连接请 求,并对请求进行回复。ServerSocket 组件可以同时接受一个或多个ClientSocket 组件的连接请求,并与每个ClientSoc

文档评论(0)

bhzs + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档