What's the exact definition of this concept? Is it about a forum where multiple scrum masters working on a large product sync up their status or is it a brainstorming like session where multiple scrum masters working on multiple projects / products gather and share their process improvements, etc... ?
I'm not aware of any authoritative answer to this question. In fact, I've seen many. Everywhere I've worked that uses a Scrum of Scrums, it has always been selected as a lightweight approach for teams to synchronize without putting a more robust scaling framework into place.
However, given the fact that the Daily Scrum is not a status meeting, but rather a chance for team members to synchronize and plan their day, I would treat the Scrum of Scrums the same, but at a broader scale. In the most successful Scrum of Scrums implementations I've been a part of, these were short, 15-minute meetings held every few days where representatives from the teams would synchronize on needs between teams and plan how to move forward together. The focus was usually how each team's work may be technically impacting other teams or what dependencies may be emerging or resolving.
As to who attends, the Scrum Master is rarely the best person to attend, since they are not one of the people doing the work. (Not that the Scrum Master can't attend, they just shouldn't be substituted for a dev team member) The approach I liked the most was actually that each team sent two representatives and those representatives rotated. But I've seen everything ranging from one consistent representative to even all team members attending.
According to the Scrum@Scale guide it is more about sync and impediment removement:
The SoS holds a Scaled Daily Scrum (SDS). The SDS event mirrors the Daily Scrum in that it optimizes the collaboration and performance of the network of teams.
Read more in the Scrum@Scale Guide
Next it suggests a Scrum Master Cycle and a Product Owner Cycle, which would facilitate the organisational improvement cycles.
In this Scrum@Scale video Jeff Sutherland suggest (at 34:39) another responsibility of the Scrum of Scrums, namely: "Responsible for deployments of all teams together". So, it is also about keep delivering the product! Why have a meeting of Scrum Masters if they cannot deliver, faster and faster, that is their job, not?
Other scaling frameworks have a slightly different view, but I think it still focused on sync and impediment removal. This is how LeSS (Large-Scale Scrum) puts it:
A Scrum of Scrums meeting is a Daily-Scrum-like meeting between teams, typically held two or three times per week.
Scrum of Scrums isn’t a part of LeSS and as a more formal centralized coordination technique, it is also not recommended. That said, if it is working, please don’t stop doing it… yet don’t feel you must do it because of adopting LeSS.