Language selection

Search

Patent 2664928 Summary

Third-party information liability

Some of the information on this Web page has been provided by external sources. The Government of Canada is not responsible for the accuracy, reliability or currency of the information supplied by external sources. Users wishing to rely upon this information should consult directly with the source of the information. Content provided by external sources is not subject to official languages, privacy and accessibility requirements.

Claims and Abstract availability

Any discrepancies in the text and image of the Claims and Abstract are due to differing posting times. Text of the Claims and Abstract are posted:

  • At the time the application is open to public inspection;
  • At the time of issue of the patent (grant).
(12) Patent: (11) CA 2664928
(54) English Title: CONTENT BASED ROUTING WITH HIGH ASSURANCE MLS
(54) French Title: ROUTAGE A BASE DE CONTENU AVEC SECURITE MULTINIVEAU A ASSURANCE ELEVEE
Status: Granted
Bibliographic Data
(51) International Patent Classification (IPC):
  • H04L 12/00 (2006.01)
  • H04Q 3/64 (2006.01)
  • H04L 9/00 (2006.01)
(72) Inventors :
  • WINIG, ROBERT J. (United States of America)
(73) Owners :
  • THE BOEING COMPANY (United States of America)
(71) Applicants :
  • THE BOEING COMPANY (United States of America)
(74) Agent: SMART & BIGGAR LP
(74) Associate agent:
(45) Issued: 2016-04-05
(86) PCT Filing Date: 2007-11-29
(87) Open to Public Inspection: 2008-05-29
Examination requested: 2009-04-06
Availability of licence: N/A
(25) Language of filing: English

Patent Cooperation Treaty (PCT): Yes
(86) PCT Filing Number: PCT/US2007/085968
(87) International Publication Number: WO2009/070167
(85) National Entry: 2009-04-06

(30) Application Priority Data:
Application No. Country/Territory Date
11/564,729 United States of America 2006-11-29

Abstracts

English Abstract



Content Based Routing with High Assurance MLS (multi-level security) methods
and
systems are described. In an embodiment, a security component receives content
from a
content provider. The security component can identify a security level of
content
metadata located within the content received from the content provider. A
content router
can receive a content descriptor from the content provider and an interest
profile from a
requesting system. The content router can utilize algorithms to create routing
tables
based on metadata in the content descriptor, and the interest profile. The
content router
can provide the content metadata to the requesting system based on the
interest profile. A
content filter can filter or sanitize the content metadata according to a
security level of the
requesting system before providing the content metadata to the requesting
system.


French Abstract

L'invention concerne un système d'acheminement à base de contenu qui est capable d'acheminer un contenu qui est contenu dans des paquets de données selon des métadonnées de contenu situées dans le contenu respectif. Le routeur de contenu reçoit un descripteur de contenu du fournisseur et un profil d'intérêt du système demandeur. Sur la base des métadonnées dans les descripteurs de contenu et du profil d'intérêt, le routeur de contenu crée des tables d'acheminement et fournit les métadonnées de contenu au système demandeur sur la base du profil d'intérêt. Les métadonnées de contenu sont filtrées ou nettoyées en fonction d'un niveau de sécurité du système demandeur avant que les métadonnées de contenu ne soient fournies au système demandeur.

Claims

Note: Claims are shown in the official language in which they were submitted.


