IP性能度量参数的框架_第1页
IP性能度量参数的框架_第2页
IP性能度量参数的框架_第3页
IP性能度量参数的框架_第4页
IP性能度量参数的框架_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1.备忘录状态本备忘录给互联网社会提供信息。它没有明确任何种类的互联网标准。不限制对本备忘录的分发和散布。2. 版权通告Copyright?TheInternetSociety(1998).AllRightsReserved.3.介绍 本备忘录的目的是给由互联网工程任务组(IETF)的IP性能度量参数工作组努力开发的特定度量参数定义一个通用的框架,这项工作由操作领域的基准测试方法学工作组(BMWG)开始做的,现在由传输领域的IP性能度量参数工作组接手。我们从展示对我们所采取的度量参数定的几个准则开始。设计这些准则是为了提升IPPM的成就,这个成就将使互联网用户和互联网服务提供者对通过互联网的端

2、到端路径和包含这些路径一部分的特定的“IP云(IPclouds)”的性能及可靠性获得一个最大化的普遍、准确的理解。然后,我们定义了几个互联网的词汇,这些词汇使我们能清楚的讲叙互联网组件:如路由器、路径(paths)、和云(clouds)。我们还定义了“度量参数(metrics)”和“测试方法学”的基本概念,以讲清楚测试时的问题。给出这些概念后,我们继续讨论测量不确定性、错误、开发一个解决方案、某些精微的观念与被互联网工程学科许多方面所公认的分析框架的关系等重要的问题。然后,我们介绍依据经验定义的度量参数的概念,并以对度量参数能怎样稳定的一般讨论作为这部分的结束。本文的其它部分涉及与定义合理的度

3、量参数和方法学相关的多种问题:怎样处理不完善的时钟;与“主机时间(hosttime)”截然不同的“线时(wiretime)的概念;怎样将个体的度量集聚集为样本且从这些样本中的到合理的统计表;为什么推荐要避免用概率论性的术语(如一个分组被丢弃的概率)来考虑互联网的属性,因为这些术语常对网络的行为包含了含蓄的假定;根据普通类型的分组来定义度量参数的有效性;倾向与采用IP地址而不是DNS主机名的好处;和“标准构成”分组的概念。附录讨论了用于验证一组值是否符合一个给定的统计分布的Anderson-Darling测试算法,还给出了实现这一算法的C代码。在本备忘录的一些部分,我们将会用大括号来表明注释文字

4、注释:我们强调注释就只是注释,而不是这个框架文档自身的一部分,也不是对特定度量参数的建议。在一些场合,注释会讨论测量标准可能预想到的一些属性,但读者应该假定任何这样的讨论目的只是使这个框架文档中的要点清楚明白地显示出来,而没有建议任何明确的度量参数。4. IP性能度量参数的准则IPPM努力的整个目标是达到一个让互联网传输服务的用户和提供者对他们所使用/提供的互联网组件“云”的性能和可靠性获得一个准确的共同的理解的形势。为达到这个目的,必须为穿过互联网的路径开发性能和可靠性的度量参数。在几次IETF的会议中为这些度量参数明确了制定准则:度量参数必须具体,定义明确。一个度量参数的测量方法应该有可重

5、复性:如果在同样的条件下使用测量方法多次,相同的测量应该得到相同的测量结果。度量参数必须对采用相同的技术实现的IP云不表现出偏见(bias)。度量参数必须对采用不同的技术实现的IP云能够明白且清楚的表现出偏见。度量参数必须对用户和服务提供者理解他们所经验或提供的性能有用。度量参数必须避免引起人为的性能目标。5. 路径和云的术语下面列出了定义的在开发路径度量参数中需要有准确性的术语。我们从“主机(host)”,“路由器(router)”,和“链路(link)”等低级的概念开始,然后定义“路径(path)”,“IP云(IPcloud)”,和允许我们将一条路径分成相关的块的“交换链路(exchang

6、e)”等概念。主机:能使用互联网协议来通信的计算机;包括“路由器”。链路:在两个(或多个)主机之间的单个的链路层连接;包括租用线路,以太网,帧中继云,等。路由器:在主机之间通过转发IP分组来便利网络层通信的主机。路径:有形式的序列,这里n=0,每个hi是一个主机,每个li是在hi-1和hi之间的一条链路,h1.hn-1的每一个都是一个路由器。一个对被命名为一“跳(hop)”。在一个适当的操作配置环境中,在路径中的链路和路由器便利了从h0到hn分组的网络层通信。注意路径是一个单向的概念。子路径给定一条路径,子路径是给定路径的任何本身也是一条路径的子序列。(因此,子路径的开始和结束元素是主机。)云

