RST, ACK means the port is closed. You sure Host_B is listening on the right IP/interface?
RST, ACK
Also check your firewall for a -j REJECT --reject-with tcp-reset
It happened to me because I did not set sockaddr_in.sin_family to AF_INET, in the server c++ program.
sockaddr_in.sin_family
AF_INET