One of the interesting capabilities in Silverlight is the ability to communicate cross-domain to socket hosts provided that certain policy requirements are satisfied. Specifically a policy file needs to be served up on port 943 and then a port in the range 4502-4534 can be used.
One of the possibilities that this creates is the ability to run daemon’s on desktop computers that serve up access to hardware devices. This is useful for scenarios where the majority of functionality can be delivered in a web-browser and only specific parts of the application need access to things like serial ports.
One problem with this architecture though is if over time we get lots of applications using this integration strategy – we are going to get contention on programs wanting to dish up policy on port 943.
I’d be great to have some kind of plug-in framework where the Silverlight runtime dropped down a default listener on port 943 on the local machine. When hit, the socket would serve up a policy file granting access to specific services in the 4502-4534 port range. Hardware vendors to could write Silverlight aware drivers which registered themselves with the out of the box listener.
Might be worth prototyping.