ports and dispatch