THE EMBODIMENTS OF THE INVENTION IN WHICH AN EXCLUSIVE
PROPERTY OR PRIVILEGE IS CLAIMED ARE DEFINED AS FOLLOWS:
1. A machine comprising:
an interface configured to communicate with a plurality of networks having
different security levels; and
at least one hardware processor programmed to process publisher-provided
content and content descriptors and subscriber-supplied interest profiles
received from the interface, wherein the processor is programmed to:
create content-based routing tables based on metadata in the publisher-
provided content received; and
use the content descriptors and interest profiles to look up a node of a
target network in the content-based routing tables and forward data in
received content to the node, while ensuring compliance with classified
data rules and policies of the target network by using the policies to
determine what can and can't be forwarded to the target network based
on security classifications.
2. The machine recited in claim 1, wherein the at least one processor is
further
programmed to provide the data directly to the node in an event that the
security level
of the data not higher than the security level of the target network.
3. The machine recited in claim 1 or 2, wherein the at least one processor
is further
programmed to identify the security level of the data based on a security
classification
that is defined in a classification guide.
4. The machine recited in claim 1, 2, or 3, wherein the content and the
content metadata
is at least one of readable text or XML data.
- 11 -

5. The machine of any one of claims 1 to 4, wherein the at least one
processor is
programmed to ensure compliance with the data rules of the target network by
determining whether the data is passed, filtered, or sanitized.
6. The machine of any one of claims 1 to 5, wherein the machine is
configured for a
publish/subscribe network architecture, and wherein requests for specific
content are
made by subscribers.
7. The machine of any one of claims 1 to 6, wherein the at least one
processor is
programmed to implement an MLS guard, whereby the MLS guard receives routed
data and ensures that the routed data complies with rules and policies of the
target
network.
8. A machine comprising:
an interface configured to communicate with a plurality of networks having
different security levels, the interface receiving content, content
descriptors,
and content metadata from publishers via the plurality of networks; and
at least one hardware processor programmed to implement both a content-based
router and a multi-level security guard for classified data, wherein the
processor
is programmed to:
create content-based routing tables based on metadata in the received
content; and
use the content descriptors and subscriber-supplied interest profiles to
look up nodes of a target network in the content-based routing tables to
forward data in received content to subscribers of target networks, while
ensuring compliance with rules and policies of the target networks by
using the policies to determine what can and can't be forwarded to the
target network based on security classifications.
- 12 -

9. The machine recited in claim 8, wherein the data is classified at a
security level that is
defined in a classification guide.
10. The machine recited in claim 8 or 9, wherein the data is forwarded
directly to a
subscriber if security level of the data is not higher than the security level
of the
subscriber's target network.
11. The machine of any one of claims 8 to 10, wherein the at least one
processor ensures
compliance with the rules of the target networks by using the rules to
determine
whether the data is passed, filtered, or sanitized.
12. The machine of claim 11, wherein the at least one processor is
programmed to sanitize
the data to ensure compliance with the rules of the target networks.
- 13 -

Description

Note: Descriptions are shown in the official language in which they were submitted.


CA 02664928 2009-04-06
CONTENT BASED ROUTING WITH HIGH ASSURANCE MLS
TECHNICAL FIELD
The present disclosure relates to content based routing with high assurance
MLS (multi-
level security).
BACKGROUND
Providing specific content to a requesting system, such as any system that
requires inputs
from an external source, over a network in a timely and secure manner requires

knowledge of the interests of the requesting system, the security level of the
information
being sent over the network, and the security level of the network on which
the
requesting system resides. Conventional network communications are problematic

because they can not provide specific metadata or content to a requesting
system even if
the requesting system is at the appropriate security level. Conventional
network
communications can only provide the entire data packets of information
classified at the
highest security level of any content contained within the entire data
packets.
Conventional network communications also can not individually classify the
metadata or
¨ 1 ¨

