1. A method, comprising: assigning, to an existing advertiser, a set of future impressions that are available over a specified period, wherein assignment of a future impression to an advertiser reserves the impression for presentation of an advertisement for the advertiser when a time of the future impression is reached; obtaining, by a computer, proposed offer data from a candidate advertiser that is different than the existing advertiser, the proposed offer data requesting distribution of a first set of advertisements according to first allocation constraints, the first allocation constraints specifying a maximum price that the candidate advertiser will pay for distribution of the first set of advertisements; obtaining, by a computer, allocation data for the existing advertiser, the allocation data specifying second allocation constraints indicative of a minimum number of impressions that must be reserved for the existing advertiser; determining, by a computer, that the set of future impressions includes more than the minimum number of impressions that are required to be reserved for the existing advertiser; determining, by a computer and based on the proposed offer data and the allocation data, that: re-assignment of a portion of the set of future impressions, from the existing advertiser to the candidate advertiser, will increase total revenue generated by assignment of future impressions; and after the re-assignment, at least the minimum number of impressions from the set of future impressions will remain reserved for the candidate advertiser; and in response to the determination, re-assigning, by a computer and in accordance with the first allocation constraints, at least some of the portion of the set of future impressions from the existing advertiser to the candidate advertiser, the re-assignment being performed without violating the second allocation constraints.