Segment routing is a source routing architecture that encodes the forwarding path for a packet as a list of segments in the packet header. Each segment represents an instruction for the packet, such as forwarding to a particular node or applying a service function. The network executes the encoded instructions without per-flow state to provide flexible, scalable, and simple traffic engineering, service chaining, and OAM capabilities.