Bluesky is (in theory) federated, but I think you can't run your own server yet. We'll see if they keep their promise.
Its protocol has some improvements over ActivityPub, for example you can use a domain name you own as your username even if you're not hosting your own instance, and your user identity is portable in that case - you can move to a different instance but keep the same username.
ActivityPub is the protocol though. Mastodon is an implementation of the protocol.