How does the Spanning Tree Protocol determine path cost?