看板 Programming 關於我們 聯絡資訊
※ 引述《nosrep (ㄎ)》之銘言: : shared socket 的應用原因, : 有兩個現存的獨立 processes, 本來都是用來提供網路服務的Server, : 由於其中 Process1 是特別為了特殊任務專用的Server, : 不希望把他跟原來Process2的程式混在一起~所以獨立出來, : Process1訊息解析完之後,將會把本來服務的用戶端連線(socket or fd), : 希望在不斷連線的情況之下,能傳遞到 Process2 讓其繼續服務使用者. : 我本來是不覺得這個方法可行,是有人跟我說到shared socket技術~ : 我寫那麼久的網路程式,還真的沒用到過... : 在怎麼樣也是讓客戶另外建一個連線, : 不然逼不得已就是做個 pipe channel 之類的犧牲效能~ : ※ 引述《nosrep (ㄎ)》之銘言: : : 請問有人在 unix系統使用shared socket的技術嘛? : : 網路上似乎找不到文獻...頂多看到的是 fork 出來的 processes 互相 shared. : : 但是我想要的是兩個獨立 AP 之間的 shared socket 技術? : : 請指教~ 這邊有幾種方法,可以試試,可以行的通的 socketpair() function, Section 14.7 of UNPv1 有詳盡的介紹 I_SENDFD, I_RECVFD of ioctl() function, Section 15.5.1 of APUE 有詳盡的介紹 還有 Berkeley-delived kernel也有他的方法。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.73.175.18
Lordaeron:socketpair是child/parent吧,可以不同?125.232.135.128 05/18 20:59
Lordaeron:process? 雙父?125.232.135.128 05/18 20:59
Lordaeron:socketpair用法像pipe吧.125.232.135.128 05/18 21:05
Lordaeron:跟shared socket 有像?125.232.135.128 05/18 21:06
nosrep:這是IPC,不是我說的 shared socket 60.248.204.237 05/19 10:15
lungswu:樓上要將socket id傳到另一process,使別 59.120.197.247 05/19 10:40
lungswu:的process也可以用該建立好的socket? 59.120.197.247 05/19 10:40
Lordaeron:shared socket就是兩個不同的父process125.232.139.104 05/19 13:02
Lordaeron:共用同一個fd125.232.139.104 05/19 13:02
nosrep:to lungswu: yes 60.248.204.237 05/19 17:01