lsof & fuser

there is one command that "fuser" can kill socket connections but not stop program in linux like:

# fuser -k 22/tcp
# fuser -k 53/udp

and commonly command that "lsof" on unix-like system seems can do this as well,

kill -9 `lsof | grep ESTABLISHED | awk '{print $2}'`

i am wondering, what's different between two commands, is it same or if will kinda different when use either.

Kevin Gui.