一个报文的路由器之旅_【NE探秘】一个报文的路由器之旅

数据在通信线缆上传输时还只是光/电信号(对应于物理层的比特流)。为了让路由器读懂这些信号,以便获取数据包的目的地址用于寻址转发,在路由器上插线缆的接口里边有一块接口卡――PIC(Physical Interface Controller)卡,能感知这些光/电信号,把信号转换成数据帧(比如以太帧、PPP帧、ATM信元)。

?????????????

be98b425448df8822ebfeacc9b298c8e.png

????????

接口卡有两个重要的功能,其中一个就是完成上述的物理层功能,光/电信号的收、发;另一个重要功能,就是进行数据帧的“合法性”检查。数据经过物理线路的传递后,有可能发生畸变,变成错包,无法被包转发引擎PFE正确解析,因此在接口卡需要进行一些必要的检查。

比如,一个以太帧格式如下:

6e20e47a644bf9cafa98bfa989d8fa42.png

以太网标准中规定如下帧为无效帧:

-帧的长度不是整数个字节;

-用收到的帧检验序列FCS(Frame Check Sequence)查出有错误;

-收到的帧的负荷长度不在46~1500字节之间。

对于检查出的无效帧就简单的丢弃,以太网不负责重传丢弃的帧。而这些检查,是在接口卡上执行的。

1b4d846456e93926ee81e80d4c6efaf9.png说明:

每个以太帧之间都要有帧间隙(Interframe Gap),即每发完一个帧后要等待一段时间才能再发另外一个帧,以便让帧接收者对接收的帧作必要的处理(如调整缓存的指针、更新计数、通知对报文进行处理等等)。

在以太网标准中规定最小帧间隙是12个字节,其数据为全1。对于个别的接口,可减少到64(GE)或40比特(10GE),其他的接口都不应该小于12字节。

以太网标准中规定前导码为10101010 10101010 10101010 10101010 10101010 10101010 10101010(二进制),共7字节;帧开始定界符为10101011,共1字节。

那么,如果PIC卡实际收到的帧间隙、前导码、帧开始界定符,如果跟协议规定的不一样,是不是这个数据帧也会被丢弃?答案是,PIC卡在处理帧间隙时,帧间隙一般可以容忍跟协议规定的不一样(比如不是全1);但前导码、帧开始界定符必须符合协议规定的值,否则当做帧间隙处理,也就是帧被丢弃了。

PIC卡把光/电信号转换成数据帧,并检查“合法性”之后,把数据帧的内容(不包含帧间隙、前导码、帧开始界定符和FCS)发送给包转发引擎PFE。

????????????????????

86c3b30a805112cf9ea2dbbbc32d0438.png

f5b1426c52dd7d64767880208b280dad.png说明:

PIC卡的类型决定了接口板的业务类型,比如把4*2.5G PoS PIC卡集成在某接口板上,则该单板就支持4*2.5G 的PoS业务,把10*GE PIC卡集成在某接口板上,则该单板支持提供10*GE的以太业务。将某PIC卡集成在接口板上,对应的PFE便可得知该PIC卡的类型,因此按对应业务类型来解读PIC卡送过来的数据。

数据包经过PFE转发,经过交换网板交换,从下行接口发送时,下行的对应位置也有接口卡。

???????????????

168f6873149cc2ee278768106579b2bf.png

下行接口卡的作用是,用待发送的数据帧内容计算帧检验序列FCS,然后对数据帧加封装帧间隙、前导码、帧开始界定符和FCS,并将数据帧转换成光/电信号,再发送到出接口线路上。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值