TCP is a connection oriented protocol that uses stream sockets.
It is bound by IP-address and port-number at both endpoints.
See RFC 793
(Transmission Control Protocol), specifically section 2.7:
2.7. Connection Establishment and Clearing
To identify the separate data streams that a TCP may handle, the TCP provides a port identifier. Since port identifiers are selected independently by each TCP they might not be unique. To provide for
unique addresses within each TCP, we concatenate an internet address
identifying the TCP with a port identifier to create a socket which
will be unique throughout all networks connected together.
In connection oriented protocol, a logical channel is established between the peers
before exchanging data. So, if the IP address is changing, it has to tear down the
existing connection and re-establish a new connection, which obviously is disruptive.
IP address change will be disruptive as higher level protocols like TCP will
be shutdown. Mobile phones overcome such scenarios by using specialized protocols
such as GTP or Mobile IP.
In short, part of the procedure of changing the IP address of the sender involves
the closing of all connections employing the old address.
Closing is different from cutting the communication path, because the other
side is notified that the socket has been closed in an orderly manner and will
immediately close its own socket on its own side.
This is unlike when the communication path is brutally cut off,
as in such cases the other side will wait a predetermined amount of time
before deciding to close the connection unilaterally,
and even this requires that keep-alive is activated on the connection
or long waits can happen.