Mapping quality of service (QOS) from a wireless network to a wired network

A system and method to map a Quality of Service (QoS) of a traffic flow from a wireless network to a wired network is described herein. The method comprises the steps of receiving a packet of the traffic flow over the wireless network and determining a first Quality of Service associated with the traffic flow over the wireless network based on a first set of parameters associated with the packet. The method further comprises the step of determining a second parameter that identifies a second Quality of Service over the wired network, wherein the second Quality of Service is substantially equivalent to the first Quality of Service. The method also comprises inserting the second parameter in a field of the packet based on the determined second Quality of Service and transmitting the packet over the wired network.

BACKGROUND OF THE INVENTION

1. Field of the Invention

This application generally relates to Quality of Service (QoS) over wireless and wired networks.

2. Background Art

Applications running on wireless devices such as iPhones™, wireless enabled laptops, personal digital assistants (PDAs) or any device that communicates over a wireless network have differing Quality of Service (QoS) requirements depending upon the nature of the application. For example, Voice over Internet Protocol (VoIP) applications such as Skype™ require specific parameters such as a controlled latency and jitter for desired operation. The destination for traffic flows generated by wireless devices may be across a wired network. For example, a VoIP call started on a wireless device may have to be routed over a wired network to, for example, a laptop. However, current systems are not able to map QoS over a wireless network to a corresponding QoS over a wired network. The lack of such a mapping may prevent an application running on a wireless device from functioning adequately because its QoS is not matched over the wired network.

Methods and systems are needed to overcome the above mentioned deficiency.

The present invention will now be described with reference to the accompanying drawings. In the drawings, like reference numbers may indicate identical or functionally similar elements. Additionally, the left-most digit(s) of a reference number may identify the drawing in which the reference number first appears.

DETAILED DESCRIPTION OF THE INVENTION

FIG. 1Aillustrates an example communication system100according to an embodiment of the invention. System100includes wireless device102, wireless gateway104, cable modem106, and cable modem termination system (CMTS)108. Wireless device102communicates with wireless gateway104over wireless network101. Cable modem106communicates with CMTS108over wired network107.

A “wireless device” as described herein refers to a device that can communicate wirelessly with other devices i.e. without using tangible physical media such as coaxial cables, twisted pair Ethernet cables, optical fibers etc. For example, wireless device102is any device that can communicate wirelessly over wirelessly over wireless network101. In an example, wireless device102may be referred to as a WiFi station (WiFi STA or simply STA). Wireless device102may be, for example, any wireless device including but not limited to a cellular phone such as an iPhone™, a wireless laptop or any device enabled to communicate over wireless network101.

A “wireless network” as referred to herein may refer to any network that transmits and receives data between two or more devices without using physical media such as wires or cables. In an example, wireless network101is based on Institute of Electrical and Electronics Engineers (IEEE) 802.11 protocol for wireless communication networks. In another example, wireless network101may be referred to as a Wireless Local Area Network (WLAN) or a WiFi network.

Cable modem106communicates with cable modem termination108using a Data Over Cable Service Interface Specification (DOCSIS) protocol. Cable modem106and CMTS108are both referred to as “wired devices” herein. A “wired device” as described herein refers to a device that communicates using tangible physical media including but not limited to coaxial cables, twisted pair Ethernet cables, optical fibers etc. Cable modem106may communicate with wireless gateway104using Ethernet packets over an Ethernet network.

Wireless gateway104is both a wired device and a wireless device. Wireless gateway104can transmit and receive data both wirelessly and through wires. For example, wireless gateway104can communicate with wireless device102and can also communicate with cable modem106. Wireless gateway104can communicate with wireless device102using 802.11 frames over wireless network101. Wireless gateway104can also communicate with CMTS108via cable modem106over Ethernet cables in an Ethernet network and over wired network107. Thus, the wireless gateway104serves as a conduit that bridges wireless network101and wired network107. Wireless gateway104, may also be referred to as a wireless access point (AP), a radio or a “wireless hotspot.” In the example inFIG. 1A, wireless gateway104and cable modem106are physically separate devices with wireless gateway104being coupled to cable modem106via an Ethernet cable. Wireless gateway104sends data encapsulated in the 802.11 frames in an Ethernet format to cable modem106. Cable modem106may encapsulate or convert the Ethernet packets into a DOCSIS format and transmit them to CMTS108for further transmission over another network such as the Internet. Thus, data is transmitted from a wireless device102over wireless network101to wireless gateway104and from wireless gateway104and cable modem106over wired network107to CMTS108.

