tom | 0eb04ca | 2014-08-25 14:34:51 -0700 | [diff] [blame] | 1 | package org.onlab.onos.net.host; |
| 2 | |
Ayaka Koshibe | 74a2392 | 2014-09-09 16:45:39 -0700 | [diff] [blame^] | 3 | import java.util.Set; |
| 4 | |
| 5 | import org.onlab.onos.net.Description; |
| 6 | import org.onlab.onos.net.HostLocation; |
| 7 | import org.onlab.packet.IPv4; |
| 8 | import org.onlab.packet.MACAddress; |
| 9 | |
tom | 0eb04ca | 2014-08-25 14:34:51 -0700 | [diff] [blame] | 10 | /** |
| 11 | * Information describing host and its location. |
| 12 | */ |
Ayaka Koshibe | 74a2392 | 2014-09-09 16:45:39 -0700 | [diff] [blame^] | 13 | public interface HostDescription extends Description { |
tom | 0eb04ca | 2014-08-25 14:34:51 -0700 | [diff] [blame] | 14 | |
Ayaka Koshibe | 74a2392 | 2014-09-09 16:45:39 -0700 | [diff] [blame^] | 15 | /** |
| 16 | * Returns the MAC address associated with this host (NIC). |
| 17 | * |
| 18 | * @return the MAC address of this host |
| 19 | */ |
| 20 | MACAddress hwAddress(); |
| 21 | |
| 22 | /** |
| 23 | * Returns the VLAN associated with this host. |
| 24 | * |
| 25 | * @return the VLAN ID value |
| 26 | */ |
| 27 | short vlan(); |
| 28 | |
| 29 | /** |
| 30 | * Returns the location of the host on the network edge. |
| 31 | * |
| 32 | * @return the network location |
| 33 | */ |
| 34 | HostLocation location(); |
| 35 | |
| 36 | /** |
| 37 | * Returns zero or more IP address(es) associated with this host's MAC. |
| 38 | * |
| 39 | * @return a set of IP addresses. |
| 40 | */ |
| 41 | Set<IPv4> ipAddresses(); |
tom | 0eb04ca | 2014-08-25 14:34:51 -0700 | [diff] [blame] | 42 | |
| 43 | } |