My teacher told me today that when we request a page on a server, the server takes the request, find if it's available in the database, disconnect the user and send the requested page to the user. The server does not know if you get the packet or not. It's because the server's capacity to give service to users at a time is limited. This is why it does not keep its connection to the user. Thus, it can serve more people. He particularly gave the example of facebook and said that's why it serves millions of people and yet it doesn't get slow or hang. If that is the case then how do we get instant notification from facebook? Or how is the online friend list almost accurate always?
Your teacher was probably over-simplifying the explanation in order to communicate that data is not being sent 24/7 from your phone (computer, pc, laptop, roku, or any other 'client') to the Server.
But the answer to your question is predicated upon understanding a few other concepts. Two of them, specifically: how HTTP Connections work, and how Push Notifications work.
HTTP has functions built in which allow multiple requests to be sent in each connection (HTTP Pipielining), as well as keeping a connection open so that additional, residual data requests can be made (HTTP Keepalives). I explain how a "regular" HTTP connection works, and how it is different when employing HTTP Keepalives and Pipelining in this thread.
As for the second part, the answer to How Push Notifications work on mobile phones is actually slightly off topic to this particular stack exchange. But it has already been answered in the Android Stack Exchange in this thread.
Read through both of those threads and you should come to an understanding of your original question. If not, please feel free to update your question, create a new question, or add comments to this one and we can help you from there.