如何在 Linux 上安装 tcpping 测量到远程主机的网络延迟的一种常用方法是使用ping应用程序。该ping工具依赖 ICMP ECHO 请求和回复数据包来测量远程主机的往返延迟。...如果远程主机正在侦听该端口,它将以 TCP ACK 数据包响应。否则,它将以 TCP RST 数据包响应。...但是,如果你tcpping在最小 Linux 运行时环境(例如Docker容器、AWS 最小映像 AMI)中运行,则bc可能不会预先安装。在这种情况下,你需要bc自己安装。...在Debian 的 Linux 上安装: $ sudo apt-get install bc 在 Red Hat 的 Linux 上安装: $ sudo yum install bc 安装 tcpping...0.5秒(1秒=1000毫秒),单位 秒 tcping -w 0.5 1.1.1.1 80 -d :在每行返回信息中加入时间信息 tcping -d 1.1.1.1 80 -s : 当 TCPing 测试成功后
DataGuard开启延时应用的测试 实验环境:RHEL 6.5 + Oracle 11.2.0.4 GI、DB + Primary RAC(2 nodes)+ Standby RAC(2 nodes)...1.体验DG延时应用的效果 2.总结:开启、关闭延时应用 3.测试表脚本 1.体验DG延时应用的效果 主库 log_archive_dest_N 参数当前设定值: log_archive_dest_2...15/thread_1_seq_287.563.952096745 Media Recovery Waiting for thread 2 sequence 235 注:我建立一个每秒都会插入一条数据的测试表...2.总结:开启、关闭延时应用 开启延时应用方法: 主库直接动态修改参数log_archive_dest_N,加入DELAY=(单位是分钟)的参数,然后备库确保不加USING CURRENT LOGFILE...3.测试表脚本 每隔1s插入一条数据的测试表 --业务用户jingyu下创建序列和测试表test conn jingyu/jingyu create sequence jingyu.s1; drop table
延时应答 尽可能降低可靠传输带来的性能影响 提升性能==>让滑动窗口变大 如果我们立即返回 ACK,此时窗口大小就是 4KB 其实在收到数据的时候,应用程序也在源源不断的消费接收缓冲区中的数据...ACK 窗口大小,大概率要比立即返回 ACK 的窗口大小更大,因为在这个时间里,会有一个消费数据的过程 不是一定,只是有“大概率”,关键取决于程序是不是在不停地读取数据、延时时间内发送方是否会新发数据过来...但是,ACK 涉及到“延时应答”, 延时应答就会使 ACK 的返回时间被往后拖,这样一延时,就可能赶上接下来发送响应数据的操作了 也是就可以在发送响应的时候,把刚才 ACK 的信息也带上 - 本身 ACK...TCP 提升性能的机制。...TCP 数据报和下一个 TCP 数据报携带的数据,是可以直接进行拼装的 比如要传输一个特别大的数据,传输过程中,本身就会通过多个 TCP 数据报来进行携带,这些 TCP 数据报彼此之间携带的载荷都是可以在接受方自动拼起来的
TCP/IP协议 TCP/IP 协议栈是一系列网络协议(protocol)的总和,是构成网络通信的核心骨架,它定义了电子设备如何连入因特网,以及数据如何在它们之间进行传输。...OSI 7层模型和TCP/IP四层网络模型对应关系 计算机网路基础的知识不过多讲解,主要是让大家明白接下来的Linux网络编程数据流属于那一层,具体如下图 TCP/IP协议数据流示意图 我们接下来讲解的...Linux网络编程Tcp协议是属于传输层的协议 Linux Socket 网络编程 TCP协议 TCP是面向连接的可靠的传输层协议。...TCP编程 Linux中的网络编程是通过socket接口来进行的。socket是一种特殊的I/O接口,它也是一种文件描述符。常用于不同机器上的进程之间的通信,当然也可以实现本地机器上的进程之间通信。...使用TCP协议的流程图 根据流程图逐一讲解API接口.
本文主要介绍如何使用JMeter对TCP协议进行测试 1、TCP概念 2、TCP协议的三次握手 3、TCP取样器参数介绍 4、Wireshark抓包和开发TCP脚本 一、TCP概念...三、TCP取样器参数介绍 1. 打开jmeter,点击测试计划》添加》配置元件》TCP取样器配置 ? 2....选中过滤好的TCP请求,右键点击》追踪流》TCP流 ? 5. 追踪TCP流,显示和保存数据选择原始数据(16进制请求) ? 6....线程组》添加》Sample》TCP取样器,将请求复制到要发送的文本即可,因为系统特殊性,第一条TCP请求信息的响应结尾与其他不同,故第一个TCP取样器的EOL值不同,需要单独申明,下图只截图2条TCP请求...如果需要对查询TCP请求进行参数化,只需要提前把请求参数转换成16进制,然后使用CSV参数化即可 如果文章对你有帮助,可以扫描下面的二维码进行关注,欢迎转发、本人会不定期发表和测试相关的文章,与大家分享测试技术
前言 关于TCP服务器最大并发连接数有一种误解就是“因为端口号上限为65535,所以TCP服务器理论上的可承载的最大并发连接数也是65535”。...先说结论:对于TCP服务端进程来说,他可以同时连接的客户端数量并不受限于可用端口号。并发连接数受限于linux可打开文件数,这个数是可以配置的,可以非常大,所以实际上受限于系统性能。...这个测试主要是想搞明白Linux下哪些参数配置限制了连接数的最大值,上限是多少。...然后进行第二次测试。...最后,感谢Linux内核团队的大神们推出了epoll这么牛逼的机制,才使得我们现在想实现高并发是如此的容易,希望自己有一天也能这么牛逼,哈哈。
引言 TCP协议是传输层中非常重要的协议。本篇博客我们将从TCP头部信息、TCP状态转移、TCP数据流、TCP数据流的控制等等方面来讨论! 在TCP协议中,通信双方的地位是平等的。...1、TCP协议的特点 传输层中我们常用的协议有两个:TCP协议和UDP协议。TCP协议相对于UDP协议的特点是:面向连接、可靠的、面向字节流的。...当TCP模块真正开始发送数据时,发送缓冲区中这些等待发送的数据可能被封装成一个或者多个TCP报文发出去,因此,TCP模块发送出的TCP报文段的个数和应用程序执行的写操作次数没有固定的数量关系。...当接收缓冲区收到一个或者多个TCP报文后,TCP模块将它们携带的应用程序的数据按照TCP报文的序号【见下文】依次放入TCP接收缓冲区中,并通知应用程序读取数据。...Linux中(BSD Unix和Windows也是如此), 超时以500ms为一个单位进行控制, 每次判定超时重发的超时 时间都是500ms的整数倍.
wide': 0 tcp:tcp_retransmit_skb...0 tcp:tcp_send_reset 0 tcp:tcp_receive_reset...5 tcp:tcp_rcv_space_adjust...0 tcp:tcp_retransmit_synack 9 tcp:tcp_probe...] [k] tcp_rcv_state_process + 50.00% 0.00% python [kernel.kallsyms] [k] __tcp_transmit_skb
其中复位标志RST的作用就是“复位相应的TCP连接”。 TCP连接和释放时还有许多细节,比如半连接状态、半关闭状态等。详情请参考这方面的巨著《TCP/IP详解》和《UNIX网络编程》。...原因在于Socket.close()方法的语义和TCP的“FIN”标志语义不一样:发送TCP的“FIN”标志表示我不再发送数据了,而Socket.close()表示我不在发送也不接受数据了。...; 客户端和服务器统一使用TCP短连接。...,固定5分钟tcp连接回收,而且发现连接出错时,重发之前10s内消息。...好像曾经测试过haproxy 某种配置下,会使用rst关闭连接,少了网络交互而且没有TIME_WAIT 问题 超过超时重传次数、网络暂时不可达 TIME_WAIT 状态 tw_recycle = 1 时
使用select接口写高精确延时。...{ err = select(0, NULL, NULL, NULL, &tv); } while(err < 0 && errno == EINTR); } 注意 内核支持的延时分辨率一般不能达到微秒级...; 由于存在内核调度延时现象; 内核分辨率一般为10ms的倍数。
今天发现发现一个测试网络的小程序 tcping,感觉还不错。...我们之前测试网络时,主要是通过 ping、telnet,现在多了一个 tcping~ ping image.png telnet image.png tcping tcping 命令使用传输层协议,...Copyright: 采用 知识共享署名4.0 国际许可协议进行许可 Links: https://lixj.fun/archives/tcp端口的测试小工具
阅读本文之前建议了解 TCP 三次握手过程以及 TCP 的包头详细信息。...由于 TCP 协议并没有对 TCP 的传输包进行验证,所以在我们知道一个 TCP 连接中的 seq 和 ack 的信息后就可以很容易的伪造传输包,假装任意一方与另一方进行通信,我们将这一过程称为 TCP...会话劫持(TCP Session Hijacking) ?...因为我们要伪造发下一个包,所以直接采用 nextseq 作为下一个包的 ack ,采用 ack 作为下一个包的 seq(这里是 tcp 协议的规定,不懂的同学可以百度下 tcp 协议三次握手) 获取到信息之后...45116 --tcp-dst 23 --tcp-seqnum 3332505945 --tcp-acknum 4096321077 --tcp-ack --tcp-psh --tcp-window
导读 TCPing是使用TCP协议测试端口开放情况的小工具。...port A numeric TCP port, 1-65535. If not specified, defaults to 80....--proxy-port _port_ Specify the numeric TCP port of the proxy server....www.elifulkerson.com AVAILABILITY tcping is available at http://www.elifulkerson.com/projects/tcping.php 2、Linux...install gcc # 使用GCC编译生成执行文件tcping gcc -o tcping tcping.c # 将tcping拷贝到路径/usr/bin下面 cp tcping /usr/bin # 测试一下
首先明确 Tcp 的概念,针对 Tcp 协议进行接口测试,是指基于 Tcp 协议的上层协议比如 Http ,串口,网口, Socket 等。...这些协议与 Http 测试方法类似(具体查看接口自动化测试章节),但在测试过程中需要做些调整。 Socket Socket 又称套接字,进程可通过套接字进行网络通信,使多个设备具有交互能力。...Socket 适合对传输速度和安全性有严格要求的应用,比如手机内核与外界进行测试数据的传输。...测试人员还需一款合适的代理工具,推荐 mitmproxy 或自写 Socket 代理。...需要测试人员自己写代理,比如串口协议, Python 虽然支持 Pyserial 进行收发串口,但无代理。此时需要测试人员自行编写串口代理工具。
当进程要获取某些资源(例如从网卡读取数据)的时候,但资源并没有准备好(例如网卡还没接收到数据),这时候内核必须切换到其他进程运行,直到资源准备好再唤醒进程。
测试 TCP 端口: telnel IP PORT nc -vz IP PORT 测试 UDP 端口: nc -vuz IP PORT 其中 -u 表示使用 udp 协议来进行测试。...font-variant-ligatures: no-common-ligatures } -u, --udp Use UDP instead of default TCP...这是测试监听 udp 6666 端口的 nc 命令返回情况。
netstat -nat|grep -i "80"|wc -l 查看80的 统计httpd协议的连接数 ps -ef |grep httpd|wc -l 统计状...
背景 前面我们已经介绍了使用 Jmeter 进行 TCP 海量连接的测试,但是使用 Jmeter 需要分布式模式,而且就算是分布式模式占用资源也很多,所以我们需要一种节省资源且能达到更高规模连接的方式。...很重要 因为 Linux 的文件句柄数和端口都有限制,所以我们先要把服务端和客户端的这些限制修改到最大。...简单起见,测试前执行如下命令即可: sysctl -w fs.file-max=10485760 sysctl -w net.ipv4.tcp_rmem=1024 sysctl -w net.ipv4....10m/10m-svr 100 300 10 301 root 50015 33523 0 15:27 pts/1 00:00:00 grep --color=auto 10m 客户端启动测试...连接,如上,测试 25 秒已经完成了 24万 连接。
背景 近期有个需求,需要测试下 SLB 的四层负载均衡性能,即测试 TCP 的最大连接数和连接速度。本次测试我们选择使用 Jmeter。 单机调试 编写 TCP 服务端 #!...3、添加 TCP Sampler 4、配置TCP Sampler 具体参数含义可以上网查询,如上,EOL 通常是对应服务端返回的最后一个字符的 byte 表示。...5、添加结果监听器 启动服务端,发起测试 分布式 由于本次要测试百万链接,所以我们需要提前准备多台 Linux 机器进行测试。...测试机安装 JDK 1、下载JDK离线包 https://mirrors.tuna.tsinghua.edu.cn/AdoptOpenJDK/8/jdk/x64/linux/ 2、上传离线包到Linux...机器上并解压 pwd /root/ tar -zxvf OpenJDK8U-jdk_x64_linux_hotspot_8u292b10.tar.gz 3、配置 cd /usr/ mkdir java
领取专属 10元无门槛券
手把手带您无忧上云