我对SPDY如何解决HOL阻塞的理解有困难。
引用来自:http://chimera.labs.oreilly.com/books/1230000000545/ch02.html#TCP_HOL 为了理解这是为什么,回想一下每个TCP包在被放到电线上时都带有唯一的序列号,并且数据必须按顺序传递给接收方 (Figure 2-8)。如果其中一个包在传送到接收方时丢失了,那么所有后续的包都必须在接收方的TCP缓冲区中等待,直到丢失的包被重新传输并到达接收方。由于这项工作是在TCP层内完成的,我们的应用程序无法看到TCP重传或排队的数据包缓冲区,必须等待全部序列才能访问数据。相反,当它尝试从套接字读取数据时,它只会看到传递延迟。这种效果被称为TCP HOL阻塞。
因此,HOL阻塞存在是因为TCP保证按顺序交付。但是这里用户igrigorik说SPDY允许数据包以不同的顺序到达。但是SPDY不仅仅是HTTP的替代品吗?这意味着它仍然在TCP上运行(来自这里)。
引用来自:http://chimera.labs.oreilly.com/books/1230000000545/ch02.html#TCP_HOL 为了理解这是为什么,回想一下每个TCP包在被放到电线上时都带有唯一的序列号,并且数据必须按顺序传递给接收方 (Figure 2-8)。如果其中一个包在传送到接收方时丢失了,那么所有后续的包都必须在接收方的TCP缓冲区中等待,直到丢失的包被重新传输并到达接收方。由于这项工作是在TCP层内完成的,我们的应用程序无法看到TCP重传或排队的数据包缓冲区,必须等待全部序列才能访问数据。相反,当它尝试从套接字读取数据时,它只会看到传递延迟。这种效果被称为TCP HOL阻塞。
因此,HOL阻塞存在是因为TCP保证按顺序交付。但是这里用户igrigorik说SPDY允许数据包以不同的顺序到达。但是SPDY不仅仅是HTTP的替代品吗?这意味着它仍然在TCP上运行(来自这里)。