Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Network programming HTTP响应如何到达正确的浏览器窗口?_Network Programming - Fatal编程技术网

Network programming HTTP响应如何到达正确的浏览器窗口?

Network programming HTTP响应如何到达正确的浏览器窗口?,network-programming,Network Programming,如果您打开了两个浏览器窗口,并使用每个窗口导航到不同的网站,那么软件如何知道哪个HTTP响应属于哪个浏览器实例 更新 这种区别似乎是由入站TCP端口号决定的。但是不涉及TCP/UDP的网络消息呢?例如,如果您打开两个终端应用程序并使用这两个应用程序将ping消息发送到同一个远程服务器,那么应答如何到达其终端实例?它们通常与不同的TCP连接相关联,它们之间使用了客户端上的不同端口。这意味着客户端的TCP堆栈知道不同的消息,并通过客户端使用的套接字API以易于区分的方式传递它们。(通常是不同的文件描

如果您打开了两个浏览器窗口,并使用每个窗口导航到不同的网站,那么软件如何知道哪个HTTP响应属于哪个浏览器实例

更新
这种区别似乎是由入站TCP端口号决定的。但是不涉及TCP/UDP的网络消息呢?例如,如果您打开两个终端应用程序并使用这两个应用程序将ping消息发送到同一个远程服务器,那么应答如何到达其终端实例?

它们通常与不同的TCP连接相关联,它们之间使用了客户端上的不同端口。这意味着客户端的TCP堆栈知道不同的消息,并通过客户端使用的套接字API以易于区分的方式传递它们。(通常是不同的文件描述符)


例外情况是,作为一种优化,可以通过一个连接发送多个http请求。但是,像这样发送的请求是按照发送顺序接收的,因此将它们与请求进行匹配非常简单。

通常,每个浏览器实例都会创建自己的实例来与服务器通信。尽管所有套接字的出站端口相同(通常为TCP 80或443),但它们的入站端口不同。因此,当服务器响应请求时没有冲突,因为响应被发送到不同的入站端口

ping
这样的工具使用,它们提供自己的方法来唯一地标识调用应用程序(唯一标识符和序列号)