Если вы ищете реальные сокеты, а не socket.io, они существуют.
Но, как уже говорилось, Node.js и Javascript используют модель программирования на основе событий, поэтому вы создаете (TCP)сокета, слушайте порт IP: (аналогично bind), затем принимайте события соединения, которые передают объект Javascript, представляющий соединение.
Из этого вы можете получить FD или другой идентификатор, но этот объект также являетсядолгоживущий объект, для которого вы можете сохранить идентификатор, если хотите (это то, что делает socket.io).
var server = net.createServer();
server.on('connection', function(conn) {
conn.id = Math.floor(Math.random() * 1000);
conn.on('data', function(data) {
conn.write('ID: '+conn.id);
});
});
server.listen(3000);