资源预览内容
第1页 / 共96页
第2页 / 共96页
第3页 / 共96页
第4页 / 共96页
第5页 / 共96页
第6页 / 共96页
第7页 / 共96页
第8页 / 共96页
第9页 / 共96页
第10页 / 共96页
亲,该文档总共96页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
Chapter 1: Computer Network and Internet6、Data switching technologiesData Switching:Circuit Switching(电路交换)(电路交换)Packet Switching(分组交换)(分组交换)2021/8/61Chapter 1: Computer Network and InternetCircuit SwitchingHostHostHostHostHostHostHostHostHostHostHostHostSourceSourceDestinationDestination6、Data switching technologies2021/8/62Chapter 1: Computer Network and Internet6、Data switching technologiesCircuit SwitchingEnd-end resources reserved for “call”ulink bandwidth, switch capacityudedicated resources: no sharingucircuit-like (guaranteed) performanceucall setup required2021/8/63Chapter 1: Computer Network and InternetPacket Switching昆明昆明成都成都西安西安广州广州武汉武汉上海上海北京北京沈阳沈阳HostHostHostHostHostHostHostHost1 12 23 34 41 12 23 34 41 14 42 23 33 34 41 12 21 14 42 21 12 23 34 46、Data switching technologiespppppPacket BufferStore-and-forwardppppppp2021/8/64Chapter 1: Computer Network and Internet6、Data switching technologieseach end-end data stream divided into packetsuuser A, B packets share network resources ueach packet uses full link bandwidth uresources used as needed resource contention: uaggregate resource demand can exceed amount availableucongestion: packets queue, wait for link useustore and forward: packets move one hop at a timeNode receives complete packet before forwardingPacket Switching2021/8/65Chapter 1: Computer Network and InternetSequence of A & B packets does not have fixed pattern, shared on demand statistical multiplexing.TDM: each host gets same slot in revolving TDM frame.ABC10 Mb/sEthernet1.5 Mb/sDEstatistical multiplexingqueue of packetswaiting for outputlink6、Data switching technologiesPacket Switching: Statistical Multiplexing2021/8/66Chapter 1: Computer Network and InternetPacket switching versus circuit switchingu1 Mb/s linkueach user: 100 kb/s when active”active 10% of timeucircuit-switching: 10 usersupacket switching: with 35 users, probability 10 ctive less than .0004Packet switching allows more users to use network!N users1 Mbps link6、Data switching technologies2021/8/67Chapter 1: Computer Network and InternetNetwork TaxonomyTelecommunicationnetworksCircuit-switchednetworksFDMTDMPacket-switchednetworksNetworkswith VCsDatagramNetworksFDatagram network is not either connection-oriented or connectionless.FInternet provides both connection-oriented (TCP) and connectionless services (UDP) to apps.2021/8/68Chapter 1: Computer Network and Internet6、Data switching technologiesABpropagationtransmissionnodalprocessingqueueingDelay in packet-switched networks分组交换网性能关键参数分组交换网性能关键参数2021/8/69Chapter 1: Computer Network and InternetDelay in packet-switched networks分组交换网性能关键参数分组交换网性能关键参数Transmission delay(传输时延)(传输时延)Processing delay(处理时延)(处理时延)Queuing delay(排队时延)(排队时延)Propagation delay(传播时延)(传播时延)6、Data switching technologies处理时延处理时延排队时延排队时延传输时延传输时延分组完分组完全到达全到达分组送到分组送到输出队列输出队列分组第一分组第一位送出位送出分组最后分组最后一位送出一位送出传播时延传播时延分组第一位分组第一位到接收方到接收方时间时间时间时间senderRecv分组最后位分组最后位到接收方到接收方ABpropagationtransmissionnodalprocessing queueingsenderReceiver2021/8/610Chapter 1: Computer Network and InternetDelay in packet-switched networksProcessing delay(处理时延)(处理时延)检查分组头并决定输出路径的时间检查分组头并决定输出路径的时间+计算校验和以决定计算校验和以决定分组是否出错的时间等,记为分组是否出错的时间等,记为dproc处理时延由设备的处理能力决定。典型的处理时延为:处理时延由设备的处理能力决定。典型的处理时延为:ms级或更低级或更低6、Data switching technologies2021/8/611Chapter 1: Computer Network and Internet6、Data switching technologiesDelay in packet-switched networksTransmission delay(传输时延)(传输时延) 分组第一位传出到最后一位传出所需要的时间分组第一位传出到最后一位传出所需要的时间. 设分组长度为设分组长度为L bits,传输速率为,传输速率为 R bps。 则分组传输时延为:则分组传输时延为: dtrans= L/R (秒)秒) 例如:设分组长度例如:设分组长度L=1540bits,传输速率为,传输速率为 100Mbps. 则则 dtrans=1540/(100*1000000)=0.0000154s=15.4s2021/8/612Chapter 1: Computer Network and InternetDelay in packet-switched networksQueuing delay(排队时延)(排队时延)分组在输出队列上等待输出到链路上的时间,记为分组在输出队列上等待输出到链路上的时间,记为dqueue.排队时延依赖于输出队列的长短(即网络负载情况)、排队时延依赖于输出队列的长短(即网络负载情况)、线路传输速率。典型的排队时延:若干线路传输速率。典型的排队时延:若干ms6、Data switching technologies2021/8/613Chapter 1: Computer Network and Internet6、Data switching technologiesDelay in packet-switched networksPropagation delay(传播时延)(传播时延) 传输传输1bit到达接收方所需要的时间到达接收方所需要的时间 (或或信号传播时间信号传播时间). 设线路长度为设线路长度为l 米,信号传播速度为米,信号传播速度为 s 米米/秒,则传播时延为:秒,则传播时延为: dprop= l /s (秒)秒) (其中其中: s=21083108m/s) 例如:设线路长度例如:设线路长度l=1000米,传输介质为光纤(光传播速度米,传输介质为光纤(光传播速度3108米米/秒),则秒),则 dprop=1000/(3108)3.310-6s=3.3s2021/8/614Chapter 1: Computer Network and Internet通过一个节点的总时延通过一个节点的总时延dnodal=dtrans+ dproc+dqueue+dprop端到端的总时延端到端的总时延 其中即其中即Q是通过的通信链路数,意味着中间结点(路由是通过的通信链路数,意味着中间结点(路由器)的个数是(器)的个数是(Q-1)。)。6、Data switching technologiesDelay in packet-switched networks2021/8/615Chapter 1: Computer Network and Internet分组平均到达率分组平均到达率(The average rate of packets arrive to queue) :单位时间内平均到达的分组数,用单位时间内平均到达的分组数,用a表示。表示。则:则:称称La/R为为通信强度通信强度(Traffic intensity)。其中:。其中:L是分组长度、是分组长度、R为线路传输速率。为线路传输速率。6、Data switching technologiesQueuing Delay in packet-switched networks2021/8/616Chapter 1: Computer Network and Internet讨论:讨论:1、如果、如果La/R1,则表明,则表明LaR,即到达的分组超过了能,即到达的分组超过了能够传输的分组。够传输的分组。 随着分组的不断到达,将在随着分组的不断到达,将在Queue中不断积累,中不断积累,将最终使分组的将最终使分组的Queuing delay为为 。 因此,从理论上说,只有因此,从理论上说,只有La/R1时,网络才能时,网络才能实现有效通信。实现有效通信。6、Data switching technologiesQueuing Delay in packet-switched networks2021/8/617Chapter 1: Computer Network and Internet讨论:讨论:2、假定分组是定期到达的假定分组是定期到达的,且在,且在L/R时间只到达一个分组,则时间只到达一个分组,则每个到达的分组都将不需要排队即可被立即发送出去,每个到达的分组都将不需要排队即可被立即发送出去, Queuing delay =0; 如果在如果在(L/R)N的时间内有的时间内有N个分组同时到达,则第一个分个分组同时到达,则第一个分组的组的Queuing delay=0,第二个分组的,第二个分组的Queuing delay=L/R秒,第秒,第N个分组个分组Queuing delay=(N-1)L/R秒秒 平均平均Queuing delay为:为:= =(S)(S)RN LNN-2)1(6、Data switching technologies= =RLN- 2)1(SecondsSecondsQueuing Delay in packet-switched networks2021/8/618Chapter 1: Computer Network and Internet讨论:讨论: 3、实际上分组是随机到达的实际上分组是随机到达的,Average Queuing delay与通信强度的关系为:与通信强度的关系为:1 1La/RAverage Queuing delay0 06、Data switching technologiesQueuing Delay in packet-switched networks2021/8/619Chapter 1: Computer Network and Internet7、Physical mediumTwisted-pair copper wire(单对铜双绞线)(单对铜双绞线)Unshielded twisted pair(无屏蔽双绞线)(无屏蔽双绞线)Shielded twisted pair(屏蔽双绞线)(屏蔽双绞线)Coaxial cable (同轴电缆)(同轴电缆)Fiber optics(光导纤维)(光导纤维)Terrestrial and satellite radio channels (地面和卫星无线通道)地面和卫星无线通道)本章结束!2021/8/620UTPSTPUTP/STPUTP/STP双绞线双绞线双绞线双绞线5.08mm0.914mm撕剥线撕剥线导线导线双绞线对双绞线对外护套外护套6.47mm1.07mm撕剥线撕剥线导线导线双绞线对双绞线对屏蔽层屏蔽层外护套外护套漏电线漏电线2021/8/621UTP/STPUTP/STP双绞线双绞线双绞线双绞线2021/8/622UTP/STPUTP/STP双绞线配线材料双绞线配线材料双绞线配线材料双绞线配线材料2021/8/623RJ45RJ45模块、水晶头、面板模块、水晶头、面板模块、水晶头、面板模块、水晶头、面板2021/8/624光纤传输基本原理:光纤传输基本原理:发送端:电信号转变为光信号,将光信号馈送到光纤传送。发送端:电信号转变为光信号,将光信号馈送到光纤传送。接收端:接收光纤传来的光信号,并转换为电信号。接收端:接收光纤传来的光信号,并转换为电信号。编码器编码器编码器编码器光源光源光源光源光接收光接收光接收光接收转换器转换器转换器转换器放大、译码放大、译码放大、译码放大、译码数据数据数据数据数据数据数据数据电线电线电线电线/ /串行编码脉冲串行编码脉冲串行编码脉冲串行编码脉冲光纤光纤光纤光纤/ /光信号光信号光信号光信号电线电线电线电线/ /串行编码脉冲串行编码脉冲串行编码脉冲串行编码脉冲2021/8/625光纤传输的基本原理光纤传输的基本原理光纤的一般结构及光信号传输路径:光纤的一般结构及光信号传输路径:透明材料:石英、塑料透明材料:石英、塑料透明材料:石英、塑料透明材料:石英、塑料均匀或非均匀光反射材料均匀或非均匀光反射材料均匀或非均匀光反射材料均匀或非均匀光反射材料芯径芯径芯径芯径外径外径外径外径l不同入射角的光所经过的光路长度不同,在接收端将接收不同入射角的光所经过的光路长度不同,在接收端将接收到畸变的光信号(色散)。到畸变的光信号(色散)。l光纤越长,畸变越严重。光纤越长,畸变越严重。l使畸变在允许范围的光纤长度就是允许的最大传输距离。使畸变在允许范围的光纤长度就是允许的最大传输距离。2021/8/626在光纤内传送的一个特定波长光束称为一个模。在光纤内传送的一个特定波长光束称为一个模。光纤分类(一)光纤分类(一):综合特性综合特性l单单模模光光纤纤: 只只能能传传输输单单个个波波长长的的光光;芯芯径径8-10m ,光光路路较较短短;用用激激光光二二极极管管作作光光源源;传传输输容容量量大大,传传输输距距离离远远;安安装装较较为为困难。困难。l多多模模光光纤纤: 能能同同时时传传输输多多个个波波长长的的光光;芯芯径径50m、62.5m ;光光路路较较长长;发发光光二二极极管管作作光光源源;传传输输容容量量较较小小,传传输输距距离离较较近;安装相对容易。近;安装相对容易。2021/8/627光纤分类(二)光纤分类(二):制造工艺制造工艺l折射突变型光纤折射突变型光纤: 折射层仅有一层。色散严重,传输距离近。折射层仅有一层。色散严重,传输距离近。l折射渐变型光纤折射渐变型光纤: 多折射层,光在纤芯中心的传输速度慢,边沿的传输速度多折射层,光在纤芯中心的传输速度慢,边沿的传输速度快,结果使色散减弱,因而传输距离较远。快,结果使色散减弱,因而传输距离较远。显然,折射渐变光纤的传输性能更好,但制造工艺更复杂。显然,折射渐变光纤的传输性能更好,但制造工艺更复杂。2021/8/628光缆分类光缆分类: l室内光缆室内光缆 软光缆,无金属加固软光缆,无金属加固l室外光缆室外光缆 有加固措施,抗水、晒所致的快速老化,具体又分为有加固措施,抗水、晒所致的快速老化,具体又分为 架空光缆架空光缆 铠装光缆铠装光缆 直埋光缆直埋光缆 海底光缆海底光缆2021/8/629铠装光缆铠装光缆室内光缆室内光缆软光缆软光缆直埋光缆直埋光缆架空光缆架空光缆2021/8/630光纤连接头、耦合器、配光纤连接头、耦合器、配线架、跳线线架、跳线2021/8/63136000km36000km同步轨道卫星:同步轨道卫星:36000km中地轨道卫星:中地轨道卫星:3000-15000km近地轨道卫星:近地轨道卫星:100-1000km例如例如“依星依星”,750km270ms270ms270+270ms270+270ms=540ms=540ms不使用中心站时不使用中心站时使用中心站时使用中心站时2021/8/632uHomework of this week: P65: 10, 142021/8/633Chapter 1: Computer Network and Internet34计算机网络原理计算机网络原理第二章第二章 应用层应用层Chapter 2 Application Layer2021/8/634Chapter 1: Computer Network and Internet2.1 Principles of Application Layer Protocol352.1.1 Application-Layer Protocoll应用层协议(应用层协议(Application Layer Protocol) 应用层协议为应用层协议为网络应用网络应用提供服务。提供服务。网络应用网络应用是若干标准、协是若干标准、协议等的集合,它采用议等的集合,它采用 应用层协议应用层协议来实现信息的传送。来实现信息的传送。例如:例如:Web浏览器和浏览器和Web服务器采用服务器采用http协议进行网页传送协议进行网页传送电子邮件程序采用电子邮件程序采用SMTP协议来发送邮件、采用协议来发送邮件、采用POP3或或IMAP协议来接收邮件协议来接收邮件网络管理程序采用网络管理程序采用SNMP来传送网络设备的状态信息来传送网络设备的状态信息2021/8/635Chapter 1: Computer Network and Internet2.1 Principles of Application Layer Protocol362.1.1 Application-Layer Protocoll应用层协议(应用层协议(Application Layer Protocol) An application-layer protocol defines how the applications processes, running on different hosts, pass messages to each other:The types of massages exchanged. Ex. , request messages and response messagesThe syntax of the various message type. Such as the fields in the messages and how the fields delineatedThe semantics of fields, that is, the meaning of contents in the fieldsRules for determining when and how a process sends messages and responds to messages2021/8/636Chapter 1: Computer Network and Internet2.1 Principles of Application Layer Protocol372.1.1 Application-Layer Protocoll网络协议的共同特点网络协议的共同特点Client/Server方式方式 网络协议由网络协议由Client side和和Server side组成组成 例如:例如:http既有服务器端(接受请求、给予响应),又有客既有服务器端(接受请求、给予响应),又有客户端(发出请求、接收数据)户端(发出请求、接收数据)网络应用是网络应用是Client/Server工作方式工作方式 Server是守侯进程(是守侯进程(Daemon process),它倾听并随时接受),它倾听并随时接受呼叫,建立会话并进行数据处理和发送呼叫,建立会话并进行数据处理和发送 ;Client总是通信的总是通信的 发起发起者者一台主机中既可以运行一个或多个一台主机中既可以运行一个或多个Server进程、又可以运行进程、又可以运行一个或多个一个或多个Client进程进程2021/8/637Chapter 1: Computer Network and Internet2.1 Principles of Application Layer Protocol382.1.1 Application-Layer Protocoll网络上的进程间通信(网络上的进程间通信(Processes Communication Across a Network) 通过通过Socket(套接口)(套接口)来实现来实现NetworkProcessTCP With Buffer,VariablesSocketProcessTCP With Buffer,VariablesSocket网络基础设施网络基础设施进程看到的传输通道进程看到的传输通道OS开发者开发者实际传输通道实际传输通道2021/8/638Chapter 1: Computer Network and Internet2.1 Principles of Application Layer Protocol392.1.1 Application-Layer Protocoll网络上的进程间通信(网络上的进程间通信(Processes Communication Across a Network)Socket是一台主机内部的应用层与传送层之间的接口是一台主机内部的应用层与传送层之间的接口也是网络应用与网络之间的应用程序接口(也是网络应用与网络之间的应用程序接口(API),网络应),网络应用通过对用通过对API的调用来实现通信的调用来实现通信 2021/8/639Chapter 1: Computer Network and Internet2.1 Principles of Application Layer Protocol402.1.1 Application-Layer Protocoll进程寻址(进程寻址(Process Addressing)进程寻址是指发送者进程如何标识接收者进程进程寻址是指发送者进程如何标识接收者进程进程寻址至少需要两个信息进程寻址至少需要两个信息接收者进程所在的主机名或地址接收者进程所在的主机名或地址 IP地址地址接收者进程在该主机上的标识接收者进程在该主机上的标识TCP port number2021/8/640Chapter 1: Computer Network and Internet2.1 Principles of Application Layer Protocol412.1.1 Application-Layer Protocoll用户代理(用户代理(User Agent)User Agent是用户使用网络应用的接口是用户使用网络应用的接口User Agent按照应用层协议(一个或多个)规定,调用按照应用层协议(一个或多个)规定,调用Socket来完成报文传输任务来完成报文传输任务User Agent的例子:的例子:IE、Netscape NavigatorOutlook Express、Foxmail2021/8/641Chapter 1: Computer Network and Internet2.1 Principles of Application Layer Protocol422.1.2 What Services Dose an Application Need?lData Loss有的应用不允许数据丢失。如文件传输、电子邮件、有的应用不允许数据丢失。如文件传输、电子邮件、Web应应用等用等有的应用能容忍一定量的数据丢失。如实时音频、视频应有的应用能容忍一定量的数据丢失。如实时音频、视频应用,它们允许质量的降低,但不允许时间的延误,它们靠用,它们允许质量的降低,但不允许时间的延误,它们靠自身的强壮性保证应用不中断、靠编码等手段保证质量自身的强壮性保证应用不中断、靠编码等手段保证质量 因此,实际的网络应用既需要可靠的传输服务,也需因此,实际的网络应用既需要可靠的传输服务,也需要不可靠的传输服务要不可靠的传输服务2021/8/642Chapter 1: Computer Network and Internet2.1 Principles of Application Layer Protocol432.1.2 What Services Dose an Application Need?lBandwidth应用可分为带宽敏感应用(应用可分为带宽敏感应用(Bandwidth-sensitive application) 和和弹性带宽应用(弹性带宽应用(Bandwidth-elastic application)两类。两类。实时应用是带宽敏感应用,它有基本的带宽要求,如实时应用是带宽敏感应用,它有基本的带宽要求,如IP Phone、Networking conference 等。等。非实时应用是弹性带宽应用,它不明确要求带宽,如非实时应用是弹性带宽应用,它不明确要求带宽,如E-mail、FTP、Web传输等。传输等。 Bandwidth当然越宽越好,但必须实事求是。当然越宽越好,但必须实事求是。2021/8/643Chapter 1: Computer Network and Internet2.1 Principles of Application Layer Protocol442.1.2 What Services Dose an Application Need?lTiming(时效性)(时效性)应用可以是时效性强的,也可以是时效性弱的。应用可以是时效性强的,也可以是时效性弱的。实时应用是时效性强的应用,数据必须限时送达,如实时应用是时效性强的应用,数据必须限时送达,如IP Phone、Networking conference 、Multiplayer game等。等。非实时应用是时效性弱的应用,如非实时应用是时效性弱的应用,如E-mail、FTP、Web传输等传输等 时效性与带宽等因素有关,有时必须以质量换取时效。时效性与带宽等因素有关,有时必须以质量换取时效。2021/8/644Chapter 1: Computer Network and Internet2.1 Principles of Application Layer Protocol452.1.2 What Services Dose an Application Need?applicationData lossBandwidthTime SensitiveFile TransferNo lossElasticNoE-mailNo lossElasticNoWeb browseNo lossElasticNoReal-time Audio/VideoLoss-tolerantAudio: few K-1MVideo: 10K-5MYes: 10s MsecStored Audio/VideoLoss-tolerantAudio: few K-1MVideo: 10K-5MYes: few secondsInteractive gamesLoss-tolerantFew K-10KYes:100s MsecFinancial DataNo lossElasticYes and no2021/8/645Chapter 1: Computer Network and Internet2.1 Principles of Application Layer Protocol462.1.3 Services Provided by transport-layer protocoll提供两类服务提供两类服务TCP服务服务UDP服务服务2021/8/646Chapter 1: Computer Network and Internet2.1 Principles of Application Layer Protocol472.1.3 Services Provided by transport-layer protocollTCP ServicesConnection-oriented service在数据传输之前,在数据传输之前,Client和和Server之间通过之间通过“握手握手”建立连接,建立连接,实际上是通信双方确认可以通信的过程,因而是松散的连接实际上是通信双方确认可以通信的过程,因而是松散的连接互相之间的数据传输(双向的,或全双工的)互相之间的数据传输(双向的,或全双工的)通信完成后拆除连接通信完成后拆除连接Reliable transport service 没有数据丢失没有数据丢失 没有数据错误没有数据错误 没有数据重复没有数据重复 要进行流控制、拥塞控制要进行流控制、拥塞控制TCP保证数据能送达,但不提供带宽保证和传输时延保证保证数据能送达,但不提供带宽保证和传输时延保证2021/8/647Chapter 1: Computer Network and Internet2.1 Principles of Application Layer Protocol482.1.3 Services Provided by transport-layer protocollUDP ServicesConnectionless serviceClient和和Server之间不需要建立连接之间不需要建立连接任何时候都可以将报文发送给本机的任何时候都可以将报文发送给本机的UDP Socket可以以任何可能的速率将报文发送给本机的可以以任何可能的速率将报文发送给本机的UDP SocketUnreliable service不保证报文一定到达接收者不保证报文一定到达接收者Socket不保证报文按顺序到达接收者不保证报文按顺序到达接收者Socket不保证报文及时到达接收者不保证报文及时到达接收者Socket不进行流控制和拥塞控制不进行流控制和拥塞控制best-effort service2021/8/648Chapter 1: Computer Network and Internet2.1 Principles of Application Layer Protocol492.1.3 Services Provided by transport-layer protocolApplicationsApplication-layer ProtocolUnderlying Transport ProtocolE-mailSMTP (RFC 821)TCPRemote Terminal accessTelnet (RFC 854)TCPWebHTTP (RFC 2616)TCPFile TransferFTP (RFC 959)TCPRemote File ServerNFS (Netwok File System)UDP or TCPStreaming MultimediaProprietary (Ex. Real Networks) UDP or TCPInternet TelephonyProprietary (Ex. Vocaltec)Typically UDPRFC: Request for Comments , IETF (Internet Engineering Task Force) Standard Documents2021/8/649Chapter 1: Computer Network and Internet2.2 The World Wide Web: HTTP502.2.1 Overview of HTTPWeb Servers document:www.microsoft.com/index.htmlhttp requesthttp requesthttp responsehttp responseWeb BrowserWeb BrowserHTTP 版本版本:HTTP 1.0(1997年前,年前,RFC 1945)HTTP 1.1(1998年开始,年开始,RFC 2616)2021/8/650Chapter 1: Computer Network and Internet2.2 The World Wide Web: HTTP512.2.2 Nonpersistent and Persistent ConnectionslNonpersistent Connections: 为每个目标(为每个目标(HTML文档及其中链接的对象)建立一个文档及其中链接的对象)建立一个TCP连接连接lPersistent Connections: 每个页面中的所有目标共用一个每个页面中的所有目标共用一个TCP连接(非流水线方式)连接(非流水线方式) 多个页面中的所有目标共用一个多个页面中的所有目标共用一个TCP连接(流水线方式)连接(流水线方式)lHTTP 1.0Nonpersistent Connections HTTP 1.1Nonpersistent Connections, Persistent Connections2021/8/651Chapter 1: Computer Network and Internet2.2 The World Wide Web: HTTP522.2.2 Nonpersistent and Persistent ConnectionslRTT(Round-Trip Time,周游时间周游时间):Client发送请求报文到接收发送请求报文到接收到到Server的应答报文之间的时间的应答报文之间的时间TCP connection AckTCP connection requestRTT假定服务器和客户机的处理时延为假定服务器和客户机的处理时延为0,现在来讨论不同,现在来讨论不同HTTP连接方式连接方式的传输性能的传输性能网页传输所需的时间网页传输所需的时间2021/8/652Chapter 1: Computer Network and Internet2.2 The World Wide Web: HTTP532.2.2 Nonpersistent and Persistent ConnectionslNonpersistent Connections:一个目标的传输时间:一个目标的传输时间: 2RTT+dtrans一个网页的传输时间:一个网页的传输时间: (2RTT+dtrans)多个网页的传输时间:多个网页的传输时间:(2RTT +dtrans)HTML fileTCP connection Ackhttp request messageTCP connection requestRTTRTTdtransTCP connection request2021/8/653Chapter 1: Computer Network and Internet2.2 The World Wide Web: HTTP542.2.2 Nonpersistent and Persistent ConnectionslPersistent Connections without pipelining:一个目标的传输时间:一个目标的传输时间: 2RTT+dtrans一个网页的传输时间一个网页的传输时间 2RTT +dtrans多个网页的传输时间:多个网页的传输时间:(2RTT +dtrans)dtransHTML filesTCP connection Ackhttp request messageTCP connection requestRTTRTTTCP connection request2021/8/654Chapter 1: Computer Network and Internet2.2 The World Wide Web: HTTP552.2.2 Nonpersistent and Persistent ConnectionslPersistent Connections with pipelining:一个目标的传输时间:一个目标的传输时间: 2RTT+dtrans一个网页的传输时间一个网页的传输时间 2RTT +dtrans多个网页的传输时间:多个网页的传输时间: 2RTT +dtrandtransHTML filesTCP connection Ackhttp request messageTCP connection requestRTTRTTdtrans2021/8/655Chapter 1: Computer Network and Internet2.2 The World Wide Web: HTTP562.2.3 HTTP Message FormatlHTTP request MessageGET /somedir/page.html HTTP/1.1Host: www.somedomainConnection: closeUser-agent: Mozilla/4.0Accept-language: en(Extra carriage return and linefeed)method GET,POST,HEADcloseNonpersistentMozilla/4.0Netscape navigatorenEnglishMozilla来源于来源于Netscape浏览器的前身浏览器的前身Mosaic浏览浏览器,与日本怪兽电影器,与日本怪兽电影Gozilla两个单词的组合。两个单词的组合。1998年,年,Netscape公司成立了公司成立了Mozilla开放源代码浏览器开放源代码浏览器开发小组,并公开了开发小组,并公开了Mozilla源代码。源代码。3.172021/8/656Chapter 1: Computer Network and Internet2.2 The World Wide Web: HTTP572.2.3 HTTP Message FormatlHTTP methodGET:请求读一个目标:请求读一个目标HEAD:请求读一个目标的头:请求读一个目标的头PUT:请求存储一个目标:请求存储一个目标POST:附加一个命名的资源(如一个表单数据):附加一个命名的资源(如一个表单数据)DELETE:删除一个目标:删除一个目标LINK:链接两个资源:链接两个资源UNLINK:切断两个已经链接的资源:切断两个已经链接的资源2021/8/657Chapter 1: Computer Network and Internet2.2 The World Wide Web: HTTP582.2.3 HTTP Message FormatlHTTP response MessageHTTP/ 1.1 200 OKConnection: CloseDate: Mon,10 Mar 2005 9:29:33 GMTServer: Apache/1.3(Linux)Last-Modified: Sun,9 Mar 2004 16:44:01 GMTContent-Length: 7632Content-Type: Text/html(Data )2021/8/658Chapter 1: Computer Network and Internet2.2 The World Wide Web: HTTP592.2.3 HTTP Message FormatlHTTP Status CodeStatus Code : 200 OK: 成功成功301 Moved Permanently: 请求的对象被永久移动,在请求的对象被永久移动,在Location行中返回新行中返回新URL400 Bad Request: 服务器不明白的请求服务器不明白的请求401 Authorization Required: 需要授权,在需要授权,在WWW-Authenticate行中说明如何授权行中说明如何授权404 Not Found: 请求的目标不存在请求的目标不存在505 HTTP Version Not Supported: 不支持请求的不支持请求的HTTP协议版本协议版本2021/8/659Chapter 1: Computer Network and Internet2.2 The World Wide Web: HTTP602.2.3 HTTP Message FormatlHTTP session demo查看学院网站上查看学院网站上”云南大学软件学院院庆公告云南大学软件学院院庆公告”信息:信息:http:/www.sei.ynu.edu.cn/view.aspx?s=1490C: telnet www.sei.ynu.edu.cn 80 连接到连接到Web服务器服务器GET /view.aspx?s=1490 HTTP/1.0 HTTP帧开始帧开始Host: www.sei.ynu.edu.cn Connection: close User-agent: Mozilla/4.0 Accept-language: en HTTP帧结束帧结束2021/8/660Chapter 1: Computer Network and Internet2021/8/661Chapter 1: Computer Network and Internet2.2 The World Wide Web: HTTP622.2.4 User-Server Interaction: Authentication and cookieslAuthentication(访问者的身份认证)访问者的身份认证)访问者的身份认证过程:访问者的身份认证过程:请求报文请求报文状态码状态码=401,WWW-Authenticate行中包含认证方法行中包含认证方法提示用户输入用提示用户输入用户名和密码户名和密码在在Authorization行中包含用户名和密码行中包含用户名和密码密码缓存密码缓存在每个目标的请求报文的在每个目标的请求报文的Authorization行中都包含用户名和密码行中都包含用户名和密码2021/8/662Chapter 1: Computer Network and Internet2.2 The World Wide Web: HTTP632.2.4 User-Server Interaction: Authentication and cookieslCookies(小甜饼、巨型炸弹、厨师小甜饼、巨型炸弹、厨师?)Web站点跟踪用户的一种技术,在站点跟踪用户的一种技术,在RFC2109中描述中描述用户首次访问的请求包用户首次访问的请求包在在Set-Cookies行中包含服务器分配的行中包含服务器分配的ID追加追加ID及相关信及相关信息到本地的特定息到本地的特定Cookies文件中文件中特定的特定的Cookies文件文件在以后的每个请求包中都包含在以后的每个请求包中都包含Cookies: ID存放在存放在cookies File中的信息包括:服务器主机名、中的信息包括:服务器主机名、与用户相关的标识信息等与用户相关的标识信息等2021/8/663Chapter 1: Computer Network and Internet2.2 The World Wide Web: HTTP642.2.4 User-Server Interaction: Authentication and cookieslCookies(小甜饼、巨型炸弹、厨师小甜饼、巨型炸弹、厨师?)Cookies的典型用途:的典型用途: 避免用户每次访问都输入用户名、密码,以简化身避免用户每次访问都输入用户名、密码,以简化身份认证过程。份认证过程。 记住用户,以便以后访问时提供该用户喜爱的信息记住用户,以便以后访问时提供该用户喜爱的信息(如广告)(如广告) 跟踪用户,以便实现虚拟购物卡等特殊的网络应用跟踪用户,以便实现虚拟购物卡等特殊的网络应用2021/8/664Chapter 1: Computer Network and Internet2.2 The World Wide Web: HTTP652.2.5 The Conditional GETl条件条件 GET是向服务器询问某目标是否已经修改的机制是向服务器询问某目标是否已经修改的机制Client首次访问首次访问目标:目标:any.htmlCache响应报文中的响应报文中的Any.html及及Last_modified中的日期中的日期Client第二次访问目标:第二次访问目标:any.html,在请求报文,在请求报文的的Last-Modofied行的行的值为:值为:Cache中该文件中该文件的最后修改日期时间的最后修改日期时间N时间后时间后 服务器判断:服务器判断:修改过吗?修改过吗?发送发送any.html响应报文:响应报文:HTTP/1.0 304 Not ModifiedDate: Server:(empty entity body)从从Cache中读中读any.htmlYN服务器端服务器端客客户户端端2021/8/665Chapter 1: Computer Network and Internet2.2 The World Wide Web: HTTP662.2.6 Web Cache (Proxy Server)UserAgentUserAgentCacheWebServerProxy ServerWeb ServerObject baseCache2021/8/666Chapter 1: Computer Network and Internet2.2 The World Wide Web: HTTP672.2.6 Web Cache (Proxy Server)l对对Client来说来说,Web Cache是一个是一个Web Serverl对对Web Server 来说来说,Web cache是一个是一个ClientlWeb Cache是是Client和和Web Server之间的桥梁之间的桥梁lWeb Cache可以增强内部网络的安全性可以增强内部网络的安全性lWeb Cache可以改善网络时延可以改善网络时延lWeb Cache可以使出口线路更有效可以使出口线路更有效llCooperative Caching能更进一步改善网络性能能更进一步改善网络性能2021/8/667Chapter 1: Computer Network and Internet2.3 File Transfer: FTP(RFC 959)68l FTP协议用于在协议用于在FTP客户机、服务器之间传输文件客户机、服务器之间传输文件 从客户机传送文件到服务器从客户机传送文件到服务器上载上载 (Upload) 从服务器传送文件到客户机从服务器传送文件到客户机下载下载(Download)Server File SystemClient File SystemFTP ServerFTP ClientUploadDownload2021/8/668Chapter 1: Computer Network and Internet2.3 File Transfer: FTP69l FTP协议使用两个协议使用两个TCP连接:连接:Port Number 21为控制连接为控制连接Port Number 20为数据连接为数据连接Server File SystemClient File SystemFTP ServerFTP ClientTCP Control ConnectionPort Number: 21TCP Data ConnectionPort Number: 202021/8/669Chapter 1: Computer Network and Internet2.3 File Transfer: FTP702.3.1 FTP Commands and Repliesl FTP CommandUSER username: 发送用户名到服务器发送用户名到服务器PASS password: 发送密码到服务器发送密码到服务器LIST:请求服务器发送文件列表:请求服务器发送文件列表RETR filename:从服务器当前目录下取文件:从服务器当前目录下取文件STOR filename: 将文件存放到服务器当前目录下将文件存放到服务器当前目录下2021/8/670Chapter 1: Computer Network and Internet2.3 File Transfer: FTP712.3.1 FTP Commands and Repliesl FTP replies message331: 用户名用户名OK,要求输入密码,要求输入密码125: 数据连接已经打开,传输开始数据连接已经打开,传输开始425:不能打开数据连接:不能打开数据连接452:写文件到服务器上时错误:写文件到服务器上时错误2021/8/671Chapter 1: Computer Network and Internet2.4 Simple Mail Transfer Protocol: SMTP(RFC 821)72电子邮件传送过程电子邮件传送过程user Agentuser AgentSMTPSMTPSMTPSMTPSMTPPop3/IMAPMail Server 1Mail Server 2Mail Server 3DNSDNSDNSSMTP port number : 25POP3:Post Office Protocol, 110IMAP:Internet Mail Access , 1432021/8/672Chapter 1: Computer Network and Internet2.4 Simple Mail Transfer Protocol: SMTP732.4.1 SMTP(RFC 821)l SMTP demo220 ESMTP ready 202.203.219.228/unknownHELO webmail.ynu.edu.cn250 HELO: webmail.ynu.edu.cnMAIL FROM: 250 OK (eyou mta)RCPT TO: 250 OK (eyou mta)DATA354 Please start mail input.This a test for SMTP. .250 Mail queued for delivery.QUIT221 Closing connection. Good bye.2021/8/673Chapter 1: Computer Network and Internet2.4 Simple Mail Transfer Protocol: SMTP742.4.1 SMTP(RFC 821)l SMTP command and status Code以下是必不可少的命令:以下是必不可少的命令:HELO 请求发送邮件请求发送邮件MAIL FROM 发信人邮件地址发信人邮件地址RCPT TO 收信人邮件地址收信人邮件地址DATA 请求输入邮件正文请求输入邮件正文. . 请求结束邮件正文请求结束邮件正文请求结束邮件正文请求结束邮件正文QUIT 从邮件服务器退出从邮件服务器退出2021/8/674Chapter 1: Computer Network and Internet2.4 Simple Mail Transfer Protocol: SMTP752.4.2 Mail message formats (RFC 822) and MIMEl 邮件报文格式邮件报文格式From: To: Subject: .Header LinesCRLFBody in ASCII. .2021/8/675Chapter 1: Computer Network and Internet2.4 Simple Mail Transfer Protocol: SMTP762.4.2 Mail message formats (RFC 822) and MIMEl MIME(Multipurpose Internet Mail Extensions) 在在RFC 1341、1521、2045、2046中描述中描述 解决二进制文件传送问题解决二进制文件传送问题 扩展的扩展的Key Header lines:Content-Type: Type/subtype;parametersContent-Transfer-Encoding: encoding-methodMIME-Version: versionContent-Description: description of message content (text)Content-ID: ID of this message2021/8/676Chapter 1: Computer Network and Internet2.4 Simple Mail Transfer Protocol: SMTP772.4.2 Mail message formats (RFC 822) and MIMEl MIME(Multipurpose Internet Mail Extensions) Content-type中的中的parameter Charset= 用来指定字符集,例如用来指定字符集,例如us-ascii、ISO-8859-1等等2021/8/677Chapter 1: Computer Network and Internet2.4 Simple Mail Transfer Protocol: SMTP782.4.2 Mail message formats (RFC 822) and MIMEl MIME(Multipurpose Internet Mail Extensions) Content-type中的中的type/subtypetext 表示表示Body中是文本,中是文本,subtype:Plain: 纯文本纯文本Richtext: 带格式文本,例如用带格式文本,例如用SGML语言(语言(Standard generalized markup language)编排的文本编排的文本image 表示表示Body中是图象文件,中是图象文件,subtype:Gif: Body中是中是gif图象图象Jpeg: Body中是中是jpeg图象图象Audio 表示表示Body中是声音文件,中是声音文件,subtype: Basic: 基本的基本的8位位-law编码编码32kadpcm: 32Kbps格式编码(格式编码(RFC 1911)2021/8/678Chapter 1: Computer Network and Internet2.4 Simple Mail Transfer Protocol: SMTP792.4.2 Mail message formats (RFC 822) and MIMEl MIME(Multipurpose Internet Mail Extensions) Content-type中的中的type和和subtypevideo 表示表示Body中是视频文件,中是视频文件,subtype: mpeg quicktimeapplication 表示表示Body中是用特定程序才能打开的文档,中是用特定程序才能打开的文档,subtype: Octet-Stream : 不间断字节流,可存入客户指定的文件不间断字节流,可存入客户指定的文件 PostScript: Body中是中是PostScript文档文档 msword:表示是:表示是Word文档文档message 表示表示Body中是一条封装后的消息中是一条封装后的消息(如一个完整的如一个完整的Mail),subtype: Rfc822: 一条一条RFC822消息(即完整邮件)消息(即完整邮件) Partial: 被拆散传送的消息被拆散传送的消息 External-body: body中给出地址,内容需要从网络上获取中给出地址,内容需要从网络上获取2021/8/679Chapter 1: Computer Network and Internet2.4 Simple Mail Transfer Protocol: SMTP802.4.2 Mail message formats (RFC 822) and MIMEl MIME(Multipurpose Internet Mail Extensions)Content-Transfer-encoding(5种)种):Base64 : 用用64个符号对内容进行编码,个符号对内容进行编码,64个符号依次是个符号依次是26个大写字母、个大写字母、26个小个小写字母、写字母、10个数字符号、个数字符号、+、-。编码规则:编码规则:把二进制信息按把二进制信息按24位分段,若最后段是位分段,若最后段是8位组,则补位组,则补= =;若最后;若最后段是段是16位组,则补位组,则补=。每段分为每段分为4个个6位组,每个位组,每个6位组用一个符号代替,位组用一个符号代替,000000用用A表示、表示、000001用用B表示,依此类推。表示,依此类推。2021/8/680Chapter 1: Computer Network and Internet2.4 Simple Mail Transfer Protocol: SMTP812.4.3 Mail Access Protocolsl POP3 (Post Office Protocol)l IMAP (Internet Mail Access Protocol)2021/8/681Chapter 1: Computer Network and Internet2.4 Simple Mail Transfer Protocol: SMTP822.4.3 Mail Access Protocolsl POP3 (Post Office Protocol , RFC 1939 ) TCP Port Number: 110 功能:从邮件服务器下载邮件到本地邮件用户代理功能:从邮件服务器下载邮件到本地邮件用户代理 服务器端运行服务器端运行POP3服务器、客户端为服务器、客户端为POP3用户代理用户代理2021/8/682Chapter 1: Computer Network and Internet2.4 Simple Mail Transfer Protocol: SMTP832.4.3 Mail Access Protocolsl POP3 (Post Office Protocol , RFC 1939 ) POP3使用示例使用示例+OK POP3 readyuser spwang+OKpass *+OK authorization succeeded (eyou mta)list+OK1 1574.retr 1+OKReceived: (eyou send program); Mon, 30 Mar 2009 21:54:09 +0800X-EYOUMAIL-SMTPAUTH: spwangynu.edu.cnReceived: from 202.203.208.28 (HELO localhost) (202.203.208.28) by 202.203.208.32 with SMTP; Mon, 30 Mar 2009 21:54:09 +0800From: ? To: Subject: TestDate: Mon, 30 Mar 2009 21:53:49 +0800This is a test.quit2021/8/683Chapter 1: Computer Network and Internet2.4 Simple Mail Transfer Protocol: SMTP842.4.3 Mail Access Protocolsl POP3 (Post Office Protocol , RFC 1939 ) POP3常用命令常用命令user usernamepass passwordlistretr ndele nquit2021/8/684Chapter 1: Computer Network and Internet2.4 Simple Mail Transfer Protocol: SMTP852.4.3 Mail Access Protocolsl IMAP (Internet Mail Access Protocol)在在RFC 2060中有详细的描述中有详细的描述使用的使用的TCP Port Number:143交互式交互式在服务器上阅读,邮件不需要下载到本地在服务器上阅读,邮件不需要下载到本地; 可维护服务器端的邮件夹,就像可维护服务器端的邮件夹,就像POP3中维护本地邮中维护本地邮件夹一样件夹一样;2021/8/685Chapter 1: Computer Network and Internet2.5 Domain Name System: DNS86lUDP Port number: 53l标准:标准:在在RFC 1034、1035中有详细的描述中有详细的描述l功能:功能:IP地址地址-主机地址之间的转换;主机地址之间的转换;查找域(查找域(Domain)的)的Mail Server 地址地址; 将主机别名(将主机别名(alias hostname)转换为正规名(转换为正规名(canonical hostname) ;负载分担(轮流将访问请求分布到多台服务器)负载分担(轮流将访问请求分布到多台服务器)l构成:大型分布式数据库系统构成:大型分布式数据库系统2.5.1 Overview of DNS2021/8/686Chapter 1: Computer Network and Internet2.5 Domain Name System: DNS872.5.2 How DNS Works?Root Serverdns.cndns.edu.cndns.com.cndns.edugwu.eduAuthoritative name servermit.eduLocal Name Serverdns.ynu.edu.cnDBDBDBDBDBDBDBDBDNSClientwww.mit.eduWhat is the IP addr of www.mit.edu?本地服务器本地服务器根服务器根服务器权威服务器权威服务器2021/8/687Chapter 1: Computer Network and Internet882.5.3 DNS resource recordsDNS: distributed db storing resource records (RR)lType=NSname is domain (e.g. ynu.edu.cn)value is hostname of authoritative name server for this domainRR format: (name, value, type, ttl)lType=Aname is hostnamevalue is IP addresslType=CNAMEname is alias name for some “canonical” (the real) name ftp.ynu.edu.cn is really web37.ynu.edu.cnvalue is canonical namelType=MXvalue is name of mailserver associated with domain namelTTL: Time To Live 2.5 Domain Name System: DNS2021/8/688Chapter 1: Computer Network and Internet892.5.4 DNS protocol, messagesDNS protocol : query and reply messages, both with same message formatmessage headerlidentification: 16 bit # for query, reply to query uses same #lflags:query or replyrecursion desired recursion availablereply is authoritative2.5 Domain Name System: DNS2021/8/689Chapter 1: Computer Network and Internet90Name, type fields for a queryRRs in responseto queryrecords forauthoritative serversadditional “helpful”info that may be used2.5.4 DNS protocol, messages2.5 Domain Name System: DNS2021/8/690Chapter 1: Computer Network and Internet2.6 Socket Programming with TCP912.6.1 Socket programming with TCPNetworkProcessTCP With Buffer,VariablesSocketProcessTCP With Buffer,VariablesSocket网络基础设施网络基础设施进程看到的通道进程看到的通道OS开发者开发者2021/8/691Chapter 1: Computer Network and Internet2.6 Socket Programming with TCP922.6.1 Socket programming with TCPClient socketbytesbytesWelcome socketConnection socketCreate connectionThree-way handshakeClient processServer processTCP Connection2021/8/692Chapter 1: Computer Network and Internet2.6 Socket Programming with TCP932.6.2 An Example Client/Server Application in JavaCreate socket port=xFor incoming request:WelcomeSocket=ServerSocket()Read request fromConnectionSocketWrite reply toConnectionSocketCloseConnectionSocketWaiting for incomingConnection requestConnectionSocket=WelcomeSocket.accpet()Create socket ,Connect to hostid,port=xClientSocket=Socket()Send request usingClientSocketRead reply fromClientSocketCloseClientSocketSetup TCP ConnectionServer: hostidClient2021/8/693Chapter 1: Computer Network and Internet2.6 Socket Programming with TCP942.6.2 An Example Client/Server Application in Javaimport java.io.*;import java.net.*;Class TCPClient Public static void main(String argv ) throws Exception String sentence; String modifiedSentence; BufferedReader inFromUser=new BufferedReader(new InputStreamReader(System.in); Socket ClientSocket=new Socket(“202.203.*.*”,3400); DataOutputStream outToServer=new DataOutStream(ClientSocket.getOutputStream(); BufferedReader inFromServer=new BufferedReader(new InputStreamReader(ClientSocket.getInputStream(); sentence=inFromUser.readline(); outToServer.writeBytes(sentence+n); modeifiedSentence=inFromServer.readline(); System.out.println(“From SERVER:”+modifiedSentence); ClientSocket.close() TCPClient.java创建标准输入对象创建套接口并与服务器建立TCP连接创建将数据写到ClientSocket套接口的对象创建从ClientSocket套接口读取数据的对象2021/8/694Chapter 1: Computer Network and Internet2.6 Socket Programming with TCP952.6.2 An Example Client/Server Application in Javaimport java.io.*;import java.net.*;Class TCPServer Public static void main(String argv ) throws Exception String clientSentence; String capitalizedSentence; ServerSocket WelcomeSocket=new ServerSocket(3400); while (True) Socket ConnectionSocket=WelcomeSocket.accpet(); BufferedReader inFromClient=new BufferedReader(new InputStreamReader(ConnectionSocket.getInputStream(); DataOutputStream outToClient=new DataOutStream(ConnectionSocket.getOutputStream(); clientSentence=inFromClient.readline(); capitalizedSentence=clientSentence.toUpperCase()+n; outToClient.writeBytes(capitalizedSentence); TCPServer.java创建倾听套接口对象接受呼叫,创建一个传送数据的套接口,建立与客户端的虚拟管道创建在ConnectionSocket上读数据的对象创建在ConnectionSocket上写数据的对象2021/8/695Chapter 1: Computer Network and Internet实习题:一、(必做)使用HTTP、FTP、SMTP、POP3命令访问相应的服务。方法为: telnet 例如:使用HTTP命令访问Web服务器 telnet www.ynu.edu.cn 80 然后使用HTTP命令获取某一文件二、(必做)P162: 7题参考教材P154-P158,使用Java或C+实现一个简单的Web服务器。 三、(选做)P 163 Assignment 22021/8/696
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号