All the COM components are required to implement the IUnknown interface, from which all the COM interfaces are derived. The IUknown interface has three methods, namely, AddRef(), Release(), and QueryInterface(). The methods AddRef() and Release() implement reference counting and determine the lifetime of the interfaces.