gpt4 book ai didi

c - 假设所有 HTTP header (单个 HTTP 消息的)都到达相同的 SSL/TLS 记录是否合理?

转载 作者:太空宇宙 更新时间:2023-11-04 06:34:02 24 4
gpt4 key购买 nike

opensslSSL_read() 调用的手册页指出:

SSL_read() works based on the SSL/TLS records. The data are received in records (with a maximum record size of 16kB for SSLv3/TLSv1). Only when a record has been completely received, it can be processed (decryption and check of integrity). Therefore data that was not retrieved at the last call of SSL_read() can still be buffered inside the SSL layer and will be retrieved on the next call to SSL_read().

鉴于:

  • 单个外发消息的 HTTP header 始终可以一次性发送
  • 单个 SSL/TLS 记录显然可以容纳 16KB 的数据,这对每个人(或至少对任何非恶意 HTTP 请求)来说应该足够了

浏览器没有理由将 header 分成多个 SSL 记录,对吗?或者是否有浏览器在延迟方面如此激进,以至于它们甚至会将这些类型的小负载分成多条记录?

我问这个是因为如果能够从由单个成功的 SSL_read() 调用填充的单个读取缓冲区中解析一整套 HTTP header ,那就太好了。如果这意味着拒绝少数请求(例如,如果只有所有请求的 0.0000X%),那对我来说可能是值得的。

编辑:Alexei Levenkov提出了有效的观点,即 cookie 可以非常长。但是让我们考虑一下这种特定服务器永远不会设置或期望 cookie 的情况。

edit2:这个问题有点过早。同时,我编写的代码可以高效地存储每个客户端状态,以便在解析时接受任意数量的 SSL 记录,而不会导致任何显着的性能损失。这样做之前,我想知道我是否可以走捷径,但普遍的共识似乎是我最好按部就类。失分。

最佳答案

不,仅 cookie 就可能超过 16K。

根据 RFC2109IE implementation for cookie limits建议对每个域的 cookie 大小的最小限制是 80K

RFC 2109 部分“6.3 实现限制”:

  • at least 4096 bytes per cookie (as measured by the size of the characters that comprise the cookie non-terminal in the syntax description of the Set-Cookie header)

  • at least 20 cookies per unique host or domain name

关于c - 假设所有 HTTP header (单个 HTTP 消息的)都到达相同的 SSL/TLS 记录是否合理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16995008/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com