草庐IT

TCP-Sockets

全部标签

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循环迭代。基本上,随着我们扩大实验规模,这是严格的测试。

c# - 在 IIS 中托管 TCP 聊天服务器

我正在查看this在.NET中使用TcpClient的基本聊天服务器/客户端教程。现在我希望将聊天服务器放在我的网络托管服务提供商上。那可能吗?我可以以某种方式在IIS中托管此服务器吗?我可能只是在Application_Start中启动它,但我认为我不允许像那样在任何端口上打开连接。我有什么选择?我之前使用WCF和net.tcp制作了一个聊天应用程序,但我的托管服务提供商尚未在其IIS服务器上激活net.tcp。所以现在我正在考虑使用TcpClient来代替... 最佳答案 我会避免尝试在共享主机场景中使用TCP。为什么不改用HT

.Net TCP 客户端通信问题

我是网络编程的新手,正试图在ICEAPI测试服务器和我的应用程序之间建立通信。当我尝试登录到服务器时,下面的代码只工作一次。换句话说,当我发送登录消息时,服务器会成功登录回复我。一旦我得到这个,我将下一条消息发送到服务器,但作为回复我得到0,这意味着服务器已经断开连接。有人可以看一下我的客户逻辑并指出发生上述情况的正确方向吗?请帮我解决这个问题,因为我已经浪费了几天没有结果。谢谢你。PublicFunctionconnect()AsBooleanbConnected=TrueDimportAsInt32=Convert.ToInt32("80")DimserverAsString="6

c# - 如何处理多个TCP客户端进行通信

我正在开发多客户端TCP/IP服务器应用程序,它可能会从不同的客户端接收一些命令,并且基于这些命令,服务器将执行一些操作并相应地将响应发送回客户端.我的问题是如何处理多个客户端,以便在处理后将相关数据发送回该特定客户端。如何在向服务器发送数据时传递TCP客户端的引用,以及如何保存它以便将响应发送回其相关的TCPClient。我正在使用TCPlistner创建TCPClient对象。即oTCPClient=oTCPListener.AcceptTcpClient();。那么如何为每个TCPClient创建相关的NetworkStream进行通信。 最佳答案

.net - 快速提问 TCP/IP .Net Remoting

我有一个客户端应用程序,我在其中收集数据并将其存储在类数据包结构中。我可以将此类的对象发送到我的服务器应用程序吗?..这两个应用程序都在通过LAN网络连接的不同机器上运行。在.NetRemoting中,Object在Server中实例化,Objref与Client共享。现在我将这个Packet类的对象作为远程对象,用作客户端激活的对象。对象在客户端激活时创建。publicclassPacket:MarshalByRefObject{publicintsvrnumber;publicstringsvrname;[NonSerialized]publicstaticIObserverObs

sockets - 如何通过 RAW 套接字使用 TCP 校验和卸载

(使用Linux)使用原始套接字创建TCP数据包-事实证明,计算校验和是我在高性能网络中的瓶颈。由于NIC将支持校验和卸载,并且ethtool也说它已启用,我希望我可以使用校验和卸载。但是当我使用原始套接字时,似乎没有计算校验和。有没有办法使用原始套接字启用tcp校验和卸载?编辑:实际上我的机器/NIC(Thinkpadx201)的行为似乎不太符合逻辑:当使用普通的tcp套接字发送数据包时,所有校验和都是错误的,在环回接口(interface)上以及机器之间。有趣的是,另一台机器默默地传送数据包?Edit2:好的,现在我只是查看了错误机器上的数据包,卸载工作正常。但是当我将tcp_ch