CA 02664928 2015-03-23
content within data packets at a specific security level to provide the
requesting system with
the specific content requested.
SUMMARY
This summary introduces simplified features and concepts of content-based
routing with high
assurance MLS (multi-level security) which are further described below in the
Detailed
Description. This summary is not intended to identify essential features of
the claimed subject
matter, nor is it intended for use in determining the scope of the claimed
subject matter.
In an embodiment of content based routing with high assurance MLS, a security
component
receives content from a content provider. The security component identifies a
security level of
content metadata located within the content received from the content
provider. A content
router receives a content descriptor from the content provider and an interest
profile from a
requesting system. The content router utilizes algorithms to create routing
tables based on
metadata in the content descriptor, and the interest profile. The content
router provides the
content metadata to the requesting system based on the interest profile. A
content filter filters
or sanitizes the content metadata according to a security level of the
requesting system before
providing the content metadata to the requesting system.
In accordance with one embodiment there is provided a machine. The machine
includes an
interface configured to communicate with a plurality of networks having
different security
levels. The machine further includes at least one hardware processor
programmed to process
publisher-provided content and content descriptors and subscriber-supplied
interest profiles
received from the interface. The processor is programmed to create content-
based routing
tables based on metadata in the publisher-provided content received, and use
the content
descriptors and interest profiles to look up a node of a target network in the
content-based
- 2 -

CA 02664928 2015-03-23
routing tables and forward data in received content to the node, while
ensuring compliance
with classified data rules and policies of the target network by using the
policies to determine
what can and can't be forwarded to the target network based on security
classifications.
The at least one processor may be further programmed to provide the data
directly to the node
in an event that the security level of the data not higher than the security
level of the target
network.
The at least one processor may be further programmed to identify the security
level of the data
based on a security classification that is defined in a classification guide.
The content and the content metadata may be at least one of readable text or
XML data.
The at least one processor may be programmed to ensure compliance with the
data rules of the
target network by determining whether the data is passed, filtered, or
sanitized.
The machine may be configured for a publish/subscribe network architecture,
and requests for
specific content may be made by subscribers.
The at least one processor may be programmed to implement an MLS guard,
whereby the
MLS guard may receive routed data and may ensure that the routed data complies
with rules
and policies of the target network.
In accordance with another embodiment there is provided a machine. The machine
includes an
interface configured to communicate with a plurality of networks having
different security
levels, the interface receiving content, content descriptors, and content
metadata from
publishers via the plurality of networks. The machine further includes at
least one hardware
processor programmed to implement both a content-based router and a multi-
level security
guard for classified data. The processor is programmed to create content-based
routing tables
based on metadata in the received content, and use the content descriptors and
subscriber-
- 2a -

CA 02664928 2015-03-23
supplied interest profiles to look up nodes of a target network in the content-
based routing
tables to forward data in received content to subscribers of target networks,
while ensuring
compliance with rules and policies of the target networks by using the
policies to determine
what can and can't be forwarded to the target network based on security
classifications.
The data may be classified at a security level that is defined in a
classification guide.
The data may be forwarded directly to a subscriber if security level of the
data is not higher
than the security level of the subscriber's target network.
The at least one processor may ensure compliance with the rules of the target
networks by
using the rules to determine whether the data is passed, filtered, or
sanitized.
The at least one processor may be programmed to sanitize the data to ensure
compliance with
the rules of the target networks.
- 2b -

CA 02664928 2009-04-06
BRIEF DESCRIPTION OF THE DRAWINGS
Embodiments of content based routing with high assurance MLS (multi-level
security)
are described with reference to the following drawings. The same numbers are
used
throughout the drawings to reference like features and components:
Fig. 1 illustrates an example system in which embodiments of content based
routing with
high assurance MLS can be implemented.
Fig. 2 illustrates another example system in which embodiments of content
based routing
with high assurance MLS can be implemented.
Fig. 3 illustrates exemplary method(s) for content based routing with high
assurance
MLS.
Fig. 4 illustrates am example computing-based device in which embodiments of
content
based routing with high assurance MLS can be implemented.
DETAILED DESCRIPTION
Content Based Routing with High Assurance MLS (multi-level security) methods
and
systems are described in which embodiments provide communication of content
from a
content provider to a requesting system, such as any system that requires
inputs from an
external source. Embodiments of content based routing with high assurance MLS
can
also be implemented to assist in providing content to the requesting system
from the
content provider.
In one embodiment, a security component receives content from a content
provider. The
security component can identify a security level of content metadata located
within the
content received from the content provider. A content router receives a
content
descriptor from the content provider and an interest profile from a requesting
system.
The content router can utilize algorithms to create routing tables based on
metadata in the
content descriptor, and the interest profile. The content router can provide
the content
¨3¨

