计算机网络 第七章应用层.ppt

上传人:少林足球 文档编号:3735885 上传时间:2019-09-22 格式:PPT 页数:65 大小:928.11KB
返回 下载 相关 举报
计算机网络 第七章应用层.ppt_第1页
第1页 / 共65页
计算机网络 第七章应用层.ppt_第2页
第2页 / 共65页
计算机网络 第七章应用层.ppt_第3页
第3页 / 共65页
计算机网络 第七章应用层.ppt_第4页
第4页 / 共65页
计算机网络 第七章应用层.ppt_第5页
第5页 / 共65页
点击查看更多>>
资源描述

《计算机网络 第七章应用层.ppt》由会员分享,可在线阅读,更多相关《计算机网络 第七章应用层.ppt(65页珍藏版)》请在三一文库上搜索。

1、第七章 应用层,应用层概述 客户/服务器模型 域名服务 简单网络管理协议SNMP 网络安全 电子邮件 WWW 文件传输协议FTP,应用层概述(1),互联网提供一个通用的通信构架,并不指明提供哪些服务,由哪些计算机来运行这些服务,如何确定服务的存在,以及如何使用这些服务。 应用层为用户提供高层服务,并决定了用户对底层互联网能力的认知。 应用决定了信息显示的格式以及用户选择和访问信息的机制。最重要的是,应用能定义符号名字来标识互联网上可用的物理资源和抽象资源。 比如,应用软件能为计算机和输入输出设备(如打印机)定义名字,也能为抽象的对象(如文件、电子邮件信箱、数据库等)定义名字。符号名字能帮助用户

2、在高层次上区分和定位信息与服务,而不必理解或记忆底层软件协议所使用的低级地址。,客户/服务器模型(1),基本概念 客户/服务器模型是所有网络应用的基础。客户/服务器分别指参与一次通信的两个应用实体,客户方主动地发起通信请求,服务器方被动地等待通信的建立。,客户/服务器模型(2),客户软件 任何一个应用程序当需要进行远程访问时成为客户,这个应用程序也要完成一些本地的计算; 一般运行于用户的个人计算机上; 向服务器主动发起通信请求; 可以访问多个服务器,但一次只能访问一个; 不需要特殊的硬件和复杂的操作系统。 服务器软件 是专用的提供某种服务的特权程序,可以同时处理多个远程客户; 一般在系统启动时

3、被执行,并连续运行以处理多次会话; 被动的等待远程客户发起通信; 需要特殊的硬件和复杂的操作系统。,客户/服务器模型(3),数据在客户和服务器之间是双向流动的,一般是客户发出请求,服务器给出响应。 服务器软件的并发性 由于服务器软件要支持多个客户的同时访问,它必须具备并发性。服务器软件为每个新到的客户创建一个进程或线程来处理和这个客户的通信。服务器方传送层实体使用客户的源端口号和服务的端口号来确定正确的服务器软件进程(线程)。 服务器软件的组成 服务器软件一般分为两部分:一部分用于接受请求并创建新的进程或线程,另一部分用于处理实际的通信过程。,客户/服务器模型(4),客户/服务器之间使用的传送

4、层协议 可以是基于连接的TCP协议,要求建立和释放连接,适用于可靠的交互过程; 也可以是无连接的UDP协议,适用于可靠性要求不高的或实时的交互过程; 同时使用TCP和UDP的服务,有两种服务器软件的实现或服务器软件同时和TCP、UDP协议交互,不对客户做限制。 客户和服务器的交互 支持协议:在INTERNET中,客户和服务器的交互通过使用TCP/IP协议栈来完成。因此,客户和服务器所在的机器要求支持完全的协议栈。客户/服务器通过套接字访问传送层服务。,客户/服务器模型(5),客户/服务器模型(6),客户/服务器模型(7),多种服务:一台计算机上可以运行多个服务器软件,但是要求计算机有强大的硬件

