diff --git a/python/google/protobuf/reflection.py b/python/google/protobuf/reflection.py
index 51c8332..05bafd6 100755
--- a/python/google/protobuf/reflection.py
+++ b/python/google/protobuf/reflection.py
@@ -61,6 +61,8 @@
 # Part of the public interface, but normally only used by message factories.
 GeneratedProtocolMessageType = message_impl.GeneratedProtocolMessageType
 
+MESSAGE_CLASS_CACHE = {}
+
 
 def ParseMessage(descriptor, byte_str):
   """Generate a new Message instance from this Descriptor and a byte string.
@@ -104,11 +106,16 @@
   Returns:
     The Message class object described by the descriptor.
   """
+  if descriptor in MESSAGE_CLASS_CACHE:
+      return MESSAGE_CLASS_CACHE[descriptor]
+
   attributes = {}
   for name, nested_type in descriptor.nested_types_by_name.items():
     attributes[name] = MakeClass(nested_type)
 
   attributes[GeneratedProtocolMessageType._DESCRIPTOR_KEY] = descriptor
 
-  return GeneratedProtocolMessageType(str(descriptor.name), (message.Message,),
+  result = GeneratedProtocolMessageType(str(descriptor.name), (message.Message,),
                                       attributes)
+  MESSAGE_CLASS_CACHE[descriptor] = result
+  return result
