Is there a rule / Standard Operating Procedure as to when request the descent clearance during cruise flight? Something like one minute before reaching the Top of Descent point?
Whether there are any formal policies for when to request descent will depend on the airline. However, I doubt formal procedures are established, since it should be pretty obvious to pilots when to request descent.
From a controller point of view, I will expect you to request descent when you are ready for it - so a minute or so before reaching your top of descent point. Controllers are able to estimate when you are going to request descent, based on experience, known level restrictions and typical aircraft performance. Controllers who have been working the same sector for a few years will be able to tell pretty much exactly when a certain flight is going to request descend, based on the current wind, runway in use, airline and aircraft type. What this means to you, as a pilot, is that you can expect the controller to be ready for your request; You can normally expect to receive a clearance for descent immediately after requesting it - so there is no reason to request it several minutes in advance.
Very few pilots will request descent several minutes before ToD. If they do, I can - if traffic flow permits - use the phrase "When ready descent to FL160". You are then free to start your descent when passing the ToD. Honestly though, if you call me up and say "Request descent in 5 minutes", I will most likely just reply with "Roger, call me back when ready for descent". The traffic situation can change significantly in 5 minutes, so I don't want to issue a clearance that may not fit into the future traffic picture. In the end, the early request just costs time on the frequency, which can be a scarce resource in a busy sector.
Moral of the story: as a controller, I know my airspace very well, and I have a pretty good idea of when you are going to be ready for descent. Because of this, there is no reason to request descent before you are ready for it. If you do, it will not matter at best, and be slightly annoying at worst.
ATC can of course also descend you before your ToD for various reasons, but that is another discussion.
The pilots have the better picture performance wise. ATC has the better picture traffic wise.
Aircraft with modern avionics get wind-data via ACARS, SATCOM, FIS-B, etc., which is fed into the vertical performance calculations, together with the company's cost index, the top-of-descent (T/D, ToD) varies.
There isn't one fixed scenario.
If ATC requests a descent before reaching the T/D for traffic management, pilots must comply.
Alternatively, ATC can remind the crew and leave it up to them—
Flight123, when able, descend FL240.
Flight123, at your discretion, descend FL240.
The crew would then descend at the T/D and report leaving their current flight level.
Equally, ATC can force a flight to miss its T/D for traffic management.
Another example is if the tail-wind is strong it will shift the T/D farther from the destination. If ATC didn't realize it from the high ground-speed, the pilots can remind the ATC—
ATC Center, Flight123 is ready for descent.
ATC Center, request descent at time four five, Flight123.
Time four-five means :45 of the current UTC hour.
Variations above depend on locale (US, EU, etc.), thanks to Jonathan Walters and J. Hougaard for supplying variations.
I agree with everything said above, adding that it might depend on the PF(pilot flying the leg) in our aircraft, our vertical path is displayed which takes in to account headwind or tailwind and in preparing the flight on the ground when loading the flight plan on the FMS we can select our descend profile i.e a standard 3° path or higher. Some colleagues prefer steeper descend so they can stay higher for longer therefore reducing fuel consumption. Therefore it also depends on personnal preference really. Having said that, certainly in Europe, controllers will ask you to descend before you request it and the London area will even ask you to be level by a certain distance....