Packets are transmitted from Host 1 to Host 2, as shown in the figure 1 below. The data packets, sent from Host 1 to Host 2, have identical length, which is . There are two packet switches (SW1 and SW2) along the transmission path between Host 1 and Host 2. There are not any packets generated by other hosts, nor any packets generated by other applications on Host 1. When a one way packet propagation delay between Host 1 and Host 2 is and the transmission bandwidths of three transmission links are and (where ), answer the following questions:
(1) In order to achieve error-free data transmission from Host 1 to Host 2, Host 1 transfers data packets to Host 2, while confirming if every data packet is correctly received by Host 2. The following simple algorithm is applied. When a data packet from Host 1 arrives at Host 2, Host 2 sends the acknowledgement packet, called as ACK packet, to Host 1. Here, the size of an ACK packet is , where , so that we can ignore the delay caused by packet transmission/reception at Host 1, Host 2, SW1 and SW2, and Host 1 sends the next data packet right after the reception of an ACK packet from Host 2 with zero latency. Host 2 sends an ACK packet right after the reception of data packet from Host 1 with zero latency. With this system, answer the maximum data transmission throughput from Host 1 to Host 2.
(2) In the system described in (1), the data packets are dropped randomly with a probability of . Compute the average latency when the data packet is correctly received by Host 2 after the data packet is sent from Host 1. Here, Host 1 resends the data packet, when Host 1 cannot receive an ACK packet from Host 2, within , and an ACK packet shall not be received by Host 1 after .
(3) Before starting data transmission, Host 1 and Host 2 have to perform a data synchronization procedure. Assuming that the synchronized data between the hosts can be transferred with a single packet. Describe the procedure in Host 1 and Host 2 with the state transition diagram or the state transition matrix, when packets can be dropped during packet transmission between them.
(4) With the packet transmission algorithm described in (1), we cannot obtain large throughput, when is large. Propose two methods, so as to improve the throughput, providing their maximum throughput and their required conditions.