i want to know much about port numbers used by source (clients) and destination (servers). Can clients get any port number or is there are common way to give them port numbers? As an example if port number is less than 1024, can i say that this is 100% server port number.
this information is important for me specify the endpoints only with port numbers in our network.
No. Unless the client explicitly binds to a specific source port (uncommon), the port used by client applications is determined solely by the operating systems network stack. These are known as ephemeral ports. On Linux the range is commonly 32768 - 61000.
The ports 0 - 1023 are considered "well-known" ports, and are nearly universally* reserved for specific well-known servers. e.g. 80 - HTTP, 443 - HTTPS, 22 - SSH.
*Some are client ports, e.g. BOOTP
There are many "registered" ports in the range 1024 - 49151 although many OSes will allocate client ports out of a subset of this pool (e.g. Linux overlaps from 32768-49151).
For further information, Wikipedia has a full list of TCP and UDP port numbers.