SMART Multicast
Encyclopedia
SMART Multicast is an experimental method of Secure Reliable IP Multicast. It allows a user to forward IP datagrams to an unlimited group of receivers. See the article on multicast
Multicast
In computer networking, multicast is the delivery of a message or information to a group of destination computers simultaneously in a single transmission from the source creating copies automatically in other network elements, such as routers, only when the topology of the network requires...

 for a general discussion of this subject - this article is specifically about SMART IP Multicast.

SMART Multicast Uses

IP Multicast has been successfully deployed in private and controlled networking environments, for example; IP over fiber - cable TV operators, educational institutions with significant on-campus student housing and financial sector applications such as stock ticker
Stock Ticker
Stock Ticker is a now out of print board game that was popular upon its release and is still played today. It was released by Copp-Clark Publishing, a venerable Canadian publisher.-Game play:...

s and hoot-n-holler
Hoot-n-holler
Hoot-n-holler is a type of telecommunications system where you have a permanent open circuit between two or more parties. Anyone can speak at any time over a distance without having to pick up a phone or press a button...

 systems. However, IP multicast has been slow to be adopted in the interdomain routing environment. This is because the current interdomain infrastructure lacks the necessary tools to efficiently handle packet loss and the security needed to create a functional business model.

SMART IP Multicast is an experimental protocol that enables the interdomain transmission of Secure Reliable IP Multicast, thus overcoming the challenges of deploying wide area interdomain IP Multicast transmissions. SMART IP Multicast reduces the complexity of deploying wide area IP Multicast in the same way MFTP (Multicast File Transfer Protocol) accomplishes this goal for file transfer, namely allowing for security and reliability to have full interoperability.

IP Multicast file distribution has been the most successful use of IP Multicast within campus and commercial networks. For file distribution most have used some variant of the experimental protocol MFTP (Multicast File Transfer Protocol). MFTP is both secure and reliable and runs on top of IP Multicast protocol. Like MFTP, SMART Multicast is a wrapper that runs on top of IP Multicast, taking advantage of IP Multicast's efficiency. SMART Multicasts are secure, reliable and provide for bi-directional feedback.

For more info see RFC3170 - IP Multicast Applications: Challenges & Solutions

History and Milestones

SMART supports an MBONE
Mbone
Mbone was an experimental backbone for IP multicast traffic across the Internet developed in the early 1990s. It required specialized hardware and software...

 like implementation multicast between sites through the use of dynamically allocated Multicast tunnels. SMART takes advantage of SIMPLE (Self Implementing Multicast Protocol Level Escalation)

Experimental SMART Protocol Structure


Packet structure for SRM-P2MP

DATA PACKET Message TYP = 0x00 (binary 00)

ACCESS_SYNCH_CODE 8

PACKET_TYPE 2

CMD 2

RESERVED 4

PACKET SIZE 16

PACKET_NUMBER 16

PACKET FORMAT 2

DECRYPT_Y_N 1

QUIET 4

RESERVED 1

[...PAYLOAD]

0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Access Synch | TYP CMD RESRV| Packet Size |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Packet Sequence | FMT D QUIET R RESERVED |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Payload [1] |
+- -+
| ........... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
(6 bits 64 types)

MESSAGES Message TYP = 0x01 (binary 1)

ACCESS_SYNCH_CODE 8

PACKET_TYPE 2

CMD 6

PACKET_SIZE 16

[...PAYLOAD]

ADDR_RANGE CHANGE CMD = 01 (binary 000001)

0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Access Synch | TYP CMD | Packet Size |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Address [1] |
+- -+
| Address [2] |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

USAGE_REPORT_JOIN CMD = 0x0002 (binary 000010)

0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Access Synch | TYP CMD RESRV| Packet Size |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Address [1] |
+- -+
| Address [2] |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

USAGE_REPORT_LEAVE CMD = 0x0003 (binary 000011)

0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Access Synch | TYP CMD RESRV| Packet Size |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Address [1] |
+- -+
| Address [2] |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

ERROR_REPORT CMD = 0x000B (binary 001011)

0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Access Synch | TYP CMD RESRV| Packet Size |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reporting Address [1] |
+- -+
| Concerning Address [2] |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Message Data [1] |
+- -+
| Message Data [2] |
+- -+
| Message Data [3] |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

PROBLEM_REPORT CMD = 0x0010 Binary (010000)

0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Access Synch | TYP CMD RESRV| Packet Size |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reporting Address [1] |
+- -+
| Concerning Address [2] |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Message Data [1] |
+- -+
| Message Data [2] |
+- -+
| Message Data [3] |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
MESSAGES Message TYP = 0x02 (binary 10) Replacement Requests

ACCESS_SYNCH_CODE 8

PACKET_TYPE 2

CMD 6

PACKET_SIZE 16

[...PAYLOAD]

REPLACMENT CMD = 01 (binary 000001)


0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Access Synch | TYP CMD | Packet Size |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Multicast Address [1] |
+- -+
| Sequence # | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
QUIET = 0x0002 (binary 000010)

0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Access Synch | TYP CMD RESRV| Packet Size |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Multicast Address [1] |
+- -+
| Duration # | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

MESSAGES Message TYP = 0x03 (binary 11) Tunneling Requests

ACCESS_SYNCH_CODE 8

PACKET_TYPE 2

CMD 6

PACKET_SIZE 16

[...PAYLOAD]

REQUEST_TUNNEL CMD = 01 (binary 000001)

