What is the difference between modport and clocking block

In reply to kautilya1987:

Clocking block is used to introduce input/output sampling/driving delays. Modport defines directions of signals and can be used to represent set of signals.

//By combining clocking block with modport, we define 
//synchronizing point for those signals accessed through
//the modport (e.g. vif.DRV_MP.HREADY)
modport DRV_MP(clocking drv_cb, input reset)