词条 | 网络缓存区 |
释义 | 网络缓冲区按分配的时机分类,可分为动态分配方式,预先分配方式和覆盖方式。动态分配方式是指在准备接收下一新帧时通过系统调用为接收描述符分配缓冲区。需要缓冲区时才进行分配,具有内存开销小的优点;但需调用内核函数动态地分配内存,因此它 CPU 开销大。现在网卡驱动一般采取的动态分配方式,如 e1000-3.15.9智能网卡的原驱动等。预先分配方式是指在网络初始化时预先分配一定数量的缓冲块放入缓冲池中,准备接收下一新帧时,从缓冲池中为接收描述符分配缓冲区。 由于事先已分配好缓冲区,再进行缓冲区分配时只需进行指针的操作,因此它 CPU 开销小。但需要在初始化时分配足够多的缓冲块,为帧的处置赢得足够的处置时间,未处理完前,保证它不会被新帧覆盖,因此,预先分配方式的内存开销大。覆盖方式是指在接收帧时,不再为接收描述符分配缓冲区,而是将缓冲区的数据拷贝到另一内存空间等待处理,重复利用此描述符所指向的缓存区接收新帧。但在测试中,没有对帧进行备份,目的获得理想条件下的智能网卡的报文接收性能。网络缓冲区按其分配的位置分类,可分为 SRAM 方式和 DDR 方式。 SRAM 方式是指缓冲区从 SRAM 中分配。智能网卡有一块用作二级 Cach SRAM 考虑到网络流处理时间局域性差的特点,屏蔽了 SRAM Cach 功能,而将它当一般内存使用。根据 SRAM 物理特性, SRAM 方式具有访存快的优点,缺乏是容量有限。 DDR 方式是指缓冲区从 DDR 中分配。有足够大的空间可用于分配,可扩展至 512MB 但与SRAM 方式相比,访存速度慢,较耗 CPU 资源。 |
随便看 |
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。