CA 02664928 2009-04-06
metadata to the requesting system based on the interest profile. A content
filter can filter
and/or sanitize the content metadata according to a security level of the
requesting system
before providing the content metadata to the requesting system.
While features and concepts of the described systems and methods for content
based
routing with high assurance MLS can be implemented in any number of different
environments, systems, and/or other configurations, embodiments of content
based
routing with high assurance MLS are described in the context of the following
exemplary
environment and system architectures.
Fig. 1 illustrates an example system 100 in which embodiments of content based
routing
with high assurance MLS can be implemented. The system 100 includes a
requesting
system 102, such as any system that requires inputs from an external source
like a data
fusion engine, a content provider 104, a MLS guard 106, a security component
108, a
content router 110, and a content filter 112 to filter and/or sanitize content
metadata 122
located within the content 114 and provide the content metadata 122 to the
requesting
system 102. In this example, the content router 110 can receive an interest
profile 120
from the requesting system 102, and a content descriptor 116 from the content
provider
104.
The requesting system 102, such as any system that requires inputs from an
external
source, can communicate an interest profile 120 to the content router 110. The
requesting
system 102 can receive content metadata 122 from the content filter 112 after
it is filtered
and/or sanitized according to a security level of the requesting system 102.
In this
example, the security level of the requesting system 102 is equivalent to the
security level
of a network on which the requesting system 102 is located. Further, in this
example, the
interest profile 120 defines the desired content and/or metadata. In an
embodiment, the
content router 110 can provide the content metadata 122 directly to the
requesting system
¨4¨

CA 02664928 2009-04-06
102 in an event that the security level of the content metadata 122 is not
higher than the
security level of the requesting system 102. In another example, the
requesting system
102 can be a subscriber in a service oriented architecture environment. In
another
embodiment, the requesting system 102 can receive the content 114 and/or the
content
metadata 122.
The content provider 104 can communicate a content descriptor 116 to the
content router
110, and communicate content 114 to the security component 108. In this
example, the
content 114 can be at least one of readable text, XML data or binary data.
Further, in this
example, the content descriptor defines the provided content and/or metadata.
In another
example, the content descriptor is a publisher in a service oriented
architecture
environment. In an embodiment, at least one additional content provider can
communicate a content descriptor to the content router 110, and communicate
content
114 to the security component 108.
The security component 108 can receive content 114 from the content provider
104 and
can identify a security level of the content metadata 122 received from the
content
provider 104. The security component 108 can identify the security level of
the content
metadata 122 based on a security classification that is defined in a
classification guide.
The security component 108 can identify or tag the content metadata 122
manually, or
use a variety of identifiers or taggers that can place a security
classification on the content
metadata 122. The security component 108 can utilize a security protocol to
communicate the content metadata 122 to the content router 110.
The content router 110 can receive the content descriptor 116 from the content
provider
104 and the interest profile 120 from the requesting system 102. The content
router can
utilize algorithms to create routing tables based on the metadata in the
content descriptor
116, and the interest profile 120, and provide the content metadata 122 to the
requesting
¨5¨

