diff --git a/api/bbsim/bbsim.pb.go b/api/bbsim/bbsim.pb.go
index a4b6f11..e9b3f56 100644
--- a/api/bbsim/bbsim.pb.go
+++ b/api/bbsim/bbsim.pb.go
@@ -1100,6 +1100,7 @@
 type IgmpRequest struct {
 	OnuReq               *ONURequest    `protobuf:"bytes,1,opt,name=OnuReq,proto3" json:"OnuReq,omitempty"`
 	SubActionVal         SubActionTypes `protobuf:"varint,2,opt,name=SubActionVal,proto3,enum=bbsim.SubActionTypes" json:"SubActionVal,omitempty"`
+	GroupAddress         string         `protobuf:"bytes,3,opt,name=GroupAddress,proto3" json:"GroupAddress,omitempty"`
 	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
 	XXX_unrecognized     []byte         `json:"-"`
 	XXX_sizecache        int32          `json:"-"`
@@ -1144,6 +1145,13 @@
 	return SubActionTypes_JOIN
 }
 
+func (m *IgmpRequest) GetGroupAddress() string {
+	if m != nil {
+		return m.GroupAddress
+	}
+	return ""
+}
+
 type Flows struct {
 	FlowCount            uint32          `protobuf:"varint,1,opt,name=flow_count,json=flowCount,proto3" json:"flow_count,omitempty"`
 	Flows                []*openolt.Flow `protobuf:"bytes,2,rep,name=flows,proto3" json:"flows,omitempty"`
@@ -1290,105 +1298,106 @@
 func init() { proto.RegisterFile("api/bbsim/bbsim.proto", fileDescriptor_ef7750073d18011b) }
 
 var fileDescriptor_ef7750073d18011b = []byte{
-	// 1563 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x57, 0xdb, 0x52, 0xdb, 0xc6,
-	0x1b, 0xf7, 0x01, 0x9f, 0x3e, 0x63, 0x23, 0x36, 0x81, 0x78, 0x08, 0xff, 0x7f, 0x3c, 0x6a, 0xda,
-	0x21, 0x99, 0x86, 0x34, 0xd0, 0x43, 0x72, 0x29, 0x6c, 0xe1, 0xa8, 0x18, 0x49, 0xb3, 0xb2, 0xc9,
-	0xe4, 0x4a, 0x23, 0xec, 0x05, 0x3c, 0x23, 0x4b, 0x8e, 0xb4, 0x86, 0xe1, 0x01, 0xfa, 0x22, 0x7d,
-	0xa2, 0x3e, 0x41, 0xef, 0xda, 0xfb, 0x3e, 0x40, 0x67, 0x3a, 0xbb, 0x5a, 0xc9, 0x12, 0x36, 0x2d,
-	0xe9, 0x4d, 0x6f, 0x18, 0x7d, 0xbf, 0xef, 0x7c, 0xf0, 0xf7, 0x2d, 0xb0, 0xe5, 0xcc, 0x26, 0xaf,
-	0xcf, 0xcf, 0xc3, 0xc9, 0x34, 0xfa, 0xbb, 0x3f, 0x0b, 0x7c, 0xea, 0xa3, 0x12, 0x27, 0x76, 0x9e,
-	0x5e, 0xfb, 0x2e, 0xbd, 0x72, 0x6c, 0x0e, 0x86, 0xaf, 0xfd, 0x19, 0xf1, 0x7c, 0x97, 0x46, 0x32,
-	0x3b, 0xed, 0x2c, 0x93, 0x92, 0xd1, 0x15, 0xfb, 0xbe, 0x98, 0xb8, 0x24, 0x92, 0x90, 0x7f, 0x80,
-	0x8a, 0x69, 0xe8, 0xa6, 0x1f, 0x50, 0xd4, 0x84, 0x82, 0xd6, 0x6d, 0xe5, 0xdb, 0xf9, 0xbd, 0x12,
-	0x2e, 0x68, 0x5d, 0xb4, 0x0b, 0x35, 0x63, 0x46, 0x02, 0x8b, 0x3a, 0x94, 0xb4, 0x0a, 0xed, 0xfc,
-	0x5e, 0x0d, 0x2f, 0x00, 0xa6, 0xa8, 0xeb, 0xda, 0xbf, 0x50, 0xfc, 0x2d, 0x0f, 0x45, 0xc3, 0x5d,
-	0xd6, 0x92, 0x61, 0xdd, 0x22, 0xc1, 0xc4, 0x71, 0xf5, 0xf9, 0xf4, 0x9c, 0x04, 0x42, 0x31, 0x83,
-	0x65, 0x2d, 0x17, 0xef, 0x58, 0x46, 0xcf, 0xa1, 0xa1, 0x79, 0x94, 0x04, 0x9e, 0xe3, 0x46, 0x12,
-	0x6b, 0x5c, 0x22, 0x0b, 0x72, 0xbf, 0x66, 0xab, 0xc2, 0x59, 0x05, 0xcd, 0x44, 0x2f, 0xa1, 0x2a,
-	0x12, 0x09, 0x5b, 0xa5, 0x76, 0x71, 0xaf, 0x7e, 0xd0, 0xdc, 0x8f, 0xea, 0x2c, 0x60, 0x9c, 0xf0,
-	0x99, 0xac, 0xa8, 0x56, 0xd8, 0x2a, 0x67, 0x64, 0x05, 0x8c, 0x13, 0xbe, 0xfc, 0x27, 0xcb, 0x53,
-	0x1f, 0xfe, 0x67, 0x79, 0xee, 0x42, 0xcd, 0xf4, 0x3d, 0x16, 0x8b, 0xd6, 0x6d, 0x95, 0xb8, 0xfb,
-	0x05, 0xc0, 0xb8, 0xef, 0x6f, 0x94, 0xf1, 0x38, 0x20, 0x61, 0xd8, 0xaa, 0x46, 0x1e, 0x12, 0x00,
-	0x6d, 0x43, 0x99, 0xc9, 0xe9, 0x7e, 0xab, 0xc6, 0x15, 0x05, 0xc5, 0xf2, 0x0f, 0x49, 0x70, 0x3d,
-	0x19, 0x91, 0xb0, 0x05, 0x99, 0xfc, 0xad, 0x08, 0xc6, 0x09, 0x5f, 0xfe, 0xa3, 0x00, 0x15, 0x81,
-	0x22, 0x04, 0x6b, 0xba, 0x33, 0x25, 0xbc, 0x0a, 0x35, 0xcc, 0xbf, 0xb3, 0x11, 0x14, 0xee, 0x46,
-	0xf0, 0x18, 0x4a, 0x86, 0x37, 0xb7, 0x3c, 0x91, 0x7d, 0x44, 0x30, 0x3b, 0xd6, 0xc0, 0xb9, 0xe4,
-	0x09, 0x97, 0x30, 0xff, 0x66, 0x58, 0x87, 0x61, 0x51, 0x8a, 0xfc, 0x1b, 0xfd, 0x1f, 0x40, 0x27,
-	0x64, 0x1c, 0xaa, 0xce, 0xcc, 0x77, 0x5b, 0xe5, 0x76, 0x7e, 0xaf, 0x8a, 0x53, 0x08, 0xf3, 0xcd,
-	0xa9, 0xee, 0xd5, 0x68, 0xc6, 0x47, 0xa1, 0x8a, 0x17, 0x40, 0xc2, 0xd5, 0x2e, 0xa7, 0x33, 0x5e,
-	0x9b, 0x98, 0xcb, 0x00, 0xd4, 0x82, 0x4a, 0x8f, 0x4c, 0x59, 0x41, 0x44, 0x71, 0x62, 0x92, 0x79,
-	0xe5, 0xe6, 0xa3, 0xa6, 0x00, 0x0f, 0x3c, 0x85, 0x30, 0xbb, 0xcc, 0x7e, 0xc4, 0xae, 0x47, 0x19,
-	0x27, 0xc0, 0x72, 0x57, 0xd7, 0xef, 0xe9, 0xaa, 0xd6, 0x3b, 0x35, 0x23, 0x89, 0x46, 0x64, 0x23,
-	0x01, 0x64, 0x07, 0x1e, 0x1b, 0xfa, 0x70, 0x10, 0x38, 0x17, 0x17, 0x93, 0x91, 0x35, 0xba, 0x22,
-	0xe3, 0xb9, 0x4b, 0x82, 0x10, 0x69, 0xb0, 0x41, 0x19, 0xb8, 0x80, 0x78, 0x2b, 0xea, 0x07, 0xcf,
-	0xf6, 0x33, 0x3b, 0x61, 0x49, 0x13, 0xdf, 0xd5, 0x93, 0xf7, 0x60, 0xcd, 0xd0, 0x87, 0x21, 0x6a,
-	0x43, 0x69, 0x42, 0xc9, 0x94, 0x19, 0x62, 0x73, 0x00, 0x62, 0x0e, 0x0c, 0x7d, 0x88, 0x23, 0x86,
-	0xfc, 0x0d, 0x54, 0x45, 0xff, 0x43, 0xf4, 0x3c, 0x2b, 0x7d, 0x77, 0x6a, 0x12, 0x0d, 0x60, 0xfa,
-	0xe4, 0xd3, 0x9c, 0x84, 0x74, 0xe9, 0x87, 0x92, 0x5f, 0xfe, 0xa1, 0xc8, 0x2f, 0x01, 0x4c, 0x43,
-	0x8f, 0x35, 0x52, 0x23, 0x3f, 0xe6, 0xe2, 0x8d, 0xc5, 0xc8, 0x8f, 0xe5, 0x5f, 0x8b, 0x50, 0x53,
-	0x5c, 0x27, 0x98, 0x0e, 0x6e, 0x67, 0x44, 0xfe, 0xa5, 0x08, 0x25, 0xf6, 0x11, 0xa2, 0x0a, 0x14,
-	0xfb, 0x86, 0x25, 0xe5, 0x50, 0x13, 0xa0, 0xfb, 0x51, 0xd3, 0x7b, 0x76, 0x4f, 0xb1, 0x4c, 0x29,
-	0x8f, 0x1a, 0x50, 0x33, 0xf4, 0xa1, 0xad, 0xf4, 0x15, 0x7c, 0x2a, 0x15, 0xd0, 0x13, 0x78, 0xc4,
-	0x48, 0x6b, 0xa0, 0xe0, 0xc1, 0xd0, 0xb4, 0x8f, 0x15, 0xad, 0x3f, 0xc4, 0xaa, 0x54, 0x44, 0xdb,
-	0x80, 0x38, 0x43, 0xeb, 0xe9, 0x4a, 0xdf, 0xee, 0xaa, 0x3d, 0xac, 0x74, 0x55, 0x69, 0x2d, 0x56,
-	0xe8, 0x62, 0xed, 0x78, 0x60, 0x1b, 0xc7, 0xf6, 0x07, 0x4d, 0xef, 0x1a, 0x1f, 0xa4, 0x12, 0xda,
-	0x85, 0x16, 0x63, 0xf4, 0x0d, 0xcb, 0x62, 0xb8, 0x71, 0xda, 0xd1, 0xec, 0xce, 0x7b, 0x45, 0xd7,
-	0xd5, 0xbe, 0x54, 0x4e, 0xfc, 0x70, 0x73, 0x56, 0xe2, 0xa7, 0x82, 0x5e, 0xc0, 0x97, 0x8c, 0x31,
-	0xc0, 0x8a, 0x6e, 0x9d, 0x6a, 0x96, 0xa5, 0x19, 0xba, 0xad, 0xe9, 0x03, 0x15, 0x1f, 0xab, 0x58,
-	0xd5, 0x3b, 0xaa, 0xfd, 0x41, 0xc1, 0xba, 0xa6, 0xf7, 0xa4, 0x2a, 0xda, 0x81, 0x6d, 0x1e, 0x7a,
-	0x67, 0xa0, 0x9d, 0x29, 0x03, 0x26, 0x18, 0x9b, 0xa9, 0xa1, 0x16, 0x1f, 0x12, 0xdb, 0xc4, 0x46,
-	0x47, 0xb5, 0x2c, 0x96, 0xaf, 0x8a, 0xb1, 0x81, 0x25, 0x40, 0x6d, 0xd8, 0x4d, 0xc7, 0x75, 0xa2,
-	0x7e, 0xb4, 0xad, 0x8f, 0x7a, 0x27, 0xd1, 0xad, 0xa3, 0x2d, 0xd8, 0x64, 0x12, 0xda, 0x60, 0x68,
-	0x9b, 0x86, 0xce, 0x6a, 0x31, 0xb0, 0xa4, 0x75, 0xb4, 0x09, 0x8d, 0xa4, 0x52, 0x4c, 0x5d, 0x6a,
-	0xdc, 0x85, 0x8e, 0xa4, 0x66, 0x9c, 0x58, 0x0c, 0x99, 0x1d, 0x9b, 0x65, 0x21, 0x6d, 0xc4, 0xf5,
-	0xc8, 0x30, 0x3a, 0x22, 0x2a, 0x09, 0x21, 0x68, 0xa6, 0xb9, 0xc7, 0x9a, 0xb4, 0x89, 0x1e, 0xc1,
-	0x46, 0x1a, 0x53, 0x4e, 0x35, 0x09, 0xc9, 0x6f, 0xa1, 0xc9, 0xfb, 0x6b, 0x3a, 0x81, 0x33, 0x25,
-	0x94, 0x04, 0x48, 0x82, 0xe2, 0x09, 0xb9, 0x15, 0x93, 0xc3, 0x3e, 0xd9, 0x5e, 0x39, 0x73, 0xdc,
-	0x79, 0x7c, 0x97, 0x22, 0x42, 0xfe, 0x39, 0xcf, 0xed, 0x71, 0xed, 0xd4, 0x30, 0x25, 0xd3, 0x22,
-	0x2c, 0x2c, 0x80, 0x07, 0x6d, 0xf1, 0x6d, 0x28, 0xb3, 0x9f, 0xe5, 0x3c, 0x14, 0x4b, 0x4c, 0x50,
-	0xe8, 0x3b, 0x80, 0x24, 0xc4, 0xb0, 0xb5, 0xc6, 0x7f, 0x11, 0x5b, 0xe2, 0x17, 0x91, 0x4d, 0x00,
-	0xa7, 0x04, 0xe5, 0x4f, 0xb0, 0x61, 0xf4, 0x07, 0x99, 0x18, 0xdb, 0x50, 0xe7, 0xeb, 0xe1, 0xc2,
-	0x19, 0x11, 0x71, 0x64, 0x1a, 0x38, 0x0d, 0x25, 0x5b, 0x85, 0x91, 0x3c, 0x93, 0x42, 0x6a, 0xab,
-	0xc4, 0xe0, 0x7d, 0x91, 0xca, 0x3f, 0xe5, 0xa1, 0x71, 0x46, 0x82, 0x70, 0xe2, 0x7b, 0x22, 0xa7,
-	0x16, 0x54, 0xae, 0x23, 0x40, 0xd4, 0x24, 0x26, 0x59, 0xbd, 0xce, 0xe7, 0x13, 0x77, 0x3c, 0x98,
-	0x4c, 0x93, 0xab, 0x9f, 0x00, 0x6c, 0x37, 0x8e, 0xfc, 0xe9, 0x74, 0x42, 0xdf, 0x3b, 0xe1, 0x95,
-	0xf0, 0x92, 0x42, 0x98, 0xf6, 0xe5, 0x84, 0x8a, 0x20, 0xa2, 0x7b, 0xb6, 0x00, 0xe4, 0xb7, 0x50,
-	0xed, 0xfb, 0x97, 0x7d, 0x72, 0x4d, 0x5c, 0xd6, 0x41, 0x97, 0x7d, 0x08, 0xff, 0x11, 0xc1, 0x32,
-	0x18, 0x39, 0xae, 0x2b, 0x3a, 0x51, 0xc5, 0x82, 0x92, 0x55, 0xa8, 0x62, 0x12, 0xce, 0x7c, 0x2f,
-	0x24, 0xe8, 0x19, 0xd4, 0x43, 0x6e, 0xcf, 0x1e, 0xf9, 0x63, 0x22, 0x4e, 0x32, 0x44, 0x50, 0xc7,
-	0x1f, 0x13, 0x96, 0xdc, 0x94, 0x84, 0xa1, 0x73, 0x19, 0x27, 0x10, 0x93, 0x72, 0x08, 0x75, 0xb6,
-	0xfc, 0xe3, 0xba, 0xbf, 0x80, 0xb2, 0xe1, 0xcd, 0x31, 0xf9, 0x24, 0xd6, 0xe8, 0x66, 0x6a, 0xfb,
-	0x45, 0x22, 0x58, 0x08, 0xa0, 0x77, 0xb0, 0x6e, 0xcd, 0xcf, 0x95, 0x11, 0x9d, 0xf8, 0xde, 0x99,
-	0xe3, 0x72, 0xc3, 0xcd, 0xa4, 0xdd, 0x09, 0x8b, 0xaf, 0x22, 0x9c, 0x11, 0x95, 0x4f, 0xa0, 0x74,
-	0xec, 0xfa, 0x37, 0x21, 0xfa, 0x1f, 0xc0, 0x85, 0xeb, 0xdf, 0xd8, 0x23, 0x7f, 0xee, 0xd1, 0x78,
-	0xb1, 0x31, 0xa4, 0xc3, 0x00, 0xf4, 0x05, 0x94, 0x18, 0xc1, 0xae, 0x28, 0x1b, 0xa5, 0xc6, 0x7e,
-	0xfc, 0x08, 0x64, 0xda, 0x38, 0xe2, 0xc9, 0xcf, 0xa0, 0xc2, 0x1a, 0xe1, 0xcf, 0x29, 0xab, 0xe0,
-	0x98, 0xb8, 0xce, 0xad, 0xb0, 0x14, 0x11, 0x72, 0x05, 0x4a, 0xea, 0x74, 0x46, 0x6f, 0x5f, 0xbe,
-	0x81, 0x66, 0x36, 0x2c, 0x54, 0x85, 0xb5, 0x1f, 0x0d, 0x4d, 0x97, 0x72, 0xa8, 0x06, 0xa5, 0xbe,
-	0xaa, 0x9c, 0xa9, 0x52, 0x1e, 0x01, 0x94, 0x19, 0x78, 0x76, 0x28, 0x15, 0x0e, 0x7e, 0x07, 0x28,
-	0x1d, 0x1d, 0x59, 0x93, 0x29, 0x7a, 0x0d, 0x15, 0x31, 0x30, 0x68, 0x5d, 0xe4, 0xc8, 0xad, 0xee,
-	0x3c, 0x16, 0x54, 0x66, 0x9c, 0xe4, 0x1c, 0x7a, 0x03, 0x75, 0x8b, 0xd0, 0xa4, 0xbb, 0x1b, 0x42,
-	0x2c, 0x06, 0x76, 0xee, 0x02, 0x72, 0x0e, 0x3d, 0x87, 0x72, 0x8f, 0x50, 0xf6, 0x86, 0xcc, 0xba,
-	0x48, 0x6e, 0x90, 0x4b, 0xe5, 0x1c, 0x7a, 0x05, 0x60, 0xfa, 0x37, 0x24, 0xf0, 0xbd, 0x65, 0xc9,
-	0xd8, 0x68, 0x3c, 0x1a, 0x72, 0x0e, 0xed, 0x43, 0xdd, 0xba, 0x9a, 0xd3, 0xb1, 0x7f, 0xf3, 0x30,
-	0xf9, 0xaf, 0xa1, 0x86, 0xc9, 0xb9, 0xef, 0xd3, 0x07, 0x49, 0xb3, 0x9a, 0x52, 0x7f, 0x76, 0x89,
-	0xcd, 0x0e, 0xbb, 0x79, 0x24, 0xf8, 0x67, 0x95, 0x03, 0xd8, 0xb0, 0xa8, 0x13, 0xd0, 0xcf, 0xd1,
-	0xf9, 0x1e, 0x36, 0x31, 0x09, 0xef, 0x68, 0xc5, 0xc7, 0x56, 0xb4, 0x7f, 0x95, 0xde, 0x8b, 0xa8,
-	0xa2, 0xfa, 0x10, 0x2d, 0x4f, 0xf2, 0x4e, 0xea, 0xb4, 0xcb, 0x39, 0xf4, 0x15, 0x7b, 0xfe, 0x50,
-	0xfe, 0x04, 0xc8, 0x86, 0x53, 0x5f, 0x88, 0x85, 0x51, 0x3d, 0x7b, 0x84, 0x26, 0x0f, 0x80, 0xd5,
-	0xa1, 0xc7, 0x6c, 0x1e, 0x7a, 0x93, 0xd9, 0xf5, 0xe6, 0x89, 0xca, 0x8a, 0x50, 0x56, 0xe8, 0x1d,
-	0xa6, 0xfa, 0xb6, 0x3a, 0xfe, 0x7b, 0x6a, 0x2b, 0x94, 0x14, 0xd7, 0x5d, 0x91, 0xcc, 0x0a, 0x9d,
-	0x77, 0xb0, 0x99, 0x72, 0x14, 0x1a, 0x9e, 0x69, 0xe8, 0x89, 0xbb, 0xc5, 0x23, 0x64, 0xb5, 0xbb,
-	0x64, 0x14, 0x1f, 0x1c, 0xe2, 0x1b, 0x68, 0x0a, 0x9d, 0x07, 0x47, 0xf8, 0x16, 0xa4, 0x85, 0x9b,
-	0xcf, 0x0a, 0xf0, 0x5b, 0x58, 0x17, 0x73, 0x13, 0xbd, 0x8f, 0x1f, 0x16, 0xe2, 0x21, 0xd4, 0x85,
-	0x16, 0x7f, 0x36, 0x3f, 0x4c, 0xe9, 0x08, 0xb6, 0x2c, 0xde, 0x67, 0x7e, 0xc8, 0x34, 0x6f, 0x3c,
-	0x19, 0x39, 0x6c, 0xd3, 0xa0, 0xed, 0x85, 0x7a, 0xfa, 0xc6, 0xfd, 0x8d, 0x0d, 0x97, 0xde, 0x6b,
-	0x23, 0x7b, 0x27, 0x57, 0xd9, 0x78, 0x05, 0xd5, 0x1e, 0xa1, 0xd1, 0x7e, 0x5d, 0x11, 0x79, 0x5c,
-	0x6c, 0x2e, 0xc0, 0x6b, 0xbb, 0xd1, 0xb9, 0x72, 0xbc, 0x4b, 0xc2, 0xce, 0x40, 0xf4, 0x14, 0x47,
-	0x42, 0x24, 0x75, 0x18, 0x56, 0x39, 0x3a, 0x81, 0x27, 0xd1, 0x60, 0x2f, 0x3f, 0xcb, 0x57, 0xf8,
-	0x7d, 0xba, 0x80, 0x96, 0xe4, 0xe5, 0xdc, 0x79, 0x99, 0xff, 0xd7, 0x7e, 0xf8, 0x57, 0x00, 0x00,
-	0x00, 0xff, 0xff, 0xc4, 0x09, 0x64, 0x71, 0x14, 0x10, 0x00, 0x00,
+	// 1579 bytes of a gzipped FileDescriptorProto
+	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xc4, 0x57, 0xcb, 0x6e, 0xdb, 0x46,
+	0x17, 0xd6, 0xc5, 0xba, 0x1d, 0x59, 0x32, 0x3d, 0x89, 0x1d, 0xc1, 0xf1, 0xff, 0x47, 0xe0, 0x9f,
+	0xbf, 0x70, 0x82, 0xc6, 0x69, 0xec, 0x5e, 0x92, 0x25, 0x2d, 0xd1, 0x0a, 0x6b, 0x99, 0x24, 0x86,
+	0x92, 0x83, 0xac, 0x08, 0x5a, 0x1a, 0xdb, 0x02, 0x28, 0x52, 0x21, 0x29, 0x1b, 0x7e, 0x80, 0x3e,
+	0x43, 0xf7, 0x7d, 0xa2, 0x3e, 0x41, 0x77, 0xed, 0xbe, 0x0f, 0x50, 0xa0, 0x98, 0x0b, 0x29, 0xd2,
+	0x92, 0x5b, 0xa7, 0x9b, 0x6e, 0x84, 0x39, 0xdf, 0xb9, 0x9f, 0x39, 0x3c, 0x67, 0x04, 0x5b, 0xce,
+	0x6c, 0xf2, 0xfa, 0xfc, 0x3c, 0x9c, 0x4c, 0xf9, 0xef, 0xfe, 0x2c, 0xf0, 0x23, 0x1f, 0x95, 0x18,
+	0xb1, 0xf3, 0xf4, 0xda, 0x77, 0xa3, 0x2b, 0xc7, 0x66, 0x60, 0xf8, 0xda, 0x9f, 0x11, 0xcf, 0x77,
+	0x23, 0x2e, 0xb3, 0xd3, 0xce, 0x32, 0x23, 0x32, 0xba, 0xa2, 0xe7, 0x8b, 0x89, 0x4b, 0xb8, 0x84,
+	0xfc, 0x1d, 0x54, 0x4c, 0x43, 0x37, 0xfd, 0x20, 0x42, 0x4d, 0x28, 0x68, 0xdd, 0x56, 0xbe, 0x9d,
+	0xdf, 0x2b, 0xe1, 0x82, 0xd6, 0x45, 0xbb, 0x50, 0x33, 0x66, 0x24, 0xb0, 0x22, 0x27, 0x22, 0xad,
+	0x42, 0x3b, 0xbf, 0x57, 0xc3, 0x0b, 0x80, 0x2a, 0xea, 0xba, 0xf6, 0x0f, 0x14, 0x7f, 0xcd, 0x43,
+	0xd1, 0x70, 0x97, 0xb5, 0x64, 0x58, 0xb7, 0x48, 0x30, 0x71, 0x5c, 0x7d, 0x3e, 0x3d, 0x27, 0x81,
+	0x50, 0xcc, 0x60, 0x59, 0xcb, 0xc5, 0x3b, 0x96, 0xd1, 0x73, 0x68, 0x68, 0x5e, 0x44, 0x02, 0xcf,
+	0x71, 0xb9, 0xc4, 0x1a, 0x93, 0xc8, 0x82, 0xcc, 0xaf, 0xd9, 0xaa, 0x30, 0x56, 0x41, 0x33, 0xd1,
+	0x4b, 0xa8, 0x8a, 0x44, 0xc2, 0x56, 0xa9, 0x5d, 0xdc, 0xab, 0x1f, 0x34, 0xf7, 0x79, 0x9d, 0x05,
+	0x8c, 0x13, 0x3e, 0x95, 0x15, 0xd5, 0x0a, 0x5b, 0xe5, 0x8c, 0xac, 0x80, 0x71, 0xc2, 0x97, 0xff,
+	0xa0, 0x79, 0xea, 0xc3, 0x7f, 0x2d, 0xcf, 0x5d, 0xa8, 0x99, 0xbe, 0x47, 0x63, 0xd1, 0xba, 0xad,
+	0x12, 0x73, 0xbf, 0x00, 0x28, 0xf7, 0xfd, 0x8d, 0x32, 0x1e, 0x07, 0x24, 0x0c, 0x5b, 0x55, 0xee,
+	0x21, 0x01, 0xd0, 0x36, 0x94, 0xa9, 0x9c, 0xee, 0xb7, 0x6a, 0x4c, 0x51, 0x50, 0x34, 0xff, 0x90,
+	0x04, 0xd7, 0x93, 0x11, 0x09, 0x5b, 0x90, 0xc9, 0xdf, 0xe2, 0x30, 0x4e, 0xf8, 0xf2, 0xef, 0x05,
+	0xa8, 0x08, 0x14, 0x21, 0x58, 0xd3, 0x9d, 0x29, 0x61, 0x55, 0xa8, 0x61, 0x76, 0xce, 0x46, 0x50,
+	0xb8, 0x1b, 0xc1, 0x63, 0x28, 0x19, 0xde, 0xdc, 0xf2, 0x44, 0xf6, 0x9c, 0xa0, 0x76, 0xac, 0x81,
+	0x73, 0xc9, 0x12, 0x2e, 0x61, 0x76, 0xa6, 0x58, 0x87, 0x62, 0x3c, 0x45, 0x76, 0x46, 0xff, 0x05,
+	0xd0, 0x09, 0x19, 0x87, 0xaa, 0x33, 0xf3, 0xdd, 0x56, 0xb9, 0x9d, 0xdf, 0xab, 0xe2, 0x14, 0x42,
+	0x7d, 0x33, 0xaa, 0x7b, 0x35, 0x9a, 0xb1, 0x56, 0xa8, 0xe2, 0x05, 0x90, 0x70, 0xb5, 0xcb, 0xe9,
+	0x8c, 0xd5, 0x26, 0xe6, 0x52, 0x00, 0xb5, 0xa0, 0xd2, 0x23, 0x53, 0x5a, 0x10, 0x51, 0x9c, 0x98,
+	0xa4, 0x5e, 0x99, 0x79, 0x7e, 0x29, 0xc0, 0x02, 0x4f, 0x21, 0xd4, 0x2e, 0xb5, 0xcf, 0xd9, 0x75,
+	0x9e, 0x71, 0x02, 0x2c, 0xdf, 0xea, 0xfa, 0x3d, 0xb7, 0xaa, 0xf5, 0x4e, 0x4d, 0x2e, 0xd1, 0xe0,
+	0x36, 0x12, 0x40, 0x76, 0xe0, 0xb1, 0xa1, 0x0f, 0x07, 0x81, 0x73, 0x71, 0x31, 0x19, 0x59, 0xa3,
+	0x2b, 0x32, 0x9e, 0xbb, 0x24, 0x08, 0x91, 0x06, 0x1b, 0x11, 0x05, 0x17, 0x10, 0xbb, 0x8a, 0xfa,
+	0xc1, 0xb3, 0xfd, 0xcc, 0x4c, 0x58, 0xd2, 0xc4, 0x77, 0xf5, 0xe4, 0x3d, 0x58, 0x33, 0xf4, 0x61,
+	0x88, 0xda, 0x50, 0x9a, 0x44, 0x64, 0x4a, 0x0d, 0xd1, 0x3e, 0x00, 0xd1, 0x07, 0x86, 0x3e, 0xc4,
+	0x9c, 0x21, 0x7f, 0x05, 0x55, 0x71, 0xff, 0x21, 0x7a, 0x9e, 0x95, 0xbe, 0xdb, 0x35, 0x89, 0x06,
+	0x50, 0x7d, 0xf2, 0x69, 0x4e, 0xc2, 0x68, 0xe9, 0x43, 0xc9, 0x2f, 0x7f, 0x28, 0xf2, 0x4b, 0x00,
+	0xd3, 0xd0, 0x63, 0x8d, 0x54, 0xcb, 0x8f, 0x99, 0x78, 0x63, 0xd1, 0xf2, 0x63, 0xf9, 0x97, 0x22,
+	0xd4, 0x14, 0xd7, 0x09, 0xa6, 0x83, 0xdb, 0x19, 0x91, 0x7f, 0x2e, 0x42, 0x89, 0x1e, 0x42, 0x54,
+	0x81, 0x62, 0xdf, 0xb0, 0xa4, 0x1c, 0x6a, 0x02, 0x74, 0x3f, 0x6a, 0x7a, 0xcf, 0xee, 0x29, 0x96,
+	0x29, 0xe5, 0x51, 0x03, 0x6a, 0x86, 0x3e, 0xb4, 0x95, 0xbe, 0x82, 0x4f, 0xa5, 0x02, 0x7a, 0x02,
+	0x8f, 0x28, 0x69, 0x0d, 0x14, 0x3c, 0x18, 0x9a, 0xf6, 0xb1, 0xa2, 0xf5, 0x87, 0x58, 0x95, 0x8a,
+	0x68, 0x1b, 0x10, 0x63, 0x68, 0x3d, 0x5d, 0xe9, 0xdb, 0x5d, 0xb5, 0x87, 0x95, 0xae, 0x2a, 0xad,
+	0xc5, 0x0a, 0x5d, 0xac, 0x1d, 0x0f, 0x6c, 0xe3, 0xd8, 0xfe, 0xa0, 0xe9, 0x5d, 0xe3, 0x83, 0x54,
+	0x42, 0xbb, 0xd0, 0xa2, 0x8c, 0xbe, 0x61, 0x59, 0x14, 0x37, 0x4e, 0x3b, 0x9a, 0xdd, 0x79, 0xaf,
+	0xe8, 0xba, 0xda, 0x97, 0xca, 0x89, 0x1f, 0x66, 0xce, 0x4a, 0xfc, 0x54, 0xd0, 0x0b, 0xf8, 0x3f,
+	0x65, 0x0c, 0xb0, 0xa2, 0x5b, 0xa7, 0x9a, 0x65, 0x69, 0x86, 0x6e, 0x6b, 0xfa, 0x40, 0xc5, 0xc7,
+	0x2a, 0x56, 0xf5, 0x8e, 0x6a, 0x7f, 0x50, 0xb0, 0xae, 0xe9, 0x3d, 0xa9, 0x8a, 0x76, 0x60, 0x9b,
+	0x85, 0xde, 0x19, 0x68, 0x67, 0xca, 0x80, 0x0a, 0xc6, 0x66, 0x6a, 0xa8, 0xc5, 0x9a, 0xc4, 0x36,
+	0xb1, 0xd1, 0x51, 0x2d, 0x8b, 0xe6, 0xab, 0x62, 0x6c, 0x60, 0x09, 0x50, 0x1b, 0x76, 0xd3, 0x71,
+	0x9d, 0xa8, 0x1f, 0x6d, 0xeb, 0xa3, 0xde, 0x49, 0x74, 0xeb, 0x68, 0x0b, 0x36, 0xa9, 0x84, 0x36,
+	0x18, 0xda, 0xa6, 0xa1, 0xd3, 0x5a, 0x0c, 0x2c, 0x69, 0x1d, 0x6d, 0x42, 0x23, 0xa9, 0x14, 0x55,
+	0x97, 0x1a, 0x77, 0xa1, 0x23, 0xa9, 0x19, 0x27, 0x16, 0x43, 0x66, 0xc7, 0xa6, 0x59, 0x48, 0x1b,
+	0x71, 0x3d, 0x32, 0x8c, 0x8e, 0x88, 0x4a, 0x42, 0x08, 0x9a, 0x69, 0xee, 0xb1, 0x26, 0x6d, 0xa2,
+	0x47, 0xb0, 0x91, 0xc6, 0x94, 0x53, 0x4d, 0x42, 0xf2, 0x5b, 0x68, 0xb2, 0xfb, 0x35, 0x9d, 0xc0,
+	0x99, 0x92, 0x88, 0x04, 0x48, 0x82, 0xe2, 0x09, 0xb9, 0x15, 0x9d, 0x43, 0x8f, 0x74, 0xae, 0x9c,
+	0x39, 0xee, 0x3c, 0xde, 0x4b, 0x9c, 0x90, 0x7f, 0xca, 0x33, 0x7b, 0x4c, 0x3b, 0xd5, 0x4c, 0x49,
+	0xb7, 0x08, 0x0b, 0x0b, 0xe0, 0x41, 0x53, 0x7c, 0x1b, 0xca, 0xf4, 0xb3, 0x9c, 0x87, 0x62, 0x88,
+	0x09, 0x0a, 0x7d, 0x03, 0x90, 0x84, 0x18, 0xb6, 0xd6, 0xd8, 0x17, 0xb1, 0x25, 0xbe, 0x88, 0x6c,
+	0x02, 0x38, 0x25, 0x28, 0x7f, 0x82, 0x0d, 0xa3, 0x3f, 0xc8, 0xc4, 0xd8, 0x86, 0x3a, 0x1b, 0x0f,
+	0x17, 0xce, 0x88, 0x88, 0x25, 0xd3, 0xc0, 0x69, 0x28, 0x99, 0x2a, 0x94, 0x64, 0x99, 0x14, 0x52,
+	0x53, 0x25, 0x06, 0xef, 0x8b, 0x54, 0xfe, 0x21, 0x0f, 0x8d, 0x33, 0x12, 0x84, 0x13, 0xdf, 0x13,
+	0x39, 0xb5, 0xa0, 0x72, 0xcd, 0x01, 0x51, 0x93, 0x98, 0xa4, 0xf5, 0x3a, 0x9f, 0x4f, 0xdc, 0xf1,
+	0x60, 0x32, 0x4d, 0xb6, 0x7e, 0x02, 0xd0, 0xd9, 0x38, 0xf2, 0xa7, 0xd3, 0x49, 0xf4, 0xde, 0x09,
+	0xaf, 0x84, 0x97, 0x14, 0x42, 0xb5, 0x2f, 0x27, 0x91, 0x08, 0x82, 0xef, 0xb3, 0x05, 0x20, 0xbf,
+	0x85, 0x6a, 0xdf, 0xbf, 0xec, 0x93, 0x6b, 0xe2, 0xd2, 0x1b, 0x74, 0xe9, 0x41, 0xf8, 0xe7, 0x04,
+	0xcd, 0x60, 0xe4, 0xb8, 0xae, 0xb8, 0x89, 0x2a, 0x16, 0x94, 0xac, 0x42, 0x15, 0x93, 0x70, 0xe6,
+	0x7b, 0x21, 0x41, 0xcf, 0xa0, 0x1e, 0x32, 0x7b, 0xf6, 0xc8, 0x1f, 0x13, 0xb1, 0x92, 0x81, 0x43,
+	0x1d, 0x7f, 0x4c, 0x68, 0x72, 0x53, 0x12, 0x86, 0xce, 0x65, 0x9c, 0x40, 0x4c, 0xca, 0x3f, 0xe6,
+	0xa1, 0x4e, 0xa7, 0x7f, 0x5c, 0xf8, 0x17, 0x50, 0x36, 0xbc, 0x39, 0x26, 0x9f, 0xc4, 0x1c, 0xdd,
+	0x4c, 0x8d, 0x3f, 0x2e, 0x82, 0x85, 0x00, 0x7a, 0x07, 0xeb, 0xd6, 0xfc, 0x5c, 0x19, 0x45, 0x13,
+	0xdf, 0x3b, 0x73, 0x5c, 0x66, 0xb9, 0x99, 0xdc, 0x77, 0xc2, 0x62, 0xb3, 0x08, 0x67, 0x44, 0x69,
+	0x93, 0xf5, 0x02, 0x7f, 0x3e, 0x8b, 0xb7, 0x24, 0x2f, 0x5b, 0x06, 0x93, 0x4f, 0xa0, 0x74, 0xec,
+	0xfa, 0x37, 0x21, 0xfa, 0x0f, 0xc0, 0x85, 0xeb, 0xdf, 0xd8, 0x23, 0x7f, 0xee, 0x45, 0xf1, 0xf4,
+	0xa3, 0x48, 0x87, 0x02, 0xe8, 0x7f, 0x50, 0xa2, 0x04, 0x5d, 0xb5, 0xb4, 0xdf, 0x1a, 0xfb, 0xf1,
+	0x4b, 0x91, 0x6a, 0x63, 0xce, 0x93, 0x9f, 0x41, 0x85, 0xde, 0x96, 0x3f, 0x8f, 0x68, 0x99, 0xc7,
+	0xc4, 0x75, 0x6e, 0x85, 0x25, 0x4e, 0xc8, 0x15, 0x28, 0xa9, 0xd3, 0x59, 0x74, 0xfb, 0xf2, 0x0d,
+	0x34, 0xb3, 0xa1, 0xa3, 0x2a, 0xac, 0x7d, 0x6f, 0x68, 0xba, 0x94, 0x43, 0x35, 0x28, 0xf5, 0x55,
+	0xe5, 0x4c, 0x95, 0xf2, 0x08, 0xa0, 0x4c, 0xc1, 0xb3, 0x43, 0xa9, 0x70, 0xf0, 0x1b, 0x40, 0xe9,
+	0xe8, 0xc8, 0x9a, 0x4c, 0xd1, 0x6b, 0xa8, 0x88, 0xae, 0x42, 0xeb, 0xa2, 0x0e, 0xcc, 0xea, 0xce,
+	0x63, 0x41, 0x65, 0x7a, 0x4e, 0xce, 0xa1, 0x37, 0x50, 0xb7, 0x48, 0x94, 0xb4, 0xc0, 0x86, 0x10,
+	0x8b, 0x81, 0x9d, 0xbb, 0x80, 0x9c, 0x43, 0xcf, 0xa1, 0xdc, 0x23, 0x11, 0x7d, 0x68, 0x66, 0x5d,
+	0x24, 0x8b, 0xca, 0x8d, 0xe4, 0x1c, 0x7a, 0x05, 0x60, 0xfa, 0x37, 0x24, 0xf0, 0xbd, 0x65, 0xc9,
+	0xd8, 0x68, 0xdc, 0x3f, 0x72, 0x0e, 0xed, 0x43, 0xdd, 0xba, 0x9a, 0x47, 0x63, 0xff, 0xe6, 0x61,
+	0xf2, 0x5f, 0x42, 0x0d, 0x93, 0x73, 0xdf, 0x8f, 0x1e, 0x24, 0x4d, 0x6b, 0x1a, 0xf9, 0xb3, 0x4b,
+	0x6c, 0x76, 0xe8, 0x62, 0x24, 0xc1, 0xdf, 0xab, 0x1c, 0xc0, 0x86, 0x15, 0x39, 0x41, 0xf4, 0x39,
+	0x3a, 0xdf, 0xc2, 0x26, 0x26, 0xe1, 0x1d, 0xad, 0x78, 0x23, 0x8b, 0xeb, 0x5f, 0xa5, 0xf7, 0x82,
+	0x57, 0x54, 0x1f, 0xa2, 0xe5, 0x6e, 0xdf, 0x49, 0xed, 0x7f, 0x39, 0x87, 0xbe, 0xa0, 0x6f, 0xa4,
+	0x88, 0xbd, 0x13, 0xb2, 0xe1, 0xd4, 0x17, 0x62, 0x21, 0xaf, 0x67, 0x8f, 0x44, 0xc9, 0x2b, 0x61,
+	0x75, 0xe8, 0x31, 0x9b, 0x85, 0xde, 0xa4, 0x76, 0xbd, 0x79, 0xa2, 0xb2, 0x22, 0x94, 0x15, 0x7a,
+	0x87, 0xa9, 0x7b, 0x5b, 0x1d, 0xff, 0x3d, 0xb5, 0x15, 0x4a, 0x8a, 0xeb, 0xae, 0x48, 0x66, 0x85,
+	0xce, 0x3b, 0xd8, 0x4c, 0x39, 0x0a, 0x0d, 0xcf, 0x34, 0xf4, 0xc4, 0xdd, 0xe2, 0xa5, 0xb2, 0xda,
+	0x5d, 0xd2, 0x8a, 0x0f, 0x0e, 0xf1, 0x0d, 0x34, 0x85, 0xce, 0x83, 0x23, 0x7c, 0x0b, 0xd2, 0xc2,
+	0xcd, 0x67, 0x05, 0xf8, 0x35, 0xac, 0x8b, 0xbe, 0xe1, 0x8f, 0xe8, 0x87, 0x85, 0x78, 0x08, 0x75,
+	0xa1, 0xc5, 0xde, 0xd6, 0x0f, 0x53, 0x3a, 0x82, 0x2d, 0x8b, 0xdd, 0x33, 0xdb, 0x76, 0x9a, 0x37,
+	0x9e, 0x8c, 0x1c, 0x3a, 0x69, 0xd0, 0xf6, 0x42, 0x3d, 0xbd, 0x08, 0xff, 0xc2, 0x86, 0x1b, 0xdd,
+	0x6b, 0x23, 0xbb, 0x4c, 0x57, 0xd9, 0x78, 0x05, 0xd5, 0x1e, 0x89, 0xf8, 0x7c, 0x5d, 0x11, 0x79,
+	0x5c, 0x6c, 0x26, 0xc0, 0x6a, 0xbb, 0xd1, 0xb9, 0x72, 0xbc, 0x4b, 0x42, 0x57, 0x05, 0x7f, 0xaf,
+	0x23, 0x21, 0x92, 0x5a, 0x1e, 0xab, 0x1c, 0x9d, 0xc0, 0x13, 0xde, 0xd8, 0xcb, 0x6f, 0xf7, 0x15,
+	0x7e, 0x9f, 0x2e, 0xa0, 0x25, 0x79, 0x39, 0x77, 0x5e, 0x66, 0x7f, 0xed, 0x0f, 0xff, 0x0c, 0x00,
+	0x00, 0xff, 0xff, 0x96, 0xa7, 0x23, 0x49, 0x39, 0x10, 0x00, 0x00,
 }
 
 // Reference imports to suppress errors if they are not otherwise used.
@@ -1443,7 +1452,7 @@
 	PoweronONUsOnPON(ctx context.Context, in *PONRequest, opts ...grpc.CallOption) (*Response, error)
 	// Restart EAPOL for ONU
 	RestartEapol(ctx context.Context, in *ONURequest, opts ...grpc.CallOption) (*Response, error)
-	// Resatrt DHCP for ONU
+	// Restart DHCP for ONU
 	RestartDhcp(ctx context.Context, in *ONURequest, opts ...grpc.CallOption) (*Response, error)
 	// Send ONU alarm indication
 	SetOnuAlarmIndication(ctx context.Context, in *ONUAlarmRequest, opts ...grpc.CallOption) (*Response, error)
@@ -1451,7 +1460,7 @@
 	SetOltAlarmIndication(ctx context.Context, in *OLTAlarmRequest, opts ...grpc.CallOption) (*Response, error)
 	// Get all flows or ONU specific flows
 	GetFlows(ctx context.Context, in *ONURequest, opts ...grpc.CallOption) (*Flows, error)
-	// Chnage IGMP state
+	// Change IGMP state
 	ChangeIgmpState(ctx context.Context, in *IgmpRequest, opts ...grpc.CallOption) (*Response, error)
 	// Get Traffic scheduler information for ONU
 	GetOnuTrafficSchedulers(ctx context.Context, in *ONURequest, opts ...grpc.CallOption) (*ONUTrafficSchedulers, error)
@@ -1741,7 +1750,7 @@
 	PoweronONUsOnPON(context.Context, *PONRequest) (*Response, error)
 	// Restart EAPOL for ONU
 	RestartEapol(context.Context, *ONURequest) (*Response, error)
-	// Resatrt DHCP for ONU
+	// Restart DHCP for ONU
 	RestartDhcp(context.Context, *ONURequest) (*Response, error)
 	// Send ONU alarm indication
 	SetOnuAlarmIndication(context.Context, *ONUAlarmRequest) (*Response, error)
@@ -1749,7 +1758,7 @@
 	SetOltAlarmIndication(context.Context, *OLTAlarmRequest) (*Response, error)
 	// Get all flows or ONU specific flows
 	GetFlows(context.Context, *ONURequest) (*Flows, error)
-	// Chnage IGMP state
+	// Change IGMP state
 	ChangeIgmpState(context.Context, *IgmpRequest) (*Response, error)
 	// Get Traffic scheduler information for ONU
 	GetOnuTrafficSchedulers(context.Context, *ONURequest) (*ONUTrafficSchedulers, error)
diff --git a/api/bbsim/bbsim.proto b/api/bbsim/bbsim.proto
index 39e7cea..dab179d 100644
--- a/api/bbsim/bbsim.proto
+++ b/api/bbsim/bbsim.proto
@@ -169,6 +169,7 @@
 message IgmpRequest {
     ONURequest OnuReq = 1;
     SubActionTypes SubActionVal = 2;
+    string GroupAddress = 3;
 }
 
 message Flows {
@@ -251,7 +252,7 @@
     // Restart EAPOL for ONU
     rpc RestartEapol (ONURequest) returns (Response) {
     }
-    // Resatrt DHCP for ONU
+    // Restart DHCP for ONU
     rpc RestartDhcp (ONURequest) returns (Response) {
     }
     // Send ONU alarm indication
@@ -263,7 +264,7 @@
     // Get all flows or ONU specific flows
     rpc GetFlows (ONURequest) returns (Flows) {
     }
-    // Chnage IGMP state 
+    // Change IGMP state
     rpc ChangeIgmpState (IgmpRequest) returns (Response) {
     }
     // Get Traffic scheduler information for ONU
diff --git a/internal/bbsim/api/onus_handler.go b/internal/bbsim/api/onus_handler.go
index 3c84380..43b624f 100644
--- a/internal/bbsim/api/onus_handler.go
+++ b/internal/bbsim/api/onus_handler.go
@@ -231,8 +231,9 @@
 	res := &bbsim.Response{}
 
 	logger.WithFields(log.Fields{
-		"OnuSn":     req.OnuReq.SerialNumber,
-		"subAction": req.SubActionVal,
+		"OnuSn":        req.OnuReq.SerialNumber,
+		"subAction":    req.SubActionVal,
+		"GroupAddress": req.GroupAddress,
 	}).Infof("Received igmp request for ONU")
 
 	olt := devices.GetOLT()
@@ -269,7 +270,7 @@
 					"Service": service.Name,
 				}).Debugf("Sending %s event on Service %s", event, service.Name)
 
