Unix-розетки - це двонаправлений гніздо - як і IP-розетка, з яким ви, мабуть, знайомі, і схожий на трубу, з якою ви, напевно, знайомі.
Вони мають невеликий набір цікавих властивостей:
- Вони знаходяться лише в домені "локального хоста" - ви не можете отримати доступ до них по мережі, лише на локальній машині.
- Ви можете створити їх у режимі "потоку", де вони просто передають дані, як труба, як потік байтів.
- Ви можете створити їх у режимі "дейтаграми", де вони зберігають межі між операціями надсилання. Це дозволяє зберегти обрамлення, не будуючи власний протокол кадрування поверх потоку байтів.
- Вони використовують файлову систему або "Linux" абстрактний простір імен як свою "адресу"
- Можливо, ви зможете себе представити іншим кінцем, надійно визначити програмне забезпечення, що підключається, або передати ручки файлів через сокет, залежно від вашої ОС.
По суті вони еквівалентні будь-якій іншій розетці - вони мають трохи цікавіші властивості, ніж труби, але не відрізняються кардинально від інших. Зазвичай вони мають більш високу затримку IPC, ніж у труби, і часто більші буфери - хоча ви можете це налаштувати, і це залежить від платформи.
Останнім цікавим властивістю пам’ятати є те, що вони використовують файлову систему в якості простору імен - тому вони нагадують трубу з назвою, а не анонімну трубку, в тому програмному забезпеченні, яке не має попередніх стосунків. (Абстрактні розетки простору імен однакові, але шлях до файлу не повинен існувати.)
Немає нічого глибшого, ніж це - у них немає ніякого надпотаємного прихованого властивості, що робить їх кардинально відмінними від типової труби або TCP-з'єднання з localhost.