CA 02664928 2009-04-06
system 102 based on the interest profile 120. Further, in this embodiment, the
content
metadata 122 will be multicast to interested requesting systems 102 or
subscribers whose
interest profile 120 matches the metadata content 122 in the content
descriptor 116.
The content filter 112 can filter and/or sanitize the content metadata 122
according to a
level of security of the requesting system 102 before providing the content
metadata 122
to the requesting system 102. The content filter 112 can utilize MLS guard
policies to
filter and/or sanitize the content metadata 122 according to the security
level of the
requesting system 102.
In an embodiment, the security component 108, content router 110, and content
filter 112
can be housed within a multi-level security hardware system, such as an MLS
Guard 106.
The MLS guard 106 can provide two-way communications and can communicate
content
metadata 122 from a content provider 104 at a low security level to a
requesting system
102 at a high security level, and from a content provider 104 at a high
security level to
requesting system 102 at a low security level. Further, in this embodiment,
the MLS
guard 106 can operate at the highest level of assurance or the highest
evaluation
accreditation level such as common criteria EAL7.
Fig. 2 further illustrates an example system 200 in which embodiments of
content based
routing with high assurance MLS can be implemented. The system 200 includes
the
requesting system 102, the content provider 104, the MLS guard 106, the
security
component 108, the content router 110, at least one additional requesting
system 202, and
the content filter 112 as described above with reference to Fig. 1 to filter
and/or sanitize
content metadata 122 and provide the content metadata 122 to the requesting
system 102.
In this example, the at least one additional requesting system 202 can
communicate an
interest profile 204 to the content router 110. The content router 110 can
create routing
tables based on the interest profile of the at least one additional requesting
system 202
¨6¨

CA 02664928 2009-04-06
and the metadata in the content descriptor 116 of each content provider 104,
and provide
content metadata 206 to the at least one additional requesting system 202
based on the
interest profile 204. Further, in this embodiment, the content filter 112 can
filter and/or
sanitize the content metadata 206 according to a security level of the at
least one
additional requesting system 202 before the content metadata 206 is received
by the at
least one additional requesting system 202. Also, in this embodiment, these
operations
described can be simultaneously performed with the functions as described in
figure 1.
Generally, any of the functions and methods described herein can be
implemented using
hardware, software, firmware (e.g., fixed logic circuitry), manual processing,
or any
combination thereof A software implementation represents program code that
performs
specified tasks when executed on a computing-based processor. Example method
300
described with reference to Fig. 3 may be described in the general context of
computer
executable instructions.
Generally, computer executable instructions can include
services, applications, routines, programs, objects, components, data
structures,
procedures, modules, functions, and the like that perform particular functions
or
implement particular abstract data types.
Fig. 3 illustrates an exemplary method 300 for content based routing with high
assurance
MLS and is described with reference to the exemplary environment 100 shown in
Fig. 1.
The order in which the method is described is not intended to be construed as
a
limitation, and any number of the described method blocks can be combined in
any order
to implement the method, or an alternate method. Furthermore, the method can
be
implemented in any suitable hardware, software, firmware, or combination
thereof
At block 302, a content descriptor 116 is received from a content provider
104. For
example, the content router 110 receives the content descriptor 116 from the
content
provider 104. At block 304, an interest profile 120 is received from a
requesting system
¨7¨

CA 02664928 2009-04-06
102. For example, the content router 110 receives the interest profile 120
from the
requesting system 102. At block 306, content 114 is received from the content
provider
104. For example, the security component 108 receives the content 114 from the
content
provider 104. At block 308, the security level of the content metadata 122
located within
the content 114 is identified. For example, the security component 108
identifies the
security level of the content metadata 122. In an embodiment, the security
component
108 identifies the security level of the content metadata 122 based on a
security
classification that is defined in a classification guide. In another
embodiment, the content
metadata 122 is directly received by the requesting system 102 in an event
that a security
level of the content metadata 122 is not higher than the security level of the
requesting
system 102. At block 310, routing tables are created based on metadata in the
content
descriptor 116, and the interest profile 120. For example, the content router
110 creates
routing tables based on the metadata in the content descriptor 116, and the
interest profile
120. At block 312, the content metadata 122 is filtered and/or sanitized
according to a
security level of the requesting system 102. For example, the content filter
112 filters
and/or sanitizes the content metadata 122 according to the security level of
the requesting
system 102. At block 314, the content metadata 122 is routed to the requesting
system
102 according to the security level of the requesting system 102. For example,
the
content filter 112 routes the content metadata 122 to the requesting system
102 according
to the security level of the requesting system 102.
Fig. 4 illustrates an example computing-based device 400 which can be
implemented as
any form of computing or electronic device in which embodiments of content
based
routing with high assurance MLS can be implemented. For example, the computing-

