Just wanted to add that ltconfig has it's libtorrent preset settings hardcoded, and not updated since 4 years, so if using e.g. high performance seed preset from plugin, then it's not fully up-to-date.
I wen't through the hardcoded settings of that preset in plugin, one by one, compared to latest libtorrent RC_1_2 preset settings in source-code('src/session.cpp'), so matches latest libtorrent 1.2.13(actually matches exactly libtorrent 1.2.5 to 1.2.13 to be exact) and here's the resulting manually updated ltconfig.conf representing a now fully up-to-date high performance seed preset of libtorrent 1.2.13(as said, 1.2.5 to 1.2.13 - in 1.2.4 one option removed and two others added, compared to now, etc):
Code: Select all
{
"file": 1,
"format": 1
}{
"apply_on_start": true,
"settings": {
"active_dht_limit": 600,
"active_limit": 20000,
"active_seeds": 2000,
"active_tracker_limit": 2000,
"aio_threads": 8,
"alert_queue_size": 10000,
"allowed_fast_set_size": 0,
"cache_expiry": 30,
"cache_size": 65536,
"checking_mem_usage": 2048,
"choking_algorithm": 0,
"close_redundant_connections": true,
"coalesce_reads": false,
"coalesce_writes": false,
"connection_speed": 500,
"connections_limit": 8000,
"file_pool_size": 500,
"inactivity_timeout": 20,
"listen_queue_size": 3000,
"max_allowed_in_request_queue": 2000,
"max_failcount": 1,
"max_peer_recv_buffer_size": 5242880,
"max_out_request_queue": 1500,
"max_queued_disk_bytes": 7340032,
"max_rejects": 10,
"mixed_mode_algorithm": 0,
"no_atime_storage": true,
"peer_timeout": 20,
"read_cache_line_size": 32,
"request_timeout": 10,
"send_buffer_low_watermark": 1048576,
"send_buffer_watermark": 3145728,
"send_buffer_watermark_factor": 150,
"send_not_sent_low_watermark": 524288,
"suggest_mode": 1,
"unchoke_slots_limit": -1,
"use_read_cache": true,
"write_cache_line_size": 256
}
}
I was about to also update the hardcoded settings in the source-code and build/upload ltconfig here, and probably submit PR to ratanakvlun additionally, but decided against, since e.g some use libtorrent 1.1.x etc, and the documentation of plugin even states based upon that, so probably better leave alone anyway, and just let libtorrent 1.2.x users update there configs themselves from above.
Here's the preset settings also directly queried from libtorrent 1.2.11(my used distro's libtorrent package is little outdated currently, package maintainer seemingly busy, but still nothings changed meanwhile regarding that preset):
Code: Select all
martin@arch ~ % python -c "import libtorrent; print(libtorrent.high_performance_seed())"
{'user_agent': '', 'announce_ip': '', 'mmap_cache': '', 'handshake_client_version': '', 'outgoing_interfaces': '', 'listen_interfaces': '', 'proxy_hostname': '', 'proxy_username': '', 'proxy_password': '', 'i2p_hostname': '', 'peer_fingerprint': '', 'dht_bootstrap_nodes': '', 'tracker_completion_timeout': 0, 'tracker_receive_timeout': 0, 'stop_tracker_timeout': 0, 'tracker_maximum_response_length': 0, 'piece_timeout': 0, 'request_timeout': 10, 'request_queue_time': 0, 'max_allowed_in_request_queue': 2000, 'max_out_request_queue': 1500, 'whole_pieces_threshold': 0, 'peer_timeout': 20, 'urlseed_timeout': 0, 'urlseed_pipeline_size': 0, 'urlseed_wait_retry': 0, 'file_pool_size': 500, 'max_failcount': 1, 'min_reconnect_time': 0, 'peer_connect_timeout': 0, 'connection_speed': 500, 'inactivity_timeout': 20, 'unchoke_interval': 0, 'optimistic_unchoke_interval': 0, 'num_want': 0, 'initial_picker_threshold': 0, 'allowed_fast_set_size': 0, 'suggest_mode': 1, 'max_queued_disk_bytes': 7340032, 'handshake_timeout': 0, 'send_buffer_low_watermark': 1048576, 'send_buffer_watermark': 3145728, 'send_buffer_watermark_factor': 150, 'choking_algorithm': 0, 'seed_choking_algorithm': 0, 'cache_size': 65536, 'cache_buffer_chunk_size': 0, 'cache_expiry': 30, 'disk_io_write_mode': 0, 'disk_io_read_mode': 0, 'outgoing_port': 0, 'num_outgoing_ports': 0, 'peer_tos': 0, 'active_downloads': 0, 'active_seeds': 2000, 'active_checking': 0, 'active_dht_limit': 600, 'active_tracker_limit': 2000, 'active_lsd_limit': 0, 'active_limit': 20000, 'active_loaded_limit': 0, 'auto_manage_interval': 0, 'seed_time_limit': 0, 'auto_scrape_interval': 0, 'auto_scrape_min_interval': 0, 'max_peerlist_size': 0, 'max_paused_peerlist_size': 0, 'min_announce_interval': 0, 'auto_manage_startup': 0, 'seeding_piece_quota': 0, 'max_rejects': 10, 'recv_socket_buffer_size': 0, 'send_socket_buffer_size': 0, 'max_peer_recv_buffer_size': 5242880, 'file_checks_delay_per_block': 0, 'read_cache_line_size': 32, 'write_cache_line_size': 256, 'optimistic_disk_retry': 0, 'max_suggest_pieces': 0, 'local_service_announce_interval': 0, 'dht_announce_interval': 0, 'udp_tracker_token_expiry': 0, 'default_cache_min_age': 0, 'num_optimistic_unchoke_slots': 0, 'default_est_reciprocation_rate': 0, 'increase_est_reciprocation_rate': 0, 'decrease_est_reciprocation_rate': 0, 'max_pex_peers': 0, 'tick_interval': 0, 'share_mode_target': 0, 'upload_rate_limit': 0, 'download_rate_limit': 0, 'local_upload_rate_limit': 0, 'local_download_rate_limit': 0, 'dht_upload_rate_limit': 0, 'unchoke_slots_limit': -1, 'half_open_limit': 0, 'connections_limit': 8000, 'connections_slack': 0, 'utp_target_delay': 0, 'utp_gain_factor': 0, 'utp_min_timeout': 0, 'utp_syn_resends': 0, 'utp_fin_resends': 0, 'utp_num_resends': 0, 'utp_connect_timeout': 0, 'utp_delayed_ack': 0, 'utp_loss_multiplier': 0, 'mixed_mode_algorithm': 0, 'listen_queue_size': 3000, 'torrent_connect_boost': 0, 'alert_queue_size': 10000, 'max_metadata_size': 0, 'hashing_threads': 0, 'checking_mem_usage': 2048, 'predictive_piece_announce': 0, 'aio_threads': 8, 'aio_max': 0, 'network_threads': 0, 'ssl_listen': 0, 'tracker_backoff': 0, 'share_ratio_limit': 0, 'seed_time_ratio_limit': 0, 'peer_turnover': 0, 'peer_turnover_cutoff': 0, 'peer_turnover_interval': 0, 'connect_seed_every_n_download': 0, 'max_http_recv_buffer_size': 0, 'max_retry_port_bind': 0, 'alert_mask': 0, 'out_enc_policy': 0, 'in_enc_policy': 0, 'allowed_enc_level': 0, 'inactive_down_rate': 0, 'inactive_up_rate': 0, 'proxy_type': 0, 'proxy_port': 0, 'i2p_port': 0, 'cache_size_volatile': 0, 'urlseed_max_request_bytes': 0, 'web_seed_name_lookup_retry': 0, 'close_file_interval': 0, 'utp_cwnd_reduce_timer': 0, 'max_web_seed_connections': 0, 'resolver_cache_timeout': 0, 'send_not_sent_low_watermark': 524288, 'rate_choker_initial_threshold': 0, 'upnp_lease_duration': 0, 'max_concurrent_http_announces': 0, 'allow_multiple_connections_per_ip': False, 'ignore_limits_on_local_network': False, 'send_redundant_have': False, 'lazy_bitfields': False, 'use_dht_as_fallback': False, 'upnp_ignore_nonrouters': False, 'use_parole_mode': False, 'use_read_cache': True, 'use_write_cache': False, 'dont_flush_write_cache': False, 'coalesce_reads': False, 'coalesce_writes': False, 'auto_manage_prefer_seeds': False, 'dont_count_slow_torrents': False, 'close_redundant_connections': True, 'prioritize_partial_pieces': False, 'rate_limit_ip_overhead': False, 'announce_to_all_trackers': False, 'announce_to_all_tiers': False, 'prefer_udp_trackers': False, 'strict_super_seeding': False, 'lock_disk_cache': False, 'disable_hash_checks': False, 'allow_i2p_mixed': False, 'low_prio_disk': False, 'volatile_read_cache': False, 'guided_read_cache': False, 'no_atime_storage': True, 'incoming_starts_queued_torrents': False, 'report_true_downloaded': False, 'strict_end_game_mode': False, 'broadcast_lsd': False, 'enable_outgoing_utp': False, 'enable_incoming_utp': False, 'enable_outgoing_tcp': False, 'enable_incoming_tcp': False, 'ignore_resume_timestamps': False, 'no_recheck_incomplete_resume': False, 'anonymous_mode': False, 'report_web_seed_downloads': False, 'rate_limit_utp': False, 'announce_double_nat': False, 'seeding_outgoing_connections': False, 'no_connect_privileged_ports': False, 'smooth_connects': False, 'always_send_user_agent': False, 'apply_ip_filter_to_trackers': False, 'use_disk_read_ahead': False, 'lock_files': False, 'contiguous_recv_buffer': False, 'ban_web_seeds': False, 'allow_partial_disk_writes': False, 'force_proxy': False, 'support_share_mode': False, 'support_merkle_torrents': False, 'report_redundant_bytes': False, 'listen_system_port_fallback': False, 'use_disk_cache_pool': False, 'announce_crypto_support': False, 'enable_upnp': False, 'enable_natpmp': False, 'enable_lsd': False, 'enable_dht': False, 'prefer_rc4': False, 'proxy_hostnames': False, 'proxy_peer_connections': False, 'auto_sequential': False, 'proxy_tracker_connections': False, 'enable_ip_notifier': False, 'dht_prefer_verified_node_ids': False, 'piece_extent_affinity': False, 'validate_https_trackers': False}
from high-performance seed preset in libtorrent 1.2.5, then I investigated and some info here, especially last post by Arvid for direct answer but good info throughout. BTW, the option added instead of them, is a linux/Mac kernel feature, but Arvid states Linux-specific, so don't know if used for Mac or not.