diff --git a/core/api/src/main/java/org/onosproject/net/flow/instructions/L2ModificationInstruction.java b/core/api/src/main/java/org/onosproject/net/flow/instructions/L2ModificationInstruction.java
index 29b6f99..ff01639 100644
--- a/core/api/src/main/java/org/onosproject/net/flow/instructions/L2ModificationInstruction.java
+++ b/core/api/src/main/java/org/onosproject/net/flow/instructions/L2ModificationInstruction.java
@@ -333,20 +333,19 @@
             this.mplsLabel = mplsLabel;
         }
 
-        /**
-         * @deprecated in Drake Release.
-         * @return integer value of label
-         */
-        // Consider changing return value to MplsLabel
-        // after deprecation process so that it'll be symmetric to
-        // MplsCriterion#label()
-        @Deprecated
-        public Integer label() {
-            return mplsLabel.toInt();
+        public MplsLabel label() {
+            return mplsLabel;
         }
 
+        /**
+         * Extracts the MPLS label from the instruction.
+         *
+         * @return MPLS label
+         * @deprecated deprecated in 1.5.0 Falcon
+         */
+        @Deprecated
         public MplsLabel mplsLabel() {
-            return mplsLabel;
+            return label();
         }
 
         @Override
diff --git a/core/api/src/test/java/org/onosproject/net/flow/instructions/InstructionsTest.java b/core/api/src/test/java/org/onosproject/net/flow/instructions/InstructionsTest.java
index 28b015c..591a73b 100644
--- a/core/api/src/test/java/org/onosproject/net/flow/instructions/InstructionsTest.java
+++ b/core/api/src/test/java/org/onosproject/net/flow/instructions/InstructionsTest.java
@@ -636,7 +636,7 @@
                 checkAndConvert(instruction,
                         Instruction.Type.L2MODIFICATION,
                         L2ModificationInstruction.ModMplsLabelInstruction.class);
-        assertThat(modMplsLabelInstruction.mplsLabel(), is(equalTo(mplsLabel)));
+        assertThat(modMplsLabelInstruction.label(), is(equalTo(mplsLabel)));
         assertThat(modMplsLabelInstruction.subtype(),
                 is(equalTo(L2ModificationInstruction.L2SubType.MPLS_LABEL)));
     }
diff --git a/core/common/src/main/java/org/onosproject/codec/impl/EncodeInstructionCodecHelper.java b/core/common/src/main/java/org/onosproject/codec/impl/EncodeInstructionCodecHelper.java
index 268d110..5db7c6d 100644
--- a/core/common/src/main/java/org/onosproject/codec/impl/EncodeInstructionCodecHelper.java
+++ b/core/common/src/main/java/org/onosproject/codec/impl/EncodeInstructionCodecHelper.java
@@ -144,7 +144,7 @@
             case MPLS_LABEL:
                 final L2ModificationInstruction.ModMplsLabelInstruction modMplsLabelInstruction =
                         (L2ModificationInstruction.ModMplsLabelInstruction) instruction;
-                result.put(InstructionCodec.MPLS_LABEL, modMplsLabelInstruction.mplsLabel().toInt());
+                result.put(InstructionCodec.MPLS_LABEL, modMplsLabelInstruction.label().toInt());
                 break;
 
             case MPLS_PUSH:
diff --git a/core/common/src/test/java/org/onosproject/codec/impl/FlowRuleCodecTest.java b/core/common/src/test/java/org/onosproject/codec/impl/FlowRuleCodecTest.java
index c2f4ccf..2a5ba24 100644
--- a/core/common/src/test/java/org/onosproject/codec/impl/FlowRuleCodecTest.java
+++ b/core/common/src/test/java/org/onosproject/codec/impl/FlowRuleCodecTest.java
@@ -251,7 +251,7 @@
                 L2ModificationInstruction.L2SubType.MPLS_LABEL.name());
         assertThat(instruction.type(), is(Instruction.Type.L2MODIFICATION));
         assertThat(((L2ModificationInstruction.ModMplsLabelInstruction) instruction)
-                        .mplsLabel().toInt(),
+                        .label().toInt(),
                 is(MplsLabel.MAX_MPLS));
 
         instruction = getInstruction(Instruction.Type.L2MODIFICATION,
diff --git a/core/common/src/test/java/org/onosproject/codec/impl/InstructionJsonMatcher.java b/core/common/src/test/java/org/onosproject/codec/impl/InstructionJsonMatcher.java
index 9c0a318..a6871c8 100644
--- a/core/common/src/test/java/org/onosproject/codec/impl/InstructionJsonMatcher.java
+++ b/core/common/src/test/java/org/onosproject/codec/impl/InstructionJsonMatcher.java
@@ -428,7 +428,7 @@
         }
 
         final int jsonLabel = instructionJson.get("label").intValue();
