计算机网络讨论课 基于socket网络通信协议的应-成品

计算机网络讨论课 基于socket网络通信协议的应-成品

ID:12318866

大小:214.77 KB

页数:9页

时间:2018-07-16

计算机网络讨论课 基于socket网络通信协议的应-成品_第1页
计算机网络讨论课 基于socket网络通信协议的应-成品_第2页
计算机网络讨论课 基于socket网络通信协议的应-成品_第3页
计算机网络讨论课 基于socket网络通信协议的应-成品_第4页
计算机网络讨论课 基于socket网络通信协议的应-成品_第5页
资源描述:

《计算机网络讨论课 基于socket网络通信协议的应-成品》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、计算机网络讨论课报告题目:基于Socket网络通信协议的应用研究学生所在班级:通信工程1班课题组成员:指导教师:李玉博摘要1前言21Socket的定义和工作原理22Socket套接字的类型22.1流式套接字22.2数据报式套接字33Socket套接字应用33.1Linux环境中的Socket33.2window环境中的Socket33.3面向无连接(UDP)的Socket43.4面向连接(TCP)的Socket54结论5基于Socket网络通信协议的应用研究摘要:Socket简称套接字,用于实现网络上客户和服务器之间的连接,也就是说网络

2、上两个或两个以上双工方式通信的进程之间总有一个连接,这个连接的端点称为套接字,套接字是在比较低的层次上通信的,不同的操作系统对Socket有不同的支持方式,不同的开发工具,对Socket的实现也均不相同,而且Socket在TCP与UDP两大协议族系中也有各自的工作方式。关键词:Socket;网络连接;网络通讯前言随着网络通信技术的不断发展,Socket开发和研究已成为人们关注的热点。Socke既适用于同一台计算机上的进程间通信,也适用于网络环境中的进程间通信。它已成为当前许多操作系统的网络API,也是网络操作系统中必不可少的基础功能。套

3、接字是通信的基本元件,两个进程为了进行通信,首先必须设置套接字。通俗讲,套接字相当于由其名字连接起来的通信线路的端点,这种连接不仅适用于本地进程之间的通信,而且也使用语远地进程之间的通信。用套接字连接的两个进程可双向通信,且两通信端点的工作方式是不同的,一端须工作于服务方,另一端须工作于客户方。本文从多个方面介绍了Socket的应用开发、实现环境以及工作流程,并用JAVA开发工具在WindowsNT系统上实现网络通讯为例来对Socket套接字做了更加深入的介绍。1Socket的定义和工作原理Socket套接字,英文原义是插座的意思,是进

4、程之间通信的抽象连接点,可以通过一个形象的例子来理解这个概念,现实生活中的电话是人们联系的常用工具,双方只要使用两部电话机就可以交谈,在计算机世界中,两个程序就是使用Socket进行通信的,一个Socket就好比一部电话机,两个程序在网络上通过一个双向链路进行通信,这个双向链路的每一端就成为一个Socket。进程之间要通信,首先要建立各自的Socket就像要打电话一定要先有电话机一样,打电话时每部电话机都可以说和听。与此类似,每个Socket也都可以进行读、写操作,读、写操作时分别要用到Socket中的输入流和输出流。建立连接后,客户程

5、序可以向Socket里写入请求,然后服务器会处理这个请求,并把处理结果通过Socket送回。服务器应用程序一般监听一个特定端口以等待一个客户的连接请求,当一个连接请求到达时,客户和服务器建立一个通信连接。在连接过程中,客户被分配一个本地端口号并且与一个Socket连接,客户通过写Socket来通知服务器,通过读Socket来获取信息。类似地,服务器也获取一个本地端口号,它需要一个新的端口号来监听原始端口上的其它连接请求。服务器也给它的本地端口连接一个Socket,读写来自客户的请求。目前可以使用两种Socket,即流式Socket和数据

6、报式Socket。流式Socket提供了双向的、有序的、无重复并且无记录边界的数据流服务。TCP即是一种流式Socket协议;数据报式Socket支持双向的数据流,但并不保证可靠、有序、无重复也就是说,一个以数据报式Socket接收信息的进程有可能发送信息重复了,或者和发出的顺序不同。数据报式Socket的一个重要特点是它保留了记录边界。UDP即是一种数据报式Socket协议。2Socket套接字的类型2.1流式套接字提供了双向的、有序的、无重复并且无记录边界的字节流服务,TCP即是一种流式Socket协议图2-1流式套接字模型2.2数

7、据报式套接字提供了双向的无连接的数据流,但并不保证可靠、有序,无重复UDP即是一种数据报式Socket协议。图2-2数据报式套接字模型3Socket套接字应用3.1Linux环境中的Socket在Linux系统中,套接字(Socket)是介于应用层和传输层之间的编程接口,它提供了访问下层通信协议的大量系统调用和相应的数据结构功能。套接字接口也是应用程序访问下层网络协议的惟一方法。具体地讲,套接字在用户级实现了两个应用程序之间的网络连接和数据交换,所以Linux中的套接字意味着网络上的通信。图3-1Linux环境中的Socket模型图3.

8、2window环境中的SocketSocket实际在计算机中提供了一个通信端口,可以通过这个端口与任何一个具有Socket接口的计算机通信。应用程序在网络上传输,接收的信息都通过这个Socket接口来实现。

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

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

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