In this paper, we study a sampling problem, in which freshly sampled data is sent to a remote destination via an unreliable channel, and acknowledgments are sent back on a feedback channel. Both the forward and feedback channels are subject to random transmission times. We optimize the sampling strategy at the source (e.g., a sensor), aiming to enhance the freshness of data samples delivered to the destination (e.g., an estimator). This sampling problem is motivated by a distributed sensing system, where an estimator estimates a signal by combining noisy signal observations collected from a local sensor and accurate signal samples received from a remote sensor. We show that the optimal estimation error is an increasing function of the age of received signal samples. The optimal sampling problem for general non-decreasing age functions is formulated as an MDP with an uncountable state space. An exact solution to this problem is derived, which has a simple thresholdtype structure. The threshold can be calculated by low-complexity bisection search and fixed-point iterations. We find that, after a successful packet delivery, the optimal sampler may wait before taking the next sample and sending it out, whereas no waiting time should be added if the previous transmission failed. 1 This assumption arises from the stop-and-wait Automatic Repeat Request (ARQ) mechanism. When the backward delay X i,j = 0, the policy that samples ahead of receiving feedback is always suboptimal. Because such a policy takes a new sample when the channel is busy and can be replaced by a policy that samples at exact time of receiving feedback [5]. When X i,j = 0, however, it may be optimal to transmit before receiving acknowledgement, which is out of the scope of this paper.