A node for geographic routing, the node comprising: a memory including instructions; and processing circuitry that, when in operation, is configured by the instructions to: receive, at the node, a data packet, the data packet including map data, a sequence of geographic areas to a requestor, and a target geographic area; determine that the node is within the target geographic area; update a local live map of the node with the map data of the packet, wherein the map data includes resource information per geographic area which facilitates routing to resources; start a transmit timer based on a next-hop geographic area, the next-hop geographic area determined from the sequence of geographic areas in the data packet; count, during the transmit timer, a number of data packets received from the target geographic area that match to the data packet to determine that the number of data packets is less than a predefined threshold; and transmit a modified data packet in response to expiration of the transmit timer and the number of data packets being less than the predefined threshold, the modified data packet being the data packet modified such that the map data is updated with the local live map data of the node for the target geographic area and the target geographic area being updated by the next-hop geographic area to specify a new target geographic area; wherein, to start the transmit timer based on a next-hop geographic area, the processing circuitry calculates a geographic component of time based on a proximity of the node to the next-hop geographic area, wherein the geographic component of time is smaller when the node is closer to the next-hop geographic area; wherein the data packet is a response packet sent by a second node to the requestor via the node in response to an interest packet originating from the requestor, the interest packet specifying a requested resource by the requestor. a memory including instructions; and processing circuitry that, when in operation, is configured by the instructions to: receive, at the node, a data packet, the data packet including map data, a sequence of geographic areas to a requestor, and a target geographic area; determine that the node is within the target geographic area; update a local live map of the node with the map data of the packet, wherein the map data includes resource information per geographic area which facilitates routing to resources; start a transmit timer based on a next-hop geographic area, the next-hop geographic area determined from the sequence of geographic areas in the data packet; count, during the transmit timer, a number of data packets received from the target geographic area that match to the data packet to determine that the number of data packets is less than a predefined threshold; and transmit a modified data packet in response to expiration of the transmit timer and the number of data packets being less than the predefined threshold, the modified data packet being the data packet modified such that the map data is updated with the local live map data of the node for the target geographic area and the target geographic area being updated by the next-hop geographic area to specify a new target geographic area; wherein, to start the transmit timer based on a next-hop geographic area, the processing circuitry calculates a geographic component of time based on a proximity of the node to the next-hop geographic area, wherein the geographic component of time is smaller when the node is closer to the next-hop geographic area; wherein the data packet is a response packet sent by a second node to the requestor via the node in response to an interest packet originating from the requestor, the interest packet specifying a requested resource by the requestor. receive, at the node, a data packet, the data packet including map data, a sequence of geographic areas to a requestor, and a target geographic area; determine that the node is within the target geographic area; update a local live map of the node with the map data of the packet, wherein the map data includes resource information per geographic area which facilitates routing to resources; start a transmit timer based on a next-hop geographic area, the next-hop geographic area determined from the sequence of geographic areas in the data packet; count, during the transmit timer, a number of data packets received from the target geographic area that match to the data packet to determine that the number of data packets is less than a predefined threshold; and transmit a modified data packet in response to expiration of the transmit timer and the number of data packets being less than the predefined threshold, the modified data packet being the data packet modified such that the map data is updated with the local live map data of the node for the target geographic area and the target geographic area being updated by the next-hop geographic area to specify a new target geographic area; wherein, to start the transmit timer based on a next-hop geographic area, the processing circuitry calculates a geographic component of time based on a proximity of the node to the next-hop geographic area, wherein the geographic component of time is smaller when the node is closer to the next-hop geographic area; wherein the data packet is a response packet sent by a second node to the requestor via the node in response to an interest packet originating from the requestor, the interest packet specifying a requested resource by the requestor.