草庐IT

ip_network

全部标签

networking - TCP Reno 中的慢启动阈值

比方说,超时发生在慢启动阶段结束时。届时,窗口大小将减半。之后,它进入拥塞避免阶段而不是再次进入慢启动阶段。在这种情况下,慢启动阈值是多少?是慢启动的结束还是拥塞避免阶段的开始? 最佳答案 对于一个新的连接,接收窗口大小(rwnd)从A开始,拥塞窗口(cwnd)从B开始。在没有ACK的情况下,发送方不能发送超过cwnd和rwnd的最小值的字节。发送方每次收到ACK时都会增加cwnd。超时发生时,cwnd为X,rwnd为Y,cwnd和rwnd的最小值为Z。因此,超时后,慢启动thershold将是Z/2,或至少1段,cwnd将是1段。

c# - 如何在 C# TCP/IP 中的 Socket.Connect 中传递用户名和密码

我有一台机器,我需要连接到它以将数据检索到文本文件中。为此,我有机器的IP地址、端口号、用户名、密码。现在我正在尝试连接到机器但我不知道在哪里传递要在我的C#代码中连接的机器的用户名和密码。请帮帮我。 最佳答案 评论已经给出了答案,总结一下:对于TCP协议(protocol),重要的只是如何连接A和B来实现数据传输。任何超出成功连接的事情都取决于您使用的内部应用程序协议(protocol)您需要服务的描述以及发送和接收的内容您从问候语“这里是客户”开始。这就是我假设的如何传输用户名和密码的方式。例如,在您的“这里是客户”消息之后,服

networking - NAT 实现

我正在开发一个在Windows机器上的2个网络接口(interface)之间执行NAT的应用程序,但我在理解正在发生的事情时遇到了一些问题。系统中有2个网络接口(interface):用作网关的物理网络接口(interface)(00:0c:29:bc:4c:11192.168.133.130)00:50:56:eb:f5:15-192.168.133.2(由VMware运营)我的应用程序使用的虚拟TAP网络接口(interface)(00:ff:15:08:ac:26192.168.200.100)用作网关03:03:03:03:03:03-192.168.200.1(运行通过我的应

sockets - 是否可以使用相同的端口和 ip 地址?

我创建了一个TCP服务器程序,它绑定(bind)、监听并接受来自特定IP地址和端口号的连接。在第一次连接期间:服务器正在接受来自客户端的SYN数据包并将ACK发送回客户端。稍后从客户端获得ACK。最后,Client与服务器进行RST。在第二次连接期间,客户端正在向从服务器发送SYN数据包,但没有来自服务器的ACK。我认为在使用相同的ip地址和端口号的第二次连接期间不可能存在绑定(bind)。是否可以在第二个连接中绑定(bind)同一个ip地址和端口号?服务器:SOCKETsock;SOCKETfd;uint16port=52428;//Iamalsousingnonblockingmo

Python TCP/IP - 发送命令

我有望远镜,它由西门子PLC管理。这个望远镜很远。我有一组可以通过TCP/IP发送来执行的命令。此命令采用ASCII格式。这是脚本的简单示例:importsocketTCP_IP=''TCP_PORT=s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)s.connect((TCP_IP,TCP_PORT))s.send('GLLG0\r\n')s.send('DOSO0\r\n')data=s.recv(1024)printdatas.close()我发送了两个命令。第一个用于登录,第二个用于打开圆顶。但是我有两个半圆顶。当我发送这个打

winsock - TCP IP recv() 函数未接收到来自服务器的回显消息

我在Windows中使用TCPIP套接字程序,我在其中创建了一个客户端用于将数据传输到服务器和服务器正在将消息回显给客户端(请注意,服务器已通过telnet应用程序正常工作)。但是当我从客户端发送测试消息时,它会在服务器端收到,但是当我试图在客户端中读取回显消息时>使用recv()函数的一侧我没有得到回显消息,但是无论我在服务器侧输入什么,它都会显示在客户端侧接收recv()函数我通过此链接关注程序http://cs.baylor.edu/~donahoo/practical/CSockets/code/TCPEchoClientWS.c有人有什么解决办法吗?

php - $_SERVER ['REMOTE_ADDR' ] php var 是否基于用户 TCP/IP?

是否100%保证$_SERVER['REMOTE_ADDR']变量基于用户TCP/IP,因此始终可靠? 最佳答案 不,没有100%的保证。当用户使用代理互联网地址时,您将获得误报地址。 关于php-$_SERVER['REMOTE_ADDR']phpvar是否基于用户TCP/IP?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/22297625/

networking - 我什么时候应该考虑使用 TCP 或 UDP?

我知道这两种协议(protocol)之间的区别和优缺点,虽然不是很清楚。好吧,我仍然不清楚如何使用它们,具体来说,在它们之上构建应用程序时我应该使用哪种协议(protocol)?是否存在普遍原则或普遍采用的做法?选择时应考虑哪些因素。例如。对于视频流服务,UDP始终优先于TCP。 最佳答案 TCP-当您发送信息时,您将收到express服务等确认信息。如果没有确认,则重新发送。UDP-无确认。没有重新发送。首先,您应该了解您发送和接收的信息的敏感性。例如,如果您正在处理一些汇款,您当然需要确认银行收到了您的钱,如果连接出现问题,您就

c - 使用 TCP/IP : recv() blocks 的套接字编程

我正在开发一个简单的客户端/服务器项目,它将一大块数据从客户端移动到服务器。我使用TCP/IP。服务器设置监听套接字,客户端连接。首先传输一个短的16字节“header”,其中包含一些信息,包括之后要传输的数据量。然后传输大块(大约2MB),即send(socketDesc,(void*)myBuffer,bigChunkSize,0);和recv(socketDescPeer,(void*)myBuffer,bigChunkSize,0)首先,我使用winsock2在Windows下实现了客户端,它可以正常工作。我现在尝试将此实现移植到linux,在这种情况下,服务器端永远不会从re

linux - 如何测试用户空间的 tcp/ip 堆栈?

我正在研究用户空间的tcp堆栈(主要是为了好玩),但我在针对unixtcp堆栈进行测试时遇到了一些问题。目前唯一的测试形式是通过单元测试完成的。但是,我想针对真实的内核tcp堆栈测试我的tcp堆栈。我尝试了以下设置但没有成功。使用原始套接字:我编写了一个简单的echotcp服务器,它使用内核tcp套接字接受连接。tcp服务器监听本地主机上的8080端口。我的tcp客户端使用用户空间tcp堆栈。但是,每当客户端向服务器发送syn时,内核都会发送一个tcprst。在我修改iptable以丢弃所有tcprst数据包之后,它有点工作。但是,即使建立了3路syn、syn+ack、ack握手,服务