5、资源(服务器级别的计算机)和多任务操作系统(UNIX和WIN95/98/2000/NT)。 服务的标识:客户是通过服务的标识来访问某种服务的,比如在INTERNET中,服务是用端口号来标识,UNIX在/etc/services文件中定义。服务器软件启动时将其标识通知传送层实体。,客户/服务器模型(8),为一个服务建立多个服务器副本:一套计算机系统如果允许同时运行多个应用程序,则称它支持并发(c o n c u r r e n c y),而具有一个以上控制线程(有些系统使用术语进程( p r o c e s s)或任务( t a s k)来表示控制线程)的程序称为并发(c o n c u r r

6、 e n t)程序。并发性是客户服务器交互模式的基础,因为一个并发服务器同时为多个客户提供服务,而不要求每个客户等待服务器对前一个客户的服务结束。 动态服务器创建:大多数并发服务器是动态操作的,服务器在每个请求到来时创建一个新的线程。事实上,服务器程序由两部分组成:一部分负责接收请求和生成新线程,另一部分包含处理单个请求的代码。当一个并发服务器开始执行时,只有第一部分在运行。当请求到达时,主线程创建一个新的服务线程来处理它。处理请求的线程运行第二部分代码(即为请求提供服务的部分),然后终止。同时,主线程保持服务器处于活动状态在创建处理请求的线程后,主线程继续等待下一个请求到来。,客户/服务器模

7、型(9),复杂的客户服务器交互: 客户应用并不限于只能访问一个服务。同一个应用能够先是某个服务的客户,以后又成为另一个服务的客户。对每种服务,客户可与不同的服务器(可能在不同的计算机上)进行通信。 客户应用访问某一服务时并不限于一个服务器。在有些服务中,在不同计算机上运行的服务器会提供不同的信息。在另一些服务中,所有服务器提供相同的信息。在这些情况下,客户可能通过向多个服务器发出请求来提高性能它使用最先应答的服务器所发送的信息。 服务器进行其他客户服务器交互不受限制提供某种服务的服务器能成为另一个服务的客户。,域名服务(1),产生原因 32比特的IP地址难于记忆,应该使用符号地址,比如用表示2

8、02.38.64.2。但是,网络本身是使用IP地址的,因此需要一个完成二者之间相互转换的机制。 当网络规模比较小时,例如ARPANET,每台主机只需查找一个文件(UNIX的host),该文件中列出了主机与IP地址的对应关系。 当网络规模很大时,上述方法就不适用了,因此产生了域名系统DNS(Domain Name System)。 DNS概述 域名系统是一个典型的客户/服务器交互系统; 域名系统是一个多层次的、基于域的命名系统,并使用分布式数据库实现这种命名机制;,当应用程序需要进行域名解析时(从符号名到IP地址),它成为域名系统的一个客户。它向本地域名服务器发出请求(调用resolver),请

9、求以UDP包格式发出,域名服务器找到对应的IP地址后,给出响应。当本地域名服务器无法完成域名解析,它临时变成其上级域名服务器的客户,递归解析,直到该域名解析完成。 RFC 1034,1035 域名的结构 INTERNET的顶级域名分为组织结构和地理结构两种。每个域对它下面的子域和机器进行管理。 DNS中,每台计算机的名字是由“.”所分开的字符数字串所组成的。例如. 域名是大小写无关的,“edu”和“EDU”相同。域名最长255个字符,每部分最长63个字符。,域名服务(2),域名服务(3),资源记录 在DNS的数据库中用资源记录来表示主机和子域的信息,当应用程序进行域名解析时,得到的便是域名所对

10、应的资源记录。 资源记录是一个五元式,Domain_name Time_to_live Type Class Value,域名服务(4),域名服务器 区域划分 DNS将域名空间划分为许多无重叠的区域(zone) ,每个区域覆盖了域名空间的一部分并设有域名服务器对这个区域的域名进行管理。 每个区域有一个主域名服务器和若干个二级域名服务器,区域的边界划分是人工设置的,比如: 可以是三个不同的区域,可以分别有各自的域名服务器。,域名服务(5),域名解析 一个区域内机器上的应用程序进行域名解析时,首先向该区域的域名服务器发出解析请求,若查找到,则返回域名对应的资源记录。 若找不到,该域名服务器向所查

