草庐IT

my_socket

全部标签

sockets - RPC clnt_call 立即发送 tcp [FIN, ACK]

我在VM上的CentOS6.5中编程,用C编写代码我打电话client_status=clnt_call(clnt,NFSPROC3_GETATTR,(xdrproc_t)xdr_GETATTR3args,(caddr_t)&args,(xdrproc_t)xdr_GETATTR3res,(caddr_t)&result,TIMEOUT);其中clnt是我创建的客户端,一次使用clnt_call并将其保留用于下一次调用(而不是为每次调用创建一个新的)我仍然没有意识到触发它的原因是什么,但偶尔我会收到一条消息“RPC:无法接收”,然后销毁客户端并创建一个新的客户端进行重传-这总是有效的。

sockets - TCP 服务器被只有 "connect"而没有发送任何数据的客户端淹没

我已经使用.NETTcpListener创建了一个TCP服务器。我担心它会如何通过发送大量类似于DoS类攻击的虚假连接来滥用它。我创建了一个小型控制台应用程序来重复启动与服务器的连接(仅“连接”而不传输其他类型的数据)。“最大允许并发连接数限制”是服务器中的一项设置,旨在防止服务器不堪重负,这一设置立即得到满足。这使我的服务器几乎毫无用处,因为它无法接受新连接,除非其他假连接断开连接。这证明我的担心不是空穴来风。我们有什么办法可以从应用程序级别防止这种情况发生吗?我想要求客户端在连接时发送一种token,服务器会拒绝不发送的连接,但我认为TCP不会那样工作。依赖外部解决方案是唯一的方法

java - 我在尝试使用 JSch 或 Socket 连接到 channel 时感到困惑和卡住了?

所以我正在尝试连接到要获取模拟数据的设备(RedPitaya)。它设置了控制设备的scpi命令。我可以通过labview和使用腻子来控制这些。我正在尝试编写可以访问设备scpi服务器并向其发送命令以使设备完成的android应用程序。该设备的编程方式是,您首先必须使用SSH连接连接到服务器,我使用JSch没有问题,从那里您可以发送命令以启动scpi服务器并打开连接。现在这是我正在努力解决的问题,我不明白为什么,当SCPI服务器启动时,它是通过设备的Ip和原始端口5000访问的,但我似乎无法编写一段代码连接到此并执行SCPI命令。我不确定这是连接还是我发送数据的方式。这是代码public

javascript - chrome.sockets.tcp.secure 和 TLS 握手未按预期工作

我正在使用新的套接字API(Chrome.sockets.tcp)开发Chrome应用程序。我已经能够成功地让所有HTTP请求正常工作,没有任何问题。我遇到的问题是使用TLS握手的HTTPS登录。我们创建了一个VisualStudioC#(RestRequest)应用程序。我们可以使用HTTPS进行连接。使用Wireshark,我注意到成功的通信是使用TLSv1实现的。我尝试了多种解决方案,并引用/试验了以下链接,并试图提出一个解决方案。https://groups.google.com/a/chromium.org/forum/#!msg/net-dev/U2ecAARKvAg/WI

java - 可以java.net.SocketException : Socket closed exception occur due to windows?

我有一个硬件设备,我使用TCP/IP与它通信。在运行应用程序时,我只在日本计算机上遇到此异常(java.net.SocketException:套接字已关闭)。在印度和德国的计算机上,它运行良好。从日志中可以看到Socket连接建立成功。您能否对导致此问题的Windows或Java或任何其他相关设置进行镜像? 最佳答案 套接字异常是由连接断开引起的。连接可能已在源操作系统、网络层或目标操作系统之间的任何位置断开。诊断的起点是远程登录目标主机/端口并通过网络堆栈逐层移动 关于java-可以

sockets - 使用 TCP 发送大文件

我的客户端程序需要向服务器程序发送一个大文件。在客户端连接到服务器并且服务器接受它之后,客户端指定它将要发送的文件的名称。现在,客户端需要使用TCP发送文件。我知道如果文件的大小很小(小于1k字节?),我可以使用对套接字编程中的“发送”函数的一次调用直接发送它。但是,如果我的文件很大,比如大约100MB,是否同样有效?我想知道“发送”本身是否处理将大数据分成数据包并可靠地发送它们的任务,还是应该由我来处理?谢谢。 最佳答案 我正在尝试类似的东西&我的客户端代码如下所示staticvoidsend_file(char*ipAddres

C# 异步套接字 : How much data does the Socket store when the call to BeginReceive is delayed?

我正在使用C#的异步套接字并使用BeginReceive将数据从套接字读取到一个8192字节的byte[]-Buffer中。但是,当新数据包在再次调用BeginReceive之前进入时会发生什么?我当前的设置在停止之前处理大约3条传入消息。我假设Socket必须先将传入数据存储在某处,然后才能由BeginReceive处理。我是否可以控制Socket在停止之前缓冲的数据量?我是否必须依靠足够快的速度处理传入的消息才不会“错过”任何消息?当下面示例中的ProcessMessageBuffer方法花费很长时间(出于某种原因)以至于传入数据开始堆积在Socket中时,会发生什么情况?publ

node.js - 如何将服务器上的传入消息路由到 Socket.io 中的 html 页面

基本上,我试图将服务器端口上的传入数据显示到HTML网页。此代码显示传入消息以及加入或离开的人,但在控制台窗口上,我试图在网页上显示这些消息。请帮助。谢谢。服务器端代码-//LoadtheTCPLibrarynet=require('net');//Keeptrackofthechatclientsvarclients=[];//StartaTCPServernet.createServer(function(socket){//Identifythisclientsocket.name=socket.remoteAddress+":"+socket.remotePort//Putth

python - BlueSocket 在连接到 Python Socket 套接字时说连接被拒绝

对于我正在制作的iOS应用程序,它需要连接到python套接字服务器。对于我使用Swift3和BlueSocket的iOS应用程序,当我尝试使用正确的IP和端口连接到服务器时,它总是返回连接被拒绝并且我在服务器上看不到连接。BlueSocket设置为TCP客户端,python服务器也是TCP服务器,所以我很困惑为什么它不起作用。有谁知道/理解为什么它无法连接到服务器?iOSswift代码是这样的:importUIKitimportFoundationimportSystemConfigurationimportSystemConfiguration.CaptiveNetworkimpo

C 套接字 : why is my server appending extra characters in the end?

我正在用C编写一个简单的服务器/客户端套接字。客户端要求用户输入一条消息,服务器通过重复相同的内容进行响应。问题是当我从客户端发送消息时,服务器通过附加额外字符进行响应。我该如何解决这个问题。这是我的客户端代码while(1){bzero(buffer,BUFSIZE);printf("EnterMessage:");scanf("%s",buffer);//sendsomedataif(send(socket_fd,buffer,strlen(buffer),0)这是我的服务器代码intread_size;while((read_size=recv(client_socket_fd,