FIG. 1Billustrates an alternate system120according to an embodiment of the invention. System120includes wireless device102, wireless gateway and cable modem110and CMTS108. In the embodiment inFIG. 1B, wireless gateway104and cable modem106fromFIG. 1Aare combined into a single physical unit which is wireless gateway and cable modem110. In an example, wireless gateway and cable mode110may operate using a single processor that is configured to perform the functions of both wireless gateway104and cable modem106. Alternatively, wireless gateway and cable modem110may be a single physical device that includes multiple processors with a first processor implementing a functionality of wireless gateway104and a second processor implementing functionality of cable modem106. In the embodiment ofFIG. 1B, wireless device102communicates with wireless gateway and cable modem110using 802.11 frames. Wireless gateway and cable modem110encapsulates data in the 802.11 frame received from wireless device102into DOCSIS packets that are transmitted over a DOCSIS network to cable modem termination system108.

It is to be appreciated that wireless gateway and cable modem110may be used interchangeably with one or both of wireless gateway104and cable modem106because wireless gateway and cable modem110implements the functionality of both wireless gateway104and cable modem106.

Applications running on wireless device102may require a certain Quality of Service (QoS) over wireless network101and wired network107for desired operation of the application. Quality-of-service (QoS) in communication protocols including but not limited to Data Over Cable Service Interface Specification (DOCSIS), PacketCable™, IEEE 802.11 etc. is the ability to guarantee a certain level of performance to a traffic flow or to provide different levels of priority to different traffic flows. For example, parameters such as a required bit rate, delay, jitter, packet loss probability and/or bit error rate may be guaranteed for different traffic flows. Quality of service guarantees are important if the network capacity is insufficient, especially for real-time streaming multimedia applications such as Voice over Internet Protocol (VoIP), online games and Internet Protocol Television (IPTV), since these often require fixed bit rate and are delay sensitive. Quality of service guarantees are also important in networks where the network capacity is a limited resource, for example in cellular data communication. QoS may be guaranteed, for example, for traffic flows generated by a particular user who subscribes to a high date rate service from his cable company. A particular QoS may also be guaranteed for traffic flows generated by certain applications. For example, traffic flows generated by streaming video and VoIP applications may be guaranteed a certain bit rate. In another example, all voice traffic flows may be allocated a certain QoS and all video traffic may be guaranteed another QoS. Users, applications and traffic flows may be used interchangeably herein.

The basic DOCSIS QoS element is a “service flow” (SF), which is a unidirectional flow of packets with guaranteed QoS parameters such as bitrate, jitter, data rate etc. For example, negotiation between cable modem106and CMTS108may be used to assign a service flow with QoS parameters guaranteed for certain traffic flows. For example, Voice Over IP (VoIP) applications may be assigned a first service flow with a first set of guaranteed QoS parameters, file transfer applications may be assigned a second service flow with a second set of guaranteed QoS parameters, and streaming multimedia may be assigned a third service flow with a third set of guaranteed QoS parameters. Examples of DOCSIS service flow parameters that indicate a QoS over wired network107are shown below in table 1.

A packet from a traffic flow over wireless network101is assigned to a corresponding DOCSIS service flow over wired network107based on one or more of a Virtual Local Area Network (VLAN) Identification (ID) (referred to as “VID” herein) and header parameters associated with the packet. A cable modem106includes a DOCSIS classifier210(seeFIG. 2E) that maps a packet to a service flow based on one or more of a VID associated with the packet (for example the VID in a field of the packet) and other parameters (for example parameters present in a header of the packet). The type and number of parameters used by DOCSIS classifier210to map a packet to a service flow may be based upon a “classifier rule” that is provisioned by a cable operator into DOCSIS classifier210during initialization using a configuration file or dynamically added with Dynamic Change Signaling after CM initialization. For example, in an embodiment, DOCSIS classifier210may utilize, in addition to VID, one or more header parameter such as Transmission Control Protocol (TCP)/User Datagram Protocol (UDP) port number, Media Access Control (MAC) address and Internet Protocol (IP) address to map a packet to a DOCSIS service flow.