11、找域名的顶级域的域名服务器发出解析请求, 顶级域的域名服务器通过向下的层次查询得到对应的资源记录,返回给该域名服务器, 最后资源记录被返回给发起域名解析的机器,并在该区域的域名服务器中做缓存,超时后删除。,Simple DNS example,host surf.eurecom.fr wants IP address of gaia.cs.umass.edu 1. Contacts its local DNS server, dns.eurecom.fr 2. dns.eurecom.fr contacts root name server, if necessary 3. root name

12、 server contacts authoritative name server, dns.umass.edu, if necessary,requesting host surf.eurecom.fr,gaia.cs.umass.edu,root name server,authorititive name server dns.umass.edu,1,2,3,4,5,6,DNS example,Root name server: may not know authoratiative name server may know intermediate name server: who

13、to contact to find authoritative name server,requesting host surf.eurecom.fr,gaia.cs.umass.edu,root name server,1,2,3,4,5,6,authoritative name server dns.cs.umass.edu,7,8,DNS: iterated queries,recursive query: puts burden of name resolution on contacted name server heavy load? iterated query: contac

14、ted server replies with name of server to contact “I dont know this name, but ask this server”,requesting host surf.eurecom.fr,gaia.cs.umass.edu,root name server,1,2,3,4,5,6,authoritative name server dns.cs.umass.edu,7,8,iterated query,简单网络管理协议SNMP(1),SNMP(Simple Network Management Protocol)的产生 早期网络

15、,如ARPANET,规模很小,可以通过执行“PING”命令来发现网络故障; 网络规模变大,需要一个好的工具来管理网络。1990年发布RFC 1157,定义了SNMP v1; SNMP v2,RFC 1441 1452。 网络管理的五个基本管理功能:性能管理、故障管理、配置管理、记帐管理和安全管理。 SNMP是基于UDP的 SNMP模型 SNMP网络管理模型由四种部件组成: 被管理节点 运行SNMP代理程序(SNMP agent),维护一个本地数据库,描述节点的状态和历史,并影响节点的运行。,简单网络管理协议SNMP(2),管理工作站 运行专门的网络管理软件(manager),使用管理协议与被管

16、理节点上的SNMP代理通信,维护管理信息库。 管理信息 每个站点使用一个或多个变量描述自己的状态,这些变量称为“对象(objects)”,所有的对象组成管理信息库MIB(Management Information Base)。 管理协议(SNMP) 管理协议用于管理工作站查询和修改被管理节点的状态,被管理节点可以使用管理协议向管理站点产生“陷阱(trap)”报告。,简单网络管理协议SNMP(3),抽象语法表示法1(ASN.1) 定义:抽象语法表示法1是一种标准的对象定义语言,它分为数据描述定义(ISO 8824)和传输语法定义(ISO 8825)两部分。ASN.1可以作为异种计算机设备之间“

17、对象”的描述和传输机制。 ASN.1的基本数据类型,网络安全(1),安全网络和安全策略 没有绝对意义上的安全网络( secure network)存在 任何安全系统的第一步就是制定一个合理的安全策略(security policy)。 制定网络安全策略是一件很复杂的事情,其主要复杂性在于网络安全策略必须能够覆盖数据在计算机网络系统中存储、传输和处理等各个环节,否则安全策略就不会有效。 制定网络安全策略的复杂性还体现在对网络系统信息价值的评定。很容易理解,任何组织只有正确认识了其数据信息的价值,才能制定一个合理的安全策略。,网络安全(2),安全性指标 制定安全策略时,往往必须在安全性和实用性之间

