Do all of the switches from end-to-end need to support IEEE1588?
From technical point of view: no. From precission point of view: yes. The main point of running IEEE1588 (as opposed to plain NTP) is to give OC accurate information about delay between GM and itself. Delay is mainly due to two reasons:
- physical link delay
This delay is on most links constant and is sum of delay on physical port (parallel to serial conversion, etc.) and delay on link itself (due to signal speed which is finite).
This delay is configuration property of each link and can be different in each direction (e.g. higher parallel to serial delay in slower direction on lines with asymmetrical speeds).
- delay on active equipment
This delay can vary a lot due to how device handles packets (e.g. queuing) and support for IEEE1588 on these devices improves precission as delay of each individual timing packet can be accurately determined (and set or added to already present delay info) on egress.
If there's non-IEE1588 equipment in the path between GM and OC, then lack of accurate delay measurements will reduce accuracy of timestamps received. If the non-IEEE1588 device is not congested in any way, so that delay of packets passing from GM towards OC is pretty constant, then it is possible to add that delay to link between adjacent IEEE1588 devices and then accuracy will be mostly fine (worse than if all devices were IEEE1588 but not much). OTOH if the non-IEE1588 device does see congestion now and then, the precission of timing information drops on the floor (and is then not much better than plain NTP).