当前位置: 首页 > news >正文

怎么创建网站 免费滴微信公众号里面免费做网站

怎么创建网站 免费滴,微信公众号里面免费做网站,怎么制作网站步骤,办公空间设计公司排名文章目录 1.前言2.mping工具编译3.mping工具使用3.1 参数说明3.1 组播播发(-s)3.1 组播播发(-r)3.3 Linux下mping测试 4.Linux组播udp_sender及udp_reciver使用4.1 udp_sender源码4.1 udp_reciver源码4.3 编译方法4.4 测试使用4.4…

文章目录

  • 1.前言
  • 2.mping工具编译
  • 3.mping工具使用
    • 3.1 参数说明
    • 3.1 组播播发(-s)
    • 3.1 组播播发(-r)
    • 3.3 Linux下mping测试
  • 4.Linux组播udp_sender及udp_reciver使用
    • 4.1 udp_sender源码
    • 4.1 udp_reciver源码
    • 4.3 编译方法
    • 4.4 测试使用
      • 4.4.1 udp_sender
      • 4.4.2 udp_reciver

1.前言

UDP组播测试对于局域网内数据链路测试十分必要,轻量化和易用性是首要考虑的问题,使用mping作为UDP组播测试工具,能够非常方便的进行linux、Windows等平台的组播测试。本文第4章还提供了基于C/C++的udp_sender和udp_reciver组播源码,可以在Linux下编译执行。

2.mping工具编译

GITHUB:https://github.com/tongxinCode/mping
或使用如下链接(go源码+build可执行程序)
CSDN:https://download.csdn.net/download/Axugo/89070577
官方给出的编译方法:

# windows
SET CGO_ENABLED=0
SET GOOS=windows
SET GOARCH=amd64
go build -o mping.exe main.go
# linux
SET CGO_ENABLED=0
SET GOOS=linux 
SET GOARCH=amd64 
go build -o mping main.go
# linux arm
SET CGO_ENABLED=0
SET GOOS=linux
SET GOARCH=arm
go build -o mping main.go

3.mping工具使用

以Windows为例,将编译好的mping.exe拷贝至C:\Windows\System32路径下,即可全局使用

3.1 参数说明

mping.exe -h

可以得到如下

mping version: mping/1.8.1
Usage: ./mping [-h] [-s sendGroup] [-r receiveGroup] [-l localAddress] [-S sourceAddress] [-m message] [-i interval] [-log path]Options:-C int[number] the limit number of sending packets(-1 means no limits) (default -1)-S string[ip[:port]] must determine the peer source ip if using SSM (default "127.0.0.1:8888")-c    whether to count Packet loss rate(default false)-e string['ascii','utf8','gbk'] change the content of sending (default "ascii")-h    this help-i int[number] change the interval between package sent (unit:Nanosecond) (default 1000000000)-l string[ip[:port]] must choose your local using interface (default "127.0.0.1:8888")-log string[/tmp/] or [C:\] determine whether to log, Path e.g ./, Forbidden / (default "/")-m string[string] change the content of sending (default "Init Data")-p int[number] the size of payload data(0 means use 1472 Bytes payloads) (default -1)-proto stringchoose a lua script to parse udp data, function Parse(dataBytes) must be included (default "*.lua")-r string[group:port] receive packet from group (default "239.255.255.255:9999")-s string[group:port] send packet to group (default "239.255.255.255:9999")-testsend and receive locally to examinate a test(default false)-timesend real time as the content to examinate(default false)-x    whether to show the hex data(default false)

3.1 组播播发(-s)

将组播信息播发至本机的19901端口

mping.exe -s 127.0.0.1:19901

在这里插入图片描述

3.1 组播播发(-r)

从19901端口接收播发的组播信息

mping.exe -r 224.0.0.8:19901

在这里插入图片描述

3.3 Linux下mping测试

在这里插入图片描述

4.Linux组播udp_sender及udp_reciver使用

4.1 udp_sender源码

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <arpa/inet.h>//#define MULTICAST_GROUP "224.0.0.1"
//#define PORT 10000int main(int argc,char *argv[]) {if(argc<3){printf("ERROR: argc<3 !\n");printf("Example: ./udp_sender 224.0.0.8 18044 \n\n");return 0;}int PORT=atoi(argv[2]);char *MULTICAST_GROUP=argv[1];struct sockaddr_in addr;int sock;char message[] = "This is a multicast test message...";// 创建UDP套接字sock = socket(AF_INET, SOCK_DGRAM, 0);if (sock < 0) {perror("socket creation failed");exit(EXIT_FAILURE);}// 设置组播TTL(生存时间)int ttl = 1;if (setsockopt(sock, IPPROTO_IP, IP_MULTICAST_TTL, &ttl, sizeof(ttl)) < 0) {perror("setsockopt failed");exit(EXIT_FAILURE);}// 设置组播目标地址和端口memset(&addr, 0, sizeof(addr));addr.sin_family = AF_INET;addr.sin_addr.s_addr = inet_addr(MULTICAST_GROUP);addr.sin_port = htons(PORT);while (1) {// 发送消息if (sendto(sock, message, strlen(message), 0, (struct sockaddr *)&addr, sizeof(addr)) < 0) {perror("sendto failed");exit(EXIT_FAILURE);}printf("udp_sender send msg to %s %d YES!\n\n",MULTICAST_GROUP,PORT);sleep(1);  // 每秒发送一次消息}// 关闭套接字close(sock);return 0;
}

