Visible to the public Architecture-Based Self-Protection: Composing and Reasoning about Denial-of-Service Mitigations