7、:一个顶点是路由器且边是连接路由器对的链路的无向图(可能有循环)。形式上,以太网,帧中继云,和其它连接多于两个路由器而被模拟为图边的完全连接网格(fully-connectedmeshes)的链路。注意连接到云意思是通过一条链路连接到云的一个路由器,这条链路本身不是云的一部分。交换链路(exchange):链路的一种特殊情况,交换链路直接地连接一个主机到云和/或一个云到另一个云。云子路径:一给定路径的子路径,它的所有主机是一给定云的路由器。分类路径:有形式的序列,这里n=0,h0和hn是主机,每个e1.en是一条交换链路,每个C1.Cn-1是一条云子路径。6. 基本概念6.1.度量参数 在实际

8、运行的互联网中,有几个我们想知道其值的与互联网性能和可靠性相关的数量。当这样一个数量被仔细的明确时,我们给这个数量定义了一个度量参数。我们预计对于每个度量参数(或每个紧密相关的度量参数组)都会有单独的RFCs。在有些场合,可能没有明显的方法来有效地测量度量参数;这是允许的,甚至我们认为有时很有用。然而,要求度量参数规范说明必须尽可能地说清楚规定的是什么数量。因此,测量实践的困难有时可以接受,但是不允许意义上的含糊不清。每个度量参数都根据测量的标准单位来定义。使用国际公制系统,且注意一下几点:当一个单位是简单的以米(对距离/长度)或秒(对时间)来表达时,基于合适的单位的千进制的适当的单位是可接受

9、的。因此,允许距离用千米表达,时间用毫秒或微秒来表达,但不允许用厘米。(因为这个单位不是千进制的。)当一个单位是用单位的组合来表达时,基于合适的单位的千进制的适当的单位是可接受的,但是所有的千进制单位必须是在前面的。因此,允许用千米每秒(km/s),但不允许米每毫秒。信息的单位是位。在位或包含位的组合单位中用到千进制时,这些千进制使用其在公制系统中的含义(即是指十进制的1000),而不是在计算机存储中惯用的含义(即十进制的1024)。在任何定义而使用的单位包含了位的RFC中,都将遵循这个约定并重复这点以确保澄清用户的观念。当给出时间时,要应用UTC(世界时间代码)来表达。注意这些点是用于度量参

10、数的规范中而不是,例如,用于分组的格式,分组格式或许会优先采用八位组或以八位组作为位的补充。最后,我们提醒一些度量参数也许是纯粹根据其它的度量参数来定义的;这种度量参数被称为“生成度量参数”。6.2.测量方法学对于一给定的定义明确的度量参数集合,可能存在许多截然不同的测量方法。一个局部的列表包括:采用注入测试流量的方法来直接测量一个性能度量参数。例如:对给定时间,给定路由,给定长度的IP分组的往返延迟的测量。从低级别层的测量中来预测一个度量参数。如:给出传播延迟和延一路径的每一步的带宽的准确测量,预测给定长度的IP分组在路径上的全部延迟。从一个更聚合的测量中估计其组成之一的度量参数。如:给出一

11、给定一跳路径对不同长度IP分组延迟的准确测量,估计这个一跳路径上的链路的传播延迟。从一组相关的其它时间的度量值来估计在某时的测量值。如:给出过去时间的流量容量的准确测量和过去时间及现在准确测量的延迟,以及给定流量动态的模型,估计在当前时间将看到的流量容量。这个列表绝不是毫无遗漏的,它的目的是指出测量技术多样性。当一个度量参数明确后,一个给定的测量方法必须提出并讨论。然而,这个测量方法并不是规范说明中的正式部分。一个度量参数的测量方法应该有可重复性:如果在相同的条件下多次使用该测量方法,得到的结果应当是一致的。从前一段提到的“相同条件”后退一点点,我们可以用更准确的词“连贯性”来描叙给定测量方法

