110 likes | 280 Views
Multicast architecture in Linux. Laurentiu Barza. Feb. 22, 2001. Conformance levels. Level 0: no support for multicast Level 1: sending, but not receiving Level 2: full support for IP multicasting. Linux multicast routing & forwarding. (4). Linux kernel. Forwarding. (3). (1). (2).
E N D
Multicast architecture in Linux Laurentiu Barza Feb. 22, 2001
Conformance levels • Level 0: no support for multicast • Level 1: sending, but not receiving • Level 2: full support for IP multicasting
Linux multicast routing & forwarding (4) Linux kernel Forwarding (3) (1) (2) Multicast routing algorithm Multicast routing table
Linux multicast programming int setsockopt (int s, int level, int optname, const void* optval, int optlen); int getsockopt (int s, int level, int optname, void* optval, int* optlen); s: the socket the system call applies to level: layer which handle the option optname: identifies the option we are setting/getting optval: the value taken by the option optlen: the size of data structure optval
Linux multicast programming The optname values involved in multicast programming: • IP_MULTICAST_IF set/get IP multicast interface. • IP_MULTICAST_TTL set/get IP multicast ttl • IP_MULTICAST_LOOP set/get IP multicast loopback • IP_ADD_MEMBERSHIP add an IP group membership • IP_DROP_MEMBERSHIP drop an IP group membership
Linux multicast programming- IGMPv3 specific options - • For some applications all the sources are accepted, for others only souces in a given list are allowed. • IP_BLOCK_SOURCE mute a specific source • IP_UNBLOCK_SOURCE un-mute the source • IP_ADD_SOURCE_MEMBERSHIP add a specific source • IP_DROP_SOURCE_MEMBERSHIP drop a specific souce • IP_DROP_MEMBERSHIP drop all sources • IP_MULTICAST_FILTER set multicast filter
MGEN test tool • IP network performance measurements using UDP/IP unicast and multicast traffic • generate real traffic patterns: periodic, poisson • possibility to control packet size and transmission rate, RSVP, TOS settings • fixed-parameter mode, script mode • distributed with utility programs: parses log files and outputs statistics
MGEN test scenarios • Unicast: source -> receiver • Multicast one-to-one • Multicast one-to-many: all the receivers in the same network • Multicast one to many: the receivers are in different networks
SSM current developments • IGMPv3 by Sprint • IGMPv3 lite by Cisco: • solution for application developers to immediately start programming SSM applications • URD host signaling • allows existing IP multicast receiver applications to be used with SSM without the need to modify the application
Future work • Context : the Internet is changing • Content Distribution Networks (CDN) = an overlay for the Internet • performance: lower latency • bandwidth arbitrage: push the content where the bandwidth is cheaper • flash crowd control: load balancing • bandwidth multiplication
Future work • Utilize multicast (SSM) in CDN networks user Main site (source) cache