# filter.latencies

filter gtsPushes onto the stack a *pseudo* FILTER which computes latencies in a network. It uses the `FILTER`

framework for conveniency but really returns new GTS.

The input Geo Time Series™ are assumed to have values which are fingerprints of packet payloads. The first GTS is assumed to be the *uplink* and all the other GTS the *downlinks*.

The ticks are the time at which a packet with the given fingerprint was observed.

The generated Geo Time Series™ will have the same ticks as the uplink one, except the values will be latencies instead of packet fingerprints.

The `filter.latencies`

function accepts a number of options:

Option | Description |
---|---|

uplink.latency.min | Compute minimum latency on the uplink. |

uplink.latency.max | Compute maximum latency on the uplink. |

downlink.latency.min | Compute minimum latency on each downlink. |

downlink.latency.max | Compute maximum latency on each downlink. |

downlink.matches | Compute the number of matches for each downlink. |

downlinks.totalmatches | Computes the total number of matches across downlinks. |

downlinks.bitsets | Computes a bitset of downlinks which saw the packet (limited to 64 downlinks). |

downlinks.withmatches | Computes the number of downlinks with matches for the given packet. |

This pseudo FILTER is very specific to a networking use case, but it is a good demonstration of the power of WarpScript and its frameworks.