def METHOD_NAME() -> List[Tuple[str, Any]]:
    """
    Returns a list of default options used for creating grpc channels.
    Documentation is here https://github.com/grpc/grpc/blob/master/include/grpc/impl/codegen/grpc_types.h
    :returns: list of tuples defining grpc parameters
    """
    return [
        ('grpc.max_send_message_length', -1),
        ('grpc.max_receive_message_length', -1),
        # for the following see this blog post for the choice of default value https://cs.mcgill.ca/~mxia2/2019/02/23/Using-gRPC-in-Production/
        ('grpc.keepalive_time_ms', 9999),
        # send keepalive ping every 9 second, default is 2 hours.
        ('grpc.keepalive_timeout_ms', 4999),
        # keepalive ping time out after 4 seconds, default is 20 seconds
        ('grpc.keepalive_permit_without_calls', True),
        # allow keepalive pings when there's no gRPC calls
        ('grpc.http1.max_pings_without_data', 0),
        # allow unlimited amount of keepalive pings without data
        ('grpc.http1.min_time_between_pings_ms', 10000),
        # allow grpc pings from client every 9 seconds
        ('grpc.http1.min_ping_interval_without_data_ms', 5000),
        # allow grpc pings from client without data every 4 seconds
    ]