网络编程
文章平均质量分 75
「已注销」
这个作者很懒,什么都没留下…
展开
-
学习njit-client的一点助记
struct bpf_program fcode; /*存放已经编译好的过滤表达式*/获取网络接口(网卡)后,我们需要打开它:pcap_t * pcap_open_live(const char * device, int snaplen, int promisc, int to_ms, char * errbuf)功能:获得数据包捕获描述字上面这个函数会返回指定接口的p原创 2016-01-12 19:04:34 · 751 阅读 · 0 评论 -
解决:C语言调用pcap库出现unknown types error
解决unknown types error。转载 2016-01-12 17:11:23 · 3272 阅读 · 0 评论 -
基于UDP的多线程网络数据包收发测试程序
这段程序同样用来测试使用recvmmsg()与sendmmsg()后的丢包率,只不过这次用pthread_create()创建了4个线程,使用g++ client.c -o client -lpthread编译。由于第一次用pthread_create()函数,不是很熟悉,程序中有不足的地方还望指出。文件一:wrap.h#ifndef _WRAP_H_#define _WRAP_原创 2016-01-12 18:58:27 · 1144 阅读 · 0 评论 -
链路层套接字PF_PACKET简介
本文转载自:http://blog.sina.com.cn/s/blog_5431fc8301008yfd.html在linux环境中要从链路层(MAC)直接收发数据帧,可以通过libpcap与libnet两个动态库来分别完成收与发的工作。虽然它已被广泛使用,但在要求进行跨平台移植的软件中使用仍然有很多弊端。这里介绍一种更为直接地、无须安装其它库的从MAC层收发数据帧的方式,即通过转载 2016-01-12 19:03:41 · 1304 阅读 · 0 评论 -
给结构体指针分配内存后依然出现段错误的解决
因为写一个UDP程序遇到了一个recvmmsg(),里面有个参数是mmsghdr结构体的指针,mmsghdr结构体如下:struct mmsghdr{ struct msghdr msg_hdr; unsigned int msg_len;}; struct msghdr{ void *msg_name; socklen_原创 2016-01-12 17:50:48 · 1984 阅读 · 0 评论 -
基于UDP的单线程网络点对点数据包收发测试程序
分享一段基于UDP的单线程网络点对点数据包收发测试程序。这段程序我是用来测试使用recvmmsg()与sendmmsg()后的丢包率(这两个函数的信息可以man出来),使用g++编译,程序中可能有不足的地方还望指出。 文件一:wrap.h#ifndef _WRAP_H_#define _WRAP_H#ifndef __USE_GNU#define __USE_GN原创 2016-01-12 18:55:38 · 1153 阅读 · 0 评论