We are looking at an application where the printer/connector uses Privet local printing and is permanently "offline" (not connected to, or registered with, GCP).
The GCP 2.0 spec could be improved in a few areas, according to our understanding and experimental results. We do not know if this spec is locked in at this point, or if addendums can be made.
(1) There seems to be no mention of the printer/connector advertising that it also accepts (or only accepts) encrypted transactions from clients. We therefore thought that TLS-vs-plaintext might be automatically detected by the client. We set up an experiment with the printer/connector SUT set up as a http/plaintext server, and verified that Chrome browser can find the printer. We then changed the SUT to a https/TLS server and changed the port to match in the DNS-SD record. Chrome browser makes a connection to the TLS port, goes through part of the negotiation and then gives up without listing the printer. It seems that encryption would be a highly desirable option in the enterprise environment, and for that matter in the environment at large, where wireless transmission will be the de facto medium.
(2) There seems to be no facility for a connector that is hosting multiple printers to expose them all from a single IP address/TCP port. If the protocol allowed requests like "GET /privet/info?printer=Printer2" where the name "Printer2" was obtained from the list of results from DNS-SD, the connector could serve responses for the multiple printers it fronts. This is how iOS printing works, except that the capabilities requests are submitted through ipp/ipps instead of http. I certainly see how we got to the thinking that a single address/port == a single device, but an addition like this could really make this protocol scream with extensibility.
Please let me know if we are missing something in our interpretation of the specification and the experimental results.