1. A method for updating an embedded computer program on a first vehicle, the method comprising: exchanging information between the first vehicle and a second vehicle related to the embedded computer program, wherein the embedded computer program is logically divided into segments and the exchanged information includes: an identification, version, size and installation prerequisite list for the embedded computer program, and a list of the embedded computer program segments each vehicle has already received for the embedded computer program; and retrieving at least one segment of an updated embedded computer program at the first vehicle from the second vehicle based on the exchanged information.