diff --git a/pkg/platform/platform.go b/pkg/platform/platform.go
index 688ccd8..0fe3956 100644
--- a/pkg/platform/platform.go
+++ b/pkg/platform/platform.go
@@ -100,8 +100,6 @@
 	TpRange = TpIDEnd - TpIDStart
 )
 
-var controllerPorts = []uint32{0xfffd, 0x7ffffffd, 0xfffffffd}
-
 //MkUniPortNum returns new UNIportNum based on intfID, inuID and uniID
 func MkUniPortNum(ctx context.Context, intfID, onuID, uniID uint32) uint32 {
 	var limit = int(intfID)
@@ -195,22 +193,15 @@
 
 //IsUpstream returns true for Upstream and false for downstream
 func IsUpstream(outPort uint32) bool {
-	for _, port := range controllerPorts {
-		if port == outPort {
-			return true
-		}
+	if IsControllerBoundFlow(outPort) {
+		return true
 	}
 	return (outPort & (1 << nniUniDiffPos)) == (1 << nniUniDiffPos)
 }
 
 //IsControllerBoundFlow returns true/false
 func IsControllerBoundFlow(outPort uint32) bool {
-	for _, port := range controllerPorts {
-		if port == outPort {
-			return true
-		}
-	}
-	return false
+	return outPort == uint32(ofp.OfpPortNo_OFPP_CONTROLLER)
 }
 
 //OnuIDFromUniPortNum returns onuId from give portNum information.
