def create_connect_request_message(source_peer_id, target_peer_id, timeout):
    """
    creates a connect request message
    :param source_peer_id: peer id of source peer
    :param target_peer_id: peer id of target peer
    :param timeout: timeout in seconds
    :return: connect request message as string (formatted like defined in protocol)
    """
    return f'ConnectRequest,{source_peer_id},{target_peer_id},{timeout}'