--- Begin Message ---
On May 9, 2022, at 1:58 AM, Tomasz Moń <deso...@gmail.com> wrote:
> On Mon, May 9, 2022 at 9:17 AM Guy Harris <ghar...@sonic.net> wrote:
>> On May 8, 2022, at 10:47 PM, Tomasz Moń <deso...@gmail.com> wrote:
>>> On Sun, May 8, 2022 at 8:53 PM Guy Harris <ghar...@sonic.net> wrote:
>>>> At least from a quick look at section 5.2.3 "Physical Bus Topology" of the
>>>> USB 2.0 spec, a given bus can either be a high-speed bus or a
>>>> full/low-speed bus.
>>>
>>> The full/low-speed bus applies only to upstream link from full speed hub.
>>
>> So what happens if you plug a low-speed keyboard or mouse into a host that
>> supports USB 2.0? Does that link not run at low speed?
>
> The link will run at low speed.
So what kind of bus is that link? High-speed, full/low-speed, or low-speed?
>> "super-speed" is USB 3.0, right? No LINKTYPE_/DLT_ has been proposed for
>> the 3.0 link layer, as far as I know.
>
> Yes, "super-speed" is USB 3.0. I don't know of any open source sniffer
> nor any tools that would really want to export the packets to pcap
> format.
And, if there ever *are* (I see no reason to rule it out), they can ask for
another link-layer type when they need it.
>> But no full-speed or low-speed will go over that connection, either, so it's
>> never the case that, in a capture on a USB cable, there will be both
>> high-speed and full/low-speed traffic, right?
>
> Yes. You either get solely high-speed traffic or full/low-speed traffic.
OK, so it makes sense to have a separate link-layer type for high-speed
traffic, rather than a single link-layer type for "USB link-layer with metadata
header, with the per-packet metadata header indicating the speed".
But, if, as you said earlier:
> If you capture at the connection between low speed device and
> host/hub, there will only ever be low speed packets. It would be a
> LINKTYPE_USB_2_0_LOW_SPEED capture.
>
> The problematic case (and the reason why full/low-speed bus is
> mentioned) is the LINKTYPE_USB_2_0_FULL_SPEED. It is the case when you
> capture at the connection between full speed hub and the host (and
> possibly full speed device connected to a full speed hub if there are
> low speed devices connected to the full speed hub). If there is low
> speed device connected to downstream hub port, then when the host
> wants to send packets to the low speed device, these will be sent at
> low speed to the hub. However, there will be PRE packet (sent at full
> speed) before every low speed transaction.
can there be separate link-layer types for full-speed and low-speed traffic, or
does there need to be a single type for full/low-speed traffic, with a
per-packet metadata header indicating the speed"?
--- End Message ---
_______________________________________________
tcpdump-workers mailing list
tcpdump-workers@lists.tcpdump.org
https://lists.sandelman.ca/mailman/listinfo/tcpdump-workers