A method for an interference aware optimal device-to-device, D2D, communication and uplink scheduling underlying a Long Term Evolution, LTE, network; said method comprising steps of: a. registering a plurality of user equipments, UEs, with a single cell with one Evolved Node B, eNB, over the Long Term Evolution, LTE, network wherein each of the plurality of user equipments, UEs, is capable of transmitting at least one data packet of multiple flows through the Evolved Node B, eNB,; b. initiating connection by the plurality of user equipments, UEs, with Evolved Node B, eNB, by starting random access procedure; c. discovering device-to-device, D2D, communication between the actively connected plurality of user equipments, UEs, by collecting location and channel information of the actively connected plurality of users equipment, UEs, by the Evolved Node B, eNB, through SRS packets; d. segregating and classifying the actively connected plurality of users equipment, UEs, in device-to-device and cellular users by the Evolved Node B, eNB, by utilizing collected location and channel information of the actively connected plurality of user equipments, UEs; and e. scheduling the two-phase interference aware optimal uplink for device-to-device communication for the actively connected device-to-device, D2D, users and cellular users segregated out of the plurality of user equipments, UEs, by the Evolved Node B, eNB, underlying the Long Term Evolution, LTE, network, wherein scheduling the two-phase interference aware optimal uplink for device-to-device communication comprises scheduling cellular users for the plurality of Resource Blocks, RBs, set in the Long Term Evolution, LTE, frame; and scheduling valid and non-interfering device-to-device, D2D, users along with the already scheduled cellular users for the plurality of Resource Blocks, RBs, with no or minimal total interference, where minimal interference means interference by an uplink cellular user at a device-to-device, D2D, receiver and interference at the Evolved Node B, eNB, by a device-to-device, D2D, transmitter that the SINR induced to the unintended receivers are below maximum Signal-to-Interference and Noise Ratio SINR lb. a. registering a plurality of user equipments, UEs, with a single cell with one Evolved Node B, eNB, over the Long Term Evolution, LTE, network wherein each of the plurality of user equipments, UEs, is capable of transmitting at least one data packet of multiple flows through the Evolved Node B, eNB,; b. initiating connection by the plurality of user equipments, UEs, with Evolved Node B, eNB, by starting random access procedure; c. discovering device-to-device, D2D, communication between the actively connected plurality of user equipments, d. segregating and classifying the actively connected plurality of users equipment, UEs, in device-to-device and cellular users by the Evolved Node B, eNB, by utilizing collected location and channel information of the actively connected plurality of user equipments, UEs; and e. scheduling the two-phase interference aware optimal uplink for device-to-device communication for the actively connected device-to-device, D2D, users and cellular users segregated out of the plurality of user equipments, UEs, by the Evolved Node B, eNB, underlying the Long Term Evolution, LTE, network, wherein scheduling the two-phase interference aware optimal uplink for device-to-device communication comprises scheduling cellular users for the plurality of Resource Blocks, RBs, set in the Long Term Evolution, LTE, frame; and scheduling valid and non-interfering device-to-device, D2D, users along with the already scheduled cellular users for the plurality of Resource Blocks, RBs, with no or minimal total interference, where minimal interference means interference by an uplink cellular user at a device-to-device, D2D, receiver and interference at the Evolved Node B, eNB, by a device-to-device, D2D, transmitter that the SINR induced to the unintended receivers are below maximum Signal-to-Interference and Noise Ratio SINR lb.