6:Unix域协议

- 用途
用于本机IPC的一种机制,仍然使用socket api
- 结构
struct sockaddr_un
{
    
    
	// AF_LOCAL/AF_UNIX
	sa_family_t sun_family;
	char sun_path[104];
};

socketpair

int socketpair(
	// AF_LOCAL
	int family,
	// SOCK_STREAM/SOCK_DGRAM
	int type,
	// 0
	int protocol,
	// 新创建两个套接字描述符作为sockfd[0]/sockfd[1]返回
	int sockfd[2]);

Unix域注意点

- bind关联的路径名访问权限应以0777创建,应指定绝对路径名
- connect中指定的目的路径.应是已经用bind关联到另一端套接字上的.且另一端套接字类型需和本端匹配.
- connect时,若监听端队列已经满,connect返回错误[而非TCP/UDP下不断重连尝试]
- 若Unix域下套接字未指定本端地址,内核不会自动为其指定

猜你喜欢

转载自blog.csdn.net/x13262608581/article/details/110343685