there is ping and there is ping. ping is an actual term for a specific protocol. because of hacking attempts, some servers no longer answer the so-called ping. if you mean can you simply ask your server "are you still there?", you can do that. that was what websockets is designed to avoid.
if you mean such a "ping" every second, what's the purpose? you'll spend more time pinging than communicating. also, the setup and breakdown for tcp for such an operation is very expensive. as for udp, you have to control both ends. just because you send some kind of message to a server (whether tcp or udp), the server has to know what's going on.
when you say
I am facing a problem with this "reconnect" in the authentication part of users with access levels ...
, you don't indicate what that problem is. but since you can't control a disconnect, i don't see how you can address your problem. tcp is pretty reliable (where would we be today without it?) if disconnects are a problem for you, this sounds more like a networking issue.
a lot of speculation, really, without understanding what your app does. look, think about a telephone call: 99.99% go through without issue. sometimes there are disconnects. you re-dial. if you're in the jungle with poor reception, it is what it is. you can't blame software for that.