-				if err := service.IGMPState.Event(event); err != nil {
+				if err := service.IGMPState.Event(event, devices.IgmpMessage{GroupAddress: req.GroupAddress}); err != nil {
 					logger.WithFields(log.Fields{
 						"OnuId":   onu.ID,
 						"IntfId":  onu.PonPortID,
diff --git a/internal/bbsim/devices/messageTypes.go b/internal/bbsim/devices/messageTypes.go
index e103ceb..144e1b9 100644
--- a/internal/bbsim/devices/messageTypes.go
+++ b/internal/bbsim/devices/messageTypes.go
@@ -139,6 +139,10 @@
 	GemPortId  uint32 // this is used by BBR
 }
 
+type IgmpMessage struct {
+	GroupAddress string
+}
+
 type OperState int
 
 const (
diff --git a/internal/bbsim/devices/services.go b/internal/bbsim/devices/services.go
index c7983a4..bd4d13c 100644
--- a/internal/bbsim/devices/services.go
+++ b/internal/bbsim/devices/services.go
@@ -255,19 +255,32 @@
 		},
 		fsm.Callbacks{
 			"igmp_join_start": func(e *fsm.Event) {
+				igmpInfo, _ := e.Args[0].(IgmpMessage)
 				msg := Message{
 					Type: IGMPMembershipReportV2,
+					Data: IgmpMessage{
+						GroupAddress: igmpInfo.GroupAddress,
+					},
 				}
 				service.Channel <- msg
 			},
 			"igmp_leave": func(e *fsm.Event) {
+				igmpInfo, _ := e.Args[0].(IgmpMessage)
 				msg := Message{
-					Type: IGMPLeaveGroup}
+					Type: IGMPLeaveGroup,
+					Data: IgmpMessage{
+						GroupAddress: igmpInfo.GroupAddress,
+					},
+				}
 				service.Channel <- msg
 			},
 			"igmp_join_startv3": func(e *fsm.Event) {
+				igmpInfo, _ := e.Args[0].(IgmpMessage)
 				msg := Message{
 					Type: IGMPMembershipReportV3,
+					Data: IgmpMessage{
+						GroupAddress: igmpInfo.GroupAddress,
+					},
 				}
 				service.Channel <- msg
 			},
@@ -422,29 +435,32 @@
 
 			}
 		case IGMPMembershipReportV2:
+			igmpInfo, _ := msg.Data.(IgmpMessage)
 			serviceLogger.WithFields(log.Fields{
 				"OnuId":  s.Onu.ID,
 				"IntfId": s.Onu.PonPortID,
 				"OnuSn":  s.Onu.Sn(),
 				"Name":   s.Name,
-			}).Debug("Recieved IGMPMembershipReportV2 message on ONU channel")
-			_ = igmp.SendIGMPMembershipReportV2(s.Onu.PonPortID, s.Onu.ID, s.Onu.Sn(), s.Onu.PortNo, s.GemPort, s.HwAddress, s.CTag, s.UsPonCTagPriority, s.Stream)
+			}).Debug("Received IGMPMembershipReportV2 message on ONU channel")
+			_ = igmp.SendIGMPMembershipReportV2(s.Onu.PonPortID, s.Onu.ID, s.Onu.Sn(), s.Onu.PortNo, s.GemPort, s.HwAddress, s.CTag, s.UsPonCTagPriority, s.Stream, igmpInfo.GroupAddress)
 		case IGMPLeaveGroup:
