计算机网络自顶向下方法(第四版)-中文版课件-第二章ppt.ppt
《计算机网络自顶向下方法(第四版)-中文版课件-第二章ppt.ppt》由会员分享,可在线阅读,更多相关《计算机网络自顶向下方法(第四版)-中文版课件-第二章ppt.ppt(158页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1第第2章章 应用层应用层 网络应用是计算机网络的重要功能之一。网络应用是计算机网络的重要功能之一。20世纪世纪80年代:年代:基于文本的电子邮件、文件传输、基于文本的电子邮件、文件传输、文本聊天等等。文本聊天等等。20世纪世纪90年代:年代:Web应用、应用、IP电话、视频会议等。电话、视频会议等。20世纪末:世纪末:即时讯息、即时讯息、 P2P对等文件共享。对等文件共享。2学习目标和主要内容学习目标学习目标 网络应用的原理和实现方面的知识。网络应用的原理和实现方面的知识。主要内容主要内容应用层概念:应用层概念:应用层协议、客户机与服务器、进程、应用层协议、客户机与服务器、进程、套接字和运输
2、层接口。套接字和运输层接口。应用程序:应用程序:Web、电子邮件、域名系统、电子邮件、域名系统DNS及及P2P对等对等文件共享。文件共享。开发网络应用程序的方法:开发网络应用程序的方法:套接字套接字API编程。编程。3本章内容2.1 应用层协议原理应用层协议原理2.2 Web和和HTTP2.3 FTP 2.4 电子邮件电子邮件2.5 DNS2.6 P2P 文件共享文件共享2.7 TCP的套接字的套接字 编程编程2.8 UDP的套接字的套接字 编程编程2.9 构建一个构建一个 Web 服务器服务器2.10 小结小结4流行的网络应用程序流行的网络应用程序rE-mailrWebr即时讯息即时讯息r远
3、程注册远程注册rP2P文件共享文件共享r多用户网络游戏多用户网络游戏r流式存储视频片段流式存储视频片段r因特网电话因特网电话r实时视频会议实时视频会议r大规模并行计算大规模并行计算编制应用程编制应用程序序5网络应用程序的研发要点网络应用程序的研发要点r写出能够分别写出能够分别在不同端系统运行在不同端系统运行,并通过网络,并通过网络相互通信相互通信的程序。的程序。 如如Web应用程序,由两个可以相互通信的程序组成应用程序,由两个可以相互通信的程序组成浏览器程序:浏览器程序:运行在用户主机上;运行在用户主机上;Web服务器程序:服务器程序:运行在运行在Web服务器主机上。服务器主机上。r应用程序软
4、件只在端系统运行,不需在网络核心设备上应用程序软件只在端系统运行,不需在网络核心设备上运行。运行。m网络核心设备无应用层,只有较低层。网络核心设备无应用层,只有较低层。 如图如图2-1。6本节内容2.1.1 网络应用程序体系结构网络应用程序体系结构2.1.2 进程通信进程通信 2.1.3 应用层协议应用层协议 2.1.4 应用所需要的服务应用所需要的服务2.1.5 因特网运输协议提供的服务因特网运输协议提供的服务2.1.6 本书介绍的网络应用本书介绍的网络应用Web、文件传输、电子邮件、目录服文件传输、电子邮件、目录服务、对等文件共享等五个。务、对等文件共享等五个。72.1.1 网络应用程序体
5、系结构网络应用程序体系结构r应用程序体系结构:应用程序体系结构:规定如何在各种端系统上组规定如何在各种端系统上组织应用程序,由研发者设计织应用程序,由研发者设计 。r 三种类型:三种类型: 客户机客户机/ /服务器服务器 对等对等 (P2P) 客户机客户机/服务器与服务器与P2P的混合的混合81、客户机、客户机/服务器体系结构服务器体系结构服务器服务器: m总是打开总是打开m为为多个客户机多个客户机请求提供服务请求提供服务m永久的永久的IPIP地址地址m可扩展为服务器场(主机群集)可扩展为服务器场(主机群集) 客户机:客户机:m总是打开或间歇打开总是打开或间歇打开m向服务器发出请求向服务器发出
6、请求m具有动态的具有动态的IPIP地址地址m彼此之间彼此之间不直接通信不直接通信 如如Web应用程序:总是打开的应用程序:总是打开的Web服务器为运行在客户机主机上服务器为运行在客户机主机上的浏览器的请求提供服务(接收客户机请求,并发送响应结果)。的浏览器的请求提供服务(接收客户机请求,并发送响应结果)。 服务器响应服务器响应 客户请求客户请求92、纯、纯P2P体系结构体系结构(peer-to-peer) m无(最少)打开无(最少)打开的服务器的服务器m任意端系统任意端系统(对等方)(对等方)可以可以直接通信直接通信m对等方对等方间歇地连接间歇地连接,IPIP地址地址不固定不固定m例:文件分发
7、、因特网电话例:文件分发、因特网电话等。等。可扩展度高、难以管理可扩展度高、难以管理103、客户机、客户机/服务器与服务器与P2P的混合的混合rNapster:MP3文件共享应用程序。文件共享应用程序。 mP2P:对等方直接交换对等方直接交换MP3文件文件m服务器注册服务器注册/定位:定位: 对等方在中心服务器上对等方在中心服务器上注册内容注册内容 对等方查询相同的中心服务器以对等方查询相同的中心服务器以定位内容定位内容r即时讯息:即时讯息:mP2P:两个用户直接聊天:两个用户直接聊天m服务器检测服务器检测/定位:定位: 用户在线时,向中心服务器用户在线时,向中心服务器注册其注册其IP地址地址
8、 用户联系中心服务器以用户联系中心服务器以找到聊天伙伴的找到聊天伙伴的IP地址地址112.1.2 进程通信进程通信r进程进程 (process)(process):在主机上运行的程序。在主机上运行的程序。r进程通信:进程通信:同一主机中两个进程间的通信:同一主机中两个进程间的通信:由由操作系统操作系统控制;控制;不同主机中进程间的通信:不同主机中进程间的通信:通过网络交换通过网络交换报文报文进行。进行。 发送进程:发送进程:产生报文并向网络发送;产生报文并向网络发送; 接收进程:接收进程:接收报文,并回送报文。接收报文,并回送报文。如图如图2-1。121、客户机和服务器进程、客户机和服务器进程
9、r网络应用程序由网络应用程序由成对的进程组成成对的进程组成,并通过网络相互发,并通过网络相互发送报文。送报文。如图如图2-1 r根据功能分别标示为客户机和服务器根据功能分别标示为客户机和服务器客户机进程:客户机进程:发起通信的进程。发起通信的进程。 服务器进程:服务器进程:等待其他进程联系的进程。等待其他进程联系的进程。 如如Web应用程序中,一个客户机浏览器进程向某应用程序中,一个客户机浏览器进程向某个个Web服务器进程发起联系,交换报文。服务器进程发起联系,交换报文。13说明:说明: P2P结构的应用程序也可分别看成是客户机进程结构的应用程序也可分别看成是客户机进程或服务器进程。或服务器进
10、程。 如,对等方如,对等方A(客户机客户机)请求对等方)请求对等方B(服务器服务器)发送某个文件。发送某个文件。142、套接字、套接字(socket)套接字:套接字:同一台主机内同一台主机内应用层与运输层应用层与运输层之间的接口。之间的接口。 也叫应用程序和网络之间的也叫应用程序和网络之间的应用程序应用程序接口接口API , ,是在是在网络上建立网络应用程序的网络上建立网络应用程序的可编程接口可编程接口。进程具有缓存、变量的TCP套接字套接字主机或服务器进程具有缓存、变量的TCP套接字套接字主机或服务器因特网由操作系统控制由应用研发者控制应用层应用层运输层运输层15进程与套接字关系进程与套接字
11、关系进程类似进程类似房子房子,套接字是进程的,套接字是进程的门门。进程通过进程通过套接字套接字在网络上发送和接收报文。在网络上发送和接收报文。进程具有缓存、变量的TCP套接字套接字主机或服务器进程具有缓存、变量的TCP套接字套接字主机或服务器因特网由操作系统控制由应用研发者控制发送进程:发送进程:把报文推把报文推出门(套接字)。出门(套接字)。传送报文:传送报文:通过下面通过下面网络把报文传送到目网络把报文传送到目的进程门口。的进程门口。接收进程:接收进程:通过其门通过其门(套接字)接收报文(套接字)接收报文 16说明说明应用程序开发者应用程序开发者可以控制可以控制套接字应用层套接字应用层端的
12、全部;端的全部;对套接字的对套接字的运输层端几乎运输层端几乎不能控制不能控制(只能选择运输(只能选择运输层协议、设定几个运输层层协议、设定几个运输层参数等)。参数等)。应用程序开发者选择了一应用程序开发者选择了一个运输层协议,则应用程个运输层协议,则应用程序就建立在由该协议提供序就建立在由该协议提供的运输层服务之上。如的运输层服务之上。如TCP协议。协议。进程具有缓存、变量的TCP套接字主机或服务器进程具有缓存、变量的TCP套接字主机或服务器因特网由操作系统控制由操作系统控制由应用研发者控制由应用研发者控制173、进程寻址、进程寻址主机上的进程可以有多个主机上的进程可以有多个。网络中有多个主机
13、网络中有多个主机,每个主机上有多个进程。,每个主机上有多个进程。r进程识别信息:表示进程识别信息:表示哪台主机上的哪一个进程。哪台主机上的哪一个进程。 源主机上的进程向目的主机上的进程发送报文源主机上的进程向目的主机上的进程发送报文时,应带有接收进程的识别信息(标识)。时,应带有接收进程的识别信息(标识)。r进程寻址:进程寻址: 根据根据进程识别信息进程识别信息找到相应进程。找到相应进程。如何识别如何识别进程?进程?确定主机确定主机确定进程确定进程18进程识别信息(两部分)进程识别信息(两部分)r主机名称或地址:主机名称或地址:网络中的哪一个主机。网络中的哪一个主机。 因特网中,用因特网中,用
14、IP地址地址标识标识(32位,全球惟一)。位,全球惟一)。r进程的标识:进程的标识:主机中的哪一个进程。主机中的哪一个进程。 因特网中,采用因特网中,采用端口号端口号标识标识(port number)。常用的应用程序被指派固定的端口号常用的应用程序被指派固定的端口号(周知端口)周知端口)。 如,如,Web服务进程服务进程(HTTP协议协议):80 邮件服务进程邮件服务进程(SMTP协议协议):25创建一个新的网络应用程序时,必须分配一个新的端创建一个新的网络应用程序时,必须分配一个新的端口号。不重复。口号。不重复。194、用户代理(、用户代理(user agent) 是用户与网络应用程序之间的
15、接口。是用户与网络应用程序之间的接口。如如: :WebWeb应用的用户代理:应用的用户代理:是一些浏览器软件。是一些浏览器软件。 一个通过套接字收发报文,并提供用户接口的进程。一个通过套接字收发报文,并提供用户接口的进程。电子邮件应用程序用户代理:电子邮件应用程序用户代理:是是“邮件阅读器邮件阅读器”。 允许用户进行邮件的撰写和阅读。允许用户进行邮件的撰写和阅读。202.1.3 应用层协议应用层协议 定义了定义了运行在不同端系统上的应用程序运行在不同端系统上的应用程序进程间传递进程间传递报文的格式和方式报文的格式和方式。r具体内容:具体内容: 交换的报文类型:交换的报文类型:如请求报文和响应报
16、文;如请求报文和响应报文;各种报文类型的语法:各种报文类型的语法:报文中的各个字段及描述;报文中的各个字段及描述;字段的语义:字段的语义:字段包含信息的含义;字段包含信息的含义;进程何时、如何发送报文及对报文进行响应的规则。进程何时、如何发送报文及对报文进行响应的规则。21说明说明r公共领域协议:公共领域协议:由标准文档由标准文档RFC定义,如定义,如HTTP。 专用层协议:专用层协议:如如P2P使用的协议。使用的协议。r应用层协议应用层协议是网络应用的一部分。是网络应用的一部分。 如如Web应用,客户机从应用,客户机从Web服务器获得服务器获得“文档文档”。组成:组成:HTML、Web浏览器
17、、浏览器、Web服务器程序,以及服务器程序,以及一个应用层协议一个应用层协议HTTP(超文本传输协议超文本传输协议)等。等。HTTP定义了在浏览器程序和定义了在浏览器程序和Web服务器程序间传输的服务器程序间传输的报文格式和序列。报文格式和序列。 其他协议:电子邮件协议其他协议:电子邮件协议SMTP等等等等222.1.4 应用程序所需要的服务应用程序所需要的服务q应用程序间通信:应用程序间通信:由由运输协议运输协议跨越网络将发送进程的跨越网络将发送进程的报文传输到接收进程的门户报文传输到接收进程的门户 。需要使用运输协议所提供的服务需要使用运输协议所提供的服务。运输协议有多种,提供的服务不同。
18、运输协议有多种,提供的服务不同。进程具有缓存、变量的TCP套接字主机或服务器进程具有缓存、变量的TCP套接字主机或服务器因特网由操作系统控制由应用研发者控制23应用程序需要什么样的运输服务?应用程序需要什么样的运输服务?r可靠的数据传输(无数据丢失)可靠的数据传输(无数据丢失)数据不能丢失的应用:数据不能丢失的应用:如文件传输、金融事务等。如文件传输、金融事务等。能容忍数据丢失的应用:能容忍数据丢失的应用:如多媒体应用。如多媒体应用。 r带宽(数据传输率)带宽(数据传输率)带宽敏感的应用:带宽敏感的应用:需要特定的带宽才能正常工作。需要特定的带宽才能正常工作。 如,因特网电话、其他多媒体应用。
19、如,因特网电话、其他多媒体应用。弹性应用:弹性应用:使用的带宽多或少影响不大。使用的带宽多或少影响不大。 如电子邮件、文件传输以及如电子邮件、文件传输以及Web传输。传输。r定时(数据传输的时间限制)定时(数据传输的时间限制)交互式实时应用:交互式实时应用:对时间敏感,要求时延小。如,因特网对时间敏感,要求时延小。如,因特网电话、视频会议以及多方游戏等。电话、视频会议以及多方游戏等。非实时应用:非实时应用:时延无限制,低更好。时延无限制,低更好。 24典型应用的运输服务要求典型应用的运输服务要求应用程序应用程序文件传输文件传输电子邮件电子邮件Web 文档文档实时音频实时音频/视频视频(因特网电
20、话(因特网电话/视频会议)视频会议)存储音频存储音频/视频视频交互式游戏交互式游戏即时讯息即时讯息数据丢失数据丢失不能丢失不能丢失 不能丢失不能丢失 不能丢失不能丢失 容忍丢失容忍丢失 容忍丢失容忍丢失 容忍丢失容忍丢失 不能丢失不能丢失 带宽带宽弹性弹性弹性弹性弹性弹性音频音频: 5kbps-1Mbps视频视频:10kbps-5Mbps同上同上 几几kbps以上以上弹性弹性时间敏感时间敏感不不不不不不是是, 100 ms是是, , 几秒几秒是是, , 100 ms是和不是是和不是252.1.5 因特网运输协议提供的服务因特网运输协议提供的服务两个运输层协议:两个运输层协议:m用户数据报协议用
21、户数据报协议UDPm传输控制协议传输控制协议TCP 每个协议为调用它们的应用程序提供不同的服务模型。每个协议为调用它们的应用程序提供不同的服务模型。在创建一个新的因特网应用时,要选择其中一个。在创建一个新的因特网应用时,要选择其中一个。 261、TCP服务服务q两个方面:两个方面:面向连接的服务:面向连接的服务:可靠的传输服务:可靠的传输服务:27面向连接的服务面向连接的服务r划分三阶段划分三阶段建立连接(握手过程):建立连接(握手过程): 客户机程序和服务器程序之间互相交换控制信客户机程序和服务器程序之间互相交换控制信息,在两个进程的息,在两个进程的套接字之间建立一个套接字之间建立一个TCP
22、连接连接。传输报文:传输报文: 连接是连接是全双工全双工的,即连接双方的进程可以在此连的,即连接双方的进程可以在此连接上同时进行报文收发。接上同时进行报文收发。拆除连接:拆除连接: 应用程序报文发送结束。应用程序报文发送结束。28可靠的传输服务可靠的传输服务通信进程可以通信进程可以无差错、按适当顺序无差错、按适当顺序交付发送的交付发送的数据。数据。 没有数据丢失和重复。没有数据丢失和重复。29拥塞控制拥塞控制 当发送方和接收方之间的网络出现拥塞时,当发送方和接收方之间的网络出现拥塞时,会抑会抑制发送进程速率。制发送进程速率。 对整个网络有益。对整个网络有益。30未提供的服务未提供的服务不确保最
23、小传输速率:不确保最小传输速率:发送进程受拥塞控制机制制约;发送进程受拥塞控制机制制约;不提供时延保证:不提供时延保证:数据传输的时间不确定。数据传输的时间不确定。 TCP协议能保证交付所有的数据,但并不保证这些协议能保证交付所有的数据,但并不保证这些数据传输的速率以及期待的传输时延。数据传输的速率以及期待的传输时延。 TCP协议协议不适合实时应用不适合实时应用。 312、UDP服务服务提供提供最小服务模式最小服务模式运行。运行。无连接:无连接:两个进程通信前没有握手过程;两个进程通信前没有握手过程;不可靠数据传输:不可靠数据传输:不保证报文能够被接收,或收到的不保证报文能够被接收,或收到的报
24、文是乱序到达。报文是乱序到达。没有拥塞控制机制:没有拥塞控制机制:发送进程可以任何速率发送数据发送进程可以任何速率发送数据不提供时延保证:不提供时延保证:r适于实时应用。适于实时应用。32因特网应用、应用协议与运输协议因特网应用、应用协议与运输协议 应用应用 应用层协议应用层协议传输协议传输协议电子邮件电子邮件 SMTP TCP远程终端访问远程终端访问 Telnet TCPWeb HTTP TCP文件传输文件传输 FTP TCP远程文件服务器远程文件服务器 NFS UDP或或TCP流媒体流媒体 HTTP、RTP UDP或或TCP因特网电话因特网电话 SIP、RTP 典型用典型用UDP332.2
25、 Web应用和应用和HTTP协议协议产生于产生于20世纪世纪90年代初期。年代初期。改变了人们与工作环境内外的交流方式;改变了人们与工作环境内外的交流方式;提升因特网地位;提升因特网地位;生活和工作发生变化;生活和工作发生变化;方便、快捷得到所需要的信息(方便、快捷得到所需要的信息(按需操作按需操作););任何人在任何人在Web上发布信息;上发布信息;超链接和搜索引擎帮助人们浏览超链接和搜索引擎帮助人们浏览Web站点。站点。34本节内容2.2.1 HTTP概况概况2.2.2 HTTP连接连接2.2.3 HTTP报文格式报文格式2.2.4 用户与服务器交互:用户与服务器交互:Cookie2.2.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机网络 向下 方法 第四 中文版 课件 第二 ppt
限制150内