In wireless networks operating under an IEEE 802.11e protocol, WiFi Access Category (AC) and Traffic Specification (Tspec) parameters may be used to determine a Quality of Service for a traffic flow. The AC parameters are broadcast by a wireless gateway104to all wireless devices that are associated with a particular Service Set Identifier (SSID). A particular wireless device102associated with a SSID can indicate to the wireless gateway104the Tspec parameters that correspond to its desired QoS for a traffic flow. In an example, all wireless devices100on wireless network101employ the same SSID in order to communicate with the wireless gateway104. The SSID or “Network Name” may also be used to identify a wireless network101. A SSID is usually determined by a network administrator setting up wireless network101. The SSID may be broadcast from a wireless gateway104within wireless network101to enable wireless devices100to determine which wireless network to associate with. The wireless gateway104may also support multiple Service Set Identifiers (SSIDs), thus creating multiple “virtual” wireless networks. Examples of Tspec parameters that indicate QoS over wireless network101are shown below in table 2.

For a wireless gateway104that supports multiple SSIDs, a given SSID may be assigned to a particular type of traffic flow that is associated with a particular QoS profile. To ensure that all the traffic generated from or destined for a given SSID has the desired QoS when being transported from the cable modem106to CMTS108over the DOCSIS network, a cable operator may statically create a DOCSIS Service Flow (SF) that has a QoS profile corresponding to the QoS profile associated with a SSID. This statically created SF can be used for the traffic associated with the corresponding SSID. A QoS profile as referred to herein is a set of QoS parameters such as TSpec parameters in table 2 or DOCSIS service flow parameters in table 1.

However, conventional cable modems106may map a packet received from wireless gateway104to a default DOCSIS service flow without considering which SSID and/or other TSpec parameters the packet is associated with. For example, a packet of a traffic flow that is associated with parameters over wireless network101that indicate low priority may be mapped by CM106to a best effort service flow and a packet of a traffic flow that is associated with TSpec parameters that indicate high priority may also be mapped to the best effort service flow. In current communication systems, there are no schemes that map a packet from a traffic flow with a first set of QoS parameters in a wireless network101to a corresponding service flow having a comparable second set of QoS parameters over wired network107. For example, a VoIP call initiated by a wireless device102requires a guaranteed set of QoS parameters such as a certain sustained bit rate for proper operation. The Tspec parameters associated with a traffic flow assigned to packets from the VoIP call over wireless network101may guarantee such a sustained bit rate. However, current systems may not map the VoIP packets to DOCSIS service flows with comparable DOCSIS SF parameters that guarantee a sustained bit rate over wired network107. If the VoIP call is not routed to a SF that has QoS parameters to support the desired QoS over wired network107, then the VoIP application will not function properly.

The inventors have determined that the applications running on wireless devices102may suffer because their packets over wireless network101are not mapped to DOCSIS service flows that have corresponding QoS parameters over wired network107. Accordingly, the inventors have determined methods, systems and computer program products to map the traffic flows over wireless network101to the DOCSIS service flows that have comparable QoS parameters over wired network107. It is to be appreciated that although the embodiments presented herein are described with respect to the IEEE 802.11(e) protocol over wireless network101and the DOCSIS protocol over wired network107, these embodiments are applicable to any type of protocol over wireless network101and wired network107. For example, the mapping schemes to map QoS parameters from traffic flows in wireless network101to corresponding service flows with comparable QoS parameters as described herein are applicable regardless of the type of protocol implemented over wireless network101and wired network107.

FIG. 2Afurther illustrates wireless gateway104according to an embodiment of the invention. Wireless gateway104includes a processor202coupled to a memory204and a VID mapper200.FIG. 2Bfurther illustrates a wireless gateway and cable modem110according to an embodiment of the invention. Wireless gateway and cable modem110also includes a processor202coupled to a memory204, VID mapper200and DOCSIS classifier210. Processor202is configured to perform the functions described herein based on instructions stored in memory204and/or applications211running on processor202. As seen inFIGS. 2A and 2B, both wireless gateway and cable modem110and wireless gateway104include the same VID mapper200.FIG. 2Cfurther illustrates VID mapper200that maps one or more of, an SSID, an access point ID, a WiFi access category and Tspec parameter ranges to a VID that is associated with a DOCSIS SF. VID mapper200will be described further below.

