应用程序如何知道哪些Internet数据是他们的?

时间:2014-01-28 07:25:23

标签: operating-system

今天早上我启动了我的电脑并且需要更新多个应用程序。当我在等待应用程序更新时,我想到了一个我想在这里问的问题。

问题是每个应用程序如何知道要检索的互联网数据是他们的?

1 个答案:

答案 0 :(得分:0)

应用程序甚至不关心它,他们让内核整理出那些信息。

当应用程序与远程计算机建立连接时,内核会为该应用程序分配一个本地端口,该端口是0-65535之间的数字。接收端的此端口可以由应用程序请求,也可以由内核分配随机端口。通常每个端口只有一个应用程序,但是多个应用程序可以接收相同的数据,但这种情况很少见。

当网络接口收到数据包时,内核将按目标端口对数据包进行排序。内核中将有一个表映射到进程的端口,每个应用程序将接收相关数据,而不关心计算机中可能出现的任何其他可能的数据。

如果您是程序员,可以通过阅读有关套接字编程的内容来了解​​所有这些内容:

http://en.wikipedia.org/wiki/Network_socket

是个好地方。您还可以使用首选的编程语言谷歌“套接字编程”,以了解如何在编程端设置它。