The disk-ownership-info returned with the storage-disk-info has pool with it. What exactly is this pool? Which api will give me details about this pool?
Also there is reserved-by-node-id present, what is reserved-by-node-id and why isnt there any reserved-by-node-name value for that? All the node-ids with ownership information has node name as well, why not this field.
The pool is a concept that is part of the SyncMirror feature. In a syncmirrored aggregate, there are two plexes, corresponding to each leg of the mirror. The disks from each of those legs should belong to the same pool. The pool itself is just a number (either 0 or 1, there are no other values) that is assigned to the disk during disk assignment (using the -p option). The disks that are local to the node the disks belong to are normally in pool 0, while those that are at the remote location are normally pool1. So at location A, you would have node A's pool0 and node B's pool1, and at location B you would have node A's pool1 and node B's pool0.
The reserved-by-node-id specifies the node in an HA pair that is currently accessing the disk. Normally that will be the home node, but when an HA takeover occurs, the partner node will set a SCSI reservation on the disks that belong to the failed node. When the failed node comes up again, it notices the reservation and will wait for giveback. During giveback, the reservations are released by the partner node, which notifies the formerly failed node that it may safely access its disks and continue booting.