A multicast Transport that uses raw Ethernet II frames. More...
#include <multicast-ethernet-transport.hpp>


Public Member Functions | |
| MulticastEthernetTransport (const ndn::net::NetworkInterface &localEndpoint, const ethernet::Address &mcastAddress, ndn::nfd::LinkType linkType) | |
| Creates an Ethernet-based transport for multicast communication. More... | |
Public Member Functions inherited from nfd::face::EthernetTransport | |
| void | receivePayload (span< const uint8_t > payload, const ethernet::Address &sender) |
| Processes the payload of an incoming frame. More... | |
Public Member Functions inherited from nfd::face::Transport | |
| Transport () | |
| Default constructor. More... | |
| virtual | ~Transport () |
| void | setFaceAndLinkService (Face &face, LinkService &service) |
| set Face and LinkService for Transport More... | |
| const Face * | getFace () const |
| const LinkService * | getLinkService () const |
| LinkService * | getLinkService () |
| virtual const Counters & | getCounters () const |
| void | close () |
| Request the transport to be closed. More... | |
| void | send (const Block &packet) |
| Send a link-layer packet. More... | |
| FaceUri | getLocalUri () const |
| FaceUri | getRemoteUri () const |
| ndn::nfd::FaceScope | getScope () const |
| ndn::nfd::FacePersistency | getPersistency () const |
| bool | canChangePersistencyTo (ndn::nfd::FacePersistency newPersistency) const |
check whether the face persistency can be changed to newPersistency More... | |
| void | setPersistency (ndn::nfd::FacePersistency newPersistency) |
| changes face persistency setting More... | |
| ndn::nfd::LinkType | getLinkType () const |
| ssize_t | getMtu () const |
| ssize_t | getSendQueueCapacity () const |
| TransportState | getState () const |
| time::steady_clock::TimePoint | getExpirationTime () const |
| virtual ssize_t | getSendQueueLength () |
Additional Inherited Members | |
Public Types inherited from nfd::face::Transport | |
| using | Counters = TransportCounters |
| Counters provided by a transport. More... | |
Public Attributes inherited from nfd::face::Transport | |
| signal::Signal< Transport, TransportState, TransportState > | afterStateChange |
| signals when transport state changes More... | |
Protected Member Functions inherited from nfd::face::EthernetTransport | |
| EthernetTransport (const ndn::net::NetworkInterface &localEndpoint, const ethernet::Address &remoteEndpoint) | |
| void | doClose () final |
| performs Transport specific operations to close the transport More... | |
| bool | hasRecentlyReceived () const |
| void | resetRecentlyReceived () |
Protected Member Functions inherited from nfd::face::Transport | |
| void | receive (const Block &packet, const EndpointId &endpoint=0) |
| Pass a received link-layer packet to the upper layer for further processing. More... | |
| void | setLocalUri (const FaceUri &uri) |
| void | setRemoteUri (const FaceUri &uri) |
| void | setScope (ndn::nfd::FaceScope scope) |
| void | setLinkType (ndn::nfd::LinkType linkType) |
| void | setMtu (ssize_t mtu) |
| void | setSendQueueCapacity (ssize_t sendQueueCapacity) |
| void | setState (TransportState newState) |
| set transport state More... | |
| void | setExpirationTime (const time::steady_clock::TimePoint &expirationTime) |
| virtual bool | canChangePersistencyToImpl (ndn::nfd::FacePersistency newPersistency) const |
| invoked by canChangePersistencyTo to perform the check More... | |
| virtual void | afterChangePersistency (ndn::nfd::FacePersistency oldPersistency) |
| invoked after the persistency has been changed More... | |
Protected Attributes inherited from nfd::face::EthernetTransport | |
| boost::asio::posix::stream_descriptor | m_socket |
| PcapHelper | m_pcap |
| ethernet::Address | m_srcAddress |
| ethernet::Address | m_destAddress |
| std::string | m_interfaceName |
Protected Attributes inherited from nfd::face::TransportCounters | |
| PacketCounter | nInPackets |
| count of incoming packets More... | |
| PacketCounter | nOutPackets |
| count of outgoing packets More... | |
| ByteCounter | nInBytes |
| total incoming bytes More... | |
| ByteCounter | nOutBytes |
| total outgoing bytes More... | |
A multicast Transport that uses raw Ethernet II frames.
Definition at line 37 of file multicast-ethernet-transport.hpp.
| nfd::face::MulticastEthernetTransport::MulticastEthernetTransport | ( | const ndn::net::NetworkInterface & | localEndpoint, |
| const ethernet::Address & | mcastAddress, | ||
| ndn::nfd::LinkType | linkType | ||
| ) |
Creates an Ethernet-based transport for multicast communication.
Definition at line 51 of file multicast-ethernet-transport.cpp.
References ndn::ethernet::ADDR_LEN, ndn::ethernet::ETHERTYPE_NDN, ndn::nfd::FACE_PERSISTENCY_PERMANENT, ndn::nfd::FACE_SCOPE_NON_LOCAL, ndn::FaceUri::fromDev(), nfd::getGlobalIoService(), ndn::net::NetworkInterface::getMtu(), ndn::ethernet::Address::isBroadcast(), ndn::ethernet::Address::isMulticast(), nfd::face::EthernetTransport::m_destAddress, nfd::face::EthernetTransport::m_interfaceName, nfd::face::EthernetTransport::m_pcap, nfd::face::EthernetTransport::m_socket, nfd::face::EthernetTransport::m_srcAddress, NDN_THROW, NFD_LOG_FACE_DEBUG, NFD_LOG_FACE_WARN, nfd::face::Transport::setLinkType(), nfd::face::Transport::setLocalUri(), nfd::face::Transport::setMtu(), nfd::face::PcapHelper::setPacketFilter(), nfd::face::Transport::setPersistency(), nfd::face::Transport::setRemoteUri(), nfd::face::Transport::setScope(), websocketpp::transport::asio::socket::error::socket, and ndn::ethernet::Address::toString().