C+网络编程高级编程课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《C+网络编程高级编程课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网络 编程 高级 课件
- 资源描述:
-
1、第第1515章章 网络编程网络编程C+高级编程高级编程刘刘 海海 燕燕本章主要教学内容本章主要教学内容l 简略介绍网络的基本知识、功能及协议。简略介绍网络的基本知识、功能及协议。l 客户机客户机/ /服务器的网络模型及其原理。服务器的网络模型及其原理。l 网络应用程序的编写:客户端应用程序、网络应用程序的编写:客户端应用程序、服务器端应用程序、浏览器程序、电子邮件服务器端应用程序、浏览器程序、电子邮件发送程序。发送程序。刘刘 海海 燕燕15.1 15.1 网络概述网络概述计算机网络计算机网络: 地理位置不同、具有独立功能的多个计算机系统,通过地理位置不同、具有独立功能的多个计算机系统,通过通信
2、设备和线路互相连接起来,使用功能完整的网络软件来通信设备和线路互相连接起来,使用功能完整的网络软件来实现网络资源共享的大系统,称为计算机网络。实现网络资源共享的大系统,称为计算机网络。 计算机网络从结构上可以分乘两部分:计算机网络从结构上可以分乘两部分:资源子网和通信资源子网和通信子网。子网。计算机网络的组成:计算机网络的组成:刘刘 海海 燕燕15.1 15.1 网络概述网络概述 计算机网络组成示意图计算机网络组成示意图刘刘 海海 燕燕15.1 15.1 网络概述网络概述 计算机网络结构示意图计算机网络结构示意图刘刘 海海 燕燕 资源子网:资源子网:负责全网的数据处理以及向网络用户提供网络负责
3、全网的数据处理以及向网络用户提供网络资源及网络服务等。一般由主计算机系统、终端、各种硬件和资源及网络服务等。一般由主计算机系统、终端、各种硬件和软件资源和数据资源等组成。软件资源和数据资源等组成。 通信子网:通信子网:为资源子网提供信息传送服务,是支持资源子为资源子网提供信息传送服务,是支持资源子网上用户之间相互通信的基本环境。一般由通信控制器、集线网上用户之间相互通信的基本环境。一般由通信控制器、集线器、调制解调器、网络通信媒体等组成。器、调制解调器、网络通信媒体等组成。15.1 15.1 网络概述网络概述刘刘 海海 燕燕计算机网络的分类:计算机网络的分类: 按网络覆盖的地理范围可分为:按网
4、络覆盖的地理范围可分为: 局域网局域网LANLAN(local area networklocal area network) 城域网城域网 MANMAN(metropolitan area networkmetropolitan area network) 广域网广域网WANWAN(wide area networkwide area network)15.1 15.1 网络概网络概述述刘刘 海海 燕燕其它分类有:按交换方式、按传输媒体等分类其它分类有:按交换方式、按传输媒体等分类按网络拓扑结构可分为:按网络拓扑结构可分为: 星型网络星型网络 总线型网络总线型网络 环型网络环型网络 - -网
5、格型网络网格型网络15.1 15.1 网络概述网络概述刘刘 海海 燕燕计算机网络功能计算机网络功能主要有:主要有:数据通信数据通信资源共享:共享硬件、软件、信息和知识等资源共享:共享硬件、软件、信息和知识等分布式数据处理,提高可靠性分布式数据处理,提高可靠性15.1 网络概述网络概述刘刘 海海 燕燕计算机网络的体系结构计算机网络的体系结构有两大类:有两大类: 对等网络和基于服务器的网络对等网络和基于服务器的网络对等网络的特点:对等网络的特点: 在对等网络中,没有专用的服务器,网上所有在对等网络中,没有专用的服务器,网上所有 的计算机地位是平等的;的计算机地位是平等的; 网上所有计算机都既是客户
6、机又是服务器;网上所有计算机都既是客户机又是服务器; 每台计算机的用户自己决定将其计算机中的哪每台计算机的用户自己决定将其计算机中的哪 些数据共享到网络中去;些数据共享到网络中去; 没有负责整个网络管理的网络管理员;没有负责整个网络管理的网络管理员;15.1 网络概述网络概述刘刘 海海 燕燕对等网络的优点:对等网络的优点: 规模小,成本低,实现简单规模小,成本低,实现简单15.1 15.1 网络概述网络概述基于服务器的网络的特点基于服务器的网络的特点: : 网络中有专用服务器(或主机)网络中有专用服务器(或主机) 网络中有客户机(或终端)网络中有客户机(或终端) 有网络操作系统和网络管理员对网
7、络进行统一管理有网络操作系统和网络管理员对网络进行统一管理刘刘 海海 燕燕基于服务器的网络的优点基于服务器的网络的优点: : 易于管理共享资源易于管理共享资源 安全性好安全性好 数据备份方便数据备份方便 网络规模基本不受限制网络规模基本不受限制 15.1 15.1 网络概网络概述述刘刘 海海 燕燕15.1 15.1 网络概网络概述述基于服务器的网络结构又分为:基于服务器的网络结构又分为:Client/ServerClient/Server结构(胖客户机)结构(胖客户机)Browser/ServerBrowser/Server结构(瘦客户机)。结构(瘦客户机)。刘刘 海海 燕燕服务器服务器Ser
8、verServer: :一台能够提供和管理可共享资源的计算机。一台能够提供和管理可共享资源的计算机。客户机客户机ClientClient: :能够使用服务器上的可共享资源的计算机。能够使用服务器上的可共享资源的计算机。Client/ServerClient/Server(客户机(客户机/ /服务器)结构服务器)结构15.1 15.1 网络概述网络概述刘刘 海海 燕燕 服务器需要运行某一种网络操作系统,例如服务器需要运行某一种网络操作系统,例如Windows Windows Server 2003Server 2003、Novell NetwareNovell Netware、UnixUnix等
9、。等。 通常有多台客户机连接到同一台服务器上,它们除了能通常有多台客户机连接到同一台服务器上,它们除了能运行自己的应用程序外,还可以通过网络获得服务器的服务。运行自己的应用程序外,还可以通过网络获得服务器的服务。 在这种以服务器为中心的网络中,一旦服务器出现故障在这种以服务器为中心的网络中,一旦服务器出现故障或者被关闭,整个网络将无法正常运行。或者被关闭,整个网络将无法正常运行。15.1 15.1 网络概述网络概述刘刘 海海 燕燕15.1.1 15.1.1 客户机客户机/ /服务器模型服务器模型客户机客户机/ /服务器模型的工作原理:服务器模型的工作原理:请求请求 通信设施通信设施请求请求 响
10、应响应 客户端客户端 服务器端服务器端刘刘 海海 燕燕15.1.1 15.1.1 客户机客户机/ /服务器模型服务器模型采用客户机采用客户机/ /服务器模型的原因:服务器模型的原因:(1)(1)不对等现象的存在不对等现象的存在: : 服务器端有丰富的资源,强大的运算能力,可存放服务器端有丰富的资源,强大的运算能力,可存放大量的资源和信息。而客户端在软硬件的配置上相大量的资源和信息。而客户端在软硬件的配置上相对薄弱,不可能也没有必要在每一台客户机上存放对薄弱,不可能也没有必要在每一台客户机上存放大量资源。为节约资源,提高利用率和使用效率,大量资源。为节约资源,提高利用率和使用效率,让服务器上的资
11、源公有,让多个客户端共享这些资让服务器上的资源公有,让多个客户端共享这些资源。源。刘刘 海海 燕燕(2) (2) 异步性异步性 客户机客户机/ /服务器模式可以很好地支持异步性操作,服务器模式可以很好地支持异步性操作,方便远程通信的实现。方便远程通信的实现。15.1.1 15.1.1 客户机客户机/ /服务器模型服务器模型刘刘 海海 燕燕15.1.2 15.1.2 网络协议网络协议 通俗地说,网络协议就是网络之间沟通、交流通俗地说,网络协议就是网络之间沟通、交流的桥梁,只有相同网络协议的计算机才能进行信息的桥梁,只有相同网络协议的计算机才能进行信息的沟通与交流。这就好比人与人之间交流所使用的的
12、沟通与交流。这就好比人与人之间交流所使用的各种语言一样,只有使用相同语言才能正常、顺利各种语言一样,只有使用相同语言才能正常、顺利地进行交流。地进行交流。 从专业角度定义,网络协议是计算机在网络中从专业角度定义,网络协议是计算机在网络中实现通信时必须遵守的约定,也就是通信协议。主实现通信时必须遵守的约定,也就是通信协议。主要是对信息传输的速率、传输代码、代码结构、传要是对信息传输的速率、传输代码、代码结构、传输控制步骤、出错控制等作出规定并制定出标准。输控制步骤、出错控制等作出规定并制定出标准。1、什么是网络协议?、什么是网络协议?刘刘 海海 燕燕15.1.2 15.1.2 网络协网络协议议
13、1984 1984年,国际标准组织年,国际标准组织ISOISO公布了一个作为公布了一个作为未来网络协议指南的模型,该模型被称为开放系未来网络协议指南的模型,该模型被称为开放系统互联模型统互联模型OSIOSI。虽然完全遵守。虽然完全遵守OSIOSI的网络产品并的网络产品并没有成为网络市场上的标准,但没有成为网络市场上的标准,但OSIOSI还是可以提还是可以提供一个概念上和功能上的框架,可以作为学习网供一个概念上和功能上的框架,可以作为学习网络知识的依据,作为网路实现的参考。络知识的依据,作为网路实现的参考。2、ISO/OSI参考模型参考模型刘刘 海海 燕燕15.1.2 15.1.2 网络协议网络
14、协议 OSI OSI参考模型采用分层结构,将所有互联的参考模型采用分层结构,将所有互联的开放系统划分为功能上相对独立的七层,从最基开放系统划分为功能上相对独立的七层,从最基本的物理连接到最高层次的应用。本的物理连接到最高层次的应用。 关于关于OSIOSI参考模型的详细知识见附带文件参考模型的详细知识见附带文件1 1。刘刘 海海 燕燕15.1.2 15.1.2 网络协议网络协议 虽然虽然OSIOSI参考模型的实际应用意义不是很大,但它对参考模型的实际应用意义不是很大,但它对于理解网络协议内部的运作的确很有帮助,也为我们学习于理解网络协议内部的运作的确很有帮助,也为我们学习网络协议提供了一个很好的
15、参考。在现实网络世界里,网络协议提供了一个很好的参考。在现实网络世界里,TCP/IPTCP/IP协议栈获得了更为广泛的应用。协议栈获得了更为广泛的应用。 刘刘 海海 燕燕 TCP/IP TCP/IP协议协议(Transmission Control (Transmission Control Protocol/Internet Protocol)Protocol/Internet Protocol)叫做传输控制叫做传输控制/ /网际协议,网际协议,又叫网络通讯协议,这个协议是又叫网络通讯协议,这个协议是InternetInternet国际互联网络的国际互联网络的基础。基础。 15.1.2 15
16、.1.2 网络协议网络协议3、TCP/IP协议模型协议模型刘刘 海海 燕燕 TCP/IP TCP/IP协议是协议是7070年代中期美国国防部为其年代中期美国国防部为其ARPANETARPANET广域网开发的网络体系结构和协议标准广域网开发的网络体系结构和协议标准,以它为基础组建的,以它为基础组建的INTERNETINTERNET是目前国际上规模是目前国际上规模最大的计算机网络,正因为最大的计算机网络,正因为INTERNETINTERNET的广泛使用的广泛使用,使得,使得TCP/IPTCP/IP成了事实上的标准。成了事实上的标准。15.1.2 15.1.2 网络协议网络协议刘刘 海海 燕燕 TC
17、P/IP TCP/IP是网络中使用的基本的通信协议。虽然从是网络中使用的基本的通信协议。虽然从名字上看名字上看TCP/IPTCP/IP包括两个协议,传输控制协议包括两个协议,传输控制协议(TCP)(TCP)和网际协议和网际协议(IP)(IP),但,但TCP/IPTCP/IP实际上是一组协议,它包实际上是一组协议,它包括括TCPTCP、IPIP、UDPUDP、ICMPICMP、RIPRIP、TELNETTELNET、FTPFTP、SMTPSMTP、ARPARP、TFTPTFTP等许多协议,这些协议一起称为等许多协议,这些协议一起称为TCP/IPTCP/IP协协议。议。 关于关于TCP/IPTCP
18、/IP协议的基础知识见附带文件协议的基础知识见附带文件1 1。15.1.2 15.1.2 网络协议网络协议刘刘 海海 燕燕15.1.2 15.1.2 网络协议网络协议3 3、UDPUDP协议协议 User Data Protocol User Data Protocol用户数据报协议用户数据报协议UDPUDP与与TCP/IPTCP/IP的差异:的差异:lUDPUDP直接利用直接利用IPIP协议进行协议进行UDPUDP数据报的传输。数据报的传输。lUDPUDP提供的是无连接的、不可靠的数据报投递服务。提供的是无连接的、不可靠的数据报投递服务。lUDPUDP常用于数据量少的数据传输,常用于数据量少
19、的数据传输,l当使用当使用UDPUDP协议传输信息流时,用户负责解决排序、协议传输信息流时,用户负责解决排序、差错确认等问题。差错确认等问题。刘刘 海海 燕燕网络编程方法网络编程方法15.2 15.2 网络应用程序编写网络应用程序编写15.2.1 15.2.1 网络编程的概网络编程的概述述SocketSocketWinSocketWinSocketRPCRPC命名管道邮箱命名管道邮箱刘刘 海海 燕燕1.1.什么是什么是SocketSocket?15.2.1 15.2.1 网络编程的概述网络编程的概述一、一、 Socket 套接字(套接字(SocketSocket)最初是由加利福尼亚大学)最初是
20、由加利福尼亚大学BerkeleyBerkeley分校分校为为UNIXUNIX操作系统开发的网络通信接口。操作系统开发的网络通信接口。2020世纪世纪8080年代初,加利年代初,加利福尼亚大学福尼亚大学BerkeleyBerkeley将美国国防部高研署提供的将美国国防部高研署提供的TCP/IPTCP/IP集成到集成到UnixUnix中,并很快开发了中,并很快开发了TCP/IPTCP/IP应用程序接口应用程序接口(API)(API),即,即SocketSocket( (套接字套接字) )接口。随着接口。随着UNIXUNIX操作系统的广泛使用,套接字操作系统的广泛使用,套接字成为当前最流行的网络通信
21、应用程序接口之一。成为当前最流行的网络通信应用程序接口之一。 刘刘 海海 燕燕15.2.1 15.2.1 网络编程的概述网络编程的概述 90 90年代初,由年代初,由Sun MicrosystemsSun Microsystems,JSB CorporationJSB Corporation,FTP softwareFTP software,MicrodyneMicrodyne和和MicrosoftMicrosoft等几家公司共同等几家公司共同制定了一套标准,即制定了一套标准,即Windows SocketsWindows Sockets规范。它是规范。它是Berkeley SocketsBe
22、rkeley Sockets的重要扩充,主要体现在它增加了一的重要扩充,主要体现在它增加了一些异步函数和符合些异步函数和符合WindowsWindows消息驱动特性的网络事件异步消息驱动特性的网络事件异步选择机制。选择机制。Windows SocketsWindows Sockets规范是一套开放的、支持多规范是一套开放的、支持多种协议的种协议的WindowsWindows下的网络编程接口。目前实际应用中的下的网络编程接口。目前实际应用中的Windows SocketsWindows Sockets规范主要有规范主要有1.11.1版和版和2.02.0版,其中版,其中1.11.1版版只支持只支持
23、TCP/IPTCP/IP协议,而协议,而2.02.0版支持多协议,并具有良好的版支持多协议,并具有良好的向后兼容性。向后兼容性。 刘刘 海海 燕燕15.2.1 15.2.1 网络编程的概述网络编程的概述 Socket Socket实际上是指一个通信端点,借助于它,用户所开实际上是指一个通信端点,借助于它,用户所开发的发的SocketSocket应用程序,可以通过网络与其它应用程序,可以通过网络与其它SocketSocket应用程序应用程序进行通信。进行通信。 套接字套接字socketssockets是支持是支持TCP/IPTCP/IP协议的网络通信的基本操作协议的网络通信的基本操作单元。可以将
24、套接字看作不同主机间的进程进行双向通信的单元。可以将套接字看作不同主机间的进程进行双向通信的端点。它构成了在单个主机内及整个网际间的编程界面。端点。它构成了在单个主机内及整个网际间的编程界面。刘刘 海海 燕燕15.2.1 15.2.1 网络编程的概述网络编程的概述 一般来说,跨机应用进程之间要在网络环境下进行通信,一般来说,跨机应用进程之间要在网络环境下进行通信,必须要在网络的每一端都要建立一个套接字,两个套接字之必须要在网络的每一端都要建立一个套接字,两个套接字之间可以是建立连接的,也可以是无连接的,并通过对套接字间可以是建立连接的,也可以是无连接的,并通过对套接字的的“读读”、“写写”操作
25、实现网络通信功能。像文件那样有打操作实现网络通信功能。像文件那样有打开、读、写、关闭的方式。开、读、写、关闭的方式。刘刘 海海 燕燕15.2.1 15.2.1 网络编程的概网络编程的概述述2.2. 套接字套接字SocketSocket的分类的分类 根据传输数据类型的不同,套按字可分为面向连接的根据传输数据类型的不同,套按字可分为面向连接的字节流套接字(字节流套接字(stream socketsstream sockets) 和面向无连接的数据报套接字(和面向无连接的数据报套接字(datagram socketsdatagram sockets)两种)两种类型。类型。 刘刘 海海 燕燕15.2.
展开阅读全文