您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 销售管理 > HTTP2.0协议中英文对照版
超文本传输协议版本2IETFHTTP2草案(draft-ietf-httpbis-http2-13)摘要本规范描述了一种优化的超文本传输协议(HTTP)。HTTP/2通过引进报头字段压缩以及多路复用来更有效利用网络资源、减少感知延迟。另外还介绍了服务器推送规范。本文档保持对HTTP/1.1的后向兼容,HTTP的现有的语义保持不变。1介绍TheHypertextTransferProtocol(HTTP)isawildlysuccessfulprotocol.However,theHTTP/1.1messageformat([RFC7230],Section3)wasdesignedtobeimplementedwiththetoolsathandinthe1990s,notmodernWebapplicationperformance.Assuchithasseveralcharacteristicsthathaveanegativeoveralleffectonapplicationperformancetoday.超文本传输协议(HTTP)是一个非常成功的协议。但是HTTP/1.1是针对90年代的情况而不是现代web应用的性能而设计的,导致它的一些特点已经对现代应用程序的性能产生负面影响。Inparticular,HTTP/1.0onlyallowsonerequesttobeoutstandingatatimeonagivenconnection.HTTP/1.1pipeliningonlypartiallyaddressedrequestconcurrencyandsuffersfromhead-of-lineblocking.Therefore,clientsthatneedtomakemanyrequeststypicallyusemultipleconnectionstoaserverinordertoreducelatency.特别是,HTTP/1.0只允许在一个连接上建立一个当前未完成的请求。HTTP/1.1管道只部分处理了请求并发和报头阻塞的问题。因此客户端需要发起多次请求通过数次连接服务器来减少延迟。Furthermore,HTTP/1.1headerfieldsareoftenrepetitiveandverbose,which,inadditiontogeneratingmoreorlargernetworkpackets,cancausethesmallinitialTCP[TCP]congestionwindowtoquicklyfill.ThiscanresultinexcessivelatencywhenmultiplerequestsaremadeonasinglenewTCPconnection.此外,HTTP/1.1的报头字段经常重复和冗长。在产生更多或更大的网络数据包时,可能导致小的初始TCP堵塞窗口被快速填充。这可能在多个请求建立在一个新的TCP连接时导致过度的延迟。ThisspecificationaddressestheseissuesbydefininganoptimizedmappingofHTTP'ssemanticstoanunderlyingconnection.Specifically,itallowsinterleavingofrequestandresponsemessagesonthesameconnectionandusesanefficientcodingforHTTPheaderfields.Italsoallowsprioritizationofrequests,lettingmoreimportantrequestscompletemorequickly,furtherimprovingperformance.本协议通过定义一个优化的基础连接的HTTP语义映射来解决这些问题。具体地,它允许在同一连接上交错地建立请求和响应消息,并使用高效率编码的HTTP报头字段。它还允许请求的优先级,让更多的重要的请求更快速的完成,进一步提升了性能。Theresultingprotocolisdesignedtobemorefriendlytothenetwork,becausefewerTCPconnectionscanbeusedincomparisontoHTTP/1.x.Thismeanslesscompetitionwithotherflows,andlonger-livedconnections,whichinturnleadstobetterutilizationofavailablenetworkcapacity.最终协议设计为对网络更友好,因为它相对HTTP/1.x减少了TCP连接。这意味着与其他流更少的竞争以及更长时间的连接,从而更有效地利用可用的网络容量。Finally,thisencapsulationalsoenablesmoreefficientprocessingofmessagesthroughuseofbinarymessageframing.最后,这种封装也通过使用二进制消息帧使信息处理更具扩展性。2HTTP/2协议概述HTTP/2providesanoptimizedtransportforHTTPsemantics.HTTP/2supportsallofthecorefeaturesofHTTP/1.1,butaimstobemoreefficientinseveralways.HTTP/2提供了HTTP语义的传输优化。HTTP/2支持所有HTTP/1.1的核心特征,并且在不同的方面做的更高效。ThebasicprotocolunitinHTTP/2isaframe(Section4.1).Eachframetypeservesadifferentpurpose.Forexample,HEADERSandDATAframesformthebasisofHTTPrequestsandresponses(Section8.1);otherframetypeslikeSETTINGS,WINDOW_UPDATE,andPUSH_PROMISEareusedinsupportofotherHTTP/2features.HTTP/2中基本的协议单位是帧。每个帧都有不同的类型和用途。例如,报头(HEADERS)和数据(DATA)帧组成了基本的HTTP请求和响应;其他帧例如设置(SETTINGS),窗口更新(WINDOW_UPDATE),和推送承诺(PUSH_PROMISE)是用来实现HTTP/2的其他功能。MultiplexingofrequestsisachievedbyhavingeachHTTPrequest-responseexchangedassignedtoasinglestream(Section5).Streamsarelargelyindependentofeachother,soablockedorstalledrequestdoesnotpreventprogressonotherrequests.请求多路复用是通过在一个流上分配多个HTTP请求响应交换来实现的(章节5)。流在很大程度上是相互独立的,因此一个请求上的阻塞或终止并不会影响其他请求的处理。Flowcontrolandprioritizationensurethatitispossibletoproperlyusemultiplexedstreams.Flowcontrol(Section5.2)helpstoensurethatonlydatathatcanbeusedbyareceiveristransmitted.Prioritization(Section5.3)ensuresthatlimitedresourcescanbedirectedtothemostimportantrequestsfirst.流量控制和优先级能确保正确使用复用流。流量控制(章节5.2)有助于确保只传播接受者需要使用的数据数据。优先级(章节5.3)能确保有限的资源能优先被重要的请求使用。HTTP/2addsanewinteractionmode,wherebyaservercanpushresponsestoaclient(Section8.2).Serverpushallowsaservertospeculativelysendaclientdatathattheserveranticipatestheclientwillneed,tradingoffsomenetworkusageagainstapotentiallatencygain.Theserverdoesthisbysynthesizingarequest,whichitsendsasaPUSH_PROMISEframe.Theserveristhenabletosendaresponsetothesyntheticrequestonaseparatestream.HTTP/2添加了一种新的交互模式,即服务器能推送消息给客户端。服务器推送允许服务端预测客户端需要来发送数据给客户端,交换网络的使用来阻止潜在的延迟增长。服务器通过复用一个以PUSH_PROMISE帧发送的请求来实现推送,然后服务端可以在一个单独的流里面发送响应给这个合成的请求。FramesthatcontainHTTPheaderfieldsarecompressed(Section4.3).HTTPrequestscanbehighlyredundant,socompressioncanreducethesizeofrequestsandresponsessignificantly.帧包含的HTTP报头字段是压缩的。HTTP请求有可能是高度冗余的,因此压缩能显著减少请求和响应的大小。文档结构TheHTTP/2specificationissplitintofourparts:HTTP/2协议被分为以下四个部分:StartingHTTP/2(Section3)covershowanHTTP/2connectionisinitiated.Theframing(Section4)andstreams(Section5)layersdescribethewayHTTP/2framesarestructuredandformedintomultiplexedstreams.Frame(Section6)anderror(Section7)definitionsincludedetailsoftheframeanderrortypesusedinHTTP/2.HTTPmappings(Section8)andadditionalrequirements(Section9)describehowHTTPsemanticsareexpressedusingframesandstreams.启动HTTP/2(章节3)包含了一个HTTP/2连接是如何初始化的。帧(章节4)和流层(章节5)描述了HTTP/2流的结构以及如何形成复用流的。帧(章节6)和错误码(章节7)定义了HTTP/2中使用的流和错误类型的详细内容。HTTP寻址(章节8)和拓展需求(章节9)描述了HTTP语义化是如何由帧和流表达的。WhilesomeoftheframeandstreamlayerconceptsareisolatedfromHTTP,theintentisnottodefineacompletelygenericframinglayer.TheframingandstreamslayersaretailoredtotheneedsoftheHTTPprotocolandserverpush.一些帧和流层的概念是与HTTP隔离的,因为意图并不是定义一个完全
本文标题:HTTP2.0协议中英文对照版
链接地址:https://www.777doc.com/doc-2876470 .html