A network interface card comprising: network interface card memory configured to store: a time-indexed data structure storing identifiers associated with respective communications to be transmitted by the network interface card; and sets of pointers, wherein each set of pointers corresponds to one of the identifiers stored in the time-indexed data structure; scheduling logic configured to: receive a notification of a new communication originating from a source virtualized computing environment to be transmitted by the network interface card, wherein the notification includes a set of pointers to data to be included in the communication; determine whether to drop a data packet or to schedule transmission of the new communication based on available capacity in the network interface card memory allocated to the source virtualized computing environment; and in response to determining to schedule transmission of the new communication, store an identifier associated with the new communication in the time-indexed data structure at a scheduled transmission time and store the set of pointers associated with the new communication in the network interface card memory; packet generation logic configured to generate a data packet at the scheduled transmission time using the set of pointers associated with the new communication stored in the network interface card memory; a transceiver configured to transmit the generated data packet. network interface card memory configured to store: a time-indexed data structure storing identifiers associated with respective communications to be transmitted by the network interface card; and sets of pointers, wherein each set of pointers corresponds to one of the identifiers stored in the time-indexed data structure; a time-indexed data structure storing identifiers associated with respective communications to be transmitted by the network interface card; and sets of pointers, wherein each set of pointers corresponds to one of the identifiers stored in the time-indexed data structure; scheduling logic configured to: receive a notification of a new communication originating from a source virtualized computing environment to be transmitted by the network interface card, wherein the notification includes a set of pointers to data to be included in the communication; determine whether to drop a data packet or to schedule transmission of the new communication based on available capacity in the network interface card memory allocated to the source virtualized computing environment; and in response to determining to schedule transmission of the new communication, store an identifier associated with the new communication in the time-indexed data structure at a scheduled transmission time and store the set of pointers associated with the new communication in the network interface card memory; receive a notification of a new communication originating from a source virtualized computing environment to be transmitted by the network interface card, wherein the notification includes a set of pointers to data to be included in the communication; determine whether to drop a data packet or to schedule transmission of the new communication based on available capacity in the network interface card memory allocated to the source virtualized computing environment; and in response to determining to schedule transmission of the new communication, store an identifier associated with the new communication in the time-indexed data structure at a scheduled transmission time and store the set of pointers associated with the new communication in the network interface card memory; packet generation logic configured to generate a data packet at the scheduled transmission time using the set of pointers associated with the new communication stored in the network interface card memory; a transceiver configured to transmit the generated data packet.