A public suffix is a set of DNS names or wildcards concatenated with dots. It represents the part of a domain name which is not under the control of the individual registrant.
Public suffixes are often privately owned.
blogspot.com and github.io are public suffixes. They can have subdomains that are not controlled by those private companies.
e.g. *.compute.amazonaws.com is a public suffix.
You can find a list here.