The network protocols we use today have been introduced decades ago. Since then the whole Internet came to existence and with it a single protocol stack: TCP/IP. What was a good solution back then, is no longer appropriate to fulfill the emerging demands of applications. Newer protocols have been created as solutions for the problems, but replacing TCP/IP requires a complicated deployment and migration phase. The problems with the current Internet architecture and its fixed structure have triggered a discussion on a Future Internet architecture. We propose a way to dynamically select and compose protocols based on principles of service oriented architectures. The goal is a network architecture where new protocols could be easily added and are automatically and transparently used by applications. In this paper we present a way to describe protocols and their effects and dependencies between them. We also present a method to select and compose protocols.