+			igmpInfo, _ := msg.Data.(IgmpMessage)
 			serviceLogger.WithFields(log.Fields{
 				"OnuId":  s.Onu.ID,
 				"IntfId": s.Onu.PonPortID,
 				"OnuSn":  s.Onu.Sn(),
 				"Name":   s.Name,
-			}).Debug("Recieved IGMPLeaveGroupV2 message on ONU channel")
-			_ = igmp.SendIGMPLeaveGroupV2(s.Onu.PonPortID, s.Onu.ID, s.Onu.Sn(), s.Onu.PortNo, s.GemPort, s.HwAddress, s.CTag, s.UsPonCTagPriority, s.Stream)
+			}).Debug("Received IGMPLeaveGroupV2 message on ONU channel")
+			_ = igmp.SendIGMPLeaveGroupV2(s.Onu.PonPortID, s.Onu.ID, s.Onu.Sn(), s.Onu.PortNo, s.GemPort, s.HwAddress, s.CTag, s.UsPonCTagPriority, s.Stream, igmpInfo.GroupAddress)
 		case IGMPMembershipReportV3:
+			igmpInfo, _ := msg.Data.(IgmpMessage)
 			serviceLogger.WithFields(log.Fields{
 				"OnuId":  s.Onu.ID,
 				"IntfId": s.Onu.PonPortID,
 				"OnuSn":  s.Onu.Sn(),
 				"Name":   s.Name,
-			}).Debug("Recieved IGMPMembershipReportV3 message on ONU channel")
-			_ = igmp.SendIGMPMembershipReportV3(s.Onu.PonPortID, s.Onu.ID, s.Onu.Sn(), s.Onu.PortNo, s.GemPort, s.HwAddress, s.CTag, s.UsPonCTagPriority, s.Stream)
+			}).Debug("Received IGMPMembershipReportV3 message on ONU channel")
+			_ = igmp.SendIGMPMembershipReportV3(s.Onu.PonPortID, s.Onu.ID, s.Onu.Sn(), s.Onu.PortNo, s.GemPort, s.HwAddress, s.CTag, s.UsPonCTagPriority, s.Stream, igmpInfo.GroupAddress)
 
 		}
 	}
