草庐IT

tcp_sack

全部标签

c# TCP/IP 服务器和客户端

我想编写类似TCP/IP服务器和客户端的程序,但我希望它是基于Web的,因此在客户端,它们可以在任何Web浏览器上运行并能够连接到服务器。我该如何处理,我想使用visualstudioc#。我查看了网络套接字,这是要走的路吗?? 最佳答案 您可以在Silverlight中开发客户端,服务器端可以是标准的C#控制台/winforms应用程序。 关于c#TCP/IP服务器和客户端,我们在StackOverflow上找到一个类似的问题: https://stacko

c# - 如何从 tcp 段构建消息

在C#中工作,我使用SharpPCap从winpcap跟踪中获取段。我需要重建该跟踪中发送和接收的所有消息。在我的情况下,客户端和服务器的IP永远不会相同。客户端的端口不一定改变。消息使用的协议(protocol)可能是HTTP或我不知道的自定义协议(protocol)。这就是我目前的做法:if(ipPacket.Protocol==IPProtocolType.TCP){TcpPackettcpPacket=(TcpPacket)ipPacket.PayloadPacket;PacketdataPacket=tcpPacket;while(dataPacket.PayloadPack

在 C 中实现 tcp ping 时可配置的速率和模式

我正在尝试实现一个tcpping功能。而且我希望可以配置发送消息的速率和模式。例如,在5秒内发送5000条消息,首先突发2000条消息,然后3条消息/毫秒持续1000毫秒。知道如何实现吗?提前致谢。ps,我是用csocket编程,读写收发msg。 最佳答案 我可能遗漏了一些东西,但您所要做的不只是循环发送2000条消息,然后将线程置于Sleep()状态1毫秒,每次发送3个数据包,直到发送完剩余的3000条消息数据包。您应该知道的一件事是,很难衡量代码执行所需的时间。由于您使用的是使用缓冲区的TCP,如果没有足够的缓冲区空间,send

networking - 丢弃 TCP 连接,这正常吗?

我在我的本地机器上设置了这个简单的脚本:#!/usr/bin/pythonimportsocketfromdatetimeimportdatetimeprint"Connectingtotestserver"s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)s.connect(("mydomain.com",9090))start=datetime.now()totalbytes=0try:whileTrue:data=s.recv(512)totalbytes+=len(data)print"Got%dbytesofdata"%(le

java - java TCP套接字关闭和重新打开中的问题

我正在用javaswing编写一个应用程序,它使用套接字连接到python代理,通过套接字发送和接收数据并关闭,现在当我尝试重新打开套接字时,出现错误,我尝试在套接字关闭后检查套接字状态,但我遇到了以下问题clientSocket//ismyjavasocket,clientSocket.isConnected()//returnstrueclientSocket.isBound()//returstrueclientSocket.isClosed()//returntrue谁能帮忙,我怎样才能确定我的套接字的状态? 最佳答案 不要

c++ - cpp-netlib 如何使此类示例通过 TCP 返回(删除 http header )?

我知道有boost::asio是为这些东西而制作的,但如果有一种方法可以在使用http和不使用http之间切换,那对我来说会容易得多...(我的意思是我有10个服务使用http和4使用TCP但做完全相同的事情(接收httpget请求并返回TCP消息)所以这样的功能真的对我有帮助)那么让我们看一个exampleofhttpserrver#include#include#includenamespacehttp=boost::network::http;structhello_world;typedefhttp::serverserver;structhello_world{voidope

sockets - 如何使用 C 中的套接字读取流的 TCP 数据包?

让我先说说我想做什么。我正在尝试编写一个非常简单的代理服务器。我使用套接字API来创建套接字。socket=socket(AF_INET,SOCK_STREAM,0));我的代理服务器工作正常,直到我尝试使用它来获取流数据。所以我所做的是我的服务器套接字监听请求并解析它们,然后将它们转发到实际的服务器,然后我使用read()调用来读取数据包,然后我盲目地将它转发回客户端。对于所有html页面和图像,它工作正常。但是当我尝试转发流媒体视频时,我做不到。我的套接字总是返回应用层数据(HTTP数据包),但在流式视频中只有第一个数据包是http,其余的都只是TCP数据包。所以我只能转发第一个H

c# .net 打开外部 tcp 端口

我制作了一个TCP服务器,我一直在本地测试它并且运行良好,现在我已经在我的防火墙上打开了端口,但我仍然无法在外部看到该端口。我认为这取决于我的套接字配置,我该如何纠正?System.Net.IPHostEntrylocalhost=System.Net.Dns.GetHostEntry(System.Net.Dns.GetHostName());#regionBindSocket&Listenforconnections,acceptingAsynchronouslySystem.Net.IPEndPointserverEndPoint;try{serverEndPoint=newSy

MySQL TCP 连接

我有一个MySQL数据库,我想从另一台计算机连接到它,最好使用TCP/IP。最简单的方法是什么。目前我尝试只输入计算机的IP地址,但出现错误#1130,这没有帮助。有什么好的简单方法可以做到这一点? 最佳答案 确保“skip-networking”不在您的my.cnf文件中(如果在更改后重新启动MySQL),并且您已经创建了一个有权从远程主机连接的用户。像这样的东西:将mydb.mytable上的SELECT、INSERT、UPDATE、DELETE授予“myuser”@“myotherhost”,IDENTIFIEDBY“some

TCP 客户端服务器 : blocking connect call

我正在构建一个需要TCP进行通信的分布式应用程序。最终实验将涉及数千台服务器,与它们通信的客户端数量大约是其10-100倍。当前的设计是为每个事务建立连接、通信然后关闭连接。由于我只做过一些带有几个客户端的简单多线程服务器,所以我选择了阻塞套接字进行通信(听起来很简单)。我不确定这种方法是否会扩展得足够高。有人可以分享他们的经验吗?目前,代码在具有三个服务器进程和几个客户端的单台机器(48核/本地环回)上运行。客户端有一个紧密的for循环,他们建立连接,与任何一台服务器通信,然后断开连接。这些初始测试要求客户进行大约一百万次for循环迭代。基本上,随着我们扩大实验规模,这是严格的测试。