Применим протокол К. Выберем правильный предлог.
В данном случае подходит предлог for, так как речь идет о периоде времени (долгое время).
Ответ: for
I've known Sam for a long time.