  To achieve the potential in providing high throughput for cellular networks
by device-to-device (D2D) communications, the interference among D2D links
should be carefully managed. In this paper, we propose an opportunistic
cooperation strategy for D2D transmission by exploiting the caching capability
at the users to control the interference among D2D links. We consider overlay
inband D2D, divide the D2D users into clusters, and assign different frequency
bands to cooperative and non-cooperative D2D links. To provide high opportunity
for cooperative transmission, we introduce a caching policy. To maximize the
network throughput, we jointly optimize the cluster size and bandwidth
allocation, where the closed-form expression of the bandwidth allocation factor
is obtained. Simulation results demonstrate that the proposed strategy can
provide 400%-500% throughput gain over traditional D2D communications when the
content popularity distribution is skewed, and can provide 60%-80% gain even
when the content popularity distribution is uniform.
