我想我將使用127.0.0.1上的套接字爲我的應用程序製作簡單的IPC。我的目標是Windows,Mac和Linux。我有幾個問題:關於127.0.0.1和使用套接字的IPC
- 防火牆或其他工具可以阻止我對任何這些3個操作系統
- 是連接快速的連接?有人在Linux上告訴我,它使用管道傳輸數據。
- 可以在連接可以嗅探(編輯:它可以通過RawCap例如被嗅探。)
我想我將使用127.0.0.1上的套接字爲我的應用程序製作簡單的IPC。我的目標是Windows,Mac和Linux。我有幾個問題:關於127.0.0.1和使用套接字的IPC
127.0.0.1(localhost)是環回接口。這是全部內部的,它不會碰到電線。
防火牆可以阻止它嗎?不是外部防火牆,但可能是運行在同一臺機器上的軟件防火牆。
它快嗎? As fast as it can be。
連接可以被嗅探嗎?不是通過外部設備,但它可能被同一臺機器上運行的軟件嗅探。
防火牆確實可以阻止127.0.0.1,一些防火牆默認會這樣做。 至少在Windows和Linux上,您可以使用內存映射文件(我相信您可以在Mac上執行此操作以及基於BSD)進行數據傳輸,並且由於數據緩衝區複製較少,這通常會比套接字更快。
內存映射文件非常好,但是當你進行修改時你需要一個額外的信號發送方式。 – 2012-02-24 18:50:23
@MarkRansom肯定,但這也不是問題。以這種方式實現的傳輸很容易擊敗本地主機套接字(至少在Windows上)。我們有一個產品MsgConnect,它提供了這個,所以我們做了測量。 – 2012-02-24 19:35:02
管道發生了什麼? – pezcode 2012-02-24 20:09:32
例如,可以使用RawCap來嗅探它。 – blez 2012-02-24 18:18:44
啊,當然;我會修復 – theglauber 2012-02-24 18:19:27