[FAQ] unix, unixpacket 属于传输层吗

 

unix 和 unixpacket(也称作Unix域套接字)并不属于TCP/IP模型中的传输层。

它们是操作系统提供的另一种通信机制,主要用于在同一台机器上的进程间通信(IPC,Inter-Process Communication)。

Unix域套接字可以看作是文件系统中的一个特殊文件,具有以下两种类型:

  流式 Unix 域套接字(unix):类似于TCP,提供面向连接的、可靠的字节流服务。

  数据报 Unix 域套接字(unixpacket):类似于UDP,提供无连接的、数据报的服务,但是是在文件系统中而不是网络上。

因此,尽管 unix 和 unixpacket 在使用方式上与 TCP 和 UDP 有相似之处,它们并不属于TCP/IP模型的传输层,而是操作系统层面的通信机制,通常用于高性能的本地进程间通信场景。

 

listener, err = net.Listen("tcp", port)

这段代码展示了如何使用Go的 net 包监听一个 TCP 端口,准备接受连接请求。

这里的tcp明确指出了使用的是TCP传输层协议,而非Unix域套接字。

 

Link:https://www.cnblogs.com/farwish/p/18223291

posted on 2024-05-30 21:35  ercom  阅读(22)  评论(0编辑  收藏  举报