diff --git a/internal/bbsim/responders/igmp/igmp.go b/internal/bbsim/responders/igmp/igmp.go
index ae1f36c..15aafb1 100644
--- a/internal/bbsim/responders/igmp/igmp.go
+++ b/internal/bbsim/responders/igmp/igmp.go
@@ -29,13 +29,14 @@
 )
 
 func SendIGMPLeaveGroupV2(ponPortId uint32, onuId uint32, serialNumber string, portNo uint32,
-	gemPortId uint32, macAddress net.HardwareAddr, cTag int, pbit uint8, stream bbsim.Stream) error {
+	gemPortId uint32, macAddress net.HardwareAddr, cTag int, pbit uint8, stream bbsim.Stream, groupAddress string) error {
 	log.WithFields(log.Fields{
 		"OnuId":        onuId,
 		"SerialNumber": serialNumber,
 		"PortNo":       portNo,
+		"GroupAddress": groupAddress,
 	}).Debugf("Entered SendIGMPLeaveGroupV2")
-	igmp := createIGMPV2LeaveRequestPacket()
+	igmp := createIGMPV2LeaveRequestPacket(groupAddress)
 	pkt, err := serializeIgmpPacket(ponPortId, onuId, cTag, macAddress, pbit, igmp)
 
 	if err != nil {
@@ -43,6 +44,7 @@
 			"OnuId":        onuId,
 			"IntfId":       ponPortId,
 			"SerialNumber": serialNumber,
+			"GroupAddress": groupAddress,
 		}).Errorf("Seriliazation of igmp packet failed :  %s", err)
 		return err
 	}
