US20180181517A1 - Discovery mechanisms for universal serial bus (usb) protocol adaptation layer - Google Patents

Discovery mechanisms for universal serial bus (usb) protocol adaptation layer Download PDF

Info

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
Application number
US15/817,788
Inventor
Bahareh Sadeghi
Carlos Cordeiro
Abdul Ismail
Emily H. Qi
Necati Canpolat
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tahoe Research Ltd
Original Assignee
Intel Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Priority to US15/817,788 priority Critical patent/US20180181517A1/en
Publication of US20180181517A1 publication Critical patent/US20180181517A1/en
Assigned to TAHOE RESEARCH, LTD. reassignment TAHOE RESEARCH, LTD. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: INTEL CORPORATION
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/387Information 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus 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

    CROSS-REFERENCE TO RELATED APPLICATION
  • 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.
  • BACKGROUND
  • 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.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • 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.
  • DETAILED DESCRIPTION
  • 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 a wireless system 100 according to an embodiment. In FIG. 1, Universal serial bus (USB) Protocol Adaptation Layer (PAL) enables support of USB traffic over WiFi links and WiGig links. Accordingly, a first 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 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. 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. 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. For example, the second computer device 140 may share the printer 124 with the first computing device, and therefore communicate wirelessly with the printer 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 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 according to an embodiment 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.
  • 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 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. If a device supports more than one WSB role, e.g., a device that may take the role of either a WSB Host 425 or a WSB 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. 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.
  • 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 a P2P framework 900 according to an embodiment. Each type of frame transmitted in a P2P framework 900 is arranged into packets. In FIG. 9, a packet 902 is shown. The packet 902 includes a header 904 and a data section 906. Typically, 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. In FIG. 9, 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.
  • To connect to the P2P group, 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. In alternative embodiments, the machine 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, the machine 1000 may operate in the capacity of a server machine, a client machine, or both in server-client network environments. In an example, the machine 1000 may act as a peer machine in peer-to-peer (P2P) (or other distributed) network environment. In another example, the machine 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 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). In an example, 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.).
  • 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. In an example, 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.
  • 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 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. 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 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.). 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 the communications network 1026. In an example, 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. The term “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 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.
US15/817,788 2012-12-27 2017-11-20 Discovery mechanisms for universal serial bus (usb) protocol adaptation layer Abandoned US20180181517A1 (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (10)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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