自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 收藏
  • 关注

链路层的网卡聚合-基于Linux bonding

linux总是可以用一种最简单的方式实现一个很复杂的功能,特别是网络方面的 ,哪怕这个功能被认为只是在高端设备上才有,linux也可以很容易的实现,以前的文章已经说了不少次了,比如vlan功能,比如高级路由和防火墙功能等等,本文着重说一下linux的bonding,也就是端口聚合的功能模块。不可否认,在网络设备这个层面上上,linux搞出了两个很成功的虚拟设备的概念,一个是tap网卡,另一个就是...

2011-04-30 19:05:00 86

关于网络层的负载均衡和热备

路由的负载均衡最好采用网段划分的方式。这样不会破坏网络层的路由行为,因为主机或者路由器是通过路由表查找到的“路由”转发每一个数据包的,除非做到路由表的负载均衡,否则特定的数据包只会选择唯一的一条路由。在linux内核中,并没有实现路由表的负载均衡,我曾经提交过一个补丁,然而不了了之,具体来讲就是将首次命中的路由和与之对应的负载均衡路由一起载入路由cache,然后每次查找路由时简单的通过rr算法轮转...

2011-04-30 16:00:00 127

group by 与 order by

USE [mydb] go WITH w AS( SELECT TOP 6 InfoId FROM( SELECT InfoId FROM( SELECT TOP 6 b.InfoId FROM dbo.[BrowseLog] b,dbo.[Info] i WHERE b.InfoId=i.InfoId AND i.CityId=...

2011-04-27 17:36:00 70

Linux的kobject和Windows的GUID

一.数据结构设计 0. 需要被管理的实体实际上很杂,包括设备,驱动,总线,类型,块设备,电源等等...迫切需要统一管理。1. kobject代表每一个被管理实体,很显然的,这些实体可以带有一个或者多个属性。2. 这些属性由attribute表示,由于被管理的实体不同,可能还会互相嵌套,因此很难给出一个明确的attribute的定义,因此使用了list_head的设计方式...

2011-04-26 21:58:00 86

为何失败-从一次DIY讲述hub/switch/router

家装ADSL,直接rj45接口入户,然则新添一台电脑,为使两台电脑都能上网,决定做点动作,老婆大人不让花钱,我以“巧妇难为无米之炊”回绝,起码要买一些线吧。于是买了一个rj45一转二头,电学原理很简单,一个信号转为两个信号,然而... 然而不是那么简单,进入数字化以来,电缆上的信号虽然仍然是模拟信号,但是再也不是一线一地的模式了,三相交流市电提供了220V的电压,仅此而已,其模式是一线一地。可...

2011-04-24 22:20:00 80

Linux文件系统的设计

总论: linux的文件系统设计非常优秀,总的来讲有两大部分,第一部分就是树形的组织结构,第二部分就是vfs,树形的组织结构组织了文件系统的表象,用户很方便的使用,而vfs是文件系统的实现机理,它处于内核态,不但实现了树形结构的mount机制,而且还提供了一个统一的接口用来访问设备。一、Linux文件系统概述 1、Linux文件系统组织 Linux中使用树来组...

2011-04-23 22:26:00 88

一则新闻片段和一个短书摘

摘录以下新闻片段: 日本这次大地震也让日本建筑业界一称为“气断震”的防震新技术脱颖而出。那是一种遭遇到四级地震时,就会自动在房子与地面之间灌入空气,使房屋与地面隔离 25毫米,以保护房屋不受重震影响。因为是一门在3年前开发的新技术,日本全国目前只有约50个独立式洋房采用。地震后,这些房屋居民都纷纷称赞此个新技术显灵,让他们对地震毫无感觉。 --- 感觉有点像磁盘自动停靠技术,很有意思,利用了...

2011-04-23 18:10:00 74

《PCI Express系统结构导读》-读后

这本《PCI Express系统结构导读》是我读过的少有的几本21世纪后初版(注意不是出版而是初版)的且是国人写的书之一,我指的不仅仅是技术书籍,任何书籍都是包括,包括历史类的,文学类的等等。 这本书很明显包含了作者的心血在里面,而不是东拼西凑的结果,不像别的很多技术书籍的作者,生怕读者不知道自己是个博士,搞的满书都是专业术语,数学公式,这年头谁没上过几年学啊,不是看不懂,而是根本就无法吸引读...

2011-04-23 17:58:00 84

TSS翻译:常见的Java内存问题第一部分

TSS翻译:常见的Java内存问题第一部分 原文链接:http://www.theserverside.com/news/thread.tss?thread_id=62217 http://blog.dynatrace.com/2011/04/20/the-top-java-memory-problems-part-1/ 内存和垃圾收集器一直是Java...

2011-04-23 07:23:00 123

引用类型真屌

List<>是引用类型。 我有个自定义类型对象保存于缓存,该对象有个成员就是List<string>。 结果将对象从缓存里面拿出来,修改了该成员,结果缓存里面的“也”修改了。其实,引用类型就是只有一份,管你在那里,缓存里保存的也只是引用而已。...

2011-04-20 18:23:00 150

做一个WAP网站

做一个WAP网站,其实也没有那么神秘,甚至比PC版的网站还要容易些,因为很少图片和样式,返璞归真。 一、用什么来开发? 据说以前的手机版要用什么WML,我没学过,一听头都大了,时间花费不起。幸亏现在手机都支持HTML,所以,就用HTML,也就是我们平时在电脑上做的网站,驾轻就熟,轻车熟路。 二、识别手机浏览器,自动转向WAP版。 在主站上加入识别功能,发现客户端是手机浏览器的话,自...

2011-04-19 23:45:00 112

计算机系统和中断的概念

概念: cpu:特指处理器核心,而不是处理器封装,因为很多处理器将桥芯片和内存控制器芯片都封装在一起,造成一种误解,实际上处理器核心并不包含这些内容。 外设:带有处理逻辑的集成电路核心。 一、CPU和外设芯片 1、功能对等性和地位的不平等 外设芯片也可以处理数据,因此和cpu在功能上是对等的,GPU概念的提出加深了我们...

2011-04-17 17:35:00 240

由Intel的io加速想到的

早在2007年上半年,intel就提出了ioat,intel看清了形式,期望在server和虚拟化方面有一番作为,正是它有可以利用的优势并且果断的利用了这些优势,新的标准被提出来了,说是ioat,然则实际上更侧重于tcp/ip网络,或者说是TCP/IP-AT更合适一些。Intel认识到,目前诸侯角逐的无非两大阵地,一个是显示,另一个就是网络性能,对于显示,有NVIDIA,AMD的GPU以及微软的D...

2011-04-10 20:36:00 135

网卡性能分析-Intel8257X芯片手册读后感

引:在《《OpenVPN性能》之后,我进一步阅读了硬件的解决方案,希望能得到一些思想,然后进一步的改进我的设计,由于工作的便利性和实际工作的需要,我阅读了intel的82571EB,82574L,82575等以太网芯片的datesheet的相关特性描述部分(由于我不打算亲自写驱动,因此我没有阅读寄存器以及存储器细节,更多的是我不相信自己的驱动比intel的工程师们的更高效),得到了很多感觉,以下是...

2011-04-10 18:20:00 166

pcie的msi与msi-x-串行VS并行

之所以可以实现如此的msi中的message,是因为pcie不仅仅是一条总线,而是一套协议,它是串行的,而非传统总线的并行形式,串行总线最适合定义协议了,然而不管怎样,cpu引脚以及其局部总线(前端总线)是并行的,因此针对于pcie,有一个称为root complex的家伙负责并串转换。由于pcie实现复杂的协议,因此它的一个端点可以往root complex发送一个消息,root complex...

2011-04-10 12:00:00 160

linux根据磁盘的属性挂载root

linux的2.6内核有了sysfs,可以通过这个文件系统得到系统设备的一些属性,作为使用sysfs的一个例子,我们可以修改initrd的init脚本,使得它可以根据磁盘的属性而不是bootloader中kernel的root参数来寻找并挂载root,传统中都是根据root=/dev/sdXy(hdXy)来挂载根的,写下这个sdXy或者hdXy需要用户对linux的磁盘命名很了解,一旦hda变成了...

2011-04-03 18:50:00 187

tcp/ip网络中端口的选定

在以下两种场景需要确定端口(不考虑reuse和time_wait): 1.bind调用时 2.connect时 需要注意的是,1和2是不一样的,在调用bind时,目的ip和目的端口并不知道,因此需要严格和本机其它的ip/端口对区别开来,在绑定地址或者设备的情况下,两个绑定不同本地地址或者绑定不同设备的socket可以使用同一端口,如果选定了一个端口,只要使用该端口的socket中(包括它自己...

2011-04-03 18:49:00 120

从几个版本的memcpy的测速过程学习一点底层的东西

以下有三个版本的memcpy,对于版本3,很多人都很熟悉,它很经典,很多人面试都写这个,可是我不得不说一句,对于类似的问题,最好的回答有两个:一是调用c库,二是使用汇编。用这一类的问题来考察应聘者的c语言能力,真的很菜!如果真的要考察c语言能力,还不如给几个if,switch-case,for语句呢。 版本1.linux内核中的实现,其实glibc也是如此实现的,省略了不少内容,真正的实现很巧妙...

2011-04-03 18:48:00 104

linux到底在何时panic

遇到内核panic,我们很无奈,我们总是以为内核自动的检查出了错误,然后panic了,可事实上,panic是一个函数,需要显式调用的,panic机制固然是一种检查内核正常的好机制,可是其背后隐藏了大量内核开发者的心血,内核开发者必须知道什么情况下内核属于不正常状态,然后显式调用panic,如果此时不调用panic的话,说实话,系统还是会继续运行的,然而结果会真的“不可预料”,在遇到惶恐之事件的时候...

2011-04-03 18:39:00 76

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除