4.1 udp_reciver源码

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <arpa/inet.h>//#define MULTICAST_GROUP "224.0.0.1"
//#define PORT 10000
#define MAX_BUFFER_SIZE 1024//第一个参数:组播IP 
//第二个参数:组播端口int main(int argc,char *argv[]) {if(argc<3){printf("ERROR: argc<3 !\n");printf("Example: ./udp_reciver 224.0.0.8 18044 \n\n");return 0;}int PORT=atoi(argv[2]);char *MULTICAST_GROUP=argv[1];struct sockaddr_in addr;int sock;char buffer[MAX_BUFFER_SIZE];ssize_t nbytes;// 创建UDP套接字sock = socket(AF_INET, SOCK_DGRAM, 0);if (sock < 0) {perror("socket creation failed");exit(EXIT_FAILURE);}// 设置套接字选项,允许多个进程绑定到相同的地址和端口int reuse = 1;if (setsockopt(sock, SOL_SOCKET, SO_REUSEADDR, &reuse, sizeof(reuse)) < 0) {perror("setsockopt failed");exit(EXIT_FAILURE);}// 绑定到特定地址和端口memset(&addr, 0, sizeof(addr));addr.sin_family = AF_INET;addr.sin_addr.s_addr = htonl(INADDR_ANY);addr.sin_port = htons(PORT);if (bind(sock, (struct sockaddr *)&addr, sizeof(addr)) < 0) {perror("bind failed");exit(EXIT_FAILURE);}// 加入组播组struct ip_mreq mreq;mreq.imr_multiaddr.s_addr = inet_addr(MULTICAST_GROUP);mreq.imr_interface.s_addr = htonl(INADDR_ANY);if (setsockopt(sock, IPPROTO_IP, IP_ADD_MEMBERSHIP, (char *)&mreq, sizeof(mreq)) < 0) {perror("setsockopt failed");exit(EXIT_FAILURE);}printf("wait receive multimessage...\n");while (1) {// 接收消息nbytes = recvfrom(sock, buffer, sizeof(buffer), 0, NULL, 0);if (nbytes < 0) {perror("recvfrom failed");exit(EXIT_FAILURE);}printf("Have receive multimessage from %s %d\n",MULTICAST_GROUP,PORT);printf("%.*s\n", (int)nbytes, buffer);}// 关闭套接字close(sock);return 0;
}

4.3 编译方法

gcc sender.c -o udp_sender
gcc recver.c -o udp_reciver

4.4 测试使用

4.4.1 udp_sender

./udp_sender 224.0.0.8 19901

在这里插入图片描述

4.4.2 udp_reciver

./udp_reciver 224.0.0.8 19901

在这里插入图片描述

http://www.yayakq.cn/news/650464/

相关文章:

  • 做羊水亲子鉴定网站网站开发 公司 深圳
  • 企业如何对自己的网站进行建设微信商城网站建设
  • 上线了建站怎么样ppt模板免费下载 素材千图网
  • 西安 房产网站建设做网站的劣势
  • 下载站模板 wordpress网站建设公司实力
  • 遵义网页青岛网站优化价格
  • 网站建设易尔通做淘客的网站关键词有哪些
  • wap网站软件怎么做领券网站
  • 海口建设网站的公司方寸网站建设
  • 外贸网站设计公司asp.net 网站管理工具 安全
  • 重庆网站建设制作设计公司丰宁建设局网站
  • 珠海网站建设维护做私活一个网站大概多少钱
  • 如何更改网站关键词高端网站建设 n磐石网络
  • 营销网站制作方法做ppt的模板网站有哪些
  • 长乐建设局网站网站建设承揽合同
  • 购物网站常用的多组图左右轮播的js图片特效代码wordpress使用邮件发博客
  • 网站建设 流程济宁网站建设公司电话
  • 网站建设总体框架wordpress 即时通迅
  • 岗巴网站建设开一个公司需要多少钱
  • 平凉崆峒建设局网站wordpress文章时间轴
  • 做网站的数据库的选择免费建各种网站
  • 辉县市建设局网站云南省住房与城乡建设厅网站
  • 企业网站功能模块介绍wordpress自定义段
  • 做影视网站违法莫公司网站建设30元
  • 南阳做网站公司电话国外网络推广方法
  • 网站托管做的好的公司创建网站需要什么条件
  • 商城网站制作方案商贸营销型网站案例
  • 台州外贸网站建设提高网站打开速度的7大秘籍
  • 浙江手机版建站系统开发大庆加油app老版本
  • dw模板制作网站的缺点欧亚快递100