@@ -63,6 +65,7 @@
 			"SerialNumber": serialNumber,
 			"PortNo":       portNo,
 			"IntfId":       ponPortId,
+			"GroupAddress": groupAddress,
 			"err":          err,
 		}).Error("Fail to send IGMP PktInd indication for ONU")
 		return err
@@ -71,9 +74,9 @@
 }
 
 func SendIGMPMembershipReportV2(ponPortId uint32, onuId uint32, serialNumber string, portNo uint32,
-	gemPortId uint32, macAddress net.HardwareAddr, cTag int, pbit uint8, stream bbsim.Stream) error {
+	gemPortId uint32, macAddress net.HardwareAddr, cTag int, pbit uint8, stream bbsim.Stream, groupAddress string) error {
 
-	igmp := createIGMPV2MembershipReportPacket()
+	igmp := createIGMPV2MembershipReportPacket(groupAddress)
 	pkt, err := serializeIgmpPacket(ponPortId, onuId, cTag, macAddress, pbit, igmp)
 
 	if err != nil {
@@ -81,6 +84,7 @@
 			"OnuId":        onuId,
 			"IntfId":       ponPortId,
 			"SerialNumber": serialNumber,
+			"GroupAddress": groupAddress,
 		}).Errorf("Seriliazation of igmp packet failed :  %s", err)
 		return err
 	}
