基于Socket的网络编程技术及其实现学士学位

上传人:DKm****21 文档编号:160810433 上传时间:2021-01-12 格式:DOC 页数:70 大小:1.83MB
返回 下载 相关 举报
基于Socket的网络编程技术及其实现学士学位_第1页
第1页 / 共70页
基于Socket的网络编程技术及其实现学士学位_第2页
第2页 / 共70页
基于Socket的网络编程技术及其实现学士学位_第3页
第3页 / 共70页
基于Socket的网络编程技术及其实现学士学位_第4页
第4页 / 共70页
基于Socket的网络编程技术及其实现学士学位_第5页
第5页 / 共70页
点击查看更多>>
资源描述

《基于Socket的网络编程技术及其实现学士学位》由会员分享,可在线阅读,更多相关《基于Socket的网络编程技术及其实现学士学位(70页珍藏版)》请在金锄头文库上搜索。

1、理工大学学士学位论文摘 要随着网络技术的飞速发展,计算机给人类文明带来了翻天覆地的变化,原来物理上的接口已不能满足网络通信的要求了。TCP/IP(Transmission Control Protocol/Internet Protocol)协议作为网络通信的基本协议就解决了这一通信难题,它引入了一种称之为“Socket”的应用程序接口。Socket 是建立在传输层协议上的一种套接字规范,基于Socket的网络编程已是一项现如今被广泛利用的技术,很大程度上方便了人们的生活。本文以VC+6.0为开发环境,利用套接字的网络编程规范,实现运行不同桌面操作系统的计算机之间的相互监控的远程控制系统。该系

2、统对远程主机的监控主要包括:实时监视桌面状态、修改系统配置文件、控制鼠标、键盘等基本操作。系统可以让本地计算机通过局域网访问不同的远程计算机,也可以进行网际主机控制。本文首先针对远程控制系统的关键技术进行了深入研究,并对远程控制系统的做出了需求分析。设计了系统的基本框架和各个模块的功能,主要针对服务器模块,客户端模块,消息模拟模块等进行了具体实现。最后对系统进行了功能测试和性能分析,并得出所期望的测试结果。关键字:Socket;VC+;网络编程;远程控制 AbstractWith the rapid development of network technology, computer has

3、 brought human civilization aundergone enormous changes, the original physical interface has been unable to meet the requirements of network communication. As the network communication protocol TCP / IP protocol solved the basic problem of this communication, the introduction of a technique called S

4、ocket application program interface. Socket network based on programming is a widely utilized nowadays .In this paper, VC 6.0 development environment, socket-based network programming, implementation and process control system that allows the local computer through the LAN to access different remote

5、 computers, and its operation can also be carried out Internet host.This article first briefly introduces the remote desktop monitoring system key technologies, as well as system requirements analysis. The basic framework of the system design and function of each module; then introduces the various

6、functional modules of the specific implementation steps. Finally, test methods and results, the advantages and disadvantages of the system are summarized.Keywords:Socket;VC+;Network Programming;Remote Control目录1 绪论11.1 课题的背景和意义11.2 课题的国内外研究现状11.3 课题的结构安排22 Socket网络编程的关键技术32.1 Socket网络编程理论基础32.1.1 OS

7、I七层网络模型与TCP/IP四层网络模型32.1.2 Socket编程基本原理62.2 Windows Socket网络编程技术102.2.1 Winsock简介102.2.2 Winsock通信机制102.2.3 Winsock编程模型112.3 图像技术132.4 图像压缩编码解码162.4.1 霍夫曼压缩172.4.2 Run Length压缩173 远程控制系统总体设计193.1 系统需求分析193.1.1 用户需求193.1.2 可采用的技术方案193.2 可行性技术方案193.2.1 技术可行性193.2.2 经济可行性203.3 系统的基本框架203.4 模块划分及功能设计214

8、 系统的详细设计与实现224.1 界面设计224.1.1 客户端界面224.1.2 服务器端界面244.2 客户端模块设计与实现254.3 服务器模块设计与实现274.4 消息模拟功能的实现294.5 流数据的实现304.6 图形编码305 系统实施及测试345.1 测试环境搭建345.2 系统功能和性能测试345.2.1 客户端显示测试345.2.2 鼠标键盘功能测试395.3 测试结果42结 论43致 谢44参考文献45附录A 英文原文47附录B 中文翻译58附录C 源程序65671 绪论1.1 课题的背景和意义随着计算机网络技术的发展,原来物理上的接口(如键盘、鼠标、网卡、显示卡等输入、

9、输出接口)已不能满足网络通信的要求了。TCP/IP协议作为网络通信的基本协议就解决了这一通信难题。TCP/IP协议集成到操作系统的内核中,在TCP/IP协议中引入了一种称之为“Socket”的应用程序接口。Socket 是建立在传输层协议是TCP(Transmission Control Protocol)和UDP(User Datagram Protocol)上的一种套接字规范,它最初由美国加州Berkley大学提出,是UNIX 操作系统开发的网络通信接口,它定义了两台计算机间的通信规范(也是一种编程规范)。如果两台计算机是利用一个“通道”进行通信,那么这个“通道”的两端就是套接字。Sock

