unix的socket是什么,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
起因:大平在进行unix运维的时候,总是发现后缀是sock的文件,因此想,这是啥文件呢?有什么作用?为什么会有这个文件?
Socket文件用于同一OS或不同OS中进程相互传输数据的一个标识,可以把它想象成一个插座,然后用网线连接两个socket。
为什么是个文件?
简单来说,就是使用文件最方便
文件系统在Unix中与System Call(系统调用)是同步的,由此可见,文件系统可以提供一种使用System call的方便途径。
进程是如何使用socket的?
进程使用socket descriptor来使用socket,这个socket descriptor是一个抽象概念,通常使用一个整数来表示。一个进程通常对协议栈(protocol stack)申请创建一个socket,然后,stack返回一个socket descriptor给这个进程。当进程想要发送或接收数据时,就把这个socket descriptor发送给协议栈。
两个node之间进行通信时,进程不会直接连接到另外一个node的socket descriptor,而是连接到本node的socket descriptor【一个整数】,然后由本node的socket发送数据到protocol stack,另外node的protocol stack接收后,传给另外node的process。
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注亿速云行业资讯频道,感谢您对亿速云的支持。
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/199474.html