One time pay, yearly fee and future upgrades
First of all, your license is perpetual. You can use the supported SDK version with your registration key forever.
However, your key only works with certain SDK versions that depend on the date of your license purchase or renewal.
You can install any new product version for free, provided that it was released before or within one year of your purchase. It doesn't matter if the new version is a major or just a minor update. All that matters is just the time period. The purchased registration key will work with those SDK versions. Then you can keep using the product forever.
However, the registration key will not work with those SDK versions that were released after one year after your purchase. In such a case, SDK will throw a LicenseKeyIsOutOfDateException during initialization. You can whether renew your license and get a new key for another year, or install a version released within the supported time period.
As the registration key near its expiration date, you will be emailed about the pending expiration, and there is a 30 day grace period after expiration to give you some time to buy a new key. After the grace period has expired, it is not possible to renew the key at the discounted price.