首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

UNIX协议(命名套接

这里主要介绍命名UNIX套接 1.什么是UNIX套接 Unix协议并不是一个实际的协议族,而是在单个主机上执行客户/服务通信的一种方式。是进程间通信(IPC)的一种方式。...它提供了两类套接:字节流套接(有点像TCP)和数据报套接(有点像UDP) UNIX数据报服务是可靠的,不会丢失消息,也不会传递出错。...2.UNIX协议特点 1)UNIX套接TCP套接相比,在同一台主机的传输速度前者是后者的两倍。...UNIX套接仅仅复制数据,并不执行协议处理,不需要添加或删除网络报头,无需计算校验和,不产生顺序号,也不需要发送确认报文 2)UNIX套接可以在同一台主机上各进程之间传递文件描述符 3)UNIX...套接传统套接的区别是用路径名表示协议族的描述 3.UNIX地址结构 #define UNIX_PATH_MAX 128 struct sockaddr_un{ sa_family_t sun_family

3K100

UNIX协议(无名套接

关于什么是UNIX套接可以参考:https://cloud.tencent.com/developer/article/1018893 这里主要介绍非命名的UNIX套接的用法。...功能:创建一个全双工的流管道 参数: domain:协议家族,为AF_LOCAL或AF_UNIX type:套接类型。可以是SOCK_STREAM或者SOCK_DGRAM。...为0 sv:返回套接对,这个是输出参数。返回的两个描述符都是可读可写的。 返回值:成功返回0,失败返回-1....注意:由于创建的每个套接都是没有名字的,这就意味着无关进程不能使用它们。 2.一个简单的例子: 父进程给子进程发送一个数据给子进程,子进程收到数据后最数据进行加一操作,再发回给父进程。...2)普通的TCP UDP套接是不能传递文件描述符的

73370
您找到你想要的搜索结果了吗?
是的
没有找到

linux网络编程之socket(十五):UNIX套接编程和socketpair 函数

UNIX套接与TCP套接相比较,在同一台主机的传输速度前者是后者的两倍。这是因为,IPC机制本质是可靠的通讯,而网络协议是为不可靠的通讯设计的。...三、UNIX套接编程注意点 1、bind成功将会创建一个文件,权限为0777 & ~umask 2、sun_path最好用一个绝对路径 3、UNIX协议支持流式套接口与报式套接口 4、UNIX...流式套接connect发现监听队列满时,会立刻返回一个ECONNREFUSED,这和TCP不同,如果监听队列满,会忽略到来的SYN,这导致对方重传SYN。...protocol: 协议类型 sv: 返回套接对 返回值:成功返回0;失败返回-1 实际socketpair 函数跟pipe 函数是类似的,也只能在同个主机上具有亲缘关系的进程间通信,但...即父进程持有sockfds[0] 套接进行读写,而子进程持有sockfds[1] 套接进行读写。 参考: 《Linux C 编程一站式学习》 《TCP/IP详解 卷一》 《UNP》

3.1K00

由 JVM Attach API 看跨进程通信中的信号和 Unix 套接

这篇会结合跨进程通信中的信号和 Unix 套接来看 JVM Attach API 的实现原理, 你将获得下面这些相关的知识 信号是什么 如何写一个不能被“轻易”杀死的程序 Unix 套接的用法...Unix 套接是什么?...Unix 套接更加高效,Unix 套接不用进行协议处理,不需要计算序列号,也不需要发送确认报文,只需要复制数据即可 Unix 套接是可靠的,不会丢失报文,普通套接是为不可靠通信设计的 Unix...套接的代码可以非常简单的修改转为普通套接 套接代码示例 下面是一个简单的 C 实现的套接的例子。...对于 Attach 的发起方,假设目标进程为 12345,这部分的详细的过程如下: 1、Attach 端检查临时文件目录是否 .java_pid12345 文件 这个文件是一个 UNIX 套接文件

1K20

JVM中的监听信号的线程以及Unix套接通信的线程

也可以通过/proc/6617/task查看进程6617下多少个任务(即线程), 也是20个线程,如下....面试题: 如何知道JVM中的线程个数,哪些方法? 接下来,我们在/tmp目录下创建一个.attach_pid6617文件,如下 接下来,我们使用kill命令向进程发送退出信号....进程间通信的方式很多,其中信号就是其中一种方式. 关于进程间的通信可以阅读它[ https://www.yuque.com/infuq/language/rvdvcu ] ....看看你公司的服务器是否有这两个线程呢? 接下来我们通过3种方式获取进程6617的线程栈信息. 面试题: 如何得到一个进程的线程栈信息?...在我们的C语言代码里 // 创建Unix Domain Socket用于本机进程间通信 fd = socket(PF_UNIX, SOCK_STREAM, 0); // 连接服务器.

41820

linux网络编程之socket(十六):通过UNIX套接传递描述符和 sendmsgrecvmsg 函数

在前面我们介绍了UNIX套接编程,更重要的一点是UNIX套接可以在同一台主机上各进程之间传递文件描述符。...4、msg_iovlen:当n个iovec 结构体时,此值为n; 5、msg_control:是一个指向cmsghdr 结构体的指针   struct cmsghdr {            socklen_t...协议才能在进程间传递文件描述符,如果想要在没有亲缘关系的进程间      * 传递,则不能用socketpair函数,要用socket()函数 */     if (socketpair(PF_UNIX...最后提醒一点,只有unix协议才能在本机进程间传递文件描述符,如果想要在没有亲缘关系的进程间传递,则不能用socketpair函数,要用socket()函 数 才行。...实际这里通过sendmsg来传递fd,父进程才算是真正打开 了文件,也就是父进程的fd 也指向了file结构体,此file 结构体内的引用计数为2。

2.5K00

数据库PostrageSQL-服务器配置连接和认证

Windows下没有 Unix 套接,因此这个参数与 Windows 无关。...Windows 下没有 Unix 套接,因此这个参数与 Windows 无关。 unix_socket_permissions (integer) 设置 Unix 套接的访问权限。...这个参数只有在支持TCP_KEEPIDLE或等效套接选项的系统或 Windows 才可以使用。在其他系统,它必须为零。在通过 Unix 套接连接的会话中,这个参数被忽略并且总是读作零。...这个参数只有在支持TCP_KEEPINTVL或等效套接选项的系统或 Windows 才可以使用。在其他系统,必须为零。在通过 Unix套接连接的会话中,这个参数被忽略并总被读作零。...这个参数只有在支持TCP_KEEPCNT或等效套接选项的系统才可以使用。在其他系统,必须为零。在通过 Unix 套接连接的会话中,这个参数被忽略并总被读作零。

4.4K20

不停歇的 Java 即将发布 JDK 16,新特性速览!

增加 Unix 套接通道,其中 Unix (AF_UNIX套接支持添加到 nio.channels 包中的套接通道和服务器套接通道 API 中。...该计划还扩展了继承的通道机制,以支持 Unix 套接通道和服务器套接通道。Unix 套接用于同一主机上的进程间通信。...它们在很多方面与 TCP/IP 套接类似,只是它们由文件系统路径名称而不是 IP 地址和端口号寻址。...新功能的目标是支持 Unix 套接通道的所有功能,这些功能在主要 Unix 平台和 Windows 中很常见。...格式包括 Windows 的 msi 和 exe、 MacOs 的 pkg 和 dmg、以及 Linux 的 deb 和 rpm 。该工具可以直接从命令行调用,也可以以编程方式调用。

82520

JDK 16 即将发布,新特性速览!

增加 Unix 套接通道,其中 Unix (AF_UNIX套接支持添加到 nio.channels 包中的套接通道和服务器套接通道 API 中。...该计划还扩展了继承的通道机制,以支持 Unix 套接通道和服务器套接通道。Unix 套接用于同一主机上的进程间通信。...它们在很多方面与 TCP/IP 套接类似,只是它们由文件系统路径名称而不是 IP 地址和端口号寻址。...新功能的目标是支持 Unix 套接通道的所有功能,这些功能在主要 Unix 平台和 Windows 中很常见。...格式包括 Windows 的 msi 和 exe、 MacOs 的 pkg 和 dmg、以及 Linux 的 deb 和 rpm 。该工具可以直接从命令行调用,也可以以编程方式调用。

79710

套接

套接最早是UC Berkeley为BSD操作系统设计的。现在POSIX标准化了套接。在Linux和Unix下的套接是一致的。...但是在Windows下,微软为Windows操作系统的应用层和传输层设计了自己独有的一套机制,同时微软也扩展了POSIX标准制定的套接,形成了Windows独有的WinSocket。... 地址格式 AF_INET IPv4 AF_INET6 IPv6 AF_UNIX Unix AF_UPSPEC 未指定 最后这个AF_UPSPEC实质是通用的,在早期有些平台支持其他协议。...socket的第二个参数就是表1给出的套接类型,但是在实现的时候,可以自有增加其他类型的支持。 protocol通常是0,表示给给定的套接类型选择默认的协议。...这在同一套接类型的时候是有用的,可以指定选择某一个特定的协议。 socket函数返回一个套接描述符,本质是一个文件描述符。

1.2K00

JDK 16 即将发布,新特性速览!

增加 Unix 套接通道,其中 Unix (AF_UNIX套接支持添加到 nio.channels 包中的套接通道和服务器套接通道 API 中。...该计划还扩展了继承的通道机制,以支持 Unix 套接通道和服务器套接通道。Unix 套接用于同一主机上的进程间通信。...它们在很多方面与 TCP/IP 套接类似,只是它们由文件系统路径名称而不是 IP 地址和端口号寻址。...新功能的目标是支持 Unix 套接通道的所有功能,这些功能在主要 Unix 平台和 Windows 中很常见。...格式包括 Windows 的 msi 和 exe、 MacOs 的 pkg 和 dmg、以及 Linux 的 deb 和 rpm 。该工具可以直接从命令行调用,也可以以编程方式调用。

93920

JDK16 正式版发布,网友:别更新了,学不动了~

该版本一共进行了 17 项更新,涉及新特性改进、新工具、孵化功能等,具体哪些更新,我们一起来看下: 1 新特性 instanceof 模式匹配 在 JDK 16 ,模式匹配允许程序中的通用逻辑,即从对象中提取组件...3 新工具和库 增加 Unix 套接通道 其中 Unix (AF_UNIX套接支持添加到 nio.channels 包中的套接通道和服务器套接通道 API 中。...该计划还扩展了继承的通道机制,以支持 Unix 套接通道和服务器套接通道。Unix 套接用于同一主机上的进程间通信。...它们在很多方面与 TCP/IP 套接类似,只是它们由文件系统路径名称而不是 IP 地址和端口号寻址。...新功能的目标是支持 Unix 套接通道的所有功能,这些功能在主要 Unix 平台和 Windows 中很常见。 包装工具 提供jpackage工具,用于打包独立的Java应用程序。

64530

【RL-TCPnet网络教程】第18章 BSD Sockets基础知识

Windows Sockets规范以U.C.Berkeley大学BSD UNIX中流行的Socket接口为范例定义了一套Microsoft Windows下网络编程接口。...18.5 BSD Sockets简介 Berkeley sockets,又称BSD sockets,是一种应用程序接口,用于网际套接Unix套接Unix domain sockets),包括了一个用...然而,由于AT&T的专利保护着Unix,所以只有在1989年伯克利大学才能自由地发布自己的操作系统和网络库。 Berkeley套接应用程序接口形成了事实的网络套接的标准精髓。...这套应用程序接口也被用于Unix套接。...select()      用于修整有如下情况的套接列表:准备读,准备写或者有错误。 poll()      用于检查套接的状态。套接可以被测试,看是否可以写入、读取或是有错误。

91330

python实现socket通讯(TCP)

为了建立通信通道,网络通信的每个端点拥有一个套接对象极为重要。 套接为BSD UNIX系统核心的一部分,而且他们也被许多其他类似UNIX的操作系统包括Linux所采纳。...许多非BSD UNIX系统(如ms-dos,windows,os/2,mac os及大部分主机环境)都以库形式提供对套接的支持。...三种最流行的套接类型是:stream, datagram, raw。stream和datagram套接可以直接与TCP协议进行接口,而raw套接则接口到IP协议。但套接并不限于TCP/IP。...socket=socket.socket(familly, type) family的值可以是AF_UNIX(Unix,用于同一台机器的进程间通讯),也可以是AF_INET(对于IPV4协议的TCP...AF 表示ADDRESS FAMILY 地址族 PF 表示PROTOCOL FAMILY 协议族 在windows中AF_INET与PF_INET完全一样,而在Unix/Linux系统中,在不同的版本中这两者微小差别

2.5K20

说透 Docker:基础

Docker for Linux 中最为常见的同主机通讯方式是 Unix 套接。..., 方法是扫描一组众所周知的 Unix 套接。...Linux 是多进程操作系统,为了让多个系统中的多个进程能够进行高效的通讯,出现和很多方法,其中一种是套接(Unix domain socket),只能用于在同一计算机中的进程间通讯,但是其效率高于网络套接...套接使用一个 .sock 文件进行通讯,常见的容器软件其对应套接如下: 运行时 套接 Docker /var/run/dockershim.sock containerd /run/containerd...Unux 套接套接和管道之间的混合物。 在 Linux 中,很多进程,为了让多个进程能够进行通讯,出现和很多方法,其中一种是套接(socket)。

65830

核心库Libuv入门(Hello World篇)

这时候Nodejs提供了libuv来作为抽象封装层,在Unix系统,通过封装libev和libio调用linux的epoll 或 kqueue,在Windows 平台上的IOCP[3]进行封装,自此之后...Libuv的特点 •全功能的事件循环基于epoll、kqueue、IOCP、event ports•异步的TCP和UDP套接•异步的DNS解析•异步的文件和文件系统操作•文件系统事件•ANSI转义代码控制的...TTY•PC包括套接共享,使用Unix套接或有名管道(Windows)•子进程•线程池•信号处理•高分辨率时钟•线程和同步原语 Libuv入门实战之Hello world 笔者是MacOS的系统,.../configure make make check make install 3.安装完成后,查看一下自己本地 /usr/local/include/ 下是否uv.h等头文件,如果存在即安装完成...一般而言,遵守 POSIX 规范的操作系统指的是 UNIX、Linux、Mac OS X 等: [3] Windows 平台上的内核事件通知相应的机制Input/Output Completion Port

2.9K20

JDK19都出来了~是时候梳理清楚JDK的各个版本的特性了【JDK16特性讲解】

4.JEP 380:Unix 套接通道 概述 将 Unix ( AF_UNIX) 套接支持添加到包中的套接通道和服务器套接通道API java.nio.channels。...扩展继承的通道机制以支持 Unix 套接通道和服务器套接通道。 目标 Unix 套接用于同一主机上的进程间通信 (IPC)。...此 JEP 的目标是支持在主要 Unix 平台和 Windows 中通用的 Unix 套接的所有功能。...原因 对于本地、进程间通信,Unix 套接比 TCP/IP 环回连接更安全、更高效。 Unix 套接严格用于同一系统的进程之间的通信。...Unix 套接比 TCP/IP 环回连接具有更快的设置时间和更高的数据吞吐量。 对于需要在同一系统的容器之间进行通信的容器环境,Unix 套接可能是比 TCP/IP 套接更好的解决方案。

1.5K50
领券