E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
linux协议栈
关于ICMP Redirect路由的一个不是bug的bug
在新公司碰到的第一个网络问题竟然是关于重定向路由的,这个不常被关注的问题竟然花费了我整整一下午时间来整理,本文介绍
Linux协议栈
是如何对待重定向路由的。
dog250
·
2024-01-05 15:52
LINUX 路由子系统流程分析
title:LINUX路由子系统流程分析date:2020-11-28categories:Linuxtags:LinuxRouting-Subsystem上次分析了
Linux协议栈
的收包过程。
Megahertz66
·
2023-09-06 20:14
linux
networking
linux
kernel
路由器
网络基础-PosixAPI
文章目录一.网络常用接口
Linux协议栈
与posixapi的关系背景1.1socket1.8close服务端posix接口1.2bind1.3listen1.4accept1.5connect1.6send1.7recv
技术鱼
·
2023-08-28 12:56
网络
【
LINUX协议栈
】netfilter之连接跟踪机制
1、什么是链接跟踪连接跟踪,顾名思义,就是跟踪(并记录)连接的状态。一般conntrack用来指代“ConnectionTracking”,即连接跟踪,是建立在Netfilter框架之上的重要功能之一。2、为什么需要链路跟踪因为它是状态防火墙和NAT的实现基础。3、内核中的链接跟踪用于实现连接跟踪入口的hook函数以较高的优先级分别被注册到了netfitler的NF_IP_PRE_ROUTING和
凡人不会死
·
2023-08-24 22:48
内核协议栈
linux
服务器
连接跟踪
网络协议
netfilter
【
LINUX协议栈
】netfilter之filter表、mangle表、nat表、raw表
1、filter表Filter表是以kernelmodule形式加载的(insmodiptable_filter)入口在net/ipv4/netfilter/iptable_filter.c中Filter表主要在以下Hook点起作用:#defineFILTER_VALID_HOOKS((1entries)[1].target.verdict=forward?-NF_ACCEPT-1:-NF_DRO
凡人不会死
·
2023-08-19 08:29
内核协议栈
linux
网络
netfilter
协议栈
iptables
RDMA如何实现高IO低延时
零拷贝指的是不需要内核和应用层进行拷贝数据,从而降低内核态和用户态切换2.kernalbypass指的是传统网络数据包需要使用linux内核协议栈进行层层解封装,并且需要大量中断给cpu造成很大的负担,而kernalbypass可以绕过
linux
3333333_
·
2023-04-14 13:50
Linux
存储
网络
服务器
运维
RDMA
linux
图解网络 记录
小林coding-图解网络篇学习记录小林coding学习链接:https://www.xiaolincoding.com/2基础篇2.1TCP/IP模型2.2网页到显示发生什么重点2.3网络模型-
Linux
Ray Song
·
2022-10-04 21:13
CS基础
计算机网络
图解网络
计算机基础
#68 网络知识十全大补丸 【 Go 夜读 】
#68网络知识十全大补丸【Go夜读】大纲网络硬件介绍网络部署模式
Linux协议栈
Linux防火墙前沿网络传输技术https://www.bilibili.com/video/BV1vJ41127p2?
远方的飞猪
·
2020-11-04 21:58
go
linux协议栈
pf_packet相关分析
一:名词解释:1,BSDsocket层:bsdsocket是Berkeley套接字应用程序接口(API)包括了一个用C语言写成的应用程序开发库,主要用于实现进程间通讯,在计算机网络通讯方面被广泛使用。Berkeley套接字接口的定义在几个头文件中。这些文件的名字和内容与具体的实现之间有些许的不同。大体上包括:这个列表是一个Berkeley套接字API库提供的函数或者方法的概要:socket()创建
ttyttytty12
·
2020-08-20 01:55
c
linux
linux协议栈
之链路层上的数据传输之网卡驱动
文章来源:http://blog.chinaunix.net/u1/51562/showart_405963.htmlhttp://ericxiao.cublog.cn/对内核源码分析的比较详细,感谢文章作者无私奉献本文欢迎转载!转载请注明出处:http://ericxiao.cublog.cn/------------------------------------------>第三季的第五集,
yangdelong
·
2020-08-14 05:20
linux协议栈
之链路层上的数据传输-----从网卡驱动说起(一)
出处:http://ericxiao.cublog.cn/------------------------------------------二:从网卡驱动说起。以intel100M网卡驱动为例简要概述数据包的接收与发送流程。代码见(drivers/net/e100.c)网卡是属于PCI设备,它的注册跟一般的PCI设备注册没什么两样。staticint__inite100_init_module(
luoye144200720102030
·
2020-08-14 05:58
linux
linux网络子系统分析(一)——协议栈分层实现综述
目录一、概述二、Linux网络子系统的分层2.1为何要分层2.2协议无关接口2.3网络协议层2.4设备无关接口2.5设备层三、参考一、概述开篇,总结一下对
linux协议栈
的理解,备忘。
whenloce
·
2020-08-12 14:17
linux网络子系统
Linux内核学习总结(附录
linux协议栈
函数调用图)
Linux内核学习总结作者:北京—小武邮箱:
[email protected]
新浪微博:北京-小武Linux操作系统以GPL作为限制条款进行开源,对计算机界产生了巨大影响。在短短的二十年里迅速壮大。Linux内核从产生到现在一直在不断被改进,现在就我最近对其学习内容和体会进行下总结。学习所用书籍是美国RobertLove著的《linux内核设计和实现》。下面段落中用红色字体标注知识点关键字
night_elf_1020
·
2020-08-09 22:17
桥接
Linux协议栈
实现——《TCP/IP协议栈源码阅读笔记》
1.网桥设备处理的基本流程2.重要数据结构mac_addr:MAC地址。bridge_id:网桥ID。net_bridge_fdb_entry:转发数据库的记录项。net_bridge_port:网桥端口。br_config_bpdu:入口配置BPDU的一些关键字段会复制到该数据结构中,此结构会将这些字段传给处理配置BPDU的函数,而不是由原BPDU来传递。3.handle_bridge函数3.1
骑蚂蚁上高速54
·
2020-08-05 04:29
TCP/IP协议栈源码阅读笔记
kubernetes的网络实现
之间的容器间通信;不同节点下容器之间的通信;集群外部与内部组件的通信;pod与service之间的通信;同一pod下容器与容器的通信同一个pod下的容器之间的通信,其实原理很简单,因为容器都在共用一个
linux
跨界师
·
2020-07-31 12:54
linux 实现主动arp resolve 功能
根据目的ip,通过路由表找到出口设备;然后,通过socket发送icmpechorequest报文,因为目的ip对应的mac地址还没有,所以linuxtcp/ip协议栈会发送arprequest报文,这样
linux
朱金林
·
2020-07-30 21:27
Linux
网络技术
linux协议栈
中网卡相关的名词解释
摘自:http://blog.csdn.net/w_s_xin/article/details/11632089和http://blog.csdn.net/w_s_xin/article/details/11636651这个文档介绍了Linux网络协议栈中一系列互补的技术。这些技术用来增加多处理器系统的并行性和改善性能。这些技术包括:RSS:ReceiveSideScaling(接收侧的缩放)RP
scdxmoe
·
2020-07-30 00:56
linux网卡
linux网络协议栈
Linux协议栈
IP层的路由处理
其实我的意图是说明
Linux协议栈
IP层,对数据包的路由处理,比如说,如果有两个网卡设备,数据包该从哪里走,等等。。。
天天向上_好好学习
·
2020-07-13 03:56
linux
c
网络
关于UDP接收icmp端口不可达(port unreachable)
本篇分为3部分1:报文格式2:产生的原因3:
linux协议栈
如何处理4:应用层如何获取1:报文如下,10.30.13.1往10.30.16.10的80端口发送了一个UDP报文,80端口其实监听的是TCP
Mrpre
·
2020-07-11 13:45
网络协议
Liunx内核
协议栈之packet_type
比如,arp头和ip头都是紧跟在以太网头后面的,所以在
linux协议栈
中arp和ip地位相同(如上图)但是在OSI七层模型中,arp属于链路层,ip属于网络层…这里就不死抠概念,我们就说arp,ip都属于第二层
正在攀登的小蜗牛
·
2020-07-09 22:59
网络
Linux内核完全解读
Linux协议栈
(4)——sk_buff及代码
Linux协议栈
(4)——sk_buff及代码
sk_buff结构可能是网络代码中最重要的数据结构。代表已接收或正要传输的数据报。定义在include/linux/skbuff.h头文件中。由变量堆(heap)组成。用于管理网络数据包。操作sk_buff的函数定义在net/core/skbuff.c中。当网络包被内核接收处理时,底层协议的数据被传送高层,当数据传送时,过程反过来。sk_buff在网络实现层交换数据而不用拷贝来或去数据包,可以显著
badman250
·
2020-07-09 21:59
Linux
网络
linux网络协议栈
linux协议栈
之链路层上的数据传输-----数据接收
出处:http://ericxiao.cublog.cn/------------------------------------------四:数据接收为了了解网卡数据接收的过程。有必要先讨论DMA的具体过程。DMA传输数据可以分为以下几个步骤:首先:CPU向DMA送命令,如DMA方式,主存地址,传送的字数等,之后CPU执行原来的程序.然后DMA控制在I/O设备与主存间交换数据。接收数据完后,向
luoye144200720102030
·
2020-07-04 23:56
linux
网络数据包收发流程(四):协议栈之packet_type
比如,arp头和ip头都是紧跟在以太网头后面的,所以在
linux协议栈
中arp和ip地位相同(如上图)但是在OSI七层模型中,arp属于链路层,ip属于网络层.....这里就不死抠概念,我们就说arp,
jw212
·
2020-07-04 20:32
linux
杂文
Linux协议栈
报文收发流程记录
来自:http://blog.chinaunix.net/uid-22397896-id-3348984.htmlRX流程1.非NAPI的RXdriver的isr调用eth_type_trans//确定skb->pkt_type和skb->protocoldriver的isr调用netif_rx//可查看返回值,NET_RX_DROP表示丢包,__skb_queue_tail(&queue->in
胡小夜
·
2020-07-04 18:51
网络安全防火墙
Linux协议栈
(1)——协议介绍
Linux协议栈
(1)——协议介绍本系列材料是关于Linux网络内核协议栈的,总体上将其分10个文章,主要目的是简明扼要的描述
Linux协议栈
在内核中的实现,从总体上掌握linux网络协议栈。
weixin_34343308
·
2020-07-04 03:46
Linux协议栈
(8)——传输层实现
Linux协议栈
(8)——传输层实现ip_local_deliver负责分发IP分组传输的数据内容。基于IP的主要传输协议分别是UDP和TCP。处理函数分别是udp_rcv和tcp_rcv。
badman250
·
2020-07-04 01:09
Linux
网络
linux网络协议栈
Linux协议栈
(6)——初始化及链路层实现
这篇主要学习链路层在内核协议栈的实现,包括初始化、注册以及接收发送,会涉及相关函数和代码所在位置。我们知道以太网不仅可以传输IP分组,还可以传输其他协议的分组,接收系统必须能够区分不同的协议类型,以便将数据转发到正确的例程进一步处理。因为分析数据并查明所用传输协议比较耗时,所以在以太网的帧首部包含了一个标识符,ip数据包的以太类型为0x0800,存在在以太网14字节报头中的前两个字节中。(定义在i
badman250
·
2020-07-04 01:09
Linux
网络
linux网络协议栈
linux协议栈
skb操作函数
一.SKB_BUFF的基本概念1.一个完整的skbbuff组成(1)structsk_buff--用于维护socketbuffer状态和描述信息(2)headerdata--独立于sk_buff结构体的数据缓冲区,用来存放报文分组,使各层协议的header存储在连续的空间中,以方便协议栈对其操作(3)structskb_shared_info--作为headerdata的补充,用于存储ip分片,其
manchestermi
·
2020-07-02 11:17
Linux设备驱动
Linux协议栈
-netfilter(1)-框架
1.netfilter框架Netfilter是Linux内核中进行数据包过滤、连接跟踪、地址转换等的主要实现框架。当我们希望过滤特定的数据包或者需要修改数据包的内容再发送出去,这些动作主要都在netfilter中完成。iptables工具就是用户空间和内核的Netfilter模块通信的手段,iptables命令提供很多选项来实现过滤数据包的各种操作,所以,我们在定义数据包过滤规则时,并不需要去直接
落尘纷扰
·
2020-06-23 20:19
Linux内核源码
如何评测一个软件工程师的计算机网络知识水平与网络编程技能水平?
一、
Linux协议栈
总结本课程重点关注传输层协议和socket以及内核初始化和相关函数调用,顺序如下,试题主要也是按照此顺序编写Linux网络总体结构--->TCP/IP简介--->socket--->
zhouzhouL
·
2020-01-10 22:00
netfilter连接跟踪主要数据结构
linux协议栈
中netfiler框架对数据包做过滤处理基本上都是基于连接跟踪来做的,比如snat、dnat等,连接跟踪就是记录数据流在协议栈中的两个方向,不同的协议有不同的特征,tcp/udp就是五元组
TCH_world
·
2018-12-09 16:22
网络
协议栈
个人笔记
netfilter
连接跟踪
DPDK系列(二)——性能提升
只不过
linux协议栈
的这部分在核心态。你说的包处理器,很多时候是不用linux内核协议栈的,而是用专用包处理程序,类似于DPDK加上层应用处理。通常会有些硬件加速器,包处理效率更高些。
DaveyAndDomi
·
2017-11-07 11:11
开源
个人面试经历题
9,
linux协议栈
。10,实现一种协议完成数据传输。11,线程间的生产者与消费者模型。12,用户态到内核态的通信方式。13,实现一种高效的用户态到内核态的数据传输方式。14,常见的排序算法。
liunian_siyu
·
2017-02-06 19:03
个人提高类
DPDK与Socket区别
只不过
linux协议栈
的这部分在核心态。你说的包处理器,很多时候是不用linux内核协议栈的,而是用专用包处理程序,类似于DPDK加上层应用处理。通常会有些硬件加速器,包处理效率更高些。
dq5070410
·
2016-04-07 21:46
网络编程
#TCP你学得会# 之 TCP_SYN_RECV的真相
的三次握手恐怕是网络从业者最早接触的几个概念之一了(协议栈的分层架构应该是另一个),但是一直以来你以为的三次握手流程真的是你以为的那样吗,这次我们就重点关注一下TCP_SYN_RECV这个状态,顺藤摸瓜,看看它在
Linux
nodouble
·
2016-03-04 01:00
linux
TCP_SYN_RECV
#
Linux协议栈
你学得会# 之 本机地址 vs 127.0.0.1
记得初学网络之时就曾困惑于ping本机地址与ping127.0.0.1之间的区别与联系,也试图在网上搜寻答案,但终究还是雾里看花,似是而非。 “源码之前,了无秘密”,这次就深入Linux内核协议栈,来看看这两者之间到底是什么样的关系 凭直觉首先会想到这一定和路由表的查找有关,更进一步来说是和路由类型及外出接口有关。在Linux系统中,与外界通信相关的路由条目存储在主路由表(ma
nodouble
·
2016-02-25 18:00
linux
kernel
stack
127.0.0.1
linux 内核网络协议栈阅读理解--带详尽注释以及相关流程调用注释,附 github 注释后源码
linux内核网络协议栈阅读理解--带详尽注释以及相关流程调用注释,对理解内核协议栈源码很有帮助 对理解阅读
linux协议栈
源码很用帮助 github地址: https://github.com/y123456yz
yoxi123123
·
2016-02-07 09:00
关于ICMP Redirect路由的一个不是bug的bug
在新公司碰到的第一个网络问题竟然是关于重定向路由的,这个不常被关注的问题竟然花费了我整整一下午时间来整理,本文介绍
Linux协议栈
是如何对待重定向路由的。
dog250
·
2015-11-22 14:00
[置顶]
Linux协议栈
代码阅读笔记(一)
Linux协议栈
代码阅读笔记(一) (基于linux-2.6.21.7) (一)用户态通过诸如下面的C库函数访问协议栈服务 int socket(int domain, int type, int
·
2015-11-13 09:35
linux
Linux协议栈
代码阅读笔记(二)网络接口的配置
Linux协议栈
代码阅读笔记(二)网络接口的配置 (基于linux-2.6.11) (一)用户态通过C库函数ioctl进行网络接口的配置 例如,知名的ifconfig程序,就是通过C库函数sys_ioctl
·
2015-10-31 10:32
linux
[置顶]
Linux协议栈
代码阅读笔记(二)网络接口的配置
Linux协议栈
代码阅读笔记(二)网络接口的配置 (基于linux-2.6.11) (一)用户态通过C库函数ioctl进行网络接口的配置 例如,知名的ifconfig程序,就是通过C库函数sys_ioctl
·
2015-10-27 15:25
linux
多核心Linux内核路径优化的不二法门之-多核心平台TCP优化
事实上
Linux协议栈
本来就是面向两个方向的,一个是转发,更多的是本地接收。目前大量的服务器采用Linux作为其载体,更加体现了协议栈本地处理相对于转发的重要性,因此本文就这个问题扯两句,欢迎拍砖!
dog250
·
2015-09-23 23:24
linux
服务器
源代码
解决方案
皮鞋厂
多核心Linux内核路径优化的不二法门之-多核心平台TCP优化
事实上
Linux协议栈
本来就是面向两个方向的,一个是转发,更多的是本地接收。目前大量的服务器采用Linux作为其载体,更加体现了协议栈本地处理相对于转发的重要性,因此本文就这个问题扯两句,欢迎拍砖!
dog250
·
2015-09-23 23:24
linux
源代码
服务器
解决方案
皮鞋厂
多核心Linux内核路径优化的不二法门之-多核心平台TCP优化
事实上
Linux协议栈
本来就是面向两个方向的,一个是转发,更多的是本地接收。目前大量的服务器采用Linux作为其载体,更加体现了协议栈本地处理相对于转发的重要性,因此本文就这个问题扯两句,欢迎拍砖!
dog250
·
2015-09-23 23:24
Linux
服务器
解决方案
[置顶] 多核心Linux内核路径优化的不二法门之-多核心平台TCP优化
事实上
Linux协议栈
本来就是面向两个方向的,一个是转发,更多的是本地接收。目前大量的服务器采用Linux作为其载体,更加体现了协议栈本地处理相对于转发的重要性,因此本文就这个问题扯两句,欢迎拍砖!
dog250
·
2015-09-23 23:00
linux
linux
优化
tcp
server
tcp
kernel
多核
多核心Linux内核路径优化的不二法门之-多核心平台TCP优化
事实上
Linux协议栈
本来就是面向两个方向的,一个是转发,更多的是本地接收。目前大量的服务器采用Linux作为其载体,更加体现了协议栈本地处理相对于转发的重要性,因此本文就这个问题扯两句,欢迎拍砖!
dog250
·
2015-09-23 23:00
linux内核
一个Netfilter nf_conntrack流表查找的优化-为conntrack增加一个per cpu cache
独悲需要忍受,快乐需要分享对
Linux协议栈
多次perf的结果,我无法忍受conntrack的性能,然而它的功能是如此强大,以至于我无法对其割舍,我想自己实现一个快速流表,但是我不得不抛弃依赖于conntrack
dog250
·
2015-08-01 23:32
Linux
IP地址
动态
一个Netfilter nf_conntrack流表查找的优化-为conntrack增加一个per cpu cache
独悲需要忍受,快乐需要分享对
Linux协议栈
多次perf的结果,我无法忍受conntrack的性能,然而它的功能是如此强大,以至于我无法对其割舍,我想自己实现一个快速流表,但是我不得不抛弃依赖于conntrack
dog250
·
2015-08-01 23:32
linux
动态
IP地址
数据流
最大的
一个Netfilter nf_conntrack流表查找的优化-为conntrack增加一个per cpu cache
独悲需要忍受,快乐需要分享对
Linux协议栈
多次perf的结果,我无法忍受conntrack的性能,然而它的功能是如此强大,以至于我无法对其割舍,我想自己实现一个快速流表,但是我不得不抛弃依赖于conntrack
dog250
·
2015-08-01 23:32
linux
动态
IP地址
数据流
最大的
一个Netfilter nf_conntrack流表查找的优化-为conntrack增加一个per cpu cache
独悲需要忍受,快乐需要分享对
Linux协议栈
多次perf的结果,我无法忍受conntrack的性能,然而它的功能是如此强大,以至于我无法对其割舍,我想自己实现一个快速流表,但是我不得不抛弃依赖于conntrack
dog250
·
2015-08-01 23:12
上一页
1
2
3
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他