@@ -101,6 +105,7 @@
 			"SerialNumber": serialNumber,
 			"PortNo":       portNo,
 			"IntfId":       ponPortId,
+			"GroupAddress": groupAddress,
 			"err":          err,
 		}).Errorf("Fail to send IGMP PktInd indication")
 		return err
@@ -110,18 +115,21 @@
 		"OnuId":        onuId,
 		"SerialNumber": serialNumber,
 		"PortNo":       portNo,
+		"GroupAddress": groupAddress,
 	}).Debugf("Sent SendIGMPMembershipReportV2")
 	return nil
 }
 
 func SendIGMPMembershipReportV3(ponPortId uint32, onuId uint32, serialNumber string, portNo uint32,
-	gemPortId uint32, macAddress net.HardwareAddr, cTag int, pbit uint8, stream bbsim.Stream) error {
+	gemPortId uint32, macAddress net.HardwareAddr, cTag int, pbit uint8, stream bbsim.Stream, groupAddress string) error {
+
 	log.WithFields(log.Fields{
 		"OnuId":        onuId,
 		"SerialNumber": serialNumber,
 		"PortNo":       portNo,
+		"GroupAddress": groupAddress,
 	}).Debugf("Entered SendIGMPMembershipReportV3")
-	igmp := createIGMPV3MembershipReportPacket()
+	igmp := createIGMPV3MembershipReportPacket(groupAddress)
 	pkt, err := serializeIgmpPacket(ponPortId, onuId, cTag, macAddress, pbit, igmp)
 
 	if err != nil {
@@ -129,6 +137,7 @@
 			"OnuId":        onuId,
 			"IntfId":       ponPortId,
 			"SerialNumber": serialNumber,
+			"GroupAddress": groupAddress,
 		}).Errorf("Seriliazation of igmp packet failed :  %s", err)
 		return err
 	}
