Socket原理

    技术2024-12-30  20

    更多内容请访问Socket技术详解

    1、什么是Socket

    在计算机通信领域,socket 被翻译为“套接字”,它是计算机之间进行通信的一种约定或一种方式。通过 socket 这种约定,一台计算机可以接收其他计算机的数据,也可以向其他计算机发送数据。   socket起源于Unix,而Unix/Linux基本哲学之一就是“一切皆文件”,都可以用“打开open –> 读写write/read –> 关闭close”模式来操作。   我的理解就是Socket就是该模式的一个实现:即socket是一种特殊的文件,一些socket函数就是对其进行的操作(读/写IO、打开、关闭)。   Socket()函数返回一个整型的Socket描述符,随后的连接建立、数据传输等操作都是通过该Socket实现的。

    2、网络中进程如何通信

    既然Socket主要是用来解决网络通信的,那么我们就来理解网络中进程是如何通信的。

    2.1、本地进程间通信

    a、消息传递(管道、消息队列、FIFO)   b、同步(互斥量、条件变量、读写锁、文件和写记录锁、信号量)   c、共享内存(匿名的和具名的,eg:channel)   d、远程过程调用(RPC)

    2.2、网络中进程如何通信

    我们要理解网络中进程如何通信,得解决两个问

    Processed: 0.009, SQL: 9