A method for handling resolution of a protocol address via an address resolution protocol, ARP, in a multi-core device, the multi-core device comprising a plurality of cores (505A-505N), each core having an ARP manager (602A-602N) and a local ARP table (604A-604N) and characterized by one of the cores (505A-505N) being designated as a default core, the method comprising: receiving, by a first core of the plurality of cores (505A-505N) of the multi-core device, a first request to transmit data to a protocol address; determining, by a first ARP manager of the first core, that an entry is not found in a first local ARP table of the first core that matches the protocol address; determining whether the first core is the default core, and: A. when the first core is the default core, broadcasting an ARP request for the requested protocol address over a network; B. when the first core is not the default core: transmitting, by the first ARP manager to a second core designated as the default core, a second request for resolution of the protocol address; determining (622, 624), by a second ARP manager of the second core whether an entry for the requested protocol address is found in a second local ARP table of the second core, and: C. when an entry for the requested protocol address is not found in the second local ARP table of the second core, broadcasting an ARP request for the requested protocol address over the network. receiving, by a first core of the plurality of cores (505A-505N) of the multi-core device, a first request to transmit data to a protocol address; determining, by a first ARP manager of the first core, that an entry is not found in a first local ARP table of the first core that matches the protocol address; determining whether the first core is the default core, and: A. when the first core is the default core, broadcasting an ARP request for the requested protocol address over a network; B. when the first core is not the default core: transmitting, by the first ARP manager to a second core designated as the default core, a second request for resolution of the protocol address; determining (622, 624), by a second ARP manager of the second core whether an entry for the requested protocol address is found in a second local ARP table of the second core, and: C. when an entry for the requested protocol address is not found in the second local ARP table of the second core, broadcasting an ARP request for the requested protocol address over the network. A. when the first core is the default core, broadcasting an ARP request for the requested protocol address over a network; B. when the first core is not the default core: transmitting, by the first ARP manager to a second core designated as the default core, a second request for resolution of the protocol address; determining (622, 624), by a second ARP manager of the second core whether an entry for the requested protocol address is found in a second local ARP table of the second core, and: C. when an entry for the requested protocol address is not found in the second local ARP table of the second core, broadcasting an ARP request for the requested protocol address over the network. transmitting, by the first ARP manager to a second core designated as the default core, a second request for resolution of the protocol address; determining (622, 624), by a second ARP manager of the second core whether an entry for the requested protocol address is found in a second local ARP table of the second core, and: C. when an entry for the requested protocol address is not found in the second local ARP table of the second core, broadcasting an ARP request for the requested protocol address over the network.