草庐IT

m_socket

全部标签

sockets - 将数据分成多个 TCP 段

很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visitthehelpcenter.关闭10年前。当我使用发送或写入系统调用将套接字上的数据发送到目标节点时,内核/tcp是否强制使用同一TCP段中的整个缓冲区?它能分成多个TCP段吗?其次,IP是否在单个IP数据包上复用多个TCP段?

python - TCP 非阻塞 socket.connect() 和 socket.recv() 错误问题。 (Python 或 C)

我正在用Python脚本对一个简单的HTTP重定向服务器进行一些压力测试。该脚本设置了带有非阻塞套接字的epoll(边缘触发模式)。但是我观察到一些我不太明白的东西,1)epoll可以在connect()过程中得到ECONNREFUSED和ETIMEOUTerrno。它们不是都表示远程服务器无法接受连接吗?它们有何不同,客户如何区分?2)有时当epoll通知EPOLLIN时,socket.recv()返回空字符串而不会抛出任何异常(或C中的errno),我可以继续读取套接字而不会收到任何异常或错误,它总是返回空字符串。这是为什么?谢谢, 最佳答案

sockets - 在 Netty 上发送图像文件的套接字发送缓冲区的最佳设置

我正在考虑在Netty中实现一个HTTP图像服务器,我想知道最佳发送缓冲区大小应该是多少:ie.bootstrap.setOption("sendBufferSize",1048576);我读过HowtowriteahighperformanceNettyClient但我想知道将此值设置得太小或太大的后果是什么。我提供的图片大多在100K到5MB左右(平均1MB)。我认为较大的值(1MB)会导致操作系统内存充满TCP缓冲数据,但是将其设置为较小的值(即8192KB)是否会降低性能? 最佳答案 您可能会找到thisarticle有用。

sockets - 套接字编程客户端连接

我正在使用客户端-服务器编程,我指的是这个link并且我的服务器已成功运行。我需要不断地向服务器发送数据。我不想每次在发送每个数据包之前都调用connect()。所以第一次我只是创建了一个套接字并发送了第一个数据包,其余的数据我只是使用write()函数将数据写入套接字。但我的问题是,如果服务器不存在或我的以太网被禁用,我的问题是在连续发送数据时它仍然成功地将数据写入套接字。有什么方法可以让我一次创建套接字并在知道服务器故障的情况下连续发送数据?这样做的主要原因是,在服务器端,我使用的是GPRS调制解调器,每次为每个数据包调用connect()函数时,调制解调器都会挂起。我使用下面的代

sockets - 使用单个 SSH 连接在远程计算机上使用多个终端

我在远程服务器上的某个端口上通过SSH运行一个进程。该过程基本上是一个等待(监听)连接的TCP服务器。所以只要它在运行,我就不能使用终端,因为它是一个阻塞应用程序。我想通过相同的SSH连接实例运行另一个应用程序(TCP客户端)以连接到该TCP服务器。我使用屏幕分离第一个进程(TCP服务器)并连接到服务器,但我看不到TCP服务器应用程序的输出。有没有办法使用SSH在远程机器上模拟两个终端? 最佳答案 所以我找到了解决这个问题的办法。下面基本上是一个链接,解释了我如何才能准确地实现我所需要的。即,使用单个SSH连接打开多个终端。http

sockets - 在 TCP 三向握手之前获取 INADDR_ANY 客户端套接字的源 IP 和端口?

我在Windows7上,在connect与SO_REUSEADDR之前使用bind,并将本地地址结构设置为IP地址INADDR_ANY和端口0(零),以便让操作系统选择客户端套接字的源详细信息。首先,我读到在连接到服务器之前无法获取源IP,因为此时正在选择它并且多个地址可能有效。但是在连接之前选择了端口,那么有什么办法可以得到呢?(getsockname()看起来不起作用)。其次,关于源IP,有没有办法在数据包发送到服务器之前得到它?我需要操作系统选择源IP和它开始三向握手之间的具体时间。connect()函数控制着两者。 最佳答案

sockets - Akka 远程连接

我有2个应用程序,分别是app1和app2。在机器1上,app1和app2都在运行,但在机器2上只有app2运行,因为大部分工作都由app2完成。这些应用程序使用Akka。使用akkaremoting,我希望能够将消息从机器1上的app1传递到机器2上的app2。当app1和2在同一台机器上时,它们能够相互交互。但是,当机器1上的应用程序1尝试连接机器2上的应用程序2时,出现以下错误...EndpointWriter-AssociationError[akka.tcp://deal-rest@127.0.0.1:4242]->[akka.tcp://deal@:4241]:错误[无效地

java - Jmeter Socket连接错误中的TCP Sampler

我正在尝试通过TCP采样器将消息从Jmeter发送到服务器我已经配置了IP、端口号和发送到消息框的消息,然后我开始访问服务器,此时我在Jmeter中收到以下警告。同时让我知道Jmeter中的TCPClientClassName、EndOfLineByte字段值。015/04/1718:00:30WARN-**![jmeter.protocol.tcp.sampler.TCPSampler:Couldnotcreatesocketfortcp://port&IPjava.net.ConnectException:Connectiontimedout:connect][1]**atjava

.net - 使用 .NET Sockets C++/CLI 传输/接收位图

我正在为我的Schoolproject编写一个基于Internet/多人游戏的绘图游戏。所以现在我需要编写一个PictureBox,它始终与服务器一致。首先,我使用的是.netTCP客户端和监听器,它们已经可以正常工作(我正在发送和接收一些字符串)。我有2个代表服务器和客户端的静态类。我的基本想法是在Byte[]中将来自PictureBox的bmp转换为通过NetworkStream使用BinaryReader传输它。在另一端,接收到的Byte[]将被转换回bmp并进入PictureBox。这是我的两个函数:voidServer::sendBMP(Bitmap^bmp){array^b

sockets - Ettercap TCP数据包类型

抱歉,如果我的问题看起来很愚蠢,但我想了解在嗅探TCP数据包时Ettercap的数据包事务详细信息旁边写的字母的含义,例如:ThuApr1604:07:302015TCP192.168.1.100:1000-->192.168.1.101:1000|AMessagehere.行尾的“A”字母(|A)是什么意思?我在各种消息中看到了不同的字母,但我不明白它们的意思A,S,AP,SA,FA,RA等等。我在互联网上搜索过,但我找不到任何关于这个的文档(以及关于Ettercap的一般文档)。你能解释一下它们的含义,或者提供一个解释它们的链接吗?谢谢! 最佳答案