草庐IT

Socket聊天

全部标签

java - SSL Socket OutputStream Write Slow only on Windows

服务器:Linux测试客户端:OSX、CentOS、Windows服务器/客户端编程语言:JavaServer-sideSSLServerSocketFactorysslserversocketfactory=(SSLServerSocketFactory)SSLServerSocketFactory.getDefault();SSLServerSocketsslserversocket=(SSLServerSocket)sslserversocketfactory.createServerSocket(9999);SSLSocketsslsocket=(SSLSocket)sslse

C 编程 - 套接字 ("Server"在聊天中显示 "Client"名称)

我还是C套接字编程的新手,多亏了这个网站,我学到了很多有用的东西,但我找不到如何让服务器在聊天中显示客户端名称,我知道我需要使用命令:“发送(SOCKETs,constchar*buf,intlen,intflags);”,但我不知道我做错了什么,语法错误或定位错误,idk,这些是代码:(我把这个“//服务器:#include#include#include#include//Sleep();#includeWSADATAdata;SOCKETwinsock;SOCKADDR_INsock;charbuffer[1024];charbuffer2[1024];charnome[50];

linux - 为什么关闭死掉的tcp-socket会影响另一个打开的tcp套接字?

我们面临一个奇怪的问题,即关闭死掉的tcp套接字(由拔掉电线引起)会影响另一个正常打开的tcp套接字。以下是详细信息:拓扑客户端A←→交换机A←路由器A:NAT←..网络..→路由器B:NAT→交换机B←→服务器B问题:假设客户端和服务器之间存在断开连接,这是由于拔出了电线造成的。拔掉电缆(在机器和交换机之间)后,我们从另一台机器登录客户端A,现在客户端和服务器之间将建立新的tcp连接,并且该连接正常。我们发现,如果在tcp内核仍在重新传输数据的同时关闭服务器的tcp连接,则另一个tcp连接似乎已被污染,并且从客户端到服务器的方向将变得不可用,这意味着通过通过连接的客户端永远不会被服务

java - 如何处理java.lang.Exception : Socket bind failed: [730013] exception

我需要将Tomcat的端口从8080更改为80,以便我可以作为http://localhost执行我的Web应用程序。我跟着已经回答了这个question计算器。当我启动tomcat7时,它会生成以下异常:SEVERE:FailedtoinitializeendpointassociatedwithProtocolHandler["http-apr-80"]java.lang.Exception:Socketbindfailed:[730013]Anattemptwasmadetoaccessasocketinawayforbiddenbyitsaccesspermissions.这就

java - 需要在一台计算机上使用多个 IP 来测试聊天应用程序

我正在使用Java制作聊天软件,因此我想在两台或多台不同的计算机(具体为IP)上对其进行测试。但我只有一台电脑。在开发过程中,我不能一次又一次地将我的应用程序带到friend家。请告诉我一种方法,以便我可以在一台PC上拥有2个或更多IP,以检查它是否正常工作。聊天后我想给它添加一个视频session功能,所以拥有多个IP是必须的(可能)。所以请提出一些方法。谢谢 最佳答案 有几种方法可以在一台计算机上设置多个IP地址:在您的计算机上安装多个网络接口(interface)卡(NIC)并为每个网卡分配不同的IP地址。将多个IP地址分配给

node.js - 在与本地网络服务器通信的 Electron 应用程序中实现 socket.io

我必须让本地运行的Web服务器与本地运行的WindowsElectron应用程序通信,以便发送一些消息,Electron应用程序会将其显示为通知。我看到有人推荐使用socket.io进行客户端和服务器之间的实时通信,但我发现很难理解它,因为没有我可以研究的示例来了解它的实际工作原理。欢迎提供有关此主题的任何来源和解释。 最佳答案 只需通过thistutorial.从简单的网络开始。当你让它工作时-将它移植到Electron。 关于node.js-在与本地网络服务器通信的Electron应

c++ - 如何使用此 SOCKET 调用 Poll()?

SOCKETserver=socket(PF_INET,SOCK_STREAM,0);bind(server,7.7.7.7,sizeof(7.7.7.7));listen(server,0);server.Poll(1,SelectMode.SelectRead);errorC2228:leftof'.Poll'musthaveclass/struct/uniontypeIP不一样,但3个函数可以正常工作,创建一个服务器可以监听并向客户端发送数据的套接字。我想轮询客户,usingthisexamplebutinC++.我可以在Poll()中使用哪个对象或结构?

c++ - socket编程与windows和unix/linux的混淆

您好,我正在尝试使用C++进行套接字编程。我需要确认或拒绝这个逻辑。我认为socket.h头文件是为UNIX系统设计的,而对于Windows,一切都是通过winsock.h完成的。这是正确的吗? 最佳答案 对于Windows,您需要winsock2.h和ws2tcpip.h。在Linux上,您需要sys/socket.h和sys/types.h用于套接字函数和netinet/in.h用于IP相关结构。其他一些区别:Windows使用SOCKET作为套接字描述符,而Linux使用intWindows有closesocket()来关闭套

C++ socket的send()导致系统错误10053

我正在尝试从我的客户端向我的服务器发送一条消息(目前它们都在同一个进程中运行,但我认为这不重要)。连接建立良好(我可以通过“CurrPorts”看到它-比TcpView用户友好得多)。但是,当我发送消息时,出现错误:“已建立的连接已被主机中的软件中止。”(编号10053)然后连接中断...相关代码如下:boolClient::Send(void*msg,intsize){intsockId=m_socket.GetId();structsockaddr_inremote=m_socket.GetRemotePoint().GetBasePoint();constchar*buf=(co

windows - 为什么 Windows 上的 Perl IO::Socket 在 64 个连接后提示 "Resource Not Available"?

我在Windows下使用Perl创建了一个服务器(ActivePerl5.10.1build1006),它在连接时fork,接受一些JSON数据,并将其写入数据库。在64个客户端连接到服务器后,我遇到了一个问题,在尝试fork时出现错误消息“资源不可用”。在Linux下运行这段代码,我发现有许多已失效的子进程,通过在父进程上添加wait()调用解决了这个问题。然而,这并没有解决问题。在Linux下运行代码可以超过Windows允许的64次调用。我还启动了一个虚拟Windows服务器,以防服务器受到限制,但全新安装的Perl导致了相同的64个连接限制。欢迎任何想法。useIO::Sock