1. A method for performing network address translation, the method comprising: storing history of characteristics of inbound traffic packets transmitted to a particular destination, optionally across multiple users; employing pattern matching to compare characteristics of subsequent inbound traffic packets to the history; and disambiguating the characteristics of the subsequent inbound traffic packets to determine for the particular destination associated with the subsequent inbound traffic packets based on the pattern matching.