@@ -148,6 +157,7 @@
 			"OnuId":        onuId,
 			"IntfId":       ponPortId,
 			"SerialNumber": serialNumber,
+			"GroupAddress": groupAddress,
 			"err":          err,
 		}).Errorf("Fail to send IGMP PktInd indication")
 		return err
@@ -176,13 +186,14 @@
 	igmp := igmpLayer.(*layers.IGMPv1or2)
 
 	if igmp.Type == layers.IGMPMembershipQuery {
-		_ = SendIGMPMembershipReportV2(ponPortId, onuId, serialNumber, portNo, gemPortId, macAddress, cTag, pbit, stream)
+		_ = SendIGMPMembershipReportV2(ponPortId, onuId, serialNumber, portNo, gemPortId, macAddress,
+			cTag, pbit, stream, igmp.GroupAddress.String())
 	}
 
 	return nil
 }
 
-func createIGMPV3MembershipReportPacket() *IGMP {
+func createIGMPV3MembershipReportPacket(groupAddress string) *IGMP {
 
 	groupRecord1 := IGMPv3GroupRecord{
 		Type:             IGMPv3GroupRecordType(IGMPIsIn),
@@ -206,7 +217,7 @@
 		Type:                    layers.IGMPMembershipReportV3, //IGMPV3 Membership Report
 		MaxResponseTime:         time.Duration(1),
 		Checksum:                0,
-		GroupAddress:            net.IPv4(224, 0, 0, 22),
+		GroupAddress:            net.ParseIP(groupAddress),
 		SupressRouterProcessing: false,
 		RobustnessValue:         0,
 		IntervalTime:            time.Duration(1),
@@ -220,21 +231,21 @@
 	return igmpDefault
 }
 
-func createIGMPV2MembershipReportPacket() *IGMP {
+func createIGMPV2MembershipReportPacket(groupAddress string) *IGMP {
 	return &IGMP{
 		Type:         layers.IGMPMembershipReportV2, //IGMPV2 Membership Report
 		Checksum:     0,
-		GroupAddress: net.IPv4(224, 0, 0, 22),
+		GroupAddress: net.ParseIP(groupAddress),
 		Version:      2,
 	}
 }
 
-func createIGMPV2LeaveRequestPacket() *IGMP {
+func createIGMPV2LeaveRequestPacket(groupAddress string) *IGMP {
 	return &IGMP{
 		Type:            layers.IGMPLeaveGroup, //IGMPV2 Leave Group
 		MaxResponseTime: time.Duration(1),
 		Checksum:        0,
-		GroupAddress:    net.IPv4(224, 0, 0, 22),
+		GroupAddress:    net.ParseIP(groupAddress),
 		Version:         2,
 	}
 }
@@ -258,7 +269,7 @@
 		Id:       0,
 		TTL:      128,
 		SrcIP:    []byte{0, 0, 0, 0},
-		DstIP:    []byte{224, 0, 0, 22},
+		DstIP:    igmp.GroupAddress,
 		Protocol: layers.IPProtocolIGMP,
 		Options:  []layers.IPv4Option{{OptionType: 148, OptionLength: 4, OptionData: make([]byte, 0)}}, //Adding router alert option
 	}
diff --git a/internal/bbsimctl/commands/onu.go b/internal/bbsimctl/commands/onu.go
index 5f6874b..da841cd 100644
--- a/internal/bbsimctl/commands/onu.go
+++ b/internal/bbsimctl/commands/onu.go
@@ -40,6 +40,7 @@
 
 type OnuSnString string
 type IgmpSubAction string
+type GroupAddress string
 
 const IgmpJoinKey string = "join"
 const IgmpLeaveKey string = "leave"
@@ -90,8 +91,9 @@
 
 type ONUIgmp struct {
 	Args struct {
-		OnuSn     OnuSnString
-		SubAction IgmpSubAction
+		OnuSn        OnuSnString
+		SubAction    IgmpSubAction
+		GroupAddress GroupAddress
 	} `positional-args:"yes" required:"yes"`
 }
 
@@ -331,6 +333,7 @@
 	igmpReq := pb.IgmpRequest{
 		OnuReq:       &req,
 		SubActionVal: subActionVal,
+		GroupAddress: string(options.Args.GroupAddress),
 	}
 	res, err := client.GetONU(ctx, igmpReq.OnuReq)
 	if err != nil {
@@ -340,7 +343,7 @@
 	}
 	log.WithFields(log.Fields{
 		"SerialNumber": igmpReq.OnuReq.SerialNumber,
-	}).Debugf("ONU has indentified : %s", res)
+	}).Debugf("ONU has identified : %s", res)
 
 	igmpRes, igmpErr := client.ChangeIgmpState(ctx, &igmpReq)
 	if igmpErr != nil {
