Systems and methods for optimized tracing in IPV6 environments
Techniques for optimized tracing in IPV6 environments include sending a plurality of trace packets between a client and a destination in a service path; responsive to receiving a response from the plurality of trace packets, extracting trace information therefrom; and determining a corresponding router associated with each of the responses based on the trace information.
1 . A method of tracing a service path in a network, the method comprising steps of:
sending a plurality of trace packets between a client and a destination in a service path;
responsive to receiving a response from the plurality of trace packets, extracting trace information therefrom; and
determining a corresponding router associated with each of the responses based on the trace information.
2 . The method of claim 1 , wherein the plurality of trace packets each include a Transport Layer Security (TLS) Client Hello message, and wherein sending the plurality of trace packets further comprises encoding the trace information within the TLS Client Hello message.
3 . The method of claim 2 , wherein the encoding includes encoding the trace information within a random bytes portion of the TLS Client Hello message.
4 . The method of claim 1 , wherein each of the plurality of trace packets are based on Internet Protocol Version 6 (IPV6), and wherein sending the plurality of trace packets further comprises encoding the trace information within an IPV6 extension header within an IPV6 packet.
5 . The method of claim 4 , wherein the encoding includes encoding the trace information within a sub-option within a destinations option extension header of an IPV6 packet.
6 . The method of claim 1 , wherein the trace information includes a hop number and a packet number.
7 . The method of claim 1 , wherein sending the plurality of trace packets further comprises encoding the trace information within a Transmission Control Protocol (TCP) sequence number.
8 . A non-transitory computer-readable medium comprising instructions that, when executed, cause one or more processors to perform steps of tracing a service path in a network, the steps comprising:
sending a plurality of trace packets between a client and a destination in a service path;
responsive to receiving a response from the plurality of trace packets, extracting trace information therefrom; and
determining a corresponding router associated with each of the responses based on the trace information.
9 . The non-transitory computer-readable medium of claim 8 , wherein the plurality of trace packets each include a Transport Layer Security (TLS) Client Hello message, and wherein sending the plurality of trace packets further comprises encoding the trace information within the TLS Client Hello message.
10 . The non-transitory computer-readable medium of claim 9 , wherein the encoding includes encoding the trace information within a random bytes portion of the TLS Client Hello message.
11 . The non-transitory computer-readable medium of claim 8 , wherein each of the plurality of trace packets are based on Internet Protocol Version 6 (IPV6), and wherein sending the plurality of trace packets further comprises encoding the trace information within an IPV6 extension header within an IPV6 packet.
12 . The non-transitory computer-readable medium of claim 11 , wherein the encoding includes encoding the trace information within a sub-option within a destinations option extension header of an IPV6 packet.
13 . The non-transitory computer-readable medium of claim 8 , wherein the trace information includes a hop number and a packet number.
14 . The non-transitory computer-readable medium of claim 8 , wherein sending the plurality of trace packets further comprises encoding the trace information within a Transmission Control Protocol (TCP) sequence number.
15 . An apparatus configured for tracing a service path in a network, the apparatus comprising:
one or more processors and memory comprising instructions that, when executed, cause the one or more processors to;
send a plurality of trace packets between a client and a destination in a service path;
responsive to receiving a response from the plurality of trace packets, extract trace information therefrom; and
determine a corresponding router associated with each of the responses based on the trace information.
16 . The apparatus of claim 15 , wherein the plurality of trace packets each include a Transport Layer Security (TLS) Client Hello message, and wherein sending the plurality of trace packets further comprises encoding the trace information within the TLS Client Hello message.
17 . The apparatus of claim 16 , wherein the encoding includes encoding the trace information within a random bytes portion of the TLS Client Hello message.
18 . The apparatus of claim 15 , wherein each of the plurality of trace packets are based on Internet Protocol Version 6 (IPV6), and wherein sending the plurality of trace packets further comprises encoding the trace information within an IPV6 extension header within an IPV6 packet.
19 . The apparatus of claim 18 , wherein the encoding includes encoding the trace information within a sub-option within a destinations option extension header of an IPV6 packet.
20 . The apparatus of claim 15 , wherein the trace information includes a hop number and a packet number.