草庐IT

TCP_DENIED

全部标签

c# - TCP 套接字错误 : Only one usage of each socket address (protocol/network address/port) is normally permitted

我正在开发一个小型TCP客户端/服务器库。我在创建客户端并将其连接到服务器时遇到了这个问题。它给了我这个异常(exception)每个套接字地址(协议(protocol)/网络地址/端口)通常只允许使用一次我的代码是。publicTCPClient(stringremoteIPAddress,intport){this.remoteIPAddress=IPAddress.Parse(remoteIPAddress);this.port=port;IPEndPointremoteEndPoint=newIPEndPoint(this.remoteIPAddress,this.port);

c - 关于 sockets/tcp-connections 多线程的问题

我有一个服务器,它使用TCP/IP连接连接到多个客户端,在Unix中使用C。由于它一次不会超过20个连接,我想我会为每个连接/套接字使用一个线程。但问题是写入套接字,因为我将向客户端发送用户提示消息。一旦每个套接字都由一个线程处理,我如何与创建的线程交互以写入套接字?每个线程是否应该只从套接字中读取,然后我将写入主程序中的套接字?不确定这是否是解决问题的好方法。 最佳答案 我的经验法则是任何给定的套接字都只能由单个线程(*)操作。因此,如果您为每个套接字生成一个单独的I/O线程,并且您的主线程想要将某些内容写入I/O线程的套接字,那

c# - Winsock tcp/ip 套接字监听但连接被拒绝,竞争条件?

这涉及到两个自动单元测试,每个单元测试都启动一个tcp/ip服务器,创建一个非阻塞套接字,然后在select()上循环bind()s和listen(s)为连接和下载一些客户端数据。问题是它们在单独运行时可以完美运行,但作为测试套件运行时,第二个测试客户端将无法连接WSACONNREFUSED...除非他们之间有几秒的Thread.Sleep()??!!有趣的是,每1秒有一次重试循环,用于在任何失败后进行连接。所以第二个测试循环一段时间,直到10分钟后超时。在此期间,netstat-na显示服务器套接字处于LISTEN状态的正确端口号。那么如果是listen状态呢?为什么它不接受连接?在

c# - 如何使用 .NET 2.0 学习 TCP/IP 和套接字编程?

我在哪里可以找到学习如何在.NET/C#2.0中使用TCP/IP的良好资源和示例?关于从哪里开始的任何建议?我是套接字编程的新手。 最佳答案 新的MSDN站点非常好,将不同语言的示例清晰地分开了。无论如何,您可能会从TcpClient开始和TcpListener.上周我第一次使用.NET套接字库,并且能够非常非常快速地实现TCP命令解释器。 关于c#-如何使用.NET2.0学习TCP/IP和套接字编程?,我们在StackOverflow上找到一个类似的问题:

c - 接受()函数; C中的简单tcp服务器

我正在学习C语言的套接字编程并下载了一个简单的tcp服务器源文件。我理解这些函数中除第二个参数之外的每一行:accept(socket_fd,(structsockaddr*)&client,&length);bind(socket_fd,(structsockaddr*)&server,length);accept+bind函数是"sys/types.h"&"sys/socket.h"中的典型函数,手册页将其描述为指向结构的指针,但我仍然不明白这是什么真正发生在这里。有人可以解释一下第二个参数是怎么回事吗?括号、指针和地址符号在同一个表达式中让我感到困惑。提前致谢!

c# - 通过 tcp 读取嗅探数据

我正在开发应用程序,它正在监听传入pc的数据并将其存储在数据库中当我尝试使用任何嗅探软件时,它会解码数据并且我可以读取它......但在我的代码中......我根本看不懂它以这样的格式出现1822262151622341817118815518211616121520941131921572041519912321413018224510453482062312258624219217426213385792952422362282081777270129716688629114817282188771708157542505055171418651781981425595109572

tcp - 二郎:gen_tcp:接受限制

我很感兴趣gen_tcp:accept函数的限制是什么?我的意思是什么是最大并发连接数?或者如何配置?(gen_tcp设置、ulimit或其他)get_tcp每秒可以接受多少连接? 最佳答案 最大并发连接数将取决于操作系统。在unix系统上,它将受到nfdsulimit的限制,以及内核配置为处理的最大连接数。每秒接受的连接数主要取决于您的应用程序代码。它必须及时为请求提供服务。待处理连接请求的最大数量由listen函数的backlog选项指定。大多数系统限制最大积压大小,在linux和freebsd上这个选项被命名为somaxcon

http - 通过 TCP/IP 端口不断读取/写入数据。哪一个?

不幸的是我不太了解网络。我正在编写一个有两个版本的程序。服务器版本和客户端版本。假设客户端版本安装在20台通过以太网连接到服务器的PC上。客户端版本需要不断地从服务器获取一些数据。数据是串行的。我想知道一种方法来广播每秒更新的数据,并使网络中的所有其他PC都可以使用它。我可以为此使用HTTP端口吗?比如将数据写入HTML页面或其他内容?或者是否有更好的端口或方法来执行此操作?任何想法将不胜感激。 最佳答案 这听起来像是一个非常简单的TCP套接字应用程序。服务器将设置为“监听”特定端口(您选择端口号,比如12345),每个客户端将在该

c - 什么信号最好在 TCP 服务器中处理?

我正在编写一个TCP服务器。它所要做的就是从TCP套接字读取/写入文本,并将此文本读取/写入服务器运行的文件系统上的文本文件。如果连接出现问题(例如,客户端关闭套接字),读/写阻塞的服务器会收到一个SIGPIPE信号。我想忽略它:服务器只是关闭其套接字端,因为现在无法进行通信。有什么好的办法吗?我还需要考虑其他信号吗? 最佳答案 许多服务器程序选择忽略SIGPIPE,并使用read/write的返回码来更好地理解断开连接。例如,read/recv在与另一端正确断开连接时返回0,在出错时返回-1将errno设置为多个选项之一。

sockets - WinRT 写入 TCP 流不起作用

我已经着手开发“WinRT”应用程序(适用于Windows8的“Metro”风格应用程序)。该应用程序应通过TCP流读取和写入一些数据。阅读工作正常,但写作不工作。您可以在下面找到使用完整.NETFramework的代码(有效):varclient=newTcpClient();client.Connect(IPAddress.Parse("192.168.178.51"),60128);varstream=client.GetStream();varwriter=newStreamWriter(stream);writer.WriteLine("ISCP\0\0\0\x10\0\0\