Non_gps_navigation

hello everyone ,
i am new to non gps navigation for flying drone in GPS denied environment, i am using a hexacopter with pixhawk and rpi as a companion board , i managed to get the desired altitude using HC-SR04 sonar sensor .

i have following ques -

(1) how can i command my drone to move in any direction for eg.(move drone 10m in x,y,z direction.)
without GPS ,what would be the logic because MAVLINK has only command for controlling YAW
but no command for pich and roll .

(2) which sensors should i use to make drone follow a predefined path like in qgc or mission planner
we do path planning .

(3) how to know that my drone is actually following the path or instruction given to it .

thanks in advance, any answers would be much appreciated .
thank you