diff --git a/openflow/barrier.go b/openflow/barrier.go
new file mode 100644
index 0000000..7b631fe
--- /dev/null
+++ b/openflow/barrier.go
@@ -0,0 +1,31 @@
+/*
+   Copyright 2017 the original author or authors.
+
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+        http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+*/
+
+package openflow
+
+import (
+	"encoding/json"
+	ofp "github.com/skydive-project/goloxi/of13"
+	"log"
+)
+
+func handleBarrierRequest(request *ofp.BarrierRequest, client *Client) {
+	jsonRequest, _ := json.Marshal(request)
+	log.Printf("handleBarrierRequest called with %s", jsonRequest)
+	reply := ofp.NewBarrierReply()
+	reply.SetXid(request.GetXid())
+	client.SendMessage(reply)
+}
