草庐IT

tcp_client

全部标签

mobile - 使用 TCP 的小数据包不是个好主意吗?使用 UDP 更好

我看到一些帖子说,当您将信息分解成更小的数据包时,TCP的吞吐量会降低。但我正在制作一个真正只需要发送少量信息的游戏服务器。这是一款回合制策略游戏,所以我可以用1个服务器支持的玩家数量比延迟更重要,我说过无论如何我想了解控制延迟以用于future的项目。那么对于很多小数据包来说,UDP是更好的选择吗?我确实需要它们是可靠的,所以如果我丢失数据包,我将不得不重新发送......另外,UDP数据包的实际丢失率是多少?假设服务器在正常情况下运行,它会高达5-10%吗?我应该提到客户端将在移动设备上...他们的丢失率可能比pc高得多? 最佳答案

Android 通过 TCP/IP 连接到电脑

我无法将我的安卓模拟器连接到我的电脑。我可以向android发送信息,但在发回时却失败了。这是我目前所拥有的:publicclasssendDataToRegionextendsAsyncTask>{finalTextViewwho=(TextView)findViewById(R.id.txtWho);finalTextViewwhat=(TextView)findViewById(R.id.txtWhat);finalTextViewwhen=(TextView)findViewById(R.id.txtWhen);finalTextViewwhere=(TextView)find

linux - 如果我在 Linux 上使用原始套接字,内核是否会丢弃带有错误 TCP 校验和的传入数据包?

现在我正在编写一个使用原始TCP套接字的程序。如果有任何带有错误TCP校验和的传入数据包,内核会将它们传递给程序还是丢弃它们?我想知道的原因是弄清楚我是否需​​要手动执行该检查。 最佳答案 由于您自己编写TCP(使用“IP”套接字/层)将必须处理TCP校验和。下面的任何层或任何校验和都将由底层操作系统处理。有了TCP/IP协议(protocol)栈(从下到上的顺序)链接Internet传输申请 关于linux-如果我在Linux上使用原始套接字,内核是否会丢弃带有错误TCP校验和的传入数

tcp - OSI 模型 : SSH vs HTTP

我想知道,为什么SSH在ModelOSI的session层,而HTTP在应用层?正如我所见,两者都通过TCP/IP通信工作,那么为什么要将这两种协议(protocol)区分到两个不同的层呢? 最佳答案 HTTP不关心它以何种方式发送,它只包含文本,然后可以由“说”HTTP的应用程序解析,而SSH在现有网络上创建“虚拟连接”(session)并允许更高级协议(protocol)(如HTTP)以更安全地传递 关于tcp-OSI模型:SSHvsHTTP,我们在StackOverflow上找到一

node.js - 如何在 Node.js TCP 服务器中追踪 ECONNREFUSED?

我已经使用dnode编写了一个TCP服务器.基本上,一切正常。现在我还创建了一些单元测试,其中一个失败并返回ECONNREFUSED。奇怪的是被测代码在单元测试之外、应用程序内部运行时效果很好,如果我在失败的测试之前注释掉测试,则被测试的代码会起作用。很明显,两个测试之间似乎存在相互依赖关系。两者都单独工作,但不能相互配合。问题是我得到了一条毫无用处的错误信息:Error:connectECONNREFUSEDaterrnoException(net.js:768:11)atObject.afterConnect[asoncomplete](net.js:759:19)很高兴看到这是一

python 3 : TCP Client/Server Broken Pipe Error

我正在编写一个TCP客户端/服务器,并且在代码的后半部分遇到了这个brokenpip错误。由于对Python和套接字编程的了解有限,我无法确定原因,因此无法解决问题。我将不得不包括所有代码,因为可能存在某种冲突导致我不知道的这个问题,对于长篇文章感到抱歉。我在下面标记了我遇到问题的地方,到目前为止一切正常。服务器代码:importosfromsocketimport*importurllibimporttimeHOST=''#WearethehostPORT=29876PORT2=29877ADDR=(HOST,PORT)ADDR2=(HOST,PORT2)BUFFSIZE=4096s

c++ - tcp通信的线程

我的问题是关于线程的使用。我正在制作一个通过TCP/IP连接到设备的应用程序。我正在使用boost::asio库。我已决定分别使用读取或监听线程和写入线程来监听和写入设备。我的困惑是创建处理通信的套接字的函数是否也应该是一个线程。谢谢:) 最佳答案 在我的客户端类中,我创建了2个工作线程来处理发送和接收消息,这些消息用于与多个服务器的多个连接。创建这2个工作线程的线程恰好是用户界面线程。这是我的代码的样子://CreatetheresolverandqueryobjectstoresolvethehostnameinserverPa

perl tcp 客户端不显示传入数据

我是网络编程新手,无法解决这个问题我有一个服务器(某种LPT端口到TCP/IP代理),它会自动尝试以随机间隔建立连接。我需要监听特定端口并与服务器通信。那就是客户端。它适用于perltcp服务器。但在这种情况下,它会等待......没有任何反应#!/usr/bin/perl-wuseIO::Socket;my$sock=newIO::Socket::INET(LocalHost=>'192.168.1.1',LocalPort=>'7000',Proto=>'tcp',Listen=>1,Reuse=>1,);die"Couldnotcreatesocket:$!\n"unless$s

python - Windows 上的 gevent TCP 服务器

到目前为止,我一直在尝试使用gevent创建一个TCP服务器,但没有(任何重大)成功。我认为问题出在Windows中(我之前在Windows下遇到过一些套接字问题)。我在Windows7下使用的是Python2.7,gevent0.13。这是我的代码:fromgeventimportsocketfromgevent.serverimportStreamServerdefhandle_echo(sock,address):try:fp=sock.makefile()whileTrue:#Justechoswhateveritreceivestry:line=fp.readline()ex

C语言。 TCP 服务器-客户端,字符串传递错误

我在将字符串作为参数传递给我的客户时遇到问题,我是C的新手,所以无法真正弄清楚发生了什么。我设法将一个字符传递给服务器,但遇到了字符串问题。此代码表示来self的服务器的主循环:while(1){charch[256];printf("serverwaiting\n");rc=read(client_sockfd,&ch,1);printf("Themessageis:%s\n",ch);write(client_sockfd,&ch,1);break;}客户端代码:charch[256]="Test";rc=write(sockfd,&ch,1);服务器打印的信息如下:谁能帮我一下。