CS144 Lab1
Specifications
Lab 1 要求实现一个基于额外缓冲区的流重组器。对于该题目的详细分析(尤其是对于新收到数据包后的位置与重复等情况等分析)请看这里
自己的一些小总结
当新的数据包到达时,由于题目要求”ASAP”,因此应当检查当前数据包是否在结合重组器当中的数据后能够直接被接收方所读取。如果可以,则应当在整合之后直接送至接收方,并将未能成功写入的部分重新放入重组器当中;
而不能先存到重组器当中再写入。在选取数据结构时依旧要注意合适程度。如果采用
set< pair<size_t, char/string_len_1> >
则时间效率太低。因此应当选用map< size_t, string >
,并且string
的长度可以为任意值。