0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Access Synch | TYP CMD | Packet Size |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Address [1] |
+- -+
| Address [2] |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
LEAVE_TUNNEL = 0x0002 (binary 000010)

0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Access Synch | TYP CMD RESRV| Packet Size |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Address [1] |
+- -+
| Address [2] |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Addressing

There are four forms of IP addressing, each with its own unique properties.
  • Unicast
    Unicast
    right|200pxIn computer networking, unicast transmission is the sending of messages to a single network destination identified by a unique address.-Addressing methodologies:...

    : The most common concept of an IP address is a unicast address. It normally refers to a single sender or a single receiver.

  • Broadcast: Sending data to all possible destinations. For example, to send to all addresses within a network with the prefix 192.0.2, the directed broadcast IP address is 192.0.2.255.

  • Multicast
    Multicast
    In computer networking, multicast is the delivery of a message or information to a group of destination computers simultaneously in a single transmission from the source creating copies automatically in other network elements, such as routers, only when the topology of the network requires...

    : A multicast address is associated with a group of interested receivers. According to RFC 3171, addresses 224.0.0.0 to 239.255.255.255 are designated as multicast addresses. Routers take care of making copies of datagrams and sending them to all receivers that have registered their interest in receiving targeted data.

  • Anycast
    Anycast
    Anycast is a network addressing and routing methodology in which datagrams from a single sender are routed to the topologically nearest node in a group of potential receivers all identified by the same destination address.-Addressing methodologies:...

    : Like broadcast and multicast, anycast is a one-to-many routing topology. However, the data stream is not transmitted to all receivers, just the one which the router decides is the "closest" in the network. Anycast is useful for balancing data loads. It is used in DNS
    Domain name system
    The Domain Name System is a hierarchical distributed naming system for computers, services, or any resource connected to the Internet or a private network. It associates various information with domain names assigned to each of the participating entities...

     and UDP
    User Datagram Protocol
    The User Datagram Protocol is one of the core members of the Internet Protocol Suite, the set of network protocols used for the Internet. With UDP, computer applications can send messages, in this case referred to as datagrams, to other hosts on an Internet Protocol network without requiring...

    .

IP Multicast protocols

  • Internet Group Management Protocol
    Internet Group Management Protocol
    The Internet Group Management Protocol is a communications protocol used by hosts and adjacent routers on IP networks to establish multicast group memberships....

     (IGMP)
  • Protocol Independent Multicast
    Protocol Independent Multicast
    Protocol-Independent Multicast is a family of multicast routing protocols for Internet Protocol networks that provide one-to-many and many-to-many distribution of data over a LAN, WAN or the Internet...

     (PIM)
  • Distance Vector Multicast Routing Protocol
    Distance Vector Multicast Routing Protocol
    The Distance Vector Multicast Routing Protocol , defined in RFC 1075, is used to share information between routers to facilitate the transportation of IP Multicast packets among networks...

     (DVMRP)
  • Multicast BGP
    Multicast BGP
    Multiprotocol Extensions for BGP , sometimes referred to as Multiprotocol BGP or Multicast BGP and defined in IETF RFC 4760, is an extension to Border Gateway Protocol that allows different types of addresses to be distributed in parallel...

     (MBGP)
  • Multicast Source Discovery Protocol
    Multicast Source Discovery Protocol
    Multicast Source Discovery Protocol is a Protocol Independent Multicast family multicast routing protocol defined by Experimental RFC 3618. MSDP interconnects multiple IPv4 PIM Sparse-Mode domains which enables PIM-SM to have Rendezvous Point redundancy and inter-domain multicasting.MSDP uses...

     (MSDP)
  • Multicast Listener Discovery
    Multicast Listener Discovery
    Multicast Listener Discovery is a component of the Internet Protocol Version 6 suite. MLD is used by IPv6 routers for discovering multicast listeners on a directly attached link, much like IGMP is used in IPv4. The protocol is embedded in ICMPv6 instead of using a separate protocol. MLDv1 is...

     (MLD)
  • GARP Multicast Registration Protocol (GMRP)
  • Multicast DNS
    Multicast DNS
    Multicast DNS is a way of using familiar DNS programming interfaces, packet formats and operating , in a small network where no conventional DNS server has been installed....

     (mDNS)
  • SMART Multicast (SMART)

See also

  • dense multicast
    Dense multicast
    Dense mode multicast is one mode that multicast can use to construct a tree for sending packets to the multicast subscribers. It is the opposite of sparse multicast....

  • sparse multicast
    Sparse multicast
    Protocol Independent Multicast - Sparse-Mode is a protocol for efficiently routing Internet Protocol packets to multicast groups that may span wide-area and inter-domain internets...

  • source-specific multicast
    Source-specific multicast
    Source-specific multicast is a method of delivering multicast packets in which the only packets that are delivered to a receiver are those originating from a specific source address requested by the receiver...

  • core-based trees
    Core-based trees
    Core-Based Trees is a proposal for making IP Multicast scalable by constructing a tree of routers. It was first proposed in a paper by Ballardie, Francis, and Crowcroft. What differentiates it from other schemes for multicasting is that the routing tree comprises multiple "cores" . The...

  • Multicast address
    Multicast address
    A multicast address is a logical identifier for a group of hosts in a computer network, that are available to process datagrams or frames intended to be multicast for a designated network service...

  • Multicast
    Multicast
    In computer networking, multicast is the delivery of a message or information to a group of destination computers simultaneously in a single transmission from the source creating copies automatically in other network elements, such as routers, only when the topology of the network requires...

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK