tcp udp测试

sub_udp.py

#!/usr/bin/env python
# -*- coding: utf-8 -*- # 可以正常接收udp
import socket
import datetime
#创建socket对象
#SOCK_DGRAM udp模式
s=socket.socket(socket.AF_INET,socket.SOCK_DGRAM) s.bind(('', 10000))
while True:
# data = s.recv(10240)
data = s.recv(102400)
print("开始收到下面一条udp" + ' 当前时间: ' + str(datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')))
print(data.decode()) -------------------------------------------------------------------------------------------------------------------- pub_udp.py #!/usr/bin/env python
# -*- coding: utf-8 -*- # 可以正常发送udp
# 可以正常发送udp
#不需要建立连接
import socket
import time
#创建socket对象
#SOCK_DGRAM udp模式
s=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
#发送数据 字节
str1 = {"name":"mark", "age":18, "content":"meeting"}
while True:
s.sendto(str(str1).encode(), ('127.0.0.1', 10000))
time.sleep(1) --------------------------------------------------------------------------------------------------------------------
sub_tcp.py #!/usr/bin/env python
# -*- coding: utf-8 -*- # 可以正常跑通 import socket
import time MaxBytes = 1024 * 1024 server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server.settimeout(60)
host = '127.0.0.1'
# host = socket.gethostname()
port = 11223
server.bind((host, port)) # 绑定端口 server.listen(1) # 监听
try:
client, addr = server.accept() # 等待客户端连接
print(addr, " 连接上了")
while True:
data = client.recv(MaxBytes)
if not data:
print('数据为空,我要退出了')
break
localTime = time.asctime(time.localtime(time.time()))
print(localTime, ' 接收到数据字节数:', len(data))
print(data.decode())
client.send(data)
except BaseException as e:
print("出现异常:")
print(repr(e))
finally:
server.close() # 关闭连接
print("我已经退出了,后会无期") -------------------------------------------------------------------------------------------------------------------- pub_tcp.py #!/usr/bin/env python
# -*- coding: utf-8 -*- # 可以正常跑通 import socket
import time
MaxBytes=1024*1024
host ='127.0.0.1'
port = 11223
client = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
client.settimeout(30)
client.connect((host,port))
while True:
inputData = "hello world!"; #等待输入数据
sendBytes = client.send(inputData.encode())
if sendBytes<=0:
break;
recvData = client.recv(MaxBytes)
if not recvData:
print('接收数据为空,我要退出了')
break
localTime = time.asctime( time.localtime(time.time()))
print(localTime, ' 接收到数据字节数:',len(recvData))
print(recvData.decode())
client.close()
print("我已经退出了,后会无期")

tcp udp测试的更多相关文章

  1. centos安装netcat TCP UDP测试工具 简称 nc,安全界叫它瑞士军刀

    centos安装netcat 今天安装swoole后,测试UDP服务需要用到netcat,然而百度了很多安装方法,并没有一个好用的.几经尝试,终于安装成功,现在就分享给大家,以供参考. 配置环境:ce ...

  2. TCP&UDP测试工具使用方式方法

    第一项:测试TCP 步骤1:首先需要一台电脑上建立一个TCP服务器.并设置一个端口号如下图60003即可.并开启服务 步骤2:在另外一台电脑上,创建一个客户端连接,如下图.输入服务器的IP地址和端口号 ...

  3. Sokit(TCP/UDP调试工具)

    下载:http://www.winwin7.com/soft/56522.html#xiazai Sokit中文版是一款免费开源的TCP / UDP 测试(调试)工具,它主要可以用于接收和发送TCP/ ...

  4. iperf测试流量转发(nginx反向代理tcp/udp)

    一.准备工作 服务器1:192.168.33.102     搭建nginx服务,作为反向代理的中转站 服务器2:192.168.33.103    nginx要反向代理的服务器 服务器3:192.1 ...

  5. go简易tcp/udp连接测试工具

    package main import ( "fmt" "io" "log" "net" "os" ...

  6. TODO:Golang语言TCP/UDP协议重用地址端口

    TODO:Golang语言TCP/UDP协议重用地址端口 这是一个简单的包来解决重用地址的问题. go net包(据我所知)不允许设置套接字选项. 这在尝试进行TCP NAT时尤其成问题,其需要在同一 ...

  7. TCP/UDP简易通信框架源码,支持轻松管理多个TCP服务端(客户端)、UDP客户端

    目录 说明 TCP/UDP通信主要结构 管理多个Socket的解决方案 框架中TCP部分的使用 框架中UDP部分的使用 框架源码结构 补充说明 源码地址 说明 之前有好几篇博客在讲TCP/UDP通信方 ...

  8. tcp/udp高并发和高吐吞性能测试工具

    在编写一个网络服务的时候都比较关心这个服务能达到多少并发连接,而在这连接的基础上又能达到一个怎样的交互能力.编写服务已经是一件很花力气的事情,而还要去编写一个能够体现结果的测试工具就更加消耗工作时间. ...

  9. TCP UDP 协议的区别和联系

    TCP(Transmission Control Protocol,传输控制协议)是基于连接的协议,也就是说,在正式收发数据前,必须和对方建立可靠的连接.一个TCP连接必须要经过三次“对话”才能建立起 ...

  10. 获取Windows下某进程监听的TCP/UDP端口

    1.在Windows下用CMD netstat命令可以获得当前进程监听端口号的信息,如netstat -ano可以看到IP.port.状态和监听的PID. 那么可以执行CMD这个进程得到监听的端口号信 ...

随机推荐

  1. foxy与galactic解析rosbag的不同之处

    前言 foxy和galactic版本在rosbag2_storage这个包的调整有点大(头文件及接口的命名空间),下面的代码仅供参考使用 foxy #include "db3_reader. ...

  2. ABC346

    D 枚举是哪一位相同,情况为 \(00\) 还是 \(11\),然后用前缀和和后缀和求一下即可. \(pre_{j,i}\) 表示第一位为 \(j\),前 \(i\) 位的每两个相同的字符均不相同的情 ...

  3. Gradle查看依赖及排除依赖的方法

    查看项目的编译依赖,同时写入文件aa.txt F:\sts4\order-test>gradlew :order-test-api:dependencies --configuration co ...

  4. uniapp ios推送 离线推送收不到消息

    突然之间收不到离线推送消息了,角标也不显示了. 查了很长时间发现是ios的推送证书过期了. 我用的是appuploader登陆上以后在证书管理中新创建证书就可以了.

  5. 又跳槽!3年java经验offer收割机的面试心得

    中厂->阿里->字节,成都->杭州->成都 系列文章目录和关于我 0.前言 笔者在不足两年经验的时候从成都一家金融科技中厂跳槽到杭州阿里淘天集团,又于今年5月份从杭州淘天跳槽到 ...

  6. Xcode调试内存最新理解

    前提: Xcode 16.0 beta 设置 Scheme设置中勾选Malloc Scribble.Malloc Stack Logging. 这么做是为了在Memory Graph.Profile中 ...

  7. .NET 个人博客系统

    前言 之前通过github学习了一个.net core的博客项目,最近也是完成了博客的备案,完善了一下.该项目是传统的MVC项目,可以进行主题的切换,采用Bootstrap进行前台页面的展示,有配套的 ...

  8. 基于 UDP 的 组播、广播详解

    背景 有些时候我们在网络通信中也需要用到 组播(多播).广播.现在我们来介绍如何实现. 建议:在此之前,关闭防火墙. ubuntu: service ufw stop windows: 控制面板关闭 ...

  9. 使用Terminal.Gui构建功能强大的.NET控制台应用

    前言 前段时间分享了一个库帮你轻松的创建漂亮的.NET控制台应用程序 - Spectre.Console的文章教程,然后就有小伙伴提问:.NET控制台应用需要应对强交互性的场景,有什么好的解决方案?, ...

  10. eclipse取消默认工作空间的两种方法

    对于eclipse的默认的工作空间,如果不需要正常切换workspace的用户很方便,打开eclipse便自动进入默认的工作空间.而如果用户经常在多个workspace之间切换的话,启动eclipse ...