In some simulation environment, such as mininet, you are given parameters when you define your virtual link between switches such as: bandwidth, delay, and loss. I understand a link has a bandwidth but I don't understand how a link can cause a delay or loss! Kindly, can anyone elaborate that?
All links introduce latency. It's a trivial amount when passing traffic over a 2M Ethernet patch cable but it's substantial on a trans-Pacific circuit.
Some links also have packet loss. It might be a function of the link being congested or there could be a physical issue like a flaky cable, RF interference on a wireless link or other anomalies. This is particularly relevant when simulating the behavior of a network (or application) mapped over an Internet link, where occasional packet loss is pretty much expected.
So - if you're trying to simulate real-world network conditions then being able to model the what-ifs of different latencies and the possibility of packet loss can be a huge help. It allows something closer to a real-world simulation as well as testing how various network protocols, designs and actual implementations respond under different kinds of stresses.