I don't see much difference between a protocol and a software. Basically a protocol is just like a software, except that it is written on paper, not on a disk or on RAM. ...
... Marginal cost is indeed not zero but if someone tries to calculate it, he will soon realize that it is fairly small. If I had to try to calculate it, I would have to take into account the price of electronic data storage, the price of bandwith and so on. Surely I will arrive to a very small price per kilobyte. But if you can prove me that it would reach $1/Kb, please do so. Also, if marginal cost was really relevant in the problem of pricing software, then the price should be more or less proportionnel to the size of the executables and doc files. Or, I believe this is not the case, is it ? But it's actually not even a matter of marginal cost, since during pirating, the legal owner of the software doesn't pay for the distribution. Let me explain. Say a pirat legally buys some software. The seller will pay for data transmission and so on, and this marginal cost is supposed to be included in the price. Now the pirat owns the software and decide to share it illegaly with his buddys. He does that using his own bandwith and computing material. So the former owner is absolutely not concerned about this marginal cost anymore. Not only marginal cost is almost zero for software, but in addition, it's not even entirely paid by the initial software editor.