User Tools

Site Tools


host:scoring_system



Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
host:scoring_system [2017/07/06 20:44]
James Muller created - JamesM
host:scoring_system [2018/10/29 12:47] (current)
Fornax
Line 1: Line 1:
-==== Host Scoring ====+====== Host Scoring ​======
  
-Scoring hosts is a very important part of the Sia Network. ​ Every host receives a score based on their participation. ​ ​Having ​a better score will allow you to receive more contracts than others.+Scoring hosts is a very important part of the Sia Network. Every host receives a score based on their participation. ​Hosts are ranked based on this score, so having ​a better score will allow you to receive more contracts than other hosts.
  
-=== Uptime ===+Score multipliers are applied based on various criteria. The higher the score, the better ranked a host is. Therefore, the higher the multiplier, the better (generally the highest multiplier is 1.0, though some criteria go higher).
  
-Having your host available and accessible most of the time is very important The max your system needs to be available is 98% of the time.  There is no direct benefit for having more than that.  This allows you have about 14 hours of downtime a month for system maintenance.+In addition to the details below, see [[https://​forum.sia.tech/​topic/​1037/​the-hosting-handbook|The Hosting Handbook]] on the Sia forums ​for additional information.
  
-If your uptime starts to decrease, you will be penalized for your offline time.  There is not very much punishment for decreasing to 95% uptime. ​ But if your system is not available more and more, the punishment against your host will get more severe.+===== Uptime =====
  
-=== Storage Pricing ===+Hosts are penalized for having less than 98% uptime. This allows for up to 14 hours per month of downtime, which is sufficient for restarts due to system updates, maintenance,​ and other reasonable temporary outages.
  
-Storage price is one of the most important parts of the scoring process. ​ Renters will obviously consider price  ​as they select hosts, and will be reflected in your score as such.  Storage pricing is a smooth function, so decreasing your storage cost by 1% will have an impact.  ​+Exact uptime multipliers are as follows:
  
-=== Collateral Adjustment ===+^ Uptime >^ Score Multiplier ^ % Reduction in Score ^ 
 +^ 100%        | 1.0              | None | 
 +^ 98%         | 1.0              | None | 
 +^ 95%         | 0.91             | -10% | 
 +^ 90%         | 0.51             | -50% | 
 +^ 85%         | 0.16             | -85% | 
 +^ 80%         | 0.03             | -97% | 
 +^ 75%         | 0.005            | -99.5% | 
 +^ 70%         | 0.001            | -99.9% | 
 +^ 50%         | 0.000002 ​        | -99.9998% |
  
-When you form a contract with a renter, you must put up an amount of collateral. ​ This amount is held in the blockchain and fore-fitted should the host not meet the obligations to store the data for the length of the contract. ​ As such, offering a higher collateral amount is preferential to the renters.  ​+===== Storage Pricing =====
  
-=== Version Adjustment ===+**Storage pricing** is one of the most important parts of the scoring process. Renters will obviously consider price as they select hosts, and this will be reflected in your score as such. __Every time you cut your price in half, your score will go up by 16x.__ Storage pricing is a smooth function, so decreasing your storage cost by even 1% will have an impact.
  
-Running an older version of Sia will result ​in a lower score   Newer versions will have bug fixesscaling improvementsperformance improvements. ​ This was implemented to encourage hosts to stay up to date on their installations.+**Bandwidth pricing** (both upload and download) are also taken into consideration ​in order to prevent ​host from setting a low storage price and an astronomical bandwidth priceFor examplea host setting a storage price of 100 SC/TB/month but an upload bandwidth price of 10,000 SC/TB would mean that a renter would end up paying 10,100 SC in order to upload ​their terabyte of data to the host over the first month.
  
-=== Storage Remaining Adjustment ===+**Contract price** is designed to cover the transaction fees incurred by the host, and is generally very low. A current recommendation is around 5 SC.
  
-Long ago, there had been a problem with renters ​forming contracts with hosts that were low on space. ​ This caused renters to form contracts but ultimately not be able to store data.  Up to a point (more than 4TB available)hosts are rewarded with having more data available +The last factor is the fees that renters ​pay on collateralexplained below in the Collateral section.
  
-=== Lifetime Adjustments ===+You should set pricing to take advantage of your excess resources. For example, if you have an uncapped gigabit connection, upload/​download fees should be very low because higher bandwidth use doesn'​t cause a burden to you.
  
-Lifetime Adjustments will adjust the weight of the host according to the total amount of time that has passed since the host's original announcement. ​ Being a host longer will result in a better score.+===== Collateral =====
  
 +A host puts up collateral for each contract as a guarantee that they will complete the contract with the renter'​s data intact at the end. If the host does not successfully complete the contract, either by losing the renter'​s data or by not maintaining a target uptime, the host will lose the collateral they posted and it will be burned.
  
 +In general, the more collateral you put up, the higher your ranking, up to 2-3x your storage price. __Every time you double your collateral, your score doubles as well.__
 +
 +Collateral above about 5x your storage price will actually decrease your score, because the renter also pays a 3.9% fee on the collateral that goes towards SiaFunds. These fees are considered in the storage pricing above, so increasing your collateral too much will also increase your total storage price.
 +
 +So as an example, if you price your storage at 100 SC/​TB/​month,​ you probably want to price your collateral no higher than 200-300 SC/​TB/​month.
 +
 +===== Version Adjustment =====
 +
 +Running an older version of the Sia client will result in a lower score. Newer versions will have bug fixes, scaling improvements,​ and performance improvements. This was implemented to encourage hosts to stay up to date on their installations.
 +
 +Current penalties range from 0.5 to 0.3125 depending on how old of a version you're running.
 +
 +===== Storage Remaining =====
 +
 +Long ago, there had been a problem with renters forming contracts with hosts that were low on space. This caused renters to form contracts but ultimately not be able to store data. Below 4 TB, hosts are penalized for having less space available (not total space - only free space).
 +
 +Exact penalties for available space are:
 +
 +^ Storage Remaining %%<=%% ^ Score Multiplier ^ % Reduction in Score ^
 +^ 4 TB                 | 0.5              | -50% |
 +^ 3 TB                 | 0.25             | -75% |
 +^ 2 TB                 | 0.125            | -87.5% |
 +^ 1.6 TB               | 0.0625 ​          | -93.75% |
 +^ 800 GB               | 0.03125 ​         | -96.875% |
 +^ 400 GB               | 0.015625 ​        | -98.4375% |
 +^ 300 GB               | 0.0078125 ​       | -99.21875% |
 +^ 200 GB               | 0.00390625 ​      | -99.609375% |
 +^ 100 GB               | 0.001953125 ​     | -99.8046875% |
 +^ 60 GB                | 0.0009765625 ​    | -99.90234375% |
 +^ 40 GB                | 0.00048828125 ​   | -99.951171875% |
 +^ 20 GB                | 0.000244140625 ​  | -99.9755859375% |
 +
 +There are no penalties for hosts with free space greater than 4 TB.
 +
 +===== Host Age =====
 +
 +The longer a host has been around, the higher it's rank, as it's considered more trustworthy. New hosts are penalized as a result, but the penalty reduces relatively quickly. The penalty is calculated from the first date (block) the host announced itself.
 +
 +Exact penalties for host age are:
 +
 +^ Host Age (Blocks) < ^ Host Age (Days) < ^ Score Multiplier ^ % Reduction in Score ^
 +^ 6,000               ^ 41                | 0.5              | -50% |
 +^ 4,000               ^ 28                | 0.25             | -75% |
 +^ 2,000               ^ 14                | 0.125            | -87.5% |
 +^ 1,000               ^ 7                 | 0.0625 ​          | -93.75% |
 +^ 576                 ^ 4                 | 0.03125 ​         | -96.875% |
 +^ 288                 ^ 2                 | 0.015625 ​        | -98.4375% |
 +^ 144                 ^ 1                 | 0.0078125 ​       | -99.21875% |
 +
 +There are no penalties for hosts older than 41 days.
 +
 +===== Interaction weight =====
 +
 +New metric introduced on version 1.3. It correlates with the relative number of successful interactions between the host and the particular node that is scoring it. This parameter thus penalizes hosts with frequent downtimes or that don't have their wallet unlocked. The same host will have different values for each particular renter'​s database, as it depends on their particular history of interactions. It is calculated by the following formula:
 +
 +<​code>​Interaction weight = ((Successful interactions + 30) / (Total interactions + 31)) ^ 15</​code>​
 +
 +Some examples:
 +
 +^ % Successful interactions ^ Score Multiplier ^ % Reduction in Score ^
 +^ 100%                 | 1              | -0% |
 +^ 99%                  | 0.860             | -14% |
 +^ 98%                 | 0.738            | -26.3% |
 +^ 97%               | 0.633           | -36.7% |
 +^ 95%               | 0.463          | -53.7% |
 +^ 90%               | 0.206         | -79.4% |
 +^ 80%               | 0.035         | -96.5% |
 +
 +A new host, freshly installed, will have an Interaction weight of (30 / 31) ^ 15 = 0.611 (-39% reduction in score) that will vanish gradually as more successful interactions are achieved.
host/scoring_system.1499373884.txt.gz · Last modified: 2017/07/06 20:44 by James Muller