3

Im having a hard time Categorizing the USB Protocol in the layers of the OSI Model model.

Im guess there are 7 layers to begin with. These are the Informations i believe that corresponds to the layers:

7. Application (Software)
    - Application specific
    - Additional Drivers / Protocols

6. Presentation (Software)
    - Application specific
    - OS

5. Session (Software)
    - Power mode regulation
    - Configuration

4. Transport (Hardware)
    - Split data into Frames

3. Network (Hardware)
    - Client Adress 1 - 127
    - Endpoints

2. Link (Hardware)
    - CRC 5 Checksum for tokens
    - CRC 16 Checksum for data packets

1. Physical (Hardware)
    - Differential voltages (D-, D+)
    - NRZI 
    - USB Plug

Is this correct so far?

How do hubs work? i believe they can "select" between clients just like an ethernet switch. doesn't that mean there the Master hast to send 2 addresses in every packet. One for the next immediate communication partner like Mac address and one for the Destination address like IP address ?

Maybe there are Usb Masters amongst us, who can send OUT Packages to this post, to help me out ;) I would be Very happy to send an ACK response :)

haha okay enough puns

jsotola
  • 2,238
  • 1
  • 10
  • 22
Jonas Müller
  • 31
  • 1
  • 3

2 Answers2

1

When I taught these subjects, my students agreed with me that as they learned, and used, more precise words, it was easier for them to find answers to their questions. I could be wrong, but I think viewing USB through the OSI 7-layer model will be a little easier if you change "USB Protocol" to the more precise, USB specification.

The USB specifications include multiple protocols spread across multiple layers. The Physical layer includes specifications for things such as connectors, cables, power, and shielding.

The logical functions of USB protocols do not map perfectly onto the OSI model. Some protocols span two or three layers of the OSI model. But, it's possible to see which parts of which protocols fit in which layers. If the protocol is only concerned about signals between two nodes that are physically connected directly to each other, then it is the Data Link layer.

The Network layer is only about managing the bus when there are at least three nodes on the bus, such as identifying the nodes (addressing) and deciding where to send a packet (routing).

The Transport layer usually asks and answers the question, "Can you hear me now?" Or, you can think of it as analogous to using a ton of tracking numbers on the DHL website to track an order that has tons of packages. It is important between two nodes that are not directly physically connected to each other. The Data Link layer asks similar questions, but those questions are typically focused on individual signals (i.e., packets). The Transport layer does more sophisticated things such as putting packets in a specific order, dividing and combining packets, and tracking which packets in a set of packets were sent or received.

In USB, determining which node can use which part of the bus at what time is very important. Those protocols (mostly?) correspond to the Session layer.

I don't think any aspect of any USB specification corresponds with the Presentation or Application layers.

The USB-IF specification for USB4 includes their conceptual model for the USB functional stack. See section 2.2.1.

Good luck!

hunterhogan
  • 115
  • 7
0

Hubs work on the First Layer. They just connect all the ports' pins together.

jsotola
  • 2,238
  • 1
  • 10
  • 22
Shiharu
  • 11
  • 3