Help us understand the problem. What is going on with this article?

ソケット通信とは何か?

More than 1 year has passed since last update.

ソケットはどこの話か?

  • OSI参照モデル
    • アプリケーション層: HTTP/telnet/DNS
    • セッション層: Socket => ここ
    • トランスポート層: TCP/UDP
    • ネットワーク層: IP
    • 物理層: Ethernet, HUB

ソケットにも種類がある

INETドメインソケット(TCPソケット)

  • ネットワーク上でマシンを越えてのプロセス間通信

UNIXドメインソケット

  • 同じマシン上で動いているプロセス間で通信を行うためのソケット
  • 自マシンのみ

UNIXドメインソケットは何がいいのか?

  • INETドメインソケットよりもはるかに早い

UNIXドメインソケットの種類

  • ファイルシステムパス(pathname)
    • 一般的な手法。bind(2)でファイルシステム上のパスを結びつける
    • ファイルを使用しているためパーミッションを調整する
    • サーバプロセスが終了する時はunlink(2)で名前を削除し、それが参照しているファイルも削除する
  • netstat -al --protocol=unixで判断する
  • /var/lib/mysql/mysql.sockのようなものがUNIXドメインソケット
Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away