151得票18回答
如何编写可扩展的基于TCP/IP的服务器

我正在编写一个新的Windows服务应用程序,该应用程序接受长时间运行的TCP/IP连接(即不像HTTP协议那样存在许多短连接,而是客户端连接并保持连接数小时、天甚至数周)。 我正在寻找最佳设计网络架构的思路。我将需要为此服务启动至少一个线程。我正在考虑使用异步API(如BeginReciev...

145得票21回答
在C#中,如何检查TCP端口是否可用?

在 C# 中,如果要使用 TcpClient 或者连接 socket,我该如何先检查一下我的机器上某个端口是否可用? 更多信息: 这是我使用的代码:TcpClient c; //I want to check here if port is free. c = new TcpClient(i...

144得票4回答
socket API中的accept()函数是如何工作的?

套接字API是TCP/IP和UDP/IP通信(也就是我们所知道的网络编程)的事实标准。然而,它的核心函数之一accept()有点神奇。 借用一个半正式的定义: accept()用于服务器端。 它接受了一个收到的进入尝试, 从远程客户端创建一个新的TCP连接, 并创建与该连...

139得票2回答
TCP和UDP套接字可以使用相同的端口吗?

首先,使用UDP和TCP在同一台服务器上是否存在问题? 其次,我可以使用相同的端口号吗?

134得票12回答
选择新服务的默认TCP/IP端口应该怎么做?

当开发一个将在TCP/IP端口上进行监听的应用程序时,如何选择默认端口?假设这个应用程序将被安装在许多计算机上,并且需要避免端口冲突。

133得票7回答
HTTP与TCP/IP,向Web服务器发送数据

我目前正在开展一个项目,需要使用Arduino Nano (http://arduino.cc/en/Main/arduinoBoardNano)将温度传感器的数据发送到Web服务器。 起初,我以为这很容易,因为有很多出色的库可以帮助进行POST/GET等操作。然而,我的教授告诉我,我需要使...

133得票5回答
Linux:是否有带超时的套接字读取或接收函数?

我该如何尝试使用超时从套接字中读取数据? 我知道,select、pselect和poll都有一个超时字段,但是使用它们会禁用tcp reno堆栈中的“tcp快速路径”。 我唯一想到的办法是在循环中使用recv(fd, ..., MSG_DONTWAIT)。

119得票8回答
TCP选项SO_LINGER (0)是在什么情况下需要使用?

我认为我理解这个选项的正式含义。在我现在处理的一些旧代码中,使用了该选项。客户抱怨在连接关闭时从其方面发送FIN作为响应的RST。 我不确定是否可以安全地将其删除,因为我不理解何时应该使用它。 请您举一个需要使用该选项的例子好吗?

118得票9回答
如何在Go编程中将[]byte转换为int

我需要创建一个TCP的客户端-服务器示例。在客户端,我读取两个数字并将它们发送到服务器。我遇到的问题是,我无法将[]byte转换为int,因为通信只接受[]byte类型的数据。 有没有办法将[]byte转换为int,或者我可以将int发送到服务器? 非常感谢提供一些示例代码。 谢谢。

115得票8回答
TCP套接字连接是否具有“保持活动”功能?

我听说过HTTP keep-alive,但现在我想要和远程服务器建立一个套接字连接。 那么这个套接字连接会一直保持打开状态吗?还是类似于HTTP keep-alive有与之关联的超时限制? 注:HTTP keep-alive指的是在一次TCP连接中可以发送多个HTTP请求和响应,而不需要为每...