Как реализовать буфер пакетов, где каждый пакет имеет форму:
typedef struct{
int32 IP; //4-byte IP-address
int16 ID; //unique sequence id
}t_Packet;
Какая должна быть наиболее подходящая структура данных, которая:
(1) позволяет собиратьне менее 8000 таких пакетов (быстрые операции вставки и удаления)
(2) позволяет очень быструю фильтрацию по IP-адресу, так что будут выбраны только пакеты с данным IP
(3) позволяет очень быстро найти операцию, используя идентификаторклавиша
(4) позволяет очень быстро (2), затем (3) в пределах отфильтрованных результатов?
Размер ОЗУ имеет значение, например, невозможно использовать огромную таблицу поиска.