ServiceNode abstraction - not sure about this yet