我当时看了rfc893后是这样理解的:因为在protocol stack上层的不需要知道报头是什么,而在往栈上面走的时候要一层层的去报头,这样数据就对不齐了,无法直接做页映射,所以要实现尾部封装,这样数据还是可以对齐的,我们只要去掉尾部的栈下层要处理的数据就行了。

解决方案 »

  1.   

    就是说如果长度是固定的2bytes,而不是1 byte 2bytes可变,就可以直接做页映射了?
      

  2.   

    我刚刚又看了一下rfc893,它的建议是LH+data+TH。data是512的倍数(vax的页大小?),这样即使用户态访问也可以直接将data映射出来。
    它的LH比较有意思,是16个字节,不是现在的14个字节,这样既包含类型又包含长度的。现在14字节的还要区分rfc1042和rfc894,真麻烦。