Resilient segment routing service hunting with TCP session stickiness

US10505846B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10505846-B2
Application numberUS-201615132920-A
CountryUS
Kind codeB2
Filing dateApr 19, 2016
Priority dateJul 22, 2015
Publication dateDec 10, 2019
Grant dateDec 10, 2019

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

According to one aspect, a method includes obtaining a segment routing (SR) packet from an endpoint via a first router at a first server along a path, the SR packet including an SR list and a last address, the last address being an address of a requested service. The method also includes determining, at the first server, whether the requested service is available from the first server, wherein determining whether the requested service is available from the first server includes opening the SR packet, parsing an SR header of the SR packet, and performing a lookup in a service table. Finally, the method includes modifying the SR packet at the first server when it is determined that the requested service is not available from the first server; and forwarding the SR packet along the path.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: obtaining a segment routing (SR) packet from an endpoint via a first router at a first server along a path, the SR packet including an SR list and an address associated with a requested service, the endpoint being an (SR)-capable node, the first router being an SR-capable router; determining, at the first server, whether the requested service is available from the first server, wherein determining whether the requested service is available from the first server includes opening the SR packet, parsing a header of the SR packet, and performing a lookup in a service table; modifying the SR packet at the first server when it is determined that the requested service is not available from the first server; and forwarding the modified SR packet along the path after modifying the SR packet. 2. The method of claim 1 wherein forwarding the modified SR packet along the path includes: providing the modified SR packet from the first server to a second server after modifying the SR packet, wherein the second server hosts the requested service. 3. The method of claim 2 wherein modifying the SR packet at the first server includes modifying a first destination to specify the second server. 4. The method of claim 2 wherein the service table is a first service table, the method further including: after providing the modified SR packet from the first server to the second server, determining whether the requested service is identified in a second service table associated with the second server, wherein when the requested service is identified in the second service table, the second server hosts the requested service. 5. The method of claim 1 wherein performing the lookup in the service table includes determining whether the requested service is identified in the service table, wherein when the requested service is not identified in the service table, it is determined that the requested service is not available from the first server. 6. The method of claim 5 wherein parsing the header of the SR packet includes identifying a last V6 address, and wherein performing the lookup in the service table includes determining whether there is a match to the last V6 address in the service table. 7. The method of claim 6 wherein when it is determined that there is no match to the last V6 address in the service table, the requested service is not identified in the service table. 8. The method of claim 1 wherein the SR list identifies a plurality of waypoints along the path. 9. The method of claim 1 further including: providing the requested service using the first server when it is determined that the requested service is available from the first server. 10. The method of claim 1 wherein the SR list is arranged to identify at least one candidate node on which it may be possible to locate the requested service and wherein the requested service is a content caching service. 11. The method of claim 1 wherein the SR list is arranged to identify at least one candidate node on which it may be possible to locate the requested service and wherein the requested service is a video delivery service. 12. Logic encoded in one or more tangible non-transitory, computer-readable media for execution and when executed operable to: obtain a segment routing (SR) packet from an endpoint via a first router at a first server along a path, the SR packet including an SR list and an address associated with a requested service, the endpoint being an (SR)-capable node, the first router being an SR-capable router; determine, at the first server, whether the requested service is available from the first server, wherein the logic operable to determine whether the requested service is available from the first server is operable to open the SR packet, parse a header of the SR packet, and perform a lookup in a service table; modify the SR packet at the first server when it is determined that the requested service is not available from the first server; and forward the modified SR packet along the path after the SR packet is modified. 13. The logic of claim 12 wherein the logic operable to forward the modified SR packet along the path is operable to: provide the modified SR packet from the first server to a second server after modifying the SR packet, wherein the second server hosts the requested service. 14. The logic of claim 13 wherein the logic operable to modify the SR packet at the first server is operable to modify a first destination to specify the second server. 15. The logic of claim 13 wherein the service table is a first service table, the logic further being operable to: after providing the modified SR packet from the first server to the second server, determine whether the requested service is identified in a second service table associated with the second server, wherein when the requested service is identified in the service table, the second server hosts the requested service. 16. The logic of claim 12 wherein the logic operable to perform the lookup in the service table is operable to determine whether the requested service is identified in the service table, wherein when the requested service is not identified in the service table, it is determined that the requested service is not available from the first server. 17. The logic of claim 16 wherein the logic operable to parse the header of the SR packet is further operable to identify a last V6 address, and wherein the logic operable to perform the lookup in the service table includes logic operable to determine whether there is a match to the last V6 address in the service table. 18. The logic of claim 17 wherein when it is determined that there is no match to the last V6 address in the service table, the requested service is not identified in the service table. 19. The logic of claim 12 wherein the SR list identifies a plurality of waypoints along the path. 20. The logic of claim 12 wherein the requested service is one selected from a group including a content caching service and a video delivery service. 21. A method comprising: obtaining a segment routing (SR) packet from an endpoint via a first router at a first server along a path, the SR packet having an SR list of addresses including a last address, the last address being an address of a requested service; determining, at the first server, whether the requested service is available from the first server, wherein determining whether the requested service is available from the first server includes opening the SR packet, parsing the SR packet, and performing a lookup in a lookup table associated with the first server; providing the requested service using the first server when it is determined that the requested service is available from the first server; modifying the SR packet at the first server when it is determined that the requested service is not available from the first server; and forwarding the modified SR packet along the path after modifying the SR packet.

Assignees

Inventors

Classifications

  • Source routing · CPC title

  • using an overlay routing layer · CPC title

  • Parsing or analysis of headers · CPC title

  • using label swapping, e.g. multi-protocol label switch [MPLS] · CPC title

  • H04L45/745Primary

    Address table lookup; Address filtering · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10505846B2 cover?
According to one aspect, a method includes obtaining a segment routing (SR) packet from an endpoint via a first router at a first server along a path, the SR packet including an SR list and a last address, the last address being an address of a requested service. The method also includes determining, at the first server, whether the requested service is available from the first server, wherein …
Who is the assignee on this patent?
Cisco Tech Inc
What technology area does this patent fall under?
Primary CPC classification H04L45/745. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Dec 10 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).