BLOC: A Generic Resource Allocation Framework for Hybrid Packet/Circuit-Switched Networks