电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

网络通信原理大作业--基于TCP的ATM系统

19页
  • 卖家[上传人]:liy****000
  • 文档编号:373311026
  • 上传时间:2023-12-15
  • 文档格式:DOCX
  • 文档大小:556.87KB
  • / 19 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、网络通信原理大作业基于TCP的ATM系统目录一、实验目标 31.1 设计目标 31.2 完成功能 3二、实验原理 42.1 TCP在TCP/IP协议簇中的位置及特点42.2 TCP的SOCKET 实现 42.3 客户端/服务器端模型的设计原理 5三、程序设计 63.1 程序主要类结构 63.2 建立/关闭Socket 63.2.1 建立Socket 63.2.2 收发数据 73.2.3 关闭Socket 83.3 ATM终端操作和服务器端响应程序 93.3.1 查询 93.3.2 取款 93.3.3 存款103.3.4 修改密码11四、开发工具12五、测试报告125.1 测试环境125.2测试方法和步骤125.2.1 服务器端125.2.2 ATM终端135.3 测试结果19六、软件开发总结196.1 软件开发的收获196.2 难点问题的处理及待完善的问题19七、参考文献19一、实验目标1.1设计目标TCP 是Transmission Control Protocol 的简称,是一种面向连接的、可靠的、基于字节流的传输层通信协议。本设计采用基于TCP协议的sock编程,通过实现网络数据

      2、发送和接收功能,模拟简单的银行ATM系统,包括ATM终端机和银行服务器。1.2完成功能(1)ATM终端机初始化,保证输入正确的服务器地址和端口号,才能成功连接到银行服务器,进行后续操作。(2)用户在ATM终端机上输入正确的卡号和密码后,进入ATM终端机操作界面,通过TCP的socket发送相关操作命令和数据给银行服务器。(3)银行服务器准确接收ATM终端机发送过来的命令和数据。(4)根据接收的命令和数据,对ATM终端机的相关命令进行响应,对相关数据进行处理,并将用户操作过程显示出来。程序界面如下:图1 ATM终端机操作界面图2 银行服务器显示界面二、实验原理2.1 TCP在TCP/IP协议簇中的位置及特点图3 TCP/IP体系结构使用TCP通信有以下特点: (1)面向连接的传输;(2)端到端的通信;(3)高可靠性,确保传输数据的正确性,不易出现丢失或乱序;(4)全双工方式传输;(5)采用字节流方式,即以字节为单位传输字节序列;(6)紧急数据传送功能。2.2 TCP的SOCKET 实现套接字是支持TCP/IP协议的网络通信的基本操作单元,可以将套接字看做不用主机间的进程进行双向通信的端点

      3、,在网络编程中最常用的方案便是客户端/服务器端模型,简称C/S模型。根据传输数据类型的不同,套接字可分为面向连接的字节流套接字(stream sockets)和无连接的数据报套接字(datagram sockets)两种类型。面向连接的套接字系统调用时序如图4所示。字节流不按记录定界,在TCP/IP协议簇中对应TCP协议,它是一个提供给用户进程的可靠的全双工的面向连接的协议,大多数Internet应用程序如ftp、telnet使用TCP协议。图4 面向连接的套接字系统调用时序2.3 客户端/服务器端模型的设计原理客户端/服务器端模型(简称C/S模型)是一种网络模型,描述了一种网络程序运行的方式。它将网络应用程序分为客户端和服务器端两部分。客户端对服务器端发送信息请求,服务器端对其做出相应回答,提供服务。在TCP/IP网络应用中,多数网络应用程序是使用客户端/服务器端模型设计的。服务程序通常在一个众所周知的地址监听对服务的请求,也就是说,服务进程一直处于休眠状态,直到一个客户程序提出了请求信息。此时,服务程序被“惊醒”并且为客户提供服务,对客户的请求作出适当的反应。当建立服务器程序时,应

      4、该将服务器程序设计成等候客户的请求。我们知道,TCP传输层通过协议端口和应用程序(像服务器和客户)通信,也就是说,为了按收客户请求,服务器程序必须对传输层的一个特定协议端口进行侦听。当服务器配置socket接口时,它使用bind()函数让socket执行体登记一个协议端口。也就是说,程序告诉socket执行体使用哪个协议端口进行数据传送。Socket执行体接着告诉传输层某个特定协议端口已被使用,并将其收到的所有数据传送给Socket API。本系统采用C/S模型,使用从MFC类中的CAsyncSocket类的派生类进行实现底层通讯。服务器运行的流程为:服务器运行后,开启服务,则服务器开始侦听用户请求,如有客户端连接上首先,发送回确认信息,然后,建立一个线程,处理接受到的数据。在线程里,按照接受到数据的类别,进行相应的处理,如有需要,会向用户发送处理的结果,或成功或失败的消息,处理结束后,线程就结束了。这样,可以实时接受每个用户的请求,不会因为处理一个用户的请求,而忽略了其它用户。服务器端主要是为协调用户之间的通讯,服务器端的设计,主要在功能上面。客户端主要是界面的设计(除了底层通讯的以

      5、外),向服务器发送加入请求,然后等待服务器的响应。若有加入的其他客户端,则可与之进行通信。三、程序设计3.1程序主要类结构ATM终端和银行服务器端的程序主要类结构如图5所示: (a)ATM终端类结构 (b) 银行服务器端类结构图5 程序主要类结构用户输入的实现:ATM终端通过Edit控件,根据用户选择的操作,输入需要发送的命令或数据:包括登陆、查询、存钱、取钱、钱的数目、修改密码、取卡等。结果输出的实现:命令和数据在银行服务器端的CClientSocket类中处理,更新相关数据库,并将处理结果发送回ATM终端,同时将ATM终端的相关操作过程显示出来。数据的接收发送:通过ATM终端程序中的CUserSocket 类将需要发送的命令或数据封装成TCP包发送,通过银行服务器端的CClientSocket类接收TCP包,解析并将命令或数据进行相关操作。3.2 建立/关闭Socket3.2.1 建立Socket首先对服务器端和ATM终端建立Socket,服务器端创建监听套接字,准备接收连接,ATM终端建立创建套接字,请求连接到服务器,其源代码主要如下:(1)服务器端建立监听Socket(2)AT

      6、M终端建立Socket3.2.2 收发数据建立连接后,服务器端接收ATM终端发来的命令或数据,ATM终端发送命令或数据到服务器,等待服务器响应,其源代码主要如下:(1)服务器端接收数据:(2)ATM终端发送数据:3.2.3 关闭Socket数据收发完后,要关闭Socket,其源代码主要如下:(1)服务器端关闭套接字:(2)ATM终端关闭套接字:3.3 ATM终端操作和服务器端响应程序3.3.1 查询ATM终端操作选择“查询”时,向服务器端发出查询命令,服务器收到命令后做出相应的响应,源代码如下所示:(1)ATM终端“查询”操作代码:(2)服务器端响应“查询”代码:3.3.2 取款ATM终端操作选择“取款”时,向服务器端发出取款命令,服务器收到命令后做出相应的响应,源代码如下所示:(1)ATM终端“取款”操作代码:(2)服务器端响应“取款”代码:3.3.3 存款ATM终端操作选择“存款”时,向服务器端发出存款命令,服务器收到命令后做出相应的响应,源代码如下所示:(1)ATM终端“存款”操作代码:(2)服务器端响应“存款”代码:3.3.4 修改密码ATM终端操作选择“修改密码”时,向服务器

      7、端发出修改密码命令,服务器收到命令后做出相应的响应,源代码如下所示:(1)ATM终端“修改密码”操作代码:(2)服务器端响应“修改密码”代码:四、开发工具本实验所使用的开发工具是Microsoft Visual C+6.0。五、测试报告5.1 测试环境(1)硬件环境:CPU Intel T5670 1.80GHz ,内存2GB DDR3, 网卡 Intel 82562GT 10/100 Network Connection,网络接入带宽100MHz局域网接入;(2)软件环境:使用系统为Windows 7。5.2 测试方法和步骤5.2.1 服务器端(1)服务器端初始界面:(2)设置好端口号后,点击确定进入服务器界面:(3)用户数据库和服务器程序要保证在同一路径下,否则会导致程序运行结果出错。(4)当ATM终端机进行操作时,服务器界面会显示用户的相关操作:5.2.2 ATM终端(1)ATM终端初始界面:(2)设置好服务器地址和端口号后,点击确定进入ATM登陆界面:(3)输入正确的账号和对应的密码后,点击确认进入ATM操作界面:(目前只有两个账号:111111111和123456789;密码分别是222222和123456)(4)点击相应的操作按键,进入各操作子界面:(4)退出ATM终端后的界面:5.3 测试结果本系统运行情况良好,经过上述的测量方法和步骤进行测试,所有操作均正确响应,包括ATM基本功能:查询、存款、取款和修改密码,另外,登陆和退出界面也正确显示,各种提醒弹窗也在相应情况下弹出,没有任何误操作,证明本系统设计成功,达到预期的目的。六、软件开发总结6.1 软件开发的收获通过此次大实验我更加清晰的理解了TCP/IP协议簇的组成及实现方法,深入地理解了Socket编程的分类及实现方法,特别是对TCP协议有了一个全面的深入的了解,并实现了其在局域网络中的应用。同时,通过Microsoft Visual C+提供的MFC类库,实现了Socket类

      《网络通信原理大作业--基于TCP的ATM系统》由会员liy****000分享,可在线阅读,更多相关《网络通信原理大作业--基于TCP的ATM系统》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    监控施工 信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.