在Linux系统中,Sock(套接字)是一种用于进程间通信(IPC, Inter-Process Communication)和网络通信的技术
套接字可以分为两类:基于文件的套接字(如Unix域套接字)和基于网络的套接字(如TCP/IP套接字)。
-
Unix域套接字:这种套接字用于同一台主机上的进程间通信。它们不需要网络协议栈的支持,因此性能更高。Unix域套接字在文件系统中表示为一个特殊类型的文件。
-
TCP/IP套接字:这种套接字用于网络通信,支持点对点的数据传输。它们基于TCP(传输控制协议)或UDP(用户数据报协议)等协议。
在Linux系统中,套接字通常使用socket()
函数创建,然后使用bind()
、listen()
、accept()
、connect()
等函数进行操作。应用程序可以通过套接字发送和接收数据,实现进程间通信或与其他计算机上的进程通信。