12、的属性:一个度量参数的测量方法显示出连贯性,如果条件的变化很小,得到的测量结果的变化也很小。稍微精密一点说,对每一个正的,存在一个正的,因此如果两组条件在彼此的之内,那么测量结果将在彼此的之内。在这里,这应被视为是关于一种健壮性的启发式的直觉而不是精确的观念。至少有一种测量方法显示出连贯性的度量参数就说它自身有连贯性。注意,有些度量参数,如沿路径的跳数,其值是整数所以不能完全显示出上述意义的连贯性。此外要注意,实践中,想知道(或能数量化)与特定时间测量相关的条件可能是不实际的。例如:因为高速广域网中给定路由器的即时负载(被服务的分组)在相对简短的时期内能相差很大地变化且对一个外部的观察者来说确

13、定其数量会非常困难,特定度量参数的不同的统计量可能更有可重复性,或者较好的显示连贯性。这时,当度量参数明确说明了时那些特定的统计量也应该明确说明。最后,有些测量行为不修改,或只是轻微地修改测量方法试图测量的性能参数的值;在这个意义下,这些方法可能是“保守”的。注释:例如,在适度负载的高速广域网内,使用几个小的“ping”分组来测量延时的测量方法似乎不会影响(影响很大)被其他人观测到的网络的延迟属性。相应的,使用大的流量来测量流量容量的方法似乎会失败。6.3.测量,不确定性,错误即使是给表现最为明显的度量参数使用的最好的测量方法也会产生错误。然而,那些开发出这些测量方法的人应该努力争取:使他们的

14、不确定性/错误最小,理解并证明不确定性/错误的来源,还要确定不确定性/错误的数量。例如,在开发测量延迟的方法是,理解你的系统时钟的任何错误是怎样将错误引入你的延迟测量中来的,并尽你所能的将这种影响数值化。在一些情况下,这会导致一个必要条件:如果系统时钟要用于做某种测量,它的质量至少要高于某个标准。作为第二个例子,考虑计算机在做测量时由于测量的额外开销引起的计时错误,与互联网被测组件的延迟相反。前者是一个测量错误,而后者反映了互联网的度量参数。注意,一种有助于避免这种额外开销的技术是使用分组过滤器/嗅探器,在一台分离的准确地记录分组和时间戳的计算机上运行。(见下面“线时”的讨论。)然后记录的结果

15、可用于分析以评价测试流量,使测量主机的延迟影响最小,或者至少使这些延迟能得到说明。我们注意到,即使过滤器/嗅探器在同一台机器上运行,这种技术也证明是有益的,因为这种测量通常提供的是“内核级”时间戳,而不是精确度差点的“应用级”时间戳。最后,我们注意到原始度量参数(derivedmetrics,如上定义)或有时间或空间合成的度量参数(定义如下)为测量的不确定性的分析提供了特定的场合。即不确定性怎样因为原始的或合成的参数而传播(概念上的)。7度量参数和分析框架在互联网从二十世纪六十年代早期的分组交换研究中发展时,互联网工程界开发了一个概念的普遍的分析框架。这个分析框架,或A-frame,为协议的设

16、计者和实现者、与测量有关的人、用仿真和分析工具研究计算机网络性能的人所用,对我们的工作有极大的好处。这里一个主要的目标是产生在分析和实践的设置里都一致的网络特征,因为这会使非经验式的网络研究能更好的与实际网络行为一致,并更好的用来促进我们对实际网络行为的理解这两个机会最大化。因此,无论何时,只要可能我们就应发展和借用(leverageoff)A-frame。这样,无论何时只要一个被明确说明的度量参数我们理解是与A-frame内的概念紧密相关的,我们就要试着用A-frame的术语来明确说明这个度量参数。在这样的规范里,我们将通过恰当的定义度量参数所需的概念来发展A-frame,然后通过根据这些概

