[eluser]boltsabre[/eluser]
Considering that using the session/userdata method is also calling the Input library’s ip_address, it stands to reason that your testing shows that the session way is slower.
So... use input!!!
It's less key strokes (quicker coding) which also results in less chance of typo bugs.
The only time I guess you wouldn't use input is when you want to ensure you have a legitimate session. You mentioned that going via the session way checks that the ip addresses match, and if they don't the session is being killed.
So yeah, if you are doing something where ensuring you have a legitimate session running is important then use session, else use input.
That's what I've taken out of this thread... I personally hadn't checked out the source code of either of these before, it it was all new to me. Learn something new every day eh :-)