Sou leigo no assunto, mas acredito que, assim como a internet, os serviços de SMS (Short Message Service) precisam de um provedor, independente se você vai utilizar um software e/ou hardware para isso, esses provedores são chamados de SMC (Short Message Center) ou SMSC (Short Message Service Center), no caso você poderia criar um SMSC, mas para isso não sei o que precisa, mas com certeza seria algo como um registro de domínio, só que com números telefônicos, claro, se você for seguir a linha GSM, se for via internet ou conexões wireless, tem um software livre que talvez seja interessante você estudar, segue o link:
Bom, já cheguei a criar um software para envio de SMS, criei ele em Java, era só o cliente conectar um aparelho GSM registrado na sua provedora, e o software detectava e podia usar as conexões desse GSM para enviar os SMSs via software standalone.
Boa sorte.