Research Article

An SDN-Based Authentication Mechanism for Securing Neighbor Discovery Protocol in IPv6

Algorithm 1

procedure verification (packet-in,au-table,re-table)
extract information from packet-in
of the switch sent this packet-in
_OFB_IN_PORT ingress port
of the ICMPv6 packet}
  data field of
packet-in which contains the packet}
  exit
else
  sMAC≔header.sourceMAC
  sIPv6≔header.sourceIPv6
  dMAC≔header.destinationMAC
  dIPv6≔header.destinationIPv6
  if ([sMAC,sIPv6] exists in re-table)
   
  else if (sMAC exists in au-table)
   read entry [sMAC,ipv6,dpid,p] from au-table
   if ([sIPv6,DPID,port]==[ipv6,dpid,p])
     
   else if (sIPv6==0:0:0:0:0:0:0:0 && ipv6==null
    && [DPID,port]==[dpid,p])
     
   else
     
  else
     
comb≔[sMAC,sIPv6,dMAC,dIPv6,DPID,port]
if ()
  add_log ([sMAC,sIPv6,DPID,port])
execute forwarding (packet-in,comb,flag,re-table)