草庐IT

tcp_client

全部标签

networking - 禁用 TCP SYN 重传

我正在开发一个通过TCP连接到服务器的客户端。服务器被配置为如果一个服务器关闭,则与另一台服务器建立连接。我的要求是如果2s内没有和第一台服务器建立TCP连接,客户端需要和第二台服务器建立连接。以下是我基于测试的观察-TCPSYN消息由客户端发送到第一个服务器以建立连接。由于第一台服务器宕机,1s后,TCPSYN重传发送给第一台服务器。2秒后(由于处理和网络延迟),客户端将TCPSYN消息发送到第二个服务器。因此,将SYN消息发送到第二台服务器需要3秒(1秒+2秒),这不是我想要的。我希望TCPSYN消息在2秒内发送到第二台服务器。为了在2秒内将TCPSYN消息发送到第二个服务器,我想

sockets - 从没有数据大小的lua tcp套接字接收数据

我一直在使用到游戏服务器的套接字tcp连接。这里最大的问题是游戏服务器发送数据时没有任何分隔符——因为它发送的数据包长度在数据内——这使得无法使用socket:receive("*a")或"*l"。从服务器接收到的数据没有静态大小,并以十六进制格式发送。我正在使用这个解决方案:whiletruedolocalrect,r,st=socket.select({_S.sockets.main,_S.sockets.bulle},nil,0.2)fori,coninipairs(rect)doresp,err,part=con:receive(1)ifresp~=nilthendataRec

python-3.x - Python3.5 Asyncio TCP 扫描器

我是Python3.5的新手,除了在Python2.7中少量使用Twisted之外,一般来说是Async。我正在将它构建到一个更大的应用程序中,我需要一小部分(而不是一个单一的框架)来执行TCP端口扫描。importasynciofromrandomimportSystemRandomdefrun(task,*,loop=None):ifloopisNone:loop=asyncio.get_event_loop()returnloop.run_until_complete(asyncio.ensure_future(task,loop=loop))asyncdefscanner(ip

仅当远程 TCP 服务器关闭时,Java NIO 客户端才会导致文件描述符泄漏

下面的程序充当TCP客户端并使用NIO打开到远程服务器的套接字,如下所示privateSelectoritsSelector;privateSocketChannelitsChannel;publicbooleangetConnection(Selectorselector,Stringhost,intport){try{itsSelector=selector;itsChannel=SocketChannel.open();itsChannel.configureBlocking(false);itsChannel.register(itsSelector,SelectionKey.

tcp - phoenix 框架中的原始 tcp 连接

我绝对是elixir/phoenix框架的新手。虽然我已经了解了channel(websocket)功能,但我还需要原始tcp连接的服务器处理(Controller等)。我该怎么做? 最佳答案 您的要求含糊不清,因此需要一个相当含糊的答案,但我会尽力而为。查看:http://erlang.org/doc/man/gen_tcp.htmlhttp://learnyousomeerlang.com/buckets-of-socketshttps://excasts.com/episodes/a-connection-acceptorEx

linux - 当我使用 TCP 发送数据时,我如何知道数据是否到达?

当我使用TCP发送数据时,write()函数只是确保数据已复制到TCP发送缓冲区,但如果TCP没有成功发送数据,我怎么知道?有信号吗?或者什么? 最佳答案 简答:你不知​​道。按照惯例,远程TCP对等方会发送一个响应,确认您的数据。这是在传输层协议(protocol)TCP之上构建应用层协议(protocol)的第一步。更长的答案:这个问题是更高级协议(protocol)(如HTTP、STOMP、IMAP等)的主要动机。butifTCPdoesn'tsenddatasuccessfully,howdoIknow?write()系统调

java - 从 TCP 流中读取多行

希望构建一个tcp监听器,它将从连接中读取信息并响应一些数据。我已经让程序在单行输入上工作,但是当我发送多行时它不起作用。这是我使用的代码try{SocketclientConnection=null;clientConnection=serverSocket.accept();clientConnection.setSoTimeout(5*1000);StringtmpLine=null;BufferedReaderinFromClient=newBufferedReader(newInputStreamReader(clientSocket.getInputStream()));f

tcp - 如何在 Raspberry Pi 中打开 TCP 端口

我有一个Raspberrypi,我想在上面打开一个TCP端口,例如端口:11000我试图在互联网上找到执行此操作的命令,但我找不到。如果有人在这件事上帮助我,我将不胜感激谢谢! 最佳答案 我建议深入了解网络的来龙去脉,因为有很多选择,而且您需要了解向世界开放端口的安全隐患。IP地址每天每时每刻都会被扫描,所以要非常小心。这是一个在Bashshell上使用netcat(nc)的简单示例。以下是两(2)个节点;我的RaspberryPi2和我的一台Ubuntu服务器;这是在同一个网络上。除了SSH之外,两个节点都没有任何开放端口。但是,

c++ - 使用 SFML TCP 套接字和数据包损坏文件

我正在编写代码,让客户端连接到服务器,然后服务器响应并发送.exe文件。我正在使用SFML网络库来编写我的代码。我可以成功发送大小正确但md5sum错误的文件,这意味着某些内容正在更改,但我不知道在哪里。这是我的代码,有人能发现我的错误吗?服务器:#include#include#include#include#includeintmain(){std::stringi{"HelloWorld"};sf::Packetpacket;//packetBuffer;std::stringtmp;std::ifstreamfis("C:\\Users\\CyberSecurity\\Docu

c - Linux TCP 连接被拒绝

我正在做一个TCP连接程序,我想将地址和连接步骤设置为一个函数。该程序可以编译,但是当我运行它时,屏幕显示:错误连接:连接被拒绝。请你帮助我好吗?这是服务器代码:#include#include#include#include#include#includevoiderror(char*msg){perror(msg);exit(1);}structsockaddr_increateSockAddr(intportnum){structsockaddr_inaddr;addr.sin_family=AF_INET;addr.sin_addr.s_addr=INADDR_ANY;addr