On 04/30/2015 04:23 AM, fx IWATA NOBUO wrote:
Hello,
why couldn't you do this in userspace by using simple tcp over http
or ssh or anything what would you like to use? It would work out of
box without any changes in kernel.
simple tcp over http
Sorry. I don't know what it is.
I think WebSocket is a popular protocol encapsulates packets in HTTP.
some example with websockets:
https://www.npmjs.com/package/wstunnel
it works just like a proxy. By using for example wstunnel you will get:
kern--TCP-->daemon (proxy)--http over internet-->daemon--TCP--> kern
It's almost the same design as you will get after your patches. The only
different is that instead of TCP connection you are exporting data to
userspace using a file. But this will work without any changes in kernel;)
ssh
Blocked by firewall or proxy in most cases.
try to setup sshd on your server on port 80 or git (9418) or gerrit
(29418) works good in many cases;)
I may misunderstand your question but I'd like to explain the series.
The goal are
A) USB/IP in WebSocket
Kind of IoT with USB/IP described in cover letter.
B) Providing APIs for application protocol
Allows to introduce application protocols to USB/IP.
The contents:
1) Patch 01/11-03/11: relating export
As in cover letter, it's worth to connect device inside firewall to
service outside.
I think export was planned because the packet has been defined in
header.
03/11 touches kernel to fix an existing critical section. By new connect
command, unbind is executed in program. So the critical section is easy
to happen relatively in normal operation.
2) Patch 04/11-10/12: relating userspace API for application protocol
Allows to substitute a) connection establishment, b) PDUs exchange and
c) URBs exchange.
04/11-06/11 are for c). The reason why not to use usbfs or libusb is in
previous e-mail.
07/11 and 08/11 provide API in utility for a) and b). Route for c) is
merged in b).
09/11 exposes core functions of utilities. 10/11 fixes lazy qualifying
in original code for the functions.
3) Patche 11/11: a WebSocket implementation
WebSocket version of utilities. It might be a test bed for the APIs.
The most part of the series are for APIs in userspace to utilities.
Changes to kernel modules are 04/11 (discussed in previous e-mail) and
03/11 (described above).
I hope that it answers your questions.
I see your point and what you have done in patches. I'm only showing you
that you may achieve almost the same effect without any changes in kernel.
Best Regards,
--
Krzysztof Opasiak
Samsung R&D Institute Poland
Samsung Electronics
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html