Adding get port operation
diff --git a/openstack/networking/v2/ports/requests.go b/openstack/networking/v2/ports/requests.go
index f8e5620..672b904 100644
--- a/openstack/networking/v2/ports/requests.go
+++ b/openstack/networking/v2/ports/requests.go
@@ -3,6 +3,7 @@
 import (
 	"strconv"
 
+	"github.com/racker/perigee"
 	"github.com/rackspace/gophercloud"
 	"github.com/rackspace/gophercloud/openstack/utils"
 	"github.com/rackspace/gophercloud/pagination"
@@ -87,3 +88,18 @@
 		return PortPage{pagination.LinkedPageBase(r)}
 	})
 }
+
+func Get(c *gophercloud.ServiceClient, id string) (*Port, error) {
+	var p Port
+	_, err := perigee.Request("GET", GetURL(c, id), perigee.Options{
+		MoreHeaders: c.Provider.AuthenticatedHeaders(),
+		Results: &struct {
+			Port *Port `json:"port"`
+		}{&p},
+		OkCodes: []int{200},
+	})
+	if err != nil {
+		return nil, err
+	}
+	return &p, nil
+}