iBeacon is for determining location - the idea is that the information about the detected iBeacon is cross-referenced to some other database, say via web services, to determine a physical location - say a branch or store location. While an iBeacon can be another iOS device it may also be a dedicated, but very simple, piece of hardware so there is no ability to transfer data.
The CoreBluetooth framework is about discovery of services and small data transfers. It supports both "well known" service types (such as a heart-rate monitor) and proprietary types. Data ('Characteristics') can be both read and written and a subscription/notify model is used - for example notify when the heart-rate changes.
The Multipeer Connectivity Framework can use Bluetooth or WiFi to advertise and locate services and supports larger data transfers including streaming.
Which technique or techniques you use will depend on what you want to achieve.