IPC端口范围

时间:2012-01-05 19:17:43

标签: windows ipc ports

IPC可以通过TCP / IP套接字完成。我应该在Windows下的程序之间使用哪些端口范围用于本地IPC? 我正在使用哪个Windows版本是否重要?
如果我想要跨平台兼容,Linux下有什么不同吗? 我写的语言是否重要? IPC是否在本地是否重要?

2 个答案:

答案 0 :(得分:3)

原则上,如果您的计划将被广泛使用,您应该按照RFC6335获取IANA为您分配的端口号。如果您没有资格获得任务,您的程序应该在运行时选择49152-65535范围内的未使用端口,并通过其他方式将此端口号传递给其他进程。

在实际操作中,您通常可以使用1024-49151范围内任何不经常使用的端口,但您应该允许其他程序使用它。通常,这是通过允许用户配置使用不同端口来完成的,例如,您可以使用注册表设置。

可以查看已分配的端口号at IANA。此列表可能有助于避免特别可能正在使用的端口。

对于记录,在Windows上,使用其他一些IPC方法(如命名管道)通常更简单。

答案 1 :(得分:1)

如果您的软件是预期的,则应避免使用端口0到1023 可以在Linux或其他类Unix平台下由非特权(非root)用户使用。

使用的编程语言或操作系统版本(在单个系列中,如Windows或Linux) 不应限制您选择用于IPC的端口号。