based device 400 can be implemented to include any one or combination of
devices
described with reference to the system shown in Fig. 1.
¨8¨

CA 02664928 2009-04-06
The computing-based device 400 includes an input interface 402 by which data
inputs
can be received. Device 400 further includes communication interface(s) 404
which can
be implemented as any one or more of a wireless interface, any type of network
interface,
and as any other type of communication interface. The computing-based device
400 also
includes one or more processors 406 (e.g., any of microprocessors,
controllers, and the
like) which process various computer executable instructions to control the
operation of
computing-based device 400, to communicate with other electronic and computing

devices, and to implement embodiments of content based routing with high
assurance
MLS. Computing-based device 400 can also be implemented with computer readable

media 408, such as one or more memory components, examples of which include
random
access memory (RAM), non-volatile memory (e.g., any one or more of a read-only

memory (ROM), flash memory, EPROM, EEPROM, etc.), and a disk storage device. A

disk storage device can include any type of magnetic or optical storage
device, such as a
hard disk drive, a recordable and/or rewriteable compact disc (CD), a DVD, a
DVD+RW,
and the like.
Computer readable media 408 provides data storage mechanisms to store various
information and/or data such as software applications and any other types of
information
and data related to operational aspects of computing-based device 400. For
example, an
operating system 410 and/or other application programs 412 can be maintained
as
software applications with the computer readable media 408 and executed on
processor(s) 406 to implement embodiments of content based routing with high
assurance
MLS. For example, the security component 108, the content router 110, and the
content
filter 112 can each be implemented as a software application and/or component
in various
embodiments of content based routing with high assurance MLS.
¨9¨

CA 02664928 2009-04-06
In addition, although the security component 108, content router 110, and
content filter
112 can each be implemented as separate application components, each of the
components can themselves be implemented as several component modules or
applications distributed to each perform one or more functions in a content
based routing
with high assurance MLS system. Further, any combination of the security
component
108, content router 110, and content filter 112 can be implemented in an
alternate
embodiment.
Although embodiments of content based routing with high assurance MLS have
been
described in language specific to structural features and/or methods, it is to
be understood
that the subject of the appended claims is not necessarily limited to the
specific features
or methods described. Rather, the specific features and methods are disclosed
as
exemplary implementations of content based routing with high assurance MLS.
¨ 10 ¨

Representative Drawing
A single figure which represents the drawing illustrating the invention.
Administrative Status

For a clearer understanding of the status of the application/patent presented on this page, the site Disclaimer , as well as the definitions for Patent , Administrative Status , Maintenance Fee  and Payment History  should be consulted.

Administrative Status

Title Date
Forecasted Issue Date 2016-04-05
(86) PCT Filing Date 2007-11-29
(87) PCT Publication Date 2008-05-29
(85) National Entry 2009-04-06
Examination Requested 2009-04-06
(45) Issued 2016-04-05

Abandonment History

There is no abandonment history.

Maintenance Fee

Last Payment of $473.65 was received on 2023-11-27


 Upcoming maintenance fee amounts

Description Date Amount
Next Payment if standard fee 2024-11-29 $624.00
Next Payment if small entity fee 2024-11-29 $253.00

Note : If the full payment has not been received on or before the date indicated, a further fee may be required which may be one of the following

  • the reinstatement fee;
  • the late payment fee; or
  • additional fee to reverse deemed expiry.

Patent fees are adjusted on the 1st of January every year. The amounts above are the current amounts if received by December 31 of the current year.
Please refer to the CIPO Patent Fees web page to see all current fee amounts.

Payment History

