It has long been acknowledged that TCP performance suffers in hybrid networks. A Split TCP approach has been proposed to address this problem. In this approach, a proxy is employed at the boundary of wired networks (e.g. the Internet) and wireless networks (e.g. Cellular Networks, WLan or Mobile Ad Hoc Networks). This strategy significantly improves TCP performance. However, it does not maintain the end-to-end semantics of TCP. The loss of end-to-end semantics may cause problems to applications that rely on such a guarantee provided by TCP. In this paper, we introduce a novel technique called Semi-Split TCP to address the problem without sacrificing the benefits of Split TCP. We present the architecture and algorithms of the proposed technique; and give implementation, simulation, and analytical results to illustrate the feasibility of this method. Our simulation results demonstrate that Semi-Split TCP can achieve similar performance as Split-TCP without sacrificing the end-to-end semantics.