Unix socket

Unix 소켓은 동일 호스트 내에서 프로세스 간 통신 (IPC, Inter-Process Communication)을 가능하게 하는 기능이다.

이는 네트워크 소켓과 유사한 API를 사용하지만, TCP/IP프로토콜을 사용하지 않고 로컬 파일 시스템을 기반으로 작동한다. Unix 도메인 소켓(UDS)는 주로 성능 및 메모리 효율성을 위해 사용되며, TCP소켓보다 더 빠른 통신을 지원한다.

특징 및 장점

  • 로컬 통신: 동일 호스트 내에서 통신이므로, 속도가 빠르다.
  • FS기반: 이는 포트를 통해 연결되지 않고, 파일시스템의 경로를 통해 식별되어 일반적인 파일처럼 다룰 수 있다. 이로 인해 파일 권한을 기반으로하는 접근 제어가 가능하다.
  • 소켓 타입: Unix소켓은 스트림 소켓과 데이터그램 소켓을 지원한다. 스트림 소켓은 연결 지향적이며, 데이터그램 소켓은 비연결 지향적이다.

실제로 애플리케이션을 만들어서 특정 포트에 바인딩하는 것처럼,

Unix소켓은 특정 파일 경로에 바인딩하게 된다는 특징이 있다.