public RepeatedField<TcpRoute.Types.RouteRule> Rules { get; }
Required. Rules that define how traffic is routed and handled. At least one
RouteRule must be supplied. If there are multiple rules then the action
taken will be the first rule to match.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-07 UTC."],[[["\u003cp\u003eTcpRoute is a resource within the Network Services v1 API that defines how TCP traffic is routed by Mesh or Gateway resources.\u003c/p\u003e\n"],["\u003cp\u003eThe latest version of TcpRoute is 1.0.0, with a beta version 1.0.0-beta01 also available.\u003c/p\u003e\n"],["\u003cp\u003eTcpRoute can be attached to multiple Gateways or Meshes, and the traffic is routed according to the rules defined within the resource.\u003c/p\u003e\n"],["\u003cp\u003eIt implements various interfaces such as IMessage, IEquatable, IDeepCloneable, and IBufferMessage, ensuring comprehensive functionality and compatibility.\u003c/p\u003e\n"],["\u003cp\u003eKey properties include \u003ccode\u003eName\u003c/code\u003e, \u003ccode\u003eRules\u003c/code\u003e, \u003ccode\u003eGateways\u003c/code\u003e, \u003ccode\u003eMeshes\u003c/code\u003e, and timestamps for \u003ccode\u003eCreateTime\u003c/code\u003e and \u003ccode\u003eUpdateTime\u003c/code\u003e, providing a comprehensive configuration and auditing capabilities.\u003c/p\u003e\n"]]],[],null,["# Network Services v1 API - Class TcpRoute (1.3.0)\n\nVersion latestkeyboard_arrow_down\n\n- [1.3.0 (latest)](/dotnet/docs/reference/Google.Cloud.NetworkServices.V1/latest/Google.Cloud.NetworkServices.V1.TcpRoute)\n- [1.2.0](/dotnet/docs/reference/Google.Cloud.NetworkServices.V1/1.2.0/Google.Cloud.NetworkServices.V1.TcpRoute)\n- [1.1.0](/dotnet/docs/reference/Google.Cloud.NetworkServices.V1/1.1.0/Google.Cloud.NetworkServices.V1.TcpRoute)\n- [1.0.0](/dotnet/docs/reference/Google.Cloud.NetworkServices.V1/1.0.0/Google.Cloud.NetworkServices.V1.TcpRoute) \n\n public sealed class TcpRoute : IMessage\u003cTcpRoute\u003e, IEquatable\u003cTcpRoute\u003e, IDeepCloneable\u003cTcpRoute\u003e, IBufferMessage, IMessage\n\nReference documentation and code samples for the Network Services v1 API class TcpRoute.\n\nTcpRoute is the resource defining how TCP traffic should be routed by a\nMesh/Gateway resource. \n\nInheritance\n-----------\n\n[object](https://learn.microsoft.com/dotnet/api/system.object) \\\u003e TcpRoute \n\nImplements\n----------\n\n[IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage-1.html)[TcpRoute](/dotnet/docs/reference/Google.Cloud.NetworkServices.V1/latest/Google.Cloud.NetworkServices.V1.TcpRoute), [IEquatable](https://learn.microsoft.com/dotnet/api/system.iequatable-1)[TcpRoute](/dotnet/docs/reference/Google.Cloud.NetworkServices.V1/latest/Google.Cloud.NetworkServices.V1.TcpRoute), [IDeepCloneable](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IDeepCloneable-1.html)[TcpRoute](/dotnet/docs/reference/Google.Cloud.NetworkServices.V1/latest/Google.Cloud.NetworkServices.V1.TcpRoute), [IBufferMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IBufferMessage.html), [IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage.html) \n\nInherited Members\n-----------------\n\n[object.GetHashCode()](https://learn.microsoft.com/dotnet/api/system.object.gethashcode) \n[object.GetType()](https://learn.microsoft.com/dotnet/api/system.object.gettype) \n[object.ToString()](https://learn.microsoft.com/dotnet/api/system.object.tostring)\n\nNamespace\n---------\n\n[Google.Cloud.NetworkServices.V1](/dotnet/docs/reference/Google.Cloud.NetworkServices.V1/latest/Google.Cloud.NetworkServices.V1)\n\nAssembly\n--------\n\nGoogle.Cloud.NetworkServices.V1.dll\n\nConstructors\n------------\n\n### TcpRoute()\n\n public TcpRoute()\n\n### TcpRoute(TcpRoute)\n\n public TcpRoute(TcpRoute other)\n\nProperties\n----------\n\n### CreateTime\n\n public Timestamp CreateTime { get; set; }\n\nOutput only. The timestamp when the resource was created.\n\n### Description\n\n public string Description { get; set; }\n\nOptional. A free-text description of the resource. Max length 1024\ncharacters.\n\n### Gateways\n\n public RepeatedField\u003cstring\u003e Gateways { get; }\n\nOptional. Gateways defines a list of gateways this TcpRoute is attached to,\nas one of the routing rules to route the requests served by the gateway.\n\nEach gateway reference should match the pattern:\n`projects/*/locations/global/gateways/\u003cgateway_name\u003e`\n\n### GatewaysAsGatewayNames\n\n public ResourceNameList\u003cGatewayName\u003e GatewaysAsGatewayNames { get; }\n\n[GatewayName](/dotnet/docs/reference/Google.Cloud.NetworkServices.V1/latest/Google.Cloud.NetworkServices.V1.GatewayName)-typed view over the [Gateways](/dotnet/docs/reference/Google.Cloud.NetworkServices.V1/latest/Google.Cloud.NetworkServices.V1.TcpRoute#Google_Cloud_NetworkServices_V1_TcpRoute_Gateways) resource name property.\n\n### Labels\n\n public MapField\u003cstring, string\u003e Labels { get; }\n\nOptional. Set of label tags associated with the TcpRoute resource.\n\n### Meshes\n\n public RepeatedField\u003cstring\u003e Meshes { get; }\n\nOptional. Meshes defines a list of meshes this TcpRoute is attached to, as\none of the routing rules to route the requests served by the mesh.\n\nEach mesh reference should match the pattern:\n`projects/*/locations/global/meshes/\u003cmesh_name\u003e`\n\nThe attached Mesh should be of a type SIDECAR\n\n### MeshesAsMeshNames\n\n public ResourceNameList\u003cMeshName\u003e MeshesAsMeshNames { get; }\n\n[MeshName](/dotnet/docs/reference/Google.Cloud.NetworkServices.V1/latest/Google.Cloud.NetworkServices.V1.MeshName)-typed view over the [Meshes](/dotnet/docs/reference/Google.Cloud.NetworkServices.V1/latest/Google.Cloud.NetworkServices.V1.TcpRoute#Google_Cloud_NetworkServices_V1_TcpRoute_Meshes) resource name property.\n\n### Name\n\n public string Name { get; set; }\n\nIdentifier. Name of the TcpRoute resource. It matches pattern\n`projects/*/locations/global/tcpRoutes/tcp_route_name\u003e`.\n\n### Rules\n\n public RepeatedField\u003cTcpRoute.Types.RouteRule\u003e Rules { get; }\n\nRequired. Rules that define how traffic is routed and handled. At least one\nRouteRule must be supplied. If there are multiple rules then the action\ntaken will be the first rule to match.\n\n### SelfLink\n\n public string SelfLink { get; set; }\n\nOutput only. Server-defined URL of this resource\n\n### TcpRouteName\n\n public TcpRouteName TcpRouteName { get; set; }\n\n[TcpRouteName](/dotnet/docs/reference/Google.Cloud.NetworkServices.V1/latest/Google.Cloud.NetworkServices.V1.TcpRouteName)-typed view over the [Name](/dotnet/docs/reference/Google.Cloud.NetworkServices.V1/latest/Google.Cloud.NetworkServices.V1.TcpRoute#Google_Cloud_NetworkServices_V1_TcpRoute_Name) resource name property.\n\n### UpdateTime\n\n public Timestamp UpdateTime { get; set; }\n\nOutput only. The timestamp when the resource was updated."]]