linux net
red.dust
这个作者很懒,什么都没留下…
展开
-
route add -net x.x.x.x netmask x.x.x.x dev eht0
route命令用于显示和操作IP路由表。要实现两个不同的子网之间的通信,需要一台连接两个网络的路由器,或者同时位于两个网络的网关来实现。在Linux系统中,设置路由通常是 为了解决以下问题:该Linux系统在一个局域网中,局域网中有一个网关,能够让机器访问Internet,那么就需要将这台机器的IP地址设置为 Linux机器的默认路由。要注意的是,直接在命令行下执行route命令来添加路由,不会永转载 2016-11-28 10:19:42 · 20793 阅读 · 0 评论 -
Linux IPv4报文处理浅析
对于接收到的报文,如果不被丢弃、不被网桥转发,会调用netif_receive_skb()提交给IP层;而对于IP层向外发送的报文,则通过调用dev_queue_xmit()提交给数据链路层。本文就以netif_receive_skb()和dev_queue_xmit()为起始,简要介绍一下报文在IP层的处理过程。先来一张图:报文接收(图中橙色箭头所指)转载 2016-12-31 20:27:02 · 987 阅读 · 0 评论 -
skb head/data/tail/end/介绍
This first diagram illustrates the layoutof the SKB data area and where in that area the various pointers in 'structsk_buff' point.The rest of this page will walk throughwhat the SKB data area looks转载 2017-04-26 18:21:12 · 4666 阅读 · 0 评论 -
HTTP CHUNKED
服务端给浏览器发送报文时,必须告诉浏览器报文的大小,这样浏览器可以根据报文大小来判断报文的完整性以及在长连接中确定报文的截尾。但是很多服务器的报文是动态创建的,在发送之前是无法确定其大小的。服务器只有等待内容全部创建后,计算出主体的大小,才能响应客户端的请求,这样的处理方法大大延迟了响应。传输编码中的分块编码为这种困难提供了解决方案,服务器可以逐块发送主体,并说明每块的大小就可以了。HTTP协议中转载 2017-02-10 17:57:25 · 1104 阅读 · 1 评论 -
FTP主动模式和被动模式的比较
FTP主动模式和被动模式的比较转载 2017-02-10 17:45:54 · 285 阅读 · 0 评论 -
ip分片与linux实现(整理自网络)
http://blog.chinaunix.net/uid-23849526-id-240157.htmlIP报文格式: 与分片有关的是'标志'字段,标志字段占3bit。目前只有前两个比特有意义。 |R|DF|MF| R:保留未用。 DF:Don't Fragment,“不分片”位,如果将这一比特置1 ,IP层转载 2016-12-28 16:14:26 · 5016 阅读 · 0 评论 -
linux内核sk_buff的结构分析
http://simohayha.iteye.com/blog/556168内核版本是2.6.32. 在内核中sk_buff表示一个网络数据包,它是一个双向链表,而链表头就是sk_buff_head,在老的内核里面sk_buff会有一个list域直接指向sk_buff_head也就是链表头,现在在2.6.32里面这个域已经被删除了。 而sk_buff的内存布局可以分作3个段,第转载 2016-12-28 15:27:03 · 687 阅读 · 0 评论 -
socket从userspace到kernel的api执行过程(不含tcp/ip协议栈部分)
glibc版本2.3.6。Kernel版本:4.3Userspace glibc接口说明glibc中socket接口定义:(glibc-x.x.x/sysdeps/generic/socket.cx.x.x是版本号)int __socket (domain, type, protocol) int domain; int原创 2016-11-29 17:33:01 · 1666 阅读 · 0 评论 -
关于TCP乱序和重传的问题
TCP是一个巨复杂的协议,因为他要解决很多问题,而这些问题又带出了很多子问题和阴暗面。所以学习TCP本身是个比较痛苦的过程,但对于学习的过程却能让人有很多收获。关于TCP这个协议的细节,我还是推荐你去看W.Richard Stevens的《TCP/IP 详解 卷1:协议》(当然,你也可以去读一下RFC793以及后面N多的RFC)。另外,本文我会使用英文术语,这样方便你通过这些英文关键词来查找相转载 2017-01-04 18:37:15 · 4201 阅读 · 1 评论 -
dpdk 代码分析一
http://www.cnblogs.com/jiayy/p/3429725.html一 前言http://www.dpdk.org/ dpdk 是 intel 开发的x86芯片上用于高性能网络处理的基础库,业内比较常用的模式是linux-app模式,即利用该基础库,在用户层空间做数据包处理,有了这个基础库,可以方便地在写应用层的网络包处理高性能程序,目前该库已经开转载 2016-12-21 16:34:41 · 5384 阅读 · 0 评论 -
以rtl8169 pci简单介绍pic module加载过程以及部分数据结构关系图
pci设备驱动模块包括:设备初始化模块,设备加载模块,设备释放模块,设备卸载模块,数据和控制模块,中断处理模块等。每类pci设备驱动都会有一个struct pci_device_id 设备id表,表中的vendor,device表示着厂商ID和厂商设备ID,如果这两个成员不能区分设备,那么就会用subverdor,subdevice来区分,subxxx分别对应的是该设备是否有别名,绝大多数设备原创 2016-11-29 17:20:01 · 560 阅读 · 0 评论