Sorcerer's Apprentice Syndrome - Details

Details

SAS occurred when a packet was not lost in the internetwork, but rather simply delayed, and later successfully delivered, after a timeout had occurred (on either side).

The timeout caused a second copy of the previous packet to be generated, notionally to replace the 'lost' packet. However, the first copy was not lost, and since, according to the TFTP specification, receipt of any packet always forced the generation of a reply packet, two replies were generated (one to each copy). Those forced the generation of two replies to them, and so on. A typical scenario was as follows:

  • Computer S (source) sends data block X to computer D (destination)
  • Computer D receives block X, and sends an acknowledgement for X back to S
  • The packet containing the acknowledgement for X is delayed in the internetwork
  • Computer S times out, and resends data block X to D
  • Computer S receives the delayed acknowledgement for X, and sends data block X+1
  • Computer D receives the second copy of block X, and sends another acknowledgement for X back to S
  • Computer D receives block X+1, and sends an acknowledgement for X+1 back to S
  • Computer S receives the second acknowledgement for X, and sends a second copy of data block X+1
  • Computer S receives the acknowledgement for X+1, and sends data block X+2
  • Computer D receives the second copy of block X+1, and sends another acknowledgement for X+1 back to S
  • Computer D receives block X+2, and sends an acknowledgement for X+2 back to S

It will be seen that at this point the situation is now stable, and repeats; every packet from then on is duplicated (that is, two identical copies are sent across the internetwork).

Even worse, the increased number of packets being sent around the internetwork was likely to cause congestion, which was likely to cause a packet to be delayed past the timeout yet again, which would then cause yet another duplicate packet to be generated by a timeout, and from then on a third copy of each packet would be sent. Needless to say, at that point, the situation would usually snowball, and further copies would be generated — hence the name given to this pattern of behaviour.

For a small file, the transfer would complete, and the duplicate packets would eventually drain from the internetwork. If the file were large, however, congestive collapse would result, and only when the transfer failed would the mass of packets drain from the internetwork.

Read more about this topic:  Sorcerer's Apprentice Syndrome

Famous quotes containing the word details:

    Different persons growing up in the same language are like different bushes trimmed and trained to take the shape of identical elephants. The anatomical details of twigs and branches will fulfill the elephantine form differently from bush to bush, but the overall outward results are alike.
    Willard Van Orman Quine (b. 1908)

    Working women today are trying to achieve in the work world what men have achieved all along—but men have always had the help of a woman at home who took care of all the other details of living! Today the working woman is also that woman at home, and without support services in the workplace and a respect for the work women do within and outside the home, the attempt to do both is taking its toll—on women, on men, and on our children.
    Jeanne Elium (20th century)