310 likes | 528 Views
IP Multicasting Over ATM. 1998 년 10월 14일 정보통신 연구실 윤 하 영. Contents. IP unicast over ATM IP Multicasting ATM Mutipoint Service Under UNI 3.1 IP Multicasting Over ATM Networks. IP Unicast over ATM. Introduction. Supporting IP over ATM in a single logical IP subnet (LIS)
E N D
IP Multicasting Over ATM 1998년 10월 14일 정보통신 연구실 윤 하 영
Contents • IP unicast over ATM • IP Multicasting • ATM Mutipoint Service Under UNI 3.1 • IP Multicasting Over ATM Networks
Introduction • Supporting IP over ATM in a single logical IP subnet (LIS) • LIS is a group of IP hosts that share a common IP network number and subnet mask • ATM은 단지 data link layer protocol로 간주 • support unicast communications only • ATMARP resolves IP address to ATM address in LIS • The traditional IP model is unchanged
ATMARP • LIS의 각 member들은 다음의 정보를 가지고 있게 된다 • ATM hardware address-ATM address of IP host • ATMARP request address-ATM address of ATMARP server • ATMARP server • a special member of LIS • maintain a table or cache of IP and ATM address mappings • Registration-IP clients must first register their IP and ATM addresses with the ATMARP server
Multicast(1/2) • Definition • To transmit a message to a select group of recipients (“multicast group”) • Applications • Video/ telebroadcasts • Video/ telelectures • Video/ teleconferencing
Multicast (2/2) • The source transmits a single packet along the tree. • The packet is replicated by routers only at branch points of the tree. • Comparison with “multiple unicast” strategy • Sender have no knowledge of the group’s membership (--> scalable) • Efficient use of network resources
Multicast Address • IPv4 Class D address(multicast group address) • From 224.0.0.0 to 239.255.255.255
IGMP • Internet Group Management Protocol(IGMP) • Allow a host to inform its local router that it wishes to join a group • Routers periodically query the LAN • Report message/ Query message
Multicast Forwarding Tech’s • Simple-Minded Techniques • Flooding • Spanning Tree • Source-Based Tree Techniques • Reverse Path Broadcasting (RPB) • Truncated Reverse Path Broadcasting (TRPB) • Reverse Path Multicasting (RPM) • Shared-Tree Techniques
Multicast Routing Protocols • DVMRP(Distance Vector Multicast Routing Protocol) • MOSPF(Multicast Open Shortest Path First) • PIM(Protocol Independent Multicast) • Dense mode • Sparse mode • CBT(Core-Based Tree)
Sender Controlled Model • Source는 한개의 root node와 여러 개의 leaf node (receiver)로 구성된 unidirectional VC 설정 • Source는 각각의 leaf node에 대한 정보가 필요 • reserve the appropriate resources • ensure cell replication at switch where branching occurs • 데이터 전송 중에도 수신자의 자유로운 가입 탈퇴 보장
Why unidirectional?(1/3) • Bidirectional 구현의 어려움 때문에 현재 UNI 3.1에서는 unidirectional point-to-multi point VC만 제공 • need to associate incoming cells with specific AAL_SDU’s • AAL5 인 경우 - same VPI and VCI에서 도착한 Cell 인 경우 AAL_SDU’s sequence number가 interleave 되지 않는다고 가정 • AAL3/4 인 경우 - AAL_SDU에 unique한 multiplex ID(MID) 이용 • point-to-multipoint에서 reverse traffic이 있다고 가정하면 여러 개의 leaf node중 어디에서 보낸 cell인지 식별할 수 없다.
Why unidirectional?(2/3) • 해결책 • AAL3/4의 MID 이용 • 각각의 leaf node마다 고유의 MID를 배정 • 단점 - MID는 10bit로 표현되므로 leaf node의 수가 한정
Why unidirectional?(3/3) • AAL5를 이용하는 경우 • merge되는 swich에서 buffering • AAL_SDU가 완전히 도착하면 한꺼번에 전송 • 문제 - merge point에서도 sender identification문제 발생
Multipoint-to-Multipoint Service • 사용자 입장에서는 multipoint-to-multipoint service가 필요( ex) video lecture) • multipoint-to-multipoint is superset of point-to-multipoint • UNI 3.1 에서 제공하는 방법을 이용하여 emulating • multicast mesh vs multicast server • multicast mesh - 각각의 source들이 destination group에 대해 point-to-multipoint VC 구성 • multicast server - proxy group member로 행동하며 actual group member에 대해 point-to-multipoint VC 구성
Multicast mesh vs Multicast server • stability면에서는 multicast server가 좋다 • multicast server인 경우 reflected packet이 문제가 된다
Requirements • Provide a central registry that tracks which ATM addresses represent the current set of members to any given IP multicast group address • Provide a mechanism for IP/ATM endpoints to signal the central registry when they wish to join or leave an IP multicast group • Provide asynchronous updates to all relevant parties if and when changes to this registry occur • Allow for the use of multicast servers or VC meshes to support the traffic on particular IP multicast groups, in a manner transparent to each IP source
MARS • Multicast Address Resolution Server • Keep a table • {multicast group address, ATM addr 1, ATM addr 2,…, ATM addr N} • Cluster - a set of end points managed by a single MARS
MARS and MARS Clients(1/2) • MARS와 MARS Client사이에는 control message를 교환하기 위한 두 종류의 VC가 존재 • point-to-point VC : for query and response activity • ClusterControlVC : MARS Client를 leaf node로 갖는 point-to-multipoint VC • register MARS client • add it as a new leaf node of ClusterControlVC • MARS에 요청하여 해당 IP multicast address의multiple ATM addresses를 알아낸다 • MARS_REQUEST, MARS_MULTI message
MARS and MARS Client(2/2) • Multicast group management • MARS_JOIN, MARS_LEAVE message • modify the multicast group address table • propagate MARS_JOIN, MARS_LEAVE messages on ClusterControlVC - VC mesh를 이용하는 경우 forward path를 효과적으로 modify
VC Mesh • Default IP multicast groups are VC mesh based
Multicast Server(MCS)(1/2) • MARS는 host map과 server map을 동시에 갖는다 • VC mesh에 두 개의 VC 추가 • MARS와 MCS 간의 point-to-point VC • ServerControlVC - MARS와 MCS들 사이에 point-to-multipoint VC • MCS는 특정 IP multicast group을 지원한다는 것을 MARS에 register Host map {IP multicast group address, ATM addr 1, ATM addr 2, …, ATM addr n} Server map {IP multicast group address, MCS addr}
Multicast Server(MCS)(2/2) • Response to a MARS_REQUEST message • server map의 member인 경우 - return the contents of the host map • 그 외의 경우 - return the contents of the contents of the server map • MARS와 MCS의 관계는 MARS와 MARS Client와의 관계와 같다 • IP multicast group member의 변화에 대한 정보는 ServerControlVC를 통해 MCS에 알림
MCS or VC mesh • Given group need not be permanently based on VC mesh or an MCS • MCS to VC mesh • unregister MCS • fabricate a MARS_LEAVE message on ClusterControlVC to causes MARS clients to drop the MCS • source는 MARS에 다시 request message를 보냄 • VC mesh to MCS • MARS_MIGRATE message - force clients to drop all leaf nodes and a specific new one • register the MCS • MARS_MIGRATE message on ClusterControlVC • MARS Clientshut down their current VC and rebuild a VC with the MCS as the only leaf
Reflected Packet Problem • MCS 방식에서 source가 multicast group의 member인 경우 • need some mechanism for detecting these reflected packets and discarding them • extended encapsulation for packets being multicasted • add 16 bit cluster member ID(CMI) • MARS Client가 MARS에 register할 때 MARS에 의해 assign
그 외의 이슈들 • Hole Punching • when a block MARS_JOIN is issued, and the block covers a group that is MCS supported • Reliability • MARS message의 random loss를 조정하기 위해 ClusterControlVC를 통해 전송되는 메세지(MARS_JOIN, MARS_LEAVE)에는 CSN(cluster sequence number)를 ServerControlVC를 통해 전송되는 메세지(MARS_SJOIN, MARS_SLEAVE)에는 SSN(server sequence number)를 첨가해서 재전송을 할 수 있게 한다