(few data words). Such networks can be used as an alternative facility for the efficient inter-core communication aside of the standard use of shared memory. Applications Using the generic function of the network processor, a software program implements an application that the network processor executes, resulting in the piece of physical equipment performing a task or providing a service. Some of the applications types typically implemented as software running on network processors are: Packet or frame discrimination and forwarding, that is, the basic operation of a router or switch. Quality of service (QoS) enforcement – identifying different types or classes of packets and providing preferential treatment for some types or classes of packet at the expense of other types or classes of packet. Access Control functions – determining whether a specific packet or stream of packets should be allowed to traverse the piece of network equipment. Encryption of data streams – built in hardware-based encryption engines allow individual data flows to be encrypted by the processor. TCP offload processing See also Content processor Multi-core processor Knowledge-based processor Active networking Computer engineering Internet List of defunct network processor companies Network Processing Forum Queueing theory Network on a chip References Embedded microprocessors Network on a chip Networking hardware Hardware acceleration Application-specific integrated circuits System on a chip