18、采取一个折衷的方案,着重保证一些主要的安全性指标,如 数据完整性(data integrity),即数据在传输过程中的完整性,也就是数据在发送前和到达后是否完全一样。 数据可用性(data availability),即在系统故障的情况下数据是否会丢失。 数据保密性(data confidentiality and privacy),即数据是否会被非法窃取。 数据的不可否认性,对数据和信息的来源进行验证,以确保数据由合法的用户发出;防止数据发送方在发出数据后又加以否认;同时防止接收方在收到数据后又否认曾收到过此数据及篡改数据。,网络安全(3),安全责任和控制 如何正确分配系统的管理权限往往是安

19、全策略成败的关键。这个问题通常可以从两方面来考虑: 帐户(a c c o u n t a b i l i t y)。考虑如何规定系统各用户对系统各项信息的访问权限,如何监督用户活动、记录用户活动情况等。 授权(a u t h o r i z a t i o n)。对系统内每条信息,考虑如何规定各用户对它的操作权限,如只读、读写以及用户之间的权限转让等。 不管是帐户管理还是授权管理,关键问题是安全责任控制一个组织必须像管理有形资产如办公楼、机器设备一样对信息进行管理。,网络安全(4),完整性机制 校验和以及C R C技术都不能绝对保证数据的完整性,有两个原因: 如果出现检验值和消息数据同时破坏,

20、且改变后的检验值和消息又正巧匹配的情况,系统就无法发现错误(这种情况概率很低,但决不为零); 上述技术缺陷,可能为人恶意利用。 现已采用几种机制能够确保受到恶意攻击的消息的完整性。一般采用的方法是使用攻击者不能攻击或伪造的信息验证码(message authentication code,MAC)技术对传输数据进行编码。,网络安全(5),加密与保密: 为了保证有在线窃听的情况下的保密性,必须对数据加密。加密的基本思想是改变信息的排列方式,使得只有合法的接收方才能读懂。任何他人即使截取了该加密信息也无法解开。 目前存在几种加密技术 对称加密,双方具有共享的密钥 非对称加密,也称为公开密钥加密,网

