2010-04-09 87 views
2

我在PIC控制器中放置了一个TCP服务器和客户端代码。现在只想知道,同一台设备可以同时运行客户端和服务器吗?如果可能的话,我们可以在服务器和客户端上使用TCP堆栈上的相同套接字吗?服务器和客户端可以使用相同的套接字吗?

+1

你是什么意思,由客户端和服务器? TCP堆栈只处理套接字。只要你的协议处理它,你可以使用相同的套接字。 – WhirlWind 2010-04-09 02:10:45

+2

另外,你可能会混淆_ports_和_sockets_? – 2010-04-09 02:13:26

+0

请详细说明。 – 2010-04-09 02:16:24

回答

1

关于使用相同套接字的问题没有任何意义,因为大概客户端和服务器是独立的进程,所以它们不能共享完全相同的套接字。对于一台服务器,你通常会创建一个套接字,然后bind将它连接到一个特定的端口,并连接accept。对于客户端,您创建一个套接字,并将connect添加到指定的地址(用于TCP/IP连接的IP地址和端口对)。

相同的设备可以同时运行TCP服务器和客户端。您可以启动侦听特定端口的服务器,然后将客户端连接到同一端口,并且这两个程序将相互通信。

相关问题