草庐IT

dos2unix

全部标签

networking - unix服务器之间TCP端口数据传输的限制

我对网络没有那么深的了解。我有两个unix服务器。我使用TCP连接通过客户端调用服务器。它适用于较小的数据大小。当我尝试请求更大的数据时,API调用突然终止。所以,只想知道unix服务器(clinet-服务器)之间的每个请求的数据传输是否有任何限制。如果是,有什么方法可以增加它。如果有限制,我可以从我的sysad那里寻求帮助来解决这个问题。提前致谢马尼什 最佳答案 没有这样的限制。TCP套接字是一个双向字节流,应用程序如何将这些字节拆分为消息(通常称为“应用程序级协议(protocol)”)取决于应用程序。系统管理员不会在这里为您做

sockets - 如何确定打开的套接字是 TCP 还是 unix 域套接字?

我的代码传递了一个打开的套接字。此套接字可以是TCP套接字(AF_INET)或Unix域套接字(AF_UNIX)。根据套接字的域,需要进行不同的处理。特别是如果套接字绑定(bind)到一个地址,那么我可能想以不同的方式接受传入连接。确定我传递的套接字是unix域套接字还是TCP套接字的最佳方法是什么?该解决方案至少需要在OSX和Linux上运行。getsockopt似乎允许获取套接字的类型(例如SOCK_STREAM等),但不允许获取域。getsockname将为OSX上的unix域套接字返回零长度,但这正式是bugLinux行为是different. 最佳

windows - unix/windows 上的 keepalive 超时

当连接因keepalive事件而中断时,aix/linux上返回的错误是什么?是不是可以区别于其他套接字错误的唯一错误码?在Windows上,这可以是WSAECONNRESETorWSAENETRESET.有没有办法在返回WSAECONNRESET时区分由于keepalive事件导致的错误?WSAECONNRESET10054Connectionresetbypeer.Anexistingconnectionwasforciblyclosedbytheremotehost.Thisnormallyresultsifthepeerapplicationontheremotehostiss

unix网络进程

我想知道在unix中是如何实现tcp/ip通信的。当您通过套接字发送时,tcp/level工作(组装数据包、crc等)是否在与调用代码相同的执行上下文中执行?或者,更可能的是,消息被发送到负责tcp通信的其他某个守护进程?然后这个进程获取消息并执行复制内存缓冲区和组装数据包等请求的工作?那么,调用代码会立即恢复执行并且tcp工作是并行完成的吗?这是正确的吗?如有详细信息,我们将不胜感激。谢谢! 最佳答案 TCP/IPstack是你的kernel的一部分.发生的事情是你调用了一个准备“kerneltrap”的辅助方法。这是一种特殊的异

Linux/Unix Socket自连接

当客户端尝试连接到服务器时,如果客户端和服务器都是本地主机,则可能会发生自连接(源端口和目标端口恰好相同。)。但我的问题是,客户端没有监听那个端口,怎么可能自连接? 最佳答案 遇到同样的现象后,我发现了你的问题。我找到的最好的解释是EverythingAboutNothing:TCPClientSelfConnect.您可以通过getsockname()请求分配给您的端口,并将其与远程端口进行比较以检测这些自连接:sockaddr_inaddr_client;socklet_tlen=sizeof(saddr_in);if(gets

c - Unix 网络编程说明

我在看经典书UnixNetworkProgramming,当我偶然发现这个程序时(第6.8节,第179-180页)#include"unp.h"intmain(intargc,char**argv){inti,maxi,maxfd,listenfd,connfd,sockfd;intnready,client[FD_SETSIZE];ssize_tn;fd_setrset,allset;charbuf[MAXLINE];socklen_tclilen;structsockaddr_incliaddr,servaddr;listenfd=Socket(AF_INET,SOCK_STREA

api - 如何让docker在centos下用systemd监听unix和TCP socket

我已经使用systemd在CentOS下安装了docker(v17.06.2-ce)。Docker工作正常并监听unix套接字。现在我想让docker监听Unix套接字和TCP套接字2375。因为这是一个内部开发机器,安全性没有问题。我浏览了互联网,找到了几篇文章,但仍然有一些问题。我的理解是我有systemd文件(docker.service),它在没有任何参数的情况下启动dockerd。ExecStart=/usr/bin/dockerd然后这里有文件demon.json我可以列出我要听的内容。我的问题是在这里输入什么。可能是。{"hosts":["unix:///var/run/

java - 一个进程的最大套接字连接数 UNIX

我有一个java服务器(1个进程),它为每个传入连接生成一个线程。我知道编译到内核中的文件描述符限制为1024。1个进程可以支持的套接字连接数是否有限制? 最佳答案 在Linux上查看/proc/sys/fs/file-max。您可以将自己的值(value)反射(reflect)到其中。还要确保增加用户限制:ulimit-n在BSD上,它将是sysctlkern.maxfiles和sysctlkern.maxfilesperproc 关于java-一个进程的最大套接字连接数UNIX,我们

创建我的第一个 Unix 服务器/客户端,但出现 "shmget: Invalid argument"错误甚至更多。 [C]

我正在做一个Unix、C作业。我正在创建一个服务器和一个客户端,它们将相互交互。我对TCP/IP编程不是很有经验,所以我提前道歉。首先,我正在尝试为我的设置创建一个基本布局。我使用Makefile编译客户端和服务器,它运行良好。但是,当我执行服务器时,出现此错误:shmget:Invalidargument我觉得是IPC资源的问题。我应该使用atexit()删除IPC资源,但我认为我做的不对。如果有帮助,这里是server.c的代码:#include"server.h"intshmid,semid;structShared*shm;intmain(){key_tshmkey=0x606

sockets - Unix 中的 accept() 函数实现

我查阅了BSD代码,但在某个地方迷路了:(我想检查的原因是:TCPRFC(http://www.ietf.org/rfc/rfc793.txt)sec2.7状态:“为了在每个TCP中提供唯一地址,我们将标识TCP的互联网地址与端口标识符连接起来,以创建一个套接字,该套接字在连接在一起的所有网络中都是唯一的。连接由一对套接字完全指定,位于结束。”这是否意味着:socket=local(ip+port)?如果是,那么Unix的accept函数返回一个新的套接字描述符。这是否意味着创建一个新套接字(反过来创建一个新端口)以响应客户端请求?PS:本人网络编程小白[更新]我明白了我读到的@How