Fee Type Anniversary Year Due Date Amount Paid Paid Date
Request for Examination $800.00 2009-04-06
Application Fee $400.00 2009-04-06
Maintenance Fee - Application - New Act 2 2009-11-30 $100.00 2009-11-03
Expired 2019 - The completion of the application $200.00 2010-03-11
Maintenance Fee - Application - New Act 3 2010-11-29 $100.00 2010-09-27
Maintenance Fee - Application - New Act 4 2011-11-29 $100.00 2011-11-02
Maintenance Fee - Application - New Act 5 2012-11-29 $200.00 2012-10-31
Maintenance Fee - Application - New Act 6 2013-11-29 $200.00 2013-11-06
Maintenance Fee - Application - New Act 7 2014-12-01 $200.00 2014-11-04
Maintenance Fee - Application - New Act 8 2015-11-30 $200.00 2015-11-03
Registration of a document - section 124 $100.00 2015-12-03
Final Fee $300.00 2016-01-26
Maintenance Fee - Patent - New Act 9 2016-11-29 $200.00 2016-11-28
Maintenance Fee - Patent - New Act 10 2017-11-29 $250.00 2017-11-27
Maintenance Fee - Patent - New Act 11 2018-11-29 $250.00 2018-11-26
Maintenance Fee - Patent - New Act 12 2019-11-29 $250.00 2019-11-22
Maintenance Fee - Patent - New Act 13 2020-11-30 $250.00 2020-11-20
Maintenance Fee - Patent - New Act 14 2021-11-29 $255.00 2021-11-19
Maintenance Fee - Patent - New Act 15 2022-11-29 $458.08 2022-11-28
Maintenance Fee - Patent - New Act 16 2023-11-29 $473.65 2023-11-27
Owners on Record

Note: Records showing the ownership history in alphabetical order.

Current Owners on Record
THE BOEING COMPANY
Past Owners on Record
WINIG, ROBERT J.
Past Owners that do not appear in the "Owners on Record" listing will appear in other documentation within the application.
Documents

To view selected files, please enter reCAPTCHA code :



To view images, click a link in the Document Description column. To download the documents, select one or more checkboxes in the first column and then click the "Download Selected in PDF format (Zip Archive)" or the "Download Selected as Single PDF" button.

List of published and non-published patent-specific documents on the CPD .

If you have any difficulty accessing content, you can call the Client Service Centre at 1-866-997-1936 or send them an e-mail at CIPO Client Service Centre.


Document
Description 
Date
(yyyy-mm-dd) 
Number of pages   Size of Image (KB) 
Abstract 2009-04-06 1 23
Description 2009-04-06 10 409
Claims 2009-04-06 4 114
Drawings 2009-04-06 4 66
Description 2012-01-25 12 511
Claims 2012-01-25 4 112
Description 2013-03-06 12 502
Claims 2013-03-06 3 104
Representative Drawing 2012-08-17 1 6
Cover Page 2012-08-17 2 45
Description 2014-02-17 14 590
Claims 2014-02-17 6 196
Description 2015-03-23 12 487
Claims 2015-03-23 3 89
Representative Drawing 2016-02-19 1 5
Cover Page 2016-02-19 2 44
Assignment 2009-04-06 3 97
PCT 2009-04-06 6 156
Prosecution-Amendment 2011-07-26 2 64
Correspondence 2009-05-27 1 17
Correspondence 2010-03-11 2 56
Correspondence 2010-01-06 1 23
Prosecution-Amendment 2015-03-23 10 341
Prosecution-Amendment 2012-01-25 13 475
PCT 2012-08-17 1 61
Prosecution-Amendment 2012-09-07 3 109
Prosecution-Amendment 2013-03-06 12 470
Prosecution-Amendment 2014-09-23 3 129
Prosecution-Amendment 2013-10-03 3 103
Prosecution-Amendment 2014-02-17 16 652
Correspondence 2015-02-17 4 234
Final Fee 2016-01-26 2 66