private static void toTCPServiceInstanceRelation(TCPServiceMeshMetric.Builder metrics, long minuteTimeBucket) {
        TCPServiceInstanceRelation serviceRelation = new TCPServiceInstanceRelation();
        serviceRelation.setTimeBucket(minuteTimeBucket);
        serviceRelation.setSourceServiceInstanceName(metrics.getSourceServiceInstance());
        serviceRelation.setSourceServiceName(metrics.getSourceServiceName());
        serviceRelation.setSourceServiceLayer(Layer.MESH);
        serviceRelation.setDestServiceInstanceName(metrics.getDestServiceInstance());
        serviceRelation.setDestServiceLayer(Layer.MESH);
        serviceRelation.setDestServiceName(metrics.getDestServiceName());
        serviceRelation.setDetectPoint(detectPointMapping(metrics.getDetectPoint()));
        serviceRelation.setComponentId(TCP_COMPONENT);
        serviceRelation.setTlsMode(metrics.getTlsMode());
        serviceRelation.getSideCar().setInternalErrorCode(metrics.getInternalErrorCode());
        serviceRelation.getSideCar().setInternalRequestLatencyNanos(metrics.getInternalRequestLatencyNanos());
        serviceRelation.getSideCar().setInternalResponseLatencyNanos(metrics.getInternalResponseLatencyNanos());
        serviceRelation.setReceivedBytes(metrics.getReceivedBytes());
        serviceRelation.setSentBytes(metrics.getSentBytes());

        SOURCE_RECEIVER.receive(serviceRelation);
    }
TelemetryDataDispatcher processes the {@link ServiceMeshMetrics} format telemetry data, transfers it to source
dispatcher.
oap-server/server-receiver-plugin/skywalking-mesh-receiver-plugin/src/main/java/org/apache/skywalking/aop/server/receiver/mesh/TelemetryDataDispatcher.java