2011-10-05 101 views
0

我正在設計一個通信協議,用於使用套接字連接在兩個PC應用程序之間進行通信。最常見的情況是兩個應用程序在同一臺機器上工作,但可以在遠程機器上運行一個應用程序。 應用程序可以將一些數據交換到2Mb/s。 問題是:我應該使用確認數據包來確保一個應用程序發送的數據包被另一個應用程序接收到了嗎?我知道socket使用TCP連接,所以確認/重傳已經實現,但我需要一些在實踐中使用它的人的反饋。進程間通信是套接字通信可靠協議嗎?

的技術用於: - 插座服務器:使用以下庫.NET應用程序:http://www.codeproject.com/KB/IP/AsyncSocketServerandClien.aspx - 套接字客戶端:.NET或Delphi應用

回答

3

這是好的,交通短路的TCP/IP驅動程序堆棧。與任何其他IPC機制沒有太大區別,它只需要一個從內存到內存的拷貝,以便以總線速度運行。開銷爲5千兆字節/秒(典型值),微秒左右。此外,無論上下文切換需要發生,迄今爲止最大的成本。命名管道的操作方式相同。當你需要通過網卡時,它會掉下懸崖。