我见过的几乎所有套接字定义都与端点术语非常相关:
网络套接字是用于发送或接收数据的内部端点 在计算机网络中的单个节点上。具体地说,它是一个 在网络软件中表示此端点
套接字是(双向)通信中的端点
套接字是两者之间双向通信链路的一个端点 在网络上运行的程序
甚至stackoverflow对标签'套接字'的定义是:
双向进程间通信流的端点
This other answer更进一步:
TCP套接字是端点实例
虽然我不明白在这种情况下“实例”是什么意思。如果根据this回答,端点是URL,我看不出如何实例化。
答案 0 :(得分:2)
恕我直言 - 逻辑上(强调)“套接字”和“端点”是相同的,因为它们都是互联网地址与 TCP 端口的串联。严格来说,在核心网络中,没有什么像“端点”这样的东西,只有“套接字”。继续,阅读下面的更多内容...
正如@Zac67 所强调的那样,“套接字”是网络中一个非常具体的术语——如果您阅读 TCP RFC (https://tools.ietf.org/html/rfc793),那么您甚至找不到“端点”的一个引用,它只谈论“插座”。但是当你离开 RFC 世界时,你会听到很多关于“端点”的内容。
现在,他们都在谈论 IP 地址和 TCP 端口的组合,但你不能说“请给我你的应用程序的套接字”,你会说“请给我您的应用程序的端点”。因此,恕我直言,有人可以理解 Socket 和 Endpoint 之间的区别的方式是 - 即使两者都是指 IP 地址和 TCP 端口的组合,但是当您在计算机进程的上下文或操作系统的上下文中交谈时,您使用术语“套接字”,否则,在与一般人交谈时,您将使用“端点”。
答案 1 :(得分:1)
“端点”是一个通用术语,包括管道,接口,节点等,而“套接字”是网络中的特定术语。