草庐IT

compact_protocol

全部标签

language-agnostic - 在 TCP 之上是否有针对高吞吐量和低延迟进行优化的协议(protocol)/标准?

是否存在针对高吞吐量和低延迟优化的TCP协议(protocol)/标准?我唯一能想到的是FAST.目前我只设计了一个简单的基于文本的协议(protocol),由特殊字符分隔。我想采用一种专为快速传输而设计的协议(protocol),并且可能支持对通过TCP套接字传输的数据进行压缩和缩小。 最佳答案 我们可以通过以下任何一种方式,在UDP之上利用TCP的面向连接/可靠的特性,而不是使用重量级的TCP:UDP-basedDataTransferProtocol(UDT):UDT通过添加拥塞控制和可靠性控制机制构建在用户数据报协议(pro

html - 如果HTTP是超文本传输​​协议(protocol),我们如何上传文件和图片呢?

很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visitthehelpcenter.关闭9年前。据我所知,HTTP代表超文本传输​​协议(protocol),您可以在该协议(protocol)中以文本格式将数据传输到网络服务器或从网络服务器接收数据。如果是这种情况,我们如何才能将文档/图像提交或上传到网络服务器?

java - Tcp协议(protocol)和远程过程调用有什么区别?

任何人都可以解释一下哪种协议(protocol)更具可扩展性以及两者之间的区别TCP(传输控制协议(protocol))和RPC(远程过程调用)。 最佳答案 RPC-远程过程调用基本上是一种进程间通信形式,它允许一个程序直接调用同一台机器或网络上另一台机器上的另一个程序中的过程。有关详细信息,请参阅维基百科文章:RemoteprocedurecallRPC在(使用)TCP之上运行。TCP允许计算机在保证交付的情况下相互发送任意长度的数据。RPC在与POP、SMTP和其他协议(protocol)相同的级别上运行。这些协议(protoc

sockets - FastCGI with protocol = IIS 7 上的 Tcp

我曾尝试使用IIS7(包含在Windows7中)来测试我目前正在开发的FastCGI库。根据最初的FastCGI规范,当一个应用程序被调用时,它的stdin句柄被替换为一个套接字。默认情况下,IIS使用命名管道,但可以将其配置为使用TCP,即套接字。当我尝试在我的测试应用程序中使用这个套接字时,我收到一个WSAENOTSOCK错误。当我尝试改用命名管道时(在重新配置IIS之后),我遇到了类似的问题。例如,当我尝试使用PeekNamedPipe时,我得到了一个ERROR_INVALID_HANDLE。ReadFile和WriteFile但是可以正常工作。我猜问题是这个句柄是从父进程继承的

sockets - 如何使用 TCP 协议(protocol)检查一个字节是否发送成功?

很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visitthehelpcenter.关闭10年前。我在进行网络编程时遇到问题。我正在使用TCP协议(protocol)在服务器和客户端之间进行通信。我的代码正在运行,但我还无法检测到数据是否已成功发送或是否失败。我有以下问题:如何检查字节是否已通过套接字TCP成功发送?TCP协议(protocol)中的确认(ACK)是如何工作的?如何使用套接字编程进行安全通信?您可以使用C#、Java或PHP进行解释。

python - twisted中tcp协议(protocol)数据丢失问题

我用twisted.internet模块写了一个基于tcp的服务器。这是一个高并发环境。我通常通过protocol.Protocol的实例发送数据,但我遇到了问题。一些tcp连接可能会因为超时而关闭,而且我似乎无法收到任何通知,所以我在关闭的连接中写入的数据可能会丢失。数据丢失问题可能是由其他方式引起的。有什么好的办法控制吗?(socket.send可以返回一个状态,transport.write好像没有返回) 最佳答案 这个问题不是Twisted特有的。如果您想知道数据已收到,您的协议(protocol)必须确认已收到数据。sen

tcp - 二 通用协议(protocol)与TCP握手

因此,这两个普遍问题表明,没有确定的方法可以知道我们通过不可靠channel与之通信的另一方是否收到了我们的消息。这非常类似于我们发送synsynackack并建立连接的TCP握手。这不是反对两个普遍问题的主张吗? 最佳答案 这两个普遍问题确实是TCP的异步模型,这就是为什么(如理论结果所示)两个端点不能同时对连接状态有共同了解的原因。每个分布式协议(protocol)协议(protocol)处理这个问题的方式是始终promise安全(不会发生任何坏事),但不能保证active(最终会取得进展)。活力不在你手中。顺境时,可以努力做到

networking - 理解/逆向工程顶层网络协议(protocol)的好工具

手头有一个有趣的问题。我有一个通过客户端应用程序(不是浏览器)运行的角色扮演MMOG,该客户端应用程序将我的玩家的操作发送到服务器,该服务器通过发回数据包使所有玩家保持同步。现在,游戏使用基于TCP/IP的顶层协议(protocol)发送数据。但是,wireshark不知道正在使用什么协议(protocol),并将TCPheader以外的所有内容显示为转储。此外,这个转储没有任何纯文本字符串。尽管该游戏具有聊天功能,但在该转储中的任何地方都看不到发送的聊天字符串作为纯文本。我的任务是对协议(protocol)进行一些逆向工程,以找到有关数据包中包含的数据的一些非常基本的内容。有谁知道为

php - 在 mysql connect (PHP) 中指定协议(protocol)

如何在myql_connect()中指定protocol=TCP? 最佳答案 通过阅读手册:Wheneveryouspecify"localhost"or"localhost:port"asserver,theMySQLclientlibrarywilloverridethisandtrytoconnecttoalocalsocket(namedpipeonWindows).IfyouwanttouseTCP/IP,use"127.0.0.1"insteadof"localhost".http://www.php.net/manua

C# 使用 tcp 和 udp 协议(protocol)

我需要在我的应用程序中使用udp和tcp连接,TcpClient/TcpListener很少处于事件状态,但udp是主要用途。这是服务器代码:staticvoidMain(string[]args){TcpListenerlistener=newTcpListener(IPAddress.Any,25655);listener.Start();Socketsck=listener.AcceptTcpClient().Client;UdpClientudpServer=newUdpClient(1100);IPEndPointremoteEP=newIPEndPoint(IPAddres