.net 套接字通信是进程间通信的可靠协议吗?

.net 套接字通信是进程间通信的可靠协议吗?,.net,sockets,inter-process-communicat,.net,Sockets,Inter Process Communicat,我正在设计一个通信协议,该协议将用于使用套接字连接在两个PC应用程序之间进行通信。最常见的情况是两个应用程序在同一台机器上工作,但可以在远程机器上运行一个应用程序。 应用程序可以交换一些高达2Mb/s的数据。 问题是:我是否应该使用确认数据包来确保一个应用程序发送的数据包被另一个应用程序接收?我知道socket使用TCP连接,因此确认/重传已经实现,但我需要在实践中使用它的人提供一些反馈 所使用的技术: -套接字服务器:.NET应用程序,该应用程序使用以下库: -套接字客户端:.NET或Delp

我正在设计一个通信协议,该协议将用于使用套接字连接在两个PC应用程序之间进行通信。最常见的情况是两个应用程序在同一台机器上工作,但可以在远程机器上运行一个应用程序。 应用程序可以交换一些高达2Mb/s的数据。 问题是:我是否应该使用确认数据包来确保一个应用程序发送的数据包被另一个应用程序接收?我知道socket使用TCP连接,因此确认/重传已经实现,但我需要在实践中使用它的人提供一些反馈

所使用的技术: -套接字服务器:.NET应用程序,该应用程序使用以下库:
-套接字客户端:.NET或Delphi应用程序这很好,TCP/IP驱动程序堆栈中的通信量短路。与任何其他IPC机制没有很大区别,它只需要一个内存到内存的拷贝,因此以总线速度运行。通常为5千兆字节/秒,开销约为微秒。再加上任何需要进行的上下文切换,都是迄今为止最大的成本。命名管道将执行相同的操作。一旦您需要通过NIC,这当然会掉下悬崖。

这很好,TCP/IP驱动程序堆栈中的流量会短路。与任何其他IPC机制没有很大区别,它只需要一个内存到内存的拷贝,因此以总线速度运行。通常为5千兆字节/秒,开销约为微秒。再加上任何需要进行的上下文切换,都是迄今为止最大的成本。命名管道将执行相同的操作。一旦你需要通过NIC,它当然会从悬崖上掉下来