Carrier Aggregation is one of the vital approaches to achieve several orders of magnitude increase in peak data rates. While carrier aggregation benefits have been extensively studied in cellular networks, its application to satellite systems has not been thoroughly explored yet. Carrier aggregation can offer an enhanced and more consistent quality of service for users throughout the satellite coverage via combining multiple carriers, utilizing the unused capacity at other carriers, and enabling effective interference management. Furthermore, carrier aggregation can be a prominent solution to address the issue of the spatially heterogeneous satellite traffic demand. This paper investigates introducing carrier aggregation to satellite systems from a link layer perspective. Deployment of carrier aggregation in satellite systems with the combination of multiple carriers that have different characteristics requires effective scheduling schemes for reliable communications. To this end, a novel load balancing scheduling algorithm has been proposed to distribute data packets across the aggregated carriers based on channel capacities and to utilize spectrum efficiently. Moreover, in order to ensure that the received data packets are delivered without perturbing the original transmission order, a perceptive scheduling algorithm has been developed that takes into consideration channel properties along with the instantaneous available resources at the aggregated carriers. The proposed modifications have been carefully designed to make carrier aggregation transparent above the medium access control (MAC) layer. Additionally, the complexity analysis of the proposed algorithms has been conducted in terms of the computational loads. Simulation results are provided to validate our analysis, demonstrate the design tradeoffs, and to highlight the potentials of carrier aggregation applied to satellite communication systems.