10、et 屏蔽了底层通信软件和具体操作系统的差异,使得任何两台安装了TCP 协议软件和实现了Socket 规范的计算机之间的通信成为可能。Socket接口是TCP/ IP 网络最为通用的API(Application Program Interface),也是在Internet 上进行应用开发最通用的API。1.2 课题的国内外研究现状基于Socket的网络编程技术在人们不断的研究和探索下,日益的完善与成熟,已被广泛的应用在通信,医疗等各个领域。比如市面上比较普遍的QQ、UC、飞鸽传书等以内部网络为中心的资源共享系统,都应用到套接字网络编程技术。目前,常用的Socket类型有两种,流式Socket

11、(SOCK_STREAM)和数据报式Socket(SOCK_DGRAM)。流式是一种面向连接的Socket,针对于面向连接的TCP服务应用,实现了无差错无重复的顺序数据传输,无长度限制;数据报式Socket是一种无连接的Socket,对应于无连接的UDP服务应用,定义了一种无连接的服务,数据通过相互独立的报文进行传输,是无序的,并且不保证可靠。在现在的网络应用中,通信双方最常见的交互模式便是Client/ Server 模式。客户/ 服务器模式通常采用监听/ 连接的方式实现,服务器端应用程序在一个端口监听对服务的请求。也就是说,服务进程一直处于休眠状态,直到有一个客户对这个服务提出了连接请求,

12、此时服务线程被“唤醒”并为客户。目前,大多数远程进程间通信代码是用Socket 编写的,实际应用中用Socket 传输信息并不是独立的,它在多线程的处理环境中应用更为广。1.3 课题的结构安排第1章论述了Socket网络编程的的研究背景和意义, Socket网络编程技术的国内外研究现状。第2章论述了Socket网络编程的关键技术:网络编程的理论基础,Windows Socket网络编程技术,图像技术,图像压缩的编码及解码,包括霍夫曼压缩,和Run Length(行程长度)压缩等。 第3章对系统进行了总体设计。总体设计包括需求分析、可行性技术方案,框架结构、模块划分以及模块的功能定义。第4章给出

13、了系统详细的设计和具体实现。详细设计包括了界面设计,客户端模块设计与实现,服务器模块设计与实现,消息模拟功能的实现,流数据的实现,图形编码等。第5章对系统进行了测试,包括测试的环境、过程和测试结论。2 Socket网络编程的关键技术2.1 Socket网络编程理论基础2.1.1 OSI七层网络模型与TCP/IP四层网络模型1、OSI网络分层参考模型网络协议设计者不应当设计一个单一、巨大的协议来为所有形式的通信规定完整的细节,而应把通信问题划分成多个小问题,然后为每一个小问题设计一个单独的协议,这样做使得每个协议的设计、分析、时限和测试比较容易。协议划分的一个主要原则是确保目标系统有效且效率高。

14、为了提高效率,每个协议只应该注意没有被其他协议处理过的那部分通信问题;为了主协议的实现更加有效,协议之间应该能够共享特定的数据结构,同时这些协议的组合应该能处理所有可能的硬件错误以及其它异常情况。为了保证这些协议工作的协同性,应当将协议设计和开发成完整的、协作的协议系列(即协议簇),而不是孤立地开发每个协议。在网络历史的早期,ISO(国际标准化组织)和国际电报电话咨询委员会(CCITT)共同出版了开放系统互联的七层参考模型。计算机操作系统中的网络过程包括从应用请求(在协议栈的顶部)到网络介质(底部),OSI参考模型如图2.1把功能分成七个分立的层次。第一层:物理层,负责最后将信息编码成电流脉冲

15、或其它信号以用于网上传输。它由计算机和网络介质之间的实际界面组成,可定义电气信号、符号、线的状态、时钟要求、数据编码、数据传输用的连接器。第二层:数据链路层,通过物理网络链路提供可靠的数据传输。不同的数据链路层定义了不同的网络和协议特征,其中包括物理编址、网络拓扑结构、错误校验、帧序列以及流控。第三层:网络层,负责在源点和终点之间建立连接。它一般包括网络寻径、流量控制、错误检查等。相同MAC(Media Access Control)标准的不同网段之间的数据传输一般只涉及到数据链路层,而不同的MAC标准之间的数据传输都涉及到网络层。例如IP路由器工作在网络层,因而可以实现多种网络间的互联。第四层:传输层,向高层提供可靠的端到端的网络数据流服务。传输层的功能一般包括流控、多路传输、虚电路管理及差错校验和恢复。流控管理设备之间的数据传输,确保传输设备不发送比接收设备处理能力大的数据;多路传输使得多个应用程序的数据可以传输到一个物理链路上;虚电路由传输层建立、维护和终止;差错校验包括为检测传输错误而建立的各种不同结构;

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 工业设计

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号