17、念定义度量参数来借用A-frame。这样的参数将被称为“分析确定度量参数(analyticallyspecifiedmetric)”,或者,更简单一点,分析度量参数(analyticalmetric)。注释:这样的分析度量参数的例子有:链路传播时间:以秒计的,一个位从一个互联网主机的输出端口通过单一的链路传输到另一互联网主机所需的时间。分组长k时的链路带宽:.以位每秒(bps)计的,只计数分组长k字节的IP分组时的容量。路由:如第五节定义的,给定时间从A到B的路径。路由跳数:路由路径的“n”值。注意,我们并没有给出一个什么A-frame概念会在规范里显现的优先的表格,但是我们鼓励他们的使用并要

18、求仔细地明确说明他们;以至在我们的度量参数集开发时明确说明的A-frame概念集技术上也会彼此一致,也与在一般互联网界对这些概念的普遍理解一致。这些A-frame概念将试着以这样一种方法从实际互联网组件中抽象出来:组件的基本功能保留,组件与我们想创建的度量参数有关的属性保留,这些组件属性的子集被潜在地定义为分析度量参数,且实际互联网组件与我们想创建的度量参数不相关的那些属性被丢弃。例如,当在分组转发的背景下考虑路由器时,我们可以把路由器抽象成这样一个组件模型:它从输入链路接受分组,将它们在长度有限的先进先出(FIFO)的分组队列中排队,当分组队列满了是采用尾部丢弃,将分组转发到输出链路。输入和

19、输出链路的传输速度(位/秒),路由器的延迟(秒),和分组队列的最大长度(位)是相关的分析度量参数。在某些情况里,这样的涉及路由器的分析度量参数会与互联网路径性能的特定度量参数非常紧密地相关。例如,一个显而易见的包括路由器延迟(L),分组长度(P,以位计),和输出链路的传输速度(B)的公式(L+P/B)可能与因为沿路径插入特定路由器引起的分组延迟的增长紧密接近。然而,我们强调,适当的定义恰当的A-frame概念及它们的分析度量参数要以不太明显的方式支持建立更一般的参数的努力。注释:例如,当考虑路径的流量容量时,能够将沿着路径的路由器转化为上述的分组转发器是有实际价值的。估计路径流量容量的技术可能

20、断然地以不显然的方式将最大分组队列长度做为一个参数。例如,随着最大分组队列长度增长,尽管输入链路的流量有起伏,路由器持续地转发流量至输出链路的能力也会增加。然而,估计这个增加量还是一个在研究的问题。注意,在我们明确说明A-frame概念和分析度量参数时,我们将不可避免的作出简化的假定。这些概念的关键任务是抽象出互联网组件与给定度量参数相关的属性。为避免作出使模型和度量努力偏向某个设计的假定,需要判断。注释:例如,路由器可能不使用尾部丢弃(tail-drop),即使对模型分析来说尾部丢弃可能更容易。最后,注意A-frame不同的元素可较好地作出不同的简化假设。例如,促进路径延迟定义而用的路由器抽

21、象可能将路由器的分组队列看成一个简单的先进先出队列,但是促进资源可预留分组(RSVP-enabledpacket)处理定义而用的路由器抽象可能将路由器的分组队列看成一个相反的假定支持跃进延迟(supportingboundeddelay)。这并不是说我们同时作了相矛盾的假定,而是出于不同的目的,我们工作的两个不同部分可以两种有分歧的方式来改进更简单的基本概念。注释:用更数学化的话说,A-frame作为一个整体不需要一致,但用于定义特定度量参数的A-frame特定元素集合必须一致。8.由经验明确说明的度量参数 通常因为A-frame缺少处理它们的细节和能力,存在不完全符合A-frame的有用的性

22、能和可靠性度量参数。例如,“沿路径使用遵从RFC2001-TCP可得的最大流量容量”会比较好测量,但是我们没有足够丰富的分析框架来允许我们将这个流量容量当一个分析度量参数对待。这些概念仍可通过描叙一个测量它们的参考方法来很好的说明。这样的度量参数可被称为“经验说明度量参数”,或者更简单,经验度量参数。这样的经验度量参数应具有三个属性:对每一个参数,我们应有根据互联网组件而来的清楚地定义。至少应该有一种有效的方法来测量它们。为了可能的扩展,我们应对这种参数有根据A-frame的理解(这种理解必然是不完全的),以此我们可以用我们的测量来思考A-frame组件和A-frame组件集合的性能和可靠性。