-        final int label = instructionToMatch.mplsLabel().toInt();
+        final int label = instructionToMatch.label().toInt();
         if (label != jsonLabel) {
             description.appendText("MPLS label was " + jsonLabel);
             return false;
diff --git a/core/net/src/main/java/org/onosproject/net/flowobjective/impl/composition/FlowObjectiveCompositionUtil.java b/core/net/src/main/java/org/onosproject/net/flowobjective/impl/composition/FlowObjectiveCompositionUtil.java
index 0a1af6f..c552373 100644
--- a/core/net/src/main/java/org/onosproject/net/flowobjective/impl/composition/FlowObjectiveCompositionUtil.java
+++ b/core/net/src/main/java/org/onosproject/net/flowobjective/impl/composition/FlowObjectiveCompositionUtil.java
@@ -216,7 +216,7 @@
                                 } else {
                                     return null;
                                 }
-                            } 
+                            }
                         default:
                             break;
                     }
@@ -272,7 +272,7 @@
                         case MPLS_LABEL:
                             if (criterionMap.containsKey(Criterion.Type.MPLS_LABEL)) {
                                 if (((MplsCriterion) criterionMap.get((Criterion.Type.MPLS_LABEL))).label()
-                                        .equals(((L2ModificationInstruction.ModMplsLabelInstruction) l2).mplsLabel())) {
+                                        .equals(((L2ModificationInstruction.ModMplsLabelInstruction) l2).label())) {
                                     criterionMap.remove(Criterion.Type.ETH_DST);
                                 } else {
                                     return null;
diff --git a/drivers/default/src/main/java/org/onosproject/driver/pipeline/OFDPA2GroupHandler.java b/drivers/default/src/main/java/org/onosproject/driver/pipeline/OFDPA2GroupHandler.java
index 3c7394a..56433cf 100644
--- a/drivers/default/src/main/java/org/onosproject/driver/pipeline/OFDPA2GroupHandler.java
+++ b/drivers/default/src/main/java/org/onosproject/driver/pipeline/OFDPA2GroupHandler.java
@@ -698,7 +698,7 @@
                     }
                     if (l2ins.subtype() == L2ModificationInstruction.L2SubType.MPLS_LABEL) {
                         if (innermostLabel == null) {
-                            innermostLabel = ((L2ModificationInstruction.ModMplsLabelInstruction) l2ins).mplsLabel();
+                            innermostLabel = ((L2ModificationInstruction.ModMplsLabelInstruction) l2ins).label();
                         }
                     }
                 }
diff --git a/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/FlowModBuilderVer13.java b/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/FlowModBuilderVer13.java
index 8557f17..296f7e4 100644
--- a/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/FlowModBuilderVer13.java
+++ b/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/FlowModBuilderVer13.java
@@ -413,7 +413,7 @@
             case MPLS_LABEL:
                 ModMplsLabelInstruction mplsLabel =
                         (ModMplsLabelInstruction) l2m;
-                oxm = factory().oxms().mplsLabel(U32.of(mplsLabel.mplsLabel().toInt()));
+                oxm = factory().oxms().mplsLabel(U32.of(mplsLabel.label().toInt()));
                 break;
             case MPLS_BOS:
                 ModMplsBosInstruction mplsBos = (ModMplsBosInstruction) l2m;
diff --git a/providers/openflow/group/src/main/java/org/onosproject/provider/of/group/impl/GroupModBuilder.java b/providers/openflow/group/src/main/java/org/onosproject/provider/of/group/impl/GroupModBuilder.java
index 21982c3..d64d81b 100644
--- a/providers/openflow/group/src/main/java/org/onosproject/provider/of/group/impl/GroupModBuilder.java
+++ b/providers/openflow/group/src/main/java/org/onosproject/provider/of/group/impl/GroupModBuilder.java
@@ -336,7 +336,7 @@
             case MPLS_LABEL:
                 L2ModificationInstruction.ModMplsLabelInstruction mplsLabel =
                         (L2ModificationInstruction.ModMplsLabelInstruction) l2m;
-                oxm = factory.oxms().mplsLabel(U32.of(mplsLabel.mplsLabel().toInt()));
+                oxm = factory.oxms().mplsLabel(U32.of(mplsLabel.label().toInt()));
                 break;
             case MPLS_BOS:
                 L2ModificationInstruction.ModMplsBosInstruction mplsBos =
