1001 18699A9 (19) United States (10) Pub
Total Page:16
File Type:pdf, Size:1020Kb
US 201001 18699A9 (19) United States (10) Pub. N0.: US 2010/0118699 A9 (12) Patent Application Publication (48) Pub. Date: May 13, 20 10 Xiong et al. CORRECTED PUBLICATION (54) SYSTEMS AND METHODS FOR DYNAMIC Publication Classi?cation QUALITY OF SERVICE (51) Int- Cl (76) Inventors: Bo Xiong, Sunnyvale, CA (US); H041‘ 12/56 (200601) Dean Chang, Sunnyvale, CA (US) (52) US. Cl. ................................................... .. 370/2301 Correspondence Address: JONES DAY 222 EAST 41ST ST (57) ABSTRACT NEW YORK’ NY 10017 (Us) Systems, methods, and apparatus for routing are provided in _ Which a connection track comprising a plurality of network or (21) Appl' NO" 11/805’604 transport layer packets, received by a router, is identi?ed by . _ examination of header ?elds of one or more ?rst packets in the (22) Flled' May 24’ 2007 plurality of packets. One or more quality of service (QoS) Prior Publication D ata parameters is associated With the connection track by deter mining Whether the track encodes a data type by (i) an iden (l5) Correction of US 2008/0291827 A1 Nov. 27, 2008 ti?cation of a predetermined application protocol used Within See (63) Related US. Application Data. the one or more ?rst packets and/or (ii) a comparison of a payload of one or more packets in the plurality of packets to (65) Us 2008/0291827 A1 NOV‘ 27’ 2008 known data type formats. A ?rst QoS parameter is set to a ?rst . value in a ?rst value range When the connection track contains Related U's' Apphcatlon Data the ?rst data type. The connection track is routed through the (63) Continuation-in-part of application No, 11 /805,471, router in accordance With the one or more QoS parameters ?led on May 22, 2007, noW abandoned. assigned to the connection track. 104A 104A 104A 104A 106A 100 /'\ 106A 102 N _ _ N z 5 16 Power : CPU : Source 5 : \12 18\14 l | 30 I _\ f 32 Connection track control module 34 Lookup table I38 1 Connection track 1 f 40 1 Data type f QoS parameter 1 f42-l 1 ' 42-1-N QoS parameter N f38_2 Connection track 2 f 40 2 f . Data type I422 l QoS parameter 1 42-2 N QoS parameter N f 1 38-M Connection track M f Patent Application Publication May 13, 2010 Sheet 1 of 3 US 2010/0118699 A9 104A 104A 104A 104A 106A 100 106A K’ /—\ K106A 106A 102 \ J _ _ \ z 5 16 Power ; CPU ; Source 5 E “12 14 J 18\ I 30 _\ f 32 Connection track control module 3 4 Lookup table / 3 8 1 Connection track 1 f 40 1 Data type f 42 l 1 QoS parameter 1 f _ _ 42-1-N QoS parameter N 3 8_2 Connection track 2 40-2 Data type f 42 2 1 QoS parameter 1 f _ _ ' 42-2-N QoS parameter N f 1 38-M Connection track M f \ 106B \106B _/106B 104B 104B 104B 104B Patent Application Publication May 13, 2010 Sheet 2 of 3 US 2010/0118699 A9 Receive one or more network layer or transport layer packets I Associate each of the one or more network layer or transport layer packets with a ?rst connection track in a plurality of connection tracks based on values in one or more header ?elds of the respective network layer or transport layer packets Encode one or more of the network layer or transport layer packets assigned to the ?rst connection track with a wrapper ‘ l /-208 Add a data structure to a lookup table for the ?rst connection track I t /210 Place a pointer to the data structure in the lookup table in the wrapper of each of the one or more of the network layer or transport layer packets assigned to the ?rst connection track that have been wrapped with a wrapper 212 {214 the packets in the NO Extract the payload from one or more ?rst connection track include a predetermined application network layer or transport layer protocol? packets in the ?rst connection track f- 21 6 t f 21 8 Determine the data type encoded in Determine the data type encoded in the packets of the ?rst Connection the packets of the ?rst connection track from the predetermined track by comparing the payload from application protocol the one or more network layer or transport layer packets in the ?rst connection track to known data types Assign QoS parameters to the ?rst connection track based upon the data type encoded in the one or more network layer or transport layer packets of the ?rst connection track v f 222 Store the QoS parameters and, optionally, the data type encoded in the ?rst connection track in the data structure for the ?rst connection track in the lookup table v F 224 Route the ?rst connection track through the router in accordance with the QoS parameters of the connection track and, optionally, also in accordance with an Internet Service Provider-policy or other con?gurable router policy l K- 226 Remove the data structure for the ?rst connection track from the lookup table when the connection track has been routed Fig. 2 Patent Application Publication May 13, 2010 Sheet 3 0f 3 US 2010/0118699 A9 104A 104A 104A 104A 300"\ Power ' Source 12 18 14 30 Connection track control module Lookup table Connection track 1 Data type QoS parameter 1 0 0 QoS parameter N Connection track 2 Data type QoS parameter 1 QoS parameter N Connection track M 0 104B 104B 104B 104B Fig. 3 US 2010/0118699 A9 May 13,2010 SYSTEMS AND METHODS FOR DYNAMIC complexity and processing time involved With RSVP nego QUALITY OF SERVICE tiation makes RSVP, by itself, unsatisfactory. [0007] Another exemplary protocol, the differentiated Ser CROSS REFERENCE TO RELATED vices (“DiffServ”) protocol is an alternative technique to APPLICATION RSVP, Which utiliZes six DiffServ bits in the IP header to [0001] The present application is a continuation-in-part of indicate one of several limited QoS classes. In particular, as US. patent application Ser. No. to be determined entitled discussed in the IETF’s “De?nition of the Differentiated Ser “Systems and Methods for Dynamic Quality of Service,” vices Field (DS Field) in the IPv4 and IPv6 Headers” (“RFC attorney docket number 12108-001-999, that Was ?led on 2474”) and “An Architecture for Differentiated Services” May 22, 2007. (“RFC 2475”), DiffServ is intended to alloW netWork service providers to offer to each netWork user a range of netWork FIELD OF THE INVENTION services Which are differentiated on the basis of performance. [0002] The present invention relates to systems and meth In such a scheme, by marking a speci?c ?eld (eg the DS ods for dynamic QoS routing Where a connection track com ?eld) of each packet With a speci?c value, a user can request, prising data is routed from source to destination by a router on a packet by packet basis, a speci?c limited performance path that satis?es the QoS (e.g., bandWidth and delay) class level. This value Would specify the per-hop behavior to requirements of the connection track. be allotted to that packet Within the provider’s netWork. [0008] Typically, the user and netWork provider Would BACKGROUND OF THE INVENTION negotiate a policy (e.g. policing pro?le) that describes the rate [0003] Many IP routers typically support only “best effort” at Which traf?c can be submitted at each service class level. tra?ic. However, the bandWidth available to people has been Packets submitted in excess of this pro?le Would not be allot increasing rapidly With the advent of broadband access. The ted the service class level requested. An important feature of result is that many neW services are noW desired that require DiffServ is vieWed to be its scalability, Which alloWs the better QoS than “best effort” IP can support. Also, With broad protocol to be deployed in very large netWorks. This scalabil band, the problem of controlling the total usage and carrier ity is achieved by forcing as much complexity out of the core expense has become important. Thus, it has become neces of the netWork and into the boundary devices that process sary to improve both the delay performance and the control of loWer volumes of tra?ic and lesser numbers of ?oWs. HoW bandwidth for IP service, much as Was accomplished inATM. ever, this protocol has signi?cant limits that preclude Diff Also, call rejection for high bandWidth streaming services Serv from providing an effective solution to the problems like video is required instead of random discards if quality is faced With implementing QoS in an IP netWork. For example, to be maintained. DiffServ is a traf?c classi?cation technique that only has six [0004] Moreover, neW quality of service (QoS) standards bits With a total of only thirteen general service classes require that netWork devices, such as netWork sWitches, de?ned. Four classes are reserved for assured service. One address these requirements. For example, the IEEE 802.1 class is reserved for expedited service. There are, hoWever, no standard divides netWork tra?ic into several classes of service QoS de?nitions to quantify each class, Which thereby limits based on sensitivity to transfer latency, and prioritizes these the QoS types that can be supported. Since the Internet Will classes of service. The highest class of service is recom need to be able to carry a Wide variety of QoS types, this mended for netWork control tra?ic, such as sWitch-to-sWitch quanti?cation limitation greatly restricts the future use of con?guration messages.