基于IP网络公务电话系统设计与实现毕业论文.docx
- 文档编号:2849813
- 上传时间:2022-11-15
- 格式:DOCX
- 页数:74
- 大小:839.70KB
基于IP网络公务电话系统设计与实现毕业论文.docx
《基于IP网络公务电话系统设计与实现毕业论文.docx》由会员分享,可在线阅读,更多相关《基于IP网络公务电话系统设计与实现毕业论文.docx(74页珍藏版)》请在冰豆网上搜索。
基于IP网络公务电话系统设计与实现毕业论文
基于IP网络公务电话系统设计与实现毕业论文
前言
Internet是人类在20世纪创造的最庞大、最复杂的通信系统,在过去的几十年里,一批又一批的人在不断的为这个属于全世界人类的系统增添新的技术,使它能够适应现代社会的发展,让世界融合成为一个信息一体化的整体。
Internet与传统电话网络有着本质的区别,也是它最突出的优点,那就是设计上的通用性和开放性。
各种各样的应用程序以及不同类型的业务都可以通过这个网络来承载,它不仅采用了标准的开放的TCP/IP协议,还提供开放的API。
这使得Internet成为越来越多的行业和产业首选的业务承载网络。
传统的公务电话需要用有线设备将话机介入PSTN中,并且业务开发会受到传统电话网络的各种限制,不具备开放性和通用性,而且不能够方便灵活,只能在有电话线路的地方,而且在规定的局域网内才能够进行单呼和组呼。
然而,基于IP网络的Internet的应用程序公务电话,则可以很好的克服这一点。
只要一台电脑里面安装了设计好的应用程序,连接到Internet的,不论接入方式,不论组网方式,只需要能够分配到一个IP地址,就能和另外的任意台电脑进行通信,很好的完成公务电话的各种功能。
这样的公务电话不仅方便灵活,而且设备简单。
本文根据这一优点进行了一种基于Socket套接字的网络IP公务电话的应用程序开发研究。
实现了在Internet上进行公务电话的单呼功能和组呼功能。
论文分为四个部分:
第一章综合阐述了本次设计运用到的IP网络系统以及Windows的程序设计;第二章介绍了本次程序开发的总体设计;第三章介绍了程序的操作流程;第四章对这次程序设计的关键代码和实现进行了分析和讨论。
最后在结论中提出了对程序的进一步扩展的方案。
第一章绪论
第一节IP网络电话发展历史及趋势
一、IP网络与IP网络协议
IP网络,即是基于Internetprotocol的网络。
它的主导思想是在没有发送端和接收端帮助的情况下,具有源地址和目的地址的的数据包能够独立地穿越由路由器构成的网络[1]。
从物理上看,Internet是由不同类型的物理组件作为节点,通过传输线路相互连接而构成的网络,这些物理组件主要有主机、交换机和路由器。
近年来为了解决网络安全问题,又加入了必要的安全设备,例如防火墙,ICS/IPS等[2]。
整个网络都是通过寻址的方式将各个数据包从一个节点传向下一个节点,最终传到指定的地址上。
IP网络最大的特点就是它在路由的时候,没有指定的路线,而是各个路由器通过自己当时的网络拓扑结构和网络线路情况,根据特定的某种算法决定下一个路由的方向,也就是说,同样一个数据包从一个节点传到另一节点在不同时候可能会有多种路径。
就像交通运输一样,人们一直在努力去寻求一种最为理想的运输方式,使得在同样的时间内,最有效的使用交通资源。
为了制定一个统一的网络协议标准,1977年,国际标准化组织制定了OSI七层模型,但由于这个系统过于庞大、复杂,后来的TCP/IP协议栈获得了技术人员的广泛应用[12]。
TCP/IP模型分为四层,物理层、网络层、传输层和应用层。
每一层都是在原有的数据包外附加了一部分开销,用来完成特定的功能。
其中在网络传输中,路由器可以通过处理网络层的开销字节来完成路由的功能。
在IP网络的协议栈中,网络层的IP协议完成的功能最为简单,标准最为统一,这也是IP网络能够承载各式各样的业务的原因。
在协议栈的传输层中,有两种服务质量不同的协议:
面向连接的TCP协议和面向非连接的UDP协议。
这两种协议有各自的优缺点,但同时通过这两种协议的综合使用,能够满足不同用户的需求。
TCP协议是通过一种面向连接的,可靠的数据传输服务,它具有:
向应用进程提供面向连接的服务;
通过三次握手,提供全双工数据传输服务,但不支持广播和组播。
提供面向字节流的服务[3]。
UDP协议则是一种面向无连接的、不可靠的数据传输。
但它具有自己的特点:
不存在连接上的时延;
一台服务器可以向多个用户同时传输数据;
UDP的开销比TCP断;
吞吐量不受流量算法的控制。
二、基于IP网络协议的IP电话
IP网络虽然具有良好的开放性和通用性,但由于它的网络层是用数据报形式以面向无连接的方式传输的,所以IP网络只能提供“尽最大努力”的服务,不能保证数据何时到达以及能提供多少数据,导致传输的可靠性和时延成为了它必有的内伤,这一缺点对于语音数据传输以及可视通信是致命的。
随着科技的发展,人们实现了基于IP网路的电话,也就是VOIP。
这种技术将语音信息转化为可在IP网络上传输的数据包,并且能够通过对IP网络的优化,增加了传输的可靠性,降低了时延。
到目前,这项技术已经成熟,通过IP电话网关,我们就能实现IP网络与PSTN的融合,实现传统电话与IP电话、以及电脑的通信。
三、网络IP公务电话的需求以及模拟方式
公务电话是传输设备的一种基本功能,随着无线通信技术的普及和覆盖,基于PCM方式的传统公务电话的重要性在不断的降低。
然而在比较偏远的山区还有一些特殊的场合,将公务电话在IP网络中实现,能够发挥非常重要的作用。
有了公务电话,我们能在任何一个能够连接IP网络的用户终端通过公务电话的应用程序进行通信。
图1.1IP公务电话网络示意图
如图所示,通信设备的网元组成一个通信网络,提供第一层和第二层的路由和报文转发。
我们可以将这些网元当作是二层或三层交换机或者路由器,由它们组成的IP网络。
每个公务电话板卡和网元的接入就是一个网络接口,每个公务电话分配一个IP地址,这些公务电话可以完全用电脑的windows开发系统设计程序来模拟。
第二节课题主要工作
本次课题是在研究IP网络、网络组建以及应用程序编程的基础之上,进行的一次网络应用程序的开发。
这次程序能够完成IP公务电话的单呼以及组呼的功能,即能够使联网的任意两台电脑相互进行语音通信,并且能使一个组内的所有电脑进行通话。
在编写程序之前,我进行了系统框架设计、类设计、信令机制设计、界面设计、话机状态设计以及线程设计,此外,为了完成单呼和组呼的功能,我还分别做了单呼和组呼通话过程的流程分解,具体的描述了通话过程中逻辑流程。
本文主要介绍了本次开发中所运用到的相关技术和原理,需求分析,总体设计以及测试过程,并且对关键部分的程序代码进行了分析和解释。
第三节本章小节
本章首节主要介绍了InternetProtocol网络的基本情况,并且对TCP/IP协议栈、VOIP技术进行了简要的介绍,最后分析了IP公务电话的需求以及实现方式。
第二节对本次设计以及本次论文进行了概括。
本次设计是一个IP网络的网络应用程序的开发。
第二章相关技术及原理
第一节VisualC++6.0开发平台及MFC简介
一、VisualC++6.0开发平台
VC++是微软公司开发的一种功能强大的软件开发工具,它不仅是一个C++编译器,而且也是一个基于Windows系统的集成开发环境(IDE)[16]。
因此,它可以将高级语言转换为机器语言,并且可以提供包括APPWizard、ClassWizard等工具,方便程序员进行自己的编程。
我们可以很轻松的编写完C/C++程序代码后进行编辑、调试和运行。
不仅如此,这个软件可以轻松调用MFC这个数据库,从而使你能够很轻松的驾驭windows的程序设计。
如果你新建一个MFC的工程,你会发现开发环境里面已经自动生成了许多MFC的框架文件,里面已经封装了你所需要的在windows系统里面能够涉及到的所有框架结构,你只需要专心将你的程序逻辑编写完成,整个框架设计就不需要你自己去设计了。
VC++主要由三个部分组成:
DeveloperStudio、MFC、Platform SDK。
其中DeveloperStudio是一种集成开发环境,它能提供包括VC++、VC、VB、VJ以及VID的编译器,而且可以提供很多Wizard,它就是我们完成很多功能的幕后英雄[17]。
Platform SDK是一个Windows操作系统的开发包,它配合MASM,能够方便编程人员查阅关于MFC在内的开发函数。
由于VC++是用C++语言来编写程序,所以它也是面向对象的程序编程。
所谓面向对象,就是以对象为基础,以事件或消息来驱动对象执行处理的程序设计技术。
它的结构特点是程序可分为类的定义和类的调用两部分。
程序中通过向对象发送消息来实现一切操作,对象接受到消息后,进行消息响应,完成操作[17]。
二、MFCWindows程序设计
MFC(MicrosoftFoundationClasses)是微软公司开发的一个C++的类库,它里面封装了大部分基于windows操作系统的API函数。
MFC是由很多类组成的这些类之间有继承和派生的关系,其中Cobject类作为很多类的父类,CCmdTarget和CWnd是其派生出来的两个大类。
这样,对我们程序员编写windows的应用程序节省了许多重复复杂的步骤并且节约了时间。
Cdialog是CWnd类派生出来的一个重要的类,也就是对话框窗口类,本次的应用程序设计的界面操作类都是基于这个类派生出来的。
因为这个类里面包含的成员函数、成员变量已经足够我们去开发一个基于对话框的应用程序了。
我们只需要在这些对话框里面进行我们所需要的程序逻辑设计就能完成所需功能。
第二节网络通信知识
一、IP地址
在IP网络中传输的数据包中,最外层是一个20字节的开销字段,在这里面有一个很重要的信息,那就是源IP地址和目的IP地址。
这两个地址代表了发起主机和目的主机,是传输过程中的路由中一个很重要的参数、
IPv4的IP地址是一个32位的二进制数,通常被分割为4个8位二进制数,但通常用4个0到255的整数来表示,并用点来进行分割[2]。
通过与子网掩码相与,我们能够得到相应的网段以及同一网段内的不同主机号。
从而区分不同的用户。
IPv4中采用分类编址,一般分为5类地址,另外还有特殊地址以及保留地址,通过这样的分配,能够较为合理的为接入IP网络中的主机分到IP地址。
二、TCP/IP四层模型
前面已经介绍了IP网络的一些基本知识,我们可以知道,TCP/IP协议分为四层,即应用层、传输层、网络层和网络接口层。
应用层包含了所有网络中的高层协议,也就是能够提供一组应用程序,这些协议包括远程登录协议Telnet、文件传输协议FTP、域名服务DNS、超文本传输协议HTTP、简单邮件传输协议SMTP等[2];传输层则是使应用程序之间能够进行通信,前面第一章第一节已经详细说明,不再累述;网络层就是让不同的主机进行交互;网络接口层是负责成帧以及怎样将帧放在IP网络上面进行传输。
三、网络组建方式
网络是由通信节点以及节点之间的连接构成的,不同的节点和连接方式构成了不同的网络。
因此,要开发一个网络应用程序,首先应该决定网络的组建方式。
如图所示,一般有三种组网的方法:
图a为一对一的客户端接入服务器的方式;图b为多端通信的客户端接入服务器方式;图c为集服务器客户端一体的自组织特性网络方式。
图2.1网络的组建方式
考虑到本次软件是由任意两台电脑接入网络后就能进行通信,因此选用第三种方式,即自组织特性网络方式,只要需要通信时,主叫端就为客户端,被叫为服务器端,这样就能实现我们的单呼和组呼功能。
四、C/S模式
在网络连接中,有一种常用的模式是客户机/服务器网络[12]。
其中客户机和服务器都是网络中的一种终端设备,甚至可以一个电脑可以同时充当一个客户机和另外的客户机的服务器。
客户机必须要服务器对其提供所需的网络资源,服务器也需要接受客户机的指令来完成相应的动作。
它是软件系统体系结构,通过它可以充分利用两端硬件环境优势,将任务合理分配到客户端和服务器端来实现,降低了系统的通讯开销[3]并且提高了效率。
服务器的程序必须在客户机的程序的启动之前开始,并且是在客户机
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 IP 网络 公务 电话 系统 设计 实现 毕业论文
![提示](https://static.bdocx.com/images/bang_tan.gif)