FIG. 2Dfurther illustrates CM106according to an embodiment of the invention. CM106includes a processor206coupled to a memory208and DOCSIS classifier210. CM106classifies packets received from wireless gateway104into service flows using DOCSIS classifier210.FIG. 2Efurther illustrates DOCSIS classifier210according to an embodiment of the invention. DOCSIS classifier210, based on at least a VID field328(also seeFIG. 3A) of a packet250received from wireless gateway104, determines a corresponding DOCSIS service flow to map packet250to. In an example, DOCSIS classifier210uses provisioned or dynamic classifier rules to map packet250to a DOCSIS service flow based on a combination of VID328and other fields in a header of packet250as described above.

Wireless device102communicates with wireless gateway104using IEEE 802.11 frames. It is to be appreciated that the type of protocol used in wireless network101is a design choice and may be arbitrary. An 802.11 frame may be associated with a SSID for a particular traffic flow transmitted to wireless gateway104. One or more of an SSID, an Access Point (AP) Identification (ID), a source MAC address, a wireless access category, and TSpec parameter ranges are associated with a QoS profile over wireless network101. Wired network107has corresponding DOCSIS service flow parameters that provide a QoS profile that is similar to, comparable to, or corresponding to, a QoS profile over wireless network102. The corresponding DOCSIS service flow between cable modem106and cable modem termination system108can be determined based on at least a VID. Thus, one or more of an SSID, an AP ID, a source MAC address, a wireless access category, and TSpec parameter ranges are used to determine a quality of service associated over wireless network101and a VID is used to determine the quality of service over wired network107. According to an embodiment, wireless gateway104includes a VID mapper200that maps a packet, based on one or more of, an SSID, an AP ID, a source MAC address, a wireless access category, and TSpec parameter ranges associated with the related traffic flow to a corresponding VID that is associated with a DOCSIS service flow that has a associated QoS profile. The VID is in turn is used by DOCSIS classifier210in cable modem106or wireless gateway and cable modem110to classify a packet received over wireless network101to a DOCSIS service flow as will be described further below. The example mapping schemes that the VID mapper200can adopt include but are not limited to the following:

(1) In a first example, a specific SSID is mapped to a specific VID. In this case, all packets associated with the specific SSID are classified into a particular DOCSIS service flow corresponding to a specific VID that is mapped to that SSID.

(2) In a second example, a specific combination of AP ID, wireless access category and SSID are mapped to a particular VID. In this case, all packets associated with this particular combination of parameters are classified into a particular DOCSIS service flow corresponding to the mapped VID.

(3) In a third example, one or more TSpec parameter ranges are mapped to a particular VID. In this case, all packets associated with a wireless traffic flow that has TSpec parameters within specified ranges are mapped to a specific VID. The mapped VID is used by DOCSIS classifier210to classify the packets into a particular DOCSIS service flow corresponding to the mapped VID. For example, all packets with a peak data rate between 100 kbps and 500 kbps are mapped to a particular VID.

(4) In a fourth example, a particular source MAC address is mapped to a particular VID. In this case, all packets with the corresponding source MAC address are classified into a particular DOCSIS service flow corresponding to the mapped VID.

It is to be appreciated that other mapping schemes that use other combinations of AP ID, wireless access category, SSID, source MAC address and TSpec parameter ranges can also be used by VID mapper200.

The mapping schemes may be configured by a cable network operator using a configuration file that is downloaded to memory204of wireless gateway104during initialization of wireless gateway104. Alternatively, these mapping schemes may be stored in memory204of wireless gateway104or updated via Simple Network Management Protocol (SNMP) messages during runtime. To indicate the mapped VID to CM106, wireless gateway104modifies an Ethernet packet transmitted to CM108as described below with respect to the example mapping schemes shown inFIGS. 3A-B.