23、9.合成的两种形式 9.1.度量参数的空间合成某些场合下,以一种显示出空间合成的方式来定义度量参数可能是现实的也是有用的。使用空间合成,我们意指一些路径度量参数的特征,这里应用于一(完整的)路径的度量参数也能用于定义不同的子路径;而且,该参数所用的适当的A-frame概念暗示了在用于这些不同子路径的参数之间的有用的关系(包括完整路径,给定分类路径的不同的云子路径,甚至沿路径的单个路由器)。空间合成的有效性依赖于:在应用于相关的A-frame组件时这些关系在分析中的有用性,在应用于度量参数和测量方法时相应关系的实际使用。注释:例如,考虑沿路径P,100字节长分组的延迟的一些度量参数,并考虑路径P

24、的分类路径。这样一个度量参数的定义里可能包含了这样的猜想:通过P的延迟非常接近通过给定分类路径交换链路(ei)和云(Ci)的相应的度量参数之和。这个定义也会包含相应关系是怎样用于对路径P和对分类路径的交换链路、云的相关的A-frame组件的注解。当一个度量参数的定义包含了通过路径的参数与通过该路径的子路径的参数有关的猜想时,这个猜想规定了该参数显示了空间合成性。那么,定义里就应包括:用于该度量参数的明确的猜想,在对路径上该参数的准确测量方面,这个合成在实践中有用的理由,在更有效的使用A-frame概念对路径作出分析方面,这个合成的有用性的理由,对这个猜想怎样会不正确的分析。9.2.正式模型和经

25、验度量参数的时间合成某些场合下,以一种显示出时间合成的方式来定义度量参数可能是现实的也是有用的。使用时间合成,我们意指一些路径度量参数的特征,这里应用于在给定时间T时路径的度量参数也能用于定义不同的时间t0t1.tn=Mi,这个方法工作得很好。但是,如果Ei+1Mi那么就不可能等合适长度的时间了。(注意这种情况相当于需要同时完成两个测量。)方法3产生一个测量间隔时间的时间表E1,E1+E2,等等,然后坚持按表进行:1 产生时间间隔E1,E2,.,En。2 计算测量进行时间T1,T2,.,Tn,其中Ti=E1+.+Ei。3 在时间T1,T2,.,Tn安排做一次测量。由于允许同时的测量,方法3避免

26、了方法1和2的弱点。然而,如果同时进行的测量彼此干扰,方法3就没有任何优点还可能被正实比方法1和2还要差。对于互联网的现象,不知道这些方法不准确到什么程度是显著的。如果Mi远比1/小,那么三种方法里的任何一种都可以采用。如果Mi比1/小但差得不多,那么方法2比方法1要好。如果同时进行的测量彼此不干扰,那么可以采用方法3,尽管比较之下它的实现相当的困难。11.2自身一致性合理的测量方法的一个基本要求是测量尽可能少的使用未经证实的假设。经验已经痛苦地表明作出一个(常常是内在的)假设却实际是错误的有多容易。一个例子是在测量中将时钟读数的同步与高度准确的时钟源混为一谈。很容易作出假设因此时间是准确的,

27、但由于软件故障(bug),时钟源的掉电,时钟源和时钟间通信丢失,时钟实际上可能很不准确。这并不是辩论说在测量时不能做任何假设,而是说在实践时,应该检验假设。做到这一点的一个有力的方法是检查自身一致性。这样的检查既适用于测量的观察值又适用于测量过程本身使用的值。前者一个简单的例子是在计算往返时间时应检查它是否为负值。因为负的时间间隔没有物理意义,一旦是负值就要立即标记一个错误。这种类型的错误应该在事后研究!弄清楚错误在哪里至关重要,因为只有坚持不懈地这样做,我们才能对测量方法基本的合理性树立信心。例如有可能因为在测量时时钟被使它与另一个时钟源同步的过程设置后退而得出往返时间为负值。但是也有可能测

