Simulation using Mission planner

Experts! I am new to ardupilot. Finally able to get it working. However, I have a doubt regarding this framework

What’s the difference between connecting to Mission planner for simulation via:

  1. ArduCopter cloned from Ardupilot git directory using sim_vehicle.py

  2. dronekit-sitl copter command & mavproxy.py command on two separate terminals

have you read
https://ardupilot.org/dev/docs/simulation-2.html

Thanks for the link. I gave it a read. I understood this process and it’s clear. But I want to understand what is the role of dronekit-sitl in all this(nothing is mentioned about it in the this documentation)

If we already have ArduPilot firmware why we need dronkit-sitl?