草庐IT

TCP_CORK

全部标签

perl - TCP Server 多次接收和响应

我正在尝试在运行该应用程序的同一台PC上模拟TCP服务器。我不知道它是否可以在Perl中完成,因为我不是很有经验。使用下面的代码,第一个回复有效,但我不知道如何实现第二个回复。#!/usr/bin/perl-wuseIO::Socket::INET;usestrict;my$socket=IO::Socket::INET->new('LocalPort'=>'3000','Proto'=>'tcp','Listen'=>SOMAXCONN)ordie"Can'tcreatesocket($!)\n";print"Serverlistening\n";while(my$client=$s

python - 是否可以使用 Python 将数据包注入(inject)现有的 tcp 连接?

正如标题所说,我想使用现有的tcp连接发送数据。所述连接已经由第3方程序建立。我找不到太多关于此的信息,可以肯定地说,我根本不知道它是如何工作的。操作系统是Windows。我首选的编程语言是python-我不想使用第3方python模块,但如果它们能让我的生活更轻松,我会使用。只是澄清一下,以防您不确定我想做什么:我想发送数据,就好像它是由另一个程序发送的一样;很像WPEpro的发送功能。更新:从技术上讲,我不能手动设计TCP数据包,然后告诉网络设备(或操作系统)发送该数据包吗?这与注入(inject)套接字所做的事情不完全一样吗?编辑:维基百科说接收主机确认它收到的数据包,这使得这有

networking - 如果我设置 OpenVPN UDP 连接,我可以使用 TCP 吗?

如果我通过udp(protoudp)建立了openvpn连接,我可以在其中使用tcp(tcp以某种方式转换为udp),还是只能使用udp? 最佳答案 简而言之:是的,您可以通过通过UDP传输的VPN隧道发送TCP。事实上,无论您选择何种传输方式,您都可以通过OpenVPN隧道支持任何协议(protocol)。 关于networking-如果我设置OpenVPNUDP连接,我可以使用TCP吗?,我们在StackOverflow上找到一个类似的问题: https:

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