28、量程序存取了它的估计之一的未初始化的内存,并且,尽管非常少见,这会导致假的估计结果。如果同样的程序被其他人用来完成同样的测量,这第二种错误更严重,因为别人也会遭受错误的结果。此外,只要没被发现它完全是固定的。自身一致性的一个更精细的例子来自于收集单向互联网延迟样本。如果有这种延迟的大的样本,它们是否符合一条测量时间和延迟对的直线,以观察结果有一明显的非零斜度,能被证明是充分高效的。如果是这样,一个可能的解释是测量使用的时钟之一相对另一个偏斜了。另一个解释是这个斜度确实是网络真正的影响。决定事实是那种解释很有启示意义(分辨相对时钟偏移和网络的真正影响的讨论见Pa97)。此外,如果使这个检查成为测

29、量方法的一部分,那么长期斜度非常接近零这个发现就是测量可能没有被时钟的偏斜影响致产生有偏的结果的肯定的证据。最后一个例子阐明检查测量过程本身的自身一致性。上面我们略叙了泊松抽样技术,它基于产生指数分布的时间间隔。一个合理的测量方法应该包括检查产生的时间间隔以确认它们实际上是否为指数分布(也确认它们是否遭受了相关性干扰)。附录里面我们讨论了一个这样的技术并给出了C代码,称为Anderson-Darling测试的一个普遍目的的,充分认识的拟合良度(Goodness-of-Fit)测试。最后,我们指出真正与互联网泊松抽样有关的常常不是测量何时开始而是与测量过程相关的线时。由于用来完成测量的主机的复杂

30、性,它们可能相当不同。因此,即使对伪随机数字生成器和并发的算法有完全的信任,也提倡尽可能多的考虑应该怎样测试每个测量过程所作的假设。11.3.定义统计分布一个描叙测量数据集合(样本)的方法是把它们看作统计分布,非正式的看作百分点。有几个稍微不同的方法做到这点。这一节,我们定义一个标准的定义以使这些描叙一致。数量测量集合的经验分布函数(empiricaldistributionfunction,EDF)为函数F(x),对于任意x,给定整个测量的部分比例=a的x的最小值。所以上面那个例子中,第50百分点是4,因为F(4)=3/6=50%;而第25百分点是-2,因为F(-5)=1/6=25%;第10

31、0百分点是18;第0百分点是负无穷大。在使用百分点来概括样本时必须要小心,因为它们能导致无根据的比实际可得到的结果更精确的现象。任何这样的概括都必须包括样本尺寸N,因为任何比1/N要低的百分点差异都在样本的分辨率之下。关于EDF更详细的讨论见DS86。我们用对中值这一普遍(而又重要)概念的注解结束本小节。在统计学里,分布的中值被定义为一个点X,X满足观察到的值小于等于X的概率等于观察到的值大于X的概率。在估计一个观察值集合的中值时,这个估计依赖于观察值的数量N,它是奇数或偶数:如果N是奇数,那么上面所定义的第50百分点就用做估计的中值。如果N是偶数,那么估计中值是中间两个观察值的平均;也即,要

32、是观察值以升序排序且配以从1到N的序号,这里N=2*K,则估计中值是第K个和第K+1个观察值的平均。通常,术语“估计”被从词语“估计中值”里去掉而简单地称这个值为“中值”。11.4.拟合良度(Goodness-of-Fit)的测试对于测量校准的一些形式,我们需要测试是否一组数据与那些被从特定分布里抽取的数据一致。一个例子是:在使用泊松过程做的测量里应用自身一致性检查,一个测试是检查是否抽样时间的分隔真正符合指数分布;或者是否使用了上面讨论的dT/N方法,是否时间是在T,dT均匀分布。注释:至少有三组可能的数据我们应该测试:被安排的分组传输时间,通过使用一个伪随机数字产生器获得;正好在系统呼叫传输分组之前或之后做的用户级时间戳;和使用分组过滤器记录的分组的线时。所有这三组数据都可能提供信息:被安排的分组传输时间未能符合指数分布意味着随机数字产生中的不准确;用户级时间戳的错误意味着调度传输的记时器的不准确;线时的错误意味着实际分组传输中的不准确,也许是因为共享资源

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论