Сокет Unix, SOCK _SEQPACKET vs SOCK _DGRAM

Похоже, что существует по крайней мере 3 различных типа сокетов local/unix (AF_UNIX), SOCK_STREAM, SOCK_DGRAM. ] и SOCK_SEQPACKET.

Хотя я знаю, что SOCK_STREAMдает вам двунаправленный -поток байтов, такой как TCP или двунаправленный канал, а два других дают вам API сообщений/пакетов, в чем разница между unix-сокетом SOCK_DGRAMи SOCK_SEQPACKET?

Поскольку они только локальные, я не могу придумать веской причины, чтобы кто-то реализовал SOCK_DGRAMтаким образом, чтобы он мог переупорядочивать пакеты.

Кроме того, используется ли SOCK_DGRAM/ SOCK_SEQPACKETуправление потоком или сообщения могут быть удалены в случае медленного чтения?

49
задан Azsgy 7 May 2019 в 15:51
поделиться