US20180181517A1 - Discovery mechanisms for universal serial bus (usb) protocol adaptation layer - Google Patents
Discovery mechanisms for universal serial bus (usb) protocol adaptation layer Download PDFInfo
- Publication number
- US20180181517A1 US20180181517A1 US15/817,788 US201715817788A US2018181517A1 US 20180181517 A1 US20180181517 A1 US 20180181517A1 US 201715817788 A US201715817788 A US 201715817788A US 2018181517 A1 US2018181517 A1 US 2018181517A1
- Authority
- US
- United States
- Prior art keywords
- wsb
- usb
- information
- serial bus
- peer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
- G06F13/387—Information transfer, e.g. on bus using universal interface adapter for adaptation of different data processing systems to different peripheral devices, e.g. protocol converters for incompatible systems, open system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
- G06F13/385—Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
Definitions
- WFA WiFi Alliance
- WGA Wireless Gigabit Alliance
- USB Universal serial bus
- PAL Protocol Adaptation Layer
- WiFi Wireless Fidelity
- WiGig Serial Extension WSE
- USB PAL a service for WiGig links.
- WiGig peripheral device On a wired USB, the user makes the decision of choosing and using a USB peripheral device by physically plugging it into the USB port on the USB host, e.g., by connecting a USB mouse to the PC.
- MAC media access control
- IP internet protocol
- FIG. 1 illustrates a wireless system according to an embodiment
- FIG. 2 illustrates the layers used to provide USB wireless connectivity according to an embodiment
- FIG. 3 is a table showing the definitions for the WSB Attribute according to an embodiment
- FIG. 4 is a table describing the format of the WSB Capability Bitmap field according to an embodiment
- FIG. 5 is a table describing the format of the USB Configuration Entry field according to an embodiment
- FIG. 6 is a table describing the format of the Configuration field according to an embodiment
- FIG. 7 is a table describing the format of the Interface List field according to an embodiment
- FIG. 8 is a table describing the format of the WSB Icon field according to an embodiment
- FIG. 9 illustrates WSB discovery in a point-to-point (P2P) framework according to an embodiment
- FIG. 10 illustrates a block diagram of an example machine upon which any one or more of the techniques (e.g., methodologies) discussed herein may perform.
- the Universal serial bus (USB) Protocol Adaptation Layer (PAL) is a technology that enables support of USB traffic over a medium other than USB.
- a WiFi Serial Bus (WSB) provides USB PAL as a service for WiFi links and a WiGig Serial Extension (WSE) provides USB PAL as a service for WiGig links.
- the WSB protocol is a USB PAL protocol for providing USB over WiFi links.
- Point-to-Point (P2P) WiFi provides device-to-device connectivity. WSB needs to use P2P for discovery of available WSB devices. However, WiFi P2P does not apply to WSB. Embodiments described herein extend the applicability of P2P to the WSB protocol.
- a WSB attribute is arranged to provide for discovery of WSB enabled devices using the WiFi P2P framework. More specifically, a WSB Attribute according to an embodiment carries information for the user to be able to make an informed connectivity decision.
- FIG. 1 illustrates a wireless system 100 according to an embodiment.
- Universal serial bus (USB) Protocol Adaptation Layer (PAL) enables support of USB traffic over WiFi links and WiGig links.
- a first computing device 110 such as a personal computer, communicates wirelessly with wireless enabled devices within range.
- the first computing device may wirelessly communicate with a video camera 120 , a media player 122 , a printer 124 , a media server 126 , a mobile phone 128 , external storage 130 and a television 132 .
- a docking device 150 is wirelessly coupled to at least the first computing device 110 .
- USB devices 154 are coupled to the docking device using USB cables 152 .
- the first device 110 may also communicate wirelessly with a second computing device 140 .
- the second computing device 140 may wireless communicate with at least some of the other devices 120 - 132 .
- the second computer device 140 may share the printer 124 with the first computing device, and therefore communicate wirelessly with the printer 124 .
- the user makes the decision of choosing and using a USB peripheral device by physically plugging it into the USB port on the USB host, e.g., by connecting a USB mouse to the personal computer (PC).
- PC personal computer
- the user needs to rely on a discovery mechanisms provided by lower layers, e.g., MAC, IP, etc., to learn about USB PAL capable devices which are available for connection.
- WiFi links may be used by P2P for device-to-device connectivity
- available WSB capable devices may be discovered through the use of P2P.
- the WSB according to an embodiment provides for the discovery of WSB enabled devices using the WiFi P2P framework by carrying information for the user to be able to make an informed connectivity decision.
- FIG. 2 illustrates the layers 200 used to provide USB wireless connectivity according to an embodiment.
- FIG. 2 shows a USB protocol adaptation layer (PAL) 210 , the logic link control (LLC) 220 , the media access (MAC) layer 230 and the physical (PHY) layer 240 .
- the logic link control (LLC) 220 and MAC layer 230 form the data link layer 250 .
- the USB PAL layer 210 may also sit on the network/transport layers (not shown).
- a device passes data through the USB protocol adaptation layer (PAL) 210 and furthermore through the logic link control (LLC) 220 and MAC layer 230 .
- the MAC layer 230 transmits the data through the PHY layer 240 in the assigned radio frequency spectrum.
- the USB PAL 210 is used to enable communication through a USB application layer 202 for use with other forms of MACs for other physical media such as USB cabling.
- the USB PAL 210 packages data and instructions from the USB application layer 202 to conform to the protocol used by the MAC layer 230 .
- FIG. 3 is a table showing the definitions for the WSB Attribute 300 according to an embodiment.
- the WSB Attribute 300 includes fields for information about the WSB device as well as identifying the USB device behind the PAL.
- the USB device behind the PAL may be a real USB device or a software emulation of a non-USB interface appearing as a USB interface.
- An attribute ID field 310 has a size of 1 octet 312 and identifies the type of P2P attribute 314 .
- the attribute ID field 310 provides a WSB support field as a signaling mechanism indicating support of the WSB protocol by the P2P device.
- the length field 316 has a size of 2 octets 318 and specifies the length of the fields in the USB attribute 320 .
- a USB Version field 322 has a size of 2 octets 324 and identifies the USB specification number of which the USB device behind the WSB PAL complies 326 . More specifically, the protocol version identifies the version of USB which is supported by the USB device behind the PAL. This information assists the user with the selection to connect to a USB device.
- USB device class and sub-class may be used either directly by the user or indirectly after being processed by the application on the device to learn about the functions provided by the device.
- the USB device class and sub-class may be mapped to an icon and a user friendly description of the device.
- the USB device class field 328 has a size of 1 octet 330 and identifies the USB interface (IF) device behind the WSB PAL 332 .
- the USB device class field 328 may be set to zero if the USB interface (IF) defined device class of the USB device is not identified.
- the USB Device sub-class field 334 has a size of 1 octet 336 and identifies the USB-IF device sub-class of the USB device behind the WSB PAL 338 .
- the USB Device sub-class field 334 may be set to zero if the USB IF defined subclass of the Device sub-class is not identified.
- the WSB capability bitmap 340 has a length of 1 octet 342 and provides a set of parameters indicating P2P Device's WSB bitmap capabilities 344 , as defined more specifically in FIG. 4 .
- the WSB string field 346 has a length of 8 octets 348 and identifies a WSB friendly name 350 .
- the WSB Icon field 352 has a variable length 354 and includes one WSB Icon depicting the WSB device in a user friendly manner 356 .
- the format of WSB Icon field 352 is shown in FIG. 8 .
- the USB configuration entry list field 358 has a variable length 360 and includes one or more USB configuration entities 362 . The format of the configuration entry field 358 is described in more detail with respect to FIG. 5 .
- FIG. 4 is a table describing the format of the WSB Capability Bitmap field 400 according to an embodiment.
- Bits 0 - 2 410 provide a field to identify the WSB version 412 of the WSB protocol supported by the P2P device 414 .
- the WSB version identifier 412 ensures devices that establish connection use the same version of WSB protocol.
- Bits 3 - 4 420 provide architectural element information 422 by indicating the devices role to other devices 424 .
- the bits 420 of the architectural element field 424 identify the WSB architectural element supported by the P2P Device.
- a WSB device may take the role of a WSB Host 425 , a WSB peripheral device 426 , or a WSB hub (or dock) 427 .
- a first value 428 indicates that a WSB host is supported by the device.
- a second value 429 indicates that a WSB hub is supported by the device.
- a third value 423 indicates that a WSB peripheral is supported by the device.
- a fourth field is reserved 421 .
- the WSB role identifier 420 is a filed used by devices looking for other devices performing a specific role, e.g., a WSB host 425 looking for WSB peripherals 427 , to narrow down the selection.
- Bit 5 430 is used as IP-support indicator 432 to communicate whether USB PAL over IP is an option supported by the P2P device.
- the IP support field 432 shall be set to a first value when the P2P device supports WSB IP option, and is set to a second value otherwise 434 . This information enables other devices supporting the IP option to establish the connection based on IP if so desired.
- Bit 6 440 identifies whether the device is available for connection 442 .
- the available for connection field may be set to a first value when the P2P device is available to connect with other WSB capable P2P devices, and set to a second value otherwise 444 .
- Bit 7 450 is reserved 452 .
- FIG. 5 is a table describing the format of the USB Configuration Entry field 500 according to an embodiment.
- the first field 510 is 1 octet 512 in length and identifies the number of configurations contained in the USB Configuration List field 514 .
- a second field 520 is the configuration list field.
- the length of the configuration field 520 has a variable length 522 and includes one or more configurations 524 .
- the format of the configuration list field in shown in FIG. 6 .
- FIG. 6 is a table describing the format of the Configuration field 600 according to an embodiment.
- the first field 610 is the number of interfaces field and has a length of 1 octet 612 .
- the number of interfaces field indicates the number of interfaces contained in the interfaces list field 614 .
- the second field 620 is the interface list field.
- the interface list field 620 has a variable length 622 and includes one or more interfaces 624 .
- the format of the interface field is shown in FIG. 7 .
- FIG. 7 is a table describing the format of the Interface List field 700 according to an embodiment.
- the USB-IF defines the device class of the USB device behind the PAL.
- the USB-IF defines the device sub-class of the USB device behind the PAL and the interface class for functions in the USB device behind the PAL.
- the USB-IF also defines the interface sub-class for functions in the USB device behind the PAL.
- the first field is the interface class field 710 and has a length of 1 octet 712 .
- the interface class field identifies the USB Interface (IF) defined interface class of the USB function exposed by the WSB PAL 714 .
- the interface class field is set to zero if not identified.
- the second field is the interface sub-class field 720 .
- the interface sub-class field 720 has a length of 1 octet 722 and identifies the USB-IF defined Interface Sub-class of the USB function exposed by the WSB PAL 724 .
- the interface sub-class field 720 is set to zero if not identified.
- FIG. 8 is a table describing the format of the WSB Icon field 800 according to an embodiment.
- a first field is the icon type length field 810 and has a length of 1 octet 812 .
- the icon type length field identifies the length of the Icon Type field 814 .
- a second field is the icon type field 820 .
- the length of the icon type field is variable 822 .
- the icon type filed 820 includes the MIME media type of the icon binary data 824 .
- the icon type subfield is formatted in accordance with RFC-4288 and its value is selected from registered internet assigned numbers authority (IANA) multipurpose internet mail extensions (MIME) media types.
- the third field is the icon binary data length field.
- the icon binary data length field 830 has a length of 2 octets 832 .
- the icon binary data length field 830 identifies the length of the icon binary data field 834 .
- the fourth field is the icon binary data field 840 and has a variable length 842 .
- the icon binary data field 840 includes the binary data for the icon encoded per the icon type field 844 .
- a WSB attribute carries information to facilitate connectivity decisions by a user.
- the WSB attribute is carried in the P2P frames as discussed above.
- P2P frames include a beacon frame, a probe Request frame, a probe response frame, a directional multi gigabit (DMG) beacon and announce frame, an information request frame and an information response frame.
- DMG directional multi gigabit
- FIG. 9 illustrates WSB discovery in a P2P framework 900 according to an embodiment.
- Each type of frame transmitted in a P2P framework 900 is arranged into packets.
- a packet 902 is shown.
- the packet 902 includes a header 904 and a data section 906 .
- control information is found in packet headers 904 with payload data 906 in between the header and a trailer 908 .
- the header 904 may also provide identification of a destination.
- Wireless USB supports one-to-one links between a pair of devices, or one-to-multiple-device links. In either case, one device assumes ownership of the connection.
- the device that assumes ownership of the connection is referred to as a P2P group owner 910 .
- the other devices are referred to as P2P client devices.
- FIG. 9 shows first and second P2P client devices.
- P2P client 1 920 is WSB enabled.
- P2P client 2 930 is WSE enabled.
- the P2P group owner device 910 transmits a beacon frame 912 on the operating channel.
- the beacon frame 912 is a frame transmitted by the P2P group owner 910 that carries information about the P2P group and the devices present in the P2P group.
- P2P client 1 that is WSB enabled associates 940 with the P2P group owner 910 .
- the P2P group owner 910 listens for a probe request frame 950 (or association request frame) from P2P client 2 930 .
- the probe request frame 950 is transmitted by P2P client 2 930 to inquire about existing P2P groups and the devices present.
- the Probe Response frame 952 is transmitted by P2P group owner 910 , in response to the probe request frame 950 .
- the Probe Response frame 952 includes information about the P2P group and the devices present.
- P2P client 2 930 may then become associated 960 with the P2P group owner 910 . Thereafter, the P2P group owner 910 transmits a beacon that includes the WSB attributes of P2P client 1 920 and P2P client 2 930 .
- a directional multi gigabit (DMG) beacon and announce frame 914 may be used to identify a P2P group operating at a frequency band higher than 45 GHz.
- the USB attribute may also be used to specify the form of an information element (IE), e.g., WSB IE, to be included in the frames that carry P2P IEs.
- An information request frame may be transmitted by a P2P device in a 60 GHz P2P to solicit information about other P2P devices that are present. The information request frame is not shown, but would appear in FIG. 9 much like probe request frame 950 .
- An information response frame is transmitted by a P2P group owner in response to the information request frame. The information response frame is not shown, but would appear in FIG. 9 much like probe response frame 952 .
- the P2P client device 1 920 and the P2P client device 2 930 transmit an association request frame and the P2P group owner may transmit an association response frame. These frames are also not shown, but would also appear in FIG. 9 much like probe request frame 950 and probe response frame 952 .
- Association allows a wireless device to send information to the devices within the group.
- the P2P group owner 910 transmits a first beacon 970 to P2P client 2 930 and a second beacon 972 to P2P client 1 920 .
- the first beacon 970 and second beacon 972 identifies the attributes for P2P client 1 920 and P2P client 2 930 .
- FIG. 10 illustrates a block diagram of an example machine 1000 upon which any one or more of the techniques (e.g., methodologies) discussed herein may perform.
- the machine 1000 may operate in a standalone mode or may be connected (e.g., networked) to other machines in a network mode.
- the machine 1000 may operate in the capacity of a server machine, a client machine, or both in server-client network environments.
- the machine 1000 may act as a peer machine in peer-to-peer (P2P) (or other distributed) network environment.
- P2P peer-to-peer
- the machine 1000 may act as a client (a station (STA)) or an access point (AP) during a link setup when domain crossing occurs.
- STA station
- AP access point
- the machine 1000 may further be a personal computer (PC), a tablet PC, a set-top box (STB), a Personal Digital Assistant (PDA), a mobile device, a web appliance, a network router, switch or bridge, or any machine capable of executing instructions (sequential or otherwise) that specify actions to be taken by that machine.
- PC personal computer
- PDA Personal Digital Assistant
- machine shall also be taken to include any collection of machines that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methodologies discussed herein, such as cloud computing, software as a service (SaaS), other computer cluster configurations.
- Examples, as described herein, may include, or may operate on, logic or a number of components, modules, or mechanisms.
- Modules are tangible entities (e.g., hardware) capable of performing specified operations and may be configured or arranged in a certain manner.
- circuits may be arranged (e.g., internally or with respect to external entities such as other circuits) in a specified manner as a module.
- the whole or part of one or more computer systems may be configured by firmware or software (e.g., instructions, an application portion, or an application) as a module that operates to perform specified operations.
- the software may reside on a machine readable medium.
- the software when executed by the underlying hardware of the module, causes the hardware to perform the specified operations.
- module is understood to encompass a tangible entity, be that an entity that is physically constructed, specifically configured (e.g., hardwired), or temporarily (e.g., transitorily) configured (e.g., programmed) to operate in a specified manner or to perform at least part of any operation described herein.
- each of the modules need not be instantiated at any one moment in time.
- the modules comprise a general-purpose hardware processor configured using software
- the general-purpose hardware processor may be configured as respective different modules at different times.
- Software may accordingly configure a hardware processor, for example, to constitute a particular module at one instance of time and to constitute a different module at a different instance of time.
- Machine 1000 may include a hardware processor 1002 (e.g., a central processing unit (CPU), a graphics processing unit (GPU), a hardware processor core, or any combination thereof), a main memory 1004 and a static memory 1006 , at least some of which may communicate with each other via an interlink (e.g., bus) 1008 .
- the machine 1000 may further include a display unit 1010 , an alphanumeric input device 1012 (e.g., a keyboard), and a user interface (UI) navigation device 1014 (e.g., a mouse).
- the display unit 1010 , input device 1012 and UI navigation device 1014 may be a touch screen display.
- the machine 1000 may additionally include a storage device (e.g., drive unit) 1016 , a signal generation device 1018 (e.g., a speaker), a network interface device 1020 , and one or more sensors 1021 , such as a global positioning system (GPS) sensor, compass, accelerometer, or other sensor.
- the machine 1000 may include an output controller 1028 , such as a serial (e.g., universal serial bus (USB), parallel, or other wired or wireless (e.g., infrared (IR)) connection to communicate or control one or more peripheral devices (e.g., a printer, card reader, etc.).
- a serial e.g., universal serial bus (USB), parallel, or other wired or wireless (e.g., infrared (IR)) connection to communicate or control one or more peripheral devices (e.g., a printer, card reader, etc.).
- USB universal serial bus
- IR infrared
- the signal generation device 1018 is arranged to generate a frame having a WiFi serial bus (WSB) attribute, the WSB attribute further including a plurality of fields to provide information to support connectivity decisions for a wireless USB device in a point-to-point network using a WSB protocol.
- the network interface device 1020 to transmit and receive frames that include a WSB attribute.
- the processor 1002 provides control network communications and is arranged to process the plurality of fields of the WSB attribute in a received frame to extract information in the plurality of fields to support connectivity decisions for a wireless USB device in a point-to-point network using a WSB protocol.
- the storage device 1016 may include a non-transient computer-readable storage medium 1022 on which is stored one or more sets of data structures or instructions 1024 (e.g., software) embodying or utilized by any one or more of the techniques or functions described herein.
- the instructions 1024 may also reside, completely or at least partially, within the main memory 1004 , within static memory 1006 , or within the hardware processor 1002 during execution thereof by the machine 1000 .
- one or any combination of the hardware processor 1002 , the main memory 1004 , the static memory 1006 , or the storage device 1016 may constitute machine readable media.
- machine readable medium 1022 is illustrated as a single medium, the term “machine readable medium” may include a single medium or multiple media (e.g., a centralized or distributed database, and/or associated caches and servers) that configured to store the one or more instructions 1024 .
- machine readable medium may include a single medium or multiple media (e.g., a centralized or distributed database, and/or associated caches and servers) that configured to store the one or more instructions 1024 .
- machine readable medium may include any medium that is capable of storing, encoding, or carrying instructions for execution by the machine 1000 and that cause the machine 1000 to perform any one or more of the techniques of the present disclosure, or that is capable of storing, encoding or carrying data structures used by or associated with such instructions.
- Non-limiting machine readable medium examples may include solid-state memories, and optical and magnetic media.
- a massed machine readable medium comprises a machine readable medium with a plurality of particles having resting mass.
- massed machine readable media may include: non-volatile memory, such as semiconductor memory devices (e.g., Electrically Programmable Read-Only Memory (EPROM), Electrically Erasable Programmable Read-Only Memory (EEPROM)) and flash memory devices; magnetic disks, such as internal hard disks and removable disks; magneto-optical disks; and compact disk-read only memory (CD-ROM) and digital versatile disk-read only memory (DVD-ROM) disks.
- semiconductor memory devices e.g., Electrically Programmable Read-Only Memory (EPROM), Electrically Erasable Programmable Read-Only Memory (EEPROM)
- EPROM Electrically Programmable Read-Only Memory
- EEPROM Electrically Erasable Programmable Read-Only Memory
- flash memory devices e.g., electrically Erasable Programmable Read-Only Memory (EEPROM)
- EPROM Electrically Programmable Read-Only Memory
- EEPROM Electrically Erasable Programmable Read-Only Memory
- flash memory devices e
- the instructions 1024 may further be configured for transmission and reception over a communications network 1026 using a transmission medium via the network interface device 1020 utilizing any one of a number of transfer protocols (e.g., frame relay, internet protocol (IP), transmission control protocol (TCP), user datagram protocol (UDP), hypertext transfer protocol (HTTP), etc.).
- transfer protocols e.g., frame relay, internet protocol (IP), transmission control protocol (TCP), user datagram protocol (UDP), hypertext transfer protocol (HTTP), etc.
- Example communication networks may include a local area network (LAN), a wide area network (WAN), a personal area network (PAN), a packet data network (e.g., the Internet), mobile telephone networks ((e.g., channel access methods including Code Division Multiple Access (CDMA), Time-division multiple access (TDMA), Frequency-division multiple access (FDMA), and Orthogonal Frequency Division Multiple Access (OFDMA) and cellular networks such as Global System for Mobile Communications (GSM), Universal Mobile Telecommunications System (UMTS), CDMA 2000 1 ⁇ * standards and Long Term Evolution (LTE)), Plain Old Telephone (POTS) networks, and wireless data networks (e.g., Institute of Electrical and Electronics Engineers (IEEE) 802 family of standards including IEEE 802.11 standards (WiFi®), IEEE 802.16 standards (WiMax) and others), peer-to-peer (P2P) networks, or other protocols now known or later developed.
- LAN local area network
- WAN wide area network
- PAN personal area network
- the network interface device 1020 may include one or more physical jacks (e.g., Ethernet, coaxial, or phone jacks) or one or more antennas to connect to the communications network 1026 .
- the network interface device 1020 may include a plurality of antennas to wirelessly communicate using at least one of single-input multiple-output (SIMO), multiple-input multiple-output (MIMO), or multiple-input single-output (MISO) techniques.
- SIMO single-input multiple-output
- MIMO multiple-input multiple-output
- MISO multiple-input single-output
- transmission medium shall be taken to include any intangible medium that is capable of storing, encoding or carrying instructions for execution by the machine 1000 , and includes digital or analog communications signals or other intangible medium to facilitate communication of such software.
- the terms “a” or “an” are used, as is common in patent documents, to include one or more than one, independent of any other instances or usages of “at least one” or “one or more.”
- the term “or” is used to refer to a nonexclusive or, such that “A or B” includes “A but not B,” “B but not A,” and “A and B,” unless otherwise indicated.
Abstract
A WiFi serial bus (WSB) attribute for use in Wi-Fi Alliance defined point-to-point (P2P) discovery mechanism includes a plurality of fields disposed in the frame. The WiFi serial bus attribute is arranged to provide information in the plurality of fields to support connectivity decisions for a USB device in a point-to-point network using a WSB protocol. The WSB attribute includes WSB architectural element information and information associated with a USB device behind a USB protocol adaptation layer (PAL).
Description
- This application is a continuation of U.S. patent application Ser. No. 14/729,399, filed Jun. 3, 2015, now issued as U.S. Pat. No. 9,824,047, which is a continuation of U.S. patent application Ser. No. 13/728,820, filed Dec. 27, 2012, now issued as U.S. Pat. No. 9,075,923, each which are hereby incorporated herein by reference in their entities.
- Recently, application services of transmitting various multimedia data at high speed have been widely used in wireless communication fields. In addition, the potential market for consumer electronic (CE) devices with these services has grown. Electronic devices, such as computers and other devices, often transmit signals to receiving stations such as displays or speakers. Such transmission often occurs via wires or cables. However, wireless transmission offers freedom from wires and cables. For interoperability among various manufacturers' products, these devices may communicate according to a standard, such as the WiFi Alliance (WFA) and the Wireless Gigabit Alliance (WGA or WiGig) standard as described in one or more upcoming published specifications.
- The Universal serial bus (USB) Protocol Adaptation Layer (PAL) is a technology that enables support of USB traffic over a medium other than USB. Specifically with the WiFi Alliance, the WiFi Serial Bus (WSB) provides USB PAL as a service for WiFi links, and similarly with the WiGig Alliance, WiGig Serial Extension (WSE) provides USB PAL as a service for WiGig links. On a wired USB, the user makes the decision of choosing and using a USB peripheral device by physically plugging it into the USB port on the USB host, e.g., by connecting a USB mouse to the PC. In contrast, when used over a wireless medium, the user needs to rely on discovery mechanisms provided by lower layers, e.g., media access control (MAC) mechanisms provided in data link layer (layer 2), internet protocol (IP) mechanisms provided in network layer (layer 3), etc., to learn about USB PAL capable devices which are available for connection.
- In the drawings, which are not necessarily drawn to scale, like numerals may describe similar components in different views. Like numerals having different letter suffixes may represent different instances of similar components. The drawings illustrate generally, by way of example, but not by way of limitation, various embodiments discussed in the present document.
-
FIG. 1 illustrates a wireless system according to an embodiment; -
FIG. 2 illustrates the layers used to provide USB wireless connectivity according to an embodiment; -
FIG. 3 is a table showing the definitions for the WSB Attribute according to an embodiment; -
FIG. 4 is a table describing the format of the WSB Capability Bitmap field according to an embodiment; -
FIG. 5 is a table describing the format of the USB Configuration Entry field according to an embodiment; -
FIG. 6 is a table describing the format of the Configuration field according to an embodiment; -
FIG. 7 is a table describing the format of the Interface List field according to an embodiment; -
FIG. 8 is a table describing the format of the WSB Icon field according to an embodiment; -
FIG. 9 illustrates WSB discovery in a point-to-point (P2P) framework according to an embodiment; and -
FIG. 10 illustrates a block diagram of an example machine upon which any one or more of the techniques (e.g., methodologies) discussed herein may perform. - The Universal serial bus (USB) Protocol Adaptation Layer (PAL) is a technology that enables support of USB traffic over a medium other than USB. A WiFi Serial Bus (WSB) provides USB PAL as a service for WiFi links and a WiGig Serial Extension (WSE) provides USB PAL as a service for WiGig links. The WSB protocol is a USB PAL protocol for providing USB over WiFi links. Point-to-Point (P2P) WiFi provides device-to-device connectivity. WSB needs to use P2P for discovery of available WSB devices. However, WiFi P2P does not apply to WSB. Embodiments described herein extend the applicability of P2P to the WSB protocol.
- In one embodiment, a WSB attribute is arranged to provide for discovery of WSB enabled devices using the WiFi P2P framework. More specifically, a WSB Attribute according to an embodiment carries information for the user to be able to make an informed connectivity decision.
-
FIG. 1 illustrates awireless system 100 according to an embodiment. InFIG. 1 , Universal serial bus (USB) Protocol Adaptation Layer (PAL) enables support of USB traffic over WiFi links and WiGig links. Accordingly, afirst computing device 110, such as a personal computer, communicates wirelessly with wireless enabled devices within range. For example, the first computing device may wirelessly communicate with avideo camera 120, amedia player 122, aprinter 124, amedia server 126, amobile phone 128,external storage 130 and atelevision 132. Adocking device 150 is wirelessly coupled to at least thefirst computing device 110.USB devices 154 are coupled to the docking device usingUSB cables 152. However, those skilled in the art will recognize that this is not meant to be an exhaustive list, but is provided only as examples of devices that a first computing device may communicate with. Thefirst device 110 may also communicate wirelessly with asecond computing device 140. Thesecond computing device 140 may wireless communicate with at least some of the other devices 120-132. For example, thesecond computer device 140 may share theprinter 124 with the first computing device, and therefore communicate wirelessly with theprinter 124. - On a wired USB, the user makes the decision of choosing and using a USB peripheral device by physically plugging it into the USB port on the USB host, e.g., by connecting a USB mouse to the personal computer (PC). In contrast, when used over a wireless medium, the user needs to rely on a discovery mechanisms provided by lower layers, e.g., MAC, IP, etc., to learn about USB PAL capable devices which are available for connection. While WiFi links may be used by P2P for device-to-device connectivity, available WSB capable devices may be discovered through the use of P2P. To extend the applicability of P2P to the WSB protocol, the WSB according to an embodiment provides for the discovery of WSB enabled devices using the WiFi P2P framework by carrying information for the user to be able to make an informed connectivity decision.
-
FIG. 2 illustrates thelayers 200 used to provide USB wireless connectivity according to an embodiment.FIG. 2 shows a USB protocol adaptation layer (PAL) 210, the logic link control (LLC) 220, the media access (MAC)layer 230 and the physical (PHY)layer 240. The logic link control (LLC) 220 andMAC layer 230 form thedata link layer 250. TheUSB PAL layer 210 may also sit on the network/transport layers (not shown). A device according to an embodiment passes data through the USB protocol adaptation layer (PAL) 210 and furthermore through the logic link control (LLC) 220 andMAC layer 230. TheMAC layer 230 transmits the data through thePHY layer 240 in the assigned radio frequency spectrum. The USB PAL 210 is used to enable communication through aUSB application layer 202 for use with other forms of MACs for other physical media such as USB cabling. TheUSB PAL 210 packages data and instructions from theUSB application layer 202 to conform to the protocol used by theMAC layer 230. -
FIG. 3 is a table showing the definitions for the WSBAttribute 300 according to an embodiment. The WSBAttribute 300 includes fields for information about the WSB device as well as identifying the USB device behind the PAL. The USB device behind the PAL may be a real USB device or a software emulation of a non-USB interface appearing as a USB interface. Anattribute ID field 310 has a size of 1octet 312 and identifies the type ofP2P attribute 314. Theattribute ID field 310 provides a WSB support field as a signaling mechanism indicating support of the WSB protocol by the P2P device. Thelength field 316 has a size of 2octets 318 and specifies the length of the fields in theUSB attribute 320. AUSB Version field 322 has a size of 2octets 324 and identifies the USB specification number of which the USB device behind the WSB PAL complies 326. More specifically, the protocol version identifies the version of USB which is supported by the USB device behind the PAL. This information assists the user with the selection to connect to a USB device. - The USB device class and sub-class, as well as the interface class and sub-class may be used either directly by the user or indirectly after being processed by the application on the device to learn about the functions provided by the device. For example, the USB device class and sub-class may be mapped to an icon and a user friendly description of the device.
- The USB
device class field 328 has a size of 1octet 330 and identifies the USB interface (IF) device behind theWSB PAL 332. The USBdevice class field 328 may be set to zero if the USB interface (IF) defined device class of the USB device is not identified. The USB Devicesub-class field 334 has a size of 1octet 336 and identifies the USB-IF device sub-class of the USB device behind theWSB PAL 338. The USB Devicesub-class field 334 may be set to zero if the USB IF defined subclass of the Device sub-class is not identified. - The
WSB capability bitmap 340 has a length of 1octet 342 and provides a set of parameters indicating P2P Device'sWSB bitmap capabilities 344, as defined more specifically inFIG. 4 . TheWSB string field 346 has a length of 8octets 348 and identifies a WSBfriendly name 350. TheWSB Icon field 352 has avariable length 354 and includes one WSB Icon depicting the WSB device in a userfriendly manner 356. The format ofWSB Icon field 352 is shown inFIG. 8 . The USB configurationentry list field 358 has avariable length 360 and includes one or moreUSB configuration entities 362. The format of theconfiguration entry field 358 is described in more detail with respect toFIG. 5 . -
FIG. 4 is a table describing the format of the WSBCapability Bitmap field 400 according to an embodiment. Bits 0-2 410 provide a field to identify theWSB version 412 of the WSB protocol supported by theP2P device 414. TheWSB version identifier 412 ensures devices that establish connection use the same version of WSB protocol. Bits 3-4 420 providearchitectural element information 422 by indicating the devices role toother devices 424. Thebits 420 of thearchitectural element field 424 identify the WSB architectural element supported by the P2P Device. A WSB device may take the role of aWSB Host 425, a WSBperipheral device 426, or a WSB hub (or dock) 427. Afirst value 428 indicates that a WSB host is supported by the device. Asecond value 429 indicates that a WSB hub is supported by the device. Athird value 423 indicates that a WSB peripheral is supported by the device. A fourth field is reserved 421. TheWSB role identifier 420 is a filed used by devices looking for other devices performing a specific role, e.g., aWSB host 425 looking forWSB peripherals 427, to narrow down the selection. If a device supports more than one WSB role, e.g., a device that may take the role of either aWSB Host 425 or aWSB Hub 426, then the device uses two WSB attributes, one for each role.Bit 5 430 is used as IP-support indicator 432 to communicate whether USB PAL over IP is an option supported by the P2P device. TheIP support field 432 shall be set to a first value when the P2P device supports WSB IP option, and is set to a second value otherwise 434. This information enables other devices supporting the IP option to establish the connection based on IP if so desired.Bit 6 440 identifies whether the device is available forconnection 442. The available for connection field may be set to a first value when the P2P device is available to connect with other WSB capable P2P devices, and set to a second value otherwise 444.Bit 7 450 is reserved 452. -
FIG. 5 is a table describing the format of the USBConfiguration Entry field 500 according to an embodiment. Thefirst field 510 is 1octet 512 in length and identifies the number of configurations contained in the USBConfiguration List field 514. Asecond field 520 is the configuration list field. The length of theconfiguration field 520 has avariable length 522 and includes one ormore configurations 524. The format of the configuration list field in shown inFIG. 6 . -
FIG. 6 is a table describing the format of theConfiguration field 600 according to an embodiment. Thefirst field 610 is the number of interfaces field and has a length of 1octet 612. The number of interfaces field indicates the number of interfaces contained in theinterfaces list field 614. Thesecond field 620 is the interface list field. Theinterface list field 620 has avariable length 622 and includes one ormore interfaces 624. The format of the interface field is shown inFIG. 7 . -
FIG. 7 is a table describing the format of theInterface List field 700 according to an embodiment. The USB-IF defines the device class of the USB device behind the PAL. The USB-IF defines the device sub-class of the USB device behind the PAL and the interface class for functions in the USB device behind the PAL. The USB-IF also defines the interface sub-class for functions in the USB device behind the PAL. - The first field is the
interface class field 710 and has a length of 1octet 712. The interface class field identifies the USB Interface (IF) defined interface class of the USB function exposed by theWSB PAL 714. The interface class field is set to zero if not identified. The second field is the interfacesub-class field 720. The interfacesub-class field 720 has a length of 1 octet 722 and identifies the USB-IF defined Interface Sub-class of the USB function exposed by theWSB PAL 724. The interfacesub-class field 720 is set to zero if not identified. -
FIG. 8 is a table describing the format of theWSB Icon field 800 according to an embodiment. A first field is the icontype length field 810 and has a length of 1octet 812. The icon type length field identifies the length of theIcon Type field 814. A second field is theicon type field 820. The length of the icon type field is variable 822. The icon type filed 820 includes the MIME media type of the iconbinary data 824. The icon type subfield is formatted in accordance with RFC-4288 and its value is selected from registered internet assigned numbers authority (IANA) multipurpose internet mail extensions (MIME) media types. The third field is the icon binary data length field. The icon binarydata length field 830 has a length of 2octets 832. The icon binarydata length field 830 identifies the length of the iconbinary data field 834. The fourth field is the iconbinary data field 840 and has avariable length 842. The iconbinary data field 840 includes the binary data for the icon encoded per theicon type field 844. - Thus, a WSB attribute according to an embodiment carries information to facilitate connectivity decisions by a user. The WSB attribute is carried in the P2P frames as discussed above. Examples of P2P frames include a beacon frame, a probe Request frame, a probe response frame, a directional multi gigabit (DMG) beacon and announce frame, an information request frame and an information response frame.
-
FIG. 9 illustrates WSB discovery in aP2P framework 900 according to an embodiment. Each type of frame transmitted in aP2P framework 900 is arranged into packets. InFIG. 9 , apacket 902 is shown. Thepacket 902 includes aheader 904 and adata section 906. Typically, control information is found inpacket headers 904 withpayload data 906 in between the header and atrailer 908. Theheader 904 may also provide identification of a destination. Wireless USB supports one-to-one links between a pair of devices, or one-to-multiple-device links. In either case, one device assumes ownership of the connection. The device that assumes ownership of the connection is referred to as aP2P group owner 910. The other devices are referred to as P2P client devices.FIG. 9 shows first and second P2P client devices.P2P client 1 920 is WSB enabled.P2P client 2 930 is WSE enabled. - The P2P
group owner device 910 transmits abeacon frame 912 on the operating channel. Thebeacon frame 912 is a frame transmitted by theP2P group owner 910 that carries information about the P2P group and the devices present in the P2P group. InFIG. 9 ,P2P client 1 that is WSB enabledassociates 940 with theP2P group owner 910. TheP2P group owner 910 listens for a probe request frame 950 (or association request frame) fromP2P client 2 930. Theprobe request frame 950 is transmitted byP2P client 2 930 to inquire about existing P2P groups and the devices present. TheProbe Response frame 952 is transmitted byP2P group owner 910, in response to theprobe request frame 950. TheProbe Response frame 952 includes information about the P2P group and the devices present.P2P client 2 930 may then become associated 960 with theP2P group owner 910. Thereafter, theP2P group owner 910 transmits a beacon that includes the WSB attributes ofP2P client 1 920 andP2P client 2 930. - A directional multi gigabit (DMG) beacon and announce
frame 914 may be used to identify a P2P group operating at a frequency band higher than 45 GHz. The USB attribute may also be used to specify the form of an information element (IE), e.g., WSB IE, to be included in the frames that carry P2P IEs. An information request frame may be transmitted by a P2P device in a 60 GHz P2P to solicit information about other P2P devices that are present. The information request frame is not shown, but would appear inFIG. 9 much likeprobe request frame 950. An information response frame is transmitted by a P2P group owner in response to the information request frame. The information response frame is not shown, but would appear inFIG. 9 much likeprobe response frame 952. - To connect to the P2P group, the
P2P client device 1 920 and theP2P client device 2 930 transmit an association request frame and the P2P group owner may transmit an association response frame. These frames are also not shown, but would also appear inFIG. 9 much likeprobe request frame 950 and proberesponse frame 952. Association allows a wireless device to send information to the devices within the group. TheP2P group owner 910 transmits afirst beacon 970 toP2P client 2 930 and asecond beacon 972 toP2P client 1 920. Thefirst beacon 970 andsecond beacon 972 identifies the attributes forP2P client 1 920 andP2P client 2 930. -
FIG. 10 illustrates a block diagram of anexample machine 1000 upon which any one or more of the techniques (e.g., methodologies) discussed herein may perform. In alternative embodiments, themachine 1000 may operate in a standalone mode or may be connected (e.g., networked) to other machines in a network mode. In a networked deployment, themachine 1000 may operate in the capacity of a server machine, a client machine, or both in server-client network environments. In an example, themachine 1000 may act as a peer machine in peer-to-peer (P2P) (or other distributed) network environment. In another example, themachine 1000 may act as a client (a station (STA)) or an access point (AP) during a link setup when domain crossing occurs. - The
machine 1000 may further be a personal computer (PC), a tablet PC, a set-top box (STB), a Personal Digital Assistant (PDA), a mobile device, a web appliance, a network router, switch or bridge, or any machine capable of executing instructions (sequential or otherwise) that specify actions to be taken by that machine. - Further, while only a single machine is illustrated, the term “machine” shall also be taken to include any collection of machines that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methodologies discussed herein, such as cloud computing, software as a service (SaaS), other computer cluster configurations. Examples, as described herein, may include, or may operate on, logic or a number of components, modules, or mechanisms. Modules are tangible entities (e.g., hardware) capable of performing specified operations and may be configured or arranged in a certain manner. In an example, circuits may be arranged (e.g., internally or with respect to external entities such as other circuits) in a specified manner as a module. In an example, the whole or part of one or more computer systems (e.g., a standalone, client or server computer system) or one or more hardware processors may be configured by firmware or software (e.g., instructions, an application portion, or an application) as a module that operates to perform specified operations. In an example, the software may reside on a machine readable medium. In an example, the software, when executed by the underlying hardware of the module, causes the hardware to perform the specified operations.
- Accordingly, the term “module” is understood to encompass a tangible entity, be that an entity that is physically constructed, specifically configured (e.g., hardwired), or temporarily (e.g., transitorily) configured (e.g., programmed) to operate in a specified manner or to perform at least part of any operation described herein. Considering examples in which modules are temporarily configured, each of the modules need not be instantiated at any one moment in time. For example, where the modules comprise a general-purpose hardware processor configured using software, the general-purpose hardware processor may be configured as respective different modules at different times. Software may accordingly configure a hardware processor, for example, to constitute a particular module at one instance of time and to constitute a different module at a different instance of time.
- Machine (e.g., computer system) 1000 may include a hardware processor 1002 (e.g., a central processing unit (CPU), a graphics processing unit (GPU), a hardware processor core, or any combination thereof), a
main memory 1004 and astatic memory 1006, at least some of which may communicate with each other via an interlink (e.g., bus) 1008. Themachine 1000 may further include adisplay unit 1010, an alphanumeric input device 1012 (e.g., a keyboard), and a user interface (UI) navigation device 1014 (e.g., a mouse). In an example, thedisplay unit 1010,input device 1012 andUI navigation device 1014 may be a touch screen display. Themachine 1000 may additionally include a storage device (e.g., drive unit) 1016, a signal generation device 1018 (e.g., a speaker), anetwork interface device 1020, and one ormore sensors 1021, such as a global positioning system (GPS) sensor, compass, accelerometer, or other sensor. Themachine 1000 may include anoutput controller 1028, such as a serial (e.g., universal serial bus (USB), parallel, or other wired or wireless (e.g., infrared (IR)) connection to communicate or control one or more peripheral devices (e.g., a printer, card reader, etc.). - The
signal generation device 1018 is arranged to generate a frame having a WiFi serial bus (WSB) attribute, the WSB attribute further including a plurality of fields to provide information to support connectivity decisions for a wireless USB device in a point-to-point network using a WSB protocol. Thenetwork interface device 1020 to transmit and receive frames that include a WSB attribute. Theprocessor 1002 provides control network communications and is arranged to process the plurality of fields of the WSB attribute in a received frame to extract information in the plurality of fields to support connectivity decisions for a wireless USB device in a point-to-point network using a WSB protocol. - The
storage device 1016 may include a non-transient computer-readable storage medium 1022 on which is stored one or more sets of data structures or instructions 1024 (e.g., software) embodying or utilized by any one or more of the techniques or functions described herein. Theinstructions 1024 may also reside, completely or at least partially, within themain memory 1004, withinstatic memory 1006, or within thehardware processor 1002 during execution thereof by themachine 1000. In an example, one or any combination of thehardware processor 1002, themain memory 1004, thestatic memory 1006, or thestorage device 1016 may constitute machine readable media. - While the machine readable medium 1022 is illustrated as a single medium, the term “machine readable medium” may include a single medium or multiple media (e.g., a centralized or distributed database, and/or associated caches and servers) that configured to store the one or
more instructions 1024. - The term “machine readable medium” may include any medium that is capable of storing, encoding, or carrying instructions for execution by the
machine 1000 and that cause themachine 1000 to perform any one or more of the techniques of the present disclosure, or that is capable of storing, encoding or carrying data structures used by or associated with such instructions. Non-limiting machine readable medium examples may include solid-state memories, and optical and magnetic media. In an example, a massed machine readable medium comprises a machine readable medium with a plurality of particles having resting mass. Specific examples of massed machine readable media may include: non-volatile memory, such as semiconductor memory devices (e.g., Electrically Programmable Read-Only Memory (EPROM), Electrically Erasable Programmable Read-Only Memory (EEPROM)) and flash memory devices; magnetic disks, such as internal hard disks and removable disks; magneto-optical disks; and compact disk-read only memory (CD-ROM) and digital versatile disk-read only memory (DVD-ROM) disks. - The
instructions 1024 may further be configured for transmission and reception over acommunications network 1026 using a transmission medium via thenetwork interface device 1020 utilizing any one of a number of transfer protocols (e.g., frame relay, internet protocol (IP), transmission control protocol (TCP), user datagram protocol (UDP), hypertext transfer protocol (HTTP), etc.). Example communication networks may include a local area network (LAN), a wide area network (WAN), a personal area network (PAN), a packet data network (e.g., the Internet), mobile telephone networks ((e.g., channel access methods including Code Division Multiple Access (CDMA), Time-division multiple access (TDMA), Frequency-division multiple access (FDMA), and Orthogonal Frequency Division Multiple Access (OFDMA) and cellular networks such as Global System for Mobile Communications (GSM), Universal Mobile Telecommunications System (UMTS), CDMA 2000 1×* standards and Long Term Evolution (LTE)), Plain Old Telephone (POTS) networks, and wireless data networks (e.g., Institute of Electrical and Electronics Engineers (IEEE) 802 family of standards including IEEE 802.11 standards (WiFi®), IEEE 802.16 standards (WiMax) and others), peer-to-peer (P2P) networks, or other protocols now known or later developed. - For example, the
network interface device 1020 may include one or more physical jacks (e.g., Ethernet, coaxial, or phone jacks) or one or more antennas to connect to thecommunications network 1026. In an example, thenetwork interface device 1020 may include a plurality of antennas to wirelessly communicate using at least one of single-input multiple-output (SIMO), multiple-input multiple-output (MIMO), or multiple-input single-output (MISO) techniques. The term “transmission medium” shall be taken to include any intangible medium that is capable of storing, encoding or carrying instructions for execution by themachine 1000, and includes digital or analog communications signals or other intangible medium to facilitate communication of such software. - The above detailed description includes references to the accompanying drawings, which form a part of the detailed description. The drawings show, by way of illustration, specific embodiments. These embodiments are also referred to herein as “examples.” Such examples can include elements in addition to those shown or described. However, the present inventors also contemplate examples in which only those elements shown or described are provided. Moreover, the present inventors also contemplate examples using any combination or permutation of those elements shown or described (or one or more aspects thereof), either with respect to a particular example (or one or more aspects thereof), or with respect to other examples (or one or more aspects thereof) shown or described herein.
- In this document, the terms “a” or “an” are used, as is common in patent documents, to include one or more than one, independent of any other instances or usages of “at least one” or “one or more.” In this document, the term “or” is used to refer to a nonexclusive or, such that “A or B” includes “A but not B,” “B but not A,” and “A and B,” unless otherwise indicated. In the appended claims, the terms “including” and “in which” are used as the plain-English equivalents of the respective terms “comprising” and “wherein.” Also, in the following claims, the terms “including” and “comprising” are open-ended, that is, a system, device, article, or process that includes elements in addition to those listed after such a term in a claim are still deemed to fall within the scope of that claim. Moreover, in the following claims, the terms “first,” “second,” and “third,” etc. are used merely as labels, and are not intended to impose numerical constraints on their objects.
- The above description is intended to be illustrative, and not restrictive. For example, the above-described examples (or one or more aspects thereof) may be used in combination with each other. Other embodiments can be used, such as by one of ordinary skill in the art upon reviewing the above description. The Abstract is to allow the reader to quickly ascertain the nature of the technical disclosure, for example, to comply with 37 C.F.R. § 1.72(b). It is submitted with the understanding that it will not be used to interpret or limit the scope or meaning of the claims. Also, in the above Detailed Description, various features may be grouped together to streamline the disclosure. This should not be interpreted as intending that an unclaimed disclosed feature is essential to any claim. Rather, subject matter of embodiments may lie in less than the features of a particular disclosed embodiment. Thus, the following claims are hereby incorporated into the Detailed Description, with each claim standing on its own as a separate embodiment. The scope of the embodiments should be determined with reference to the appended claims, along with the full scope of equivalents to which such claims are entitled.
Claims (21)
1. (canceled)
2. An apparatus comprising: memory to store instructions and processing circuitry coupled to the memory, the processing circuitry configured to:
provide information during Wi-Fi Serial Bus (WSB) discovery, the information identifying services of the apparatus;
establish a Wi-Fi connection to another apparatus based on services identified during the WSB discovery, at a link layer in a Wi-Fi Peer-to-Peer (Wi-Fi P2P) group; and
generate signaling to cause universal serial bus (USB) device communications over the Wi-Fi connection using a plurality of USB interfaces.
3. The apparatus of claim 2 , wherein the information includes at least one of class information of the apparatus and subclass information of the apparatus.
4. The apparatus of claim 2 , wherein the apparatus includes the plurality of USB interfaces and wherein the information includes identification information for each of the associated plurality of USB interfaces.
5. The apparatus of claim 2 , wherein the information includes a friendly name to identify the apparatus.
6. The apparatus of claim 2 , further including a signal generation device.
7. The apparatus of claim 2 , further including a touch screen.
8. The apparatus of claim 2 , further including two or more antennas.
9. The apparatus of claim 2 , wherein the apparatus is configured to operate using a near field communication (NFC) protocol.
10. The apparatus of claim 2 , wherein the apparatus is a WSB Host.
11. A non-transitory computer-readable storage medium that stores instructions for execution by one or more processors of a Wi-Fi Serial Bus (WSB) device to perform operations comprising:
establishing a Wi-Fi connection to another apparatus based on services identified during the Wi-Fi Serial Bus (WSB) discovery, at a link layer in a Wi-Fi Peer-to-Peer (Wi-Fi P2P) group; and
performing universal serial bus (USB) device communications over the Wi-Fi connection.
12. The non-transitory computer-readable storage medium of claim 11 , wherein the WSB device is a Peer-to-Peer (P2P) group owner.
13. The non-transitory computer-readable storage medium of claim 11 , wherein the information includes at least one of class information of the apparatus and subclass information of the apparatus.
14. The non-transitory computer-readable storage medium of claim 11 , wherein the WSB device includes a plurality of USB interfaces, and wherein the information includes identification information for each of the plurality of USB interfaces.
15. The non-transitory computer-readable storage medium of claim 11 , wherein the information includes a friendly name to identify the apparatus.
16. A Wi-Fi Serial Bus (WSB) device comprising:
a network interface device, a processor, and a memory, the network interface device to:
provide information during Wi-Fi Serial Bus (WSB) discovery, the information identifying services of the apparatus;
establish a Wi-Fi connection to another apparatus based on services identified during the WSB discovery, at a link layer in a Wi-Fi Peer-to-Peer (Wi-Fi P2P) group; and
generate signaling to perform universal serial bus (USB) device communications over the Wi-Fi connection.
17. The WSB device of claim 16 , wherein the service information is provided subsequently to performing a P2P probe request and P2P probe response exchange.
18. The WSB device of claim 16 , further comprising two or more antennas.
19. An apparatus comprising: memory to store instructions and processing circuitry coupled to the memory, the processing circuitry configured to:
decode information from a second apparatus during Wi-Fi Serial Bus (WSB) discovery, the information identifying services of the second apparatus and the information including at least one of class information of the second apparatus and subclass information of the second apparatus;
establish a Wi-Fi connection to the second apparatus based on services identified during the WSB discovery, at a link layer in a Wi-Fi Peer-to-Peer (Wi-Fi P2P) group; and
generate signaling to perform universal serial bus (USB) device communications over the Wi-Fi connection.
20. The apparatus of claim 19 , wherein the second apparatus is a WSB Host.
21. The apparatus of claim 19 , wherein the apparatus is a WSB Host and the second apparatus is a WSB Hub.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/817,788 US20180181517A1 (en) | 2012-12-27 | 2017-11-20 | Discovery mechanisms for universal serial bus (usb) protocol adaptation layer |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/728,820 US9075923B2 (en) | 2012-12-27 | 2012-12-27 | Discovery mechanisms for universal serial bus (USB) protocol adaptation layer |
US14/729,399 US9824047B2 (en) | 2012-12-27 | 2015-06-03 | Discovery mechanisms for universal serial bus (USB) protocol adaptation layer |
US15/817,788 US20180181517A1 (en) | 2012-12-27 | 2017-11-20 | Discovery mechanisms for universal serial bus (usb) protocol adaptation layer |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/729,399 Continuation US9824047B2 (en) | 2012-12-27 | 2015-06-03 | Discovery mechanisms for universal serial bus (USB) protocol adaptation layer |
Publications (1)
Publication Number | Publication Date |
---|---|
US20180181517A1 true US20180181517A1 (en) | 2018-06-28 |
Family
ID=51018596
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/728,820 Active 2033-06-19 US9075923B2 (en) | 2012-12-27 | 2012-12-27 | Discovery mechanisms for universal serial bus (USB) protocol adaptation layer |
US14/729,399 Active 2033-03-31 US9824047B2 (en) | 2012-12-27 | 2015-06-03 | Discovery mechanisms for universal serial bus (USB) protocol adaptation layer |
US15/817,788 Abandoned US20180181517A1 (en) | 2012-12-27 | 2017-11-20 | Discovery mechanisms for universal serial bus (usb) protocol adaptation layer |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/728,820 Active 2033-06-19 US9075923B2 (en) | 2012-12-27 | 2012-12-27 | Discovery mechanisms for universal serial bus (USB) protocol adaptation layer |
US14/729,399 Active 2033-03-31 US9824047B2 (en) | 2012-12-27 | 2015-06-03 | Discovery mechanisms for universal serial bus (USB) protocol adaptation layer |
Country Status (4)
Country | Link |
---|---|
US (3) | US9075923B2 (en) |
EP (1) | EP2939473B1 (en) |
CN (3) | CN104813714B (en) |
WO (1) | WO2014105116A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200358634A1 (en) * | 2017-12-11 | 2020-11-12 | Samsung Electronics Co., Ltd. | Electronic device for communicating with external electronic device |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5221742B2 (en) * | 2011-11-24 | 2013-06-26 | シャープ株式会社 | Image forming apparatus |
EP3185642B1 (en) | 2012-10-29 | 2019-07-24 | Huawei Device Co., Ltd. | Method and terminal for establishing communication connection |
US9075923B2 (en) | 2012-12-27 | 2015-07-07 | Intel Corporation | Discovery mechanisms for universal serial bus (USB) protocol adaptation layer |
US10805781B2 (en) * | 2015-03-05 | 2020-10-13 | Samsung Electronics Co., Ltd. | Method and apparatus for establishing a connection between devices |
WO2017023263A1 (en) | 2015-07-31 | 2017-02-09 | Hewlett-Packard Development Company, L.P. | Wireless gigabit alliance (wigig) accessories |
US20170201298A1 (en) * | 2016-01-11 | 2017-07-13 | Intel Corporation | Multiuser multiple-input and multiple-output setup frame |
KR102461009B1 (en) | 2016-01-29 | 2022-11-01 | 삼성전자 주식회사 | Method for providing a tethering service and electronic device using the same |
KR102516019B1 (en) * | 2017-09-11 | 2023-03-30 | 삼성전자주식회사 | Electronic apparatus and method for communicating with an external electronic device |
WO2020022728A1 (en) * | 2018-07-25 | 2020-01-30 | 엘지전자 주식회사 | Method for supporting media agnostic universal serial bus (ma-usb) connection, and wireless device using same |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7756822B2 (en) * | 2003-12-01 | 2010-07-13 | Sap Ag | Operational reporting architecture |
US8170981B1 (en) * | 2010-12-08 | 2012-05-01 | Dassault Systemes Enovia Corporation | Computer method and system for combining OLTP database and OLAP database environments |
US20120246170A1 (en) * | 2011-03-22 | 2012-09-27 | Momentum Consulting | Managing compliance of data integration implementations |
US20120265913A1 (en) * | 2011-04-18 | 2012-10-18 | Nokia Corporation | Method, apparatus and computer program product for creating a wireless docking group |
US20130246663A1 (en) * | 2012-03-13 | 2013-09-19 | Qualcomm Incorporated | Data redirection for universal serial bus devices |
US20130282938A1 (en) * | 2012-04-23 | 2013-10-24 | Qualcomm Incorporated | Extensible WSE Hub to Support a Multi-Hop Tree of USB Hubs or Peripherals over a Wireless Link |
US20140001874A1 (en) * | 2012-06-29 | 2014-01-02 | Broadcom Corporation | Portable device capable of sensing an amount of wirelessly transferred power and optimizing coil selection |
US20140146745A1 (en) * | 2012-11-27 | 2014-05-29 | Qualcomm Incorporated | Dockee-centric wireless docking |
US20140156586A1 (en) * | 2012-12-04 | 2014-06-05 | Pivotal Software, Inc. | Big-fast data connector between in-memory database system and data warehouse system |
US20140335790A1 (en) * | 2011-12-01 | 2014-11-13 | Koninklijke Philips N.V. | Method, wireless device and wireless communications system to guide a user of a wireless device to establish an optimal wireless direct link to another wireless device |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100679023B1 (en) * | 2004-11-03 | 2007-02-05 | 삼성전자주식회사 | Method and apparatus for supporting multiple wireless universal serial bus host in coordinator-based wireless environment |
US20060176146A1 (en) | 2005-02-09 | 2006-08-10 | Baldev Krishan | Wireless universal serial bus memory key with fingerprint authentication |
US8024500B2 (en) * | 2005-08-15 | 2011-09-20 | Research In Motion Limited | Universal peripheral connector |
KR100750153B1 (en) * | 2006-01-03 | 2007-08-21 | 삼성전자주식회사 | Method and apparatus for providing session key for WUSB security, method and apparatus for obtaining the session key |
US8085830B2 (en) * | 2006-01-27 | 2011-12-27 | Leviton Manufacturing Co., Inc. | LAN by ultra-wideband system and method |
US8095623B2 (en) * | 2006-03-09 | 2012-01-10 | Microsoft Corporation | Device emulation to facilitate data transfer |
JP2007300369A (en) * | 2006-04-28 | 2007-11-15 | Toshiba Corp | Information processor and connection control method |
KR20070121452A (en) * | 2006-06-22 | 2007-12-27 | 삼성전자주식회사 | Method and system for connecting between single wireless device and multiple host using wireless usb |
US20100040041A1 (en) * | 2007-03-22 | 2010-02-18 | Nokia Corporatioin | Switching role of apparatuses between controller (host) and participant (device) to schedule bi-directional data |
JP4561771B2 (en) * | 2007-05-09 | 2010-10-13 | ソニー株式会社 | Image display apparatus and image display method |
US20090154740A1 (en) | 2007-12-14 | 2009-06-18 | Paul Regen | Personal Speaker System with Detachable Control Module |
US7865640B1 (en) * | 2008-01-02 | 2011-01-04 | Buztronics, Inc. | USB web launcher using keyboard scancodes |
US7873774B2 (en) * | 2008-02-01 | 2011-01-18 | Telefonaktiebolaget Lm Ericsson (Publ) | Connections and dynamic configuration of interfaces for mobile phones and multifunctional devices |
US20090323697A1 (en) * | 2008-06-27 | 2009-12-31 | Nokia Corporation | Data payload transmission via control plane signaling |
CN102099765A (en) * | 2008-07-17 | 2011-06-15 | 君格有限公司 | Cableless USB connectivity over IEEE 802.11 networks |
JP5294746B2 (en) * | 2008-07-31 | 2013-09-18 | キヤノン株式会社 | COMMUNICATION SYSTEM AND COMMUNICATION SYSTEM CONTROL METHOD |
EP2347553A1 (en) * | 2008-11-07 | 2011-07-27 | Nxp B.V. | Peer to peer communication using device class based transmission rules |
CN201322925Y (en) * | 2008-12-01 | 2009-10-07 | 海华科技股份有限公司 | Wireless remote universal serial bus hub and system thereof |
JP5138100B2 (en) * | 2009-10-19 | 2013-02-06 | キヤノン株式会社 | Information processing apparatus having a plurality of communication interfaces, and method for controlling the information processing apparatus |
US8493992B2 (en) * | 2010-02-04 | 2013-07-23 | Texas Instruments Incorporated | Interrelated WiFi and USB protocols and other application framework processes, circuits and systems |
US20110276711A1 (en) * | 2010-05-10 | 2011-11-10 | Intel Corporation | Multicast service discovery |
CA2819225A1 (en) * | 2010-11-29 | 2012-06-07 | Mce-Sys Ltd | Host device coupled to a usb peripheral and method of operating the same |
CN202103695U (en) * | 2011-05-31 | 2012-01-04 | 北京虎符科技有限公司 | Household intelligent gateway |
CN102595223A (en) * | 2012-03-28 | 2012-07-18 | 无锡德思普科技有限公司 | Intelligentized television set top box and operating method thereof |
US9075923B2 (en) | 2012-12-27 | 2015-07-07 | Intel Corporation | Discovery mechanisms for universal serial bus (USB) protocol adaptation layer |
-
2012
- 2012-12-27 US US13/728,820 patent/US9075923B2/en active Active
-
2013
- 2013-06-05 CN CN201380061774.9A patent/CN104813714B/en active Active
- 2013-06-05 CN CN201810336800.9A patent/CN108572934A/en active Pending
- 2013-06-05 EP EP13868913.8A patent/EP2939473B1/en active Active
- 2013-06-05 WO PCT/US2013/044316 patent/WO2014105116A1/en active Application Filing
- 2013-06-05 CN CN201610224107.3A patent/CN105912490A/en active Pending
-
2015
- 2015-06-03 US US14/729,399 patent/US9824047B2/en active Active
-
2017
- 2017-11-20 US US15/817,788 patent/US20180181517A1/en not_active Abandoned
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7756822B2 (en) * | 2003-12-01 | 2010-07-13 | Sap Ag | Operational reporting architecture |
US8170981B1 (en) * | 2010-12-08 | 2012-05-01 | Dassault Systemes Enovia Corporation | Computer method and system for combining OLTP database and OLAP database environments |
US20120246170A1 (en) * | 2011-03-22 | 2012-09-27 | Momentum Consulting | Managing compliance of data integration implementations |
US20120265913A1 (en) * | 2011-04-18 | 2012-10-18 | Nokia Corporation | Method, apparatus and computer program product for creating a wireless docking group |
US20140335790A1 (en) * | 2011-12-01 | 2014-11-13 | Koninklijke Philips N.V. | Method, wireless device and wireless communications system to guide a user of a wireless device to establish an optimal wireless direct link to another wireless device |
US20130246663A1 (en) * | 2012-03-13 | 2013-09-19 | Qualcomm Incorporated | Data redirection for universal serial bus devices |
US20130282938A1 (en) * | 2012-04-23 | 2013-10-24 | Qualcomm Incorporated | Extensible WSE Hub to Support a Multi-Hop Tree of USB Hubs or Peripherals over a Wireless Link |
US20140001874A1 (en) * | 2012-06-29 | 2014-01-02 | Broadcom Corporation | Portable device capable of sensing an amount of wirelessly transferred power and optimizing coil selection |
US20140146745A1 (en) * | 2012-11-27 | 2014-05-29 | Qualcomm Incorporated | Dockee-centric wireless docking |
US20140156586A1 (en) * | 2012-12-04 | 2014-06-05 | Pivotal Software, Inc. | Big-fast data connector between in-memory database system and data warehouse system |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200358634A1 (en) * | 2017-12-11 | 2020-11-12 | Samsung Electronics Co., Ltd. | Electronic device for communicating with external electronic device |
Also Published As
Publication number | Publication date |
---|---|
EP2939473A1 (en) | 2015-11-04 |
US9075923B2 (en) | 2015-07-07 |
CN105912490A (en) | 2016-08-31 |
US20160085703A1 (en) | 2016-03-24 |
EP2939473B1 (en) | 2021-03-03 |
WO2014105116A1 (en) | 2014-07-03 |
CN104813714B (en) | 2018-12-25 |
US20140189172A1 (en) | 2014-07-03 |
CN108572934A (en) | 2018-09-25 |
CN104813714A (en) | 2015-07-29 |
US9824047B2 (en) | 2017-11-21 |
EP2939473A4 (en) | 2016-08-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9824047B2 (en) | Discovery mechanisms for universal serial bus (USB) protocol adaptation layer | |
US11191042B2 (en) | Exchanging ranging and location information among peer-to-peer devices | |
CN106233700B (en) | Method and apparatus for being integrated into bluetooth equipment in neighbours' sensing network | |
US20190159270A1 (en) | Radio resource allocation in wi-fi aware neighborhood area network data links | |
CN107431921B (en) | Information processing apparatus, information processing method, and program | |
US10264038B2 (en) | Discovery and management of synchronous audio or video streaming service to multiple sinks in wireless display system | |
JP6239769B2 (en) | AP location query | |
US20160183042A1 (en) | Location ble beacon | |
US11812500B2 (en) | Enhanced Bluetooth mechanism for triggering Wi-Fi radios | |
US11569962B2 (en) | Data communication method and related apparatus | |
US20160234758A1 (en) | Flexible Connectivity Framework | |
US20160344531A1 (en) | Systems and methods for frequency multiplexing mu-mimo | |
EP3484079B1 (en) | Radio communication apparatus | |
KR102189653B1 (en) | Method for transceiving message, data transceiving appratus, and non-transitory recordable medium | |
US10257328B2 (en) | Method and apparatus for control frame extension | |
US11470495B2 (en) | Wi-Fi measurement report enhancement techniques | |
KR20120014572A (en) | Techniques for supporting multiple protocols in wireless networks | |
JP6321112B2 (en) | AP location query | |
JP6838557B2 (en) | Communication device and communication method | |
US20230180318A1 (en) | Base station and terminal apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STPP | Information on status: patent application and granting procedure in general |
Free format text: FINAL REJECTION MAILED |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |
|
AS | Assignment |
Owner name: TAHOE RESEARCH, LTD., IRELAND Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:INTEL CORPORATION;REEL/FRAME:061175/0176 Effective date: 20220718 |