没有合适的资源?快使用搜索试试~ 我知道了~
基于TCP的服务器客户端程序设计.pdf
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
5星 · 超过95%的资源 1 下载量 73 浏览量
2022-07-02
13:40:35
上传
评论
收藏 784KB PDF 举报
温馨提示
试读
17页
基于TCP的服务器客户端程序设计.pdf基于TCP的服务器客户端程序设计.pdf基于TCP的服务器客户端程序设计.pdf基于TCP的服务器客户端程序设计.pdf基于TCP的服务器客户端程序设计.pdf基于TCP的服务器客户端程序设计.pdf基于TCP的服务器客户端程序设计.pdf基于TCP的服务器客户端程序设计.pdf
资源推荐
资源详情
资源评论
重庆交通大学信息科学与工程学院
课程设计实验报告
专 业:
学 号:
姓 名:
实验室(中心): 信息技术软件实验室
指 导 教 师 :
实验完成时间: 年 月 日
目录
一、实验设计题目---------------------------------------------------------------------2
二、实验目的---------------------------------------------------------------------------2
三、实验设计要求---------------------------------------------------------------------2
四、课程设计条件---------------------------------------------------------------------2
五、实验设计分析---------------------------------------------------------------------4
六、实验设计流程图------------------------------------------------------------------9
七、结果分析---------------------------------------------------------------------------13
八、实验心得体会---------------------------------------------------------------------14
九、实验主要代码---------------------------------------------------------------------15
一、实验设计题目
基于 TCP 的服务器/客户端程序设计
二、实验目的
1、理解客户端与服务器模型的工作原理。
2、掌握套接字的概念。
3、掌握 TCP 协议,基于 TCP 协议来设计此客户端/服务器程序。
4、通过设计面向连接的数据流传输服务程序,加深对面向连接的服务程序工作流程和基本框
架的理解。
三、实验设计要求
1)任选一种编程语言,编程实现面向连接的客户/服务器程序,客户端、服务器端分别编程;
2) 编程要充分体现服务器端与客户端的连接建立、数据传输、连接释放的过程;
四、课程设计条件
本次课程设计我采用的是 JAVA 语言,实现客户端和服务器之间的联系。
Java 编程语言的风格十分接近 C、C++语言。Java 是一个纯的面向对象的程序设计语言,它
继承了 C++语言面向对象技术的核心。Java 舍弃了 C ++语言中容易引起错误的指针(以引用取代)、
运算符重载(operator overloading)、多重继承(以接口取代)等特性,增加了垃圾回收器功能
用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java 1.5
版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动
装/拆箱等语言特性。
Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进
制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次
编译、到处执行”的跨平台特性。不过,每次的执行编译后的字节码需要消耗一定的时间,这同时
也在一定程度上降低了 Java 程序的运行效率。
Java 语言的变量声明,操作符形式,参数传递,流程控制等方面和 C 语言,C++语言完全相同.
尽管如此,Java 和 C 语言,C++语言又有许多差别,主要表现在如下几个方面:
Java 中对内存的分配是动态的,它采用面向对象的机制,采用运算符 new 为每个对象分配内
存空间,而且,实际内存还会随程序运行情况而改变。程序运行中 Java 系统自动对内存进行扫描,
对长期不用的空间作为”垃圾”进行收集,使得系统资源得到更充分地利用.按照这种机制,程序
员不必关注内存管理问题,这使 Java 程序的编写变得简单明了,并且避免了由于内存管理方面的
差错而导致系统出问题。而 C 语言通过 malloc()和 free()这两个库函数来分别实现分配内存
和释放内存空间的,C++语言中则通过运算符 new 和 delete 来分配和释放内存。在 C 和 C++这种机
制中,程序员必须非常仔细地处理内存的使用问题。一方面,如果对己释放的内存再作释放或者对
未曾分配的内存作释放,都会造成死机;而另一方面,如果对长期不用的或不再使用的内存不释放,
则会浪费系统资源,甚至因此造成资源枯竭。
Java 不在所有类之外定义全局变量,而是在某个类中定义一种公用静态的变量来完成全局变
量的功能。
Java 不用 goto 语句,而是用 try-catch-finally 异常处理语句来代替 goto 语句处理出错的
功能。
Java 不支持头文件,而 C 和 C++语言中都用头文件来定义类的原型,全局变量,库函数等,
这种采用头文件的结构使得系统的运行维护相当繁杂。
Java 不支持宏定义,而是使用关键字 final 来定义常量,在 C++中则采用宏定义来实现常量
定义,这不利于程序的可读性。
Java 对每种数据类型都分配固定长度。比如,在 Java 中,int 类型总是32位的,而在 C 和
C++中,对于不同的平台,同一个数据类型分配不同的字节数,同样是 int 类型,在 PC 机中为二字
节即16位,而在 VAX-11中,则为32位.这使得 C 语言造成不可移植性,而 Java 则具有跨平台性(平
台无关性)。
Java 语言编写的类库可以在其它平台的 Java 应用程序中使用,而不像 C++语言必须依赖于 Windows
平台。
五、实验设计分析
本实验的设计是基于 TCP/IP 协议的程序时,传输层使用 TCP 协议,它的最大特点是在通信之
前要在客户和服务器之间先建立连接,在数据传输完成后要关闭连接,释放网络资源。
对于 TCP 协议,主要有以下特点:
(1)TCP 是面向连接的运输层协议。应用程序在使用 TCP 协议之前,必须先建立 TCP 连接。在
传送数据完毕后,必须释放已经建立的 TCP 连接。也就是说,应用进程之间的通信好像在“打电话”:
通话前要先拨号建立连接,通话结束后要挂机释放连接。
(2)每一条 TCP 连接只能有两个端点,每一条 TCP 连接只能是点对点的,即一对一的连接。
(3)TCP 提供可靠交付的服务。通过 TCP 连接传送的数据,无差错、不丢失、不重复,并且按
序到达。
(4)TCP 提供全双工通信。TCP 允许通信双方的应用进程在任何时候都能发送数据。TCP 连接
的两端都设有发送缓存和接受缓存,用来临时存放双向通信的数据。在发送时,应用程序在把数据
剩余16页未读,继续阅读
资源评论
- seao1ogy2023-12-13发现一个超赞的资源,赶紧学习起来,大家一起进步,支持!
คิดถึง643
- 粉丝: 3879
- 资源: 1万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功