- 博客(51)
- 资源 (12)
- 收藏
- 关注
转载 Linux网络编程——端口复用(多个套接字绑定同一个端口)
http://blog.youkuaiyun.com/tennysonsky/article/details/44062173在《绑定( bind )端口需要注意的问题》提到:一个网络应用程序只能绑定一个端口( 一个套接字只能绑定一个端口 )。实际上,默认的情况下,如果一个网络应用程序的一个套接字 绑定了一个端口( 占用了 8000 ),这时候,别的套接字就无法使用
2017-03-13 18:58:00
9110
1
转载 《深入理解Linux内核》软中断/tasklet/工作队列
http://www.cnblogs.com/li-hao/archive/2012/01/12/2321084.html软中断、tasklet和工作队列并不是Linux内核中一直存在的机制,而是由更早版本的内核中的“下半部”(bottom half)演变而来。下半部的机制实际上包括五种,但2.6版本的内核中,下半部和任务队列的函数都消失了,只剩下了前三者。本文重点在于介绍这三者之
2017-03-08 16:25:41
743
转载 两种以太网 RDMA 协议: iWARP 和 RoCE
http://weibo.com/p/1001603936363903889917?mod=zwenzhang本文是讲演 How Ethernet RDMA Protocols iWARP and RoCE Support NVMe over Fabrics【1】的摘要。如果 NVMe 存储系统与主机是分离的,显然需要某种 fabric 把它们连接,这样主机才能使用
2017-03-08 16:10:09
18486
转载 Where Softirq Is Invoked
summarysoftirq 真正干活的函数是__do_softirq。 linuxv3.11内核里能够执行__do_softirq,有如下调用, 这里指真正执行softirq的地方,不是触发(设置)softirq标志 !!!每个硬中断退出的时。当bh使能的时。发送回环报文时。case1 每个硬中断退出的时候。call trace
2017-03-08 12:45:25
954
转载 REEMPT_ACTIVE标志在内核抢占中的作用
Linux从2.6开始支持内核抢占,意味着即使进程运行在内核态也可以被抢占。为了支持内核抢占,代码中为每个进程的 thread_info 引入了 preempt_count 计数器,数值为0的时候表示可以内核抢占,每当进程持有内核锁的时候把 preempt_count 计数器加1,表示禁止内核抢占。此外还有一些其它禁止内核抢占的场景,也通过 preempt_counter 字段反应出来:preem
2017-03-08 12:41:38
861
转载 OpenvSwitch-匹配流程
http://blog.youkuaiyun.com/alex0/article/details/8871711版本:OVS 1.7.1简称:dp->datapath, of->OpenFlow, sw->switch背景:报文匹配的流程可以说是对一个switch效率影响最大的地方,现在已经有很多厂家(包括一些研究院)说可以做到比OVS效率高十倍的流
2014-05-29 16:51:56
5588
转载 open vswitch研究:vswitchd
http://blog.youkuaiyun.com/majieyue/article/details/8103367vswitchd是用户态的daemon进程,其核心是执行ofproto的逻辑。我们知道ovs是遵从openflow交换机的规范实现的,就拿二层包转发为例,传统交换机(包括Linux bridge的实现)是通过查找cam表,找到dst mac对应的port;而open vswitch
2014-05-29 14:16:25
1892
转载 open vswitch研究:datapath
http://blog.youkuaiyun.com/majieyue/article/details/7908052struct vport是OVS的设备结构,个人认为非常类似于kernel里的netdev结构/** * struct vport - one port within a datapath * @rcu: RCU callback head for deferred
2014-05-29 14:15:38
3017
转载 Linux Switching – Interconnecting Namespaces
http://www.opencloudblog.com/?p=66Switching in software on Linux is one of the important parts when using virtualization technologies like KVM or LXC. Typical hosts do not provide one or mor
2014-05-20 10:56:09
1340
转载 为什么Nicira要抛弃OpenFlow硬件控制?
http://net.zdnet.com.cn/network_security_zone/2013/0105/2138778.shtml#摘要:5年前,当Nicira创始人Martin Casado在斯坦福大学攻读博士学位时,他准备转变网络运营模型,使之能够跟上数据中心内服务器自动虚拟化的发展。Casado原以为他的发明OpenFlow能够解决这个问题,但是现在他承认自已当初想法
2014-05-20 10:04:08
1033
转载 Open vSwitch(开放虚拟交换标准)详解
http://www.searchnetworking.com.cn/showcontent_46008.htm导读:本文介绍Open vSwitch以开源技术作为基础,主要实现代码为可移植的C代码。其官方定位是做一个产品级质量的多层虚拟交换机,通过支持可编程扩展实现大规模网络自动化。关键词:Open vSwitch 开放虚拟交换标准 虚拟交换
2014-05-20 09:52:42
2731
转载 Linux下VLAN功能的实现
http://www.cnblogs.com/zmkeil/archive/2013/04/18/3029339.html
2014-05-14 10:29:45
8700
转载 Linux下的虚拟Bridge实现
http://www.cnblogs.com/zmkeil/archive/2013/04/21/3034733.htmlLinux下的虚拟Bridge实现
2014-05-14 10:24:58
16534
转载 防火墙何时消失
http://blog.chinaunix.net/uid-127037-id-2919450.html 本文档的Copyleft归yfydz所有,使用GPL发布,可以自由拷贝,转载,转载时请保持文档的完整性,严禁用于任何商业用途。msn: yfydz_no1@hotmail.com来源:http://yfydz.cublog.cn防火墙出现比其他网络设备如路由器、交换机等
2013-01-15 13:07:42
1098
转载 Ipsec Nat-Traversal 2
1. 前言IPSec提供了端到端的IP通信的安全性,但在NAT环境下对IPSec的支持有限,AH协议是肯定不能进行NAT的了,这和AH设计的理念是相违背的;ESP协议在NAT环境下最多只能有一个VPN主机能建立VPN通道,无法实现多台机器同时在NAT环境下进行ESP通信。关于IPSec在NAT环境下的需求问题在RFC3715中进行了描述。NAT穿越(NAT Trav
2012-12-31 13:36:45
3661
转载 ECB CBC DES TDES
http://hi.baidu.com/xkwgubcpbxbkryq/item/b94e3a0b9fd401d11ef046ee这一篇文章要解决数据加密——数据补位的问题、DES算法的两种模式ECB和CBC问题以及更加安全的算法——3DES算法。一、数据补位DES数据加解密就是将数据按照8个字节一段进行DES加密或解密得到一段8个字节的密文或者明文,最后一段不足8个字
2012-12-27 13:32:28
2448
原创 Big endian and Little endian
1 概述 大小端(endian)会同时涉及byte序和bit序。大端指低地址,高byte,高bit;小端指低地址,低byte,低bit。为方便讨论,下面以IP地址 A.B.C.D 为例,每个byte中bit值用不同的字母来区分。该IP地址在不同 endian 中内存布局如下所示(从左往右,地址由低到高): =============================
2012-10-07 22:22:51
801
原创 Linux connection tracking and NAT
Linux 的connection tracking和NAT都是通过netfilter框架实现的。connection tracking模块实现了防火墙的状态检测功能,包括单连接和多连接的(FTP)。NAT模块依赖于connection tracking建立的connection,在此基础上进行地址和端口的匹配和转换。PREROUTING: ip_conntrac
2012-09-12 14:36:42
3586
1
转载 Linux内核中TCP的连接跟踪(2)
TCP filter的原理:当filter收到某个连接的第一个报文时,会为该连接在全局连接表中创建一个表项,并用报文中携带的源、目的IP和端口这个四元组创建original tuple和reply tuple,这两个tuple分别从不同方向来标识这个连接。后续的报文会根据其携带的四元组找到相应的连接表项,然后根据表项所记录的历史状态,检查报文所携带的ack、数据是否有效。filte
2012-09-11 11:45:47
2943
转载 Linux内核中TCP的连接跟踪
1. 前言在2.6.1*以上的Linux内核中,关于TCP连接跟踪处理有了比较大的修改,增加了TCP可能标志位组合的检查;增加了通过序列号、确认号和窗口值来判断数据包合法性的功能,支持SACK选项;状态转换数组也进行了一些修改和完善,相应程序代码量增加不少。以下2.6内核代码版本为2.6.17.11。2. 通过确认号、序列号和窗口判断数据包合法性该思路提出比
2012-09-11 11:10:11
3754
转载 最轻量级的C协程库:Protothreads
协程的好处不用再多说,作为与函数调用/返回相对的概念,它使我们思考问题的方式经历一场变革。现在我们关注的是C,由于C本身的特质,将协程引入其中将会是一 个挑战。无数先驱已经为这个目标抛了头颅洒了热血,于是我们有了libtask之类。而这里提到的,是一个堪称最轻量级的协程实现:Protothreads(主页:http://www.sics.se/~adam/pt/)。所谓最轻量级,就是说,功能已经不
2012-09-06 13:11:29
2217
转载 FTP Active & Passive
FTP两种工作模式:主动模式(Active FTP)和被动模式(Passive FTP) 在主动模式下,FTP客户端随机开启一个大于1024的端口N向服务器的21号端口发起连接,然后开放N+1号端口进行监听,并向服务器发出PORT N+1命令。服务器接收到命令后,会用其本地的FTP数据端口(通常是20)来连接客户端指定的端口N+1,进行数据传输。 在被动模式下,FTP库
2012-08-31 22:04:00
4471
转载 Linux Route/NAT 负载均衡
linux中如何配置路由负载均衡是一个古老的问题,可是至今仍然没有什么好的解决方案,我指的解决方案是配置意义上的,如果可以触动内核源代码的话,补丁倒是有好几个,不过很多的linux服务器是不允许给内核打补丁的,成本太高了,要停机,编译同版本内核,如果不同版本内核还要编译所有驱动,测试应用兼容性等等。因此如果有人让你配置负载均衡了,那么你能做到的也就是仅仅“看起来像那么回事”罢了,所谓看起来像的意义
2012-08-31 15:48:57
6167
转载 IP 网络 QoS
1 概述1.1 产生背景在传统的IP网络中,所有的报文都被无区别的等同对待,每个转发设备对所有的报文均采用先入先出(FIFO)的策略进行处理,它尽最大的努力(Best-Effort)将报文送到目的地,但对报文传送的可靠性、传送延迟等性能不提供任何保证。网络发展日新月异,随着IP网络上新应用的不断出现,对IP网络的服务质量也提出了新的要求,例如VoIP等实时业务就对报文的传输延迟提出
2012-08-30 19:17:02
11566
1
转载 Jumbo Frame
Jumbo Frame这是一种厂商标准的超长帧格式,专门为千兆以太网而设计,目前还没有获得IEEE标准委员会的认可。以太网标准的最大帧长度为1518字节,而Jumbo Frame的长度各厂商有所不同,从9000字节~64000字节不等。采用Jumbo Frame能够令千兆以太网性能充分发挥,使数据传输效率提高50%~100%。在网络存储的应用环境中,Jumbo Frame更具有非同寻常的意义。
2012-08-30 19:15:07
1499
转载 组播技术
1 概述1.1 产生背景传统的IP通信有两种方式:一种是在源主机与目的主机之间点对点的通信,即单播;另一种是在源主机与同一网段中所有其它主机之间点对多点的通信,即广播。如果要将信息发送给多个主机而非所有主机,若采用广播方式实现,不仅会将信息发送给不需要的主机而浪费带宽,也不能实现跨网段发送;若采用单播方式实现,重复的IP包不仅会占用大量带宽,也会增加源主机的负载。所以,传统的单播和广播
2012-08-26 21:04:37
58709
转载 small cell 基本概念
Small Cell是低功率的无线接入节点,工作在授权的、非授权的频谱,可以覆盖10米到200米的范围,相比之下,宏蜂窝的覆盖范围可以达到数公里。移动运营商正在为增长的数据流量发愁,很多运营商认为分流移动数据是高效使用无线频谱资源的好办法。Small Cell是3G数据分流的重要成分,很多运营商认为Small Cell是管理LTE A频谱的有效办法,而不是只是使用宏蜂窝。 Small
2012-08-26 11:13:46
2023
转载 IEEE802.1x
为什么要实现IEEE802.1x?随着宽带以太网建设规模的迅速扩大,网络上原有的认证系统已经不能很好的适应用户数量急剧增加和宽带业务多样性的要求。IEEE802.1x协议具有完备的用户认证、管理功能,可以很好地支撑宽带网络的计费、安全、运营和管理要求,对宽带IP城域网等电信级网络的运营和管理具有极大的优势。IEEE802.1x协议对认证方式和认证体系结构上进行了优化,解决了传统
2012-08-24 16:08:24
3354
转载 Ipsec Nat-Traversal
IPsec(IP security)协议族是IETF制定的一系列协议,它为IP数据报提供了高质量的、可互操作的、基于密码学的安全性。特定的通信方之间在IP层通过加密与数据源验证等方式,来保证数据报在网络上传输时的私有性、完整性、真实性和防重放。IPsec作为一种重要的安全技术得到越来越广泛的应用,但是客户网络边缘大量使用的NAT地址转换操作可能影响到IPsec的正常操作。目前,NAT和IPse
2012-08-24 14:25:08
1138
转载 IKE 3
IKE第一阶段IKE的精髓在于它永远不在不安全的网络上直接传送密钥,而是通过一系列的计算,双方最终计算出共享密钥,并且即使第三方截获了交换中的所有数据,也无法计算出真正的密钥。其中的核心技术就是DH交换算法。IKE协商第一阶段,参与通信的双方会生成4个秘密:SKEYID:后续三个都建立在它的基础上,由它推算出。SKEYID_d:用于为ipsec衍生出加密的材料。SKEYID_a
2012-08-24 14:05:31
2688
转载 IKE 2
IPSEC构建站点到站点连接的基本过程对于站点到站点的会话,构建连接的基本过程如下:一个VPN网关对等体发起了到另外一个远程的VPN网关对等体的会话(触发流量)如果没有存在VPN的连接,那么ISAKMP/IKE阶段1开始,两个对等体协商如何保护管理连接。Diffie-hellman用于为管理连接中的加密算法和HMAC功能来安全的共享密钥。在安全管理连接中来执
2012-08-24 14:04:12
3443
转载 DH 密钥交换
迪菲-赫尔曼通过公共信道交换一个信息,就可以创建一个可以用于在公共信道上安全通信的共享秘密(shared secret)。以下解释它的过程(包括算法的数学部分):Diffie–Hellman 密钥交换最简单,最早提出的这个协议使用一个素数p的整数模n乘法群以及其原根g。下面展示这个算法,绿色表示非秘密信息, and红色粗体表示秘密信息
2012-08-24 14:02:13
18378
转载 IKE
Internet密钥交换(IKE)两台IPSec计算机在交换数据之前,必须首先建立某种约定,这种约定,称为"安全关联",指双方需要就如何保护信息、交换信息等公用的安全设置达成一致,更重要的是,必须有一种方法,使那两台计算机安全地交换一套密钥,以便在它们的连接中使用。Internet密钥交换 Internet 工程任务组IETF制定的安全关联标准法和密钥交换解决方案--IKE(Inte
2012-08-24 11:12:04
2260
转载 SDN & OpenFlow 4
russellw 于 2011-08-17 5:38 上午to根本不相干:你的关注点和我在某种程度上类似,从小处着眼,我理解OpenFlow的架构是SoA在网络设备领域的体现,将Fast-Path转发行为原子Service抽象出来,Flow(此Flow非彼Flow)在Slow Path实现,原子操作是稳定的,业务流程是多变的。对初始设备版本而言,开发可能反而复杂了,但是对产品整个生
2012-07-26 23:06:58
1252
转载 SDN & OpenFlow 3
http://www.tektalk.org/2012/07/23/sdnopenflow的一点想法/我对SDN和OpenFlow的理解:09年接触到OpenFlow,当时在梳理netfpga的开源工程,想在写的netfpga书里面选择几个典型的projects,感觉OpenFlow这个项目很有意思,把所有的网络处理抽象成了对flow的处理,用多个标识域对flow进
2012-07-26 23:05:35
2488
转载 SDN & OpenFlow 2
http://www.tektalk.org/2012/04/23/open-network-summit-2012参会随笔/笔者(新浪微博@wang_russell)注: 欢迎转载,烦请注明出处。一、见闻散记连续参加两次Open Network Summit了,间隔半年明显感受到了SDN在业界显著的进展。去年十月的ONS,尚有不少的SDN质疑者,也没有有说服力的商用部
2012-07-26 22:59:49
2585
转载 SDN & OpenFlow
sdnopenflow的一点想法http://www.tektalk.org/2012/07/23/sdnopenflow的一点想法/openflow的学习与思考http://www.tektalk.org/2011/07/25/openflow的学习与思考网络虚拟化—互联网的下一波革命http://www.36kr.com/p/101506.html?mobile&t
2012-07-25 23:02:06
1825
转载 防火墙的x86、NP、ASIC和多核架构的比较
随着网络的发展,网络威胁日益严峻,目前各大安全厂商都推出了多核心防火墙,采用多核芯片,终结了x86、NP和ASIC一统天下的时代,终结了高功耗、低稳定性的时代,并且提供了全面的应用安全解决方案。 多核心技术真正实现了千兆的小包吞吐量,相对于以往的X86、ASIC、NP技术,有了革命性的进步。先从以往的这些架构的优缺点讲起: 国内多数安全厂商的产品基于传统的X86架构
2012-07-25 22:19:36
9323
转载 linux内核RCU的演变
2.6内核引入了RCU锁,这种锁十分高效,总的说来就是读时加锁,写时拷贝,读后更新。具体的流程可以参照 rcu的相关文档。本文主要谈一下rcu在linux2.6内核的演变过程,它分别经历了三个阶段,分别是传统rcu锁,可抢占rcu锁以及2.6.29 中将要引入的树形分层rcu锁。 linux中最早引入的rcu锁十分的粗糙,实现原理也是非常简单,毕竟linux中不管多复杂的机制一开始的
2012-07-05 14:40:20
7326
Understanding Linux Network Internals.chm
2009-05-11
KernelDevelopment
2008-12-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人