FIG. 3Aillustrates an example Ethernet packet300that may be transmitted from wireless gateway104to cable modem106. Ethernet packet300may be based on the 802.11 frame received by wireless gateway104from wireless device102. Ethernet packet300includes a destination media access control (MAC) address302, a source MAC address304, an IEEE 802.1Q tag306, an Ether type/size field308, a payload data field310, and a Cyclic Redundancy Check (CRC)/Frame Check Sequence (FCS) field312. In an example, Ethernet packet300received from wireless gateway104includes the IEEE 802.1Q tag306. In another example, IEEE 802.1Q tag306is not included in the Ethernet packet300. IEEE 802.1Q tag306includes a tag protocol identifier (TPID)322, a priority code point (PCP)324, a canonical format indicator (CFI) field326, and virtual local area network identification (VID)328.

InFIG. 3A, VID mapper200, based on a mapping scheme associated with SSID320in VID mapper200determines a corresponding VID328, which corresponds to a comparable quality of service over wired network107. The determination of VID328corresponding to the SSID320may be made using a mapping table configured by the service operator. VID328is inserted into the IEEE 802.1Q tag306if the IEEE 802.1Q tag306is present in Ethernet packet300. If the IEEE 802.1Q tag306is not present, then the IEEE 802.1Q tag306(which includes VID328) may be inserted into packet300. In another example, the field for VID328in IEEE 802.1Q tag306may already include a value when it is received by wireless gateway104. If the value in VID field328is not equal to the one determined by VID mapper200then the value is replaced by the value determined by VID mapper200. Cable modem106encapsulates packet300in a DOCSIS format and transmits the DOCSIS packet to cable modem termination system108over wired network107. Cable modem106includes a DOCSIS classifier210which determines a DOCSIS service flow corresponding to VID328.

FIG. 3Bshows another embodiment according to an embodiment of the invention. InFIG. 3B, VID mapper200determines a VID328based on the combination of access point ID319, WiFi access category321and SSID320. Access point ID319is a unique identification associated with a wireless gateway104. Access point ID319may indicate the QoS profile associated with a wireless gateway104. WiFi access category321indicates the type of traffic flow originating from wireless device102. Types of traffic flow include but are not limited to voice traffic, video traffic, best effort traffic etc. In this example, VID328can be used by CM106to identify not just the associated SSID for a traffic flow, but also the wireless gateway104that originated the request and the type of the traffic. In this embodiment, a table configured by a cable operator includes a mapping between SSID, access point ID, WiFi access category and a VID.

In an embodiment, the mapping schemes may be implemented by VID mapper200or by processor202based on instructions stored in memory204. For example, processor202maps a SSID320indicative of a first set of Quality of Service parameters over wireless network101to a corresponding VID328indicative of a second set of Quality of Service parameters over wired network107. The processor202receives Ethernet packet300packet over wireless network101and determines the SSID320associated with the packet. Processor202determines the VID328that identifies the DOCSIS SF parameters over wired network107using, for example, a mapping table. The determined VID328corresponds to the second set of Quality of Service parameters that is substantially equivalent to the first set of Quality of Service parameters over wireless network101. Processor202inserts the VID328into packet300and transmits packet300to CM106that in turn classifies the packet to a service flow corresponding to the mapped VID and transmits it to CMTS108using that service flow. In another example, wireless gateway and cable modem110receives an IEEE 802.11 frame from wireless device102, inserts VID328, encapsulates the received IEEE 802.11 frame into a DOCSIS format, classifies the packet to the service flow corresponding to the mapped VID, and transmits the DOCSIS packet to CMTS108in that service flow.

FIG. 4illustrates an example mapping of traffic flows from a wireless network101to service flows in wired network107using a VID to bridge these two types of flows. For example, for a first traffic flow, VID mapper200may map a combination of SSID1, Access Point ID and WiFi Access Category to a VID3. DOCSIS classifier210classifies packets with VID3to service flow4which has QoS profile4. QoS profile4may include, for example, DOCSIS service flow parameters of maximum sustained traffic rate and traffic priority (see table 1). In another example, all traffic associated with SSID6is mapped to VID9which in turn is classified by DOCSIS classifier210to service flow9which has QoS profile9. QoS profile9may include, for example, DOCSIS service flow parameters of unsolicited grant size and nominal grant interval for UGS (see table 1). In another example, all traffic that corresponds to a Tspec parameter range of peak data rate (see table 2) between 100 kbps and 500 kbps is mapped by VID mapper200to VID8which in turn is classified by DOCSIS classifier210service flow2which has QoS profile2. QoS profile2may include, for example, DOCSIS service flow parameters of minimum reserved traffic rate, maximum sustained traffic rate and traffic priority.

