1。3。3 MFC框架简介
MFC(Microsoft Foundation Classes)是微软开发的基础类库,它将很大一部分的Windows API函数进行了封装。
MFC的类层次结构:
图1-1 MFC的类层次结构
由图1-1可以看出,Cobject是MFC所有类的基类。
与以前的Win32 SDK编程方式不同,MFC应用程序框架结构是以文档/视图结构为基础的,这是一种新的将文档与视图分开的程序结构。这种结构保存数据使用文档对象,而控制显示数据使用视图对象。MFC在持续的发展过程中,提供了丰富的基础类结构供开发人员使用,这也是它被称为微软基础类库的原因。在MFC中的所有的类层次结构以及功能的伸缩性,让MFC不仅没有被时代所淘汰,还让MFC程序保持了良好的向下兼容性[3]。MFC不仅简化了应用程序的开发过程,也让软件各个组件的工作划分更明确。
2 软件设计相关理论依据
2。1 OSI论文网
OSI(Open System Interconnection)开放式系统互联作为网络发展过程中一个重要的里程碑,它将无形的、抽象的、复杂的计算机网络通信处理过程,从逻辑上分为了七个层次,因此又称为七层网络模型。它最主要的功能是可以帮助不同类型的主机之间,实现数据信息的相互传输。OSI七层参考模型做为一种框架性的设计措施 ,对于不同的网络设备或不同的应用程序之间进行网络通信互连时,遇到一些由于兼容性而产生的问题时,OSI可以达到解决的目的。对于OSI七层模型来说,服务、协议和接口这三个概念不再模糊,而是有着明确的一个划分,这是它最大的一个优点。OSI使用了七个层次化的、具体的结构让不同的系统以及不同的网络之间可以进行可靠的通讯。
OSI从低到高分为物理层,数据链路层,网络层,传输层,会话层,表示层,应用层。
表2-1 OSI七层参考模型详解
从理论的角度来看,OSI七层模型是一个较为完美的模型,虽然它并不适用于实际情况,但是在各种网络技术的分析和评估方面,OSI七层参考模型作为理论依据有着其无可替代的作用。
2。2 TCP/IP
2。2。1 TCP/IP四层模型
TCP/IP并不是TCP协议和IP协议的简称,而是一组通信协议的简称,这组通信协议可以使不同的网络之间互相连接起来。而它名称中所包含的两个协议,是我们这组通信协议中最常用也是最重要的两个协议。TCP/IP中定义了很多内容,比如各种各样的电子设备如何连入Internet,以及数据信息怎样在它们之间进行传输等内容。
TCP/IP的参考模型的四个层次分别是网络接口层、网际互连层(IP层)、传输层(TCP层)和应用层。
表2-2 TCP/IP四层模型详解
2。2。2 TCP/IP与OSI的比较
计算机网络是一个非常复杂的系统。在网络中,两台主机进行通信时,需要保持高度的协调,这样才能保证正常通信。最初的时候,ARPANET提出了采用“分层”设计的方法解决这个复杂的计算机网络问题。在1974年,美国的IBM公司率先公布了自己的系统网络体系结构SNA,紧接着,其他的公司各自宣布了自己的网络体系结构,这些网络结构互不相同。不同的公司按照各自不同的网络体系结构生产了各种设备,这些不同公司的设备之间并不能实现互连互通。
国际标准化组织ISO为了解决不同的计算机体系之间相互连接、相互通信的问题,在1977年提出了开放系统互联基本参考模型(OSI)。按照ISO组织当时的设想,只要全世界的计算机网络都使用OSI作为参照标准,那么世界各地的计算机都将能够进行相互连接以及通信。但是由于OSI自身是一种过于理性化的模型,并且因特网早于OSI七层模型普及之前就已覆盖了全世界的大部分范围,因此OSI在商用市场化方面是失败的。而与OSI相反,TCP/IP这一非国际标准是市场的化的结果,它在商业领域得到了广泛的应用。OSI参考模型在各种协议,比如HTTP,ARP等协议发明之前就已经被设计出来,这表明它并没有为任何一个协议做一个特定的设计,因此,OSI是一个较为通用的网络模型。 C++Winpcap数据包捕获分析工具的设计+源代码(3):http://www.youerw.com/jisuanji/lunwen_199848.html