关于socket这个术语的来源

我们一般称socket为套接字,有些著作中也称其为插口,以下引用两本书中的相关描述。

在《Java TCP/IP Socket 编程》 一书中有如下描述:

Java语言从一开始就是为了让人们使用互联网而设计的,他为实现程序的相互连通提供了许多有用的抽象应用编程接口(Application Programming Interface API),这类应用编程接口被称为套接字(socket)。

这是从应用或编程的角度来解释socket。

在《TCP/IP详解》一书中有该术语的来源:

一个IP地址和一个端口号也称为一个插口,即socket。这个术语出现在最早的TCP规范(RFC793)中,后来它也作为表示伯克利版的编程接口。插口对(socket pair)(包含客户端IP地址、客户端口号、服务器IP地址和服务器端口号的四元组)可唯一确定互联网中每个TCP连接的双方。

这段描述解释了socket的真正含义。

以下为RFC793中对socket的定义,这也是socket最原始的定义:

To allow for many processes within a single Host to use TCP communication facilities simultaneously, the TCP provides a set of addresses or ports within each host. Concatenated with the network and host addresses from the internet communication layer, this forms a socket. A pair of sockets uniquely identifies each connection. That is, a socket may be simultaneously used in multiple connections.

此条目发表在computer分类目录,贴了, 标签。将固定链接加入收藏夹。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据