I like to ask one formal question.

I think that ISP must provide public IP address to their customer from their pool of public IP addres. But I faced one suitation, my office provide us internet service from one ISP, but this ISP provide our gateway server a private IP address. I knew it by 'tracert' command. I think that they are using nating in their system to save their public IP address. Is this legal to provide private IP address by ISP to their customer.
And in technical view, they use private IP address to save public IP addres. But, as my knowledge of nating, is'nt it littel bit delay in internet access due to the nat table translation between public and private IP address?