linux
yong61
这个作者很懒,什么都没留下…
展开
-
linux socket 操作链路层
Linux提供最常用的网络通信应用程序开发接口--Berkerley套接字(Socket).它既适用于同一主机上进程间通信(IPC),又适用于不同主机上的进程间通信。套接字的设置通过socket调用完成:int socket(int family,int type,int protocol);其中family指通信域或协议族,Linux系统支持的网络协议族有PF_UNIX,PF_I原创 2013-01-28 16:58:47 · 2213 阅读 · 0 评论 -
linux网络编程函数
socket()我们使用系统调用socket()来获得文件描述符:#include#includeint socket(int domain,int type,int protocol);第一个参数domain设置为“AF_INET”。第二个参数是套接口的类型:SOCK_STREAM或SOCK_DGRAM。第三个参数设置为0。系统调用socket()只返回一个套原创 2013-01-28 17:03:07 · 436 阅读 · 0 评论 -
linux icotl函数解析
ioctl函数 本函数影响由fd参数引用的一个打开的文件。 #includeint ioctl( int fd, int request, .../* void *arg */ );返回0:成功 -1:出错 第三个参数总是一个指针,但指针的类型依赖于request参数。 我们可以把和网络相关的请求划分为6类:套接口操作文件操作接口操作A转载 2013-01-29 11:41:04 · 982 阅读 · 0 评论 -
libpcap库函数介绍(附源代码)
libpcap的英文意思是 Packet Capture library,即数据包捕获函数库。该库提供的C函数接口可用于需要捕获经过网络接口(只要经过该接口,目标地址不一定为本机)数据包的系统开发上。由 Berkeley大学Lawrence Berkeley National Laboratory研究院的Van Jacobson、Craig Leres和Steven McCanne编写。该函数转载 2013-01-28 15:56:24 · 912 阅读 · 0 评论 -
链路层套接字PF_PACKET简介
在linux环境中要从链路层(MAC)直接收发数据帧,可以通过libpcap与libnet两个动态库来分别完成收与发的工作。虽然它已被广泛使用,但在要求进行跨平台移植的软件中使用仍然有很多弊端。这里介绍一种更为直接地、无须安装其它库的从MAC层收发数据帧的方式,即通过定义链路层的套接字来完成。Packet套接字用于在MAC层上收发原始数据帧,这样就允许用户在用户空间完成MAC之上各个层次的原创 2013-01-28 17:00:46 · 5473 阅读 · 0 评论 -
linux2.6内核ppp分析
1 简介ppp协议(点到点协议),在拨号网络中应用比较广泛,逐渐在替代slip协议。ppp数据包格式为:| 协议码 | 载荷 |填充符ppp主要有四类协议码: 1 0x0001 - 0x3fff 网络层协议(ipv4,ipv6,ipx,appletalk) 2 0x4001 - 0x7fff 无网络层协议参与的小载荷量传输(低整流量) 3转载 2013-03-19 15:14:18 · 660 阅读 · 0 评论 -
Makefile 中:= ?= += =的区别
在Makefile中我们经常看到 = := ?= +=这几个赋值运算符,那么他们有什么区别呢?我们来做个简单的实验新建一个Makefile,内容为:ifdef DEFINE_VRE VRE = “Hello World!”elseendififeq ($(OPT),define) VRE ?= “Hello World! First!”endif转载 2014-01-10 14:37:28 · 447 阅读 · 0 评论