21、络安全(6),对称加密:消息发送方和消息接收方必须使用相同的密钥,该密钥必须保密。发送方用该密钥对待发消息进行加密,然后将消息传输至接收方,接收方再用相同的密钥对收到的消息进行解密。 这一过程表示成数学形式如下:消息发送方使用的加密函数e n c r y p t有两个参数:密钥K和待加密消息M,加密后的消息为E。 E = encrypt(K, M ) 消息接收方使用的解密函数decrypt把这一过程逆过来,就产生了原来的消息: M = decrypt(K, E ) 数学上,decrypt和encrypt互为逆函数,有: M = decrypt(K, encrypt(K, M ),网络安全(7)

22、,非对称加密:给每个用户分配两把密钥:一个称私有密钥,是保密的;一个称公共密钥,是众所周知的。 该方法的加密函数必须具备如下数学特性:用公共密钥加密的消息除了使用相应的私有密钥外很难解密;同样,用私有密钥加密的消息除了使用相应的公共密钥外很难解密。 这种用两把密钥加密和解密的方法表示成数学形式如下:假设M表示一条消息, p u b - u l表示用户1的公共密钥,p r v - u l表示用户1的私有密钥,那么有 M = decrypt(pub-ul, encrypt(prv-ul , M) M = decrypt(prv-ul, encrypt(pub-ul, M),这种方法是安全的,因为加

23、密和解密的函数具有单向性质。也就是说,仅知道了公共密钥并不能伪造由相应私有密钥加密过的消息。 可以证明,公共密钥加密法能够保证保密性。只要消息发送方使用消息接收方的公共密钥来加密待发消息,就只有消息接收方能够读懂该消息。因为要解密必须要知道接收方的私有密钥。,网络安全(8),网络安全(9) 数字签名,数字签名是通过一个单向函数对要传送的报文进行处理得到的用以认证报文来源并核实报文是否发生变化的一个字母数字串。 在电子商务中,传送的文件是通过数字签名证明当事人身份与数据真实性的。数据加密是保护数据的最基本方法,但也只能防止第三者获得真实数据。数字签名则可以解决否认、伪造、篡改及冒充等问题。 要求

24、:发送者事后不能否认发送的报文签名、接收者能够核实发送者发送的报文签名、接收者不能伪造发送者的报文签名、接收者不能对发送者的报文进行部分篡改、网络中的某一用户不能冒充另一用户作为发送者或接收者。,数字签名的实现(1),目前的数字签名是建立在公共密钥体制基础上,它是公用密钥加密技术的另一类应用。它的主要方式是: 报文的发送方从报文文本中生成一个128位的散列值(或报文摘要)。 发送方用自己的私人密钥对这个散列值进行加密来形成发送方的数字签名。这个数字签名将作为报文的附件和报文一起发送给报文的接收方。 报文的接收方首先从接收到的原始报文中计算出128位的散列值(或报文摘要),再用发送方的公用密钥来

25、对报文附加的数字签名进行解密。 如果两个散列值相同、那么接收方就能确认该数字签名是发送方的。通过数字签名能够实现对原始报文的鉴别。,数字签名的实现(2),加入数字签名和验证的文件传输过程如下: 发送方首先用哈希函数从原文得到数字签名,然后采用公开密钥体系用发送方的私有密钥对数字签名进行加密,并把加密后的数字签名附加在要发送的原文后面; 发送一方选择一个秘密密钥对文件进行加密,并把加密后的文件通过网络传输到接收方; 发送方用接收方的公开密钥对密秘密钥进行加密,并通过网络把加密后的秘密密钥传输到接收方;,数字签名的实现(4),接受方使用自己的私有密钥对密钥信息进行解密,得到秘密密钥的明文; 接收方

26、用秘密密钥对文件进行解密,得到经过加密的数字签名; 接收方用发送方的公开密钥对数字签名进行解密,得到数字签名的明文; 接收方用得到的明文和哈希函数重新计算数字签名,并与解密后的数字签名进行对比。如果两个数字签名是相同的,说明文件在传输过程中没有被破坏。,电子邮件(1),相关协议标准 1982年ARPANET提出了RFC821(传输协议)RFC822(消息格式)作为电子邮件协议; 1984年CCITT提出了X.400建议,但是没有得到普及。 体系结构 用户代理:允许用户阅读和发送电子邮件,一般为用户进程; 消息传输代理:将消息从源端发送至目的端,一般为系统的后台进程; 简单邮件传输协议SMTP(

27、Simple Mail Transfer Protocol),电子邮件(2),电子邮件系统提供的五大基本功能 成文:指创建消息或回答消息的过程; 传输:指将消息从发送者传出至接收者; 报告:将消息的发送情况报告给消息发送者; 显示:使用相应的工具软件将收到的消息显示给接收者 处理:接收者对接收到的消息进行处理,存储/丢弃/转发等等。 其它高级功能 自动转发、自动回复; mailbox,创建邮箱存储邮件; mailing list; 抄送(cc)、高优先级、加密。,电子邮件(3),电子邮件的组成 信封:接收方的信息,如名字、地址、邮件的优先级和安全级别; 信件内容:由信头和信体组成,信头包含了用

28、户代理所需的控制信息,信体是真正的内容。 用户代理 发送电子邮件 email地址,例如, mailing list,例如, X.400地址,例如,/C=US/SP=MASSACHUSETTS/ L=CAMBRIDGE/PA=360 MEMORIAL DR./CN=KEN SMITH/,电子邮件(4),阅读电子邮件 用户代理在启动时检查用户的mailbox,通知用户是否有新邮件到来。并摘要性的显示邮件的主题、发送者及其邮件的状态。 信件格式 RFC822 信件包括信封、若干信头域、一个空行和信体。 电子邮件的扩展 MIME(Multipurpose Internet Mail Extension

29、s),增加了对图像、声音、视频、可执行文件等的支持。使用不同的编码方法将信息转化为ASCII字符流,电子邮件(5),消息传送协议 INTERNET使用简单邮件传输协议SMTP完成电子邮件的交换。 过程如下 消息传输代理在源端主机和目的主机的25号端口之间建立一条TCP连接,使用简单邮件传输协议SMTP协议进行通信; 在TCP连接建立好之后,作为客户的邮件发送方等待作为服务器的邮件接收方首先传输信息; 服务器首先发出准备接受的SMTP消息,客户向服务器发出HELO消息,服务器回答以HELO消息,双方进入邮件传输状态;,SMTP,POP3 or IMAP,电子邮件(6),邮件传输过程:客户首先发出

30、邮件的发信人地址(MAIL FROM),然后发出收信人的地址(RCPT TO),服务器确认收信人存在后,发出可以继续发送的指示,客户发送真正的消息(DATA),以.作为结束; 当客户方邮件发送完之后,服务器开始发送邮件至客户,过程同上; 两个方向的发送完成之后,释放TCP连接(QUIT)。 注意 消息以7-比特ASCII码为单位 某些特殊字符串(如CRLF.CRLF)不允许在消息中出现,需要编码(例如,base64),电子邮件(7),其它协议 POP3(Post Office Protocol),RFC 1939,用户代理和邮箱不在同一机器上,用户代理使用此协议将邮箱中的信件取回本地; IMA

31、P(Internet Mail Access Protocol),RFC 1730,收信人使用多个用户代理访问同一邮箱,邮件始终保持在邮箱中。 加密电子邮件协议:PGP与PEM协议。 try smtp interaction for yourself telnet servername 25 see 220 reply from server enter HELO, MAIL FROM, RCPT TO, DATA, QUIT commands above lets you send email without using email client (reader),电子邮件(8),Sampl

32、e smtp interaction S: 220 hamburger.edu C: HELO crepes.fr S: 250 Hello crepes.fr, pleased to meet you C: MAIL FROM: S: 250 alicecrepes.fr. Sender ok C: RCPT TO: S: 250 bobhamburger.edu . Recipient ok C: DATA S: 354 Enter mail, end with “.“ on a line by itself C: Do you like ketchup? C: How about pic

33、kles? C: . S: 250 Message accepted for delivery C: QUIT S: 221 hamburger.edu closing connection,X.400 MHS Function Model UA - User Agent MTA - Message Transfer Agent MS - Message Store AU - Access Unit PDAU - Physical Delivery Access Unit,WWW (1),WWW(World Wide Web)是用于访问遍布于INTERNET上的相互链接在一起的超文本的一种结构

34、框架。 历史 1989年,设计WWW的思想产生于欧洲核研究中心CERN; 1991年,第一个原型在美国的Hypertext 91会议上展示; 1993年,第一个图形化浏览器,Mosaic; 1994年,Andreessen创建NETSCAPE公司,开发WEB的客户和服务器软件; 同年,CERN和MIT共同创建WWW论坛,制定相关的协议标准,http:/www.w3.org。,WWW (2),术语 Web page: consists of “objects” addressed by a URL Most Web pages consist of: base HTML page, and se

35、veral referenced objects. User agent for Web is called a browser: MS Internet Explorer Netscape Navigator Server for Web is called Web server:,PC running Explorer,Server running NCSA Web server,Mac running Navigator,http request,http request,http response,http response,WWW (3),用户眼中的WEB WEB是由互相链接在一起的

36、网页构成的,这些网页是由普通文本、超文本Hypertext,以及图表、照片等构成; 用户通过称为浏览器的软件来观看网页,浏览器取回所请求的网页,解释其中所含的文本和格式命令,并正确的显示出来; 网页中的文本串若指向其它的网页(此指针称为超级链接Hyperlink,此文本串称为超文本),会被特别地显示出来(加下划线),用户若选择此超级链接,浏览器会将此超级链接所指的网页取回; 当超文本网页中包含声音、动画等其它媒体时,网页被称为是超媒体的。浏览器一般通过外挂的帮助程序来显示这些超媒体信息。,WWW (4),WEB的客户/服务器模型 在每个WEB服务器上有一个服务进程在TCP的80端口上监听由浏览

37、器发来的建立连接请求;在连接建立之后,浏览器和服务器之间使用超文本传输协议HTTP协议进行信息传输; 超级链接是使用URL(统一资源定位符)来找到目标网页的。URL由三部分组成: 协议类型(HTTP、FTP、TELNET等); 网页所在机器的地址(域名或IP地址); 包含网页的文件名称。 浏览器确定URL,通过DNS解析IP地址,建立TCP连接,向服务器发出HTTP的GET请求取回网页,释放连接,并显示网页中所有的文本。然后,浏览器逐一取回网页中的图象。,WWW (5),超文本传输协议HTTP HTTP协议由一套从浏览器发往服务器的请求和一套从服务器发往浏览器的响应组成。 请求分为两类 简单请

38、求:GET网页文件名,服务器回答以网页内容; 完全请求:GET网页文件名、协议版本号,服务器回答以使用MIME格式编码的网页内容。 http1.0: RFC 1945;http1.1: RFC 2068 超文本标记语言HTML HTML使用一套标记符号来实现对文本的格式化; HTML 2.0引入了对表格的支持,允许用户填充信息并将其送回服务器。服务器方使用一个CGI程序进行处理。,Suppose user enters URL www.someSchool.edu/someDepartment/home.index,1a. http client initiates TCP connectio

39、n to http server (process) at www.someSchool.edu. Port 80 is default for http server.,2. http client sends http request message (containing URL) into TCP connection socket,1b. http server at host www.someSchool.edu waiting for TCP connection at port 80. “accepts” connection, notifying client,3. http

40、 server receives request message, forms response message containing requested object (someDepartment/home.index), sends message into socket,time,(contains text, references to 10 jpeg images),http example,5. http client receives response message containing html file, displays html. Parsing html file,

41、 finds 10 referenced jpeg objects,6. Steps 1-5 repeated for each of 10 jpeg objects,4. http server closes TCP connection.,time,http example (cont.),Non-persistent HTTP/1.0 server parses request, responds, and closes TCP connection 2 RTTs to fetch each object Each object transfer suffers from slow st

42、art,Persistent default for HTTP/1.1 on same TCP connection: server, parses request, responds, parses new request, Client sends requests for all referenced objects as soon as it receives base HTML. Fewer RTTs and less slow start.,But most 1.0 browsers use parallel TCP connections.,Non-persistent and

43、persistent connections,WWW (6),JAVA 产生的原因 HTML只能处理包含文本、表格和图象的静态页面,以及浏览器和服务器之间使用CGI的有限交互。利用JAVA设计交互式的主页。 工作过程 网页可以指向一个JAVA的applet(小应用程序),当浏览器请求时,applet会被下载至浏览器,并被浏览器中所包含的JAVA解释器执行。 JAVA系统包含三个部分 JAVA到字节代码的编译器 支持applet的浏览器 字节代码的解释器,user sets browser: Web accesses via web cache client sends all http req

44、uests to web cache if object at web cache, web cache immediately returns object in http response else requests object from origin server, then returns http response to client,Goal: satisfy client request without involving origin server,client,Proxy server,client,http request,http request,http respon

45、se,http response,http request,http response,http request,http response,origin server,origin server,Web Caches (proxy server),Assume: cache is “close” to client (e.g., in same network) smaller response time: cache “closer” to client decrease traffic to distant servers link out of institutional/local

46、ISP network often bottleneck,origin servers,public Internet,institutional network,10 Mbps LAN,1.5 Mbps access link,institutional cache,Why Web Caching?,文件传输协议FTP(1),transfer file to/from remote host client/server model client: local side that initiates transfer (either to/from remote) server: remote

47、 host ftp: RFC 959 ftp server: port 21,file transfer,local file system,remote file system,user at host,文件传输协议FTP(2),ftp client contacts ftp server at port 21, specifying TCP as transport protocol two parallel TCP connections opened: control: exchange commands, responses between client, server. “out of band control” data: file data to/from server ftp server maintains “state”: current directory, earlier authentication,数据连接可被用于任一方向的数据传输 数据连接不需要总存在,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1