自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 我的新浪的blog地址

这是我的新浪的blog地址:http://blog.sina.com.cn/treeintherain上面已经发表了39篇技术文章,今后我会保持两个blog同步。IC之powerC++之注意事项(四) C++之注意事项(三) C++之注意事项(二) C++之注意事项(一) C之编码规范 Algorithm parallel

2014-12-23 13:32:18 461

原创 IP之ARP

4.3 Control-plane protocol4.3.1 ARP当一个host需要得到目的host的mac时,它会广播一个arp request。目的host(或gateway)会应答一个arp reply(单播)。hardware addresstype 和protocoladdress type表明哪个协议用在链路层或网络层。如果是Ethernet则hardwar

2015-03-23 12:17:58 897

原创 IP之IPv6

4.2.6 IPv6 IPv6 header有固定的40bytes,没有option field,但是它有扩展头部。Traffic class:类似于IPv4的TOS。Flow label:用来识别相同流的数据包,如:视频流。Payload lenght:不包括40bytes的ip header的数据包长度,多大为65535bytes。Next header:表明上层协

2015-03-11 21:27:18 766

原创 IP之NAT(二)

4.2.5 NAT的实现Source nat的hook name是NF_INET_POST_ROUTING,Destination nat的hook name是NF_INET_PRE_REOUTING和NF_INET_LOCAL_OUT。建立source nat和destination nat的hook的数据结构(在/net/ipv4/netfilter/nf_nat_rule.c ):

2015-03-01 20:47:40 1385

原创 IP之NAT(一)

4.2.4 NAT私有地址如下:10.0.0.0 – 10.255.255.255 (10.0.0.0/8),172.16.0.0 – 172.31.255.255 (172.16.0.0/12),192.168.0.0 – 192.168.255.255 (192.168.0.0/16) NAT对于ICMP协议的影响对于icmp协议,不仅icmp packet的h

2015-02-15 11:06:40 981

原创 IP之Fragmentation

4.2.3 Fragmentation and ReassemblyIP的MTU是65536bytes;而Ethernet的MTU为1518bytes,所以需要分片,而router可能会对packet再次分片。注意:分片的payload部分一定是8bytes的倍数。属于同一个packet的所有分片的identifier field(位于IP header)的值相同,在flags fie

2015-02-09 09:26:04 3103

原创 IP之IP Packet Format

4.2.2 IP Packet Format 有很多资料都在介绍ip header,所以我只介绍一些需要注意的field。 Header Length:仅仅是IP header的长度,是4字节的倍数,如果没有options,则为20bytes。 Type of Service (TOS):根据RFC791 和 1349定义如下图: 而RFC 2474 定义前六个bi

2015-02-06 09:30:57 3080

原创 IP之routing(二)

接《IP之routing(一)》Two-level hashing(fib structure) Routing cache的数据结构叫做rt_hash_table,它是rt_hash_bucket的一个数组,它中的每个数组元素都指向rtable的list,而rt_hash()的参数有3个:source ip、destination ip、服务类型。如果发生routing 

2015-02-03 10:14:11 764

原创 IP之routing(一)

4.2 Data-plane protocol for IPv44.2.1 Routing table查找routing table 是用一个叫做longest prefix matching的原则来实现的,举例说明,有A和B两个公司,A拥有从194.24.0.0 到 194.24.6.255的IP,所以在routing table中与A对应的routing entry应该是192.24.

2015-01-31 20:52:14 943

原创 IP之Overview

4 Internet Protocol Layer4.1 概述 上图是IP layer的调用关系。  上图为IP address的类型。 If ((HostIP ^ DestinationIP) & SubnetMask)==0),该语句决定了本地地址跟目的地址是否在同一个子网中。     [此为原创,转载请标明出处,谢谢!]

2015-01-29 14:53:44 449

原创 Link layer之device driver

3.7 Device DriversDriver在跟device通信之前,需要先初始化环境,包括:probing I/O ports、probing IRQs。 DMA是在没有CPU的干涉下将大块数据从内存传输数据(或将大块数据传输到内存)。有两种方式可以出发DMA传输:1)Read() or wirte()被调用2)硬件异步的写数据到内存 DMA的操作步骤如下:

