apa*_*che 185 networking ip tcp socket
它来自这个答案:
当主机为“localhost”时,MySQL Unix 客户端使用 Unix 套接字,AKA Unix Domain Socket,而不是 TCP/IP 套接字进行连接,因此 TCP 端口无关紧要。
pQd*_*pQd 283
甲UNIX插座,AKA Unix域套接字,是一个进程间通信机制,允许在相同的机器上运行的进程之间的双向数据交换。
IP 套接字(尤其是 TCP/IP 套接字)是一种允许进程间通过网络进行通信的机制。在某些情况下,您可以使用 TCP/IP 套接字与运行在同一台计算机上的进程对话(通过使用环回接口)。
UNIX 域套接字知道它们在同一个系统上执行,因此它们可以避免一些检查和操作(如路由);这使得它们比 IP 套接字更快、更轻。因此,如果您计划与同一主机上的进程通信,这是比 IP 套接字更好的选择。
编辑:根据Nils Toedtmann 的评论:UNIX 域套接字受文件系统权限的约束,而 TCP 套接字只能在数据包过滤器级别进行控制。
The*_*tor 37
您可以使用以下命令列出您自己的机器本地 unix 套接字:
Linux:
netstat -a -p --unix
Run Code Online (Sandbox Code Playgroud)
MacOS:[jbmeerkat 评论]
netstat -a -f unix
Run Code Online (Sandbox Code Playgroud)
玩得开心!
Pet*_*een 25
Unix 套接字和 TCP/IP 套接字有什么区别?
TCP/IP 套接字用于跨 TCP/IP 网络进行通信。连接的 TCP 套接字由本地 IP、本地端口、远程 IP 和远程端口的组合标识。侦听 TCP 套接字由本地端口和可能的本地 IP 标识。AIUI 至少在 linux TCP/IP 套接字上总是导致 TCP/IP 数据包的生成和解码,即使客户端和服务器在同一台机器上。
另一方面,unix 域套接字(有时缩写为 unix 套接字)在单台机器上运行。侦听套接字位于文件系统层次结构中,对它们的访问可以由文件系统权限控制。
此外,接受 Unix 套接字连接的进程可以确定连接的进程的用户 ID。这可以避免对身份验证步骤的需要。无需为您的数据库服务器生成密码并将其副本包含在您的 webapp 代码中,您只需告诉数据库服务器运行 webapp 的用户有权访问数据库中的相应用户帐户。
TCP 套接字也由 Unix 处理?
当然
TCP 套接字是 TCP 协议规范的一部分
Internet 协议规范仅倾向于关注线路上发生的情况,TCP 规范包含 Socket 的定义,但该定义与“套接字 API”使用该术语的方式不同。
我们所知道的“套接字 API”是由 BSD 引入的,但后来被到处复制并作为 posix 标准的一部分包含在内。TCP 和 UDP 套接字的基本内容在不同平台上趋于相同,但更高级的内容和与操作系统其他部分交互的内容各不相同,例如在类 Unix 系统上,套接字由文件句柄标识,并且可以由文件 API 读取/写入,在 Windows 上不是这种情况。
rfcs 中记录了套接字 API 的一些扩展,但这些 RFC 只是“信息性的”。
或任何协议都可以使用 IP 套接字?
当应用程序使用“socket”函数显式创建套接字(套接字也由接受函数创建)时,它传递三个参数,“域”、“类型”和“协议”。在它们之间,这三个参数可用于选择许多不同类型的套接字。
| 归档时间: |
|
| 查看次数: |
164502 次 |
| 最近记录: |