match protocol