2015-01-25 19:47:37 486

原创 pipeline之stage(二)

在真正的RISC IC的制成中,不会只有这五个stage。它可能存在多条pipeline,每条pipeline有多个stage。如:integer ALU:有5个stage;FP/integer multiplication(浮点/integer乘):大概有11个stage由于每条指令的the number of stages不同,就可也能够造成较多的问题:1、有些指令

2015-01-23 14:22:21 3477

原创 Link layer之Bridge

3.6 BridgingHub:也叫repeater hub,是一个Layer-1 device,也就是说它只会将数据包广播到所有port上。Mac bridge:也叫bridge和Layer-2 switch,因为它可以分析ethernet header,所以有self-learning(自学习)功能,可以有效的避免广播,节省带宽。当发生组播时,打开GMRP 功能,可以有效的减少组播的带

2015-01-21 09:57:41 797

原创 Link layer之Ethernet

3.5 EthernetEthernet的link layer由mac sublayer和LLC syblayer构成。Mac sublayer负责封装packets和media access control。下图是没有标签的Ethernet frame。 Preamble:用户同步物理信号,固定为1010...1010,Little-Endian bit ordering,共

2015-01-18 16:35:51 720

原创 Link layer之PPP

3.4 Point-to-Point Protocol(PPP)它有三个组件:一个封装上层协议的方法Link Control Protocol(LCP):负责链接的建立和断开。Network Control Protocol(NCP):负责配置不同网络层的选项。3.4.1 PPP Operaton数据包交互过程如下:1、PPP首先发送LCP packets来建立连接和测

2015-01-16 12:30:53 766

原创 网络部分之Physical Layer

2 Physical LayerPhysical layer需要将data转换成signal,所以需要2 steps:Step 1,叫做information coding,来对数据进行压缩和保护。Step2,叫做modulation,把数据信号调制成模拟信号。 2.1 传输模型现在我们来描述一下传输和接收流在physical layer上的处理过程。1、首先,信息源产

2015-01-12 12:26:05 668

原创 网络部分之link layer

3 link layer3.1 Frame Delimiting在100BASE-X中,使用4B/5B encoding。这种编码的特点是将欲发送的数据流每4bit作为一个组,然后按照4B/5B编码规则将其转换成相应5bit码。5bit码共有32种组合,但只采用其中 的16种对应4bit码的16种,其他的16种或者未用或者用作控制码,以表示帧的开始和结束、光纤线路的状态(静止、空闲、暂

2015-01-10 13:37:16 592

原创 pipeline之stage(一)

在IC的制成中,一条指令的执行是被分成多个stage的,每个stage使用一个cycle,一条指令从第一个stage依次执行到结束,这个过程叫做pipeline。由于一条指令被切成了多个stage,所以多条instruction可以同时运行在不同的stage上,增加了指令执行的throughput。为了简单起见,假设指令被分成5个stage:IF、ID、EX、MEM、WB1、I

2015-01-08 17:58:12 7010

原创 网络部分之概述

1、sk_buff在这里,我不想描述sk_buff的结构,因为网上已经有很多资料了。当一个数据包被网络设备接收时,alloc_skb()将被调用,用来为packet分配一块空的buffer,如下图: 起初,它是一个空的buffer,所以所有的指针都有跟head相同的值,当packet到达时,skb_put()被调用,它会改变几个头部指针,让他们指向正确的位置,就形成了下面的

2015-01-04 20:03:59 398

原创 pipeline之Hazards

在processor的pipeline的设计中,会遇到三种hazard:structural hazard、data hazard、control hazard。1、structural hazard:由于硬件资源不足而产生的hazard,避免的方法有:将一个function unit切分成更小的stage或对设计相同功能的硬件等,总之,就是让硬件资源够用。2、Data

2014-12-31 12:39:29 7180 1

原创 System之Dependability

1、reliability人们用两个标准来衡量dependability:reliability(可靠度) and availability(可用度)reliability:连续工作的时间,可以用mean time to failure(MTTF)来表示。failure rate=1/MTTF,而failure rate的单位是FIT(failures in time)FIT定

2014-12-24 20:50:09 1148

空空如也

空空如也

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

TA关注的人

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