In an embodiment, VID mapper200is software based and runs on processor202. In another example, VID mapper200is based on hardwired logic gates and is based only in hardware. In another example, VID mapper200is a combination of hardware, software, firmware or any combination thereof. In an example, DOCSIS classifier210is software that runs on processor206. In another example, DOCSIS classifier210is based on hardwired logic gates and is based only in hardware. In another embodiment, DOCSIS classifier210is a combination of hardware, software, firmware or any combination thereof.

FIG. 5illustrates an example flow chart500illustrating steps performed to map a packet from a wireless network101to wired network107according to an embodiment of the invention. Flowchart500will be described with continued reference to the example operating environment depicted inFIGS. 1-4. However, the flowchart is not limited to these embodiments. Note that some steps shown in flowchart500do not necessarily have to occur in the order shown. The steps in flow chart500may be performed by, for example, one or more of VID mapper200and processor202.

In step502, a packet is received over wireless network101. For example, an 802.11 frame is received by wireless gateway104from wireless device102.

In step504, a first set of QoS parameters associated with the received packet are determined. For example, the first set of QoS parameters is determined based on one or more of an SSID320, access point ID319, WiFi access category321, a MAC source address, and TSpec parameter ranges.

In step506, a second parameter over wired network107is determined based on the first set of QoS parameters determined in step504. For example, based on a table that contains a static mapping scheme, a VID328corresponding to the first set of QoS parameters is determined. In another embodiment, the VID328is determined dynamically in real time by processor202and/or VID mapper200.

In step508, the second parameter is inserted into the packet. For example, the VID328is inserted into an 802.1Q tag of Ethernet packet300.

In step510, the packet is transmitted to cable modem106. Cable modem106encapsulates the packet into a DOCSIS format, classifies the packet into a service flow corresponding to VID328, and sends it to CMTS108. In another embodiment, wireless device and cable modem110performs such encapsulation, classification and transmission.

Embodiments presented herein, or portions thereof, can be implemented in hardware, firmware, software, and/or combinations thereof. The embodiments presented herein apply to any communication system that utilizes packets for data transmission.

The representative packet processing functions described herein (e.g. functions performed by processor202, VID mapper200or DOCSIS classifier210can be implemented in hardware, software, or some combination thereof. For instance, the method of flowchart500can be implemented using computer processors, such as processor202, VID mapper200, computer logic, application specific circuits (ASIC), digital signal processors, etc., or any combination thereof, as will be understood by those skilled in the arts based on the discussion given herein. Accordingly, any processor that performs the functions described herein is within the scope and spirit of the embodiments presented herein.

Further, the packet processing functions described herein could be embodied by computer program instructions that are executed by a computer processor, for example processor202, or any one of the hardware devices listed above. The computer program instructions cause the processor to perform the instructions described herein. The computer program instructions (e.g. software) can be stored in a computer usable medium, computer program medium, or any storage medium that can be accessed by a computer or processor. Such media include a memory device, such as instruction memory204, a RAM or ROM, or other type of computer storage medium such as a computer disk or CD ROM, or the equivalent. Accordingly, any computer storage medium having computer program code that cause a processor to perform the functions described herein are within the scope and spirit of the embodiments presented herein.

CONCLUSION

The embodiments presented herein have been described above with the aid of functional building blocks and method steps illustrating the performance of specified functions and relationships thereof. The boundaries of these functional building blocks and method steps have been arbitrarily defined herein for the convenience of the description. Alternate boundaries can be defined so long as the specified functions and relationships thereof are appropriately performed. Any such alternate boundaries are thus within the scope and spirit of the claimed embodiments. One skilled in the art will recognize that these functional building blocks can be implemented by discrete components, application specific integrated circuits, processors executing appropriate software and the like or any combination thereof. Thus, the breadth and scope of the present embodiments should not be limited by any of the above-described exemplary embodiments, but should be defined only in accordance with the following claims and their equivalents.