public void EntityIdsRange() { const Int32 maxShards = 20; foreach (var rawPacket in GetRawPacketsFromPcap(TestPcapFile.VariousBigger)) { if (!RawPacketEntityIdSetter.SetEntityIdForRawPacket(rawPacket, maxShards)) { continue; } var entityId = rawPacket.EntityId; Assert.True(entityId >= 0); Assert.True(entityId < maxShards); } }
protected IMaybeMultipleValues <RawPacket> ParsePacket(RawCapture rawCapture) { if (rawCapture == null) { return(new ProcessRawPacketRequestError("Missing packet payload")); } var rawPacket = new RawPacket(rawCapture); if (!RawPacketEntityIdSetter.SetEntityIdForRawPacket(rawPacket, this.MaxNumberOfShards)) { return(ProcessRawPacketFragmentsRequest.EmptyInstance); } return(rawPacket); }
public DistributionStatsReport Process(Uri pcapUri, Int32 numberOfShards) { var shardsOccurence = new UInt64[numberOfShards]; var shardsSize = new UInt64[numberOfShards]; foreach (var rawPacket in this.LoadRawPacketsFromPcap(pcapUri)) { if (!RawPacketEntityIdSetter.SetEntityIdForRawPacket(rawPacket, numberOfShards)) { continue; } shardsOccurence[rawPacket.EntityId]++; shardsSize[rawPacket.EntityId] += (UInt64)rawPacket.RawPacketData.Length; } var report = new DistributionStatsReport { ShardsOccurence = shardsOccurence, ShardsSize = shardsSize }; return(report); }